Git-native · the repo is the store

Skill Registry

7 skills, read straight from their SKILL.md files. Every version is a git commit; edits happen in your editor and flow through the loop. Click any skill for its frontmatter, body, and history.

Process

Reviews

Autonomous

Recall

Why Crucible is "manual only." The reviews carry disable-model-invocation: true— a deliberate, heavy review you run on command, not something that auto-fires on "review this." night-shift must NOT have that flag: it would stop a scheduled task from firing the skill.

Where skills live — user vs. project level

◆ User level (all seven canonical skills)

  • Installed once by scripts/install-skills into ~/.claude/skills/ — the single install root
  • Cursor discovers the same directory through its compatibility roots — no second copy (it would double-list every skill in Cursor's slash menu)
  • Shared by every project on the machine
  • Update in one place — the repo's skills/ is the source of truth; re-run the script to sync

◆ Project level (the override)

  • A repo may carry .claude/skills/<name>/ (or .cursor/skills/<name>/)
  • Wins by name over the user-level skill — the escape hatch for a repo that needs a custom variant
  • None of the canonical skills require this; per-repo variation belongs in GITHUB-PROJECTS.md, not skill forks

One set of skills, both tools: Cursor honors the same SKILL.md standard and scans ~/.claude/skills itself, so the Claude-format skills here are the only skills and ~/.claude/skills is the only install location — nothing Cursor-specific is ever authored or copied. (Older Cursor builds that read only ~/.cursor/skills: run the install script with --include-cursor / -IncludeCursor.)

Frontmatter — shared vs. platform extensions

Author one SKILL.md. The shared fields work in both tools; Claude Code's extensions are additive and silently ignored by Cursor.

✅ Shared (portable — define once)

  • name — identifier / display name
  • description — what it does + when to trigger
  • disable-model-invocation — invoke-only, honored by both
  • Supporting files / references — markdown links to files in the skill folder, loaded on demand

➕ Claude Code extensions (ignored by Cursor)

  • allowed-tools / disallowed-tools
  • context: fork + agent (subagent run)
  • model · effort · argument-hint · arguments
  • hooks · paths · ${CLAUDE_SKILL_DIR} path substitution

Rule of thumb: keep anything that must work in both tools in the shared fields and the body. Use Claude-only fields only as enhancements that degrade gracefully — never for behavior Cursor needs to get right.

References (supporting files)

Both tools support the same progressive-disclosure pattern: drop extra files (reference.md, examples.md, scripts/) in the skill folder and link them from SKILL.md; the agent loads them on demand. Claude Code adds ${CLAUDE_SKILL_DIR}so bundled scripts resolve wherever the skill is installed. Our skills don't need references yet — but this is how you'd bundle, say, a shared VSA cheat-sheet with the Crucible reviews.

Each skill's full text, frontmatter, and version history is one click away above — read live from skills/. See Setup for where to install them per platform.