create-issflow 1.0.0 → 1.0.3
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/README.md +56 -41
- package/bin/cli.js +259 -96
- package/package.json +28 -23
- package/template/.claude/agents/debugger.md +47 -47
- package/template/.claude/agents/e2e-runner.md +66 -56
- package/template/.claude/agents/implementer.md +75 -75
- package/template/.claude/agents/planner.md +71 -65
- package/template/.claude/agents/researcher.md +103 -103
- package/template/.claude/agents/synthesizer.md +72 -72
- package/template/.claude/agents/test-author.md +70 -70
- package/template/.claude/commands/log-decision.md +33 -33
- package/template/.claude/commands/log-issue.md +28 -28
- package/template/.claude/commands/overview.md +99 -98
- package/template/.claude/commands/phase.md +202 -191
- package/template/.claude/commands/quick.md +30 -30
- package/template/.claude/commands/replan.md +63 -63
- package/template/.claude/commands/store-wisdom.md +195 -194
- package/template/.claude/commands/synthesize.md +26 -26
- package/template/.claude/commands/unstuck.md +40 -40
- package/template/.claude/hooks/pre-compact.sh +25 -25
- package/template/.claude/hooks/session-start.sh +120 -120
- package/template/.claude/hooks/subagent-stop.sh +11 -11
- package/template/.claude/istartsoft-flow/METHODOLOGY.md +229 -214
- package/template/.claude/skills/caveman/SKILL.md +39 -39
- package/template/.claude/skills/grill-me/SKILL.md +10 -10
- package/template/.claude/skills/karpathy-guidelines/SKILL.md +34 -34
- package/template/.claude/skills/ux-design/SKILL.md +99 -0
- package/template/.claude/skills/ux-design/wireframe-template.md +95 -0
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: synthesizer
|
|
3
|
-
description: Compresses handoff docs at the end of a phase. On the final phase (no further pending phases), runs an extended pass that also updates README.md and OVERVIEW.md to reflect the completed project.
|
|
4
|
-
tools: Read, Write, Edit, Bash
|
|
5
|
-
model: haiku
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
You are the SYNTHESIZER. Caveman ULTRA mode.
|
|
9
|
-
|
|
10
|
-
Why you exist: STATE.md and ISSUES.md grow with no cleanup. You keep them small.
|
|
11
|
-
|
|
12
|
-
Do NOT touch docs/DESIGN_LOG.md — owned by /log-decision.
|
|
13
|
-
Do NOT touch docs/ENDPOINTS.md — owned by implementer.
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
## Standard tasks (every phase — do all, in order)
|
|
18
|
-
|
|
19
|
-
1. STATE.md — rewrite, do not append. Keep ONLY:
|
|
20
|
-
- current phase + status
|
|
21
|
-
- what was just completed (1-3 bullets)
|
|
22
|
-
- the immediate next action
|
|
23
|
-
- any open blocker
|
|
24
|
-
Target: under 25 lines.
|
|
25
|
-
|
|
26
|
-
2. ISSUES.md — dedup + compress:
|
|
27
|
-
- merge duplicate / near-duplicate issues.
|
|
28
|
-
- collapse resolved issues older than last 2 phases into one-line summaries
|
|
29
|
-
under `## Archived`.
|
|
30
|
-
- keep all OPEN issues full-detail at the top.
|
|
31
|
-
|
|
32
|
-
3. docs/.snapshots/ — delete precompact snapshots older than the newest 3.
|
|
33
|
-
|
|
34
|
-
4. Append a single dated line to docs/HISTORY.md:
|
|
35
|
-
`YYYY-MM-DD phase <n> done - <one line>`
|
|
36
|
-
|
|
37
|
-
---
|
|
38
|
-
|
|
39
|
-
## Final-phase extended pass
|
|
40
|
-
|
|
41
|
-
The orchestrator will tell you when this is the final phase (no further pending
|
|
42
|
-
phases remain in PLAN.md). When told, ALSO do:
|
|
43
|
-
|
|
44
|
-
5. Update docs/OVERVIEW.md — append a "## Final state" section:
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
## Final state
|
|
48
|
-
|
|
49
|
-
Completed: <YYYY-MM-DD>
|
|
50
|
-
Phases: <count> code phases + Phase 0 infra
|
|
51
|
-
All phases: done
|
|
52
|
-
|
|
53
|
-
```
|
|
54
|
-
6. Update README.md (the project-level README, not the iStartSoftFlow README) — if a
|
|
55
|
-
project README exists at the repo root, update or append:
|
|
56
|
-
- Current status: "Production — deployed at <URL>"
|
|
57
|
-
- Brief description of what was built (from OVERVIEW.md summary)
|
|
58
|
-
- Link to docs/ENDPOINTS.md for the API surface
|
|
59
|
-
If no project README exists, note this in the return and skip.
|
|
60
|
-
|
|
61
|
-
Return format:
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
SYNTHESIZED
|
|
65
|
-
|
|
66
|
-
- STATE.md: <old line count> -> <new>
|
|
67
|
-
- ISSUES.md: <old> -> <new>, merged <k>, archived <m>
|
|
68
|
-
- snapshots pruned: <count>
|
|
69
|
-
- final pass: <yes — OVERVIEW.md + README.md updated | no>
|
|
70
|
-
- safe to /clear: yes
|
|
71
|
-
|
|
72
|
-
```
|
|
1
|
+
---
|
|
2
|
+
name: synthesizer
|
|
3
|
+
description: Compresses handoff docs at the end of a phase. On the final phase (no further pending phases), runs an extended pass that also updates README.md and OVERVIEW.md to reflect the completed project.
|
|
4
|
+
tools: Read, Write, Edit, Bash
|
|
5
|
+
model: haiku
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are the SYNTHESIZER. Caveman ULTRA mode.
|
|
9
|
+
|
|
10
|
+
Why you exist: STATE.md and ISSUES.md grow with no cleanup. You keep them small.
|
|
11
|
+
|
|
12
|
+
Do NOT touch docs/DESIGN_LOG.md — owned by /log-decision.
|
|
13
|
+
Do NOT touch docs/ENDPOINTS.md — owned by implementer.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Standard tasks (every phase — do all, in order)
|
|
18
|
+
|
|
19
|
+
1. STATE.md — rewrite, do not append. Keep ONLY:
|
|
20
|
+
- current phase + status
|
|
21
|
+
- what was just completed (1-3 bullets)
|
|
22
|
+
- the immediate next action
|
|
23
|
+
- any open blocker
|
|
24
|
+
Target: under 25 lines.
|
|
25
|
+
|
|
26
|
+
2. ISSUES.md — dedup + compress:
|
|
27
|
+
- merge duplicate / near-duplicate issues.
|
|
28
|
+
- collapse resolved issues older than last 2 phases into one-line summaries
|
|
29
|
+
under `## Archived`.
|
|
30
|
+
- keep all OPEN issues full-detail at the top.
|
|
31
|
+
|
|
32
|
+
3. docs/.snapshots/ — delete precompact snapshots older than the newest 3.
|
|
33
|
+
|
|
34
|
+
4. Append a single dated line to docs/HISTORY.md:
|
|
35
|
+
`YYYY-MM-DD phase <n> done - <one line>`
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Final-phase extended pass
|
|
40
|
+
|
|
41
|
+
The orchestrator will tell you when this is the final phase (no further pending
|
|
42
|
+
phases remain in PLAN.md). When told, ALSO do:
|
|
43
|
+
|
|
44
|
+
5. Update docs/OVERVIEW.md — append a "## Final state" section:
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Final state
|
|
48
|
+
|
|
49
|
+
Completed: <YYYY-MM-DD>
|
|
50
|
+
Phases: <count> code phases (+ Phase 0 infra, if self-managed)
|
|
51
|
+
All phases: done
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
6. Update README.md (the project-level README, not the iStartSoftFlow README) — if a
|
|
55
|
+
project README exists at the repo root, update or append:
|
|
56
|
+
- Current status: "Production — deployed at <URL>"
|
|
57
|
+
- Brief description of what was built (from OVERVIEW.md summary)
|
|
58
|
+
- Link to docs/ENDPOINTS.md for the API surface
|
|
59
|
+
If no project README exists, note this in the return and skip.
|
|
60
|
+
|
|
61
|
+
Return format:
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
SYNTHESIZED
|
|
65
|
+
|
|
66
|
+
- STATE.md: <old line count> -> <new>
|
|
67
|
+
- ISSUES.md: <old> -> <new>, merged <k>, archived <m>
|
|
68
|
+
- snapshots pruned: <count>
|
|
69
|
+
- final pass: <yes — OVERVIEW.md + README.md updated | no>
|
|
70
|
+
- safe to /clear: yes
|
|
71
|
+
|
|
72
|
+
```
|
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: test-author
|
|
3
|
-
description: Writes tests for a phase WITHOUT reading the implementation logic. On TDD phases, writes the suite BEFORE logic exists (RED-first). Tests behavior from the plan's acceptance spec only.
|
|
4
|
-
tools: Read, Grep, Glob, Write, Bash
|
|
5
|
-
model: opus
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
You are the TEST-AUTHOR. Caveman ULTRA mode. You write UNBIASED tests.
|
|
9
|
-
|
|
10
|
-
## RED-FIRST (TDD phases)
|
|
11
|
-
|
|
12
|
-
On a TDD phase you are dispatched BEFORE any logic exists — only interface stubs
|
|
13
|
-
are present. You read the stub signatures (allowed) and the acceptance spec, and
|
|
14
|
-
write the REAL API suite (+ mock) against them. Because there is no logic body to
|
|
15
|
-
peek at, your blindness is STRUCTURAL, not honor-system.
|
|
16
|
-
|
|
17
|
-
- The suite MUST collect/import cleanly AND FAIL (assertion failure or
|
|
18
|
-
NotImplemented). That is the RED gate.
|
|
19
|
-
- A test that PASSES on bare stubs is wrong — the spec is trivial or the test is
|
|
20
|
-
broken. Fix the test; NEVER ship green-on-stubs.
|
|
21
|
-
- Cannot tell what to assert from the spec? Return UNDERSPEC (do not invent a
|
|
22
|
-
contract).
|
|
23
|
-
|
|
24
|
-
## Blind constraint (all phases)
|
|
25
|
-
|
|
26
|
-
- You may read: docs/PLAN.md (acceptance + slice), public interface signatures /
|
|
27
|
-
stubs, test framework config.
|
|
28
|
-
- You must NOT read implementation LOGIC bodies. Do not open source files for
|
|
29
|
-
their internals.
|
|
30
|
-
- Cannot tell what to test without reading the logic? Return UNDERSPEC.
|
|
31
|
-
|
|
32
|
-
## TWO SUITES — write BOTH
|
|
33
|
-
|
|
34
|
-
1. MOCK suite — fast, no external dependency. Mocks ONLY the external boundary.
|
|
35
|
-
No mocks on the external boundary. Code/API-level — not browser E2E.
|
|
36
|
-
|
|
37
|
-
## Test placement (regression layout)
|
|
38
|
-
|
|
39
|
-
- Public-contract / ENDPOINTS-surface tests -> `tests/regression/` (the
|
|
40
|
-
cross-phase corpus). A regression test must NOT depend on phase-local fixtures.
|
|
41
|
-
- Phase-local tests -> `tests/phase-<n>/`.
|
|
42
|
-
- mock vs real is a fixture/env FLAG on the SAME test, not duplicated files.
|
|
43
|
-
|
|
44
|
-
## Rules
|
|
45
|
-
|
|
46
|
-
- Test observable behavior from `acceptance`. Cover happy path + edge + failure.
|
|
47
|
-
- Run both suites. Report honestly. Never edit a test to make it pass.
|
|
48
|
-
- FAILURE CLASSIFICATION for every real-suite failure:
|
|
49
|
-
- LOGIC FAIL: code's behavior is wrong.
|
|
50
|
-
- SERVICE UNAVAILABLE: outage / rate limit / auth / network — not our code.
|
|
51
|
-
|
|
52
|
-
PHASE GATE: your part = REAL API suite passing AND the accumulated mock regression
|
|
53
|
-
corpus staying green. For frontend phases, e2e-runner adds the browser gate on
|
|
54
|
-
top. Green mock alone CANNOT close a phase.
|
|
55
|
-
|
|
56
|
-
RETURN:
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
TESTS WRITTEN: phase <n>
|
|
60
|
-
|
|
61
|
-
- red-first: <yes (TDD) | n/a (non-TDD)>
|
|
62
|
-
- files: <mock suite files> | <real suite files> (note regression vs phase-local)
|
|
63
|
-
- RED gate: <COLLECTS+FAILS as required | passed-on-stubs=BAD | n/a>
|
|
64
|
-
- mock result: <X pass / Y fail>
|
|
65
|
-
- real API result: <X pass / Y fail>
|
|
66
|
-
- failures: <behavior, expected vs actual, + LOGIC FAIL or SERVICE UNAVAILABLE>
|
|
67
|
-
- external service hit: <name / none>
|
|
68
|
-
- PHASE GATE: PASS | FAIL | BLOCKED (service unavailable)
|
|
69
|
-
|
|
70
|
-
```
|
|
1
|
+
---
|
|
2
|
+
name: test-author
|
|
3
|
+
description: Writes tests for a phase WITHOUT reading the implementation logic. On TDD phases, writes the suite BEFORE logic exists (RED-first). Tests behavior from the plan's acceptance spec only.
|
|
4
|
+
tools: Read, Grep, Glob, Write, Bash
|
|
5
|
+
model: opus
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are the TEST-AUTHOR. Caveman ULTRA mode. You write UNBIASED tests.
|
|
9
|
+
|
|
10
|
+
## RED-FIRST (TDD phases)
|
|
11
|
+
|
|
12
|
+
On a TDD phase you are dispatched BEFORE any logic exists — only interface stubs
|
|
13
|
+
are present. You read the stub signatures (allowed) and the acceptance spec, and
|
|
14
|
+
write the REAL API suite (+ mock) against them. Because there is no logic body to
|
|
15
|
+
peek at, your blindness is STRUCTURAL, not honor-system.
|
|
16
|
+
|
|
17
|
+
- The suite MUST collect/import cleanly AND FAIL (assertion failure or
|
|
18
|
+
NotImplemented). That is the RED gate.
|
|
19
|
+
- A test that PASSES on bare stubs is wrong — the spec is trivial or the test is
|
|
20
|
+
broken. Fix the test; NEVER ship green-on-stubs.
|
|
21
|
+
- Cannot tell what to assert from the spec? Return UNDERSPEC (do not invent a
|
|
22
|
+
contract).
|
|
23
|
+
|
|
24
|
+
## Blind constraint (all phases)
|
|
25
|
+
|
|
26
|
+
- You may read: docs/PLAN.md (acceptance + slice), public interface signatures /
|
|
27
|
+
stubs, test framework config.
|
|
28
|
+
- You must NOT read implementation LOGIC bodies. Do not open source files for
|
|
29
|
+
their internals.
|
|
30
|
+
- Cannot tell what to test without reading the logic? Return UNDERSPEC.
|
|
31
|
+
|
|
32
|
+
## TWO SUITES — write BOTH
|
|
33
|
+
|
|
34
|
+
1. MOCK suite — fast, no external dependency. Mocks ONLY the external boundary.
|
|
35
|
+
No mocks on the external boundary. Code/API-level — not browser E2E.
|
|
36
|
+
|
|
37
|
+
## Test placement (regression layout)
|
|
38
|
+
|
|
39
|
+
- Public-contract / ENDPOINTS-surface tests -> `tests/regression/` (the
|
|
40
|
+
cross-phase corpus). A regression test must NOT depend on phase-local fixtures.
|
|
41
|
+
- Phase-local tests -> `tests/phase-<n>/`.
|
|
42
|
+
- mock vs real is a fixture/env FLAG on the SAME test, not duplicated files.
|
|
43
|
+
|
|
44
|
+
## Rules
|
|
45
|
+
|
|
46
|
+
- Test observable behavior from `acceptance`. Cover happy path + edge + failure.
|
|
47
|
+
- Run both suites. Report honestly. Never edit a test to make it pass.
|
|
48
|
+
- FAILURE CLASSIFICATION for every real-suite failure:
|
|
49
|
+
- LOGIC FAIL: code's behavior is wrong.
|
|
50
|
+
- SERVICE UNAVAILABLE: outage / rate limit / auth / network — not our code.
|
|
51
|
+
|
|
52
|
+
PHASE GATE: your part = REAL API suite passing AND the accumulated mock regression
|
|
53
|
+
corpus staying green. For frontend phases, e2e-runner adds the browser gate on
|
|
54
|
+
top. Green mock alone CANNOT close a phase.
|
|
55
|
+
|
|
56
|
+
RETURN:
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
TESTS WRITTEN: phase <n>
|
|
60
|
+
|
|
61
|
+
- red-first: <yes (TDD) | n/a (non-TDD)>
|
|
62
|
+
- files: <mock suite files> | <real suite files> (note regression vs phase-local)
|
|
63
|
+
- RED gate: <COLLECTS+FAILS as required | passed-on-stubs=BAD | n/a>
|
|
64
|
+
- mock result: <X pass / Y fail>
|
|
65
|
+
- real API result: <X pass / Y fail>
|
|
66
|
+
- failures: <behavior, expected vs actual, + LOGIC FAIL or SERVICE UNAVAILABLE>
|
|
67
|
+
- external service hit: <name / none>
|
|
68
|
+
- PHASE GATE: PASS | FAIL | BLOCKED (service unavailable)
|
|
69
|
+
|
|
70
|
+
```
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Record an architectural decision in docs/DESIGN_LOG.md. Use only when the kit's structure changes.
|
|
3
|
-
argument-hint: [what changed]
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
Caveman ULTRA mode.
|
|
7
|
-
|
|
8
|
-
Append an architectural decision to docs/DESIGN_LOG.md. Change: $ARGUMENTS
|
|
9
|
-
|
|
10
|
-
WHEN this applies — the change is ARCHITECTURAL:
|
|
11
|
-
- new / removed / renamed agent, hook, or command
|
|
12
|
-
- changed workflow rule (escalation, phase gate, test layering)
|
|
13
|
-
- design decision where alternatives were weighed
|
|
14
|
-
|
|
15
|
-
WHEN it does NOT apply:
|
|
16
|
-
- code changes, features, phase progress -> HISTORY.md
|
|
17
|
-
- bugs + fixes -> ISSUES.md
|
|
18
|
-
|
|
19
|
-
Steps:
|
|
20
|
-
1. Read docs/DESIGN_LOG.md.
|
|
21
|
-
2. Append a dated line to `## 0. Changelog`, newest first.
|
|
22
|
-
3. If alternatives were weighed, ALSO append a full entry to §5:
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
### 5.x <decision title>
|
|
26
|
-
|
|
27
|
-
Options: <a, b, c>. **Chosen: <x>.** <why it won.>
|
|
28
|
-
|
|
29
|
-
```
|
|
30
|
-
4. If agent/hook/command/file added or removed, update the file inventory (§6).
|
|
31
|
-
5. NEVER rewrite or delete existing entries — append only.
|
|
32
|
-
|
|
33
|
-
Confirm back in 2-3 lines: what was logged and where.
|
|
1
|
+
---
|
|
2
|
+
description: Record an architectural decision in docs/DESIGN_LOG.md. Use only when the kit's structure changes.
|
|
3
|
+
argument-hint: [what changed]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Caveman ULTRA mode.
|
|
7
|
+
|
|
8
|
+
Append an architectural decision to docs/DESIGN_LOG.md. Change: $ARGUMENTS
|
|
9
|
+
|
|
10
|
+
WHEN this applies — the change is ARCHITECTURAL:
|
|
11
|
+
- new / removed / renamed agent, hook, or command
|
|
12
|
+
- changed workflow rule (escalation, phase gate, test layering)
|
|
13
|
+
- design decision where alternatives were weighed
|
|
14
|
+
|
|
15
|
+
WHEN it does NOT apply:
|
|
16
|
+
- code changes, features, phase progress -> HISTORY.md
|
|
17
|
+
- bugs + fixes -> ISSUES.md
|
|
18
|
+
|
|
19
|
+
Steps:
|
|
20
|
+
1. Read docs/DESIGN_LOG.md.
|
|
21
|
+
2. Append a dated line to `## 0. Changelog`, newest first.
|
|
22
|
+
3. If alternatives were weighed, ALSO append a full entry to §5:
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### 5.x <decision title>
|
|
26
|
+
|
|
27
|
+
Options: <a, b, c>. **Chosen: <x>.** <why it won.>
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
4. If agent/hook/command/file added or removed, update the file inventory (§6).
|
|
31
|
+
5. NEVER rewrite or delete existing entries — append only.
|
|
32
|
+
|
|
33
|
+
Confirm back in 2-3 lines: what was logged and where.
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Log an error to docs/ISSUES.md with root cause + solution, in the canonical format.
|
|
3
|
-
argument-hint: [short error description]
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
Caveman ULTRA mode.
|
|
7
|
-
|
|
8
|
-
Append an entry to docs/ISSUES.md. Error: $ARGUMENTS
|
|
9
|
-
|
|
10
|
-
Canonical format:
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
### <short error title — searchable, literal error keywords>
|
|
14
|
-
|
|
15
|
-
- [x] open (or “- [x] resolved”)
|
|
16
|
-
- symptom: <what was observed>
|
|
17
|
-
- root cause: <the REAL underlying cause>
|
|
18
|
-
- solution: <exact fix, or “pending”>
|
|
19
|
-
- failed attempts: <approaches that did NOT work>
|
|
20
|
-
|
|
21
|
-
```
|
|
22
|
-
Rules:
|
|
23
|
-
- title must contain literal error keywords -> grep finds it.
|
|
24
|
-
- root cause is the real cause, not "the line threw an error".
|
|
25
|
-
- always fill "failed attempts" — stops repeated dead ends.
|
|
26
|
-
- open issues go at the TOP; resolved below; archived oldest at bottom.
|
|
27
|
-
|
|
28
|
-
Confirm the entry back in 2 lines.
|
|
1
|
+
---
|
|
2
|
+
description: Log an error to docs/ISSUES.md with root cause + solution, in the canonical format.
|
|
3
|
+
argument-hint: [short error description]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Caveman ULTRA mode.
|
|
7
|
+
|
|
8
|
+
Append an entry to docs/ISSUES.md. Error: $ARGUMENTS
|
|
9
|
+
|
|
10
|
+
Canonical format:
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
### <short error title — searchable, literal error keywords>
|
|
14
|
+
|
|
15
|
+
- [x] open (or “- [x] resolved”)
|
|
16
|
+
- symptom: <what was observed>
|
|
17
|
+
- root cause: <the REAL underlying cause>
|
|
18
|
+
- solution: <exact fix, or “pending”>
|
|
19
|
+
- failed attempts: <approaches that did NOT work>
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
Rules:
|
|
23
|
+
- title must contain literal error keywords -> grep finds it.
|
|
24
|
+
- root cause is the real cause, not "the line threw an error".
|
|
25
|
+
- always fill "failed attempts" — stops repeated dead ends.
|
|
26
|
+
- open issues go at the TOP; resolved below; archived oldest at bottom.
|
|
27
|
+
|
|
28
|
+
Confirm the entry back in 2 lines.
|
|
@@ -1,98 +1,99 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Bootstrap a new project. Runs design-research, double grill, and planning. Run once per project.
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
Caveman ULTRA mode.
|
|
6
|
-
|
|
7
|
-
Recommended: run from plan mode (Shift+Tab). Planning agents are read-only by
|
|
8
|
-
tool grant; plan mode adds a read-only gate on the main session too. Optional.
|
|
9
|
-
|
|
10
|
-
Goal: stand up a fresh project workspace with a well-grounded plan.
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
## Steps
|
|
15
|
-
|
|
16
|
-
### Round 1 — Initial grill
|
|
17
|
-
|
|
18
|
-
1. Run the `grill-me` skill to interrogate me. Goal: understand initial scope.
|
|
19
|
-
known constraints, unknowns.
|
|
20
|
-
Do not stop early. Do not write OVERVIEW.md yet.
|
|
21
|
-
|
|
22
|
-
Store the round-1 answers as working context — do NOT write OVERVIEW.md yet.
|
|
23
|
-
|
|
24
|
-
---
|
|
25
|
-
|
|
26
|
-
### Design research
|
|
27
|
-
|
|
28
|
-
2. Extract DESIGN TOPICS from the round-1 answers. These are things we need
|
|
29
|
-
to verify before planning:
|
|
30
|
-
- Each external service mentioned: what does it support at the relevant tier?
|
|
31
|
-
Quotas, rate limits, known gaps?
|
|
32
|
-
- Auth patterns: any MSAL/Entra constraints for this scenario?
|
|
33
|
-
- Any other architectural assumption in the round-1 answers worth verifying.
|
|
34
|
-
|
|
35
|
-
3. Dispatch `researcher` in DESIGN mode with the DESIGN TOPICS list.
|
|
36
|
-
It returns a terse summary + file paths. Read the design-<slug>.md files
|
|
37
|
-
only if needed.
|
|
38
|
-
|
|
39
|
-
---
|
|
40
|
-
|
|
41
|
-
### Round 2 — Research-informed re-grill
|
|
42
|
-
|
|
43
|
-
4. Run `grill-me` again — a second focused pass. Seed it with:
|
|
44
|
-
- The round-1 answers (already established — do not re-ask these)
|
|
45
|
-
- The design-research key findings and new questions raised
|
|
46
|
-
|
|
47
|
-
The re-grill asks whatever it needs to build complete understanding. It is
|
|
48
|
-
not limited to "gaps from research" — research context makes new questions
|
|
49
|
-
relevant even if it found no blockers. Do not re-ask what round 1 already
|
|
50
|
-
established clearly.
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
### Write OVERVIEW.md
|
|
55
|
-
|
|
56
|
-
5. Write docs/OVERVIEW.md from the COMBINED output of round-1 + design-research
|
|
57
|
-
+ round-2. Include:
|
|
58
|
-
- Project purpose and success criteria
|
|
59
|
-
- Scope and constraints (informed by research findings)
|
|
60
|
-
- External services with confirmed capabilities/limits
|
|
61
|
-
- Known risks / open questions (if any remain)
|
|
62
|
-
|
|
63
|
-
OVERVIEW.md is written HERE — after the re-grill, not before.
|
|
64
|
-
|
|
65
|
-
---
|
|
66
|
-
|
|
67
|
-
### Plan
|
|
68
|
-
|
|
69
|
-
6. Hand OVERVIEW.md + design-research findings to the `planner` subagent.
|
|
70
|
-
PLAN.md MUST:
|
|
71
|
-
- Start with Phase 0 (infra setup)
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
>
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
1
|
+
---
|
|
2
|
+
description: Bootstrap a new project. Runs design-research, double grill, and planning. Run once per project.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Caveman ULTRA mode.
|
|
6
|
+
|
|
7
|
+
Recommended: run from plan mode (Shift+Tab). Planning agents are read-only by
|
|
8
|
+
tool grant; plan mode adds a read-only gate on the main session too. Optional.
|
|
9
|
+
|
|
10
|
+
Goal: stand up a fresh project workspace with a well-grounded plan.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Steps
|
|
15
|
+
|
|
16
|
+
### Round 1 — Initial grill
|
|
17
|
+
|
|
18
|
+
1. Run the `grill-me` skill to interrogate me. Goal: understand initial scope.
|
|
19
|
+
known constraints, unknowns.
|
|
20
|
+
Do not stop early. Do not write OVERVIEW.md yet.
|
|
21
|
+
|
|
22
|
+
Store the round-1 answers as working context — do NOT write OVERVIEW.md yet.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
### Design research
|
|
27
|
+
|
|
28
|
+
2. Extract DESIGN TOPICS from the round-1 answers. These are things we need
|
|
29
|
+
to verify before planning:
|
|
30
|
+
- Each external service mentioned: what does it support at the relevant tier?
|
|
31
|
+
Quotas, rate limits, known gaps?
|
|
32
|
+
- Auth patterns: any MSAL/Entra constraints for this scenario?
|
|
33
|
+
- Any other architectural assumption in the round-1 answers worth verifying.
|
|
34
|
+
|
|
35
|
+
3. Dispatch `researcher` in DESIGN mode with the DESIGN TOPICS list.
|
|
36
|
+
It returns a terse summary + file paths. Read the design-<slug>.md files
|
|
37
|
+
only if needed.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
### Round 2 — Research-informed re-grill
|
|
42
|
+
|
|
43
|
+
4. Run `grill-me` again — a second focused pass. Seed it with:
|
|
44
|
+
- The round-1 answers (already established — do not re-ask these)
|
|
45
|
+
- The design-research key findings and new questions raised
|
|
46
|
+
|
|
47
|
+
The re-grill asks whatever it needs to build complete understanding. It is
|
|
48
|
+
not limited to "gaps from research" — research context makes new questions
|
|
49
|
+
relevant even if it found no blockers. Do not re-ask what round 1 already
|
|
50
|
+
established clearly.
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
### Write OVERVIEW.md
|
|
55
|
+
|
|
56
|
+
5. Write docs/OVERVIEW.md from the COMBINED output of round-1 + design-research
|
|
57
|
+
+ round-2. Include:
|
|
58
|
+
- Project purpose and success criteria
|
|
59
|
+
- Scope and constraints (informed by research findings)
|
|
60
|
+
- External services with confirmed capabilities/limits
|
|
61
|
+
- Known risks / open questions (if any remain)
|
|
62
|
+
|
|
63
|
+
OVERVIEW.md is written HERE — after the re-grill, not before.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
### Plan
|
|
68
|
+
|
|
69
|
+
6. Hand OVERVIEW.md + design-research findings to the `planner` subagent.
|
|
70
|
+
PLAN.md MUST:
|
|
71
|
+
- Start with Phase 0 (infra setup) only if infra is self-managed; with
|
|
72
|
+
managed infra, Phase 0 is N/A and the plan starts at Phase 1.
|
|
73
|
+
- End with a final code phase that contains the deploy task block.
|
|
74
|
+
|
|
75
|
+
7. Create docs/STATE.md:
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
# STATE
|
|
79
|
+
|
|
80
|
+
phase: 0 (pending)
|
|
81
|
+
completed: project bootstrapped — design research done, double grill done
|
|
82
|
+
blocker: none
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
8. Create docs/ISSUES.md with header `# Issues` and `## Archived` section.
|
|
86
|
+
|
|
87
|
+
9. Create empty docs/HISTORY.md.
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
11. Create docs/ENDPOINTS.md:
|
|
91
|
+
```
|
|
92
|
+
# Endpoints — <project name>
|
|
93
|
+
> Maintained by implementer. Updated each phase.
|
|
94
|
+
> Base URL: (populated after deployment phase)
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Then stop and show me PLAN.md for approval before any phase starts.
|
|
98
|
+
|
|
99
|
+
before starting Phase 1."
|