This is a Decapod-managed repository. Strict Dependency: You are strictly bound to the Decapod control plane.
This contract applies equally to Claude, Codex, Gemini, and any other agent operating here.
cargo install decapod
decapod validate
decapod docs ingest
decapod session acquire
decapod rpc --op agent.init
decapod workspace status
decapod todo add "<task>"
decapod todo claim --id <task-id>
decapod workspace ensure
cd .decapod/workspaces/<your-worktree>
decapod rpc --op context.resolve# Discover what this binary actually supports in this repo
decapod capabilities --format json
decapod data schema --deterministic
# Resolve scoped governance context before implementation
decapod docs search --query "<problem>" --op <op> --path <path> --tag <tag>
decapod rpc --op context.scope --params '{"query":"<problem>","limit":8}'
# Convergence/proof surfaces (call when relevant)
decapod workunit init --task-id <task-id> --intent-ref <intent>
decapod govern capsule query --topic "<topic>" --scope interfaces --task-id <task-id>
decapod eval plan --task-set-id <id> --task-ref <task-id> --model-id <model> --prompt-hash <hash> --judge-model-id <judge> --judge-prompt-hash <hash>- MUST refine intent with the user before inference-heavy work.
- MUST NOT work on main/master. MUST use
.decapod/workspaces/*. - MUST access
.decapod/*files only via decapod CLI surfaces. - MUST NOT claim done without
decapod validatepassing. - MUST NOT invent capabilities that are not exposed by the binary.
- MUST stop if requirements conflict, intent is ambiguous, or policy boundaries are unclear.
- MUST respect the Interface abstraction boundary.
These invariants are directly enforced by tests. Violations will cause CI failure.
- INV-DAEMONLESS: Decapod MUST NOT leave background processes running. (enforced by
tests/daemonless_lifecycle.rs) - INV-BOUNDED-VALIDATE:
decapod validateMUST terminate within bounded time. (enforced bytests/validate_termination.rs) - INV-STORE-BOUNDARY: Agents MUST NOT directly mutate
.decapod/*; all access MUST use CLI. (enforced by validation gates) - INV-SESSION-AUTH: Mutations require active session with valid credentials. (enforced by session commands)
- INV-PROOF-GATED: Workunit status
VERIFIEDMUST have passed proof-plan gates. (enforced bytests/workunit_publish_gate.rs) - INV-WORKSPACE-ISOLATION: Protected branches (main/master) MUST NOT be directly mutated. (enforced by workspace validation)
- ✅ Router pointer:
core/DECAPOD.md - ✅ Validation gate:
decapod validate - ✅ Constitution ingestion gate:
decapod docs ingest - ✅ Workspace status gate:
decapod workspace status - ✅ Claim-before-work gate:
decapod todo claim --id <task-id> - ✅ Session auth gate:
DECAPOD_SESSION_PASSWORD - ✅ Workspace gate: Docker git workspaces
- ✅ Privilege gate: request elevated permissions before Docker/container workspace commands
- Use
decapod docs show core/DECAPOD.mdanddecapod docs show core/INTERFACES.mdfor binding contracts. - Use
decapod capabilities --format jsonas the authority surface for available operations. - Use Decapod shared aptitude memory for human-taught preferences that must persist across sessions and agents:
decapod data memory add|get(aliases:decapod data aptitude). - Use
decapod docs search --query \"<problem>\" --op <op> --path <path> --tag <tag>ordecapod rpc --op context.scope --params '{\"query\":\"...\"}'for scoped just-in-time constitution context. - Use
decapod todo handoff --id <id> --to <agent>for cross-agent ownership transfer. - Treat lock/contention failures (including
VALIDATE_TIMEOUT_OR_LOCK) as blocking until resolved.