| name | skill-creator |
| description | Create new skills, modify and improve existing skills, and validate skill structure. Use when users want to create a skill from scratch, update or optimize an existing skill, restructure SKILL.md for better triggering, or add scripts/references/assets. Do NOT use for general coding tasks, when the user just wants to use an existing skill, or when a builtin skill already covers the use case (check src/skills/ first). |
| metadata | {"model":"remote","tools":["read_file","write_file","edit_file","list_dir","exec","Bash"],"triggers":["์คํฌ ๋ง๋ค๊ธฐ","์คํฌ ์์ฑ","์คํฌ ์์ ","์คํฌ ๊ฐ์ ","create skill","update skill"]} |
Skill Creator
Quick Reference
| Task | Approach |
|---|
| Create new skill | Step 1-4 below |
| Improve description | See references/frontmatter-spec.md |
| Improve body structure | See references/body-patterns.md |
| Add scripts | scripts/ dir, test with --help, black-box execution |
| Add references | references/ dir, link from SKILL.md body |
| Validate | node scripts/validate-skills.mjs src/skills/ or .claude/skills/ |
Skill Anatomy
skill-name/
โโโ SKILL.md (required โ frontmatter + instructions)
โโโ scripts/ (deterministic code, executed as black-box)
โโโ references/ (loaded into context on demand)
โโโ assets/ (templates, images โ used in output, not read)
Frontmatter
Two standard fields + metadata: section for orchestrator routing.
---
name: skill-name
description: One-line what. Use when: (triggers). Do NOT use when: (exclusions).
metadata:
model: local | remote
tools:
- tool_name
triggers:
- ํค์๋
---
Description is the primary trigger. It must answer: What? When to use? When NOT to use?
For full field specification: references/frontmatter-spec.md
Core Principles
- Context = cost โ The agent is already smart. Only add what it can't know.
- Description > Body โ Body loads after triggering. All trigger info goes in description.
- Progressive disclosure โ Metadata (~100 words) โ SKILL.md body (<500 lines) โ references/ (unlimited).
- Scripts as black-box โ
run --help first. Don't read source into context.
Creation Process
Step 0: Check for existing coverage
๋ฐ๋์ ๋จผ์ ์คํ. ๋นํธ์ธ ์คํฌ ๋ชฉ๋ก์ ํ์ธํ๊ณ ์ค๋ณต ์ฌ๋ถ๋ฅผ ํ๋จํ๋ค.
ls src/skills/
ls workspace/skills/
์์ฒญ๋ ๊ธฐ๋ฅ์ด ๊ธฐ์กด ์คํฌ๋ก ์ด๋ฏธ ์ปค๋ฒ๋๋ฉด ์ ๊ท ์์ฑ ์ค๋จ โ ์ฌ์ฉ์์๊ฒ ๊ธฐ์กด ์คํฌ์ ์๋ดํ๋ค.
| ํ์ธ ํญ๋ชฉ | ๋นํธ์ธ ์คํฌ |
|---|
| ํ์ผ ์ ์ก/์ฒจ๋ถ | file-delivery |
| ํ์ผ ์์ฑ (PDF/PPTX/DOCX/XLSX/ZIP) | file-maker |
| ์น ๊ฒ์ | agent-browser, web-search (workspace) |
| ๋ค์ด์ด๊ทธ๋จ | diagram |
| ์
ธ ์คํ | just-bash |
| ๋ฉ๋ชจ๋ฆฌ | memory |
| ํฌ๋ก | cron |
| GitHub | github |
| ๋ ์จ | weather |
| ์์ฝ | summarize |
| Python ์คํ / DB ์์
/ ์ปจํ
์ด๋ ์คํ | sandbox |
| tmux | tmux |
Step 1: Understand with examples
Ask the user for concrete usage scenarios. What would they say to trigger this skill?
Step 2: Plan contents
For each scenario, identify: scripts (deterministic ops), references (domain knowledge), assets (templates).
Step 3: Initialize
mkdir -p skills/<skill-name>/{scripts,references,assets}
Only create directories that will contain files.
Step 4: Write SKILL.md
- Write description โ comprehensive, with "Use when" + "Do NOT use when"
- Register tools โ ์คํฌ์ด ์ฌ์ฉํ๋ ๋ชจ๋ ๋๊ตฌ๋ฅผ
tools: ํ๋์ ๋ฑ๋ก. ์์คํ
์คํ์ด ํ์ํ๋ฉด Bash ํฌํจ ํ์. ์์ธ: references/frontmatter-spec.md ยง Tools ๋ฑ๋ก ๊ฐ์ด๋
- Write body โ Quick Reference table first, then workflow steps
- Add code examples โ concise, ready to copy
- Link references โ
See [topic.md](references/topic.md) for details
Body patterns guide: references/body-patterns.md
Dual-target rules: references/dual-target-rules.md
Common schema: references/common-schema.md
Resource conventions: references/resource-conventions.md
Examples: references/example-general-skill.md, references/example-role-skill.md
Step 5: Validate and iterate
Run the validator before committing:
node scripts/validate-skills.mjs src/skills/<skill-name>/
Fix all errors. Warnings are advisory. Then test on real tasks and refine.
Freedom Levels
Match specificity to fragility:
| Level | When | Example |
|---|
| High (text instructions) | Multiple valid approaches | "Analyze the webpage and summarize" |
| Medium (pseudocode/params) | Preferred pattern exists | "Run scripts/convert.py --format pdf" |
| Low (exact scripts) | Fragile, error-prone ops | "Execute exactly: scripts/rotate.py -a 90 input.pdf" |
What NOT to Include
- README.md, CHANGELOG.md, INSTALLATION_GUIDE.md
- "When to Use This Skill" sections in body (belongs in description)
- User-facing documentation (skills are for agents, not humans)
- Placeholder files or empty directories