writing-great-skills

Provides vocabulary and principles for writing predictable, well-structured AI agent skills.

Updated Jul 31, 2026
One-click install
npx skills add https://github.com/julianckt/adoptarun --skill writing-great-skills-julianckt
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: writing-great-skills
Source: https://github.com/julianckt/adoptarun/tree/main/.agents/skills/writing-great-skills
Command: npx skills add https://github.com/julianckt/adoptarun --skill writing-great-skills-julianckt

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Writing effective skills for AI agents is hard: descriptions that never trigger, bloated SKILL.md files, agents that rush steps or ignore instructions. This Skill provides a shared vocabulary and a set of design principles for diagnosing and fixing these problems so skills behave predictably on every run. ## Core Features & Use Cases - Invocation design: Guidance on choosing between model-invoked and user-invoked skills, and how to write descriptions that trigger reliably. - Information hierarchy: A ladder model (steps, in-file reference, disclosed reference) for deciding what stays in SKILL.md and what moves behind a context pointer, as practiced by its own GLOSSARY.md disclosure. - Failure-mode diagnosis: Named failure modes — premature completion, duplication, sediment, sprawl, no-op, negation — each paired with its cure. - Use Case: When an agent keeps skipping steps in your skill, consult this reference to sharpen the completion criterion or split the sequence to hide post-completion steps. ## Quick Start Ask the agent to review your SKILL.md using the writing-great-skills principles and suggest concrete improvements.

Frequently Asked Questions about writing-great-skills

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a good skill description for an AI agent?

Front-load the skill's leading word, list one trigger per distinct branch, and cut identity statements already covered in the body. Every word in a model-invoked description adds permanent context load, so prune it harder than the body.

When should a skill be model-invoked vs user-invoked?

Choose model-invocation only when the agent or another skill must reach it autonomously, since the always-loaded description costs context load. If it only ever fires by hand, set disable-model-invocation and pay zero context load.

How do I stop an agent from rushing through skill steps?

Premature completion is cured first by sharpening the step's completion criterion so done is checkable. If the criterion is irreducibly fuzzy and rushing persists, split the sequence so post-completion steps are hidden across a context boundary.

When should I split one skill into multiple skills?

Split by invocation when you have a distinct leading word that should trigger a model-invoked skill on its own, or by sequence when visible upcoming steps cause premature completion. Each split spends context load or cognitive load, so it must earn the cut.

What is progressive disclosure in skill writing?

Progressive disclosure moves reference material out of SKILL.md into a linked file reached by a context pointer, keeping the top of the file legible. Inline what every branch needs and disclose what only some branches reach.