Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/egorfedorov/claude-context-optimizer/cco-tasknpx skills add egorfedorov/claude-context-optimizer --skill cco-taskgit clone --depth 1 https://github.com/egorfedorov/claude-context-optimizerWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/egorfedorov/claude-context-optimizer/cco-task)<a href="https://agentmods.dev/skills/egorfedorov/claude-context-optimizer/cco-task"><img src="https://agentmods.dev/badge/skills/egorfedorov/claude-context-optimizer/cco-task.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00070 | $0.00875 |
| Opus 5 | $0.00035 | $0.00438 |
| Sonnet 5 | $0.00014 | $0.00175 |
| Haiku 4.5 | $0.00007 | $0.00088 |
Grade A, and why
cco-task scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 80 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Tasks — per-task context, cost, and execution state
A task is a named unit of work. While a task is active, the tokens the session
spends are attributed to it, so the Control Center (/cco) can show cost per
task, not just per session.
Each task also carries a small JSON execution state — goal, what is done,
what is open, the next action. You update it with patches instead of
re-deriving progress from the transcript, it is capped at ~1K tokens so it never
grows with the number of steps, and it is re-injected verbatim right after
/compact (and on --resume). That is the SKILL.state idea (Google / Purdue,
2026) applied where a plugin can apply it: the compaction summary is lossy and
free-form; the state is exact and bounded.
Commands
Parse the user's argument and run the matching command (working directory scopes the tasks to the current project):
Start / switch task (also closes the previous active task):
node ${CLAUDE_PLUGIN_ROOT}/src/tasks.js add "<task name>"
After starting, suggest packing the minimal context for it:
/cco-pack "<task name>", and seed the state with the goal and the plan:
/cco-task patch '{"goal": "...", "plan": ["...", "..."], "next": "..."}'.
Patch the execution state (set keys; null deletes a key):
node ${CLAUDE_PLUGIN_ROOT}/src/tasks.js patch '{"done": ["read auth.ts"], "next": "write the failing test", "scratch": null}'
The patch must be a JSON object. If the state would exceed the cap the patch is
rejected — prune finished keys with null first.
Show the current state:
node ${CLAUDE_PLUGIN_ROOT}/src/tasks.js state
List tasks (newest first, with per-task tokens + $):
node ${CLAUDE_PLUGIN_ROOT}/src/tasks.js list
Complete the active task:
node ${CLAUDE_PLUGIN_ROOT}/src/tasks.js done
State discipline (what makes it worth keeping)
- Keep it a state, not a log:
done,open,next,decisions,files— facts needed to continue, not the history of how you got there. Reasoning is ephemeral; the state is what survives. - Patch after each milestone (a test passing, a decision made, a file finished), and delete keys the moment they stop mattering.
- After
/compactthe SessionStart hook prints the active task's state into the new context automatically — treat it as authoritative over the summary. - When delegating to a subagent, pass the state (not the conversation) as the brief; it is already the minimal, current description of the task.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday Changed · +32 lines · +27 tokens per session ae7452b725d4
- 6d ago First seen · 48 lines · 43 tokens per session scan A 7499e71e419b
cco-task is a skill published in the GitHub repository egorfedorov/claude-context-optimizer (104 stars, last pushed 3d ago), licensed MIT. It adds 70 tokens to every session and 875 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
alive:demo
Generate a believable, lived-in ALIVE world from a free-text persona description (custom path) or a deterministic sandbox preset. Routes the create/list/activate/deactivate/delete/status surface and orchestrates the 5-stage subagent generation pipeline.
alive:system-upgrade
Upgrade ALIVE to the current version. Handles v1/v2/v3.x source states, multi-surface aware (alive-mcp / Hermes / Codex), retroactive version detection, partial-failure resume, dry-run previews, and rollback inspection.
alive:save
The human wants to checkpoint. Or: the stash has grown heavy — 5+ items, 30+ minutes, a natural pause in the work. The squirrel doesn't decide when to save. It surfaces the need and lets the human pull the trigger. Runs the full save protocol: confirms stash, writes log, updates state, generates projections…
alive:system-cleanup
The world feels messy. Stale tasks, orphan folders, v2 remnants, unsaved sessions — entropy is accumulating and needs to be addressed before it compounds. Scans across all walnuts, then surfaces issues one at a time.
alive:create-walnut
Something new is emerging. A venture, an experiment, a person entering the orbit, a life area getting serious. It needs its own walnut — its own identity, history, and future. Scaffolds the full structure, maps existing context sources, and optionally migrates files across.
alive:session-history
Revive sessions (quick or heavy), browse, and search — 'what happened recently?', 'find the session where we discussed X', 'revive yesterday's session'. For single-session recall and multi-session browsing. If the human needs to merge multiple sessions into one working context or detect conflicts between parallel…