Agents skill registry

Human map of where skills live and where they end up after Stow / link / host install.

Prefer this file for reading and planning. Prefer links.registry for make agents-link-sync (machine rows only).

Naming

FileRole
REGISTRY.md (this file)Human catalog: sources, end locations, ownership
links.registryMake sync input: which targets get which hub skill symlinks
skills-lock.jsonnpx skills restore hashes for hub-vendored packs
TOOLS.mdAvoid here — OpenClaw/Hermes uses that name for local runtime notes (SSH, voice, cameras), not skill inventory

Surfaces (end locations)

flowchart TB
  hub["stow/agents/.agents/skills\n→ ~/.agents/skills"]
  hub -->|agents-link-sync| vaults["vault .agents/skills"]
  hub -->|agents-link-sync| code["codebase .agents/skills"]
  pstack["~/.cursor/plugins/local/pstack\n+ ~/.cursor/rules/pstack-models.mdc"]
  gstack["~/.claude/skills/gstack"]
  gstack -->|lite symlinks| oc["~/vaults/openclaw/workspace/skills"]
SurfaceEnd locationHow it gets thereOwned by
Coding hub~/.agents/skills/<name>/Stow from stow/agents/.agents/skills/This package (git)
Vault fan-out<vault>/.agents/skills/<name> → hubmake agents-link-syncSymlink; hub is source
Code fan-out<repo>/.agents/skills/<name> → hubmake agents-link-syncSymlink; hub is source
Project-local<repo>/.agents/skills/<name>/ (real dirs)npx skills add … in that repoThat repo
Vault-local~/vaults/personal/.agents/skills/<name>/Vault tooling (not Stow)Vault
Cursor pstack~/.cursor/plugins/local/pstack/ (+ model rule)Plugin install / local copyCursor home (not Stow)
gstack (Claude)~/.claude/skills/gstack/git clone + ./setupClaude home (not Stow)
gstack (OpenClaw lite)~/vaults/openclaw/workspace/skills/gstack-openclaw-*Symlink → gstack openclaw/skills/Symlink

After clone on a new machine:

make agents-install && make agents-verify
make agents-link-sync
# then: pstack + gstack host installs (see below) — not covered by Stow

Hub skills (~/.agents/skills)

Canonical tree: stow/agents/.agents/skills/ → stowed to ~/.agents/skills/.

SkillSource packNotes
ask-mattmattpocock/skillsRouter
grill-me, grilling, grill-with-docsmattpocock/skillsPlan stress-test
tdd, diagnosing-bugs, implementmattpocock/skillsBuild / debug
handoff, claude-handoffmattpocock/skillsSession handoff
code-review, improve-codebase-architecturemattpocock/skillsReview / deepen
writing-for-agents, setup-matt-pocock-skillsmattpocock/skillsMeta
to-spec, to-tickets, prototype, research, wayfindermattpocock/skillsSpec / plan
resolving-merge-conflictsmattpocock/skillsGit
find-skillsvercel-labs/skillsskills.sh discovery
skill-creatoranthropics/skillsAuthor skills
pr-descriptionGraduated (Trivelta)Generic PR body
gh-stackgithub/gh-stackOfficial stacked PRs (gh stack); needs gh extension install github/gh-stack. Hub patch: compose with pr-description after submit (re-apply if skill is reinstalled).

Restore hashes: skills-lock.json.


Fan-out from hub (links.registry)

Rows drive make agents-link-sync. Skills listed are symlinks into the target’s .agents/skills/.

KindTarget (end location)Hub skills linked
vault~/vaults/personal/.agents/skills/find-skills, skill-creator, pr-description (defaults)
code~/code/solopreneur/.agents/skills/grill-me, grilling, tdd, ask-matt, pr-description, gh-stack
code~/code/kamek-ai/.agents/skills/grill-me, tdd, ask-matt, find-skills, gh-stack — hosts=personal
vault~/vaults/openclaw/workspace/.agents/skills/find-skills, skill-creator — hosts=personal (Hermes)

Missing targets are skipped. hosts=personal skips on work (mbp14m4); omit hosts = all machines.

Defaults if a row omits skills: vaults → AGENTS_VAULT_SKILLS; code → AGENTS_CODE_SKILLS (see root Makefile).


Project-local skills (not hub-vendored)

Real directories in the repo (may sit beside hub symlinks).

~/code/kamek-ai/.agents/skills/

SkillOriginEnd location
react-best-practicesvercel-labs/agent-skillssame path (project)
frontend-designanthropics/skillssame
web-design-guidelinesvercel-labs/agent-skillssame
vercel-composition-patternsvercel-labs/agent-skillssame
documentation-maintenance, improve, infra-vault, shadcn, stripe-*project / other packssame

Plus hub symlinks from the table above.

~/code/solopreneur/.agents/skills/

SkillOriginEnd location
domain-hunter, reddit, twitterproject-localsame
grill-me, grilling, tdd, ask-matt, pr-description, gh-stackhub symlinks~/.agents/skills/…

Vault-local skills (~/vaults/personal/.agents/skills/)

Owned by the personal vault (not this package). Examples: qmd, clip, kb-triage, job-scan, obsidian-*, vault-health, …

Hub fan-out only adds the symlink rows in links.registry; it does not move vault-owned skills into dotfiles.


Cursor — pstack (outside Stow)

ArtifactEnd location
Plugin skills / modes~/.cursor/plugins/local/pstack/ (or marketplace user install via /add-plugin pstack)
Model role map~/.cursor/rules/pstack-models.mdc (alwaysApply)
Primary entry/poteto-mode after /setup-pstack

Preferred long-term: marketplace /add-plugin pstack for account sync. Local plugin dir is fine for immediate use.


Future mastermind — gstack (outside Stow)

Provisional OpenClaw workspace; migrate host to Hermes when ready (./setup --host hermes).

ArtifactEnd location
Full suite~/.claude/skills/gstack/ (./setup)
OpenClaw lite~/vaults/openclaw/workspace/skills/gstack-openclaw-{office-hours,ceo-review,investigate,retro} → gstack openclaw/skills/
Dispatch rules~/vaults/openclaw/workspace/AGENTS.md § Coding Tasks

Do not vendor whole gstack into stow/agents (keeps the coding hub lean).


Keep out of this registry

  • Trivelta-only skills (pam-permissions, athena-clickhouse-parity, …) — stay on mbp14m4 project trees
  • Vendor / .venv skills
  • Secrets and live ~/.cursor / ~/.claude trees (except documented install paths above)

Maintenance

  1. Add or graduate a hub skill → update this file + skills-lock.json + optionally TODO.md.
  2. Link it into vaults/code → edit links.registry, run make agents-link-sync, refresh the fan-out table here.
  3. Project-only pack → document under Project-local; do not add to the hub unless it graduates.