CLAUDE.md@packages/spec/src/claude · git:20261023.a626d73 · 2026-10-23 · sha256 a46b9cdeba105ba0
CLAUDE.md@packages/spec/src/claude git:20261023.a626d73B
Immutable. This exact content never changes and is served at /api/v1/blob/a46b9cdeba105ba0.
# CLAUDE.md
@AGENTS.md
<!-- Claude Code reads this file; the @import above loads the shared AGENTS.md core.
Humans: review installed hooks with /hooks before trusting them. -->
## Claude Code runtime
Project notes (commands, files to leave unchanged, slow or expensive operations)
belong in the root AGENTS.md after the CAFEKIT CORE END marker; Claude Code reads
them through `@AGENTS.md`.
- Edit project skills under `.claude/skills/`, not `~/.claude/skills`.
- Run Python skill scripts with the skill venv:
- macOS/Linux: `.claude/skills/.venv/bin/python3 scripts/<script>.py`
- Windows: `.claude\skills\.venv\Scripts\python.exe scripts\<script>.py`
- Consult `.claude/rules/state-sync.md`, `.claude/rules/hook-protocols.md`, and `.claude/rules/skill-workflow-routing.md` when their topics apply.
- New Specs work uses the process-first flow. `/cf:specs` opens GATE-SCOPE, writes
`specs/<feature>/plan.md` with flat `task-NN-*.md` files beside it, then opens
GATE-REVIEW after adversarial review. It never starts implementation.
- Start implementation only through a new explicit `/cf:develop` invocation.
Execute one unblocked task at a time; each task has exactly one `Status:`
field and the controller is its sole state-and-proof writer. Inside a vibe run, the vibe-run exception in the state-sync rule applies.
- Use `/cf:sync` for surgical updates to observed file state. A done task
requires a canonical final inline `## Receipt` with the exact command,
`Exit: 0`, `Verification: PASS`, runtime-derived Base and Head values, and
non-empty fenced current output.
- At GATE-DONE, show current receipts and unresolved limitations. The user decides
completion; no command, review, or host state may invent approval or proof.