Skip to content

Repository files navigation

Cool Workflow hero image: the CW name over a line reading ask, plan, dispatch, verify, report — the stages of a saved, cited run.

Get a saved report from your AI agent, with every claim tied to a line of code — not a chat answer you lose.

CI npm downloads provenance release license

What is this?

Cool Workflow (cw) is a small command-line tool that turns your AI coding agent's chat answer — easy to lose, hard to check — into a saved report. Point it at a repo, or any folder of docs, and:

  • It plans the work. Your question becomes a set of small tasks.
  • Your agent does the work. CW never runs a model itself — your own agent reads and thinks.
  • It writes a checked report. Every claim points to a real place in your code, like file.ts:42. A result with no evidence stops instead of passing through.

The model is fuel. CW is the black-box recorder, the dashboard, and the gearbox — never the engine. It never calls a model API, never holds your keys, and never uploads your code.

Install

npm install -g cool-workflow
Or install with Homebrew
brew tap coo1white/cool-workflow https://github.com/coo1white/cool-workflow
brew install coo1white/cool-workflow/cool-workflow
cw version

Upgrade later with brew update && brew upgrade cool-workflow.

You need: Node.js v22.13 or newer. No agent yet? Step 1 below still works — CW never runs a model itself.

Runs on: Linux, macOS and Windows through WSL. Native Windows is not yet supported: CI runs it to measure what still fails, and that work is going on.

Works with your agent

Agent Flag Status
Claude Code -claude ✅ works
Codex CLI -codex ✅ works
Muse Code -muse ✅ works
OpenCode -opencode ✅ works
Gemini -gemini ✅ through opencode
DeepSeek -deepseek ✅ through opencode or an HTTP endpoint
Cursor — ⬜ not yet
GitHub Copilot CLI — ⬜ not yet
Aider — ⬜ not yet
Qwen Code — ⬜ not yet
Kimi — ⬜ not yet

Not sure what you have? cw doctor checks your setup and cw fix prints the commands that put it right.

Quick Start

1 · See it work — 30 seconds, no agent needed

cw demo tamper
# → builds a real signed ledger, forges it three ways, catches all three offline
# → VERDICT: tamper-evidence holds ✓

2 · Ask a question about your code — one command

cw -q "How does auth work end-to-end here?"

CW uses the current repo and the first agent it finds on your PATH. Want a specific agent? Add a flag from the table above, such as -claude.

A full review takes about 4 minutes on a real repo (14 workers; the Map and Assess stages run at the same time). One focused question? Add --fast: 6 workers in place of 14, the same cited answer for fewer agent calls.

3 · Open the report

The report opens in your browser by itself when the run ends. It starts with the answer, then the evidence behind it. Later, open it again with:

cw report --open

Want to see one first? A real run's Workbench and report, rebuilt on every push: coo1white.github.io/cool-workflow (the report is at /report.html).

4 · Keep proof that your tests passed

An agent that says "all tests pass" has only said it. Run the tests through CW and keep a receipt:

cw check -- npm test
# → ✓ passed: npm test (exit 0 at 1a2b3c4) — receipt rc-…. Cite it as receipt:rc-…

CW runs your command (never a model) and saves what happened: the commit, the exit code, a digest of the output. A result that cites receipt:rc-… is checked again before it counts: a failed run, a missing receipt, or code that changed since the run is turned down, with the one command to fix it. cw check list shows your receipts.

These steps are the core path. Everything else is kept working, not grown.

Can You Trust the Report?

CW does not run the model — it keeps the books. Your agent signs its findings (ed25519), and cw report verify-bundle checks — offline, with only the public key — that every signed finding is in the report unaltered. CW holds no private key: the agent signs, CW only verifies. This proves the signed findings reached you unaltered — not that nothing else was added, and not that none were left out. See the Trust Model.

Troubleshooting

Problem Fix
No agent found cw doctor — shows which agents are on your machine
status: blocked Set CW_AGENT_COMMAND=builtin:claude or pass -claude
claude: command not found Install Claude Code and run again
Where is my report? <repo>/.cw/runs/<id>/report.md, or run cw report --open
Missing required input: question Add -q "<question>"
Run stopped before the end Fix the cause, then cw --resume --run <id> takes it to the end; a worker that stopped gets fresh tries (inside the project, or add --repo <path>)
... is not a git project Run it inside the project, or pass --repo
Run <id> was made for <folder> The run belongs to another folder (a copied or moved repo): pass --repo <that folder>, or move it with cw run export and cw run import

Learn more

CW dogfoods its own release: every cut runs release-cut against this repo.

License

BSD-2-Clause. Built by COOLWHITE LLC.