The facts that should stay boring and exact.
Use this page when you need command names, installed files, package version, validators, state values, or runtime support details.
Package facts#
| Field | Value |
|---|---|
| Package | @haposoft/cafekit |
| Current package version | 0.9.1 |
| Binary | cafekit |
| Bin file | packages/spec/bin/install.js |
| Node engine | >=18.0.0 |
| Required skills | 30 |
| Required agents | 13 |
Command cheatsheet#
The second column records the frozen OpenCode 0.16 command surface for historical migration only. OpenCode is not a current runtime, and these entries are not aliases for current Claude or Codex commands.
| Claude Code command | Legacy OpenCode 0.16 command | Purpose |
|---|---|---|
/cf:ask | /question | Answer project and technical questions with repo-first evidence. |
/cf:brainstorm | /brainstorm | Clarify unclear ideas before specs. |
/cf:specs | /specs | Create a process-first plan and flat tasks through C1/C2. |
/cf:develop | /develop | Execute one approved flat task at a time. |
/cf:test | /test | Run task-aware verification. |
/cf:code-review | /code-review | Review changes for regressions and security. |
/cf:sync | — | Sync observed task Status and final inline Receipt. |
/cf:debug | /debug | Diagnose failures before fixing. |
/cf:fix | /hotfix | Apply narrow diagnosed fixes. |
/cf:docs | /docs | Optional bundle: create, update, summarize, or reconstruct docs. |
/cf:scout | /inspect | Scout source files and project structure. |
/cf:route | — | Compose the shortest valid installed chain for material work. |
For historical OpenCode 0.16 installs, the installer generated slash commands for the main implementation surface. The sync skill was shipped in the shared skill bundle, but the installer did not generate a /sync OpenCode wrapper.
Skill selection and loading#
Native selection uses progressive disclosure: live catalog metadata identifies
a candidate, the selected SKILL.md defines its contract, and only relevant
references are loaded. Invoke an installed skill directly for explicit or
obvious low-risk work. Use cf:route only for ambiguous, multi-step,
multi-domain, or elevated-risk work. If a skill or agent is absent, continue
inline when safe or report the gap; optional document skills are usable only
when installed.
Hooks are not a skill router and do not auto-select capabilities. Source and
installed projection parity is tested, but live-model adherence remains
UNPROVEN and semantic selection is not deterministic.
Installed Claude file structure#
.claude/
├── skills/
├── agents/
├── hooks/
├── references/
├── rules/
├── scripts/
├── runtime.json
├── settings.json
├── status.cjs
└── cafekit.json
Spec state values#
| State | Meaning |
|---|---|
pending | Task is not started. |
in_progress | Task is active. |
blocked | Task cannot continue; blocker must be recorded. |
done | Task has real evidence, review, and synced state. |
Validators#
node .claude/scripts/validate-spec-output.cjs specs/<feature>
node .claude/scripts/validate-docs.cjs docs
node .claude/scripts/validate-docs-reconstruct.cjs docs/as-is/<scope>
node .claude/scripts/generate-skill-catalog.cjs --skills