@fernado03/zoo-flow 0.12.0 → 0.12.2
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.
- package/docs/architecture.md +380 -0
- package/docs/bloat-control.md +49 -0
- package/docs/command-design.md +38 -0
- package/docs/command-flow.md +133 -0
- package/docs/comparison.md +86 -0
- package/docs/context-packs.md +35 -0
- package/docs/dogfood/01-small-library.md +28 -0
- package/docs/dogfood/02-web-app.md +29 -0
- package/docs/dogfood/03-mixed-monorepo.md +29 -0
- package/docs/mode-rules.md +86 -0
- package/docs/npm-publishing.md +79 -0
- package/docs/out-of-scope/mainstream-issue-trackers-only.md +25 -0
- package/docs/out-of-scope/question-limits.md +18 -0
- package/docs/out-of-scope/setup-skill-verify-mode.md +15 -0
- package/docs/overview.md +61 -0
- package/docs/philosophy.md +73 -0
- package/docs/quality-scorecard.md +23 -0
- package/docs/skill-maintenance.md +32 -0
- package/docs/skills-index.md +64 -0
- package/docs/team-mode.md +46 -0
- package/docs/token-budget.md +22 -0
- package/docs/troubleshooting.md +288 -0
- package/examples/demo-transcripts/01-small-tweak.md +37 -0
- package/examples/demo-transcripts/02-unknown-bug-fix.md +37 -0
- package/examples/demo-transcripts/03-new-feature.md +37 -0
- package/examples/demo-transcripts/04-refactor.md +37 -0
- package/examples/demo-transcripts/05-review-and-verify.md +37 -0
- package/examples/feature-flow.md +117 -0
- package/examples/fix-flow.md +139 -0
- package/package.json +5 -2
- package/scripts/check-package-links.js +1 -1
- package/scripts/eval-routing.js +1 -1
- package/scripts/score-quality.js +3 -3
- package/scripts/test-doctor.js +5 -5
- package/templates/claude-code/.claude/skills/engineering/diagnose/SKILL.md +2 -2
- package/templates/claude-code/.claude/skills/engineering/explore/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/feature/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/fix/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/grill-with-docs/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/improve-codebase-architecture/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/refactor/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/review/SKILL.md +6 -6
- package/templates/claude-code/.claude/skills/engineering/scaffold-context/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/setup-matt-pocock-skills/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/tdd/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/to-issues/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/to-prd/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/triage/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/tweak/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/update-docs/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/verify/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/engineering/zoom-out/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/productivity/caveman/SKILL.md +1 -1
- package/templates/claude-code/.zoo-flow/CONTEXT.md +1 -1
- package/templates/claude-code/.zoo-flow/START_HERE.md +5 -5
- package/templates/claude-code/.zoo-flow/evals/no-regression-checklist.md +2 -2
- package/templates/claude-code/.zoo-flow/evals/routing-cases.md +4 -4
- package/templates/claude-code/CLAUDE.md +47 -56
- package/templates/full/.roo/commands/zoo-caveman.md +1 -1
- package/templates/full/.roo/commands/zoo-explore.md +3 -3
- package/templates/full/.roo/commands/zoo-feature.md +1 -1
- package/templates/full/.roo/commands/zoo-fix.md +2 -2
- package/templates/full/.roo/commands/zoo-refactor.md +2 -2
- package/templates/full/.roo/commands/zoo-update-docs.md +4 -4
- package/templates/full/.roo/rules/03-manual-reply-protocol.md +1 -1
- package/templates/full/.roo/rules/04-context-economy.md +1 -1
- package/templates/full/.roo/rules-code-tweaker/01-completion.md +3 -3
- package/templates/full/.roo/rules-custom-orchestrator/00-routing.md +1 -1
- package/templates/full/.roo/rules-custom-orchestrator/01-delegation-message.md +14 -14
- package/templates/full/.roo/rules-system-architect/01-feature-prototype.md +2 -2
- package/templates/full/.roo/rules-system-architect/02-completion.md +3 -3
- package/templates/full/.roo/skills/docs/adr/0001-explicit-setup-pointer-only-for-hard-dependencies.md +2 -2
- package/templates/full/.roo/skills/engineering/README.md +1 -1
- package/templates/full/.roo/skills/engineering/grill-with-docs/CONTEXT-FORMAT.md +1 -1
- package/templates/full/.roo/skills/engineering/scaffold-context/templates/writing-patterns.md +1 -1
- package/templates/full/.roo/skills/engineering/setup-matt-pocock-skills/domain.md +1 -1
- package/templates/full/.zoo-flow/CONTEXT.md +1 -1
- package/templates/full/.zoo-flow/START_HERE.md +1 -1
- package/templates/full/.zoo-flow/evals/no-regression-checklist.md +5 -5
- package/templates/full/.zoo-flow/evals/routing-cases.md +32 -32
- package/tests/fixtures/doctor/helper-not-permitted/fixture.json +1 -1
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# Example: `/fix` flow
|
|
2
|
+
|
|
3
|
+
A worked example of the multi-phase `/fix` chain: orchestrator delegates
|
|
4
|
+
to the architect, architect diagnoses, architect switches to the tweaker
|
|
5
|
+
to implement, tweaker switches back, architect runs the post-mortem,
|
|
6
|
+
tweaker prepares the commit. The whole flow has explicit HITL stops.
|
|
7
|
+
|
|
8
|
+
## Setup
|
|
9
|
+
|
|
10
|
+
- Active mode: `🪃 Custom Orchestrator`.
|
|
11
|
+
- Workspace has a real bug to fix. For this example, assume:
|
|
12
|
+
|
|
13
|
+
> "The login button does nothing on the second click. First click
|
|
14
|
+
> works."
|
|
15
|
+
|
|
16
|
+
## Phase 1 — orchestrator routes
|
|
17
|
+
|
|
18
|
+
Type:
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
/fix The login button does nothing on the second click. First click works.
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
**Expected**
|
|
25
|
+
|
|
26
|
+
Orchestrator looks up the routing matrix and delegates with `new_task`
|
|
27
|
+
targeting `system-architect`. The delegated message includes the
|
|
28
|
+
slash form, user context, proceed policy, command-protocol pointer,
|
|
29
|
+
skills location, and the completion rule.
|
|
30
|
+
|
|
31
|
+
## Phase 2 — architect diagnoses
|
|
32
|
+
|
|
33
|
+
The new task window opens in `🏗️ System Architect`. The architect:
|
|
34
|
+
|
|
35
|
+
1. Loads `/fix` per the command protocol.
|
|
36
|
+
2. Runs the `diagnose` skill, phases 1–3.
|
|
37
|
+
3. Produces a short list of hypotheses.
|
|
38
|
+
4. **Halts** and asks you to pick one.
|
|
39
|
+
|
|
40
|
+
**Expected message (paraphrased)**
|
|
41
|
+
|
|
42
|
+
> Hypotheses:
|
|
43
|
+
> 1. Click handler is wired once and never re-bound after a state change.
|
|
44
|
+
> 2. The button enters a disabled state on first click and never resets.
|
|
45
|
+
> 3. A queued network request is canceling the second click's handler.
|
|
46
|
+
>
|
|
47
|
+
> Which would you like to instrument? (1 / 2 / 3)
|
|
48
|
+
|
|
49
|
+
You answer:
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
2
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Phase 3 — architect instruments
|
|
56
|
+
|
|
57
|
+
The architect runs phase 4 of the `diagnose` skill on hypothesis 2.
|
|
58
|
+
This phase may involve reading state-management code, adding a
|
|
59
|
+
console-log or instrumentation suggestion (Markdown only — the architect
|
|
60
|
+
cannot edit source), and producing a confirmed root cause.
|
|
61
|
+
|
|
62
|
+
**Expected**
|
|
63
|
+
|
|
64
|
+
> Root cause confirmed: `LoginButton` sets `disabled` on the first
|
|
65
|
+
> click and the `onSuccess` handler does not reset it. The second
|
|
66
|
+
> click is being absorbed by the disabled state.
|
|
67
|
+
|
|
68
|
+
The architect summarizes the proposed fix and prepares to hand off.
|
|
69
|
+
|
|
70
|
+
## Phase 4 — architect switches to tweaker
|
|
71
|
+
|
|
72
|
+
The architect calls `switch_mode` to `code-tweaker` **inside the same
|
|
73
|
+
task window** with a summary of:
|
|
74
|
+
|
|
75
|
+
- The root cause.
|
|
76
|
+
- The proposed fix (`onSuccess` resets `disabled`).
|
|
77
|
+
- The files involved.
|
|
78
|
+
- The tests to add or extend.
|
|
79
|
+
|
|
80
|
+
The tweaker takes over without losing context.
|
|
81
|
+
|
|
82
|
+
## Phase 5 — tweaker implements
|
|
83
|
+
|
|
84
|
+
The tweaker:
|
|
85
|
+
|
|
86
|
+
1. Edits the `LoginButton` component to reset `disabled` on success
|
|
87
|
+
and on error.
|
|
88
|
+
2. Adds or extends tests covering the second-click case.
|
|
89
|
+
3. Runs the test suite.
|
|
90
|
+
4. Reports back.
|
|
91
|
+
|
|
92
|
+
**HITL stop**: the tweaker does not commit. Per the git rule, it waits
|
|
93
|
+
for your approval.
|
|
94
|
+
|
|
95
|
+
## Phase 6 — back to architect for post-mortem
|
|
96
|
+
|
|
97
|
+
The tweaker calls `switch_mode` back to `system-architect`. The
|
|
98
|
+
architect runs phase 6 of `diagnose` (post-mortem):
|
|
99
|
+
|
|
100
|
+
- What was the original assumption that masked the bug?
|
|
101
|
+
- Is this an isolated mistake or a pattern?
|
|
102
|
+
- If a pattern, would `/refactor` help?
|
|
103
|
+
|
|
104
|
+
The architect produces a short post-mortem note in `docs/` or
|
|
105
|
+
`.scratch/` (Markdown only) and either drops the matter there or
|
|
106
|
+
suggests `/refactor`.
|
|
107
|
+
|
|
108
|
+
## Phase 7 — tweaker prepares the commit
|
|
109
|
+
|
|
110
|
+
The architect switches back to the tweaker. The tweaker suggests
|
|
111
|
+
`/commit-and-document`. **The orchestrator does not auto-launch it.**
|
|
112
|
+
That command runs only when you type it.
|
|
113
|
+
|
|
114
|
+
## Phase 8 — return to orchestrator
|
|
115
|
+
|
|
116
|
+
When the chain is complete (or blocked), the active mode calls
|
|
117
|
+
`attempt_completion`. The orchestrator summarizes for you and halts.
|
|
118
|
+
|
|
119
|
+
## Pass criteria
|
|
120
|
+
|
|
121
|
+
- [ ] Orchestrator delegated to `system-architect`, not the tweaker.
|
|
122
|
+
- [ ] Architect halted after phase 3 hypotheses, did not instrument
|
|
123
|
+
until you picked one.
|
|
124
|
+
- [ ] Architect did not edit source code at any point.
|
|
125
|
+
- [ ] Architect used `switch_mode` (same window) to hand off, not
|
|
126
|
+
`new_task`.
|
|
127
|
+
- [ ] Tweaker did not run `git commit` or `git push` without your
|
|
128
|
+
explicit approval.
|
|
129
|
+
- [ ] After return, orchestrator halted instead of auto-launching
|
|
130
|
+
`/commit-and-document`.
|
|
131
|
+
|
|
132
|
+
## Common slips
|
|
133
|
+
|
|
134
|
+
- Architect tries to edit source: see
|
|
135
|
+
[`docs/troubleshooting.md`](../docs/troubleshooting.md#architect-trying-to-edit-source).
|
|
136
|
+
- Tweaker commits without approval: tighten the git rule in the
|
|
137
|
+
tweaker's `customInstructions`.
|
|
138
|
+
- Orchestrator launches `/commit-and-document` automatically: see
|
|
139
|
+
[`docs/troubleshooting.md`](../docs/troubleshooting.md#slash-command-leakage-from-subtask-summaries).
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fernado03/zoo-flow",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.2",
|
|
4
4
|
"description": "Structured workflow templates for AI coding assistants",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -10,7 +10,10 @@
|
|
|
10
10
|
"bin/",
|
|
11
11
|
"templates/",
|
|
12
12
|
"scripts/",
|
|
13
|
-
"tests/"
|
|
13
|
+
"tests/",
|
|
14
|
+
"docs/",
|
|
15
|
+
"examples/",
|
|
16
|
+
"LICENSE"
|
|
14
17
|
],
|
|
15
18
|
"keywords": [
|
|
16
19
|
"ai",
|
|
@@ -12,7 +12,7 @@ const packageJsonPath = path.join(packageRoot, "package.json");
|
|
|
12
12
|
|
|
13
13
|
const failures = [];
|
|
14
14
|
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf8"));
|
|
15
|
-
const files = Array.isArray(packageJson.files) ? packageJson.files : [];
|
|
15
|
+
const files = Array.isArray(packageJson.files) ? packageJson.files.map((f) => f.replace(/\/$/, "")) : [];
|
|
16
16
|
const forbidden = [".git", "node_modules", ".scratch", ".zoo-flow-backup", "*.tgz"];
|
|
17
17
|
|
|
18
18
|
for (const entry of files) {
|
package/scripts/eval-routing.js
CHANGED
|
@@ -105,7 +105,7 @@ if (!fs.existsSync(casesPath)) {
|
|
|
105
105
|
fail(lineNumber, "expected_command must start with /");
|
|
106
106
|
} else {
|
|
107
107
|
const commandName = record.expected_command.slice(1);
|
|
108
|
-
const commandPath = path.join(templateRoot, ".roo", "commands",
|
|
108
|
+
const commandPath = path.join(templateRoot, ".roo", "commands", `zoo-${commandName}.md`);
|
|
109
109
|
if (!fs.existsSync(commandPath)) {
|
|
110
110
|
fail(lineNumber, `missing command file for ${record.expected_command}`);
|
|
111
111
|
} else {
|
package/scripts/score-quality.js
CHANGED
|
@@ -37,7 +37,7 @@ function check(condition, description, category) {
|
|
|
37
37
|
const files = fs.readdirSync(commandsDir).filter((f) => f.endsWith(".md"));
|
|
38
38
|
for (const file of files) {
|
|
39
39
|
const text = fs.readFileSync(path.join(commandsDir, file), "utf8");
|
|
40
|
-
const isModeless = file === "caveman.md";
|
|
40
|
+
const isModeless = file === "zoo-caveman.md";
|
|
41
41
|
r.total++;
|
|
42
42
|
if (isModeless) {
|
|
43
43
|
r.pass++; // modeless by design, not a failure
|
|
@@ -183,7 +183,7 @@ function check(condition, description, category) {
|
|
|
183
183
|
(function () {
|
|
184
184
|
const r = { pass: 0, total: 0 };
|
|
185
185
|
|
|
186
|
-
const verifyCmd = path.join(templateRoot, ".roo", "commands", "verify.md");
|
|
186
|
+
const verifyCmd = path.join(templateRoot, ".roo", "commands", "zoo-verify.md");
|
|
187
187
|
r.total++;
|
|
188
188
|
r.pass += check(fs.existsSync(verifyCmd), "verify command exists", "verification") ? 1 : 0;
|
|
189
189
|
|
|
@@ -209,7 +209,7 @@ function check(condition, description, category) {
|
|
|
209
209
|
(function () {
|
|
210
210
|
const r = { pass: 0, total: 0 };
|
|
211
211
|
|
|
212
|
-
const reviewCmd = path.join(templateRoot, ".roo", "commands", "review.md");
|
|
212
|
+
const reviewCmd = path.join(templateRoot, ".roo", "commands", "zoo-review.md");
|
|
213
213
|
r.total++;
|
|
214
214
|
r.pass += check(fs.existsSync(reviewCmd), "review command exists", "review_process") ? 1 : 0;
|
|
215
215
|
|
package/scripts/test-doctor.js
CHANGED
|
@@ -42,21 +42,21 @@ function mutate(root, mutation) {
|
|
|
42
42
|
if (mutation === "missing-roomodes") {
|
|
43
43
|
fs.rmSync(path.join(root, ".roomodes"));
|
|
44
44
|
} else if (mutation === "missing-command") {
|
|
45
|
-
fs.rmSync(command("review.md"));
|
|
45
|
+
fs.rmSync(command("zoo-review.md"));
|
|
46
46
|
} else if (mutation === "missing-skill") {
|
|
47
47
|
fs.rmSync(skill("engineering", "tweak", "SKILL.md"));
|
|
48
48
|
} else if (mutation === "bad-skill-wrapper") {
|
|
49
|
-
replaceInFile(command("caveman.md"), "Skill:", "Run skill:");
|
|
49
|
+
replaceInFile(command("zoo-caveman.md"), "Skill:", "Run skill:");
|
|
50
50
|
} else if (mutation === "bad-mode-slug") {
|
|
51
|
-
replaceInFile(command("review.md"), "mode: system-architect", "mode: architect");
|
|
51
|
+
replaceInFile(command("zoo-review.md"), "mode: system-architect", "mode: architect");
|
|
52
52
|
} else if (mutation === "bad-built-in-delegation") {
|
|
53
53
|
fs.appendFileSync(path.join(root, ".roo", "rules-custom-orchestrator", "00-routing.md"), "\nUse new_task to architect for review.\n");
|
|
54
54
|
} else if (mutation === "bad-zoo-path") {
|
|
55
55
|
fs.appendFileSync(path.join(root, ".roo", "rules", "00-paths.md"), "\nBad path: .zoo/commands/example.md\n");
|
|
56
56
|
} else if (mutation === "helper-missing-mode") {
|
|
57
|
-
replaceInFile(command("diagnose.md"), /^mode: system-architect\r?\n/m, "");
|
|
57
|
+
replaceInFile(command("zoo-diagnose.md"), /^mode: system-architect\r?\n/m, "");
|
|
58
58
|
} else if (mutation === "helper-not-permitted") {
|
|
59
|
-
replaceInFile(path.join(root, ".roomodes"), "/diagnose, ", "");
|
|
59
|
+
replaceInFile(path.join(root, ".roomodes"), "/zoo-diagnose, ", "");
|
|
60
60
|
} else {
|
|
61
61
|
throw new Error(`Unknown mutation: ${mutation}`);
|
|
62
62
|
}
|
|
@@ -97,7 +97,7 @@ MUST finish:
|
|
|
97
97
|
- [ ] `[DEBUG-...]` logs removed from source.
|
|
98
98
|
- [ ] Throwaway harnesses deleted/moved.
|
|
99
99
|
- [ ] Winning hypothesis stated in commit/PR.
|
|
100
|
-
- [ ] Seam/locality blocker → recommend `/improve-codebase-architecture`.
|
|
100
|
+
- [ ] Seam/locality blocker → recommend `/zoo-improve-codebase-architecture`.
|
|
101
101
|
|
|
102
102
|
Implementer returns results back to architect profile for Phase 7.
|
|
103
103
|
|
|
@@ -134,4 +134,4 @@ Write `<session-dir>/diagnosis.md` with full log (hypotheses, instrumentation re
|
|
|
134
134
|
- root cause summary
|
|
135
135
|
- fix applied
|
|
136
136
|
- status
|
|
137
|
-
- recommended next command (typically `/verify` then `/review` then `/commit-and-document`)
|
|
137
|
+
- recommended next command (typically `/zoo-verify` then `/zoo-review` then `/zoo-commit-and-document`)
|
|
@@ -48,7 +48,7 @@ Look for:
|
|
|
48
48
|
- modules/components identified
|
|
49
49
|
- key dependencies and relationships
|
|
50
50
|
- seams and integration points
|
|
51
|
-
- recommended next command (typically `/fix`, `/feature`, or `/refactor` if changes needed, `/tdd` if implementation needed)
|
|
51
|
+
- recommended next command (typically `/zoo-fix`, `/zoo-feature`, or `/zoo-refactor` if changes needed, `/zoo-tdd` if implementation needed)
|
|
52
52
|
|
|
53
53
|
## Context economy
|
|
54
54
|
|
|
@@ -54,7 +54,7 @@ Delegate to implementer profile via `Agent` tool. Implementer executes:
|
|
|
54
54
|
|
|
55
55
|
- feature implemented
|
|
56
56
|
- tests status (all passing)
|
|
57
|
-
- recommended next command (typically `/verify` then `/review` then `/commit-and-document`)
|
|
57
|
+
- recommended next command (typically `/zoo-verify` then `/zoo-review` then `/zoo-commit-and-document`)
|
|
58
58
|
|
|
59
59
|
## Context economy
|
|
60
60
|
|
|
@@ -47,7 +47,7 @@ Delegate to implementer profile via `Agent` tool. Implementer executes:
|
|
|
47
47
|
- fix implemented
|
|
48
48
|
- regression test added
|
|
49
49
|
- all tests passing
|
|
50
|
-
- recommended next command (typically `/verify` then `/review` then `/commit-and-document`)
|
|
50
|
+
- recommended next command (typically `/zoo-verify` then `/zoo-review` then `/zoo-commit-and-document`)
|
|
51
51
|
|
|
52
52
|
## Context economy
|
|
53
53
|
|
|
@@ -33,4 +33,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
33
33
|
|
|
34
34
|
- documentation location
|
|
35
35
|
- key findings and insights
|
|
36
|
-
- recommended next command (typically `/feature` or `/refactor` if changes needed)
|
|
36
|
+
- recommended next command (typically `/zoo-feature` or `/zoo-refactor` if changes needed)
|
package/templates/claude-code/.claude/skills/engineering/improve-codebase-architecture/SKILL.md
CHANGED
|
@@ -37,4 +37,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
37
37
|
|
|
38
38
|
- architecture proposal location
|
|
39
39
|
- key improvements identified
|
|
40
|
-
- recommended next command (typically `/refactor` to implement changes)
|
|
40
|
+
- recommended next command (typically `/zoo-refactor` to implement changes)
|
|
@@ -47,7 +47,7 @@ Delegate to implementer profile via `Agent` tool. Implementer executes:
|
|
|
47
47
|
- what was refactored
|
|
48
48
|
- structural improvements achieved
|
|
49
49
|
- tests status (all passing)
|
|
50
|
-
- recommended next command (typically `/verify` then `/review` then `/commit-and-document`)
|
|
50
|
+
- recommended next command (typically `/zoo-verify` then `/zoo-review` then `/zoo-commit-and-document`)
|
|
51
51
|
|
|
52
52
|
## Context economy
|
|
53
53
|
|
|
@@ -135,11 +135,11 @@ Write `<session-dir>/synthesis.md` with:
|
|
|
135
135
|
|
|
136
136
|
If fixes are needed, recommend one next command only:
|
|
137
137
|
|
|
138
|
-
- small fix -> `/tweak`
|
|
139
|
-
- behavior fix -> `/tdd`
|
|
140
|
-
- unknown cause -> `/fix`
|
|
141
|
-
- design issue -> `/refactor`
|
|
142
|
-
- ready for evidence -> `/verify`
|
|
143
|
-
- ready to commit -> `/commit-and-document`
|
|
138
|
+
- small fix -> `/zoo-tweak`
|
|
139
|
+
- behavior fix -> `/zoo-tdd`
|
|
140
|
+
- unknown cause -> `/zoo-fix`
|
|
141
|
+
- design issue -> `/zoo-refactor`
|
|
142
|
+
- ready for evidence -> `/zoo-verify`
|
|
143
|
+
- ready to commit -> `/zoo-commit-and-document`
|
|
144
144
|
|
|
145
145
|
Do not auto-launch any follow-up command.
|
|
@@ -42,4 +42,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
42
42
|
|
|
43
43
|
- CONTEXT.md location
|
|
44
44
|
- sections added/updated
|
|
45
|
-
- recommended next command (typically `/explore` to deepen understanding, or `/feature`/`/refactor` to start work)
|
|
45
|
+
- recommended next command (typically `/zoo-explore` to deepen understanding, or `/zoo-feature`/`/zoo-refactor` to start work)
|
|
@@ -46,4 +46,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
46
46
|
|
|
47
47
|
- configuration files updated
|
|
48
48
|
- conventions document location
|
|
49
|
-
- recommended next command (typically `/verify` to ensure config is valid)
|
|
49
|
+
- recommended next command (typically `/zoo-verify` to ensure config is valid)
|
|
@@ -50,7 +50,7 @@ Checklist per cycle:
|
|
|
50
50
|
- [ ] Code minimal.
|
|
51
51
|
- [ ] No speculation.
|
|
52
52
|
|
|
53
|
-
After green, suggest `/verify`, then `/review`, then `/commit-and-document` for non-trivial work. Do not auto-launch follow-up commands.
|
|
53
|
+
After green, suggest `/zoo-verify`, then `/zoo-review`, then `/zoo-commit-and-document` for non-trivial work. Do not auto-launch follow-up commands.
|
|
54
54
|
|
|
55
55
|
## Complete
|
|
56
56
|
|
|
@@ -35,4 +35,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
35
35
|
- issues directory location
|
|
36
36
|
- issue count and summary
|
|
37
37
|
- dependency graph
|
|
38
|
-
- recommended next command (typically `/tdd` or `/tweak` to start implementing first issue)
|
|
38
|
+
- recommended next command (typically `/zoo-tdd` or `/zoo-tweak` to start implementing first issue)
|
|
@@ -37,4 +37,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
37
37
|
|
|
38
38
|
- PRD location
|
|
39
39
|
- summary of requirements
|
|
40
|
-
- recommended next command (typically `/to-issues` to break down into tasks)
|
|
40
|
+
- recommended next command (typically `/zoo-to-issues` to break down into tasks)
|
|
@@ -34,4 +34,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
34
34
|
|
|
35
35
|
- triage document location
|
|
36
36
|
- prioritized list summary
|
|
37
|
-
- recommended next command (typically `/fix` for bugs, `/feature` for features, or `/refactor` for tech debt)
|
|
37
|
+
- recommended next command (typically `/zoo-fix` for bugs, `/zoo-feature` for features, or `/zoo-refactor` for tech debt)
|
|
@@ -14,7 +14,7 @@ Use for small known fixes.
|
|
|
14
14
|
5. If existing test covers touched area, run it via `Bash`.
|
|
15
15
|
6. DO NOT write new tests unless asked.
|
|
16
16
|
7. Confirm change.
|
|
17
|
-
8. For R3+ risk, suggest `/verify` before `/review` before `/commit-and-document`. Do not auto-launch. Otherwise offer `/commit-and-document` only after user satisfied.
|
|
17
|
+
8. For R3+ risk, suggest `/zoo-verify` before `/zoo-review` before `/zoo-commit-and-document`. Do not auto-launch. Otherwise offer `/zoo-commit-and-document` only after user satisfied.
|
|
18
18
|
9. Do not auto-launch follow-up commands.
|
|
19
19
|
|
|
20
20
|
## Complete
|
|
@@ -31,4 +31,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
31
31
|
|
|
32
32
|
- documentation files updated
|
|
33
33
|
- summary of changes
|
|
34
|
-
- recommended next command (typically `/verify` to ensure docs are accurate)
|
|
34
|
+
- recommended next command (typically `/zoo-verify` to ensure docs are accurate)
|
|
@@ -36,4 +36,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
36
36
|
|
|
37
37
|
- verification commands run
|
|
38
38
|
- pass/fail status for each
|
|
39
|
-
- recommended next command (typically `/review` if passed, or `/fix` if failed)
|
|
39
|
+
- recommended next command (typically `/zoo-review` if passed, or `/zoo-fix` if failed)
|
|
@@ -72,4 +72,4 @@ Do not re-read unchanged files; use prior findings unless the file changed.
|
|
|
72
72
|
|
|
73
73
|
- `<session-dir>/synthesis.md` file path
|
|
74
74
|
- high-level structure summary
|
|
75
|
-
- recommended next command (typically `/explore` for deeper dive, or `/feature`/`/refactor` if changes needed)
|
|
75
|
+
- recommended next command (typically `/zoo-explore` for deeper dive, or `/zoo-feature`/`/zoo-refactor` if changes needed)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: caveman
|
|
3
|
-
description: Ultra-compressed communication mode. Cuts token usage ~75% by dropping filler, articles, and pleasantries while keeping full technical accuracy. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman.
|
|
3
|
+
description: Ultra-compressed communication mode. Cuts token usage ~75% by dropping filler, articles, and pleasantries while keeping full technical accuracy. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /zoo-caveman.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Caveman
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# Context
|
|
2
|
-
<!-- Domain language, terms, and ambiguities for this project. Run /grill-with-docs to fill. -->
|
|
2
|
+
<!-- Domain language, terms, and ambiguities for this project. Run /zoo-grill-with-docs to fill. -->
|
|
3
3
|
|
|
4
4
|
## Language
|
|
5
5
|
<!-- Term: 1-2 sentence definition. _Avoid_: aliases. -->
|
|
@@ -5,15 +5,15 @@
|
|
|
5
5
|
### For Claude Code users
|
|
6
6
|
|
|
7
7
|
1. Open Claude Code in this project.
|
|
8
|
-
2. Run `/scaffold-context` for an existing project, or `/setup-matt-pocock-skills` if using PRDs, issue slicing, or triage.
|
|
8
|
+
2. Run `/zoo-scaffold-context` for an existing project, or `/zoo-setup-matt-pocock-skills` if using PRDs, issue slicing, or triage.
|
|
9
9
|
3. Then describe tasks normally — Claude Code will read CLAUDE.md automatically.
|
|
10
|
-
4. Slash commands like `/fix`, `/feature`, `/tweak` work the same way.
|
|
10
|
+
4. Slash commands like `/zoo-fix`, `/zoo-feature`, `/zoo-tweak` work the same way.
|
|
11
11
|
|
|
12
12
|
### For Zoo Code users
|
|
13
13
|
|
|
14
14
|
1. Reload VS Code and open Zoo Code.
|
|
15
15
|
2. Switch to **Custom Orchestrator** mode.
|
|
16
|
-
3. Run `/scaffold-context` for an existing project, or `/setup-matt-pocock-skills` if using PRDs, issue slicing, or triage.
|
|
16
|
+
3. Run `/zoo-scaffold-context` for an existing project, or `/zoo-setup-matt-pocock-skills` if using PRDs, issue slicing, or triage.
|
|
17
17
|
4. Then describe tasks normally.
|
|
18
18
|
|
|
19
19
|
## What's installed
|
|
@@ -24,5 +24,5 @@
|
|
|
24
24
|
|
|
25
25
|
## Getting help
|
|
26
26
|
|
|
27
|
-
Run `/grill-me` to stress-test your understanding of a plan or design.
|
|
28
|
-
Run `/explore` to understand unfamiliar code before making changes.
|
|
27
|
+
Run `/zoo-grill-me` to stress-test your understanding of a plan or design.
|
|
28
|
+
Run `/zoo-explore` to understand unfamiliar code before making changes.
|
|
@@ -16,11 +16,11 @@ Before accepting workflow changes, verify:
|
|
|
16
16
|
- [ ] Slash command names appear only when the user explicitly invokes them, asks for syntax, or inside internal delegation context.
|
|
17
17
|
- [ ] START_HERE.md includes both Claude Code and Zoo Code quick start sections.
|
|
18
18
|
- [ ] `.zoo-flow/START_HERE.md` remains the source of truth for first-run initialization.
|
|
19
|
-
- [ ] First-run guidance explains `/scaffold-context` and `/setup-matt-pocock-skills`.
|
|
19
|
+
- [ ] First-run guidance explains `/zoo-scaffold-context` and `/zoo-setup-matt-pocock-skills`.
|
|
20
20
|
- [ ] Analysis, review, inspection, and safety-check subtasks use architect profile.
|
|
21
21
|
- [ ] Implementation, tests, docs, prototype, and commit subtasks use implementer profile.
|
|
22
22
|
- [ ] Verification requests use implementer profile.
|
|
23
|
-
- [ ] Non-trivial work suggests `/verify` and `/review` before `/commit-and-document` but does not auto-launch them.
|
|
23
|
+
- [ ] Non-trivial work suggests `/zoo-verify` and `/zoo-review` before `/zoo-commit-and-document` but does not auto-launch them.
|
|
24
24
|
- [ ] CLAUDE.md contains behavioral profiles, routing guide, delegation protocol, and global rules.
|
|
25
25
|
- [ ] `.claude/commands/` contains all 25 command files with proper frontmatter.
|
|
26
26
|
- [ ] `.claude/skills/` contains adapted skill files with Claude Code tool references.
|
|
@@ -142,7 +142,7 @@ Must:
|
|
|
142
142
|
## Case 12 — Explicit slash command
|
|
143
143
|
|
|
144
144
|
User:
|
|
145
|
-
"/tweak rename the cancel button to close."
|
|
145
|
+
"/zoo-tweak rename the cancel button to close."
|
|
146
146
|
|
|
147
147
|
Expected:
|
|
148
148
|
Route immediately. Do not second-guess the explicit command.
|
|
@@ -178,12 +178,12 @@ Good response:
|
|
|
178
178
|
2. Explore the area first"
|
|
179
179
|
|
|
180
180
|
Must not:
|
|
181
|
-
- Say "use `/tweak`" in the user-facing recommendation.
|
|
182
|
-
- Offer `/tweak` as a selectable option.
|
|
181
|
+
- Say "use `/zoo-tweak`" in the user-facing recommendation.
|
|
182
|
+
- Offer `/zoo-tweak` as a selectable option.
|
|
183
183
|
- Tell the user to type a slash command.
|
|
184
184
|
|
|
185
185
|
Allowed:
|
|
186
|
-
- Internally delegate using `/tweak` after the user approves.
|
|
186
|
+
- Internally delegate using `/zoo-tweak` after the user approves.
|
|
187
187
|
- Mention slash commands only if the user explicitly asks for command syntax.
|
|
188
188
|
|
|
189
189
|
## Case — Review
|