/ca-decompose
Greenfield decomposition interview — a layered interview that populates .codearbiter/ and locks it initialized.
$ npx -y skills add arbiterForge/codeArbiter --skill ca-decompose --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/ca-decompose
Context preview
The summary Claude sees to decide when to auto-load this skill.
Greenfield decomposition interview — a layered interview that populates .codearbiter/ and locks it initialized.
SKILL.md
ca-decompose.SKILL.mdname: ca-decompose
description: Greenfield decomposition interview — a layered interview that populates .codearbiter/ and locks it initialized.
argument-hint: (none)
$ca-decompose — greenfield populate
Stands up project state for a greenfield project — one with no meaningful source code yet. A senior-architect persona drives a six-layer interview eliciting purpose, scope, primary users, domain vocabulary, and architectural constraints, persisting each layer to disk so a context reset loses nothing, then writes the surviving `.codearbiter/` doc set and locks the project initialized. No arguments — the skill interviews the user (a handoff summary may be supplied freely during the interview).
The only permitted path to populate `.codearbiter/` when no meaningful source exists. For an existing codebase, use `$ca-create-context`.
Routes to
The `decompose` skill (`${CLAUDE_PLUGIN_ROOT}/routines/decompose/SKILL.md`) — six gated phases: pre-flight, persona adoption, layered interview, synthesis, population, lock. The skill is canonical for the layers and their gates.
When NOT to use
- Project already initialized (`<!--INITIALIZED-->` in `CONTEXT.md`) → `$ca-status`.
- Existing codebase with source present → `$ca-create-context`.
- `.codearbiter/` not yet scaffolded → `$ca-init` first.
- Update one doc → edit `<project-root>/.codearbiter/` directly or use `$ca-feature`.
Hard gate
BLOCK if `<!--INITIALIZED-->` is already present in `CONTEXT.md`. BLOCK if meaningful source is detected (route to `$ca-create-context`). BLOCK if any `[CONFIRM-NN]` exits synthesis unresolved and undeferred. MUST NOT write `<!--INITIALIZED-->` until every required doc is present and non-empty.
Read more
name: ca-decompose description: Greenfield decomposition interview — a layered interview that populates .codearbiter/ and locks it initialized. argument-hint: (none)
$ca-decompose — greenfield populate
Stands up project state for a greenfield project — one with no meaningful source code yet. A senior-architect persona drives a six-layer interview eliciting purpose, scope, primary users, domain vocabulary, and architectural constraints, persisting each layer to disk so a context reset loses nothing, then writes the surviving `.codearbiter/` doc set and locks the project initialized. No arguments — the skill interviews the user (a handoff summary may be supplied freely during the interview).
The only permitted path to populate `.codearbiter/` when no meaningful source exists. For an existing codebase, use `$ca-create-context`.
Routes to
The `decompose` skill (`${CLAUDE_PLUGIN_ROOT}/routines/decompose/SKILL.md`) — six gated phases: pre-flight, persona adoption, layered interview, synthesis, population, lock. The skill is canonical for the layers and their gates.
When NOT to use
- Project already initialized (`<!--INITIALIZED-->` in `CONTEXT.md`) → `$ca-status`.
- Existing codebase with source present → `$ca-create-context`.
- `.codearbiter/` not yet scaffolded → `$ca-init` first.
- Update one doc → edit `<project-root>/.codearbiter/` directly or use `$ca-feature`.
Hard gate
BLOCK if `<!--INITIALIZED-->` is already present in `CONTEXT.md`. BLOCK if meaningful source is detected (route to `$ca-create-context`). BLOCK if any `[CONFIRM-NN]` exits synthesis unresolved and undeferred. MUST NOT write `<!--INITIALIZED-->` until every required doc is present and non-empty.
When you can't trust yourself with your code base, trust Arbiter.
Repo: arbiterForge/codeArbiter
Other skills on codearbiter.
- /brainstorming
The Socratic spec-refinement front of /feature, and the planning front of /sprint. Routed to BEFORE any code — it takes a one-line idea and drives it to an approved, concrete spec with testable acceptance criteria. Four gated phases — frame, refine, write, approve. No
Open skill - /commit-gate
The only path to a commit. Routed to when the user invokes /commit or otherwise instructs codeArbiter to persist staged changes. Nine gated phases — permission, branch, classification, verification (test/lint/secrets), behavioral proof, diff review, selective stage, message,
Open skill - /context-check
Optional manual drift audit — report stale provenance-tracked docs (via _provenancelib drift detection across .codearbiter/.provenance/), then per stale doc offer re-scout / re-baseline / defer. Not the daily loop; commit-gate auto-heal owns routine maintenance.
Open skill - /context-creation
The brownfield back-fill. Routed to by /create-context, and by startup when .codearbiter/CONTEXT.md lacks the <!--INITIALIZED--> body marker but source code exists. Six gated phases — pre-flight, scout dispatch, synthesis, gap interview, write, lock. Reads the existing codebase
Open skill - /crypto-compliance
The banned-primitive gate. Routed to when changed code hashes, signs, encrypts, derives keys, generates security-relevant randomness, configures TLS, or imports a crypto library. Rejects broken primitives, disabled TLS verification, and home-rolled crypto; the approved-primitive
Open skill - /debug
Investigate-then-decide root-cause analysis for a defect whose cause is unknown (distinct from /fix, which assumes a known bug). Five gated phases: capture, hypothesize, gather, decide, hand off. Investigation only, no code changes; exits to /fix, /adr, or a no-action close.
Open skill

