From skill-builder
Build or audit any AI agent skill from a plain-English description. Generates SKILL.md, references, hooks, and full marketplace repo scaffold. Supports all 32+ agents in the Agent Skills open standard.
How this skill is triggered — by the user, by Claude, or both
Slash command
/skill-builder:skill-builder "description" [--type workflow|mode|tool|reference|agent] [--repo] [--audit path] [--fix]When to use
Use when user says build a skill, create a skill, make a skill, generate a skill, audit a skill, review a skill, fix a skill, improve a skill, /skill-builder.
"description" [--type workflow|mode|tool|reference|agent] [--repo] [--audit path] [--fix]This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Turn a plain-English description into a production-ready skill compatible with every
Turn a plain-English description into a production-ready skill compatible with every agent that implements the Agent Skills open standard (32+ tools, December 2025).
/skill-builder "compress images before committing"
/skill-builder "remind the model to always write tests first" --type reference
/skill-builder "scaffold a FastAPI project" --type workflow --repo
/skill-builder "make the model speak formally" --type mode --repo
/skill-builder --audit skills/my-skill/SKILL.md
/skill-builder --audit skills/my-skill/SKILL.md --fix
| Arg | Default | Values |
|---|---|---|
| description | required (unless --audit) | plain English, what the skill does |
| --type | auto-detect | workflow, mode, tool, reference, agent |
| --repo | off | also scaffold a full marketplace-ready repo |
| --audit | off | path to existing SKILL.md — audit instead of create |
| --fix | off | with --audit: also output corrected SKILL.md |
If --audit flag present: skip to Phase A — Audit.
Otherwise: continue to Phase 1.
Load references/skill-types.md.
Determine skill type from description:
| Signal | Type |
|---|---|
| "every time", "always", "mode", "persistently" | mode |
| "create", "scaffold", "build", "pipeline", "generate" | workflow |
| "compress", "format", "convert", "run X on Y", "transform" | tool |
| "remind", "context for", "know about", "rules for" | reference |
| "act as", "autonomous", "manage the whole", "firm", "company" | agent |
If --type provided, skip detection. If ambiguous, ask ONE question:
"Is this (a) a persistent mode that changes every response, (b) a one-shot action on a specific target, or (c) a multi-step workflow producing artifacts?"
Wait for answer. Never ask more than one question total. Decide the rest.
Load references/skill-anatomy.md.
Ask at most 2 more questions total (across all phases). If description already answers, skip:
1. Trigger: does the user type /skill-name to invoke, or should it activate automatically?
2. Output: what does it produce — files on disk, changed model behavior, a report, or nothing?
Derive:
SKILL_NAME — kebab-case, matches ^[a-z0-9]+(-[a-z0-9]+)*$, 1–64 charsTRIGGER — user-invocable (typed) or auto (always-on, requires SessionStart hook)OUTPUTS — files / behavior change / report / noneNEEDS_HOOKS — true if mode or auto-triggerNEEDS_REFERENCES — true if skill needs domain knowledge loaded lazilyNEEDS_SCRIPTS — true if skill runs bash/python toolsBefore writing any reference files, research the domain to get verified facts.
Skip this phase if NEEDS_REFERENCES is false.
Step 1 — Identify research targets. From description, extract tool/library names, APIs, frameworks, flags, method signatures, config schemas.
Step 2 — WebSearch official docs. For each target:
WebSearch: "{tool-name} official documentation CLI flags"
WebSearch: "{api-name} API reference {relevant-endpoint}"
Prioritize: official docs > spec documents > recent release notes.
Step 3 — Extract and verify. Only keep: exact flag names + values, method signatures, error codes, version constraints. Never include unverified Stack Overflow answers.
Step 4 — Build reference stubs. One file per domain: references/{domain-slug}.md with verified flags/methods, error→fix table, input/output examples, TOC if >100 lines.
---
name: {SKILL_NAME}
description: >
{LINE_1_WHAT_IT_DOES_VERB_OBJECT_MAX_80_CHARS}
{LINE_2_HOW_INVOKED}
{LINE_3_KEY_OUTPUT_OR_BEHAVIOR}
license: MIT
user-invocable: {true_OR_false}
argument-hint: '{ARGUMENT_HINT}'
when_to_use: >
{WHEN_TO_USE}
---
Add optional fields only when relevant: model, effort, context, paths, allowed-tools, metadata.
See references/skill-anatomy.md for full field reference.
Load references/skill-types.md for full patterns:
{TEMPLATE_VARIABLES} substituted — never leave placeholdersFor each domain area identified in Phase 3:
references/{domain-slug}.mdLoad references/{name}.md before {action}.Rules: verified facts only, tables over prose, one-level-deep (no chained includes), TOC if >100 lines.
Load references/hook-templates.md for full templates.
Mode skills only. Generate: hooks/package.json, hooks/activate.js, hooks/tracker.js.
Use safeWriteFlag pattern verbatim. ALL filesystem ops must silent-fail.
Load references/scaffold-templates.md, references/agent-rules.md, and references/install-paths.md.
Generate full repo in {SKILL_NAME}/ directory. See references/scaffold-templates.md for complete file list and content templates.
## Skill Built: {SKILL_NAME}
**Type**: {SKILL_TYPE}
**Hooks**: {yes — SessionStart + UserPromptSubmit | no}
**References**: {list filenames or "none"}
**Repo scaffold**: {yes — {SKILL_NAME}/ | no}
### Files created
{list every file path}
### Install
bash install.sh
### Test
/{SKILL_NAME} {example invocation}
Load references/skill-anatomy.md.
Step 1 — Read target. Read SKILL.md at --audit path. If missing, stop and tell user.
Step 2 — Extract metadata. Parse frontmatter: name, description, license, type (infer from body). Estimate token count.
Step 3 — Run quality checklist. Check every item in references/skill-anatomy.md Quality Checklist. Record each failure:
[FAIL] {checklist-item}
Found: {what's there}
Expected: {what should be}
Fix: {exact change}
Also check: body matches required sections for type, no raw {VARIABLE} placeholders, SKILL.md under 5000 tokens, reference files have TOC if >100 lines, domain facts verified not guessed.
Step 4 — Report. Output: type detected, size (ok or OVER BUDGET), failures list, warnings list, passed count.
Step 5 — If --fix. Output corrected SKILL.md — fix failures only, don't rewrite passing sections. Run Phase 3 first if domain research needed.
skill-types.md once at Phase 1, keep activehook-templates.md only at Phase 6scaffold-templates.md, agent-rules.md, install-paths.md only at Phase 7{TEMPLATE_VARIABLES} — never output raw placeholders@ includes in skill bodyname must match ^[a-z0-9]+(-[a-z0-9]+)*$ — validate before writingdescription must be ≤1024 chars — count before writingCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub shihabshahrier/skill-builder --plugin skill-builder