
Same model. Same Claude Code. Different outcome.
The agent forgets between turns. The harness remembers across runs.
cc10x writes every workflow to disk — intent, evidence, verdicts, failures — so resume, review, and verification read from the artifact, not from a context window that's already gone.
1 router · 14 specialist agents · 21 skills · 8 workflows
Fail-closed gates · survives compaction · dispatch-by-reference · test honesty gates · anti-anchored review
Current version: 12.10.0
Install
cc10x needs Python 3.9 or newer on PATH (3.13 is the version the test suite runs on): every hook except the preflight is a python3 script. A SessionStart preflight tells the agent when python3 is missing or too old.
Step 1 — Add the marketplace (once per machine):
claude plugin marketplace add romiluz13/cc10x
Step 2 — Install the plugin:
claude plugin install cc10x@cc10x
Inside a Claude Code session the same two steps are /plugin marketplace add romiluz13/cc10x and /plugin install cc10x@cc10x.
Then say "set up cc10x for me" in Claude Code and restart. Done.
Update
claude plugin update cc10x@cc10x --scope user
Use the scope you installed at (user, project, local or managed). Then run /reload-plugins in an open session, or restart Claude Code.
Auto-update is off by default for third-party marketplaces such as romiluz13/cc10x, so a new release does not arrive on its own. Either update by hand as above, or open /plugin, go to the Marketplaces tab, select the marketplace and choose Enable auto-update.
Manual install from a clone
git clone https://github.com/romiluz13/cc10x.git
claude --plugin-dir "$PWD/cc10x/plugins/cc10x"
--plugin-dir loads the plugin for that one session only. Skills are then namespaced cc10x:<skill>, and the router is cc10x:cc10x-router.
Recommended environment variables
| Variable | Why |
|---|
CLAUDE_CODE_ENABLE_TODO_TOOLS=1 | Claude Code ships its task tools by default only on some models. cc10x works without them (it falls back to tracking the graph in the workflow artifact) but this restores them on every model. |
CLAUDE_CODE_TASK_LIST_ID (optional) | Shares one task list across sessions. |
CLAUDE_CONFIG_DIR (optional) | Moves Claude Code's configuration directory off ~/.claude. Wherever this README says ~/.claude, read $CLAUDE_CONFIG_DIR. |
CLAUDE_CODE_PLUGIN_CACHE_DIR (optional) | Moves the plugins root off ~/.claude/plugins. |
Keep .cc10x/ out of git
cc10x writes memory and workflow state under .cc10x/ in each project. It is session state, not source, so gitignore .cc10x/ in each project: add the line .cc10x/ to its .gitignore. How it relates to Claude Code's own memory is under Memory Persistence.
Quick Start Examples
Build Something
"build a user authentication system"
→ Router detects BUILD intent
→ Stops to resolve missing requirements first
→ component-builder drives RED → GREEN → REFACTOR
→ code-reviewer + failure-hunter run in parallel
→ integration-verifier checks wiring, artifacts, and behavior
→ Workflow state and memory are updated
Fix a Bug
"debug the payment processing error"
→ Router detects DEBUG intent
→ Loads prior failures and project memory
→ bug-investigator starts from logs and observed behavior
→ code-reviewer checks the fix path
→ integration-verifier confirms the bug is actually closed
→ Useful findings go back into memory
Review Code
"review this PR for security issues"
→ Router detects REVIEW intent
→ code-reviewer uses repo and git context
→ Reports findings only when confidence clears the bar
→ Every finding includes file:line evidence
Test a Feature
"write an end-to-end test plan for checkout and run it"
→ Router detects QA intent
→ one negotiation at step 0 records grants and the test-plan approval policy; the router asks once, batched, when a grant is set to ask — agents never ask
→ the topology is recalled from a machine-local record under ~/.cc10x/qa/topology/ (or $CC10X_HOME/qa/topology/ — set CC10X_HOME to an absolute path: the CLI resolves a relative one against the current directory) and written back after confirmation and after the run (a regression re-run that never recalled a record skips the write)
→ qa-researcher agents survey the code, specs and tickets, one source each
→ A test plan is reviewed by plan-gap-reviewer before anything is built
→ the reviewed test plan is shown on screen for approval (policy-controlled)
→ qa-harness-builder provisions the environment
→ code-reviewer + failure-hunter check the harness
→ qa-executor runs the plan and fills in the report
Why cc10x
Ask Claude for something complex. It works for a while. Then it declares "Done!" — tests still red, refactor half-finished, and by message 40 it's contradicting itself because the context is gone.
cc10x fixes the loop, not the prompt. The same model, constrained and looped correctly, does better than the same model running free. That's the whole bet.
| The pain you know | How cc10x handles it |
|---|
| "Done!" on red tests | integration-verifier is independent of the builder. Phase-exit gates block advancement on partial evidence. |
| Silent failures nobody asked about | failure-hunter runs in parallel with review — greps for swallowed errors and empty catches. |
| Context falls apart after compaction | Workflow state on disk with stable UUIDs. Memory files the router auto-heals. |
| Planning is just a chat | Three planning modes chosen by intent, with a fresh anti-anchored review by a reviewer who never saw the planner's rationale. |
| 12 slash commands to remember | One router. Every request hits cc10x-router first. |
.claude/ prompt spam on every fanout | State lives at .cc10x/ — outside .claude/, so the harness's sensitive-file gate never fires. |
| Green tests that prove nothing | Test Honesty Gates grep for getByTestId('…-mock'), as any, .find() bypass, setTimeout() waits. A hit can't count as PASS on that test's strength alone. |
| Reviewer findings that sound right but aren't | Every finding at confidence ≥80 needs a verbatim file:line quote or it's auto-demoted. The verifier independently re-reads the line and drops hallucinated findings before they can gate. |
| Orchestrator context rotting with pasted history | Dispatch by reference, not by blob — the diff is written to disk, the prompt passes a path, never a body. (One real dispatch hit 42k chars, 99% pasted history. The scar became law.) |
How It Works
You describe the work. cc10x routes it, brings in the right specialists, and keeps the bar for "done" higher than a convincing paragraph.
YOU
│
▼
┌────────────────────────┐
│ cc10x-router │ ◄── only entry point
│ detects intent │
└────────────┬───────────┘
│
┌────────┬────────┬──────────┼───────┬───────┬────────┬──────────────────┐
▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼
DEBUG PLAN REVIEW ORIENT QA TRIAGE CODEBASE- BUILD
HEALTH (the default)
Each workflow is a chain of the specialist agents. The full table is below.
┌──────────────────────────┐
│ STATE (every workflow) │
│ activeContext.md │
│ patterns.md │
│ progress.md │
│ {wf}.json + .events │
└──────────────────────────┘
The 8 Workflows
The router picks the workflow from the request's primary deliverable. When more than one fits, the lower priority number wins; anything that matches no other row is BUILD.
| Priority | Workflow | Trigger words | What happens |
|---|
| 1 | DEBUG | error, bug, fix, broken, crash, debug | Reproduce from evidence → isolate cause → validate fix → prove no regression (bug-investigator → code-reviewer → integration-verifier) |
| 2 | PLAN | plan, design, architect, roadmap, spec, brainstorm | Turn rough intent into an execution-ready plan with explicit decisions, then a bounded fresh review (planner → plan-gap-reviewer) |
| 3 | REVIEW | review, audit, analyze, assess | High-signal review with confidence thresholds and file:line citations (code-reviewer). Advisory only: never creates code-changing tasks |
| 4 | ORIENT | zoom out, explain, "how does X work", "walk me through" | Read-only orientation answered inline: no agents, no phase graph, no writes |
| 5 | QA | test, QA, e2e, integration test, test plan, regression | Testing the code is the deliverable: grants negotiation → topology recalled from ~/.cc10x/qa/topology/ → survey (user action inventory + behaviour-varying surface) → test plan → plan review → on-screen plan approval → environment → execution (qa-researcher ×N → plan-gap-reviewer → qa-harness-builder → qa-executor) |
| 6 | TRIAGE | triage, "incoming issues" | Categorize and verify incoming issues or PRs and write agent-ready briefs (triage-agent). Advisory only |
| 7 | CODEBASE-HEALTH | codebase health, deepening, shallow modules | Scan for deepening candidates and produce an HTML report (architecture-scanner). Advisory only |
| 8 | BUILD | build, implement, create, add (and everything else) | Clarify scope → TDD implementation → adversarial review → integration verification (component-builder → code-reviewer ∥ failure-hunter → integration-verifier) |
The router file is the source of truth for the table: plugins/cc10x/skills/cc10x-router/SKILL.md, section 1.
Claude Setup Instructions
This section is written for Claude Code to follow when the user says "set up cc10x for me".
When user says "set up cc10x", "install cc10x", or similar:
Step 1: Check Existing Files
- Read
~/.claude/CLAUDE.md (may not exist)
- Read
~/.claude/settings.json (may not exist)
Step 2: Update ~/.claude/CLAUDE.md
If file doesn't exist: CREATE with the template below.
If file exists: PREPEND the cc10x section below, keep user's existing content.
Multi-project note: The global ~/.claude/CLAUDE.md activates cc10x in every project automatically — you do not need to reinstall or reconfigure per project. Only add the cc10x section to a project's .claude/CLAUDE.md if that project has its own conflicting CLAUDE.md already.