Commands

Retired — custom commands merged into skills

Commands → Skills

Claude Code merged custom commands into skills, and kun followed: every verb that used to live in .claude/commands/*.md is now a skill at .claude/skills/<name>/SKILL.md. Same invocation (/qa admission still works), same bodies — plus what skills add:

GainWhat it means
when_to_use routingEach skill's frontmatter carries its natural-language triggers, so prose like "qa admission" or "is it green" activates the right verb without a slash — passive activation is now a per-skill contract, not one giant table.
Supporting filesA skill is a directory: SKILL.md + scripts/ + references/ (see clone).
Progressive disclosureOnly name + description sit in context until a skill fires.
Invocation controlcontext: fork runs heavy skills in a subagent (see watch); user-invocable / disable-model-invocation tune who can fire what.

Where everything went

WasIs
.claude/commands/<verb>.md.claude/skills/<verb>/SKILL.md
~/.claude/commands/ copiespruned by setup.sh (a same-named skill shadows a command anyway)
This page's command tablesSkills + the keyword registry

The full verb inventory lives in the vocabulary registry (.claude/vocabulary.json, browsable at keywords); per-verb specs are the skill files themselves. /health verifies the skill fleet against engine.json counts.