agentleFS
GRIDLOCK-NYCGRIDLOCK-NYC/claude-skills/skills/skill-builder/SKILL.md

skill-builder

Skill0 starsChanged 7 months agoMITView on GitHub

Build new Claude Code skills with best-practice enforcement from Anthropic's official skill guide. Handles use case definition, pattern selection, frontmatter generation, instruction writing, validation, and test case generation. Use when user says "build a skill", "create a skill", "make a new skill", "turn this into a skill", "I want a skill for", "skill for [X]", "make me a slash command", or "new skill that [does something]". Do NOT use for running evals or benchmarking existing skills (use skill-eval for that). Do NOT use for listing, deleting, or inspecting existing skills.

74 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use contract-test, literature-research and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • squall-chuaSkill

    contract-test

    Test a running API against its own contract — OpenAPI, GraphQL, protobuf, or AsyncAPI — from the outside, and report every drift between what the contract promises and what the API does.

    Also in 3 projects that use this

  • nickjwellsSkill

    literature-research

    Search academic literature and perform deep research reviews. Use when user asks to search PubMed, find academic papers, or do literature reviews.

    Also in 3 projects that use this

  • nopandererSkill

    commit-and-push

    Automatically analyze git changes, generate Conventional Commits compliant commit messages, commit changes, and push to remote in a single automated workflow. Use when the user invokes /commit-and-push or explicitly requests to automatically commit and push changes following Conventional Commits format (feat:, fix:, docs:, etc.). This skill provides a fully automated git workflow without manual intervention.

    Also in 3 projects that use this

  • MicrosoftSkill

    skill-reviewer

    Review skill PRs with structured severity-rated feedback covering token budgets, routing conflicts, and repo conventions. WHEN: \"review skill\", \"review skill PR\", \"review skill changes\", \"check skill quality\", \"skill PR feedback\".

    Also in 3 projects that use this

  • SkillPilotCHSkill

    level-up

    Eine Automatisierung pro Woche finden, scopen, shippen. Output landet als proposed-Eintrag in cadence.md mit konkreten Implementations-Schritten.

    Also in 3 projects that use this

  • MicrosoftSkill

    excalidraw-diagram

    Create Excalidraw diagram JSON files that make visual arguments. Use when the user wants to visualize workflows, architectures, or concepts.

    Also in 4 projects that use this

The file

Show its rules and text

We split this skill into the rules it gives an agent

31 rules. 0 are common, 15 are distinctive, and 16 are very specific to this project.

  • 0

    Common

    Most of the 65 edited versions we read keep these.

  • 15

    Distinctive

    This author's own choices. Worth a look.

  • 16

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Do not skip validation steps — every check matters.

    line 15
  2. Very specific:

    Read the referenced files in references/ before making decisions that depend on them.

    line 16
  3. Distinctive:

    If the user said "turn this into a skill" or similar, referring to work already done in the conversation:

    line 31
  4. Very specific:

    If the user provided $ARGUMENTS or described what they want:

    line 39
  5. Distinctive:

    Ask the 4 intent questions (one message, one pause):

    line 41
  6. Distinctive:

    If the user wants to explore or develop a skill concept before committing to building it (e.g., "help me develop this idea", "I need a …

    line 50
  7. Distinctive:

    Do NOT ask the 4 intent questions mechanically.

    line 57
  8. Distinctive:

    Exit condition: When the user says "build it", "go ahead", "go for it", or equivalent approval, transition to Auto-Decisions below and …

    line 59
  9. Distinctive:

    After receiving confirmation (Path A) or answers (Path B):

    line 63
  10. Very specific:

    Read reference files first: Before making any decisions, read references/patterns.md, references/frontmatter-rules.md, and …

    line 65
  11. Very specific:

    If the skill is project-specific (only useful in this repo): {project}/.claude/skills/{skill-name}/

    line 91
  12. Very specific:

    If the skill is general-purpose (useful across projects): ~/.claude/skills/{skill-name}/

    line 92
  13. Very specific:

    When in doubt, prefer global (~/.claude/skills/) — skills can always be moved later

    line 93
  14. Very specific:

    Create the folder and references/ subdirectory if needed

    line 110
  15. Very specific:

    No XML tags (< or >)

    line 121
  16. Distinctive:

    Every instruction is a concrete action, never vague

    line 139
  17. Very specific:

    Add ## Important or ## Critical header at top for must-follow rules

    line 145
  18. Very specific:

    Use ## Instructions with ### Step N: [Action] subsections

    line 146
  19. Distinctive:

    Add performance notes: "Take your time", "Quality is more important than speed", "Do not skip validation steps"

    line 152
  20. Very specific:

    Keep SKILL.md under 500 lines

    line 158
  21. Distinctive:

    If approaching the limit, add hierarchy and clear pointers to reference files

    line 159
  22. Very specific:

    Only create references/ files for skills with:

    line 163
  23. Distinctive:

    When creating reference files:

    line 170
  24. Very specific:

    Never create a README.md inside the skill folder.

    line 176
  25. Very specific:

    Run every check from the validation checklist automatically.

    line 182
  26. Very specific:

    No XML tags (< or >) in any frontmatter field

    line 193
  27. Distinctive:

    No README.md in skill folder

    line 198
  28. Distinctive:

    If any check fails: fix the issue immediately, re-validate, and show the corrected report.

    line 211
  29. Very specific:

    Ask: "Anything to adjust, or ready to use?

    line 232
  30. Distinctive:

    Check contents. If it contains an existing skill, ask the user: overwrite or pick a new name?

    line 239
  31. Distinctive:

    Keep the WHAT + WHEN + negative triggers structure

    line 249

“Common” is measured: kept by at least 6 in 10 of the 65 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Skill Builder

Build structurally correct Claude Code skills by enforcing Anthropic's official skill guide patterns, rules, and validation checklist.

Important

  • Take your time with each phase. Quality is more important than speed.
  • Do not skip validation steps — every check matters.
  • Read the referenced files in references/ before making decisions that depend on them. They contain the authoritative rules.
  • Explain the why behind structural decisions so the user builds intuition, not just files.

Instructions

This skill runs a 4-phase workflow with exactly 2 pauses (Phase 1 and Phase 4). Phases 2 and 3 execute automatically.


Phase 1: Extract Intent (1 pause)

Determine which entry path applies:

Path A — From Conversation Context

If the user said "turn this into a skill" or similar, referring to work already done in the conversation:

  1. Review the conversation history for: tools used, step sequence, corrections made, input/output formats, domain knowledge applied.
  2. Synthesize a summary: "Here's what I extracted from our conversation: [summary]."
  3. Pause for confirmation: "Does this capture it, or should I adjust?"

Path B — From Intent Argument

If the user provided $ARGUMENTS or described what they want:

  1. Ask the 4 intent questions (one message, one pause):
    • What does the user want to accomplish with this skill?
    • What multi-step workflows does this require?
    • Which tools are needed (built-in like Read/Write/Bash/Grep/Glob, or MCP servers)?
    • What domain knowledge or best practices should be embedded?
  2. Pause once for answers.

Path C — Idea Development

If the user wants to explore or develop a skill concept before committing to building it (e.g., "help me develop this idea", "I need a skill that can...", "what would this look like"):

  1. Engage in structured collaboration:
    • Clarify the core problem the skill solves
    • Identify what makes it hard (domain knowledge, multi-step coordination, tool selection, etc.)
    • Propose the output format and key decisions
    • Surface design tensions and tradeoffs
  2. Do NOT ask the 4 intent questions mechanically. Have a real conversation about the concept.
  3. Pause as many times as needed — this path is collaborative, not a form.
  4. Exit condition: When the user says "build it", "go ahead", "go for it", or equivalent approval, transition to Auto-Decisions below and proceed through Phases 2-4 automatically.

Auto-Decisions (after the pause)

After receiving confirmation (Path A) or answers (Path B):

  1. Read reference files first. Before making any decisions, read references/patterns.md, references/frontmatter-rules.md, and references/description-craft.md. These inform the decisions below.
  2. Make these decisions automatically. State each one clearly:

Use Case Category — Classify as one of:

  • Document & Asset Creation: Skill produces files, reports, documentation, or structured output
  • Workflow Automation: Skill orchestrates a multi-step process (build, deploy, test, etc.)
  • MCP Enhancement: Skill teaches optimal workflows for connected MCP servers

State: "Category: [X] because [reason]."

Framing — Choose one:

  • Problem-first: User describes a goal, skill orchestrates tools to achieve it. ("I need to set up a workspace")
  • Tool-first: User has specific tools/MCPs, skill teaches optimal usage patterns. ("I have Notion MCP connected")

State: "Framing: [X] because [reason]."

Pattern — Choose from the 5 patterns (already read in step 1 above):

  1. Sequential Workflow
  2. Multi-MCP Coordination
  3. Iterative Refinement
  4. Context-Aware Tool Selection
  5. Domain-Specific Intelligence

State: "Pattern: [X] because [reason]."

Location — Determine where to save:

  • If the skill is project-specific (only useful in this repo): {project}/.claude/skills/{skill-name}/
  • If the skill is general-purpose (useful across projects): ~/.claude/skills/{skill-name}/
  • When in doubt, prefer global (~/.claude/skills/) — skills can always be moved later

State: "Location: [path]"

Invocability — Default to user_invocable: true unless the skill is clearly meant to be auto-triggered only.

Proceed immediately to Phase 2.


Phase 2: Build (0 pauses)

Construct the entire skill. Do not pause during this phase.

Step 1: Create Folder

  • Name in kebab-case (no spaces, underscores, or capitals)
  • Create the folder and references/ subdirectory if needed

Step 2: Generate Frontmatter

Consult references/frontmatter-rules.md (already read in Phase 1) for the complete rule set.

Required fields:

  • name: kebab-case, must match folder name, no "claude" or "anthropic" in the name
  • description: Craft using the formula from references/description-craft.md:
    • Structure: [What it does] + [When to use it] + [Key capabilities]
    • Under 1024 characters
    • No XML tags (< or >)
    • Include specific trigger phrases users would actually say
    • Include negative triggers if scope could be confused with another skill
    • Be "a little pushy" on triggers — Claude undertriggers by default, so lean inclusive
  • user_invocable: true by default
  • argument: include if the skill accepts input

Optional fields — only include when genuinely needed:

  • compatibility: environment requirements (1-500 chars)
  • metadata: author, version, mcp-server
  • license: MIT, Apache-2.0, etc.

Step 3: Write Instructions

Apply the pattern selected in Phase 1 to structure the instructions. Follow these rules:

Voice and form:

  • Imperative form: "Run X", "Check Y" — not "You should run X"
  • Every instruction is a concrete action, never vague
  • GOOD: Run \python scripts/validate.py --input {filename}` to check data format`
  • BAD: Validate the data before proceeding

Structure:

  • Start with # Skill Name
  • Add ## Important or ## Critical header at top for must-follow rules
  • Use ## Instructions with ### Step N: [Action] subsections
  • Include ## Error Handling section with concrete numbered fixes
  • Include ## Examples section with input/output format for common scenarios
  • Reference bundled resources: "Before doing X, consult references/Y.md for the complete rule set"

Quality enforcement:

  • Add performance notes: "Take your time", "Quality is more important than speed", "Do not skip validation steps"
  • Explain the why behind non-obvious decisions — theory of mind beats heavy-handed MUSTs
  • Critical instructions go at the top, not buried in the middle

Progressive disclosure:

  • Core instructions in SKILL.md, detailed docs in references/
  • Keep SKILL.md under 500 lines
  • If approaching the limit, add hierarchy and clear pointers to reference files

Step 4: Create References (if needed)

Only create references/ files for skills with:

  • Domain knowledge that would bloat SKILL.md
  • API patterns or templates
  • Multiple variants or modes

For simple skills (~50 lines of instructions), skip references entirely.

When creating reference files:

  • Include table of contents for files over 300 lines
  • Organize by variant/domain if supporting multiple contexts

Step 5: No README.md

Never create a README.md inside the skill folder. SKILL.md is the only documentation file.


Phase 3: Validate (0 pauses)

Run every check from the validation checklist automatically. Read references/validation-checklist.md for the full list.

Validation checks to run:

  1. Folder named in kebab-case
  2. SKILL.md exists (exact spelling, case-sensitive)
  3. YAML frontmatter has --- delimiters
  4. name field: kebab-case, no spaces, no capitals
  5. name matches folder name
  6. description includes WHAT and WHEN components
  7. description under 1024 characters
  8. No XML tags (< or >) in any frontmatter field
  9. Instructions use imperative form (spot-check first 5 action sentences)
  10. Error handling section present
  11. Examples section present
  12. References clearly linked (if references/ exists)
  13. No README.md in skill folder
  14. SKILL.md under 500 lines

Print the validation report:

Validation Report:
  [PASS] Folder named in kebab-case
  [PASS] SKILL.md exists (exact spelling)
  [PASS] YAML frontmatter has --- delimiters
  ...

If any check fails: fix the issue immediately, re-validate, and show the corrected report. Do not present a report with failures unless the fix requires user input.


Phase 4: Deliver (1 pause)

Present the finished skill:

  1. Show the full frontmatter — the YAML block between --- delimiters
  2. Show instruction structure — headers and step names (not the full content)
  3. State the pattern applied and why it was chosen
  4. Provide test prompts:
    • 2-3 should-trigger prompts:
      • One obvious task description
      • One paraphrased/indirect request
      • One edge case that should still trigger
    • 2 should-NOT-trigger prompts:
      • Near-misses that share keywords but need a different skill or no skill
      • These are the most valuable tests for preventing overtriggering
  5. State location and how to invoke: /skill-name or natural language

Ask: "Anything to adjust, or ready to use? Run /skill-eval to benchmark how well this skill follows its own instructions."


Error Handling

Folder already exists

  1. Check contents. If it contains an existing skill, ask the user: overwrite or pick a new name?
  2. Never silently overwrite.

SKILL.md exceeds 500 lines

  1. Identify sections that can move to references/
  2. Extract them, replace with pointers: "See references/X.md for details"
  3. Re-validate line count

Description exceeds 1024 characters

  1. Tighten language — remove redundant trigger phrases
  2. Keep the WHAT + WHEN + negative triggers structure
  3. Cut capabilities list if needed (triggers matter more)

Frontmatter validation fails

  1. Fix the specific field
  2. Re-run validation
  3. Show corrected report

Examples

Example 1: Simple workflow skill

User: /skill-builder a skill that runs my Python test suite with coverage

Result: A sequential-workflow skill with:

  • Frontmatter with triggers like "run tests", "test coverage", "pytest"
  • Steps: discover test files, run pytest with coverage flags, parse output, report results
  • Error handling for missing dependencies, no tests found, failures
  • Examples showing different invocation patterns

Example 2: From conversation

User (after debugging session): "turn this into a skill"

Result: Extracts the debugging workflow from conversation, builds a domain-specific intelligence skill with the diagnostic patterns embedded, triggers on relevant error types.

Example 3: MCP-enhanced skill

User: /skill-builder a skill for managing GitHub issues with labels and milestones

Result: A multi-MCP coordination skill (if GitHub MCP is available) or sequential workflow (if using gh CLI), with triggers for "create issue", "label issues", "milestone planning".

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.