create-skill
Create or update a complete repository skill from a user's idea, including the workflow instructions, references, scripts or assets, agent metadata, skill-card artwork, cinematic banner artwork, README links, discovery metadata, and validation. Use when the user asks to create a new skill, add a skill to this collection, turn a workflow into a reusable skill, or make a skill's documentation and artwork consistent with the repository.
git clone --depth 1 https://github.com/tamdogood/builder-essential-skills /tmp/create-skill && cp -r /tmp/create-skill/skills/create-skill ~/.claude/skills/create-skillSKILL.md
# Create Skill
Turn a skill idea into a complete, discoverable, and shippable skill folder. Treat the skill instructions, metadata, artwork, README wiring, and validation as one deliverable.
## Workflow
1. **Orient the repository.** Read `AGENTS.md`, the root `README.md`, the nearest existing skill with a similar purpose, and any local lessons file. Inspect `package.json`, `skills.sh.json`, the installer, and the existing `assets/skill-cards/` and `assets/skill-banners/` conventions before editing.
2. **Define the contract.** Extract the skill slug, purpose, audience, trigger phrases, inputs, outputs, and acceptance checks from the request. Normalize the slug to lowercase hyphen-case. Preserve the user's terminology, but make the frontmatter description explicit about both the capability and the situations that should trigger it.
3. **Choose the smallest useful structure.** Create only the resources the skill needs:
- `skills/<slug>/SKILL.md` for the core workflow and routing rules.
- `skills/<slug>/agents/openai.yaml` for display metadata and an explicit `$<slug>` default prompt.
- `skills/<slug>/references/` for detailed domain guidance that should load progressively.
- `skills/<slug>/scripts/` only for deterministic, repeatable automation.
- `skills/<slug>/assets/` only for files the skill will reuse in its outputs.
- `skills/<slug>/README.md` because this repository documents every published skill.
Keep `SKILL.md` under 500 lines. Put deep specifications and long examples in one-level-deep references and link them directly from the skill.
4. **Write the skill.** Use imperative instructions. State the decision points, required tools, file paths, invariants, failure handling, and verification commands another agent cannot safely infer. Prefer a short workflow in `SKILL.md` and conditional links such as `references/artwork.md` for specialized work.
5. **Create the required artwork.** In this repository, every new skill needs `assets/skill-cards/<slug>.svg` and a linked row in the root README's **Pick a skill** table. When the collection uses cinematic banners, also create `assets/skill-banners/<slug>.webp` and use the banner in the root and skill READMEs. Read [references/artwork.md](references/artwork.md) before creating either asset.
6. **Wire every discovery surface.** Update all surfaces that explicitly enumerate skills: the root README card table, the skill README, `skills.sh.json` groupings, and any registry or installer allowlist discovered during orientation. Do not invent a new registry file. Confirm that `package.json` already includes the `skills/` and `assets/` trees; change it only if the package would otherwise omit the new files.
7. **Validate before handoff.** Run the skill validator, parse the SVG, inspect the rendered card and banner, check every new README link, run the repository test suite, and run `git diff --check`. Review the diff for stale names, placeholder text, missing metadata, broken relative paths, untracked required assets, and accidental unrelated edits.
## Skill content requirements
Include these sections when relevant:
- **Scope and trigger behavior:** what the skill handles and what it should not handle.
- **Inputs and outputs:** expected files, links, user decisions, and final artifacts.
- **Workflow:** the smallest reliable sequence, with explicit branch points.
- **Resources:** when to read each reference or run each script.
- **Validation:** concrete commands and visual or semantic acceptance checks.
- **Failure handling:** what to do when a tool, dependency, reference, or user choice is missing.
Never leave TODO markers, template prose, guessed tool names, or unsupported claims in a published skill. Avoid duplicating long reference material in `SKILL.md`.
## Artwork routing
Use the built-in image-generation tool for a new raster banner. First inspect two or more existing banners and any user-provided reference images. Treat references as style and composition guidance, not as content to copy. Generate a wide cinematic scene with exact title text only when the tool can render it reliably; inspect the result and iterate on one targeted issue at a time. Save the final project asset as WebP and keep the SVG card deterministic and accessible.
For the detailed visual system, prompt template, composition rules, conversion commands, and review checklist, read [references/artwork.md](references/artwork.md).
## Validation commands
From the repository root, adapt these commands to the local toolchain:
```bash
python3 "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" skills/<slug>
xmllint --noout assets/skill-cards/<slug>.svg
npm test
git diff --check
```
If a command is unavailable, use the repository's documented equivalent and report the substitution. Do not call the work complete while required files are untracked or a validation check is red.Transform saved links, papers, articles, posts, videos, and reference collections into approachable AI teaching artifacts for later study. Use when a user wants to queue learning material, create a readable explanation from a source, teach a paper or post step by step, or run an interactive tutor that validates understanding over multiple sessions.
Inspect an unfamiliar repository, turn a focused Markdown behavior scenario into a deterministic test in the repository's native test stack, run it, and preserve traceability between intent and code. Use when asked to add scenario tests, compile acceptance criteria or Given/When/Then Markdown into executable tests, reproduce a user-visible regression, or convert a narrow workflow specification into stable web, API, CLI, desktop, or mobile interaction coverage. Do not use for broad exploratory journeys or agent-judged smoke tests.
>-
Create truthful, human-centered marketing campaigns for an app or product, including positioning, channel copy, original artwork, editable layouts, README banners, and selective website integration. Use when asked to make launch materials, promotional artwork, social assets, campaign kits, ads, or marketing content from an existing product; to adapt a visual reference without copying it; or to add approved campaign art to product surfaces. Do not invent claims, fake UI, publish, deploy, or replace product proof without explicit evidence and authorization.
>
>
>-
Map the big picture around a topic or software repository by identifying its boundaries, layers, actors, components, relationships, flows, history, fault lines, and open questions, then explain how the pieces fit together and where to look next. Use when a user asks to understand a whole field, domain, technology, ecosystem, industry, codebase, architecture, unfamiliar repo, or phrases such as "give me the big picture", "map the landscape", "how does this all fit together?", "help me get oriented", or "what am I missing?