cool-workflow 0.1.85 → 0.1.87

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/.codex-plugin/plugin.json +1 -1
  3. package/README.md +53 -332
  4. package/apps/architecture-review/app.json +1 -1
  5. package/apps/architecture-review-fast/app.json +1 -1
  6. package/apps/architecture-review-fast/workflow.js +2 -0
  7. package/apps/end-to-end-golden-path/app.json +1 -1
  8. package/apps/pr-review-fix-ci/app.json +1 -1
  9. package/apps/release-cut/app.json +1 -1
  10. package/apps/research-synthesis/app.json +1 -1
  11. package/dist/capability-core.js +131 -3
  12. package/dist/capability-registry.js +108 -50
  13. package/dist/cli/command-surface.js +83 -10
  14. package/dist/cli.js +2 -1
  15. package/dist/doctor.js +50 -5
  16. package/dist/execution-backend.js +8 -0
  17. package/dist/mcp/tool-call.js +428 -0
  18. package/dist/mcp/tool-definitions.js +1027 -0
  19. package/dist/mcp-surface.js +5 -1442
  20. package/dist/onramp.js +421 -0
  21. package/dist/operator-ux/format.js +21 -15
  22. package/dist/operator-ux.js +2 -1
  23. package/dist/orchestrator.js +190 -87
  24. package/dist/term.js +93 -0
  25. package/dist/version.js +1 -1
  26. package/dist/workbench-host.js +1 -8
  27. package/docs/agent-delegation-drive.7.md +45 -8
  28. package/docs/cli-mcp-parity.7.md +41 -6
  29. package/docs/contract-migration-tooling.7.md +6 -0
  30. package/docs/control-plane-scheduling.7.md +6 -0
  31. package/docs/dogfood-one-real-repo.7.md +9 -1
  32. package/docs/durable-state-and-locking.7.md +6 -0
  33. package/docs/evidence-adoption-reasoning-chain.7.md +6 -0
  34. package/docs/execution-backends.7.md +6 -0
  35. package/docs/getting-started.md +40 -2
  36. package/docs/index.md +51 -38
  37. package/docs/multi-agent-cli-mcp-surface.7.md +6 -0
  38. package/docs/multi-agent-eval-replay-harness.7.md +6 -0
  39. package/docs/multi-agent-operator-ux.7.md +6 -0
  40. package/docs/node-snapshot-diff-replay.7.md +6 -0
  41. package/docs/observability-cost-accounting.7.md +6 -0
  42. package/docs/project-index.md +24 -7
  43. package/docs/real-execution-backends.7.md +6 -0
  44. package/docs/release-and-migration.7.md +7 -1
  45. package/docs/release-history.md +352 -0
  46. package/docs/release-tooling.7.md +28 -0
  47. package/docs/run-registry-control-plane.7.md +6 -0
  48. package/docs/run-retention-reclamation.7.md +6 -0
  49. package/docs/state-explosion-management.7.md +6 -0
  50. package/docs/team-collaboration.7.md +6 -0
  51. package/docs/web-desktop-workbench.7.md +6 -0
  52. package/manifest/plugin.manifest.json +1 -1
  53. package/manifest/source-context-profiles.json +1 -1
  54. package/package.json +2 -1
  55. package/scripts/agents/agent-adapter-core.js +180 -0
  56. package/scripts/agents/builtin-templates.json +4 -1
  57. package/scripts/agents/codex-agent.js +134 -0
  58. package/scripts/agents/gemini-agent.js +115 -0
  59. package/scripts/agents/opencode-agent.js +119 -0
  60. package/scripts/architecture-review-fast.js +44 -2
  61. package/scripts/canonical-apps.js +4 -4
  62. package/scripts/dogfood-release.js +55 -133
  63. package/scripts/golden-path.js +4 -4
  64. package/scripts/onramp-check.js +47 -0
  65. package/scripts/parity-check.js +741 -2
  66. package/scripts/release-check.js +5 -3
  67. package/scripts/release-gate.sh +1 -1
  68. package/scripts/source-context.js +31 -5
  69. package/scripts/version-sync-check.js +4 -2
@@ -64,6 +64,16 @@ ISO timestamps from the moment of generation. The `--json` payload is the
64
64
  contract, and it is the same bytes the MCP tool gives back. The human text view
65
65
  is policy put on top; it never changes the payload.
66
66
 
67
+ Some payload checks need more than `cwd` or `runId`. The registry may name a
68
+ scenario probe for a safe local case. A scenario gets two new temp workspaces,
69
+ one for CLI and one for MCP, sets up the same state, runs one capability through
70
+ each door, and then compares the payload after taking out temp roots, run ids,
71
+ time stamps, and chain hashes that are made by that workspace. This is used for
72
+ local deterministic work such as app show/validate/package, topology
73
+ show/validate/apply/summary/graph, sandbox show/validate/choose/resolve, state
74
+ summary refresh/show, `plan`, `approve`, `reject`, `comment.add`, `handoff`, and
75
+ `review.policy`.
76
+
67
77
  ## The Parity Matrix
68
78
 
69
79
  The matrix below is made from the live registry — one row per capability,
@@ -72,7 +82,7 @@ relationship. `identical` means `cw <cmd> --json` is equal to the `cw_<tool>`
72
82
  payload; `projected` means a declared divergence with a reason; `cli-only` marks
73
83
  a surface-specific capability with a recorded reason. The matrix is
74
84
  <!-- gen:parity:count -->
75
- machine-complete by design: 193 capabilities, 186 MCP tools.
85
+ machine-complete by design: 196 capabilities, 186 MCP tools.
76
86
  <!-- /gen:parity:count -->
77
87
 
78
88
  <!-- gen:parity:table -->
@@ -80,6 +90,9 @@ machine-complete by design: 193 capabilities, 186 MCP tools.
80
90
  | --- | --- | --- | --- | --- | --- |
81
91
  | `help` | `cw help` | `—` | `formatHelp` | cli-only | cli-only |
82
92
  | `list` | `cw list` | `cw_list` | `listWorkflows` | both | identical |
93
+ | `info` | `cw info` | `—` | `showApp` | cli-only | cli-only |
94
+ | `search` | `cw search` | `—` | `listApps` | cli-only | cli-only |
95
+ | `man` | `cw man` | `—` | `n/a` | cli-only | cli-only |
83
96
  | `doctor` | `cw doctor` | `—` | `runDoctor` | cli-only | cli-only |
84
97
  | `init` | `cw init` | `cw_init` | `init` | both | identical |
85
98
  | `plan` | `cw plan` | `cw_plan` | `planSummary` | both | identical |
@@ -285,9 +298,12 @@ A capability may be on one surface only, but never without word of it — it mus
285
298
  carry a recorded reason in the registry.
286
299
 
287
300
  <!-- gen:parity:cliOnly -->
288
- Seven capabilities are CLI-only:
301
+ Ten capabilities are CLI-only:
289
302
 
290
303
  - `help` — Human help text. MCP hosts enumerate capabilities via tools/list, not a help command.
304
+ - `info` — Human-focused workflow discovery tool (like Homebrew's `brew info`). MCP agents discover workflows via cw_list and cw_app_show tools.
305
+ - `search` — Human-focused workflow discovery (like Homebrew's `brew search`). MCP agents discover workflows via cw_list tool.
306
+ - `man` — Human documentation viewer. MCP agents read docs/ directly via file tools.
291
307
  - `doctor` — Environment diagnostics are inherently local to the CLI host — Node version, $PATH, $CW_HOME/cwd writability. An MCP client diagnosing the server process's environment is not meaningful; agents already receive the same readiness facts in their typed results (e.g. status: blocked, agentConfigured). Inspired by `brew doctor`.
292
308
  - `loop` — Convenience alias of `schedule create` with kind=loop. MCP hosts use cw_schedule_create with kind=loop.
293
309
  - `schedule daemon` — Long-running desktop daemon process, not a request/response tool. MCP hosts drive ticks via cw_schedule_due + cw_schedule_run_now.
@@ -332,10 +348,23 @@ of the rules above.
332
348
  registry ⇄ CLI ⇄ MCP coverage (every declared capability is found on its declared
333
349
  surfaces and nothing live is undeclared), makes sure `--json` output is equal to
334
350
  the MCP payload for every `payloadIdentical` capability, makes sure of the
335
- declared `commit` projection, and makes sure of fail-closed behavior by putting in
336
- drift a peer taken away, an undeclared tool, an exception with no reason, a
337
- changed payload and checking that the gate says no to each one. It is part of
338
- `npm test` and `npm run release:check`.
351
+ declared `commit` projection, checks that safe write/multi-argument capabilities
352
+ are named scenario probes rather than deferred work, and makes sure of
353
+ fail-closed behavior by putting in drift a peer taken away, an undeclared tool,
354
+ an exception with no reason, a bad probe classification, a changed payload — and
355
+ checking that the gate says no to each one. It is part of `npm test` and
356
+ `npm run release:check`.
357
+
358
+ The scenario probes now cover local worker/candidate/feedback read and write
359
+ paths. They make temp runs, send out a worker, write a fixed `result.md`, score
360
+ and pick a candidate, and make feedback from local state. No outside agent is
361
+ run; the probe checks only that CLI and MCP carry the same JSON to the same CW
362
+ core.
363
+
364
+ They also cover local state-node read, snapshot, diff, replay, and replay-check
365
+ paths from the same temp run. Snapshot and replay ids are made by CW, so the
366
+ parity check sets aside only those made ids and timestamps before it compares the
367
+ JSON.
339
368
 
340
369
  In CW, parity is not a custom; it is a built, declared, and kept property of the
341
370
  build. It is not done till it is put in the docs and tested.
@@ -472,3 +501,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
472
501
  No other change to this page in v0.1.84.
473
502
 
474
503
  0.1.85
504
+
505
+ 0.1.86
506
+
507
+ ## 0.1.87 (v0.1.87)
508
+
509
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -143,3 +143,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
143
143
  No other change to this page in v0.1.84.
144
144
 
145
145
  0.1.85
146
+
147
+ 0.1.86
148
+
149
+ ## 0.1.87 (v0.1.87)
150
+
151
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -127,3 +127,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
127
127
  No other change to this page in v0.1.84.
128
128
 
129
129
  0.1.85
130
+
131
+ 0.1.86
132
+
133
+ ## 0.1.87 (v0.1.87)
134
+
135
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -89,12 +89,20 @@ report, and audit tools.
89
89
 
90
90
  ```bash
91
91
  node test/dogfood-release-smoke.js
92
+ node test/dogfood-architecture-review-smoke.js
92
93
  ```
93
94
 
94
95
  The smoke test runs `scripts/dogfood-release.js --smoke --json`. It still
95
96
  uses the real repository, `release-cut`, worker manifests, trust audit records,
96
97
  candidate scoring, selection, verifier-gated commit, and a report, but keeps the
97
- command set smaller so it does not do recursive release checking.
98
+ command set smaller so it does not do recursive release checking. Smoke mode
99
+ does not run `canonical-apps` or `golden-path`; `npm test` runs those checks as
100
+ separate smokes.
101
+
102
+ The architecture-review smoke runs beside it. That smoke uses a stub agent to
103
+ drive the real `architecture-review` app to a report and audit proof. Keeping it
104
+ as a second smoke lets the parallel gate run both dogfood halves at the same
105
+ time while keeping the same proof.
98
106
 
99
107
  ## Promote To Real Release Actions
100
108
 
@@ -126,3 +126,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
126
126
  No other change to this page in v0.1.84.
127
127
 
128
128
  0.1.85
129
+
130
+ 0.1.86
131
+
132
+ ## 0.1.87 (v0.1.87)
133
+
134
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -287,3 +287,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
287
287
  No other change to this page in v0.1.84.
288
288
 
289
289
  0.1.85
290
+
291
+ 0.1.86
292
+
293
+ ## 0.1.87 (v0.1.87)
294
+
295
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -317,3 +317,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
317
317
  No other change to this page in v0.1.84.
318
318
 
319
319
  0.1.85
320
+
321
+ 0.1.86
322
+
323
+ ## 0.1.87 (v0.1.87)
324
+
325
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -17,6 +17,8 @@ start a run:
17
17
  ```bash
18
18
  node scripts/cw.js doctor # human-readable
19
19
  node scripts/cw.js doctor --json # stable payload for scripts
20
+ node scripts/cw.js doctor --onramp # short path for users and code work
21
+ node scripts/cw.js doctor --onramp --changed-from origin/main
20
22
  ```
21
23
 
22
24
  It checks the Node version (v18+), whether an agent backend is set up (and its
@@ -26,6 +28,22 @@ read-only — it makes nothing on disk. It exits non-zero only on a blocking
26
28
  problem; a missing agent is a warning (you are still able to run `demo` and
27
29
  `--preview`).
28
30
 
31
+ Use `--onramp` when you are not certain what to do next. It keeps the main path
32
+ small:
33
+
34
+ 1. `cw demo tamper` - prove the trust check with no agent.
35
+ 2. `cw quickstart architecture-review --check ...` - check a real run with no
36
+ writes.
37
+ 3. `cw quickstart architecture-review ...` - make the report.
38
+ 4. `cw quickstart architecture-review ... --bundle` - make a portable report
39
+ file for another person.
40
+ 5. `cw report verify-bundle report.cwrun.json` - check that file offline.
41
+ 6. `npm run test:fast` - use the fast code check while you work.
42
+ 7. `npm run release:check` - use the full gate only when the batch is ready.
43
+
44
+ Add `--changed-from origin/main` in a source checkout to get the nearest smoke
45
+ tests and guard checks for your current change.
46
+
29
47
  Make a run with a canonical workflow app:
30
48
 
31
49
  ```bash
@@ -73,17 +91,37 @@ node scripts/cw.js eval report .cw/evals/<suite-id>/replay-run.json
73
91
  node scripts/cw.js report <run-id> --show
74
92
  ```
75
93
 
76
- Run the deterministic regression commands. They give the same result every time:
94
+ Run the smallest check that fits the change:
77
95
 
78
96
  ```bash
79
97
  npm run check
80
- npm test
98
+ npm run build
99
+ node test/<nearest-smoke>.js
100
+ npm run onramp:check
101
+ npm run test:fast
102
+ npm test # slow serial backstop
81
103
  npm run canonical-apps
82
104
  npm run golden-path
83
105
  npm run eval:replay
84
106
  npm run fixture-compat
85
107
  ```
86
108
 
109
+ When a test run is slow, make a read-only timing report:
110
+
111
+ ```bash
112
+ npm run test:ci -- --json-summary /tmp/cw-test-summary.json
113
+ ```
114
+
115
+ Use the `slowest` list in that file to choose one test-speed cycle. This is a
116
+ guide, not a release gate.
117
+
118
+ For a CLI or MCP surface change, also run:
119
+
120
+ ```bash
121
+ npm run parity:check
122
+ npm run gen:manifests -- --check
123
+ ```
124
+
87
125
  Before you cut a release, run the full dry-run gate:
88
126
 
89
127
  ```bash
package/docs/index.md CHANGED
@@ -1,43 +1,56 @@
1
1
  # Cool Workflow Docs
2
2
 
3
- Read these in order when you are new to CW:
4
-
5
- 1. [Getting Started](getting-started.md) - clone, install, run a workflow, inspect it, and run the release check.
6
- 2. [Project Index](project-index.md) - code-derived map of source modules, workflow apps, docs, tests, and sync targets.
7
- 3. [Workflow App framework](workflow-app-framework.7.md) - userland app manifests, entrypoints, compatibility, and validation.
8
- 4. [Sandbox Profiles](sandbox-profiles.7.md) - named worker policy contracts for read/write/execute/network/env handling.
9
- 5. [Security / Trust Hardening](security-trust-hardening.7.md) - audit records, provenance, sandbox attestations, and acceptance rationale.
10
- - [Trust Model & Limitations](trust-model.md) - what the ed25519 + hash-chain tamper-evidence proves and what it does **not** (the single-keyholder ceiling). Read this before you trust a green verdict.
11
- 6. [Multi-Agent Runtime Core](multi-agent-runtime-core.7.md) - first-class MultiAgentRun, roles, groups, memberships, fanout, fanin, and lifecycle state.
12
- 7. [Coordinator / Blackboard](coordinator-blackboard.7.md) - shared topics, messages, context frames, artifact refs, snapshots, decisions, conflicts, and fanin evidence.
13
- 8. [Multi-Agent Topologies](multi-agent-topologies.7.md) - official map-reduce, debate, and judge-panel recipes built on multi-agent and blackboard records.
14
- 9. [Multi-Agent CLI + MCP Surface](multi-agent-cli-mcp-surface.7.md) - preferred host loop for run, status, step, blackboard, score, and select.
15
- 10. [Multi-Agent Operator UX](multi-agent-operator-ux.7.md) - graph, dependencies, failures, and evidence adoption for topology-backed multi-agent runs.
16
- 11. [Multi-Agent Trust / Policy / Audit](multi-agent-trust-policy-audit.7.md) - role authority, message provenance, blackboard write audit, judge rationale, and policy violations.
17
- 12. [Multi-Agent Eval & Replay Harness](multi-agent-eval-replay-harness.7.md) - snapshots, isolated replays, comparison, scoring, gates, reports, and MCP parity.
18
- 13. [State Explosion Management](state-explosion-management.7.md) - durable summary records, compact and focused graph views, blackboard digests, and stale-aware compaction for large multi-agent runs.
19
- 14. [Evidence Adoption Reasoning Chain](evidence-adoption-reasoning-chain.7.md) - derived, fingerprinted reasoning chains explaining why each evidence item was adopted/rejected with basis, authority, rationale, and counterfactual, and a fail-closed `unexplained` state.
20
- 15. [Run Registry / Control Plane](run-registry-control-plane.7.md) - derived, fingerprinted, fail-closed index over runs across repos: search, resume, archive, durable queue, cross-repo history, and failed-run rerun with provenance.
21
- 16. [Execution Backends](execution-backends.7.md) - the pluggable driver layer (node/bun/shell/container/remote/ci): one narrow `ExecutionBackend` contract, sandbox attestation, identical envelopes across backends, and fail-closed delegation.
22
- 17. [Operator UX](operator-ux.7.md) - `status`, `graph`, report, worker, candidate, feedback, commit, topology, multi-agent, blackboard, coordinator, and trust summaries.
23
- 18. [MCP App Surface](mcp-app-surface.7.md) - JSON tool parity for agent hosts.
24
- 19. [CLI ↔ MCP Parity](cli-mcp-parity.7.md) - the capability registry and fail-closed gate proving the CLI and MCP surfaces render one data source.
25
- 20. [End-to-End Golden Path](end-to-end-golden-path.7.md) - deterministic proof of app, worker, verifier, candidate, commit, and report flow.
26
- 21. [Dogfood One Real Repo](dogfood-one-real-repo.7.md) - dry-run release proof against the real Cool Workflow repository.
27
- 22. [Web / Desktop Workbench](web-desktop-workbench.7.md) - a read-only, localhost-only human console rendering the run graph, blackboard, worker logs, candidate compare, and audit timeline over existing capability payloads — a third front door that holds no authoritative state.
28
- 23. [Observability + Cost Accounting](observability-cost-accounting.7.md) - derived time/duration, failure/verifier/acceptance rates with sample counts and fail-closed `n/a`, plus host-attested token usage and attested-vs-estimated cost with explicit `unreported` coverage; pricing is policy as data.
29
- 24. [Team Collaboration](team-collaboration.7.md) - host-attested actor, append-only approvals/rejections/comments/handoffs provenance-linked to durable targets, and a review gate that stacks on the verifier gate (required approvals from authorized roles, fail-closed quorum/authority/self-approval); policy is data.
30
- 25. [Release And Migration](release-and-migration.7.md) - release and migration discipline for durable run state.
31
- 26. [Release Tooling](release-tooling.7.md) - one-command version bump across every surface, a per-feature scaffolder, forward-reference doc automation, and a de-duplicated release gate.
32
- 27. [Real Execution Backend Integrations](real-execution-backends.7.md) - container/remote/ci backends really execute (docker/podman run, remote/CI POST-and-poll) under the sandbox contract, byte-stable evidence vs node, fail-closed on an unavailable runtime/endpoint.
33
- 28. [Node Snapshot / Diff / Replay](node-snapshot-diff-replay.7.md) - per-node snapshot, structural diff, and isolated deterministic replay over StateNode, reusing the eval harness; sha256-fingerprinted with fail-closed `valid|stale|absent` freshness.
34
- 29. [Contract Migration Tooling](contract-migration-tooling.7.md) - a declared migration registry (run-state + workflow-app) with per-edge compatibility proofs, fail-closed reachability, and a round-trip/non-destruction prover over the existing migrateRunState pipeline.
35
- 30. [Control-Plane Scheduling](control-plane-scheduling.7.md) - priority + hard concurrency ceiling + lease lifecycle + retry/backoff + fail-closed park policy over the v0.1.28 Run Registry queue; policy-as-data, deterministic, with a read-only `sched plan`.
36
- 31. [Agent Delegation Drive](agent-delegation-drive.7.md) - the `agent` backend delegates each worker to an EXTERNAL agent process (claude/codex/HTTP endpoint) and `run --drive` auto-advances plan→dispatch→fulfill→accept→commit; the model runs in the agent's process, never in CW. Two-layer evidence, operator-vs-attested model, fail-closed park, replay without re-spawn.
37
- 32. [Run Retention & Provable Reclamation](run-retention-reclamation.7.md) - tiered, append-only, cryptographically-verifiable disk reclamation over the v0.1.28 archive overlay: seal the audit skeleton, free the reconstructable/scratch bulk, and prove it via a hash-chained tombstone; `gc plan|run|verify`, write-ahead + fail-closed, explicit capability downgrade.
38
- 33. [Durable State & Locking](durable-state-and-locking.7.md) - atomic (temp→rename) writes for every authoritative store with fsync-durability for the audit-essential ones, plus a portable stale-stealing file lock serializing the cross-process read-modify-write stores (home queue, archive overlay, reclamation chain); closes the prior verdict's non-atomic/unlocked P1.
39
- 34. [Source Context Profiles](source-context-profiles.7.md) - opt-in JSONL source exports for AI context slimming, with profile policy in manifest data and manifest records proving every included or omitted tracked file.
40
- 35. [Verifiable Report Bundle](report-verifiable-bundle.7.md) - embed the operator's ed25519 public key into a portable run archive so anyone can `report verify-bundle` it OFFLINE and self-contained (archive bytes + telemetry chain + trust-audit chain + signatures); `report bundle` produces-and-proves in one command. Fail-closed, no repo/key/install beyond npx.
3
+ Start with the first run. Use the developer loop when you change code. Read the
4
+ advanced pages only when you need those parts.
5
+
6
+ ## First Run
7
+
8
+ 1. [Getting Started](getting-started.md) - clone, install, run `doctor --onramp`, run one workflow, inspect it, and run the right check.
9
+ 2. [End-to-End Golden Path](end-to-end-golden-path.7.md) - deterministic proof of app, worker, verifier, candidate, commit, and report flow.
10
+ 3. [Verifiable Report Bundle](report-verifiable-bundle.7.md) - make a portable report bundle and verify it offline.
11
+ 4. [Trust Model & Limitations](trust-model.md) - what the ed25519 and hash-chain proof does and does not prove.
12
+
13
+ ## Developer Loop
14
+
15
+ 1. [Project Index](project-index.md) - code-derived map of source modules, workflow apps, docs, tests, and sync targets.
16
+ 2. [Workflow App framework](workflow-app-framework.7.md) - userland app manifests, entrypoints, compatibility, and validation.
17
+ 3. [Sandbox Profiles](sandbox-profiles.7.md) - named worker policy contracts for read/write/execute/network/env handling.
18
+ 4. [CLI <-> MCP Parity](cli-mcp-parity.7.md) - the capability registry and fail-closed gate proving the CLI and MCP surfaces render one data source.
19
+ 5. [Release And Migration](release-and-migration.7.md) - release and migration discipline for durable run state.
20
+ 6. [Release Tooling](release-tooling.7.md) - version bump, feature scaffold, forward-reference docs, and release gates.
21
+ 7. [Cool Workflow Release History](release-history.md) - long capability notes moved out of the README.
22
+
23
+ ## Advanced And Multi-Agent
24
+
25
+ 1. [Agent Delegation Drive](agent-delegation-drive.7.md) - the `agent` backend delegates workers to an external process and drives plan -> report.
26
+ 2. [Run Registry / Control Plane](run-registry-control-plane.7.md) - search, resume, archive, queue, history, and rerun across repos.
27
+ 3. [Execution Backends](execution-backends.7.md) - node/bun/shell/container/remote/ci drivers, sandbox attestation, and fail-closed delegation.
28
+ 4. [Multi-Agent Runtime Core](multi-agent-runtime-core.7.md) - MultiAgentRun, roles, groups, memberships, fanout, fanin, and lifecycle state.
29
+ 5. [Coordinator / Blackboard](coordinator-blackboard.7.md) - topics, messages, context, artifacts, snapshots, decisions, conflicts, and fanin evidence.
30
+ 6. [Multi-Agent Topologies](multi-agent-topologies.7.md) - map-reduce, debate, and judge-panel recipes.
31
+ 7. [Multi-Agent CLI + MCP Surface](multi-agent-cli-mcp-surface.7.md) - host loop for run, status, step, blackboard, score, and select.
32
+ 8. [Multi-Agent Operator UX](multi-agent-operator-ux.7.md) - graph, dependencies, failures, and evidence adoption.
33
+ 9. [Multi-Agent Trust / Policy / Audit](multi-agent-trust-policy-audit.7.md) - role authority, message provenance, blackboard audit, judge rationale, and policy violations.
34
+ 10. [Multi-Agent Eval & Replay Harness](multi-agent-eval-replay-harness.7.md) - snapshots, replay, comparison, scoring, gates, reports, and MCP parity.
35
+
36
+ ## Reference
37
+
38
+ - [Operator UX](operator-ux.7.md) - `status`, `graph`, reports, worker, candidate, feedback, commit, topology, blackboard, coordinator, and trust summaries.
39
+ - [MCP App Surface](mcp-app-surface.7.md) - JSON tool parity for agent hosts.
40
+ - [Dogfood One Real Repo](dogfood-one-real-repo.7.md) - dry-run release proof against this repository.
41
+ - [Web / Desktop Workbench](web-desktop-workbench.7.md) - read-only localhost console over existing run state.
42
+ - [Observability + Cost Accounting](observability-cost-accounting.7.md) - derived durations, rates, token usage, and cost.
43
+ - [Team Collaboration](team-collaboration.7.md) - append-only approvals, comments, handoffs, and review gates.
44
+ - [Real Execution Backend Integrations](real-execution-backends.7.md) - real container/remote/ci execution under the sandbox contract.
45
+ - [Node Snapshot / Diff / Replay](node-snapshot-diff-replay.7.md) - per-node snapshots, structural diff, and deterministic replay.
46
+ - [Contract Migration Tooling](contract-migration-tooling.7.md) - declared migration registry and compatibility proofs.
47
+ - [Control-Plane Scheduling](control-plane-scheduling.7.md) - priority, leases, retry/backoff, and scheduling policy.
48
+ - [Run Retention & Provable Reclamation](run-retention-reclamation.7.md) - tiered, hash-chained disk reclamation.
49
+ - [Durable State & Locking](durable-state-and-locking.7.md) - atomic writes, fsync durability, and portable file locks.
50
+ - [Source Context Profiles](source-context-profiles.7.md) - opt-in JSONL source exports for context slimming.
51
+ - [Security / Trust Hardening](security-trust-hardening.7.md) - audit records, provenance, sandbox attestations, and acceptance rationale.
52
+ - [State Explosion Management](state-explosion-management.7.md) - summaries, compact graph views, blackboard digests, and stale-aware compaction.
53
+ - [Evidence Adoption Reasoning Chain](evidence-adoption-reasoning-chain.7.md) - why evidence was adopted or rejected.
41
54
 
42
55
  CW is the base system. Workflow apps are userland. Release and migration rules
43
56
  must keep that line clear: stable contracts, clear compatibility checks, and
@@ -285,3 +285,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
285
285
  No other change to this page in v0.1.84.
286
286
 
287
287
  0.1.85
288
+
289
+ 0.1.86
290
+
291
+ ## 0.1.87 (v0.1.87)
292
+
293
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -319,3 +319,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
319
319
  No other change to this page in v0.1.84.
320
320
 
321
321
  0.1.85
322
+
323
+ 0.1.86
324
+
325
+ ## 0.1.87 (v0.1.87)
326
+
327
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -331,3 +331,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
331
331
  No other change to this page in v0.1.84.
332
332
 
333
333
  0.1.85
334
+
335
+ 0.1.86
336
+
337
+ ## 0.1.87 (v0.1.87)
338
+
339
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -152,3 +152,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
152
152
  No other change to this page in v0.1.84.
153
153
 
154
154
  0.1.85
155
+
156
+ 0.1.86
157
+
158
+ ## 0.1.87 (v0.1.87)
159
+
160
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -211,3 +211,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
211
211
  No other change to this page in v0.1.84.
212
212
 
213
213
  0.1.85
214
+
215
+ 0.1.86
216
+
217
+ ## 0.1.87 (v0.1.87)
218
+
219
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -1,15 +1,15 @@
1
1
  # Cool Workflow Project Index
2
2
 
3
- Generated from the current repository code on 2026-06-18 by `npm run sync:project-index`.
3
+ Generated from the current repository code on 2026-06-19 by `npm run sync:project-index`.
4
4
 
5
5
  ## Snapshot
6
6
 
7
7
  - Package: `cool-workflow`
8
- - Version: `0.1.85`
9
- - Source modules: `62`
8
+ - Version: `0.1.87`
9
+ - Source modules: `64`
10
10
  - Workflow apps: `7`
11
- - Docs: `50`
12
- - Smoke tests: `101`
11
+ - Docs: `51`
12
+ - Smoke tests: `115`
13
13
  - Repository: https://github.com/coo1white/cool-workflow
14
14
 
15
15
  ## Architecture
@@ -99,6 +99,7 @@ multi-agent host -> topology -> blackboard/coordinator
99
99
  - [node-projection.ts](../src/node-projection.ts)
100
100
  - [node-snapshot.ts](../src/node-snapshot.ts)
101
101
  - [observability.ts](../src/observability.ts)
102
+ - [onramp.ts](../src/onramp.ts)
102
103
  - [reclamation.ts](../src/reclamation.ts)
103
104
  - [result-normalize.ts](../src/result-normalize.ts)
104
105
  - [run-export.ts](../src/run-export.ts)
@@ -111,6 +112,7 @@ multi-agent host -> topology -> blackboard/coordinator
111
112
  - [telemetry-attestation.ts](../src/telemetry-attestation.ts)
112
113
  - [telemetry-demo.ts](../src/telemetry-demo.ts)
113
114
  - [telemetry-ledger.ts](../src/telemetry-ledger.ts)
115
+ - [term.ts](../src/term.ts)
114
116
  - [validation.ts](../src/validation.ts)
115
117
  - [workbench-host.ts](../src/workbench-host.ts)
116
118
  - [workbench.ts](../src/workbench.ts)
@@ -160,6 +162,7 @@ multi-agent host -> topology -> blackboard/coordinator
160
162
  - [Cool Workflow Project Index](project-index.md)
161
163
  - [Real Execution Backend Integrations](real-execution-backends.7.md)
162
164
  - [Release And Migration Discipline](release-and-migration.7.md)
165
+ - [Cool Workflow Release History](release-history.md)
163
166
  - [Release Tooling](release-tooling.7.md)
164
167
  - [Verifiable Report Bundle](report-verifiable-bundle.7.md)
165
168
  - [Routines](routines.md)
@@ -190,6 +193,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
190
193
  - [artifact-integrity-smoke.js](../test/artifact-integrity-smoke.js)
191
194
  - [audit-verify-smoke.js](../test/audit-verify-smoke.js)
192
195
  - [backend-registry-smoke.js](../test/backend-registry-smoke.js)
196
+ - [blackboard-state-explosion-management-smoke.js](../test/blackboard-state-explosion-management-smoke.js)
193
197
  - [block-unapproved-tag-smoke.js](../test/block-unapproved-tag-smoke.js)
194
198
  - [bump-version-idempotent-smoke.js](../test/bump-version-idempotent-smoke.js)
195
199
  - [candidate-scoring-smoke.js](../test/candidate-scoring-smoke.js)
@@ -198,6 +202,8 @@ Smoke tests mirror the public contracts. The high-signal suites are:
198
202
  - [cli-command-surface-smoke.js](../test/cli-command-surface-smoke.js)
199
203
  - [cli-jsonmode-parity-smoke.js](../test/cli-jsonmode-parity-smoke.js)
200
204
  - [cli-mcp-parity-smoke.js](../test/cli-mcp-parity-smoke.js)
205
+ - [codex-agent-wrapper-smoke.js](../test/codex-agent-wrapper-smoke.js)
206
+ - [concurrency-default-smoke.js](../test/concurrency-default-smoke.js)
201
207
  - [concurrent-failure-semantics-smoke.js](../test/concurrent-failure-semantics-smoke.js)
202
208
  - [concurrent-workflow-dsl-smoke.js](../test/concurrent-workflow-dsl-smoke.js)
203
209
  - [contract-migration-tooling-smoke.js](../test/contract-migration-tooling-smoke.js)
@@ -206,6 +212,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
206
212
  - [demo-bundle-smoke.js](../test/demo-bundle-smoke.js)
207
213
  - [det-ids-b-smoke.js](../test/det-ids-b-smoke.js)
208
214
  - [doctor-smoke.js](../test/doctor-smoke.js)
215
+ - [dogfood-architecture-review-smoke.js](../test/dogfood-architecture-review-smoke.js)
209
216
  - [dogfood-release-smoke.js](../test/dogfood-release-smoke.js)
210
217
  - [durable-atomic-write-smoke.js](../test/durable-atomic-write-smoke.js)
211
218
  - [end-to-end-demo-smoke.js](../test/end-to-end-demo-smoke.js)
@@ -216,6 +223,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
216
223
  - [evidence-content-extraction-smoke.js](../test/evidence-content-extraction-smoke.js)
217
224
  - [execution-backends-smoke.js](../test/execution-backends-smoke.js)
218
225
  - [freebsd-audit-fixes-smoke.js](../test/freebsd-audit-fixes-smoke.js)
226
+ - [gemini-agent-wrapper-smoke.js](../test/gemini-agent-wrapper-smoke.js)
219
227
  - [h7-custom-profile-persist-smoke.js](../test/h7-custom-profile-persist-smoke.js)
220
228
  - [mcp-app-surface-smoke.js](../test/mcp-app-surface-smoke.js)
221
229
  - [mcp-surface-registry-smoke.js](../test/mcp-surface-registry-smoke.js)
@@ -225,12 +233,17 @@ Smoke tests mirror the public contracts. The high-signal suites are:
225
233
  - [multi-agent-eval-replay-smoke.js](../test/multi-agent-eval-replay-smoke.js)
226
234
  - [multi-agent-operator-ux-smoke.js](../test/multi-agent-operator-ux-smoke.js)
227
235
  - [multi-agent-runtime-core-smoke.js](../test/multi-agent-runtime-core-smoke.js)
228
- - [multi-agent-topologies-smoke.js](../test/multi-agent-topologies-smoke.js)
236
+ - [multi-agent-topologies-debate-smoke.js](../test/multi-agent-topologies-debate-smoke.js)
237
+ - [multi-agent-topologies-judge-panel-smoke.js](../test/multi-agent-topologies-judge-panel-smoke.js)
238
+ - [multi-agent-topologies-map-reduce-smoke.js](../test/multi-agent-topologies-map-reduce-smoke.js)
229
239
  - [multi-agent-trust-policy-audit-smoke.js](../test/multi-agent-trust-policy-audit-smoke.js)
230
240
  - [no-false-green-smoke.js](../test/no-false-green-smoke.js)
231
241
  - [node-snapshot-diff-replay-smoke.js](../test/node-snapshot-diff-replay-smoke.js)
242
+ - [npm-trusted-publish-smoke.js](../test/npm-trusted-publish-smoke.js)
232
243
  - [observability-cost-accounting-smoke.js](../test/observability-cost-accounting-smoke.js)
233
244
  - [one-way-boundary-smoke.js](../test/one-way-boundary-smoke.js)
245
+ - [onramp-check-smoke.js](../test/onramp-check-smoke.js)
246
+ - [opencode-agent-wrapper-smoke.js](../test/opencode-agent-wrapper-smoke.js)
234
247
  - [operator-ux-smoke.js](../test/operator-ux-smoke.js)
235
248
  - [parallel-onramp-smoke.js](../test/parallel-onramp-smoke.js)
236
249
  - [parity-doc-sync-smoke.js](../test/parity-doc-sync-smoke.js)
@@ -239,6 +252,8 @@ Smoke tests mirror the public contracts. The high-signal suites are:
239
252
  - [pipeline-runner-smoke.js](../test/pipeline-runner-smoke.js)
240
253
  - [project-index-sync-smoke.js](../test/project-index-sync-smoke.js)
241
254
  - [quickstart-bundle-smoke.js](../test/quickstart-bundle-smoke.js)
255
+ - [quickstart-check-smoke.js](../test/quickstart-check-smoke.js)
256
+ - [quickstart-readme-path-smoke.js](../test/quickstart-readme-path-smoke.js)
242
257
  - [quickstart-smoke.js](../test/quickstart-smoke.js)
243
258
  - [real-execution-backends-smoke.js](../test/real-execution-backends-smoke.js)
244
259
  - [registry-corrupt-fail-closed-smoke.js](../test/registry-corrupt-fail-closed-smoke.js)
@@ -250,6 +265,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
250
265
  - [result-normalize-smoke.js](../test/result-normalize-smoke.js)
251
266
  - [robustness-failclosed-smoke.js](../test/robustness-failclosed-smoke.js)
252
267
  - [robustness-hardening-smoke.js](../test/robustness-hardening-smoke.js)
268
+ - [run-all-json-summary-smoke.js](../test/run-all-json-summary-smoke.js)
253
269
  - [run-export-import-smoke.js](../test/run-export-import-smoke.js)
254
270
  - [run-export-restore-rerun-smoke.js](../test/run-export-restore-rerun-smoke.js)
255
271
  - [run-export-restore-resume-smoke.js](../test/run-export-restore-resume-smoke.js)
@@ -265,9 +281,10 @@ Smoke tests mirror the public contracts. The high-signal suites are:
265
281
  - [schema-validation-smoke.js](../test/schema-validation-smoke.js)
266
282
  - [security-trust-hardening-smoke.js](../test/security-trust-hardening-smoke.js)
267
283
  - [self-audit-hardening-smoke.js](../test/self-audit-hardening-smoke.js)
284
+ - [source-context-batch-smoke.js](../test/source-context-batch-smoke.js)
268
285
  - [source-context-profile-smoke.js](../test/source-context-profile-smoke.js)
269
- - [state-explosion-management-smoke.js](../test/state-explosion-management-smoke.js)
270
286
  - [state-node-smoke.js](../test/state-node-smoke.js)
287
+ - [surface-explicit-cwd-smoke.js](../test/surface-explicit-cwd-smoke.js)
271
288
  - [tamper-evidence-demo-smoke.js](../test/tamper-evidence-demo-smoke.js)
272
289
  - [team-collaboration-smoke.js](../test/team-collaboration-smoke.js)
273
290
  - [telemetry-attest-wrap-smoke.js](../test/telemetry-attest-wrap-smoke.js)
@@ -159,3 +159,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
159
159
  No other change to this page in v0.1.84.
160
160
 
161
161
  0.1.85
162
+
163
+ 0.1.86
164
+
165
+ ## 0.1.87 (v0.1.87)
166
+
167
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing
@@ -68,7 +68,7 @@ changed.
68
68
  - `npm test`
69
69
  - `node test/multi-agent-runtime-core-smoke.js`
70
70
  - `node test/coordinator-blackboard-smoke.js`
71
- - `node test/multi-agent-topologies-smoke.js`
71
+ - multi-agent topologies smoke coverage
72
72
  - `node test/multi-agent-eval-replay-harness-smoke.js`
73
73
  - `npm run eval:replay`
74
74
  - dogfood release smoke coverage
@@ -299,3 +299,9 @@ Loaders fail closed on corrupt state; store writes are made safe under more than
299
299
  No other change to this page in v0.1.84.
300
300
 
301
301
  0.1.85
302
+
303
+ 0.1.86
304
+
305
+ ## 0.1.87 (v0.1.87)
306
+
307
+ npm test parallel, 4-vendor wrappers (Claude/Codex/Gemini/OpenCode), Homebrew-style CLI UX (colors/did-you-mean/categorized help/error tips/cw info/cw search/cw man/doctor --fix), post-success summaries, agent execution timing