cco · diff

git:20261017.44e77a4 to git:20261017.dfb62c2

63 added, 33 removed. Audit A to A.

---
name: cco
- description: Context Control Center — one screen for budget, $ spent, tokens saved, waste, last prompt grade, the active task, and ready-to-run optimization actions
+ description: "In Claude Code: what this session costs and where the tokens go, plus the tools to cut it — /cco for the board, /cco audit, /cco task, /cco pack and more. Use when the user asks about session cost, context size, savings, or wants a task tracked across /compact."
+ argument-hint: "[command] [args] (empty for the board, 'help' for all)"
license: MIT
- disable-model-invocation: true
allowed-tools:
- "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/dashboard.js:*)"
- "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/tracker.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/audit.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/tasks.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/smart-pack.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/anatomy.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/git-context.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/claudemd-analyzer.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/prompt-coach.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/context-shield.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/report.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/roi.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/digest.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/replay.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/tool-costs.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/overhead.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/config.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/export.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/patterns-share.js:*)"
+ - "Bash(node ${CLAUDE_PLUGIN_ROOT}/src/doctor.js:*)"
- Read
+ - Glob
---
- # Context Control Center
+ # Context Optimizer
> **Needs Claude Code** (or Cowork on your computer): this runs the plugin's local scripts. If `node` or `${CLAUDE_PLUGIN_ROOT}` isn't available, as in claude.ai chat, don't try to run anything. Say so in one line and offer the `fresh-start` or `token-check` skill instead.
- The all-in-one view of the current session. Show the user the live board, then
- the per-file heatmap if they want detail.
-
- ## 1. Show the board
-
- ```bash
- node ${CLAUDE_PLUGIN_ROOT}/src/dashboard.js board
- ```
+ Arguments: `$ARGUMENTS`. The first word is the command; the rest are its
+ `<args>`. No command means `board`. `help`, or a command not in the table,
+ means: print the table below as a short menu and stop.
- This renders, in one screen:
- - **Budget** — % of the effective context window used + $ spent this session
- - **Saved** — tokens the Read Cache blocked → the effectiveness multiplier (e.g. "1.4x")
- - **Waste** — cold context (read but never edited) you can drop to free budget
- - **Prompt** — grade of the last prompt (from Prompt Coach)
- - **Task** — the active task and its token/$ cost (per-task attribution)
- - **Actions** — concrete next steps: what to drop → `/compact`, what to `/cco-pack`
+ For a command, read its instructions in
+ `${CLAUDE_PLUGIN_ROOT}/skills/cco/commands/<command>.md` and follow them.
+ Those files write the plugin's path as `${CLAUDE_PLUGIN_ROOT}`: use
+ `${CLAUDE_PLUGIN_ROOT}` in its place, and the user's `<args>` where they say
+ `<args>`. When the user typed only a command that just runs its script, run
+ the script from the table directly and skip reading the file.
- Present the board as-is. Then, based on what it shows:
- 1. If an **action** line suggests dropping cold files, offer to run `/compact`.
- 2. If **no task is active**, suggest `/cco-task add "<what they're working on>"` so
- the board can attribute tokens per task.
- 3. If the **prompt grade** is low (C/D/F), suggest `/cco-coach`.
+ ## See where the tokens go
- ## 2. (Optional) per-file heatmap
+ | Command | What it shows | Script |
+ |---|---|---|
+ | *(none)* / `board` | This session: budget, $ spent, saved, waste, active task, next actions | `node ${CLAUDE_PLUGIN_ROOT}/src/dashboard.js board` |
+ | `audit` | Your real transcripts: where the money went and what CCO saved | `node ${CLAUDE_PLUGIN_ROOT}/src/audit.js <args>` |
+ | `report` | Token ROI across all tracked sessions | `node ${CLAUDE_PLUGIN_ROOT}/src/report.js full` |
+ | `roi` | Monthly savings by model | `node ${CLAUDE_PLUGIN_ROOT}/src/roi.js` |
+ | `digest` | Efficiency score and trend for the last N days | `node ${CLAUDE_PLUGIN_ROOT}/src/digest.js <args>` |
+ | `replay` | Recent session summaries | `node ${CLAUDE_PLUGIN_ROOT}/src/replay.js <args>` |
+ | `tools` | What each tool really costs in tokens | `node ${CLAUDE_PLUGIN_ROOT}/src/tool-costs.js` |
+ | `overhead` | The fixed context every session starts with | `node ${CLAUDE_PLUGIN_ROOT}/src/overhead.js` |
- If the user wants the file-by-file breakdown:
+ ## Spend less
- ```bash
- node ${CLAUDE_PLUGIN_ROOT}/src/tracker.js heatmap
- ```
+ | Command | What it does |
+ |---|---|
+ | `orchestrate <task>` | Do a task with Haiku subagents doing the reading and test runs |
+ | `task` | Track a task's cost and keep its state across `/compact` |
+ | `pack <task>` | The files a task needs, with line ranges, before reading anything |
+ | `anatomy` | A compact map of the project |
+ | `git` | Context suggestions from the git working tree |
+ | `claudemd` | Find bloat in CLAUDE.md |
+ | `coach` | Grade the last prompt and sharpen it |
+ | `shield` | `.contextignore` rules from what was never used |
+ | `templates` | Saved context sets for recurring tasks |
- Highlight files read but never used (waste), files that were edited (high-value),
- and the total token usage / waste percentage.
+ ## Settings and data
- If there is no data yet, tell the user:
- "No data in this session yet — keep working. Reads, edits, prompts and cache
- savings are tracked automatically; run /cco again to see the board fill in."
+ | Command | What it does |
+ |---|---|
+ | `config` | Tune thresholds (re-read warnings, cache staleness, coach) |
+ | `budget` | Context budget and auto-compact settings |
+ | `export` | Save a report as Markdown or an offline HTML page |
+ | `patterns` | Share learned file patterns with a team |
+ | `clean` | Prune or reset tracked data |
+ | `doctor` | Check the install end to end |