Build a SKILL.md with the frontmatter and structure agents expect, so your skill is discovered when it is relevant and ignored when it is not.
Build a spec-compliant SKILL.md for the Agent Skills standard (Claude Code, Codex, Copilot, Cursor, Gemini CLI, and ~40 other products). Live linting against the frontmatter rules. Save the output as .claude/skills/<name>/SKILL.md.
--- name: deploy-checklist description: "Use when deploying to production or preparing a release. Walks the pre-deploy checklist: migrations, feature flags, rollback plan, and stakeholder notification." allowed-tools: Read, Bash --- ## Pre-deploy checklist 1. Confirm pending DB migrations are backward-compatible. 2. Verify feature flags default to off for new code paths. 3. Check the rollback plan: previous image tag noted, migration down-path tested. 4. Run the smoke suite against staging. 5. Notify #deploys with the change summary before shipping. ## Rollback If error rate doubles within 10 minutes, roll back first, debug second.
A skill costs one description line until invoked, which is why procedures belong here instead of your always-loaded config. The decision framework: MCP servers vs. Agent Skills. Related tools: CLAUDE.md generator, hooks builder, context auditor.
The description field does almost all the work, because it is what the agent reads to decide whether to load the skill at all. A description saying helps with testing is too vague to trigger reliably. One saying use when writing or fixing Playwright end-to-end tests in this repository names the situation, and situation-matching is how the decision is actually made.
Write instructions as procedure rather than explanation. Numbered steps with concrete commands get followed; paragraphs of background get skimmed. And state the negative cases explicitly: a skill that says when not to apply it prevents the failure mode where it fires on everything adjacent to its topic.