Skill anatomy
Each skill lives in its own directory. The only required file isSKILL.md.
SKILL.md: required entrypoint.references/: optional long-form background material.scripts/: optional helper scripts the agent may run when the environment allows it.assets/: optional templates, sample files, or other bundled content.
SKILL.md only when needed. Skills can absolutely include files beyond Markdown, including scripts, templates, structured data, images, and other resources the workflow depends on.
Required SKILL.md structure
At minimum, define:
name: stable skill identifierdescription: what the skill does and when the agent should use it- Markdown body: the workflow and output expectations
Writing good descriptions
Thedescription field is the main trigger surface, so make it specific.
Good descriptions:
- say what the skill does
- say when the agent should use it
- mention recognizable user intents or task categories
- “Helps with docs”
- “A useful writing skill”
- “Review content against brand voice and messaging guidelines. Use when the user asks for brand review, tone alignment, messaging consistency, or editorial feedback.”
Authoring guidelines
When writing a skill:- Keep workflows explicit and step-by-step.
- Tell the agent what to inspect before acting.
- Name the tools or files it is expected to use when that matters.
- Define the desired output shape.
- Prefer short sections over dense paragraphs.
- dumping large reference manuals directly into
SKILL.md - hiding critical trigger logic only in the body
- assuming tools exist without saying which ones are needed
- mixing unrelated workflows into one skill
Organizing support material
Use subdirectories intentionally:- Put background reading in
references/. - Put templates or reusable output skeletons in
assets/. - Put executable helpers in
scripts/only when running code is genuinely part of the workflow.
SKILL.md with clear instructions such as:
- “Read
references/terminology.mdwhen the user asks for product naming help.” - “Use
assets/report_template.mdfor the final report format.”
Linking to external resources
It is also fine for a skill to point to external documentation, specifications, or source material when that is the right source of truth. Use external links carefully:- Link to stable sources when possible.
- Say when the agent should consult the link.
- Do not make the whole workflow depend on a vague “go read this website” instruction.
- “If the task involves OpenAPI validation, consult the official OpenAPI spec before generating the final schema.”
- “If the user asks about a provider-specific API, check the provider’s latest docs before calling the tool.”
Compatibility guidance
If you want the skill to stay portable across agent runtimes:- keep the core behavior in standard
SKILL.mdfrontmatter and Markdown - avoid product-specific assumptions unless they are essential
- treat runtime-specific tools as optional environment details
Where to go next
- Skills Overview: understand how skills fit with tools, toolkits, rules, and prompts.
- Using Skills with Agents: load one or more skills with
--skill-dir. - Packaging and Deploying Skills: ship skills inside a MeshAgent service.