Skill Creator
Create skills that remain useful across sessions and models without turning them into markdownware. Preserve the judgment, tone, and examples an agent may not infer on its own; remove generic behavior already supplied by the host or target workspace.
Inputs
Required:
- the workflow or recurring problem the skill should handle
- the target path, or enough workspace context to infer it
Useful when available:
- the existing skill and all files it tells the agent to read
- representative requests, failures, or corrections
- host documentation and nearby skill conventions
Ask one pointed question only when the workflow, target path, or destructive boundary is genuinely unclear.
Reference guide
Read references/skills-reference-guide-for-agents.md before creating a skill or substantially restructuring one. For a narrow edit, use its reading map and consult only the relevant sections.
Workflow
Ground the task.
- Read the existing
SKILL.md and every file it directs the agent to read before deleting, merging, or restructuring anything.
- Verify host format rules, real tool names, commands, paths, and workspace conventions instead of preserving plausible-sounding assumptions.
- Identify two or three concrete requests the skill should handle.
Decide whether a skill is the right artifact.
- Use a skill for a recurring task where reusable instructions, judgment, examples, or helpers improve execution.
- Use ordinary documentation for passive reference material with no repeatable workflow.
- A tool runbook can be a skill when its commands, failure handling, or result interpretation change agent behavior. A rigid project procedure may belong in the workspace's workflow or SOP system instead.
Set the trigger boundary.
- Describe the job from user intent, not internal architecture.
- Include likely request language and important artifacts or outcomes.
- Add negative scope only where a nearby task could trigger the skill incorrectly.
- Prefer the shortest description that preserves reliable triggering; do not trade away useful trigger coverage merely to reduce characters.
- Quote the description by default so YAML punctuation cannot change its meaning.
Choose the smallest complete structure.
- Keep the core workflow and central judgment in
SKILL.md.
- Use
references/ for detailed guidance, domain knowledge, extended examples, or edge cases that are not needed on every run.
- Use
scripts/ for deterministic validation or transformation that is more reliable as code.
- Use
assets/ for templates or static inputs consumed by the workflow.
- Do not create supporting folders without useful content, but actively consider whether each would make the skill more dependable.
Write the operational body.
- Always provide the purpose, ordered workflow, and critical constraints.
- Add inputs, prerequisites, validation, recovery, output shape, and examples when they change behavior or remove meaningful ambiguity.
- State autonomy, approval, and safety boundaries once, near the action they govern.
- Prefer commands, conditions, paths, thresholds, outputs, and forbidden actions over generic quality reminders.
- Keep examples sparse and distinct. Each should teach a decision, edge case, voice, or output shape rather than restate the workflow.
Preserve useful knowledge without preserving accumulation.
- Keep verified domain judgment and hard-won failure handling, including material that helps weaker or context-poor models.
- Preserve concrete warmth when the skill shapes collaboration, writing, review, design taste, or identity. A before/after line can carry more behavior than a paragraph of adjectives.
- Remove duplicated guidance, unexplained references to other skills, model-specific folklore, and instructions the host already guarantees.
- Run the no-op test: if removing a sentence changes no future action, rewrite or delete it.
- Keep the skill self-contained. Do not require another skill to understand this one.
Validate behavior and packaging.
- Run
python scripts/skill-efficiency-check.py <skill-dir-or-SKILL.md> from this skill directory, or use its installed path.
- Treat failures as structural problems and warnings or suggestions as review prompts, not automatic rewrite orders.
- Check supporting paths, exercise bundled scripts, and use the host's own skill validation when available.
- Review a few representative trigger and non-trigger requests when the description changed materially. Build a larger evaluation only when repeated real failures justify it.
Finish the change.
- Make in-scope, low-risk edits directly when intent and target are clear.
- Ask before destructive changes, external writes, or a material expansion of scope.
- Report changed files, validation performed, and intentional warnings or tradeoffs.
Validation checklist
- The skill teaches a recurring workflow rather than merely naming a topic.
- The description explains what the skill does and when it applies.
- The body contains judgment and procedure that materially guide execution.
- Supporting files are useful, local, and loaded at the right time.
- Required host constraints and runtime assumptions are accurate.
- Generic quality prose and repeated examples were removed before useful detail.
- Concrete tone examples survived when they change how the work feels or lands.
- The lightweight efficiency check and relevant host/package checks pass.
Recovery
- Workflow is vague: reduce it to concrete requests, inputs, decisions, and results before drafting.
- Triggering is unreliable: revise the description using real user language and adjacent non-trigger cases.
- Body is unwieldy: separate conditional detail into references, then remove repetition rather than merely moving it.
- Many skills overlap: compare their real workflows; merge fake separations and keep distinct jobs separate.
- A deterministic rule remains fuzzy: encode it in a script when doing so is simpler and more reliable than prose.
- Upstream material is bloated or doctrinal: retain verified workflow knowledge and rebuild the instructions around the target host and users.
- Pruning makes the skill sound dead: restore one concrete example that shows the desired judgment or voice; do not restore generic praise.
Examples
No-op pruning without flattening
Bad:
Be thorough and make the skill high quality.
Better:
Include one validation command and one failure condition that stops the workflow.
The second line changes what the next agent writes.
Preserving warmth
Bad pruning:
Remove every example because examples cost tokens.
Better pruning:
Keep the one example that shows the desired human tone; delete the five paragraphs explaining that tone abstractly.
Examples can be cheaper and more reliable than doctrine.
Collaboration-facing output
When tone matters, a small final-shape sample is enough:
- “Changed X, left Y alone, and the check passes.”
- “I did not touch Z because it looked intentional.”
That carries more behavior than “be warm and clear.”
Porting an upstream skill
- Read upstream
SKILL.md and all files it requires.
- Keep exact commands, failure modes, decision rules, and distinct examples.
- Remove vendor doctrine, repeated trigger sections, and generic quality wishes.
- Adapt examples and output shape to the target home without weakening the workflow.
- Run both source and target validators when available; report intentional differences.
Output
A completed pass leaves a valid packaged skill, useful supporting files where warranted, a reliable trigger description, preserved working taste, and a concise record of validation and intentional tradeoffs.
1---2name: skill-creator-23description: Designs, audits, refactors, and packages reusable agent skills. Use for creating or improving SKILL.md files, trigger descriptions, supporting references/scripts/assets, examples, validation, consolidation, or porting skills between agents. Not for one-off prompt edits, strict project procedures, or passive documentation with no repeatable workflow.4---56# Skill Creator78Create skills that remain useful across sessions and models without turning them into markdownware. Preserve the judgment, tone, and examples an agent may not infer on its own; remove generic behavior already supplied by the host or target workspace.910## Inputs1112Required:1314- the workflow or recurring problem the skill should handle15- the target path, or enough workspace context to infer it1617Useful when available:1819- the existing skill and all files it tells the agent to read20- representative requests, failures, or corrections21- host documentation and nearby skill conventions2223Ask one pointed question only when the workflow, target path, or destructive boundary is genuinely unclear.2425## Reference guide2627Read `references/skills-reference-guide-for-agents.md` before creating a skill or substantially restructuring one. For a narrow edit, use its reading map and consult only the relevant sections.2829## Workflow30311. **Ground the task.**32 - Read the existing `SKILL.md` and every file it directs the agent to read before deleting, merging, or restructuring anything.33 - Verify host format rules, real tool names, commands, paths, and workspace conventions instead of preserving plausible-sounding assumptions.34 - Identify two or three concrete requests the skill should handle.35362. **Decide whether a skill is the right artifact.**37 - Use a skill for a recurring task where reusable instructions, judgment, examples, or helpers improve execution.38 - Use ordinary documentation for passive reference material with no repeatable workflow.39 - A tool runbook can be a skill when its commands, failure handling, or result interpretation change agent behavior. A rigid project procedure may belong in the workspace's workflow or SOP system instead.40413. **Set the trigger boundary.**42 - Describe the job from user intent, not internal architecture.43 - Include likely request language and important artifacts or outcomes.44 - Add negative scope only where a nearby task could trigger the skill incorrectly.45 - Prefer the shortest description that preserves reliable triggering; do not trade away useful trigger coverage merely to reduce characters.46 - Quote the description by default so YAML punctuation cannot change its meaning.47484. **Choose the smallest complete structure.**49 - Keep the core workflow and central judgment in `SKILL.md`.50 - Use `references/` for detailed guidance, domain knowledge, extended examples, or edge cases that are not needed on every run.51 - Use `scripts/` for deterministic validation or transformation that is more reliable as code.52 - Use `assets/` for templates or static inputs consumed by the workflow.53 - Do not create supporting folders without useful content, but actively consider whether each would make the skill more dependable.54555. **Write the operational body.**56 - Always provide the purpose, ordered workflow, and critical constraints.57 - Add inputs, prerequisites, validation, recovery, output shape, and examples when they change behavior or remove meaningful ambiguity.58 - State autonomy, approval, and safety boundaries once, near the action they govern.59 - Prefer commands, conditions, paths, thresholds, outputs, and forbidden actions over generic quality reminders.60 - Keep examples sparse and distinct. Each should teach a decision, edge case, voice, or output shape rather than restate the workflow.61626. **Preserve useful knowledge without preserving accumulation.**63 - Keep verified domain judgment and hard-won failure handling, including material that helps weaker or context-poor models.64 - Preserve concrete warmth when the skill shapes collaboration, writing, review, design taste, or identity. A before/after line can carry more behavior than a paragraph of adjectives.65 - Remove duplicated guidance, unexplained references to other skills, model-specific folklore, and instructions the host already guarantees.66 - Run the no-op test: if removing a sentence changes no future action, rewrite or delete it.67 - Keep the skill self-contained. Do not require another skill to understand this one.68697. **Validate behavior and packaging.**70 - Run `python scripts/skill-efficiency-check.py <skill-dir-or-SKILL.md>` from this skill directory, or use its installed path.71 - Treat failures as structural problems and warnings or suggestions as review prompts, not automatic rewrite orders.72 - Check supporting paths, exercise bundled scripts, and use the host's own skill validation when available.73 - Review a few representative trigger and non-trigger requests when the description changed materially. Build a larger evaluation only when repeated real failures justify it.74758. **Finish the change.**76 - Make in-scope, low-risk edits directly when intent and target are clear.77 - Ask before destructive changes, external writes, or a material expansion of scope.78 - Report changed files, validation performed, and intentional warnings or tradeoffs.7980## Validation checklist8182- The skill teaches a recurring workflow rather than merely naming a topic.83- The description explains what the skill does and when it applies.84- The body contains judgment and procedure that materially guide execution.85- Supporting files are useful, local, and loaded at the right time.86- Required host constraints and runtime assumptions are accurate.87- Generic quality prose and repeated examples were removed before useful detail.88- Concrete tone examples survived when they change how the work feels or lands.89- The lightweight efficiency check and relevant host/package checks pass.9091## Recovery9293- **Workflow is vague:** reduce it to concrete requests, inputs, decisions, and results before drafting.94- **Triggering is unreliable:** revise the description using real user language and adjacent non-trigger cases.95- **Body is unwieldy:** separate conditional detail into references, then remove repetition rather than merely moving it.96- **Many skills overlap:** compare their real workflows; merge fake separations and keep distinct jobs separate.97- **A deterministic rule remains fuzzy:** encode it in a script when doing so is simpler and more reliable than prose.98- **Upstream material is bloated or doctrinal:** retain verified workflow knowledge and rebuild the instructions around the target host and users.99- **Pruning makes the skill sound dead:** restore one concrete example that shows the desired judgment or voice; do not restore generic praise.100101## Examples102103### No-op pruning without flattening104105Bad:106107> Be thorough and make the skill high quality.108109Better:110111> Include one validation command and one failure condition that stops the workflow.112113The second line changes what the next agent writes.114115### Preserving warmth116117Bad pruning:118119> Remove every example because examples cost tokens.120121Better pruning:122123> Keep the one example that shows the desired human tone; delete the five paragraphs explaining that tone abstractly.124125Examples can be cheaper and more reliable than doctrine.126127### Collaboration-facing output128129When tone matters, a small final-shape sample is enough:130131```text132- “Changed X, left Y alone, and the check passes.”133- “I did not touch Z because it looked intentional.”134```135136That carries more behavior than “be warm and clear.”137138### Porting an upstream skill1391401. Read upstream `SKILL.md` and all files it requires.1412. Keep exact commands, failure modes, decision rules, and distinct examples.1423. Remove vendor doctrine, repeated trigger sections, and generic quality wishes.1434. Adapt examples and output shape to the target home without weakening the workflow.1445. Run both source and target validators when available; report intentional differences.145146## Output147148A completed pass leaves a valid packaged skill, useful supporting files where warranted, a reliable trigger description, preserved working taste, and a concise record of validation and intentional tradeoffs.