Iron rule: Do not maintain a second set of skill creation standards. skill-creator is the sole entry point for skill design, refactoring, benchmarking, and packaging.
Workflow
- Step 1: Clarify the skill goal ⚠️ REQUIRED
- 1.1 Distill the capability boundaries, trigger phrases, and output types that the user truly wants to capture.
- 1.2 Collect at least 3 real usage scenarios, prioritizing extraction from the current conversation, historical skills, or git diff.
- 1.3 If the requirement is essentially to create a role, a context isolation process, or a governance-oriented orchestrator, hand off to agent-creator instead of continuing to create a skill.
- Step 2: Audit the current state and text assets ⚠️ REQUIRED
- 2.1 If it is modifying an existing skill, first compare git diff or commit history to find rules, examples, terminology, and resource references that were deleted but still have value.
- 2.2 Decide what content stays in the main SKILL.md, what is split into references/, and what is pushed down into scripts/.
- Step 3: Design the skill architecture ⚠️ REQUIRED
- 3.1 First decide the description, iron rules, workflow, confirmation gates, anti-patterns, and pre-delivery checks.
- 3.2 Then decide whether a parameter system, eval, benchmark, and viewer are needed.
- Step 4: Write the trigger surface
- 4.1 Write the description first, covering real trigger phrases and synonymous expressions.
- 4.2 Put all when-to-use information in the description, not in the body.
- Step 5: Write the main body of SKILL.md ⚠️ REQUIRED
- 5.1 Keep the body concise, retaining only the skeleton and key constraints.
- 5.2 Split long lists, cases, technique explanations, and schemas into references/.
- Step 6: Build resources
- 6.1 Write deterministic, reusable operations into scripts/.
- 6.2 Write design methods, long lists, and format definitions into references/.
- 6.3 Write output resources such as templates or review pages into assets/ or eval-viewer/.
- Step 7: Choose the evaluation mode (conditional)
- 7.1 For simple changes, manual review alone is sufficient.
- 7.2 For complex skills, use references/schemas.md, scripts/run_eval.mjs, scripts/aggregate_benchmark.mjs, scripts/run_loop.mjs, and eval-viewer/generate_review.mjs for evaluation and trigger optimization.
- Step 8: Package and wrap up ⚠️ REQUIRED
- 8.1 Use scripts/quick_validate.mjs for a quick structural check.
- 8.2 When a new skill needs to be created, use scripts/init_skill.mjs to initialize the skeleton.
- 8.3 When delivery is needed, use scripts/package_skill.mjs to package.
- 8.4 Summarize the retention, migration, deletion, and compatibility strategy.
Resources in this directory
- references/skill-design-overview.md: Quickly understand the 12 core techniques of skill design.
- references/description-guide.md: Load before writing the description.
- references/workflow-patterns.md: Load when designing workflows, confirmation gates, and delivery checks.
- references/writing-techniques.md: Load when writing iron rules, question-based instructions, and anti-patterns.
- references/output-patterns.md: Load when designing output templates and delivery checklists.
- references/parameter-system.md: Load when a parameter system is needed.
- references/architecture-guide.md: Load when planning the references/, scripts/, assets/ layering.
- references/schemas.md: Load when writing evals, grading, and benchmark data.
- scripts/init_skill.mjs: Initialize the skill skeleton.
- scripts/quick_validate.mjs: Quickly validate frontmatter and directory structure.
- scripts/package_skill.mjs: Package the skill.
- scripts/run_eval.mjs, scripts/aggregate_benchmark.mjs, scripts/run_loop.mjs: Evaluation, aggregation, and trigger optimization.
- agents/analyzer.md, agents/grader.md, agents/comparator.md: Load when doing benchmark analysis, assertion grading, and blind testing.
Principles for splitting the main text and references
- Put in SKILL.md: iron rules, the workflow backbone, confirmation gates, anti-patterns, and pre-delivery checks.
- Put in references/: long checklists, cases, design theory, schemas, and evaluation instructions.
- Put in scripts/: operations that are deterministic, highly repetitive, and worth saving tokens on.
Design principles
- Do not let the main text become a second README.
- Do not cram all content back into SKILL.md in pursuit of completeness.
- Do not merely rewrite the skeleton while losing the project-specific rules from the original skill.
- Do not treat benchmark as mandatory for all skills.
- When the requirement is essentially an agent, do not force it into skill-creator.
Anti-patterns
- Without comparing the old version text, directly overwrite everything with the new template.
- Keep two canonical skills at the same time, causing a split in responsibilities.
- Keep only abstract processes and do not retain valuable concrete rules and terminology.
- Look only at benchmark scores, not at real outputs and user feedback.
Pre-delivery checks
- Valuable old text has been recovered through git diff or historical version comparison.
- description already covers trigger scenarios and real utterances.
- The main text retains only the skeleton, and long text has been reasonably split into references/.
- If eval is run, the JSON schema and directory structure are aligned.
- Benchmark results have been analyzed together with real outputs, rather than only looking at scores.
- The current directory is the only canonical skill entry point.