@slowcook-ai/cli 0.19.4 → 0.19.6

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 (61) hide show
  1. package/README.md +216 -191
  2. package/dist/cli.js +53 -73
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/check/spec-validate.d.ts.map +1 -1
  5. package/dist/commands/check/spec-validate.js +3 -1
  6. package/dist/commands/check/spec-validate.js.map +1 -1
  7. package/dist/commands/plate/dto-columns.d.ts +55 -0
  8. package/dist/commands/plate/dto-columns.d.ts.map +1 -0
  9. package/dist/commands/plate/dto-columns.js +135 -0
  10. package/dist/commands/plate/dto-columns.js.map +1 -0
  11. package/dist/commands/refine/agent.d.ts.map +1 -1
  12. package/dist/commands/refine/agent.js +12 -1
  13. package/dist/commands/refine/agent.js.map +1 -1
  14. package/dist/commands/refine/spec-validate.d.ts +18 -0
  15. package/dist/commands/refine/spec-validate.d.ts.map +1 -1
  16. package/dist/commands/refine/spec-validate.js +42 -0
  17. package/dist/commands/refine/spec-validate.js.map +1 -1
  18. package/dist/commands/serve/config.d.ts +140 -0
  19. package/dist/commands/serve/config.d.ts.map +1 -0
  20. package/dist/commands/serve/config.js +174 -0
  21. package/dist/commands/serve/config.js.map +1 -0
  22. package/dist/commands/serve/detect.d.ts +31 -0
  23. package/dist/commands/serve/detect.d.ts.map +1 -0
  24. package/dist/commands/serve/detect.js +56 -0
  25. package/dist/commands/serve/detect.js.map +1 -0
  26. package/dist/commands/serve/dev.d.ts +51 -0
  27. package/dist/commands/serve/dev.d.ts.map +1 -0
  28. package/dist/commands/serve/dev.js +126 -0
  29. package/dist/commands/serve/dev.js.map +1 -0
  30. package/dist/commands/serve/index.d.ts +28 -0
  31. package/dist/commands/serve/index.d.ts.map +1 -0
  32. package/dist/commands/serve/index.js +216 -0
  33. package/dist/commands/serve/index.js.map +1 -0
  34. package/dist/commands/serve/mock.d.ts +39 -0
  35. package/dist/commands/serve/mock.d.ts.map +1 -0
  36. package/dist/commands/serve/mock.js +132 -0
  37. package/dist/commands/serve/mock.js.map +1 -0
  38. package/dist/commands/serve/staging.d.ts +39 -0
  39. package/dist/commands/serve/staging.d.ts.map +1 -0
  40. package/dist/commands/serve/staging.js +190 -0
  41. package/dist/commands/serve/staging.js.map +1 -0
  42. package/dist/commands/stories/index.d.ts +15 -0
  43. package/dist/commands/stories/index.d.ts.map +1 -0
  44. package/dist/commands/stories/index.js +280 -0
  45. package/dist/commands/stories/index.js.map +1 -0
  46. package/dist/commands/stories/status.d.ts +74 -0
  47. package/dist/commands/stories/status.d.ts.map +1 -0
  48. package/dist/commands/stories/status.js +176 -0
  49. package/dist/commands/stories/status.js.map +1 -0
  50. package/dist/commands/upsert-agent-docs.d.ts.map +1 -1
  51. package/dist/commands/upsert-agent-docs.js +42 -0
  52. package/dist/commands/upsert-agent-docs.js.map +1 -1
  53. package/dist/commands.manifest.d.ts +37 -0
  54. package/dist/commands.manifest.d.ts.map +1 -0
  55. package/dist/commands.manifest.js +289 -0
  56. package/dist/commands.manifest.js.map +1 -0
  57. package/dist/help.d.ts +43 -0
  58. package/dist/help.d.ts.map +1 -0
  59. package/dist/help.js +131 -0
  60. package/dist/help.js.map +1 -0
  61. package/package.json +3 -3
package/README.md CHANGED
@@ -1,210 +1,235 @@
1
1
  # @slowcook-ai/cli
2
2
 
3
- CLI for the slowcook brewing harness. Installs the `slowcook` binary.
3
+ The `slowcook` CLI TDD-first agentic development harness. Turns a detailed user story into frozen tests, then lets agents iterate under strict guardrails until every test is green.
4
4
 
5
- > ⚠️ **Active development — expect breaking changes.** Slowcook is pre-1.0 and the architecture itself is iterating in public. The 0.15 line was scrapped mid-cut and replaced by today's 0.16 mock-app architecture. CLI commands, file layouts, prompt contracts, and the package surface can and will change between alpha versions.
5
+ > ⚠️ **Active development — expect breaking changes.** Slowcook is pre-1.0 and the architecture itself is iterating in public. CLI commands, file layouts, prompt contracts, and the package surface can and will change between point versions.
6
6
  >
7
7
  > If you're adopting slowcook today: pin exact versions in your consumer (`.brewing/slowcook-cli-version`), read each release entry in [the changelog](https://github.com/aminazar/slowcook/blob/main/CHANGELOG.md) before bumping, and treat it as a partnership — feedback from real consumers is what drives the next cut.
8
8
 
9
9
  ## Install
10
10
 
11
11
  ```bash
12
- # Stable line (0.13.x today; story-flow + bug-flow + chef orchestrator)
13
12
  npm i -D @slowcook-ai/cli
14
-
15
- # 0.16 alpha track (singular mock app + element-anchored review)
16
- npm i -D @slowcook-ai/cli@alpha @slowcook-ai/mock-runtime@latest
17
- ```
18
-
19
- The `latest` tag points at the most recent stable cut; the `alpha` tag points at the in-progress 0.16 architecture. The two are NOT installable together — pick one per consumer.
20
-
21
- ## Commands (v0.4)
22
-
23
- ### `slowcook refine` (first agent)
24
-
25
- Drives a GitHub issue through a clarifying-question loop until a frozen spec is emitted as a draft PR. Enforces the issue-level ratchet: new issues must not silently duplicate or contradict earlier decisions.
26
-
27
- ```bash
28
- npx slowcook refine --issue <number> [options]
29
- ```
30
-
31
- **Required environment:**
32
-
33
- - `ANTHROPIC_API_KEY` — for the refinement and relationship-analysis LLM calls
34
- - `GITHUB_TOKEN` — with `contents: write`, `issues: write`, `pull-requests: write`
35
-
36
- **Options:**
37
-
38
- | Flag | Default | Description |
39
- |---|---|---|
40
- | `--issue <number>` | required | GitHub issue number |
41
- | `--cwd <path>` | `.` | Repo working directory |
42
- | `--owner <login>` | parsed from git remote | Repo owner |
43
- | `--repo <name>` | parsed from git remote | Repo name |
44
- | `--base <branch>` | `main` | Base branch for the draft spec PR |
45
- | `--refine-model <id>` | `claude-opus-4-7` | Model for the refinement loop |
46
- | `--relationship-model <id>` | `claude-sonnet-4-5` | Model for relationship analysis |
47
-
48
- **Behaviour per invocation:**
49
-
50
- 1. Reads the issue (body + labels + comments) and all currently-active specs.
51
- 2. Runs a relationship analysis: `new_or_independent | overlap | contradiction`.
52
- 3. Acts on the verdict:
53
- - **overlap** — posts a comment naming the overlapping spec ids, applies `blocked-overlap` label, exits.
54
- - **contradiction** without `change-of-mind` label — posts a blocker comment, applies `blocked-contradiction` label, exits.
55
- - **contradiction** with `change-of-mind` label — proceeds; the spec's `supersedes` field is populated.
56
- - **new / independent** — proceeds to the refinement loop.
57
- 4. Runs one round of refinement: either posts clarifying questions (and exits; next invocation picks up on the next PM comment) OR emits the spec YAML, writes `specs/story-N.yaml` and updates `specs/_index.yaml`, commits + pushes a branch, opens a draft PR, applies `spec-ready` label.
58
-
59
- Re-run on every new PM comment in the issue (via a GitHub Actions workflow triggered by `issue_comment` + `issues` events).
60
-
61
- ### `slowcook init`
62
-
63
- Scaffold slowcook configuration in a consumer project. Writes `.brewing/*`, `.github/workflows/slowcook.yml`, and a `CODEOWNERS` section. Idempotent — re-running skips existing files unless `--force`.
64
-
65
- ```bash
66
- npx slowcook init [--owner <handle>] [--force] [--dry-run] [--cwd <path>]
67
- ```
68
-
69
- **Options:**
70
-
71
- | Flag | Default | Description |
72
- |---|---|---|
73
- | `--cwd <path>` | `.` | Target project directory |
74
- | `--owner <handle>` | detected from git remote | CODEOWNERS handle/team (e.g. `@your-handle`, `@acme/frontend`) |
75
- | `--force` | false | Overwrite existing slowcook files |
76
- | `--dry-run` | false | Print the plan without writing anything |
77
-
78
- **Stack detection (0.3):** reads `package.json`. Requires Vitest in `devDependencies`. If Playwright is present, it's noted as a warning and left out of `stack.json` until slowcook supports Playwright discovery.
79
-
80
- **CODEOWNERS handling:** uses `# --- slowcook:frozen-paths BEGIN/END ---` markers so re-running or adopting slowcook in a repo that already has a `CODEOWNERS` is safe.
81
-
82
- **Exit codes:**
83
-
84
- - `0` — success (or dry-run completed)
85
- - `2` — script error (no `package.json`, vitest not found, invalid JSON)
86
-
87
- ### `slowcook guard`
88
-
89
- Checks for frozen-path violations between two git refs. Intended for CI.
90
-
91
- ```bash
92
- npx slowcook guard --base origin/main --head HEAD
93
- ```
94
-
95
- **Options:**
96
-
97
- | Flag | Default | Description |
98
- |---|---|---|
99
- | `--base <ref>` | `origin/main` | Base git ref to compare from |
100
- | `--head <ref>` | `HEAD` | Head git ref to compare to |
101
- | `--override` | false | Report violations but exit 0 (audit-only) |
102
- | `--config <path>` | `.brewing/frozen-paths.json` | Config file location |
103
-
104
- **Exit codes:**
105
-
106
- - `0` — no violations (or `--override` was set and violations existed)
107
- - `1` — violations detected
108
- - `2` — script error (missing config, git failure)
109
-
110
- **Config file** — a JSON file the consumer project ships, typically at `.brewing/frozen-paths.json`:
111
-
112
- ```json
113
- {
114
- "directories": ["tests/", "tests-fixtures/"],
115
- "files": ["vitest.config.ts", "playwright.config.ts"],
116
- "partial": {
117
- "package.json": {
118
- "frozen_key_paths": ["scripts.test", "scripts.e2e"]
119
- }
120
- }
121
- }
122
- ```
123
-
124
- - `directories` — prefix match; anything under these paths is frozen.
125
- - `files` — exact path match.
126
- - `partial` — for files where only certain JSON keys are frozen (e.g., only `scripts.test*` in `package.json`).
127
-
128
- ### Use in GitHub Actions
129
-
130
- ```yaml
131
- # .github/workflows/frozen-paths-guard.yml
132
- name: frozen-paths-guard
133
- on:
134
- pull_request:
135
- types: [opened, synchronize, reopened, labeled, unlabeled]
136
-
137
- jobs:
138
- check:
139
- runs-on: ubuntu-latest
140
- steps:
141
- - uses: actions/checkout@v4
142
- with: { fetch-depth: 0 }
143
- - uses: actions/setup-node@v4
144
- with: { node-version: 20 }
145
- - name: Run guard
146
- env:
147
- HAS_OVERRIDE: ${{ contains(github.event.pull_request.labels.*.name, 'override-freeze') }}
148
- run: |
149
- ARGS="--base origin/${{ github.base_ref }} --head HEAD"
150
- if [ "$HAS_OVERRIDE" = "true" ]; then ARGS="$ARGS --override"; fi
151
- npx --yes @slowcook-ai/cli@latest guard $ARGS
152
13
  ```
153
14
 
154
- The guard emits `::error file=...::` annotations and writes to `$GITHUB_STEP_SUMMARY` when run in GitHub Actions.
155
-
156
- ### `slowcook manifest` (record / verify)
157
-
158
- Captures the set of discoverable tests so agents can't silently remove or exclude them. 0.2 supports Vitest; Playwright is coming later.
15
+ Or pin a specific version (recommended for consumers):
159
16
 
160
17
  ```bash
161
- # Record a snapshot of every test currently discoverable
162
- npx slowcook manifest record
163
-
164
- # Verify later that the recorded set still fully resolves
165
- npx slowcook manifest verify
18
+ npm i -D @slowcook-ai/cli@0.19.5
166
19
  ```
167
20
 
168
- **Options (both subcommands):**
169
-
170
- | Flag | Default | Description |
171
- |---|---|---|
172
- | `--stack-config <path>` | `.brewing/stack.json` | Consumer stack config |
173
- | `--manifest <path>` | `.brewing/manifests/all.json` (or `.brewing/manifests/story-<id>.json` if `--story`) | Where to write / read the manifest |
174
- | `--story <id>` | none | Tag manifest with a story id (enables per-story freezing) |
175
- | `--cwd <path>` | `.` | Working directory for discovery commands |
176
-
177
- **Config file** — `.brewing/stack.json` declares how to discover tests per suite:
178
-
179
- ```json
180
- {
181
- "language": "typescript",
182
- "test": {
183
- "backend": {
184
- "runner": "vitest",
185
- "run_command": "npx vitest run",
186
- "discover_command": "npx vitest list",
187
- "reporter_format": "vitest-list-lines"
188
- }
189
- }
190
- }
191
- ```
192
-
193
- **Exit codes:**
194
-
195
- - `record`: `0` manifest written, `2` script error (bad config, suite discovery failed)
196
- - `verify`: `0` manifest matches (new tests since record are informational), `1` recorded tests no longer discoverable, `2` script error
197
-
198
- **Use in GitHub Actions** — after the frozen-paths guard:
199
-
200
- ```yaml
201
- - name: Verify test manifest
202
- run: npx --yes @slowcook-ai/cli@latest manifest verify
203
- ```
204
-
205
- ## Coming in later versions
206
-
207
- See the [monorepo README](../../README.md) for the roadmap.
21
+ The `latest` tag points at the most recent stable cut. Stamp your pinned version in `.brewing/slowcook-cli-version` after `slowcook init`.
22
+
23
+ ## Start here
24
+
25
+ If you're an AI agent (Claude Code, Cursor, etc.) or a developer driving slowcook in a consumer repo, the canonical pipeline reference is **[AGENTS.md](https://github.com/aminazar/slowcook/blob/main/AGENTS.md)** at the repo root. It has the decision tree, the pipeline at a glance, per-command quick reference, and an empirical pitfalls list that saves real money + time on your first session.
26
+
27
+ This README covers install + the top-level command surface. AGENTS.md covers WHEN to reach for which command, the pipeline flow, and the failure modes you're likely to hit.
28
+
29
+ ## Command catalog
30
+
31
+ The pipeline is **refine → testgen → vibe → plate → recipe → brew → chef**. Each stage is an agent invocation that consumes the previous stage's output + commits its own PR.
32
+
33
+ The catalog below is **auto-generated from the cli's command manifest** (`packages/cli/src/commands.manifest.ts`). It is kept in sync with `slowcook help` output by `scripts/sync-readme-help.sh` + a CI gate. Adding a command in the manifest updates BOTH this catalog AND the `slowcook help` output in one shot.
34
+
35
+ Run `slowcook help <command>` or `slowcook <command> --help` for per-command details. All commands accept `--cwd <path>` to operate against a directory other than `.`.
36
+
37
+ <!-- COMMANDS BLOCK BEGIN — auto-generated by scripts/sync-readme-help.sh, do not edit by hand -->
38
+ ### Pipeline (agent-driven)
39
+
40
+ - **`refine`** — Drive a GitHub issue through a clarifying-question loop until a frozen spec PR is emitted.
41
+ ```
42
+ slowcook refine --issue <number> [--cwd <path>] [--owner <login>] [--repo <name>]
43
+ ```
44
+ - **`recipe`** — Generate Vitest tests from merged specs — the test contract brew follows.
45
+ ```
46
+ slowcook recipe [--spec <id>] [--all] [--cwd <path>]
47
+ ```
48
+ - **`vibe`** Design-first mockup generator. Emits a runnable React mockup PR from spec + brownfield context.
49
+ ```
50
+ slowcook vibe --spec <id> [--cwd <path>] [--owner <login>] [--repo <name>] [--dry-run]
51
+ ```
52
+ - **`plate`** — Mockup amendment agent. Triggered by /plate PR comments on slowcook-mockup PRs; force-pushes amendments.
53
+ ```
54
+ slowcook plate --pr <number> [--cwd <path>] [--owner <login>] [--repo <name>] [--review-comment-id <id>]
55
+ ```
56
+ - **`brew`** — Ratcheted implementation loop: iterate src/ until all of one story's tests are green.
57
+ ```
58
+ slowcook brew --story <id> [--budget-usd <n>] [--max-iterations <n>] [--model <id>]
59
+ ```
60
+ - **`chef`** PR-CI failure classifier — dispatches retry / escalate based on check status.
61
+ ```
62
+ slowcook chef --pr <number> [--cwd <path>]
63
+ ```
64
+ - **`chef-drift`** — Surgical drift-fixer. Triggered by mock-isolation / recon / brew / navigator halts.
65
+ ```
66
+ slowcook chef-drift [--pr <number>] [--story <id>] [--cwd <path>]
67
+ ```
68
+ - **`chef-orchestrate`** — Pipeline orchestrator. Decides redispatch_brew / rebase / escalate / close on a halted PR.
69
+ ```
70
+ slowcook chef-orchestrate --pr <number> --story <id> [--cwd <path>]
71
+ ```
72
+ - **`brand`** — Design-system foundation agent. Emits mock/src/design-system/{tokens.ts, css.ts} from a brand brief.
73
+ ```
74
+ slowcook brand [--brief <prose>] [--refresh] [--dry-run] [--model <id>] [--cwd <path>]
75
+ ```
76
+
77
+ ### Checks + guards
78
+
79
+ - **`guard`** — Check for frozen-path violations between two git refs. CI step.
80
+ ```
81
+ slowcook guard --base <ref> --head <ref> [--override] [--config <path>]
82
+ ```
83
+ - **`manifest`** — Record or verify the set of discoverable tests so agents can't silently exclude them.
84
+ ```
85
+ slowcook manifest (record|verify) [--stack-config <path>] [--manifest <path>] [--story <id>]
86
+ ```
87
+ - **`check`** — Static structural checks. `check spec` re-runs spec validators on PR amendments; `check mock-isolation` enforces the mock-vs-prod boundary.
88
+ ```
89
+ slowcook check (mock-isolation|spec) [file...] [--cwd <path>]
90
+ ```
91
+ - **`recon`** — Pre-brew structural divergence check. Surfaces missing components / testid gaps / brownfield rename hazards.
92
+ ```
93
+ slowcook recon [--story <id>] [--cwd <path>] [--reuse-scan] [--stub-scan] [--exclude <glob>]
94
+ ```
95
+ - **`map`** — Generate / check the repo-wide code map (APIs, pages, components, helpers, types).
96
+ ```
97
+ slowcook map (generate|check) [--cwd <path>] [--out <path>] [--md <path>]
98
+ ```
99
+ - **`fixtures`** — Sanity-check the test-fixture set against the spec.
100
+ ```
101
+ slowcook fixtures check [--max-age-days <n>] [--story <id>]
102
+ ```
103
+ - **`eval`** — Run the agent eval suite against committed fixtures.
104
+ ```
105
+ slowcook eval (--all | --fixture <id> | --list) [--fixtures-dir <path>]
106
+ ```
107
+
108
+ ### Setup + lifecycle plumbing
109
+
110
+ - **`init`** — Scaffold .brewing/, .github/workflows/slowcook-*, and CODEOWNERS in a consumer project.
111
+ ```
112
+ slowcook init [--owner <handle>] [--force] [--dry-run] [--cwd <path>]
113
+ ```
114
+ - **`refresh-knowledge`** — Rebuild .brewing/repo-knowledge/{auto,curated}/ — code-shape digests + git-history mining.
115
+ ```
116
+ slowcook refresh-knowledge [--cwd <path>] [--auto-only] [--curated-only]
117
+ ```
118
+ - **`upsert-agent-docs`** — Write the managed slowcook block in the consumer's AGENTS.md (or create one).
119
+ ```
120
+ slowcook upsert-agent-docs [--cwd <path>] [--dry-run]
121
+ ```
122
+ - **`on-spec-merged`** — Transition source-issue labels + post audit-trail comment after a spec PR merges.
123
+ ```
124
+ slowcook on-spec-merged --pr <number> [--cwd <path>]
125
+ ```
126
+ - **`on-tests-merged`** — Post audit-trail comment after a tests PR merges.
127
+ ```
128
+ slowcook on-tests-merged --pr <number> [--cwd <path>]
129
+ ```
130
+ - **`on-brew-merged`** — Post final "shipped" audit-trail comment after a brew PR merges. Warns when merge target isn't main.
131
+ ```
132
+ slowcook on-brew-merged --pr <number> [--cwd <path>]
133
+ ```
134
+ - **`on-mockup-approved`** — Hook fired when a mockup PR gets the slowcook-mockup-approved label.
135
+ ```
136
+ slowcook on-mockup-approved --pr <number> [--cwd <path>]
137
+ ```
138
+ - **`catchup`** — Detect + run pipeline steps that should have triggered but didn't.
139
+ ```
140
+ slowcook catchup [--dry-run] [--cwd <path>]
141
+ ```
142
+ - **`budget`** — Manage the project monthly budget for the fuel gauge.
143
+ ```
144
+ slowcook budget [show|set|rm] [--monthly <usd>] [--start-day <1-31>] [--story <usd>] [--cwd <path>]
145
+ ```
146
+ - **`docs`** — Docs generation helper.
147
+ ```
148
+ slowcook docs [--cwd <path>]
149
+ ```
150
+
151
+ ### Knowledge + accounting
152
+
153
+ - **`knowledge`** — Add a curated entry to .brewing/repo-knowledge/curated/.
154
+ ```
155
+ slowcook knowledge add <topic> "<entry>" [--evidence-pr <n>] [--evidence-file <path>]
156
+ ```
157
+ - **`cost`** — Stamp a cost marker on a story for non-Actions agents (Claude Code, Cursor, manual runs).
158
+ ```
159
+ slowcook cost log --story <id> --usd <n> --agent <name> [--apply-to-spec]
160
+ ```
161
+ - **`stories`** [alpha] — Per-story pipeline-stage table (refine / testgen / vibe / brew / chef) from specs/_index.yaml + GitHub state.
162
+ ```
163
+ slowcook stories status [--cwd <path>] [--owner <login>] [--repo <name>] [--json]
164
+ ```
165
+ - **`extract`** — Brownfield extracts (schema.mmd, tokens.md) for refine/investigate context. Fast, no node_modules.
166
+ ```
167
+ slowcook extract [--schema] [--tokens] [--cwd <path>]
168
+ ```
169
+
170
+ ### Ops (preview, dev-env, etc.)
171
+
172
+ - **`serve`** [alpha] — Multi-mode dev / mock / staging on a shared box. `dev` bind-mounts source; `mock` runs vite-dev (auto-skip if no scripts.dev); `staging` is built-image with named-scenario seed reset.
173
+ ```
174
+ slowcook serve <profile> (up|sync|down|logs|reset) [--branch <name>] [--scenario <name>] [--service <name>] [--follow] [--prune]
175
+ ```
176
+ - **`dev-env`** [DEPRECATED] — Legacy alias for `slowcook serve dev`. Bind-mount source push + per-story preview switch. Kept for backward compat.
177
+ ```
178
+ slowcook dev-env (push|switch|up|sync|reset) [--story <id>] [--branch <name>]
179
+ ```
180
+ - **`preview`** — SSH preview deploy. `deploy --pr N`: build + run the mock app on the consumer's box; post URL to PR.
181
+ ```
182
+ slowcook preview (deploy|teardown) --pr <number> [--ssh-key <path>] [--cwd <path>]
183
+ ```
184
+ - **`run-mock`** — One-command mock launch + auto-pull. Polls origin + git pull --ff-only on plate amendments.
185
+ ```
186
+ slowcook run-mock <story-id> [--no-poll] [--poll-seconds <n>] [--branch <ref>]
187
+ ```
188
+ - **`dispatch`** — Trigger a slowcook GitHub Actions workflow remotely (brew / testgen / refine).
189
+ ```
190
+ slowcook dispatch <step> [inputs...]
191
+ ```
192
+ - **`port`** — Deterministic mock/ → src/ copy. Pre-brew CI step; applies the useScenarioFixture → useDataDomain rewrite.
193
+ ```
194
+ slowcook port --story <id> [--cwd <path>] [--dry-run] [--force]
195
+ ```
196
+
197
+ ### Experimental
198
+
199
+ - **`investigate`** [alpha] — Diagnose a bug from a GitHub issue and emit a bug-profile.
200
+ ```
201
+ slowcook investigate --issue <number> [--cwd <path>]
202
+ ```
203
+ - **`sift`** [alpha] — Narrow red→green ratchet for a bug fix; bounded by bug-profile fix_scope.
204
+ ```
205
+ slowcook sift --bug-profile <path> [--cwd <path>]
206
+ ```
207
+ - **`refactor`** — Rank refactor proposals from .brewing/refactor/proposals.json by benefit/cost.
208
+ ```
209
+ slowcook refactor [--scope <name>] [--cwd <path>]
210
+ ```
211
+ - **`garnish`** — Local commit-gate for human tweaks on agent work. Runs tests, commits with learning-signal trailers.
212
+ ```
213
+ slowcook garnish [--cwd <path>]
214
+ ```
215
+ <!-- COMMANDS BLOCK END -->
216
+
217
+ ## Required environment
218
+
219
+ Most pipeline commands invoke the Anthropic API and act on GitHub:
220
+
221
+ - `ANTHROPIC_API_KEY` — LLM calls (refine, testgen, vibe, plate, recipe, brew, chef)
222
+ - `GITHUB_TOKEN` — `contents: write`, `issues: write`, `pull-requests: write` for PR + comment work
223
+
224
+ `slowcook init`, `guard`, `manifest`, and `check` run locally without API/network access.
225
+
226
+ ## What ships in this package
227
+
228
+ - `slowcook` binary (entry point: `dist/cli.js`)
229
+ - Pipeline commands listed above
230
+ - Programmatic API exports for the validators (`validateEntityFieldReferences`, `validateComponentReuseShape`, `validateRouteCollisions`, `validatePlateDtoColumns`) — useful if you want to wire the lint chain into a custom CI
231
+
232
+ The companion packages (`@slowcook-ai/core`, `@slowcook-ai/llm-anthropic`, `@slowcook-ai/forge-github`, `@slowcook-ai/stack-ts`, `@slowcook-ai/mock-runtime`) install transitively as workspace deps. The cli is the only one you `npm i` directly.
208
233
 
209
234
  ## License
210
235
 
package/dist/cli.js CHANGED
@@ -31,11 +31,14 @@ import { fixtures } from "./commands/fixtures/index.js";
31
31
  import { refreshKnowledge } from "./commands/refresh-knowledge.js";
32
32
  import { upsertAgentDocs } from "./commands/upsert-agent-docs.js";
33
33
  import { knowledgeAdd } from "./commands/knowledge-add.js";
34
+ import { stories } from "./commands/stories/index.js";
34
35
  import { costLog } from "./commands/cost-log.js";
35
36
  import { evalCmd } from "./commands/eval/index.js";
36
37
  import { devEnv } from "./commands/dev-env/index.js";
38
+ import { serve } from "./commands/serve/index.js";
37
39
  import { budget } from "./commands/budget/index.js";
38
40
  import { brand } from "./commands/brand/index.js";
41
+ import { renderHelp, renderCommandHelp, renderReadmeBlock } from "./help.js";
39
42
  // Read VERSION from package.json at runtime so the CLI's self-reported
40
43
  // version, the spec's `refined_by` field, and the init template's workflow
41
44
  // pin all stay in lockstep with the package version. Prevents the silent
@@ -52,75 +55,11 @@ const VERSION = (() => {
52
55
  return "0.0.0-unknown";
53
56
  }
54
57
  })();
55
- const USAGE = `
56
- slowcook TDD-first agentic development harness
57
-
58
- Usage:
59
- slowcook init [--owner <handle>] [--force] [--dry-run] [--cwd <path>]
60
- slowcook guard --base <ref> --head <ref> [--override] [--config <path>]
61
- slowcook manifest record [--stack-config <path>] [--manifest <path>] [--story <id>]
62
- slowcook manifest verify [--stack-config <path>] [--manifest <path>] [--story <id>]
63
- slowcook refine --issue <number> [--cwd <path>] [--owner <login>] [--repo <name>]
64
- slowcook on-spec-merged --pr <number> [--cwd <path>]
65
- slowcook on-tests-merged --pr <number> [--cwd <path>]
66
- slowcook on-brew-merged --pr <number> [--cwd <path>]
67
- slowcook recipe [--spec <id>] [--all] [--cwd <path>] (testgen — alias kept for 0.13.x)
68
- slowcook catchup [--dry-run] [--cwd <path>]
69
- slowcook brew --story <id> [--budget-usd <n>] [--max-iterations <n>] [--model <id>]
70
- slowcook map (generate|check) [--cwd <path>] [--out <path>] [--md <path>]
71
- slowcook extract [--schema] [--tokens] [--cwd <path>]
72
- slowcook vibe --spec <id> [--cwd <path>] [--owner <login>] [--repo <name>] [--dry-run]
73
- slowcook plate --pr <number> [--cwd <path>] [--owner <login>] [--repo <name>] [--review-comment-id <id>]
74
- slowcook port --story <id> [--cwd <path>] [--dry-run] [--force]
75
- slowcook preview (deploy|teardown) --pr <number> [--ssh-key <path>] [--cwd <path>]
76
- slowcook check mock-isolation [--cwd <path>]
77
- slowcook check spec [file...] [--cwd <path>]
78
- slowcook run-mock <story-id> [--no-poll] [--poll-seconds <n>] [--branch <ref>]
79
- slowcook dispatch <step> [inputs...]
80
- slowcook fixtures check [--max-age-days <n>] [--story <id>]
81
- slowcook eval (--all | --fixture <id> | --list) [--fixtures-dir <path>]
82
- slowcook dev-env (push|switch|up|sync|reset) [--story <id>] [--branch <name>]
83
- slowcook budget [show|set|rm] [--monthly <usd>] [--start-day <1-31>] [--story <usd>] [--cwd <path>]
84
- slowcook brand [--brief <prose>] [--refresh] [--dry-run] [--model <id>] [--cwd <path>]
85
- slowcook version
86
- slowcook help
87
-
88
- Commands available in ${VERSION}:
89
- init Scaffold slowcook configuration in a consumer project.
90
- guard Check for frozen-path violations between two git refs.
91
- manifest Record or verify the set of discoverable tests.
92
- refine Drive a GitHub issue toward a frozen spec (refinement agent).
93
- on-spec-merged Transition source-issue labels + post audit-trail comment after a spec PR merges.
94
- on-tests-merged Post audit-trail comment after a tests PR merges.
95
- on-brew-merged Post final "shipped" audit-trail comment after a brew PR merges.
96
- recipe Generate Vitest tests from merged specs (a "recipe" — the test contract brew follows). Aliases: testgen.
97
- investigate (alpha.2a, scaffold) Diagnose a bug from a GitHub issue and emit a bug-profile.
98
- sift (alpha.4) Narrow red→green ratchet for a bug fix; bounded by bug-profile fix_scope.
99
- chef (alpha.5c) PR-CI failure classifier — dispatches retry / escalate based on check status.
100
- chef-drift (0.18.0-α.9 L1) Surgical drift-fixer. Triggered by mock-isolation / recon / brew / navigator halts.
101
- chef-orchestrate (0.19.0-α.2 L3) Pipeline orchestrator. Decides redispatch_brew / rebase / escalate / close on a halted PR.
102
- refactor (0.19.0-α.7) Rank refactor proposals by benefit/cost. Reads .brewing/refactor/proposals.json.
103
- garnish (0.19.0-α.15) Local commit-gate for human tweaks on agent work. Runs tests, commits with learning-signal trailers.
104
- catchup Detect + run pipeline steps that should have triggered but didn't.
105
- brew Ratcheted implementation loop: flip red tests to green for one story.
106
- map Generate / check the repo-wide code map (APIs, pages, components, helpers, types).
107
- extract Brownfield extracts (schema.mmd, tokens.md) for refine/investigate context. Fast, no node_modules.
108
- vibe (0.15-α.1) Design-first mockup generator. Reads spec + brownfield + code-map; emits runnable React mockup to slowcook/mockup/story-N PR.
109
- plate (0.15-α.3) Mockup amendment agent. Triggered by /plate PR comments on slowcook-mockup PRs; force-pushes amendments.
110
- port (0.16-α.8) Deterministic mock/ → src/ copy. Walks mock/src/, applies useScenarioFixture → useDataDomain rewrite, prepends provenance header. Pre-brew CI step.
111
- preview (0.16-α.5) SSH preview deploy. \`deploy --pr N\`: build + run the mock app on the consumer's box; post URL to PR. \`teardown --pr N\`: stop + remove.
112
- check (0.16-α.13) Static structural checks. \`check mock-isolation\` verifies every import in mock/ stays inside mock/ (catches vibe-prompt slippage that breaks the mock-vs-prod separation rule). \`check spec\` (0.19.4-α) re-runs spec content validators on a PR's spec files — closes the amendment-bypass gap where refine's in-process lint never re-fires.
113
- recon (0.17.6+) Pre-brew structural divergence check. Compares story tests against mock + src/, surfaces missing components / testid gaps / brownfield rename hazards. Runs in slowcook-brew-auto.yml before brew dispatch.
114
- run-mock (0.16-α.17) One-command mock launch + auto-pull. \`run-mock <story>\`: checkout mockup branch, npm install in mock/, run next dev with overlay env vars, poll origin every 15s + git pull --ff-only on plate amendments.
115
- dispatch Trigger a slowcook GitHub Actions workflow remotely (brew / testgen / refine).
116
- budget (0.19.0-α.35) Manage the project monthly budget for the fuel gauge. \`budget set --monthly 50\` writes .brewing/budget.yaml; no args shows config + month-to-date spend.
117
- brand (0.19.0-α.40, sc#82 Phase 4) Design-system foundation agent. Reads a brand brief (\`.brewing/brand.yaml\` or \`--brief\`) and emits mock/src/design-system/{tokens.ts, css.ts}. Runs once per project; \`--refresh\` overwrites.
118
-
119
- Coming in later versions:
120
- review, dashboard
121
-
122
- Docs: https://github.com/aminazar/slowcook
123
- `;
58
+ // Help text is rendered from `commands.manifest.ts` via `./help.ts`.
59
+ // The previous monolithic USAGE template drifted from the actual command
60
+ // surface (refresh-knowledge, upsert-agent-docs, knowledge, cost, etc.
61
+ // were callable but unlisted). The manifest fixes that — one entry per
62
+ // callable command, validated by a CI gate against this switch statement.
124
63
  async function main() {
125
64
  const args = process.argv.slice(2);
126
65
  const command = args[0];
@@ -150,9 +89,19 @@ async function main() {
150
89
  await knowledgeAdd(args.slice(2));
151
90
  return;
152
91
  }
92
+ if (sub === "--help" || sub === "-h" || sub === "help") {
93
+ console.log(renderCommandHelp("knowledge"));
94
+ return;
95
+ }
153
96
  console.error(`unknown knowledge subcommand: ${sub ?? "(none)"}. try \`slowcook knowledge add --help\``);
154
97
  process.exit(64);
155
98
  }
99
+ case "stories": {
100
+ // `slowcook stories status [...]` — 0.19.5-α (sc#146 #6)
101
+ // Per-story pipeline-stage table. See packages/cli/src/commands/stories/.
102
+ await stories(args.slice(1));
103
+ return;
104
+ }
156
105
  case "cost": {
157
106
  // `slowcook cost log --story <id> --usd <n> --agent <name> [...]`
158
107
  // 0.19.x+ — explicit logging primitive for non-Actions agents
@@ -164,6 +113,10 @@ async function main() {
164
113
  await costLog(args.slice(2));
165
114
  return;
166
115
  }
116
+ if (sub === "--help" || sub === "-h" || sub === "help") {
117
+ console.log(renderCommandHelp("cost"));
118
+ return;
119
+ }
167
120
  console.error(`unknown cost subcommand: ${sub ?? "(none)"}. try \`slowcook cost log --help\``);
168
121
  process.exit(64);
169
122
  }
@@ -353,9 +306,18 @@ async function main() {
353
306
  case "dev-env":
354
307
  // 0.19.0-α.21 (dev-env Phase 2) — long-lived preview env on
355
308
  // a shared branch. push/switch implemented; up/sync/reset stub
356
- // print canonical shell-outs for now.
309
+ // print canonical shell-outs for now. Still callable for
310
+ // backward compat; `slowcook serve dev <verb>` is the 0.20+
311
+ // recommended path (design #5, Phase 1).
357
312
  await devEnv(args.slice(1));
358
313
  return;
314
+ case "serve":
315
+ // 0.20 design #5 Phase 1. `slowcook serve <profile> <verb>`.
316
+ // Reads .brewing/serve.yaml or legacy .brewing/dev-env.yaml.
317
+ // Profile `dev` implemented end-to-end; `mock` / `staging`
318
+ // stubs print Phase 2/3 notices.
319
+ await serve(args.slice(1));
320
+ return;
359
321
  case "budget":
360
322
  // 0.19.0-α.35 (sc#66 follow-up) — manage .brewing/budget.yaml.
361
323
  // No args = show current config + month-to-date spend. `set
@@ -378,11 +340,29 @@ async function main() {
378
340
  case undefined:
379
341
  case "help":
380
342
  case "--help":
381
- case "-h":
382
- console.log(USAGE);
343
+ case "-h": {
344
+ const rest = args.slice(1);
345
+ // `slowcook help --markdown-readme` — emits the markdown catalog
346
+ // for `scripts/sync-readme-help.sh` to splice into the README.
347
+ if (rest[0] === "--markdown-readme") {
348
+ process.stdout.write(renderReadmeBlock());
349
+ return;
350
+ }
351
+ // `slowcook help <cmd>` — per-command usage.
352
+ if (rest[0] && !rest[0].startsWith("-")) {
353
+ const block = renderCommandHelp(rest[0]);
354
+ if (block) {
355
+ console.log(block);
356
+ return;
357
+ }
358
+ console.error(`Unknown command: ${rest[0]}\n${renderHelp(VERSION)}`);
359
+ process.exit(64);
360
+ }
361
+ console.log(renderHelp(VERSION));
383
362
  return;
363
+ }
384
364
  default:
385
- console.error(`Unknown command: ${command}\n${USAGE}`);
365
+ console.error(`Unknown command: ${command}\n${renderHelp(VERSION)}`);
386
366
  process.exit(64); // EX_USAGE
387
367
  }
388
368
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}