Skill Creator
Scaffold and write new Claude Code skills following established conventions. Handles both reference/knowledge skills (rich documentation that Claude loads as context) and task/action skills (step-by-step workflows with scripts).
When to Use This Skill
- User wants to package a repeatable workflow as a skill
- User asks to "create", "add", "write", or "scaffold" a skill
- User describes something they want Claude to do consistently across sessions
- User wants to share a skill across projects or with others
Workflow
Step 1 — Classify the Skill Type
Ask the user:
- What should the skill do? (one sentence)
- Does it perform an action or provide knowledge?
- Action: runs scripts, executes steps, interacts with tools → Task skill
- Knowledge: patterns, templates, conventions, reference material → Reference skill
Decision:
- Reference skill → single rich
SKILL.md only (no scripts required)
- Task skill →
SKILL.md + references/ + scripts/
Step 2 — Gather Details
Collect from the user:
- Skill name — kebab-case, lowercase (e.g.,
lint-python, deploy-staging)
- Trigger phrases — what will the user say to invoke it? (list 5–8 examples)
- Target location —
.github/skills/ (this project) or ~/.claude/skills/ (all projects)
- For reference skills: topic areas, frameworks, code patterns to cover
- For task skills: step-by-step actions, prerequisites, scripts needed (bash or python?)
Step 3 — Scaffold the Folder
Run the scaffold script to create the directory structure and boilerplate:
[ -d .venv ] || python -m venv .venv
PYTHON=$(if [ -f .venv/Scripts/python ]; then echo .venv/Scripts/python; else echo .venv/bin/python; fi)
$PYTHON .github/skills/skill-creator/scripts/scaffold-skill.py <skill-name> [base-path]
- Default
base-path is .github/skills/
- Script outputs created file paths to stdout (one per line)
- If the skill folder already exists, the script exits with a warning — do not overwrite
Step 4 — Populate the Files
Use references/skill-anatomy.md as your writing guide.
For a reference skill, write a rich SKILL.md with these sections:
- When to Use This Skill — bullet list of scenarios
- Core Concepts — fundamental ideas with explanations
- Implementation Patterns — named patterns with code examples (3–10+ patterns)
- Best Practices — do's and don'ts
- Common Pitfalls — what to avoid and why
- Resources — links and further reading
For a task skill, write:
SKILL.md — frontmatter + step-by-step workflow (reference references/ and scripts/ by path)
references/<skill-name>-reference.md — supporting documentation, patterns, and specs
scripts/<script>.py or scripts/<script>.sh — executable logic with error handling
Confirm all created files with the user before finishing.
Additional Resources
references/skill-anatomy.md — Complete frontmatter field reference, skill type templates, description writing guide, script conventions, naming rules
scripts/scaffold-skill.py — Creates folder structure and boilerplate files for a new skill
1---2name: skill-creator3description: Use when the user asks to "create a new skill", "add a skill", "write a skill", "scaffold a skill", "make a claude skill", "build a skill", or wants to create a reusable Claude Code skill from scratch. Also use when the user describes a repeatable workflow they want to package as a skill.4---56# Skill Creator78Scaffold and write new Claude Code skills following established conventions. Handles both **reference/knowledge skills** (rich documentation that Claude loads as context) and **task/action skills** (step-by-step workflows with scripts).910## When to Use This Skill1112- User wants to package a repeatable workflow as a skill13- User asks to "create", "add", "write", or "scaffold" a skill14- User describes something they want Claude to do consistently across sessions15- User wants to share a skill across projects or with others1617## Workflow1819### Step 1 — Classify the Skill Type2021Ask the user:221. **What should the skill do?** (one sentence)232. **Does it perform an action or provide knowledge?**24 - *Action*: runs scripts, executes steps, interacts with tools → **Task skill**25 - *Knowledge*: patterns, templates, conventions, reference material → **Reference skill**2627**Decision:**28- **Reference skill** → single rich `SKILL.md` only (no scripts required)29- **Task skill** → `SKILL.md` + `references/` + `scripts/`3031### Step 2 — Gather Details3233Collect from the user:34- **Skill name** — kebab-case, lowercase (e.g., `lint-python`, `deploy-staging`)35- **Trigger phrases** — what will the user say to invoke it? (list 5–8 examples)36- **Target location** — `.github/skills/` (this project) or `~/.claude/skills/` (all projects)37- **For reference skills**: topic areas, frameworks, code patterns to cover38- **For task skills**: step-by-step actions, prerequisites, scripts needed (bash or python?)3940### Step 3 — Scaffold the Folder4142Run the scaffold script to create the directory structure and boilerplate:4344```bash45[ -d .venv ] || python -m venv .venv46PYTHON=$(if [ -f .venv/Scripts/python ]; then echo .venv/Scripts/python; else echo .venv/bin/python; fi)47$PYTHON .github/skills/skill-creator/scripts/scaffold-skill.py <skill-name> [base-path]48```4950- Default `base-path` is `.github/skills/`51- Script outputs created file paths to stdout (one per line)52- If the skill folder already exists, the script exits with a warning — do not overwrite5354### Step 4 — Populate the Files5556Use `references/skill-anatomy.md` as your writing guide.5758**For a reference skill**, write a rich `SKILL.md` with these sections:591. **When to Use This Skill** — bullet list of scenarios602. **Core Concepts** — fundamental ideas with explanations613. **Implementation Patterns** — named patterns with code examples (3–10+ patterns)624. **Best Practices** — do's and don'ts635. **Common Pitfalls** — what to avoid and why646. **Resources** — links and further reading6566**For a task skill**, write:67- `SKILL.md` — frontmatter + step-by-step workflow (reference `references/` and `scripts/` by path)68- `references/<skill-name>-reference.md` — supporting documentation, patterns, and specs69- `scripts/<script>.py` or `scripts/<script>.sh` — executable logic with error handling7071Confirm all created files with the user before finishing.7273## Additional Resources7475- **`references/skill-anatomy.md`** — Complete frontmatter field reference, skill type templates, description writing guide, script conventions, naming rules76- **`scripts/scaffold-skill.py`** — Creates folder structure and boilerplate files for a new skill