prizmkit 1.1.79 → 1.1.80

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/bundled/VERSION.json +3 -3
  2. package/bundled/dev-pipeline/scripts/init-pipeline.py +2 -0
  3. package/bundled/dev-pipeline-windows/scripts/init-pipeline.py +2 -0
  4. package/bundled/skills/_metadata.json +1 -1
  5. package/bundled/skills/app-planner/SKILL.md +10 -347
  6. package/bundled/skills/app-planner/references/infrastructure-convention-discovery.md +108 -0
  7. package/bundled/skills/app-planner/references/project-conventions-discovery.md +59 -0
  8. package/bundled/skills/app-planner/references/project-state-detection.md +88 -0
  9. package/bundled/skills/app-planner/references/rules-configuration.md +46 -0
  10. package/bundled/skills/bug-fix-workflow/SKILL.md +1 -30
  11. package/bundled/skills/bug-fix-workflow/references/bug-diagnosis.md +66 -0
  12. package/bundled/skills/bugfix-pipeline-launcher/SKILL.md +3 -40
  13. package/bundled/skills/bugfix-pipeline-launcher/references/configuration.md +49 -0
  14. package/bundled/skills/feature-pipeline-launcher/SKILL.md +3 -46
  15. package/bundled/skills/feature-pipeline-launcher/references/configuration.md +55 -0
  16. package/bundled/skills/feature-workflow/SKILL.md +5 -121
  17. package/bundled/skills/feature-workflow/references/brainstorm-guide.md +137 -0
  18. package/bundled/skills/prizm-kit/SKILL.md +11 -0
  19. package/bundled/skills/prizmkit-code-review/SKILL.md +66 -135
  20. package/bundled/skills/prizmkit-code-review/references/dev-agent-prompt.md +30 -0
  21. package/bundled/skills/prizmkit-code-review/references/review-report-template.md +31 -0
  22. package/bundled/skills/prizmkit-code-review/references/reviewer-agent-prompt.md +62 -0
  23. package/bundled/skills/prizmkit-code-review/scripts/check_loop.py +186 -0
  24. package/bundled/skills/prizmkit-committer/SKILL.md +6 -0
  25. package/bundled/skills/prizmkit-deploy/SKILL.md +48 -72
  26. package/bundled/skills/prizmkit-deploy/references/data-safety-examples.md +120 -0
  27. package/bundled/skills/prizmkit-deploy/references/ssh-bootstrap-flow.md +49 -0
  28. package/bundled/skills/prizmkit-deploy/references/ssh-execution-flow.md +41 -0
  29. package/bundled/skills/prizmkit-deploy/references/ssh-takeover.md +20 -0
  30. package/bundled/skills/prizmkit-implement/SKILL.md +6 -0
  31. package/bundled/skills/prizmkit-plan/SKILL.md +1 -83
  32. package/bundled/skills/prizmkit-plan/references/examples.md +85 -0
  33. package/bundled/skills/prizmkit-prizm-docs/SKILL.md +13 -0
  34. package/bundled/skills/prizmkit-test/SKILL.md +3 -151
  35. package/bundled/skills/prizmkit-test/references/examples.md +70 -0
  36. package/bundled/skills/prizmkit-test/references/test-generation-steps.md +49 -0
  37. package/bundled/skills/prizmkit-test/references/test-report-template.md +42 -0
  38. package/bundled/skills/recovery-workflow/SKILL.md +1 -30
  39. package/bundled/skills/recovery-workflow/references/detection.md +58 -0
  40. package/bundled/skills/refactor-pipeline-launcher/SKILL.md +3 -45
  41. package/bundled/skills/refactor-pipeline-launcher/references/configuration.md +54 -0
  42. package/bundled/skills/refactor-planner/SKILL.md +9 -149
  43. package/bundled/skills/refactor-planner/references/fast-path.md +59 -0
  44. package/bundled/skills/refactor-planner/references/planning-phases.md +135 -0
  45. package/bundled/skills/refactor-workflow/SKILL.md +4 -103
  46. package/bundled/skills/refactor-workflow/references/brainstorm-guide.md +116 -0
  47. package/bundled/skills-windows/app-planner/SKILL.md +10 -349
  48. package/bundled/skills-windows/app-planner/references/infrastructure-convention-discovery.md +108 -0
  49. package/bundled/skills-windows/app-planner/references/project-conventions-discovery.md +59 -0
  50. package/bundled/skills-windows/app-planner/references/project-state-detection.md +90 -0
  51. package/bundled/skills-windows/app-planner/references/rules-configuration.md +46 -0
  52. package/bundled/skills-windows/bug-fix-workflow/SKILL.md +1 -30
  53. package/bundled/skills-windows/bug-fix-workflow/references/bug-diagnosis.md +66 -0
  54. package/bundled/skills-windows/bugfix-pipeline-launcher/SKILL.md +2 -29
  55. package/bundled/skills-windows/bugfix-pipeline-launcher/references/configuration.md +49 -0
  56. package/bundled/skills-windows/feature-pipeline-launcher/SKILL.md +2 -35
  57. package/bundled/skills-windows/feature-pipeline-launcher/references/configuration.md +55 -0
  58. package/bundled/skills-windows/feature-workflow/SKILL.md +5 -121
  59. package/bundled/skills-windows/feature-workflow/references/brainstorm-guide.md +137 -0
  60. package/bundled/skills-windows/prizm-kit/SKILL.md +11 -0
  61. package/bundled/skills-windows/prizmkit-code-review/SKILL.md +66 -135
  62. package/bundled/skills-windows/prizmkit-code-review/references/dev-agent-prompt.md +30 -0
  63. package/bundled/skills-windows/prizmkit-code-review/references/review-report-template.md +31 -0
  64. package/bundled/skills-windows/prizmkit-code-review/references/reviewer-agent-prompt.md +62 -0
  65. package/bundled/skills-windows/prizmkit-code-review/scripts/check_loop.py +186 -0
  66. package/bundled/skills-windows/prizmkit-committer/SKILL.md +6 -0
  67. package/bundled/skills-windows/prizmkit-deploy/SKILL.md +49 -73
  68. package/bundled/skills-windows/prizmkit-deploy/references/data-safety-examples.md +120 -0
  69. package/bundled/skills-windows/prizmkit-deploy/references/direct-upload.md +3 -3
  70. package/bundled/skills-windows/prizmkit-deploy/references/ssh-bootstrap-flow.md +49 -0
  71. package/bundled/skills-windows/prizmkit-deploy/references/ssh-execution-flow.md +41 -0
  72. package/bundled/skills-windows/prizmkit-deploy/references/ssh-takeover.md +20 -0
  73. package/bundled/skills-windows/prizmkit-deploy/references/ssl-setup.md +2 -2
  74. package/bundled/skills-windows/prizmkit-implement/SKILL.md +6 -0
  75. package/bundled/skills-windows/prizmkit-plan/SKILL.md +1 -83
  76. package/bundled/skills-windows/prizmkit-plan/references/examples.md +85 -0
  77. package/bundled/skills-windows/prizmkit-prizm-docs/SKILL.md +13 -0
  78. package/bundled/skills-windows/prizmkit-retrospective/references/structural-sync-steps.md +1 -1
  79. package/bundled/skills-windows/prizmkit-test/SKILL.md +3 -151
  80. package/bundled/skills-windows/prizmkit-test/references/examples.md +70 -0
  81. package/bundled/skills-windows/prizmkit-test/references/test-generation-steps.md +49 -0
  82. package/bundled/skills-windows/prizmkit-test/references/test-report-template.md +42 -0
  83. package/bundled/skills-windows/recovery-workflow/SKILL.md +1 -52
  84. package/bundled/skills-windows/recovery-workflow/references/detection.md +58 -0
  85. package/bundled/skills-windows/refactor-pipeline-launcher/SKILL.md +2 -32
  86. package/bundled/skills-windows/refactor-pipeline-launcher/references/configuration.md +54 -0
  87. package/bundled/skills-windows/refactor-planner/SKILL.md +9 -149
  88. package/bundled/skills-windows/refactor-planner/references/fast-path.md +59 -0
  89. package/bundled/skills-windows/refactor-planner/references/planning-phases.md +135 -0
  90. package/bundled/skills-windows/refactor-workflow/SKILL.md +4 -103
  91. package/bundled/skills-windows/refactor-workflow/references/brainstorm-guide.md +116 -0
  92. package/package.json +1 -1
@@ -0,0 +1,88 @@
1
+ # Project State Detection — Brownfield Behavior
2
+
3
+ Detailed procedures for detecting and handling existing (brownfield) projects during app planning.
4
+
5
+ ## Detection Signals
6
+
7
+ | Signal | Greenfield | Brownfield |
8
+ |--------|-----------|------------|
9
+ | `package.json` / `pyproject.toml` / `go.mod` / `Cargo.toml` / `pom.xml` | absent | present |
10
+ | `src/` or `app/` directory with source files | absent | present |
11
+ | `.git` with commit history | absent or initial commit only | present with history |
12
+ | Empty or near-empty directory | yes | no |
13
+
14
+ ## Greenfield Behavior (default)
15
+
16
+ Proceed with the standard Core Workflow — ask all questions from scratch.
17
+
18
+ ## Brownfield Behavior
19
+
20
+ When an existing project is detected:
21
+
22
+ ### Step 1: Prerequisite Check (Mandatory)
23
+
24
+ Before ANY planning work, check if AI-essential project context files exist:
25
+
26
+ | File | Purpose | Status |
27
+ |------|---------|--------|
28
+ | `.prizmkit/prizm-docs/root.prizm` | Project architecture context for AI | exists / missing |
29
+ | `.prizmkit/config.json` | Tech stack + runtime config | exists / missing |
30
+ | `.prizmkit/plans/project-brief.md` | Product vision checklist | exists / missing |
31
+
32
+ **If ANY are missing**, show the status table, then use `AskUserQuestion`:
33
+
34
+ **Question**: "Some AI context files are missing. These help AI understand your project — making planning much more effective. How would you like to proceed?"
35
+ - **Run project init first (Recommended)** — invoke `prizmkit-init` to scan your codebase and generate these files, then return to planning
36
+ - **Continue without init** — I'll scan the project manually during this session (less thorough)
37
+ - **Skip, I'll set these up later** — proceed with planning using only what's available
38
+
39
+ - **Run project init first** -> Invoke `prizmkit-init`, then resume app-planner from where it left off
40
+ - **Continue without init** -> Continue with Step 2 below (manual scan)
41
+ - **Skip** -> Continue with Step 3, skip scanning
42
+
43
+ ### Step 2: Proactive Project Scanning
44
+
45
+ Do NOT ask the user to describe their project — read it yourself first:
46
+
47
+ 1. **Scan project structure** to understand the codebase layout:
48
+ ```bash
49
+ 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'
50
+ ```
51
+
52
+ 2. **Read existing project metadata** to infer tech stack and purpose:
53
+ - `package.json` -> name, description, dependencies, scripts
54
+ - `pyproject.toml` / `requirements.txt` -> Python dependencies
55
+ - `go.mod` -> Go module info
56
+ - `README.md` -> project description and goals
57
+ - `.prizmkit/config.json` -> previously detected tech stack
58
+ - `.prizmkit/prizm-docs/root.prizm` -> existing architecture context
59
+
60
+ 3. **Read key source files** (entry points, main routes, core models) to understand what the project actually does — don't rely solely on metadata.
61
+
62
+ ### Step 3: Present Inferred Summary with Confirmation
63
+
64
+ Show the summary as text, then use `AskUserQuestion`:
65
+
66
+ > Based on my analysis of your codebase:
67
+ >
68
+ > **Project**: [name] — [inferred description]
69
+ > **Tech Stack**: [framework] + [language] + [key dependencies]
70
+ > **Key Features Found**: [list 3-5 detected capabilities]
71
+ > **Architecture**: [e.g., monolithic, microservices, serverless]
72
+
73
+ **Question**: "Does this look correct?"
74
+ - **Yes, looks correct (Recommended)** — proceed with planning
75
+ - **Mostly correct, with changes** — I'll note corrections
76
+ - **This is off** — let me describe the project
77
+
78
+ ### Step 4: Pre-fill and Focus
79
+
80
+ - Phase 2 tech stack selection -> largely pre-filled from dependencies
81
+ - Vision/problem statement -> inferred from README or package description (user confirms)
82
+ - Existing features -> note them as `[x]` items in project brief
83
+
84
+ **Focus remaining questions** (as options where possible) on what CANNOT be inferred:
85
+ - Target users and core value proposition
86
+ - Future direction and planned capabilities
87
+ - Non-functional requirements (performance, scale, security)
88
+ - Design direction (for frontend projects)
@@ -0,0 +1,46 @@
1
+ # Rules Configuration — Detailed Q&A Procedures
2
+
3
+ Procedural details for configuring per-layer development rules during app planning. SKILL.md retains Steps 1-3 and 5 (flow control); this file contains Step 4's full Q&A workflow.
4
+
5
+ ## Step 4: Configure Each Selected Layer — Full Q&A Workflow
6
+
7
+ For each selected layer, run the 4-phase rule generation pattern:
8
+
9
+ ### Phase A — Load Layer Resources
10
+
11
+ - Read `${SKILL_DIR}/references/rules/<layer>/fixed-rules.md` — industry-consensus rules injected without asking
12
+ - Read `${SKILL_DIR}/references/rules/<layer>/question-bank.md` — interactive questions organized in groups (G1->G10): authoritative source for question text, options, "Recommended" markers, and Notes
13
+ - Read `${SKILL_DIR}/references/rules/<layer>/question-manifest.json` — machine-readable structure for this layer. **This is your asking checklist.** It lists, per question: `group`, `required`, `maps_to` (which template placeholders the answer fills), and conditional fields (`required_if`, `auto_derived_when`, `options_vary_by`). Its `groups[]` carries each group's `quick_mode` flag, and `template_placeholders` is the expected-set for the Phase D self-check. Use the manifest to track coverage; use question-bank.md for the actual wording you present to the user. If a question id in one file is absent from the other, trust question-bank.md for content and note the drift.
14
+
15
+ ### Phase B — Interactive Q&A
16
+
17
+ - Ask questions one group at a time (max 3 questions per message), as defined in question-bank.md
18
+ - Each question shows a "Recommended" option to reduce decision cost
19
+ - **Quick mode**: ask only the groups whose `quick_mode` is `true` in `question-manifest.json`. All other groups adopt recommended defaults silently. (The manifest is the single source of truth for quick-mode membership — do not hardcode group lists here.)
20
+ - **Full mode**: ask all groups in manifest order (`groups[]`).
21
+ - **Conditional questions** (driven by the manifest's per-question fields):
22
+ - `required_if: "<expr>"` — ask this question only when the expression over prior answers holds (e.g. Q14 `required_if: Q13 != D`). If the condition is false, the question is legitimately skipped — not a coverage gap.
23
+ - `auto_derived_when: "<expr>"` — when this holds, fill the mapped placeholder(s) from the prior answer without asking (e.g. backend Q6 `auto_derived_when: Q5 in [GraphQL, gRPC]`). Count as satisfied, not skipped.
24
+ - `options_vary_by: "<Qid>"` — the question is still asked; only its option list depends on that prior answer (e.g. framework/ORM options vary by language). Never affects whether the question is required.
25
+ - Shortcut commands work at any point:
26
+ - `recommended` / `default` -> adopt all recommended for current group
27
+ - `all recommended` -> adopt all recommended for all remaining groups
28
+ - `skip` -> mark current group as "Not required at this stage"
29
+ - Record answers in memory after each group. Track which manifest questions are answered, auto-derived, or conditionally skipped so Phase D can verify coverage.
30
+
31
+ ### Phase C — Auto-derivation
32
+
33
+ - Read `${SKILL_DIR}/references/rules/<layer>/derivation-rules.md`
34
+ - Match user answers against the trigger map using keyword matching
35
+ - Derive platform-specific rules without asking the user (e.g., choosing Flutter -> auto-inject Flutter widget/persistence/navigation rules)
36
+
37
+ ### Phase D — Render and Write
38
+
39
+ - Read `${SKILL_DIR}/references/rules/<layer>/template.md`
40
+ - Fill all template placeholders with accumulated content from Phases A+B+C
41
+ - **Post-render self-check** (driven by `question-manifest.json` -> `template_placeholders`):
42
+ 1. **Coverage pass** — for every placeholder in `from_questions`, confirm it traces to an answered question OR an `auto_derived_when` path OR a conditionally-skipped question (`required_if` false). If a `from_questions` placeholder has no source, you skipped a required question — go back and ask it before writing.
43
+ 2. **Residual pass** — scan the rendered document for any residual `{{ ` or ` }}`; count must be 0. Placeholders in `from_fixed_rules` / `auto_generated` / `metadata` are filled from fixed-rules.md, Phase D generation, and project metadata respectively — they are NOT expected to come from Q&A, but they MUST still be rendered (no residual braces).
44
+ - Generate Appendix A (Deny List) and Appendix B (Recommended Tools) per template instructions — these fill the `auto_generated` placeholders
45
+ - Create `.prizmkit/rules/` directory if it doesn't exist
46
+ - Write `.prizmkit/rules/<layer>-rules.md`
@@ -95,36 +95,7 @@ For trivial bugs with clear root cause and minimal scope:
95
95
 
96
96
  #### Step 1.2: Systematic Bug Clarification
97
97
 
98
- Ask questions across these dimensions until every aspect is clear. **Adapt to what the user has already provided** skip questions that are already answered.
99
-
100
- **Reproduction Conditions:**
101
- - What exact steps trigger the bug? (step-by-step)
102
- - Which environment/browser/OS/version?
103
- - Is it reproducible every time, or intermittent?
104
- - When did it first appear? (after a specific change/deploy?)
105
- - Does it happen for all users or only specific accounts/roles/data?
106
-
107
- **Expected vs Actual Behavior:**
108
- - What should happen? (the correct behavior)
109
- - What actually happens? (the buggy behavior)
110
- - Is there partial functionality (e.g., works for some inputs but not others)?
111
-
112
- **Scope and Impact:**
113
- - Which features/pages/modules are affected?
114
- - Are there workarounds users are currently using?
115
- - Is this blocking other work?
116
- - Are there related symptoms elsewhere?
117
-
118
- **Data and State:**
119
- - What data/state triggers the issue? (specific input values, DB state, user session state)
120
- - Does the bug involve data corruption or just incorrect display/behavior?
121
- - If database-related: which tables/records are affected?
122
-
123
- **Error Details** (if not already provided):
124
- - Full error message and stack trace?
125
- - Browser console errors?
126
- - Server-side logs?
127
- - Network request/response details?
98
+ Read `${SKILL_DIR}/references/bug-diagnosis.md` for the full question framework reproduction conditions, expected vs actual behavior, scope/impact, data/state, and error details. Adapt to what the user has already provided; skip answered questions.
128
99
 
129
100
  #### Step 1.3: Confirmation Before Triage
130
101
 
@@ -0,0 +1,66 @@
1
+ # Bug Diagnosis — Question Framework
2
+
3
+ Procedural details for systematic bug clarification in bug-fix-workflow Phase 1.
4
+
5
+ ## Step 1.2: Systematic Bug Clarification
6
+
7
+ Ask questions across these dimensions until every aspect is clear. **Adapt to what the user has already provided** — skip questions that are already answered.
8
+
9
+ ### Reproduction Conditions
10
+ - What exact steps trigger the bug? (step-by-step)
11
+ - Which environment/browser/OS/version?
12
+ - Is it reproducible every time, or intermittent?
13
+ - When did it first appear? (after a specific change/deploy?)
14
+ - Does it happen for all users or only specific accounts/roles/data?
15
+
16
+ ### Expected vs Actual Behavior
17
+ - What should happen? (the correct behavior)
18
+ - What actually happens? (the buggy behavior)
19
+ - Is there partial functionality (e.g., works for some inputs but not others)?
20
+
21
+ ### Scope and Impact
22
+ - Which features/pages/modules are affected?
23
+ - Are there workarounds users are currently using?
24
+ - Is this blocking other work?
25
+ - Are there related symptoms elsewhere?
26
+
27
+ ### Data and State
28
+ - What data/state triggers the issue? (specific input values, DB state, user session state)
29
+ - Does the bug involve data corruption or just incorrect display/behavior?
30
+ - If database-related: which tables/records are affected?
31
+
32
+ ### Error Details (if not already provided)
33
+ - Full error message and stack trace?
34
+ - Browser console errors?
35
+ - Server-side logs?
36
+ - Network request/response details?
37
+
38
+ ## Complexity Assessment
39
+
40
+ ### Simple bug → Fast Path candidate (ALL must be true)
41
+ - Root cause is immediately obvious (typo, missing null check, wrong variable name, off-by-one)
42
+ - Fix is ≤10 lines of code in a single file
43
+ - No cross-module impact
44
+ - Existing tests cover the affected path (or bug is in untested utility)
45
+ - No data model or API changes
46
+
47
+ ### Complex bug → Planning Path (ANY is true)
48
+ - Cross-module impact (>2 files affected)
49
+ - Data model or API changes required
50
+ - Root cause is uncertain or multi-layered
51
+ - Fix requires structural changes
52
+ - Multiple interrelated symptoms
53
+
54
+ ## Comparison with Pipeline Bug Fix
55
+
56
+ | Dimension | bug-fix-workflow | bugfix-pipeline-launcher |
57
+ |-----------|-------------------|----------------------------|
58
+ | Scope | One bug at a time | All bugs in batch |
59
+ | Execution | Interactive, in-session | Foreground or background daemon |
60
+ | Diagnosis | Deep interactive Q&A with user | Automated from bug description |
61
+ | Branch | Creates `fix/<BUG_ID>-*` branch | Pipeline manages branches |
62
+ | Visibility | Full user interaction at each phase | Async, check status periodically |
63
+ | User verification | Yes (Phase 6) | No (automated) |
64
+ | Best for | Complex bugs needing user input | Batch of well-defined bugs |
65
+ | Artifacts | Same (fix-plan.md + fix-report.md) | Same |
66
+ | Commit prefix | `fix(<scope>):` | `fix(<scope>):` |
@@ -180,33 +180,8 @@ Detect user intent from their message, then follow the corresponding workflow:
180
180
  - xhigh — Extensive reasoning (`PRIZMKIT_EFFORT=xhigh`)
181
181
  - max — Maximum reasoning, Claude Code only (`PRIZMKIT_EFFORT=max`)
182
182
 
183
- **Environment variable mapping** (for translating user responses env vars):
184
-
185
- | Config choice | Environment variable |
186
- |-----------|---------------------|
187
- | Verbose: Off | `VERBOSE=0` |
188
- | Verbose: On | `VERBOSE=1` |
189
- | Max retries: N | `MAX_RETRIES=N` |
190
- | Critic: On | `ENABLE_CRITIC=true` |
191
- | Timeout: value | `SESSION_TIMEOUT=<seconds>` |
192
- | Stop on failure: On | `STOP_ON_FAILURE=1` |
193
- | Deploy: Yes | `ENABLE_DEPLOY=1` |
194
- | Effort: value | `PRIZMKIT_EFFORT=<value>` |
195
-
196
- **Advanced environment variables** (not exposed in interactive menu, pass via `--env`):
197
-
198
- | Variable | Default | Purpose |
199
- |----------|---------|---------|
200
- | `MODEL` | (none) | AI model override (e.g. `claude-opus-4.6`) |
201
- | `AUTO_PUSH` | `0` | Auto-push to remote after successful bug fix (`1` to enable) |
202
- | `DEV_BRANCH` | auto-generated | Custom dev branch name (default: `bugfix/pipeline-{run_id}`) |
203
- | `HEARTBEAT_INTERVAL` | `30` | Heartbeat log interval in seconds |
204
- | `HEARTBEAT_STALE_THRESHOLD` | `600` | Max seconds without heartbeat before marking stale |
205
- | `LOG_CLEANUP_ENABLED` | `1` | Run periodic log cleanup (`0` to disable) |
206
- | `LOG_RETENTION_DAYS` | `14` | Delete logs older than N days |
207
- | `LOG_MAX_TOTAL_MB` | `1024` | Keep total logs under N MB via oldest-first cleanup |
208
-
209
- ⚠️ STOP HERE and wait for user response before continuing to step 6.
183
+ **Environment variable mapping** and **advanced environment variables** tables — read `${SKILL_DIR}/references/configuration.md` for the full translation tables (8 config→env mappings + 8 advanced variables).
184
+
210
185
 
211
186
  6. **Show final command**: Assemble the complete command from execution mode + confirmed configuration, and present it to the user.
212
187
 
@@ -351,19 +326,7 @@ When user says "retry B-001":
351
326
 
352
327
  ### Error Handling
353
328
 
354
- | Error | Action |
355
- |-------|--------|
356
- | `.prizmkit/plans/bug-fix-list.json` not found | Tell user to run `bug-planner` skill first |
357
- | `jq` not installed | Suggest: `brew install jq` |
358
- | `cbc`/`claude` not in PATH | Check AI CLI installation |
359
- | Bugfix pipeline already running | Show status, ask if user wants to stop and restart |
360
- | PID file stale (process dead) | `launch-bugfix-daemon.sh` auto-cleans, retry start |
361
- | Launch failed (process died immediately) | Show last 20 lines of log: `tail -20 .prizmkit/state/bugfix/pipeline-daemon.log` |
362
- | All bugs blocked/failed/needs-info | Show status, suggest retrying or providing more info |
363
- | `playwright-cli` not installed | Browser verification skipped for playwright bugs (non-blocking). Suggest: `npm install -g @playwright/cli@latest && playwright-cli install --skills` |
364
- | `opencli` not installed | Browser verification skipped for opencli bugs (non-blocking). Install opencli for Chrome session-based browser verification |
365
- | 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`. |
366
- | Permission denied on script | Run `chmod +x .prizmkit/dev-pipeline/launch-bugfix-daemon.sh .prizmkit/dev-pipeline/run-bugfix.sh` |
329
+ Read `${SKILL_DIR}/references/configuration.md` for the full error handling table (11 entries).
367
330
 
368
331
  ### Integration Notes
369
332
 
@@ -0,0 +1,49 @@
1
+ # Configuration Reference — Bugfix Pipeline Launcher
2
+
3
+ Environment variable mappings for the bugfix launcher.
4
+
5
+ ## Environment Variable Mapping
6
+
7
+ Translating user responses to env vars:
8
+
9
+ | Config choice | Environment variable |
10
+ |-----------|---------------------|
11
+ | Verbose: Off | `VERBOSE=0` |
12
+ | Verbose: On | `VERBOSE=1` |
13
+ | Max retries: N | `MAX_RETRIES=N` |
14
+ | Critic: On | `ENABLE_CRITIC=true` |
15
+ | Timeout: value | `SESSION_TIMEOUT=<seconds>` |
16
+ | Stop on failure: On | `STOP_ON_FAILURE=1` |
17
+ | Deploy: Yes | `ENABLE_DEPLOY=1` |
18
+ | Effort: value | `PRIZMKIT_EFFORT=<value>` |
19
+
20
+ ## Advanced Environment Variables
21
+
22
+ Not exposed in interactive menu, pass via `--env`:
23
+
24
+ | Variable | Default | Purpose |
25
+ |----------|---------|---------|
26
+ | `MODEL` | (none) | AI model override (e.g. `claude-opus-4.6`) |
27
+ | `AUTO_PUSH` | `0` | Auto-push to remote after successful bug fix (`1` to enable) |
28
+ | `DEV_BRANCH` | auto-generated | Custom dev branch name (default: `bugfix/pipeline-{run_id}`) |
29
+ | `HEARTBEAT_INTERVAL` | `30` | Heartbeat log interval in seconds |
30
+ | `HEARTBEAT_STALE_THRESHOLD` | `600` | Max seconds without heartbeat before marking stale |
31
+ | `LOG_CLEANUP_ENABLED` | `1` | Run periodic log cleanup (`0` to disable) |
32
+ | `LOG_RETENTION_DAYS` | `14` | Delete logs older than N days |
33
+ | `LOG_MAX_TOTAL_MB` | `1024` | Keep total logs under N MB via oldest-first cleanup |
34
+
35
+ ## Error Handling
36
+
37
+ | Error | Action |
38
+ |-------|--------|
39
+ | `.prizmkit/plans/bug-fix-list.json` not found | Tell user to run `bug-planner` skill first |
40
+ | `jq` not installed | Suggest: `brew install jq` |
41
+ | `cbc`/`claude` not in PATH | Check AI CLI installation |
42
+ | Bugfix pipeline already running | Show status, ask if user wants to stop and restart |
43
+ | PID file stale (process dead) | `launch-bugfix-daemon.sh` auto-cleans, retry start |
44
+ | Launch failed (process died immediately) | Show last 20 lines of log: `tail -20 .prizmkit/state/bugfix/pipeline-daemon.log` |
45
+ | All bugs blocked/failed/needs-info | Show status, suggest retrying or providing more info |
46
+ | `playwright-cli` not installed | Browser verification skipped for playwright bugs (non-blocking). Suggest: `npm install -g @playwright/cli@latest && playwright-cli install --skills` |
47
+ | `opencli` not installed | Browser verification skipped for opencli bugs (non-blocking). Install opencli for Chrome session-based browser verification |
48
+ | 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`. |
49
+ | Permission denied on script | Run `chmod +x .prizmkit/dev-pipeline/launch-bugfix-daemon.sh .prizmkit/dev-pipeline/run-bugfix.sh` |
@@ -197,34 +197,8 @@ Detect user intent from their message, then follow the corresponding workflow:
197
197
  - xhigh — Extensive reasoning (`PRIZMKIT_EFFORT=xhigh`)
198
198
  - max — Maximum reasoning, Claude Code only (`PRIZMKIT_EFFORT=max`)
199
199
 
200
- **Environment variable mapping** (for translating user responses env vars):
201
-
202
- | Config choice | Environment variable |
203
- |-----------|---------------------|
204
- | Critic: On | `ENABLE_CRITIC=true` |
205
- | Verbose: Off | `VERBOSE=0` |
206
- | Verbose: On | `VERBOSE=1` |
207
- | Max retries: N | `MAX_RETRIES=N` |
208
- | Timeout: value | `SESSION_TIMEOUT=<seconds>` |
209
- | Stop on failure: On | `STOP_ON_FAILURE=1` |
210
- | Deploy: Yes | `ENABLE_DEPLOY=1` |
211
- | Effort: value | `PRIZMKIT_EFFORT=<value>` |
212
-
213
- **Advanced environment variables** (not exposed in interactive menu, pass via `--env`):
214
-
215
- | Variable | Default | Purpose |
216
- |----------|---------|---------|
217
- | `MODEL` | (none) | AI model override (e.g. `claude-opus-4.6`) |
218
- | `AUTO_PUSH` | `0` | Auto-push to remote after successful feature (`1` to enable) |
219
- | `DEV_BRANCH` | auto-generated | Custom dev branch name (default: `dev/{feature_id}-YYYYMMDDHHmm`) |
220
- | `HEARTBEAT_INTERVAL` | `30` | Heartbeat log interval in seconds |
221
- | `HEARTBEAT_STALE_THRESHOLD` | `600` | Max seconds without heartbeat before marking stale |
222
- | `PIPELINE_MODE` | (none) | Override mode for all features: `lite`\|`standard`\|`full` |
223
- | `LOG_CLEANUP_ENABLED` | `1` | Run periodic log cleanup (`0` to disable) |
224
- | `LOG_RETENTION_DAYS` | `14` | Delete logs older than N days |
225
- | `LOG_MAX_TOTAL_MB` | `1024` | Keep total logs under N MB via oldest-first cleanup |
226
-
227
- ⚠️ STOP HERE and wait for user response before continuing to step 7.
200
+ **Environment variable mapping** and **advanced environment variables** tables — read `${SKILL_DIR}/references/configuration.md` for the full translation tables (8 config→env mappings + 9 advanced variables).
201
+
228
202
 
229
203
  7. **Show final command**: After user confirms configuration in step 6, assemble the complete command from execution mode + user-confirmed configuration, and present it to the user.
230
204
 
@@ -411,24 +385,7 @@ After pipeline completion, if features have `browser_interaction` fields and the
411
385
 
412
386
  ### Error Handling
413
387
 
414
- | Error | Action |
415
- |-------|--------|
416
- | `.prizmkit/plans/feature-list.json` not found | Tell user to run `feature-planner` skill first |
417
- | `jq` not installed | Suggest: `brew install jq` |
418
- | `cbc`/`claude` not in PATH | Check AI CLI installation |
419
- | Pipeline already running | Show status, ask if user wants to stop and restart |
420
- | PID file stale (process dead) | `launch-feature-daemon.sh` auto-cleans, retry start |
421
- | Launch failed (process died immediately) | Show last 20 lines of log: `tail -20 .prizmkit/state/features/pipeline-daemon.log` |
422
- | Feature stuck/blocked | Use `reset-feature.sh <F-XXX> --clean --run` for a fresh retry |
423
- | 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` |
424
- | `playwright-cli` not installed | Browser verification skipped for playwright features (non-blocking). Suggest: `npm install -g @playwright/cli@latest && playwright-cli install --skills` |
425
- | `opencli` not installed | Browser verification skipped for opencli features (non-blocking). Install opencli for Chrome session-based browser verification |
426
- | Permission denied on script | Run `chmod +x .prizmkit/dev-pipeline/launch-feature-daemon.sh .prizmkit/dev-pipeline/run-feature.sh` |
427
- | 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` |
428
- | 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`. |
429
- | `.env.local` missing or incomplete | Warn: database connection variables not found. Suggest creating env file with required connection variables for the project's database |
430
- | Database unreachable | Warn: database features will produce mock-only tests. Suggest checking database service status and connection credentials |
431
- | Migrations not applied | Warn: tables or schema referenced in migration files not found in database. Suggest applying pending migrations |
388
+ Read `${SKILL_DIR}/references/configuration.md` for the full error handling table (16 entries covering feature-list not found, dependency checks, pipeline state, browser tooling, permission, and deploy failures).
432
389
 
433
390
  ### Integration Notes
434
391
 
@@ -0,0 +1,55 @@
1
+ # Configuration Reference — Feature Pipeline Launcher
2
+
3
+ Environment variable mappings for the feature launcher.
4
+
5
+ ## Environment Variable Mapping
6
+
7
+ Translating user responses to env vars:
8
+
9
+ | Config choice | Environment variable |
10
+ |-----------|---------------------|
11
+ | Critic: On | `ENABLE_CRITIC=true` |
12
+ | Verbose: Off | `VERBOSE=0` |
13
+ | Verbose: On | `VERBOSE=1` |
14
+ | Max retries: N | `MAX_RETRIES=N` |
15
+ | Timeout: value | `SESSION_TIMEOUT=<seconds>` |
16
+ | Stop on failure: On | `STOP_ON_FAILURE=1` |
17
+ | Deploy: Yes | `ENABLE_DEPLOY=1` |
18
+ | Effort: value | `PRIZMKIT_EFFORT=<value>` |
19
+
20
+ ## Advanced Environment Variables
21
+
22
+ Not exposed in interactive menu, pass via `--env`:
23
+
24
+ | Variable | Default | Purpose |
25
+ |----------|---------|---------|
26
+ | `MODEL` | (none) | AI model override (e.g. `claude-opus-4.6`) |
27
+ | `AUTO_PUSH` | `0` | Auto-push to remote after successful feature (`1` to enable) |
28
+ | `DEV_BRANCH` | auto-generated | Custom dev branch name (default: `dev/{feature_id}-YYYYMMDDHHmm`) |
29
+ | `HEARTBEAT_INTERVAL` | `30` | Heartbeat log interval in seconds |
30
+ | `HEARTBEAT_STALE_THRESHOLD` | `600` | Max seconds without heartbeat before marking stale |
31
+ | `PIPELINE_MODE` | (none) | Override mode for all features: `lite`\|`standard`\|`full` |
32
+ | `LOG_CLEANUP_ENABLED` | `1` | Run periodic log cleanup (`0` to disable) |
33
+ | `LOG_RETENTION_DAYS` | `14` | Delete logs older than N days |
34
+ | `LOG_MAX_TOTAL_MB` | `1024` | Keep total logs under N MB via oldest-first cleanup |
35
+
36
+ ## Error Handling
37
+
38
+ | Error | Action |
39
+ |-------|--------|
40
+ | `.prizmkit/plans/feature-list.json` not found | Tell user to run `feature-planner` skill first |
41
+ | `jq` not installed | Suggest: `brew install jq` |
42
+ | `cbc`/`claude` not in PATH | Check AI CLI installation |
43
+ | Pipeline already running | Show status, ask if user wants to stop and restart |
44
+ | PID file stale (process dead) | `launch-feature-daemon.sh` auto-cleans, retry start |
45
+ | Launch failed (process died immediately) | Show last 20 lines of log: `tail -20 .prizmkit/state/features/pipeline-daemon.log` |
46
+ | Feature stuck/blocked | Use `reset-feature.sh <F-XXX> --clean --run` for a fresh retry |
47
+ | 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` |
48
+ | `playwright-cli` not installed | Browser verification skipped for playwright features (non-blocking). Suggest: `npm install -g @playwright/cli@latest && playwright-cli install --skills` |
49
+ | `opencli` not installed | Browser verification skipped for opencli features (non-blocking). Install opencli for Chrome session-based browser verification |
50
+ | Permission denied on script | Run `chmod +x .prizmkit/dev-pipeline/launch-feature-daemon.sh .prizmkit/dev-pipeline/run-feature.sh` |
51
+ | 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` |
52
+ | 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`. |
53
+ | `.env.local` missing or incomplete | Warn: database connection variables not found. Suggest creating env file with required connection variables for the project's database |
54
+ | Database unreachable | Warn: database features will produce mock-only tests. Suggest checking database service status and connection credentials |
55
+ | Migrations not applied | Warn: tables or schema referenced in migration files not found in database. Suggest applying pending migrations |
@@ -131,71 +131,11 @@ Record everything the user provides — these become inputs for Step 1.3.
131
131
 
132
132
  ### Step 1.3: Parallel Deep Reading
133
133
 
134
- **Goal**: Build comprehensive understanding of the project context before discussing detailed requirements. Spawn multiple agents in parallel to read all relevant materials simultaneously.
135
-
136
- **Parallel reading tasks** (launch concurrently):
137
-
138
- | Agent | What to read | Purpose |
139
- |-------|-------------|---------|
140
- | Agent A | User-provided code paths — read existing source files | Understand current architecture, patterns, conventions |
141
- | Agent B | User-provided documents — design docs, specs, PRDs | Understand intended requirements and constraints |
142
- | Agent C | `.prizmkit/prizm-docs/` — root.prizm, L1/L2 docs, TRAPS, RULES | Understand existing architecture knowledge and known pitfalls |
143
- | Agent D | Database/schema files + `.prizmkit/config.json` | Understand data model and tech stack preferences |
144
-
145
- **Also gather** (can be included in any agent's task):
146
- - Directory structure of the project
147
- - Existing test patterns and conventions
148
- - Dependency relationships between existing modules
149
-
150
- **After all agents complete**: Synthesize findings into a coherent understanding before proceeding to discussion.
134
+ Read `${SKILL_DIR}/references/brainstorm-guide.md` §Step 1.3 for the parallel agent dispatch procedure spawn 4 agents (A: code paths, B: documents, C: prizm-docs, D: database/config) to build comprehensive project context before discussion. Synthesize findings before proceeding.
151
135
 
152
136
  ### Step 1.4: Discuss Requirements
153
137
 
154
- **Now** with deep knowledge of the actual codebase and documentsdiscuss the requirements with the user. This discussion is grounded in real context, not abstract questions.
155
-
156
- Present what you learned from the parallel reading:
157
- - Current project structure and patterns (with specific references)
158
- - Existing data model and schema conventions
159
- - Known TRAPS and pitfalls from `.prizmkit/prizm-docs/`
160
- - Integration points with existing modules
161
-
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.
163
-
164
- **Functional Requirements:**
165
- - What are the core user actions/workflows?
166
- - What inputs does the system accept? What outputs does it produce?
167
- - What are the key business rules and validation logic?
168
- - Are there different user roles with different permissions?
169
-
170
- **Data Model & Database** (if applicable):
171
- - What entities/data need to be stored?
172
- - What are the relationships between entities?
173
- - Are there existing database tables this feature must integrate with?
174
- - What fields are required vs optional? What data types?
175
- - Any unique constraints, indexes, or special query patterns needed?
176
- - **RULE**: If the project has existing database tables, ALL new table designs must reference and conform to the existing schema style (naming conventions, ID strategy, timestamp patterns, constraint patterns). Ask the user to confirm the data model before proceeding.
177
-
178
- **User Experience:**
179
- - What does the user see and interact with?
180
- - What is the expected flow/sequence of actions?
181
- - How should errors be displayed to the user?
182
- - Are there any specific UI/UX requirements?
183
-
184
- **Integration & Architecture:**
185
- - "Based on the existing code, this feature would integrate with [modules]. Does that match your expectations?"
186
- - Any external APIs or services involved?
187
- - What authentication/authorization model applies?
188
- - Any real-time requirements (WebSocket, SSE, polling)?
189
-
190
- **Edge Cases & Error Handling:**
191
- - What happens when things go wrong? (network failure, invalid input, concurrent access)
192
- - What are the boundary conditions? (empty states, max limits, permissions denied)
193
- - Any rate limiting, quotas, or resource constraints?
194
-
195
- **Non-Functional Requirements:**
196
- - Performance expectations? (response time, throughput)
197
- - Scalability considerations?
198
- - Security requirements? (encryption, audit logs, compliance)
138
+ Read `${SKILL_DIR}/references/brainstorm-guide.md` §Step 1.4 for the full requirements discussion frameworkfunctional requirements, data model, user experience, integration/architecture, edge cases, and non-functional requirements. Ask targeted questions based on what was learned from parallel reading. **Adapt question depth to the feature complexity.**
199
139
 
200
140
  ### Step 1.5: Confirm and Supplement
201
141
 
@@ -206,57 +146,11 @@ After the discussion:
206
146
  3. **Identify gaps** — if any areas are still unclear, list them explicitly and ask follow-up questions
207
147
  4. **Repeat** until the user confirms: "That covers everything" or "Let's proceed"
208
148
 
209
- **Signs that brainstorming is complete:**
210
- - All functional requirements have concrete acceptance criteria
211
- - Data model entities and relationships are defined
212
- - Edge cases and error handling are addressed
213
- - Integration points are identified
214
- - The user has confirmed the summary is accurate
215
-
216
- **Signs that more questions are needed:**
217
- - User's answers contain vague terms ("handle it appropriately", "make it user-friendly", "standard behavior")
218
- - Core business rules are undefined ("depends on the situation")
219
- - Data relationships are unclear ("somehow connected")
220
- - User says "I'm not sure" — help them think through it with concrete options
149
+ Read `${SKILL_DIR}/references/brainstorm-guide.md` §Completion Signs for the full checklist of when brainstorming is complete vs when more questions are needed.
221
150
 
222
151
  ### Step 1.6: Requirements Summary
223
152
 
224
- Once brainstorming is complete, produce a structured requirements summary:
225
-
226
- ```markdown
227
- ## Requirements Summary
228
-
229
- ### Project/Feature: [Name]
230
-
231
- ### Core Functionality
232
- - [Bullet list of what the system does]
233
-
234
- ### User Roles
235
- - [Role]: [What they can do]
236
-
237
- ### Data Model Overview
238
- - [Entity]: [Key fields, relationships]
239
-
240
- ### Key Business Rules
241
- - [Rule 1]
242
- - [Rule 2]
243
-
244
- ### Integration Points
245
- - [External system/API/module]
246
-
247
- ### Edge Cases & Error Handling
248
- - [Case]: [Expected behavior]
249
-
250
- ### Non-Functional Requirements
251
- - [Requirement]
252
-
253
- ### Reference Materials Reviewed
254
- - [List of code paths, documents, .prizmkit/prizm-docs/ files that were read]
255
-
256
- ### Confirmed by user: ✓
257
- ```
258
-
259
- Present this summary to the user and get explicit confirmation before proceeding.
153
+ Once brainstorming is complete, produce a structured requirements summary. Read `${SKILL_DIR}/references/brainstorm-guide.md` §Requirements Summary Template for the structured output format. Present the summary to the user and get explicit confirmation before proceeding.
260
154
 
261
155
  **CHECKPOINT CP-FW-0**: Requirements fully clarified and confirmed by user.
262
156
 
@@ -483,17 +377,7 @@ While the pipeline runs, the user can continue the conversation:
483
377
 
484
378
  ## Comparison with Alternative Workflows
485
379
 
486
- | Dimension | feature-workflow | bug-fix-workflow | refactor-workflow |
487
- |-----------|-----------------|------------------|-------------------|
488
- | **Purpose** | New features (batch) | Single bug fix (interactive) | Code restructuring (batch) |
489
- | **Brainstorming** | Yes — collect materials, parallel read, discuss | No (bug report is input) | Yes — clarify type, collect materials, parallel read, discuss |
490
- | **Planning Skill** | `feature-planner` | None (triage built-in) | `refactor-planner` |
491
- | **Branch** | Pipeline manages per-feature | `fix/<BUG_ID>-*` | Pipeline manages per-refactor |
492
- | **Execution** | Foreground or background daemon | In-session, interactive | Foreground or background daemon |
493
- | **Input** | Rough idea or requirements | Bug report / stack trace | Rough refactoring idea or target |
494
- | **Output** | Multiple `feat()` commits | Single `fix()` commit | Multiple `refactor()` commits |
495
- | **Behavior Change** | Expected (new functionality) | Fix behavior | Forbidden (structure only) |
496
- | **Batch alternative** | (this is the batch flow) | `bug-planner` + `bugfix-pipeline-launcher` | (this is the batch flow) |
380
+ Read `${SKILL_DIR}/references/brainstorm-guide.md` §Comparison for the full comparison table (feature-workflow vs bug-fix-workflow vs refactor-workflow across 9 dimensions).
497
381
 
498
382
  ---
499
383