
Create Repo Skill
Create or update a skill in this repository the right way, canonical home in...
Install
npx skills add every-app/open-seo --skill create-repo-skill -g -a claude-code -y- Repository
- every-app/open-seo26k
- Category
- AI and agents
- Updated
- 5d ago
- License
- MIT
- Context cost
- Lightabout 1,260 tokens
- Runs scripts
- No, instructions only
What it does
Create or update a skill in this repository the right way, canonical home in .agents/skills, internal-vs-public marking, symlink mirroring into .claude/skills, and public docs registration for product skills. Use whenever adding a new skill, converting a workflow into a skill, or when .claude/skills and .agents/skills look out of sync.
Create a repo skill
The layout (invariants)
.agents/skills/<kebab-name>/SKILL.mdis the only canonical home for every skill, public product skills (SEO workflows customers install) and internal repo skills (agent workflows likemerge-ready,papercuts, this one) alike. Users install from this tree vianpx skills add every-app/open-seo..claude/skills/contains only symlinks into.agents/skills/, one per skill that Claude Code agents working in this repo should auto-load. Never copy files:.agents/skills/is prettier-ignored (vendored skills are hash-pinned) while.claude/skills/is not, so a copy gets reformatted on the.claudeside and the trees drift, this happened to three skills before symlinks became the rule.prettier --check .does not descend into the symlinks, so a symlink stays byte-identical to its canonical source by construction.- Vendored skills (external origin) are hash-pinned in
skills-lock.json(created by theskillsCLI on first vendor). Never hand-edit a vendored skill's content; re-vendor with theskillsCLI so the lock hash stays valid. .agents/skills/**is part of the review control plane (seeAGENTS.md): changes require explicit maintainer review via CODEOWNERS. Make the change on a branch and call it out in the PR, never treat skill edits as incidental.
Creating a skill
-
mkdir .agents/skills/<kebab-name>and writeSKILL.mdwith frontmatter:--- name: <kebab-name> # must match the directory name description: <what it does + explicit "use when ..." triggers> metadata: internal: true # ONLY for internal repo skills, omit for product skills --- -
Decide which kind it is:
- Internal repo skill (agent/dev workflow): set
metadata.internal: true. Do NOT register it on any public surface. If repo agents should auto-load it, add the mirror symlink:
- Internal repo skill (agent/dev workflow): set

