prizmkit 1.1.42 → 1.1.46
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/bundled/VERSION.json +3 -3
- package/bundled/adapters/claude/settings-adapter.js +4 -4
- package/bundled/adapters/codebuddy/settings-adapter.js +1 -1
- package/bundled/agents/prizm-dev-team-critic.md +9 -9
- package/bundled/agents/prizm-dev-team-dev.md +13 -13
- package/bundled/agents/prizm-dev-team-reviewer.md +2 -2
- package/bundled/dev-pipeline/.env.example +6 -6
- package/bundled/dev-pipeline/README.md +32 -32
- package/bundled/dev-pipeline/assets/prizm-dev-team-integration.md +1 -1
- package/bundled/dev-pipeline/launch-bugfix-daemon.sh +5 -2
- package/bundled/dev-pipeline/launch-feature-daemon.sh +5 -2
- package/bundled/dev-pipeline/launch-refactor-daemon.sh +5 -2
- package/bundled/dev-pipeline/lib/common.sh +34 -5
- package/bundled/dev-pipeline/reset-bug.sh +7 -5
- package/bundled/dev-pipeline/reset-feature.sh +7 -5
- package/bundled/dev-pipeline/reset-refactor.sh +7 -5
- package/bundled/dev-pipeline/run-bugfix.sh +14 -11
- package/bundled/dev-pipeline/run-feature.sh +15 -12
- package/bundled/dev-pipeline/run-recovery.sh +6 -3
- package/bundled/dev-pipeline/run-refactor.sh +15 -12
- package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +14 -14
- package/bundled/dev-pipeline/scripts/generate-bugfix-prompt.py +9 -4
- package/bundled/dev-pipeline/scripts/generate-recovery-prompt.py +18 -12
- package/bundled/dev-pipeline/scripts/generate-refactor-prompt.py +9 -4
- package/bundled/dev-pipeline/scripts/parse-stream-progress.py +1 -1
- package/bundled/dev-pipeline/scripts/update-bug-status.py +9 -1
- package/bundled/dev-pipeline/scripts/update-feature-status.py +13 -1
- package/bundled/dev-pipeline/scripts/update-refactor-status.py +9 -1
- package/bundled/dev-pipeline/templates/agent-prompts/critic-plan-challenge.md +1 -1
- package/bundled/dev-pipeline/templates/bootstrap-prompt.md +2 -2
- package/bundled/dev-pipeline/templates/bootstrap-tier1.md +8 -8
- package/bundled/dev-pipeline/templates/bootstrap-tier2.md +11 -11
- package/bundled/dev-pipeline/templates/bootstrap-tier3.md +9 -9
- package/bundled/dev-pipeline/templates/bugfix-bootstrap-prompt.md +6 -6
- package/bundled/dev-pipeline/templates/refactor-bootstrap-prompt.md +3 -3
- package/bundled/dev-pipeline/templates/sections/phase-commit-full.md +5 -5
- package/bundled/dev-pipeline/templates/sections/phase-commit.md +6 -6
- package/bundled/dev-pipeline/templates/sections/phase-context-snapshot-agent-suffix.md +1 -1
- package/bundled/dev-pipeline/templates/sections/phase-context-snapshot-base.md +1 -1
- package/bundled/dev-pipeline/templates/sections/phase-specify-plan-full.md +2 -2
- package/bundled/dev-pipeline/templates/sections/phase0-init.md +1 -1
- package/bundled/dev-pipeline/tests/test-path-resolution.sh +100 -0
- package/bundled/rules/USAGE.md +2 -2
- package/bundled/rules/_rules-metadata.json +1 -1
- package/bundled/rules/prizm/prizm-commit-workflow.md +1 -1
- package/bundled/rules/prizm/prizm-documentation.md +4 -4
- package/bundled/rules/prizm/prizm-progressive-loading.md +3 -3
- package/bundled/skills/_metadata.json +4 -4
- package/bundled/skills/app-planner/SKILL.md +35 -7
- package/bundled/skills/bug-fix-workflow/SKILL.md +6 -6
- package/bundled/skills/bug-planner/SKILL.md +5 -5
- package/bundled/skills/bugfix-pipeline-launcher/SKILL.md +21 -21
- package/bundled/skills/feature-pipeline-launcher/SKILL.md +21 -21
- package/bundled/skills/feature-planner/SKILL.md +5 -5
- package/bundled/skills/feature-workflow/SKILL.md +8 -8
- package/bundled/skills/prizm-kit/SKILL.md +10 -10
- package/bundled/skills/prizmkit-committer/SKILL.md +2 -2
- package/bundled/skills/prizmkit-implement/SKILL.md +2 -2
- package/bundled/skills/prizmkit-init/SKILL.md +17 -17
- package/bundled/skills/prizmkit-plan/SKILL.md +3 -3
- package/bundled/skills/prizmkit-plan/references/verification-checklist.md +2 -2
- package/bundled/skills/prizmkit-prizm-docs/SKILL.md +17 -17
- package/bundled/skills/prizmkit-prizm-docs/assets/prizm-docs-format.md +45 -45
- package/bundled/skills/prizmkit-prizm-docs/references/op-init.md +9 -9
- package/bundled/skills/prizmkit-prizm-docs/references/op-rebuild.md +1 -1
- package/bundled/skills/prizmkit-prizm-docs/references/op-status.md +2 -2
- package/bundled/skills/prizmkit-prizm-docs/references/op-update.md +3 -3
- package/bundled/skills/prizmkit-prizm-docs/references/op-validate.md +1 -1
- package/bundled/skills/prizmkit-retrospective/SKILL.md +10 -10
- package/bundled/skills/prizmkit-retrospective/references/knowledge-injection-steps.md +3 -3
- package/bundled/skills/prizmkit-retrospective/references/structural-sync-steps.md +1 -1
- package/bundled/skills/recovery-workflow/SKILL.md +15 -15
- package/bundled/skills/recovery-workflow/scripts/detect-recovery-state.py +0 -1
- package/bundled/skills/refactor-pipeline-launcher/SKILL.md +21 -21
- package/bundled/skills/refactor-planner/SKILL.md +6 -6
- package/bundled/skills/refactor-workflow/SKILL.md +9 -9
- package/bundled/team/prizm-dev-team.json +1 -1
- package/bundled/templates/hooks/commit-intent.json +2 -2
- package/bundled/templates/hooks/diff-prizm-docs.sh +8 -8
- package/bundled/templates/hooks/prizm-pre-commit.sh +4 -4
- package/bundled/templates/hooks/validate-prizm-docs.sh +4 -4
- package/bundled/templates/project-memory-template.md +4 -4
- package/package.json +1 -1
- package/src/clean.js +1 -3
- package/src/config.js +1 -1
- package/src/gitignore-template.js +4 -24
- package/src/scaffold.js +12 -11
- package/src/upgrade.js +3 -3
|
@@ -36,7 +36,7 @@ If you believe the task is better suited for a different workflow, you MUST:
|
|
|
36
36
|
**Your ONLY writable outputs are:**
|
|
37
37
|
1. `.prizmkit/plans/project-brief.md` (`.prizmkit/plans/` — accumulated project context brief)
|
|
38
38
|
2. Project conventions and architecture decisions appended to `CLAUDE.md` / `CODEBUDDY.md` (with user consent)
|
|
39
|
-
3. Infrastructure configuration (database conventions
|
|
39
|
+
3. Infrastructure configuration (database conventions, deployment config, **cloud services**) appended to `CLAUDE.md` / `CODEBUDDY.md` `### Infrastructure` section
|
|
40
40
|
|
|
41
41
|
**After planning is complete**, you MUST:
|
|
42
42
|
1. Present the summary of captured project-level context (vision, conventions, architecture decisions, project brief)
|
|
@@ -171,6 +171,27 @@ Do NOT use this skill when:
|
|
|
171
171
|
|
|
172
172
|
Use `AskUserQuestion` for each batch. Each question MUST include a "Skip — decide later" option.
|
|
173
173
|
|
|
174
|
+
**Cloud Services Deep Inquiry** (Two-round AskUserQuestion):
|
|
175
|
+
|
|
176
|
+
Many projects depend on third-party cloud services (object storage, CDN, managed DB, auth, domain, email, SMS, payment, AI APIs). Capture them now so feature-planner and prizmkit-deploy can reference them later.
|
|
177
|
+
|
|
178
|
+
*Round 1 — Cloud Vendors* (multi-select via `AskUserQuestion`):
|
|
179
|
+
- "Which cloud vendors will this project integrate with?"
|
|
180
|
+
- Options: `AWS`, `Aliyun`, `Tencent Cloud`, `Cloudflare`, `Vercel`, `Other` (free text), `None — skip`
|
|
181
|
+
- If `None — skip`, write `<!-- cloud-services: none -->` to the `#### Cloud Services` subsection and exit this inquiry.
|
|
182
|
+
|
|
183
|
+
*Round 2 — Service Types* (multi-select, only if Round 1 returned any vendor):
|
|
184
|
+
- "Which types of cloud services will you use?"
|
|
185
|
+
- Options: `Object Storage (COS/S3/OSS)`, `CDN`, `Managed Database`, `Functions/Serverless`, `Auth (OAuth/JWT/IDaaS)`, `Domain & DNS`, `Email`, `SMS`, `Payment`, `AI API (OpenAI/Anthropic/...)`, `Other`
|
|
186
|
+
- The list is multi-select. Skip the question entirely if user picks "None" in Round 1.
|
|
187
|
+
|
|
188
|
+
*After both rounds, write to `#### Cloud Services`*:
|
|
189
|
+
- For each chosen (vendor × service) pair, append a row to the subsection (see template below)
|
|
190
|
+
- **Do NOT** prompt for env var names, credentials, region, or SDK details — those belong to `prizmkit-deploy`'s scope, not planning
|
|
191
|
+
- If the user is unsure of the mapping, store the vendors and service types separately; deploy skill can refine later
|
|
192
|
+
|
|
193
|
+
Use `AskUserQuestion` for both rounds. Each question MUST include a "Skip — decide later" option.
|
|
194
|
+
|
|
174
195
|
**After infrastructure inquiry**:
|
|
175
196
|
- Update `CLAUDE.md` / `CODEBUDDY.md` `### Infrastructure` section with all collected information. Replace `<!-- deferred -->` markers with real values. Preserve any existing values that were confirmed unchanged. Full format:
|
|
176
197
|
```markdown
|
|
@@ -197,6 +218,13 @@ Do NOT use this skill when:
|
|
|
197
218
|
|
|
198
219
|
#### Deployment Credentials Reference
|
|
199
220
|
- [platform]: [token/auth method description]
|
|
221
|
+
|
|
222
|
+
#### Cloud Services
|
|
223
|
+
- **Vendors**: [comma-separated list, e.g., "AWS, Cloudflare" or "none"]
|
|
224
|
+
- **Services**:
|
|
225
|
+
- [vendor]: [service type] — [optional one-line note, e.g., "user-upload images"]
|
|
226
|
+
- [vendor]: [service type]
|
|
227
|
+
<!-- If user picked "None" in Round 1, replace this block with: cloud-services: none -->
|
|
200
228
|
```
|
|
201
229
|
- Items still marked "Skip — decide later" remain as `<!-- [topic]: deferred -->` in CLAUDE.md for `prizmkit-deploy` to pick up later.
|
|
202
230
|
|
|
@@ -207,7 +235,7 @@ Do NOT use this skill when:
|
|
|
207
235
|
## Prerequisites
|
|
208
236
|
|
|
209
237
|
Before questions, check optional context files (never block if absent):
|
|
210
|
-
- `.prizm-docs/root.prizm` (architecture/project context)
|
|
238
|
+
- `.prizmkit/prizm-docs/root.prizm` (architecture/project context)
|
|
211
239
|
- `.prizmkit/config.json` (existing stack preferences and detected tech stack)
|
|
212
240
|
- `CLAUDE.md` / `CODEBUDDY.md` `### Project Conventions` section (previously answered project conventions)
|
|
213
241
|
- `CLAUDE.md` / `CODEBUDDY.md` `### Infrastructure` section (database and deployment config from prizmkit-init or previous app-planner run)
|
|
@@ -221,7 +249,7 @@ Before questions, check optional context files (never block if absent):
|
|
|
221
249
|
Note:
|
|
222
250
|
- This skill **reads** `.prizmkit/config.json` if present.
|
|
223
251
|
- This skill does **not** create `.prizmkit/config.json` directly.
|
|
224
|
-
- Creation/update is handled by bootstrap/init flows (e.g., `prizmkit-init`,
|
|
252
|
+
- Creation/update is handled by bootstrap/init flows (e.g., `prizmkit-init`, `.prizmkit/dev-pipeline/scripts/init-dev-team.py`).
|
|
225
253
|
|
|
226
254
|
## Interaction Style (Hard Rule)
|
|
227
255
|
|
|
@@ -306,7 +334,7 @@ Before ANY planning work, check if AI-essential project context files exist:
|
|
|
306
334
|
|
|
307
335
|
| File | Purpose | Status |
|
|
308
336
|
|------|---------|--------|
|
|
309
|
-
| `.prizm-docs/root.prizm` | Project architecture context for AI | exists / missing |
|
|
337
|
+
| `.prizmkit/prizm-docs/root.prizm` | Project architecture context for AI | exists / missing |
|
|
310
338
|
| `.prizmkit/config.json` | Tech stack + runtime config | exists / missing |
|
|
311
339
|
| `.prizmkit/plans/project-brief.md` | Product vision checklist | exists / missing |
|
|
312
340
|
|
|
@@ -336,7 +364,7 @@ Do NOT ask the user to describe their project — read it yourself first:
|
|
|
336
364
|
- `go.mod` → Go module info
|
|
337
365
|
- `README.md` → project description and goals
|
|
338
366
|
- `.prizmkit/config.json` → previously detected tech stack
|
|
339
|
-
- `.prizm-docs/root.prizm` → existing architecture context
|
|
367
|
+
- `.prizmkit/prizm-docs/root.prizm` → existing architecture context
|
|
340
368
|
|
|
341
369
|
3. **Read key source files** (entry points, main routes, core models) to understand what the project actually does — don't rely solely on metadata.
|
|
342
370
|
|
|
@@ -392,7 +420,7 @@ Checkpoints catch cascading errors early — skipping one means the next phase b
|
|
|
392
420
|
|-----------|----------------|----------|-------|
|
|
393
421
|
| **CP-AP-0** | Intent Confirmed | User confirmed session goal (produce / explore) | 1 |
|
|
394
422
|
| **CP-AP-1** | Conventions Checked | Project conventions loaded or asked; `### Project Conventions` section in `CLAUDE.md` / `CODEBUDDY.md` up to date | 1 |
|
|
395
|
-
| **CP-AP-1.5** | Infrastructure Checked | Infrastructure config loaded or asked; `### Infrastructure` section in `CLAUDE.md` / `CODEBUDDY.md` addressed — configured or explicitly deferred | 1-2 |
|
|
423
|
+
| **CP-AP-1.5** | Infrastructure Checked | Infrastructure config loaded or asked; `### Infrastructure` section in `CLAUDE.md` / `CODEBUDDY.md` addressed — database, deployment **and cloud services** each configured or explicitly deferred | 1-2 |
|
|
396
424
|
| **CP-AP-2** | Vision Summary | Goal/users/differentiators confirmed by user. For brownfield: existing purpose confirmed or refined. | 1-2 |
|
|
397
425
|
| **CP-AP-3** | Frontend Design Evaluated | For frontend projects: checked for existing UI/UX design system; user was asked if missing. **Auto-pass** for backend-only or non-UI projects. | 2 |
|
|
398
426
|
| **CP-AP-4** | Project Brief Accumulated | `.prizmkit/plans/project-brief.md` exists at `.prizmkit/plans/` with at least 3 ideas listed. For brownfield: already-implemented items marked `[x]` count toward this total. | 3 |
|
|
@@ -405,7 +433,7 @@ After Phase 2, if framework-shaping architecture decisions emerged during planni
|
|
|
405
433
|
**How it works**:
|
|
406
434
|
1. If decisions are captured → append to `CLAUDE.md` / `CODEBUDDY.md` under `### Architecture Decisions` section
|
|
407
435
|
2. Downstream skills (feature-planner, prizmkit-plan, etc.) read `CLAUDE.md` / `CODEBUDDY.md` as standard context, so they automatically receive these decisions
|
|
408
|
-
3. Do NOT write directly to `.prizm-docs/root.prizm` — that file is maintained by `prizmkit-prizm-docs` and `prizmkit-retrospective`. If the project needs `.prizm-docs/`, recommend the user run `prizmkit-prizm-docs` init after planning.
|
|
436
|
+
3. Do NOT write directly to `.prizmkit/prizm-docs/root.prizm` — that file is maintained by `prizmkit-prizm-docs` and `prizmkit-retrospective`. If the project needs `.prizmkit/prizm-docs/`, recommend the user run `prizmkit-prizm-docs` init after planning.
|
|
409
437
|
|
|
410
438
|
## Project Brief Accumulation
|
|
411
439
|
|
|
@@ -212,11 +212,11 @@ AskUserQuestion:
|
|
|
212
212
|
|
|
213
213
|
**Goal**: Locate affected code, identify root cause, classify severity.
|
|
214
214
|
|
|
215
|
-
> **Triage**: Classify error into: Runtime / Network / Auth / Data / Resource / Logic / Config / External. Check `.prizm-docs/` TRAPS for known patterns first. If a TRAPS match is found, use documented solution and reference the specific `.prizm-docs/` entry. If no match, trace the call chain from the stack frame to identify root cause from first principles.
|
|
215
|
+
> **Triage**: Classify error into: Runtime / Network / Auth / Data / Resource / Logic / Config / External. Check `.prizmkit/prizm-docs/` TRAPS for known patterns first. If a TRAPS match is found, use documented solution and reference the specific `.prizmkit/prizm-docs/` entry. If no match, trace the call chain from the stack frame to identify root cause from first principles.
|
|
216
216
|
|
|
217
|
-
1. **Read project context**: `.prizm-docs/root.prizm` → relevant L1/L2 docs for affected modules
|
|
217
|
+
1. **Read project context**: `.prizmkit/prizm-docs/root.prizm` → relevant L1/L2 docs for affected modules
|
|
218
218
|
2. **Locate affected code**: read the files mentioned in the error/stack trace or identified during diagnosis
|
|
219
|
-
3. **Check known issues**: search `.prizm-docs/` TRAPS sections for matching patterns
|
|
219
|
+
3. **Check known issues**: search `.prizmkit/prizm-docs/` TRAPS sections for matching patterns
|
|
220
220
|
4. **If database-related**: read existing schema/model files to understand the data layer
|
|
221
221
|
```bash
|
|
222
222
|
find . -maxdepth 4 -type f \( -name "*.prisma" -o -name "*.sql" -o -path "*/migrations/*" -o -path "*/models/*" -o -name "schema.*" -o -name "*.entity.*" \) -not -path '*/node_modules/*' -not -path '*/.git/*' | head -20
|
|
@@ -259,7 +259,7 @@ If the bug is hard to reproduce automatically (e.g. environment-specific):
|
|
|
259
259
|
1. **Implement the fix**:
|
|
260
260
|
- Change the minimum amount of code to fix the root cause
|
|
261
261
|
- Do NOT refactor or add unrelated improvements — fix the bug only
|
|
262
|
-
- Follow existing code conventions (read from `.prizm-docs/` RULES/PATTERNS)
|
|
262
|
+
- Follow existing code conventions (read from `.prizmkit/prizm-docs/` RULES/PATTERNS)
|
|
263
263
|
- If the fix involves database changes: read existing schema first, follow existing naming/constraint conventions
|
|
264
264
|
2. **Run the reproduction test** → must **pass** (green)
|
|
265
265
|
3. **Run the full module test suite** → must pass (no regressions)
|
|
@@ -316,7 +316,7 @@ If user reports the fix is NOT working:
|
|
|
316
316
|
- Commit message: `fix(<scope>): <description>`
|
|
317
317
|
- Include both fix code and reproduction test
|
|
318
318
|
- Do NOT push (user decides when to push)
|
|
319
|
-
- `/prizmkit-committer` is a pure commit tool — it does NOT modify `.prizm-docs/` or any project files
|
|
319
|
+
- `/prizmkit-committer` is a pure commit tool — it does NOT modify `.prizmkit/prizm-docs/` or any project files
|
|
320
320
|
- No `/prizmkit-retrospective` — bug fixes are incomplete features, not new architecture worth documenting
|
|
321
321
|
2. **Ask merge preference**:
|
|
322
322
|
```
|
|
@@ -392,7 +392,7 @@ Only 2 artifact files per bug, consistent with the pipeline convention.
|
|
|
392
392
|
| Cannot reproduce the bug | Ask for more context, try alternative reproduction |
|
|
393
393
|
| Fix causes regressions | Revert, analyze, retry (max 3 rounds) |
|
|
394
394
|
| Root cause unclear after investigation | Present findings, ask user for guidance |
|
|
395
|
-
| Affected files are in unfamiliar module | Read `.prizm-docs/` L1/L2 for that module first |
|
|
395
|
+
| Affected files are in unfamiliar module | Read `.prizmkit/prizm-docs/` L1/L2 for that module first |
|
|
396
396
|
| Branch conflict during merge | Show conflict, ask user to resolve or keep branch |
|
|
397
397
|
|
|
398
398
|
## HANDOFF
|
|
@@ -107,13 +107,13 @@ Gather project metadata from the project's own configuration and documentation
|
|
|
107
107
|
|
|
108
108
|
1. **Identify project**: Read project name and description from these sources (first match wins):
|
|
109
109
|
- `.prizmkit/config.json` (`project_name`, `description` fields)
|
|
110
|
-
- `.prizm-docs/root.prizm` (project overview section)
|
|
110
|
+
- `.prizmkit/prizm-docs/root.prizm` (project overview section)
|
|
111
111
|
- `CLAUDE.md` or `CODEBUDDY.md` (project instructions)
|
|
112
112
|
- `package.json` / `pyproject.toml` / `Cargo.toml` (name + description fields)
|
|
113
113
|
- If none found, ask the user
|
|
114
114
|
2. **Identify tech stack**: Read from these sources (first match wins):
|
|
115
115
|
- `.prizmkit/config.json` `tech_stack` (preferred — contains language, frameworks, DB, etc.)
|
|
116
|
-
- `.prizm-docs/root.prizm` (architecture section)
|
|
116
|
+
- `.prizmkit/prizm-docs/root.prizm` (architecture section)
|
|
117
117
|
- Auto-detect from project files (`package.json`, `requirements.txt`, `go.mod`, etc.)
|
|
118
118
|
- If none found, ask the user
|
|
119
119
|
3. **Identify testing framework**: Read from `.prizmkit/config.json` `tech_stack.testing`, or auto-detect from package.json/requirements.txt/etc., or ask user
|
|
@@ -223,7 +223,7 @@ Only proceed to Phase 5 after user confirms.
|
|
|
223
223
|
|
|
224
224
|
### Phase 5: Generate & Validate
|
|
225
225
|
|
|
226
|
-
1. **Generate `.prizmkit/plans/bug-fix-list.json`**: Conform to
|
|
226
|
+
1. **Generate `.prizmkit/plans/bug-fix-list.json`**: Conform to `.prizmkit/dev-pipeline/templates/bug-fix-list-schema.json`
|
|
227
227
|
2. **Validate against schema**: Run `python3 ${SKILL_DIR}/scripts/validate-bug-list.py .prizmkit/plans/bug-fix-list.json --feature-list .prizmkit/plans/feature-list.json`. If the script is unavailable, use the checklist in `${SKILL_DIR}/references/schema-validation.md`.
|
|
228
228
|
3. **Write file** to `.prizmkit/plans/` (or user-specified path)
|
|
229
229
|
4. **Output**: File path, summary, and next steps
|
|
@@ -287,7 +287,7 @@ Batch-parse failed test output:
|
|
|
287
287
|
Validate existing `.prizmkit/plans/bug-fix-list.json`:
|
|
288
288
|
|
|
289
289
|
1. Check JSON syntax
|
|
290
|
-
2. Validate against
|
|
290
|
+
2. Validate against `.prizmkit/dev-pipeline/templates/bug-fix-list-schema.json`
|
|
291
291
|
3. Check for:
|
|
292
292
|
- Duplicate IDs
|
|
293
293
|
- Missing required fields
|
|
@@ -351,6 +351,6 @@ Common errors handled inline:
|
|
|
351
351
|
|
|
352
352
|
## Output
|
|
353
353
|
|
|
354
|
-
- `.prizmkit/plans/bug-fix-list.json` conforming to
|
|
354
|
+
- `.prizmkit/plans/bug-fix-list.json` conforming to `.prizmkit/dev-pipeline/templates/bug-fix-list-schema.json`
|
|
355
355
|
- Validation report (if validation run)
|
|
356
356
|
- Summary report (if summary run)
|
|
@@ -11,8 +11,8 @@ Launch the autonomous bug fix pipeline from within an AI CLI conversation. Suppo
|
|
|
11
11
|
|
|
12
12
|
Three execution modes are available. The user chooses one before configuring other options:
|
|
13
13
|
|
|
14
|
-
1. **Foreground** (recommended) —
|
|
15
|
-
2. **Background daemon** —
|
|
14
|
+
1. **Foreground** (recommended) — `.prizmkit/dev-pipeline/run-bugfix.sh run`. Visible output, direct error feedback, no orphaned processes.
|
|
15
|
+
2. **Background daemon** — `.prizmkit/dev-pipeline/launch-bugfix-daemon.sh`. Runs fully detached, survives AI CLI session closure.
|
|
16
16
|
3. **Manual** — Display the assembled command(s) only. Do not execute anything. User runs them on their own.
|
|
17
17
|
|
|
18
18
|
**Background mode documentation**: When the user chooses background/daemon mode, record the choice and PID in `.prizmkit/bugfix-pipeline-run.log` (append-only) with timestamp, so the decision is traceable:
|
|
@@ -47,7 +47,7 @@ Three execution modes are available. The user chooses one before configuring oth
|
|
|
47
47
|
|
|
48
48
|
Before any action, validate:
|
|
49
49
|
|
|
50
|
-
1. **bugfix pipeline exists**: Confirm
|
|
50
|
+
1. **bugfix pipeline exists**: Confirm `.prizmkit/dev-pipeline/launch-bugfix-daemon.sh` and `.prizmkit/dev-pipeline/run-bugfix.sh` are present and executable
|
|
51
51
|
2. **For start**: `.prizmkit/plans/bug-fix-list.json` must exist in `.prizmkit/plans/` (or user-specified path)
|
|
52
52
|
3. **Dependencies**: `jq`, `python3`, AI CLI (`cbc` or `claude`) must be in PATH
|
|
53
53
|
4. **Browser tools** (optional): If any bug has `browser_interaction` field, check the corresponding tool is available. Bugs may specify `tool: "playwright-cli"`, `tool: "opencli"`, or `tool: "auto"` (AI chooses at runtime).
|
|
@@ -80,7 +80,7 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
80
80
|
|
|
81
81
|
2. **Check not already running**:
|
|
82
82
|
```bash
|
|
83
|
-
dev-pipeline/launch-bugfix-daemon.sh status 2>/dev/null
|
|
83
|
+
.prizmkit/dev-pipeline/launch-bugfix-daemon.sh status 2>/dev/null
|
|
84
84
|
```
|
|
85
85
|
If running, inform user and ask: "Bugfix pipeline is already running. Want to restart it, check status, or view logs?"
|
|
86
86
|
|
|
@@ -106,7 +106,7 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
106
106
|
```
|
|
107
107
|
If pipeline state already exists, use the status command instead:
|
|
108
108
|
```bash
|
|
109
|
-
python3 dev-pipeline/scripts/update-bug-status.py \
|
|
109
|
+
python3 .prizmkit/dev-pipeline/scripts/update-bug-status.py \
|
|
110
110
|
--bug-list .prizmkit/plans/bug-fix-list.json \
|
|
111
111
|
--state-dir .prizmkit/state/bugfix \
|
|
112
112
|
--action status 2>/dev/null
|
|
@@ -196,34 +196,34 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
196
196
|
|
|
197
197
|
**Foreground command:**
|
|
198
198
|
```bash
|
|
199
|
-
VERBOSE=1 dev-pipeline/run-bugfix.sh run .prizmkit/plans/bug-fix-list.json
|
|
199
|
+
VERBOSE=1 .prizmkit/dev-pipeline/run-bugfix.sh run .prizmkit/plans/bug-fix-list.json
|
|
200
200
|
```
|
|
201
201
|
With all options:
|
|
202
202
|
```bash
|
|
203
203
|
VERBOSE=1 MAX_RETRIES=5 SESSION_TIMEOUT=3600 ENABLE_DEPLOY=1 \
|
|
204
|
-
dev-pipeline/run-bugfix.sh run .prizmkit/plans/bug-fix-list.json
|
|
204
|
+
.prizmkit/dev-pipeline/run-bugfix.sh run .prizmkit/plans/bug-fix-list.json
|
|
205
205
|
```
|
|
206
206
|
|
|
207
207
|
**Background daemon command:**
|
|
208
208
|
```bash
|
|
209
|
-
dev-pipeline/launch-bugfix-daemon.sh start .prizmkit/plans/bug-fix-list.json --env "VERBOSE=1"
|
|
209
|
+
.prizmkit/dev-pipeline/launch-bugfix-daemon.sh start .prizmkit/plans/bug-fix-list.json --env "VERBOSE=1"
|
|
210
210
|
```
|
|
211
211
|
With all options:
|
|
212
212
|
```bash
|
|
213
|
-
dev-pipeline/launch-bugfix-daemon.sh start .prizmkit/plans/bug-fix-list.json \
|
|
213
|
+
.prizmkit/dev-pipeline/launch-bugfix-daemon.sh start .prizmkit/plans/bug-fix-list.json \
|
|
214
214
|
--env "VERBOSE=1 MAX_RETRIES=5 ENABLE_DEPLOY=1"
|
|
215
215
|
```
|
|
216
216
|
|
|
217
217
|
**Manual mode**: Print the assembled command(s) and **stop here**. Do not execute anything. Do not proceed to step 7.
|
|
218
218
|
```
|
|
219
219
|
# To run in foreground:
|
|
220
|
-
VERBOSE=1 dev-pipeline/run-bugfix.sh run .prizmkit/plans/bug-fix-list.json
|
|
220
|
+
VERBOSE=1 .prizmkit/dev-pipeline/run-bugfix.sh run .prizmkit/plans/bug-fix-list.json
|
|
221
221
|
|
|
222
222
|
# To run in background (detached):
|
|
223
|
-
dev-pipeline/launch-bugfix-daemon.sh start .prizmkit/plans/bug-fix-list.json --env "VERBOSE=1"
|
|
223
|
+
.prizmkit/dev-pipeline/launch-bugfix-daemon.sh start .prizmkit/plans/bug-fix-list.json --env "VERBOSE=1"
|
|
224
224
|
|
|
225
225
|
# To check status:
|
|
226
|
-
dev-pipeline/run-bugfix.sh status .prizmkit/plans/bug-fix-list.json
|
|
226
|
+
.prizmkit/dev-pipeline/run-bugfix.sh status .prizmkit/plans/bug-fix-list.json
|
|
227
227
|
```
|
|
228
228
|
|
|
229
229
|
7. **Confirm and launch** (Foreground and Background only — Manual mode ends at step 6):
|
|
@@ -237,12 +237,12 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
237
237
|
**If foreground**: Pipeline runs to completion in the terminal. After it finishes:
|
|
238
238
|
- Summarize results: total bugs, fixed, failed, skipped
|
|
239
239
|
- If all fixed: each bug session has already run `prizmkit-retrospective` internally (structural sync by default; full retrospective when the fix changed interfaces, dependencies, or observable behavior). Ask user what's next.
|
|
240
|
-
- If some failed: show failed bug IDs and suggest
|
|
240
|
+
- If some failed: show failed bug IDs and suggest `.prizmkit/dev-pipeline/reset-bug.sh <B-XXX> --clean --run` for a fresh retry
|
|
241
241
|
|
|
242
242
|
**If background daemon**:
|
|
243
243
|
1. Verify launch:
|
|
244
244
|
```bash
|
|
245
|
-
dev-pipeline/launch-bugfix-daemon.sh status
|
|
245
|
+
.prizmkit/dev-pipeline/launch-bugfix-daemon.sh status
|
|
246
246
|
```
|
|
247
247
|
2. Start log monitoring — Use the Bash tool with `run_in_background: true`:
|
|
248
248
|
```bash
|
|
@@ -260,12 +260,12 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
260
260
|
|
|
261
261
|
1. **Check daemon status**:
|
|
262
262
|
```bash
|
|
263
|
-
dev-pipeline/launch-bugfix-daemon.sh status
|
|
263
|
+
.prizmkit/dev-pipeline/launch-bugfix-daemon.sh status
|
|
264
264
|
```
|
|
265
265
|
|
|
266
266
|
2. **Show bug-level progress**:
|
|
267
267
|
```bash
|
|
268
|
-
python3 dev-pipeline/scripts/update-bug-status.py \
|
|
268
|
+
python3 .prizmkit/dev-pipeline/scripts/update-bug-status.py \
|
|
269
269
|
--bug-list .prizmkit/plans/bug-fix-list.json \
|
|
270
270
|
--state-dir .prizmkit/state/bugfix \
|
|
271
271
|
--action status
|
|
@@ -284,12 +284,12 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
284
284
|
|
|
285
285
|
1. **Stop the daemon**:
|
|
286
286
|
```bash
|
|
287
|
-
dev-pipeline/launch-bugfix-daemon.sh stop
|
|
287
|
+
.prizmkit/dev-pipeline/launch-bugfix-daemon.sh stop
|
|
288
288
|
```
|
|
289
289
|
|
|
290
290
|
2. **Verify stopped**:
|
|
291
291
|
```bash
|
|
292
|
-
dev-pipeline/launch-bugfix-daemon.sh status 2>/dev/null || true
|
|
292
|
+
.prizmkit/dev-pipeline/launch-bugfix-daemon.sh status 2>/dev/null || true
|
|
293
293
|
```
|
|
294
294
|
|
|
295
295
|
3. **Inform user**: "Bugfix pipeline stopped. State is preserved -- you can resume later with 'start bug fix' and it will pick up where it left off."
|
|
@@ -300,7 +300,7 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
300
300
|
|
|
301
301
|
1. **Check if running**:
|
|
302
302
|
```bash
|
|
303
|
-
dev-pipeline/launch-bugfix-daemon.sh status 2>/dev/null
|
|
303
|
+
.prizmkit/dev-pipeline/launch-bugfix-daemon.sh status 2>/dev/null
|
|
304
304
|
```
|
|
305
305
|
|
|
306
306
|
2. **If running** -- Start live tail with Bash tool `run_in_background: true`:
|
|
@@ -328,7 +328,7 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
328
328
|
When user says "retry B-001":
|
|
329
329
|
|
|
330
330
|
```bash
|
|
331
|
-
dev-pipeline/reset-bug.sh B-001 --clean --run .prizmkit/plans/bug-fix-list.json
|
|
331
|
+
.prizmkit/dev-pipeline/reset-bug.sh B-001 --clean --run .prizmkit/plans/bug-fix-list.json
|
|
332
332
|
```
|
|
333
333
|
|
|
334
334
|
**Note:** `reset-bug.sh --clean --run` performs a full clean (deletes session history and artifacts) before retrying — this gives a fresh start.
|
|
@@ -347,7 +347,7 @@ dev-pipeline/reset-bug.sh B-001 --clean --run .prizmkit/plans/bug-fix-list.json
|
|
|
347
347
|
| `playwright-cli` not installed | Browser verification skipped for playwright bugs (non-blocking). Suggest: `npm install -g @playwright/cli@latest && playwright-cli install --skills` |
|
|
348
348
|
| `opencli` not installed | Browser verification skipped for opencli bugs (non-blocking). Install opencli for Chrome session-based browser verification |
|
|
349
349
|
| Deploy session failed | Pipeline completed but deploy session exited non-zero. Check `.prizmkit/state/bugfix/deploy/<session_id>/logs/session.log`. Retry manually: `/prizmkit-deploy`. |
|
|
350
|
-
| Permission denied on script | Run `chmod +x dev-pipeline/launch-bugfix-daemon.sh dev-pipeline/run-bugfix.sh` |
|
|
350
|
+
| Permission denied on script | Run `chmod +x .prizmkit/dev-pipeline/launch-bugfix-daemon.sh .prizmkit/dev-pipeline/run-bugfix.sh` |
|
|
351
351
|
|
|
352
352
|
### Integration Notes
|
|
353
353
|
|
|
@@ -11,8 +11,8 @@ Launch the autonomous development pipeline from within an AI CLI conversation. T
|
|
|
11
11
|
|
|
12
12
|
Three execution modes are available. The user chooses one before configuring other options:
|
|
13
13
|
|
|
14
|
-
1. **Foreground** (recommended) —
|
|
15
|
-
2. **Background daemon** —
|
|
14
|
+
1. **Foreground** (recommended) — `.prizmkit/dev-pipeline/run-feature.sh run`. Visible output, direct error feedback, no orphaned processes.
|
|
15
|
+
2. **Background daemon** — `.prizmkit/dev-pipeline/launch-feature-daemon.sh`. Runs fully detached, survives AI CLI session closure.
|
|
16
16
|
3. **Manual** — Display the assembled command(s) only. Do not execute anything. User runs them on their own.
|
|
17
17
|
|
|
18
18
|
### When to Use
|
|
@@ -48,7 +48,7 @@ Three execution modes are available. The user chooses one before configuring oth
|
|
|
48
48
|
|
|
49
49
|
Before any action, validate:
|
|
50
50
|
|
|
51
|
-
1. **dev-pipeline exists**: Confirm
|
|
51
|
+
1. **dev-pipeline exists**: Confirm `.prizmkit/dev-pipeline/launch-feature-daemon.sh` is present and executable
|
|
52
52
|
2. **For start**: `.prizmkit/plans/feature-list.json` must exist in `.prizmkit/plans/` (or user-specified path)
|
|
53
53
|
3. **Dependencies**: `jq`, `python3`, AI CLI (`cbc` or `claude`) must be in PATH
|
|
54
54
|
4. **Python version**: Requires Python 3.8+ for dev-pipeline scripts
|
|
@@ -82,7 +82,7 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
82
82
|
|
|
83
83
|
2. **Check not already running**:
|
|
84
84
|
```bash
|
|
85
|
-
dev-pipeline/launch-feature-daemon.sh status 2>/dev/null
|
|
85
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh status 2>/dev/null
|
|
86
86
|
```
|
|
87
87
|
If running, inform user and ask: "Pipeline is already running. Want to restart it, check status, or view logs?"
|
|
88
88
|
|
|
@@ -100,7 +100,7 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
100
100
|
```
|
|
101
101
|
If pipeline state already exists, use the status command instead:
|
|
102
102
|
```bash
|
|
103
|
-
python3 dev-pipeline/scripts/update-feature-status.py \
|
|
103
|
+
python3 .prizmkit/dev-pipeline/scripts/update-feature-status.py \
|
|
104
104
|
--feature-list .prizmkit/plans/feature-list.json \
|
|
105
105
|
--state-dir .prizmkit/state/features \
|
|
106
106
|
--action status 2>/dev/null
|
|
@@ -216,34 +216,34 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
216
216
|
|
|
217
217
|
**Foreground command:**
|
|
218
218
|
```bash
|
|
219
|
-
VERBOSE=1 dev-pipeline/run-feature.sh run .prizmkit/plans/feature-list.json
|
|
219
|
+
VERBOSE=1 .prizmkit/dev-pipeline/run-feature.sh run .prizmkit/plans/feature-list.json
|
|
220
220
|
```
|
|
221
221
|
With all options:
|
|
222
222
|
```bash
|
|
223
223
|
VERBOSE=1 ENABLE_CRITIC=true MAX_RETRIES=5 SESSION_TIMEOUT=3600 ENABLE_DEPLOY=1 \
|
|
224
|
-
dev-pipeline/run-feature.sh run .prizmkit/plans/feature-list.json --features F-001:F-005
|
|
224
|
+
.prizmkit/dev-pipeline/run-feature.sh run .prizmkit/plans/feature-list.json --features F-001:F-005
|
|
225
225
|
```
|
|
226
226
|
|
|
227
227
|
**Background daemon command:**
|
|
228
228
|
```bash
|
|
229
|
-
dev-pipeline/launch-feature-daemon.sh start .prizmkit/plans/feature-list.json --env "VERBOSE=1"
|
|
229
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh start .prizmkit/plans/feature-list.json --env "VERBOSE=1"
|
|
230
230
|
```
|
|
231
231
|
With all options:
|
|
232
232
|
```bash
|
|
233
|
-
dev-pipeline/launch-feature-daemon.sh start .prizmkit/plans/feature-list.json --features F-001:F-005 \
|
|
233
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh start .prizmkit/plans/feature-list.json --features F-001:F-005 \
|
|
234
234
|
--env "VERBOSE=1 ENABLE_CRITIC=true MAX_RETRIES=5 ENABLE_DEPLOY=1"
|
|
235
235
|
```
|
|
236
236
|
|
|
237
237
|
**Manual mode**: Print the assembled command(s) and **stop here**. Do not execute anything. Do not proceed to step 8.
|
|
238
238
|
```
|
|
239
239
|
# To run in foreground:
|
|
240
|
-
VERBOSE=1 dev-pipeline/run-feature.sh run .prizmkit/plans/feature-list.json
|
|
240
|
+
VERBOSE=1 .prizmkit/dev-pipeline/run-feature.sh run .prizmkit/plans/feature-list.json
|
|
241
241
|
|
|
242
242
|
# To run in background (detached):
|
|
243
|
-
dev-pipeline/launch-feature-daemon.sh start .prizmkit/plans/feature-list.json --env "VERBOSE=1"
|
|
243
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh start .prizmkit/plans/feature-list.json --env "VERBOSE=1"
|
|
244
244
|
|
|
245
245
|
# To check status:
|
|
246
|
-
dev-pipeline/run-feature.sh status .prizmkit/plans/feature-list.json
|
|
246
|
+
.prizmkit/dev-pipeline/run-feature.sh status .prizmkit/plans/feature-list.json
|
|
247
247
|
```
|
|
248
248
|
|
|
249
249
|
8. **Confirm and launch** (Foreground and Background only — Manual mode ends at step 7):
|
|
@@ -263,7 +263,7 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
263
263
|
**If background daemon**:
|
|
264
264
|
1. Verify launch:
|
|
265
265
|
```bash
|
|
266
|
-
dev-pipeline/launch-feature-daemon.sh status
|
|
266
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh status
|
|
267
267
|
```
|
|
268
268
|
2. Start log monitoring — Use the Bash tool with `run_in_background: true`:
|
|
269
269
|
```bash
|
|
@@ -281,12 +281,12 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
281
281
|
|
|
282
282
|
1. **Check daemon status**:
|
|
283
283
|
```bash
|
|
284
|
-
dev-pipeline/launch-feature-daemon.sh status
|
|
284
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh status
|
|
285
285
|
```
|
|
286
286
|
|
|
287
287
|
2. **Show feature-level progress**:
|
|
288
288
|
```bash
|
|
289
|
-
python3 dev-pipeline/scripts/update-feature-status.py \
|
|
289
|
+
python3 .prizmkit/dev-pipeline/scripts/update-feature-status.py \
|
|
290
290
|
--feature-list .prizmkit/plans/feature-list.json \
|
|
291
291
|
--state-dir .prizmkit/state/features \
|
|
292
292
|
--action status
|
|
@@ -305,12 +305,12 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
305
305
|
|
|
306
306
|
1. **Stop the daemon**:
|
|
307
307
|
```bash
|
|
308
|
-
dev-pipeline/launch-feature-daemon.sh stop
|
|
308
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh stop
|
|
309
309
|
```
|
|
310
310
|
|
|
311
311
|
2. **Verify stopped**:
|
|
312
312
|
```bash
|
|
313
|
-
dev-pipeline/launch-feature-daemon.sh status 2>/dev/null || true
|
|
313
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh status 2>/dev/null || true
|
|
314
314
|
```
|
|
315
315
|
|
|
316
316
|
3. **Inform user**: "Pipeline stopped. State is preserved -- you can resume later with 'start pipeline' and it will pick up where it left off."
|
|
@@ -321,7 +321,7 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
321
321
|
|
|
322
322
|
1. **Check if running**:
|
|
323
323
|
```bash
|
|
324
|
-
dev-pipeline/launch-feature-daemon.sh status 2>/dev/null
|
|
324
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh status 2>/dev/null
|
|
325
325
|
```
|
|
326
326
|
|
|
327
327
|
2. **If running** -- Start live tail with Bash tool `run_in_background: true`:
|
|
@@ -349,7 +349,7 @@ Detect user intent from their message, then follow the corresponding workflow:
|
|
|
349
349
|
When user says "retry F-003" or "clean retry F-003":
|
|
350
350
|
|
|
351
351
|
```bash
|
|
352
|
-
dev-pipeline/reset-feature.sh F-003 --clean --run .prizmkit/plans/feature-list.json
|
|
352
|
+
.prizmkit/dev-pipeline/reset-feature.sh F-003 --clean --run .prizmkit/plans/feature-list.json
|
|
353
353
|
```
|
|
354
354
|
|
|
355
355
|
Notes:
|
|
@@ -406,10 +406,10 @@ After pipeline completion, if features have `browser_interaction` fields and the
|
|
|
406
406
|
| PID file stale (process dead) | `launch-feature-daemon.sh` auto-cleans, retry start |
|
|
407
407
|
| Launch failed (process died immediately) | Show last 20 lines of log: `tail -20 .prizmkit/state/features/pipeline-daemon.log` |
|
|
408
408
|
| Feature stuck/blocked | Use `reset-feature.sh <F-XXX> --clean --run` for a fresh retry |
|
|
409
|
-
| All features blocked/failed | Show status, suggest daemon-safe recovery:
|
|
409
|
+
| All features blocked/failed | Show status, suggest daemon-safe recovery: `.prizmkit/dev-pipeline/reset-feature.sh <F-XXX> --clean --run .prizmkit/plans/feature-list.json` |
|
|
410
410
|
| `playwright-cli` not installed | Browser verification skipped for playwright features (non-blocking). Suggest: `npm install -g @playwright/cli@latest && playwright-cli install --skills` |
|
|
411
411
|
| `opencli` not installed | Browser verification skipped for opencli features (non-blocking). Install opencli for Chrome session-based browser verification |
|
|
412
|
-
| Permission denied on script | Run `chmod +x dev-pipeline/launch-feature-daemon.sh dev-pipeline/run-feature.sh` |
|
|
412
|
+
| Permission denied on script | Run `chmod +x .prizmkit/dev-pipeline/launch-feature-daemon.sh .prizmkit/dev-pipeline/run-feature.sh` |
|
|
413
413
|
| Pipeline stop failed (process won't die) | Process may be stuck in I/O wait. Try `kill -9 <PID>` manually. Check for orphaned child processes with `ps aux \| grep claude` |
|
|
414
414
|
| Deploy session failed | Pipeline completed but deploy session exited non-zero. Check `.prizmkit/state/features/deploy/<session_id>/logs/session.log`. Retry manually: `/prizmkit-deploy`. |
|
|
415
415
|
| `.env.local` missing or incomplete | Warn: database connection variables not found. Suggest creating env file with required connection variables for the project's database |
|
|
@@ -107,12 +107,12 @@ Do NOT use this skill when:
|
|
|
107
107
|
## Prerequisites
|
|
108
108
|
|
|
109
109
|
Before questions, check optional context files (never block if absent):
|
|
110
|
-
- `.prizm-docs/root.prizm` (architecture/project context — typically created by app-planner with captured decisions)
|
|
110
|
+
- `.prizmkit/prizm-docs/root.prizm` (architecture/project context — typically created by app-planner with captured decisions)
|
|
111
111
|
- `.prizmkit/config.json` (existing stack preferences and detected tech stack)
|
|
112
112
|
- `.prizmkit/plans/project-brief.md` (project context from app-planner, if available)
|
|
113
113
|
- existing `.prizmkit/plans/feature-list.json` (required for incremental mode)
|
|
114
114
|
- `CLAUDE.md` / `CODEBUDDY.md`
|
|
115
|
-
- If `.prizm-docs/root.prizm` is absent and the project has existing source code, scan the directory structure to understand the codebase layout:
|
|
115
|
+
- If `.prizmkit/prizm-docs/root.prizm` is absent and the project has existing source code, scan the directory structure to understand the codebase layout:
|
|
116
116
|
```bash
|
|
117
117
|
find . -maxdepth 2 -type d -not -path '*/node_modules/*' -not -path '*/.git/*' -not -path '*/dist/*' -not -path '*/build/*' -not -path '*/__pycache__/*' -not -path '*/vendor/*' | sed -e 's;[^/]*/;|____;g;s;____|; |;g'
|
|
118
118
|
```
|
|
@@ -144,7 +144,7 @@ The `global_context` object in `.prizmkit/plans/feature-list.json` provides tech
|
|
|
144
144
|
- `language`, `frontend_framework`, `backend_framework`, `database`, `testing_strategy` (all recommended)
|
|
145
145
|
- Additional: `frontend_styling`, `orm`, `bundler`, `runtime`
|
|
146
146
|
|
|
147
|
-
All `global_context` fields are optional — including recommended fields improves downstream code generation quality. See
|
|
147
|
+
All `global_context` fields are optional — including recommended fields improves downstream code generation quality. See `.prizmkit/dev-pipeline/templates/feature-list-schema.json` for the full schema definition.
|
|
148
148
|
|
|
149
149
|
|
|
150
150
|
---
|
|
@@ -183,7 +183,7 @@ Execute the planning workflow in conversation mode with mandatory checkpoints:
|
|
|
183
183
|
> "Do you have any reference materials I should review before planning? This can include:
|
|
184
184
|
> - **Code paths** — files or directories I should read to understand existing implementation
|
|
185
185
|
> - **Documents** — design docs, PRDs, API specs, architecture proposals, or internal wiki pages
|
|
186
|
-
> - **Knowledge docs** — `.prizm-docs/` files, README files, or project-specific documentation
|
|
186
|
+
> - **Knowledge docs** — `.prizmkit/prizm-docs/` files, README files, or project-specific documentation
|
|
187
187
|
> - **Images** — wireframes, mockups, architecture diagrams, or screenshots
|
|
188
188
|
> - **Web links** — reference implementations, API documentation pages, or relevant articles
|
|
189
189
|
>
|
|
@@ -291,7 +291,7 @@ A feature is **exempt** when ANY true:
|
|
|
291
291
|
|
|
292
292
|
## Output Rules
|
|
293
293
|
|
|
294
|
-
`.prizmkit/plans/feature-list.json` must conform to
|
|
294
|
+
`.prizmkit/plans/feature-list.json` must conform to `.prizmkit/dev-pipeline/templates/feature-list-schema.json` (`$schema` = `dev-pipeline-feature-list-v1`).
|
|
295
295
|
|
|
296
296
|
Key requirements:
|
|
297
297
|
- non-empty `features` array
|
|
@@ -124,7 +124,7 @@ Ask the user to describe what they want to build. Listen for:
|
|
|
124
124
|
Ask:
|
|
125
125
|
1. **Existing code** — "Is there existing code I should look at? Which files or directories are relevant?"
|
|
126
126
|
2. **Design documents** — "Do you have any design docs, wireframes, API specs, or PRDs I should read?"
|
|
127
|
-
3. **Knowledge docs** — "Are there related `.prizm-docs/`, README files, or internal wiki pages?"
|
|
127
|
+
3. **Knowledge docs** — "Are there related `.prizmkit/prizm-docs/`, README files, or internal wiki pages?"
|
|
128
128
|
4. **Reference projects** — "Any reference implementations or similar projects I should look at for inspiration?"
|
|
129
129
|
|
|
130
130
|
Record everything the user provides — these become inputs for Step 1.3.
|
|
@@ -139,7 +139,7 @@ Record everything the user provides — these become inputs for Step 1.3.
|
|
|
139
139
|
|-------|-------------|---------|
|
|
140
140
|
| Agent A | User-provided code paths — read existing source files | Understand current architecture, patterns, conventions |
|
|
141
141
|
| Agent B | User-provided documents — design docs, specs, PRDs | Understand intended requirements and constraints |
|
|
142
|
-
| Agent C | `.prizm-docs/` — root.prizm, L1/L2 docs, TRAPS, RULES | Understand existing architecture knowledge and known pitfalls |
|
|
142
|
+
| Agent C | `.prizmkit/prizm-docs/` — root.prizm, L1/L2 docs, TRAPS, RULES | Understand existing architecture knowledge and known pitfalls |
|
|
143
143
|
| Agent D | Database/schema files + `.prizmkit/config.json` | Understand data model and tech stack preferences |
|
|
144
144
|
|
|
145
145
|
**Also gather** (can be included in any agent's task):
|
|
@@ -156,7 +156,7 @@ Record everything the user provides — these become inputs for Step 1.3.
|
|
|
156
156
|
Present what you learned from the parallel reading:
|
|
157
157
|
- Current project structure and patterns (with specific references)
|
|
158
158
|
- Existing data model and schema conventions
|
|
159
|
-
- Known TRAPS and pitfalls from `.prizm-docs/`
|
|
159
|
+
- Known TRAPS and pitfalls from `.prizmkit/prizm-docs/`
|
|
160
160
|
- Integration points with existing modules
|
|
161
161
|
|
|
162
162
|
Then ask targeted questions based on what you read. **Adapt question depth to the feature complexity** — a simple CRUD feature needs fewer questions than a real-time collaboration system.
|
|
@@ -251,7 +251,7 @@ Once brainstorming is complete, produce a structured requirements summary:
|
|
|
251
251
|
- [Requirement]
|
|
252
252
|
|
|
253
253
|
### Reference Materials Reviewed
|
|
254
|
-
- [List of code paths, documents, .prizm-docs/ files that were read]
|
|
254
|
+
- [List of code paths, documents, .prizmkit/prizm-docs/ files that were read]
|
|
255
255
|
|
|
256
256
|
### Confirmed by user: ✓
|
|
257
257
|
```
|
|
@@ -292,7 +292,7 @@ AskUserQuestion:
|
|
|
292
292
|
2. Invoke `/prizmkit-implement` to execute the plan
|
|
293
293
|
3. After implementation, run `/prizmkit-code-review` for quality check
|
|
294
294
|
4. Commit via `/prizmkit-committer` with `feat(<scope>):` prefix
|
|
295
|
-
5. Run `/prizmkit-retrospective` to sync `.prizm-docs/`
|
|
295
|
+
5. Run `/prizmkit-retrospective` to sync `.prizmkit/prizm-docs/`
|
|
296
296
|
6. **End workflow** — skip Phase 2/3/4
|
|
297
297
|
- **Add to feature list** → Continue to Phase 2 (Plan via pipeline)
|
|
298
298
|
|
|
@@ -392,7 +392,7 @@ AskUserQuestion:
|
|
|
392
392
|
|
|
393
393
|
1. **Initial status check**:
|
|
394
394
|
```bash
|
|
395
|
-
dev-pipeline/launch-feature-daemon.sh status
|
|
395
|
+
.prizmkit/dev-pipeline/launch-feature-daemon.sh status
|
|
396
396
|
```
|
|
397
397
|
|
|
398
398
|
2. **Offer monitoring options**:
|
|
@@ -402,7 +402,7 @@ AskUserQuestion:
|
|
|
402
402
|
|
|
403
403
|
3. **Periodic progress reports** (when user asks):
|
|
404
404
|
```bash
|
|
405
|
-
python3 dev-pipeline/scripts/update-feature-status.py \
|
|
405
|
+
python3 .prizmkit/dev-pipeline/scripts/update-feature-status.py \
|
|
406
406
|
--feature-list .prizmkit/plans/feature-list.json \
|
|
407
407
|
--state-dir .prizmkit/state/features \
|
|
408
408
|
--action status
|
|
@@ -508,4 +508,4 @@ All internal asset paths use `${SKILL_DIR}` placeholder for cross-IDE compatibil
|
|
|
508
508
|
- Pipeline execution (Phase 3)
|
|
509
509
|
- Progress updates (Phase 4)
|
|
510
510
|
- Multiple git commits with `feat(<scope>):` prefix
|
|
511
|
-
- Updated `.prizm-docs/` (via prizmkit-retrospective per feature)
|
|
511
|
+
- Updated `.prizmkit/prizm-docs/` (via prizmkit-retrospective per feature)
|