| name | skill-creator |
| description | Create or update agent skills. Use when the user wants to create a new skill, improve an existing skill, or convert instructions into a reusable skill. Triggers on mentions of creating skills, SKILL.md, or agent skills. |
Skill Creator
Write effective, concise agent skills.
Skill Structure
skill-name/
├── SKILL.md (required — frontmatter + instructions)
├── scripts/ (optional — executable code)
├── references/ (optional — docs loaded into context as needed)
└── assets/ (optional — templates, images, fonts used in output)
Skill Creation Workflow
Step 1: Gather Requirements
Ask the user:
- What task or workflow does this skill cover?
- What triggers should activate it? (keywords, file types, actions)
- Does it need scripts, reference docs, or asset files?
Step 2: Initialize the Skill
Run {baseDir}/scripts/init_skill.py <name> --path .vera/skills [--resources scripts,references,assets] to scaffold the skill directory with a SKILL.md template.
Step 3: Write SKILL.md
Frontmatter
---
name: my-skill-name
description: What it does and when to use it. Include trigger scenarios.
---
name: lowercase, hyphens only, max 64 chars
description: max 1024 chars. Include WHAT it does and WHEN to trigger it. This is the only thing Claude sees before loading the skill — all trigger info goes here, not in the body.
Body Guidelines
- Write for an AI agent, not a human.
- Use imperative form: "Run X", "Parse the output".
- Keep under 500 lines. Split to
references/ if needed.
- Only include knowledge Claude doesn't already have.
- Prefer concise examples over verbose explanations.
- No extraneous files (README.md, CHANGELOG.md, etc.).
Step 4: Add Scripts (if needed)
Place in scripts/. Scripts should be self-contained, handle errors clearly, and be tested before inclusion.
Step 5: Add References (if needed)
Place in references/ for content that would bloat SKILL.md (API schemas, detailed workflows, troubleshooting). Reference from SKILL.md so Claude knows they exist.
Step 6: Validate
Run {baseDir}/scripts/quick_validate.py <path/to/skill> to check:
- Valid frontmatter with name and description
- Naming conventions (lowercase-hyphenated)
- No unexpected frontmatter keys
Step 7: Iterate
Use the skill on real tasks, notice gaps, update, repeat.
Example: Complete Minimal Skill
---
name: tavily-search
description: Web search via Tavily API. Use when the agent needs to search the web for current information. Requires TAVILY_API_KEY.
---
# Tavily Search
AI-optimized web search using Tavily API.
## Usage
Run `{baseDir}/scripts/search.mjs "query"` with options:
- `-n <count>`: Results count (default: 5, max: 20)
- `--deep`: Advanced search (slower, more thorough)
- `--topic <topic>`: `general` (default) or `news`
## Notes
- Requires TAVILY_API_KEY from https://tavily.com
Naming Rules
- Lowercase letters, digits, and hyphens only
- Max 64 characters
- Prefer short, verb-led phrases (e.g.,
generate-docs, run-tests)
- Folder name must match skill name