npx skills add ...
npx skills add antjanus/skillbox --skill generate-skill
Interactive SKILL.md builder. Use this skill whenever the user asks to "create a skill", "generate a skill", "scaffold a SKILL.md", "write a SKILL.md", or "turn this workflow into a skill" — even if they don't say "skill" and only describe wanting to make a repeatable agent workflow, checklist, or convention. Do NOT use for grading an existing SKILL.md (see rate-skill) or project roadmaps (see track-roadmap).
npx skills add antjanus/skillbox --skill generate-skill
Produces one ready-to-ship SKILL.md (plus optional references/, scripts/, assets/) on the conventions from the agentskills.io skill-creation pages, Anthropic's skill-creator, the platform prompting guides, and empirical activation research. The Phase 4 calibration list is tuned for the Claude 5 generation; re-check it against the current model's prompting guide when the generation changes.
One skill, one job. This skill's job is the SKILL.md and its frontmatter — not docs, releases, or auxiliary files.
Two principles drive every phase below:
| Load | When |
|---|---|
| references/PATTERNS.md | Phase 4 — body template for the chosen type |
| references/FRONTMATTER.md | Phase 3 — optional fields, anti-patterns, three-tier portability |
| references/EXAMPLES.md | ✅/❌ pairs for descriptions and body steps |
| references/SOURCES.md | A user disputes a rule and you need to cite the spec |
Use AskUserQuestion, one question at a time — never bulk-dump the questionnaire. After each phase show the artifact and confirm before moving on.
methodology (multi-step workflow — code-review, track-session) · technical (an API, format, or tool — docx, semantic-release) · auditing (grades an artifact — rate-skill, security-review) · reference (schemas, conventions, lookup tables — bigquery) · automation (a script or external command — screenshot-local).Do NOT use… clause and the should-not-trigger half of the Phase 8 eval set.Official sizing is "a few sentences to a short paragraph," hard cap 1024 chars. Shape:
Show the draft, measure it (python3 scripts/measure.py <path/to/SKILL.md> reports description chars, body lines and estimated body tokens against their caps), iterate.
Do NOT use this skill for … when a near-neighbor existsEmit these fields, in this order, and nothing else unless the skill needs it:
effort defaults by type: automation and reference low, technical medium, auditing and methodology high, multi-source synthesis and agentic coding xhigh. A skill whose deliverable is a long file stays at high — at xhigh/max the model drafts it twice, once in reasoning and once as output. Omit the key to inherit; rationale and the live-verification note are in FRONTMATTER.md.
Other optional fields, frontmatter anti-patterns and the three-tier portability rules: references/FRONTMATTER.md.
Full templates in references/PATTERNS.md — load only when generating the body. This section list is the shared spec graded by rate-skill Category 4; keep the two skills in sync.
| Type | Required | Optional |
|---|---|---|
| methodology | Overview, Workflow (phased, one task per phase), Examples, Gotchas | Quality Signals / Anti-Patterns |
| technical | Overview, Quick Start / Setup (one minimal code block), Quick Reference or API surface, Examples, Gotchas | Troubleshooting — move long API surface to references/API.md |
| auditing | Overview, Workflow, Rubric (signal → weight → check), Output Format, Examples of high/low-quality artifacts, Gotchas | — |
| reference | Overview, Navigation (load-when table), Gotchas | Core Concepts — SKILL.md stays a router; don't inline the data |
| automation | Overview, Command Surface table, Sample Invocation, Failure Modes, Gotchas | Troubleshooting — the actual script lives in scripts/ |
Content rules, every type:
## Gotchas — canonical: "the highest-value content in many skills is a list of gotchas." Keep them in SKILL.md, never a reference file, because the agent must read them before hitting the situation. Every correction you have to make to the deployed skill's agent becomes a new gotcha.Agentic calibration — leave these out. The model already does them, so restating the instruction compounds the behavior and burns tokens with no quality gain.
reasoning_extraction refusal and a model fallback. Ask for conclusions and evidence instead.Produce 3–5 covering distinct situations, not one situation restated — vary them enough that the agent doesn't pattern-match an unintended regularity. At least one is a ❌ counter-example. Show ✅ first; if room, end on ✅ (recency bias). Each gets a one-line verdict:
Use ✅/❌ for the quality labels — the <Good>/<Bad> XML form appears in zero of the 8 surveyed top community skills. This is about the labels, not XML: <example>/<examples> as structural delimiters are officially recommended and fine. Once the body passes 300 lines these move to references/EXAMPLES.md behind a pointer naming what's in it; that counts in full for grading.
Failure modes specific to this skill, not generic skill-authoring advice. Each entry: one-line symptom, one-line cause, one-line fix.
Measure with scripts/measure.py. Extract once SKILL.md passes 300 lines; the joint 500-line / ~5,000-token cap is the hard ceiling either way.
references/<TOPIC>.md files. Plural is the spec-documented name, but nothing validates directory names — never rename an existing singular reference/ dir for style.Build the set the official description-optimization loop consumes:
references/EVAL.md with the split marked and the protocol stated: each query run in a fresh session ~3 times; trigger rate = fraction of runs that invoked the skill; should-trigger passes above 0.5, should-not below.Caveat (official): agents consult skills for tasks beyond what they handle alone, so a trivially simple query may not trigger even a perfectly described skill. Don't churn the description over those.
To measure whether the body improves output rather than just triggering, run the official output-quality loop: 2–3 test cases with and without the skill, graded on evidence-required assertions written after the first run, dropping any assertion that passes in both configurations. Worth it for methodology and auditing skills, overkill for small reference skills.
✅/❌ pairs for methodology and technical descriptions, a counter-example with its four defects reversed, and body steps that check external state vs. re-check the agent's own work: references/EXAMPLES.md.
description.version, author, or tags. Fix: Move under metadata. argument-hint and hooks are valid top-level Claude Code keys and stay put — only Anthropic's packaging validator rejects them.Do NOT use this skill for X — see Y to whichever is the wrong fit.references/, one level deep, with explicit "load when…" pointers.generate-skill produces, rate-skill audits; the Phase 4 table and rate-skill's Category 4 table are one shared spec.### Example: <one-line task>
✅ Desired
<short code or transcript>
Why it works: <one sentence>.
### Counter-example
❌ Anti-pattern
<short code or transcript>
Why it fails: <one sentence>.<skill-name>/
├── SKILL.md # <300 lines, one job
├── references/ # plural — load on demand
│ ├── PATTERNS.md # optional: body templates by type
│ └── EVAL.md # train/validation eval set (Phase 8)
├── scripts/ # optional: deterministic helpers (this skill bundles measure.py)
└── assets/ # optional: templates copied into output