Create new skills, review and improve existing skills, evaluate outputs, optimize trigger descriptions, and package final skill folders.
-
Route the request. Read only the reference that matches the user's current task:
| User intent | Read |
|---|
| Create a new skill or revise skill instructions | references/authoring.md |
| Review a created or revised skill | references/review.md |
| Build eval cases, run iterations, benchmark outputs, or collect human feedback | references/evaluation.md |
| Optimize a skill description for trigger accuracy | references/description-optimization.md |
| Adapt the workflow for agents without subagents, Claude Code, generic CLIs, or Cowork | references/agent-compatibility.md |
| Validate eval YAML or grading, benchmark, and feedback JSON structures | references/schemas.md |
If the request spans multiple phases, read the references in workflow order: authoring, review, evaluation, description optimization, then agent compatibility only when platform details matter.
-
Clarify activation and behavior. Identify what the skill should do, which user phrases or contexts should trigger it, what output it should produce, and whether objective evals are useful.
-
Write or revise the skill. Name new skills using the <verb>-<subject>[-<variant>] convention or a concise <verb> format (e.g., code-tests, ask). Follow references/authoring.md for metadata, trigger descriptions, SKILL.md body format, reference file format, section delimiters, scan anchors, examples, helper scripts, portability, and validation. Always bump metadata.version using semantic versioning upon any material change to a skill's files.
-
Test behavior. Run this skill's scripts/validate.py against the target skill when available. For router skills, confirm routed eval cases use expect.routing.reference; for objectively testable skills, run skill-enabled outputs against a meaningful baseline.
-
Show evidence. Share validation output, eval results, benchmark summaries, and relevant diffs before making another revision.
-
Iterate deliberately. Continue until feedback is resolved or further changes stop improving behavior.
-
Package last. Package the final skill only after the user is satisfied with behavior and trigger accuracy.