prizmkit 1.0.122 → 1.0.124
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/agents/prizm-dev-team-critic.md +177 -0
- package/bundled/dev-pipeline/README.md +7 -6
- package/bundled/dev-pipeline/assets/prizm-dev-team-integration.md +3 -2
- package/bundled/dev-pipeline/launch-daemon.sh +21 -6
- package/bundled/dev-pipeline/retry-feature.sh +19 -9
- package/bundled/dev-pipeline/run.sh +30 -54
- package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +70 -31
- package/bundled/dev-pipeline/templates/bootstrap-tier1.md +13 -2
- package/bundled/dev-pipeline/templates/bootstrap-tier2.md +95 -17
- package/bundled/dev-pipeline/templates/bootstrap-tier3.md +96 -75
- package/bundled/dev-pipeline/templates/feature-list-schema.json +10 -0
- package/bundled/dev-pipeline/tests/test_generate_bootstrap_prompt.py +17 -13
- package/bundled/skills/_metadata.json +1 -1
- package/bundled/skills/app-planner/SKILL.md +8 -4
- package/bundled/skills/app-planner/assets/evaluation-guide.md +2 -2
- package/bundled/skills/app-planner/scripts/validate-and-generate.py +12 -0
- package/bundled/skills/bug-fix-workflow/SKILL.md +94 -26
- package/bundled/skills/dev-pipeline-launcher/SKILL.md +17 -7
- package/bundled/skills/feature-workflow/SKILL.md +181 -38
- package/bundled/skills/prizm-kit/SKILL.md +1 -1
- package/bundled/skills/refactor-workflow/SKILL.md +118 -55
- package/bundled/team/prizm-dev-team.json +8 -1
- package/package.json +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: "feature-workflow"
|
|
3
3
|
tier: companion
|
|
4
|
-
description: "One-stop entry point for feature development.
|
|
4
|
+
description: "One-stop entry point for feature development. Brainstorms requirements with the user until fully clarified, then orchestrates app-planner → dev-pipeline-launcher → execution. Handles multi-feature batch development from a single request. Use this skill whenever the user wants to build an app, develop multiple features at once, or go from idea to running code in one step. Trigger on: 'build an app', 'develop features', 'implement all features', 'one-stop development', 'batch implement', 'build a new application', 'build a system', 'one-click complete', 'batch implement'. (project)"
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Feature Workflow
|
|
8
8
|
|
|
9
|
-
One-stop entry point for feature development.
|
|
9
|
+
One-stop entry point for feature development. Covers the complete journey from a vague idea to running code: deep requirement brainstorming → structured planning → autonomous pipeline execution.
|
|
10
10
|
|
|
11
11
|
## When to Use
|
|
12
12
|
|
|
@@ -28,33 +28,38 @@ User says:
|
|
|
28
28
|
## Overview
|
|
29
29
|
|
|
30
30
|
```
|
|
31
|
-
feature-workflow <requirements
|
|
31
|
+
feature-workflow <idea / requirements>
|
|
32
32
|
│
|
|
33
|
-
├── Phase 1:
|
|
33
|
+
├── Phase 1: Brainstorm → deep interactive Q&A until requirements are crystal clear
|
|
34
34
|
│
|
|
35
|
-
├── Phase 2:
|
|
35
|
+
├── Phase 2: Plan → app-planner → feature-list.json
|
|
36
36
|
│
|
|
37
|
-
|
|
37
|
+
├── Phase 3: Launch → dev-pipeline-launcher → pipeline execution
|
|
38
|
+
│
|
|
39
|
+
└── Phase 4: Monitor → track progress → report results
|
|
38
40
|
```
|
|
39
41
|
|
|
40
42
|
### What This Skill Does
|
|
41
43
|
|
|
42
44
|
| Phase | Action | Result |
|
|
43
45
|
|-------|--------|--------|
|
|
44
|
-
| 1 |
|
|
45
|
-
| 2 | Call `
|
|
46
|
-
| 3 |
|
|
46
|
+
| 1 | **Brainstorm** — interactive Q&A with user | Fully clarified requirements document |
|
|
47
|
+
| 2 | Call `app-planner` with clarified requirements | `feature-list.json` with N features |
|
|
48
|
+
| 3 | Call `dev-pipeline-launcher` | Pipeline started (execution mode chosen by user via launcher) |
|
|
49
|
+
| 4 | Monitor progress | Status updates, completion report |
|
|
47
50
|
|
|
48
51
|
### Why This Skill Exists
|
|
49
52
|
|
|
50
53
|
Without this skill, users must:
|
|
51
|
-
1.
|
|
52
|
-
2. Invoke `
|
|
53
|
-
3.
|
|
54
|
+
1. Figure out all requirements themselves
|
|
55
|
+
2. Invoke `app-planner` → wait for feature-list.json
|
|
56
|
+
3. Invoke `dev-pipeline-launcher` → wait for pipeline start
|
|
57
|
+
4. Manually check progress
|
|
54
58
|
|
|
55
59
|
With this skill, users can:
|
|
56
|
-
1. Say "Build a task management App"
|
|
57
|
-
2.
|
|
60
|
+
1. Say "Build a task management App" with a rough idea
|
|
61
|
+
2. The skill brainstorms to fill in all gaps
|
|
62
|
+
3. All planning + execution happens automatically
|
|
58
63
|
|
|
59
64
|
### Branch Management
|
|
60
65
|
|
|
@@ -74,18 +79,19 @@ Natural language description of the project or features. Can be:
|
|
|
74
79
|
- A batch of features: "Implement user registration, login, and password recovery features"
|
|
75
80
|
- An incremental request: "Add user avatar upload and nickname modification to the existing system"
|
|
76
81
|
|
|
77
|
-
Flow: app-planner → dev-pipeline-launcher → monitor
|
|
82
|
+
Flow: brainstorm → app-planner → dev-pipeline-launcher → monitor
|
|
78
83
|
|
|
79
84
|
**Mode B: From existing feature-list.json**
|
|
80
85
|
|
|
81
86
|
When user says "run pipeline from existing file" or feature-list.json already exists:
|
|
82
|
-
- Skip `app-planner` (file already exists)
|
|
87
|
+
- Skip brainstorm and `app-planner` (file already exists)
|
|
83
88
|
- Invoke `dev-pipeline-launcher` directly
|
|
84
89
|
- Monitor and report progress
|
|
85
90
|
|
|
86
91
|
**Mode C: Incremental (add to existing project)**
|
|
87
92
|
|
|
88
93
|
When user says "add features to existing project" or the project already has features:
|
|
94
|
+
- Brainstorm new feature requirements with the user
|
|
89
95
|
- Invoke `app-planner` in incremental mode (reads existing feature-list.json)
|
|
90
96
|
- Append new features to existing list
|
|
91
97
|
- Invoke `dev-pipeline-launcher`
|
|
@@ -93,19 +99,151 @@ When user says "add features to existing project" or the project already has fea
|
|
|
93
99
|
|
|
94
100
|
---
|
|
95
101
|
|
|
96
|
-
## Phase 1:
|
|
102
|
+
## Phase 1: Brainstorm — Deep Requirement Clarification
|
|
103
|
+
|
|
104
|
+
**Goal**: Through interactive Q&A, transform the user's rough idea into fully clarified, implementation-ready requirements. This phase is the foundation for high-quality code generation — vague requirements produce vague code.
|
|
105
|
+
|
|
106
|
+
**CRITICAL RULE**: The number of questions is **unlimited**. Do NOT rush through this phase. Ask as many rounds as needed until every aspect is clear. The framework strives for perfect code generation, which requires perfect understanding of requirements.
|
|
107
|
+
|
|
108
|
+
### Step 1.1: Understand the User's Vision
|
|
109
|
+
|
|
110
|
+
Ask the user to describe what they want to build. Listen for:
|
|
111
|
+
- **What** the system/feature does (core functionality)
|
|
112
|
+
- **Who** uses it (user roles, personas)
|
|
113
|
+
- **Why** it's needed (business value, problem being solved)
|
|
114
|
+
|
|
115
|
+
### Step 1.2: Context Gathering
|
|
116
|
+
|
|
117
|
+
Before asking detailed questions, gather existing project context:
|
|
118
|
+
- If `.prizm-docs/root.prizm` exists → read it to understand existing architecture, tech stack, patterns
|
|
119
|
+
- If `.prizmkit/config.json` exists → read tech stack preferences
|
|
120
|
+
- If existing source code exists → scan directory structure:
|
|
121
|
+
```bash
|
|
122
|
+
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'
|
|
123
|
+
```
|
|
124
|
+
- If database/schema files exist → scan them to understand existing data model:
|
|
125
|
+
```bash
|
|
126
|
+
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/*' -not -path '*/dist/*' -not -path '*/__pycache__/*' | head -20
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
This context informs better questions — e.g., if the project uses PostgreSQL + Prisma, ask about schema design in those terms.
|
|
130
|
+
|
|
131
|
+
### Step 1.3: Adaptive Deep-Dive Questioning
|
|
132
|
+
|
|
133
|
+
Based on the user's description, ask questions across these dimensions. **Adapt question depth to the feature complexity** — a simple CRUD feature needs fewer questions than a real-time collaboration system.
|
|
134
|
+
|
|
135
|
+
**Functional Requirements:**
|
|
136
|
+
- What are the core user actions/workflows?
|
|
137
|
+
- What inputs does the system accept? What outputs does it produce?
|
|
138
|
+
- What are the key business rules and validation logic?
|
|
139
|
+
- Are there different user roles with different permissions?
|
|
140
|
+
|
|
141
|
+
**Data Model & Database** (if applicable):
|
|
142
|
+
- What entities/data need to be stored?
|
|
143
|
+
- What are the relationships between entities?
|
|
144
|
+
- Are there existing database tables this feature must integrate with?
|
|
145
|
+
- What fields are required vs optional? What data types?
|
|
146
|
+
- Any unique constraints, indexes, or special query patterns needed?
|
|
147
|
+
- **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.
|
|
148
|
+
|
|
149
|
+
**User Experience:**
|
|
150
|
+
- What does the user see and interact with?
|
|
151
|
+
- What is the expected flow/sequence of actions?
|
|
152
|
+
- How should errors be displayed to the user?
|
|
153
|
+
- Are there any specific UI/UX requirements?
|
|
154
|
+
|
|
155
|
+
**Integration & Architecture:**
|
|
156
|
+
- Does this feature depend on or affect other features/modules?
|
|
157
|
+
- Any external APIs or services involved?
|
|
158
|
+
- What authentication/authorization model applies?
|
|
159
|
+
- Any real-time requirements (WebSocket, SSE, polling)?
|
|
160
|
+
|
|
161
|
+
**Edge Cases & Error Handling:**
|
|
162
|
+
- What happens when things go wrong? (network failure, invalid input, concurrent access)
|
|
163
|
+
- What are the boundary conditions? (empty states, max limits, permissions denied)
|
|
164
|
+
- Any rate limiting, quotas, or resource constraints?
|
|
165
|
+
|
|
166
|
+
**Non-Functional Requirements:**
|
|
167
|
+
- Performance expectations? (response time, throughput)
|
|
168
|
+
- Scalability considerations?
|
|
169
|
+
- Security requirements? (encryption, audit logs, compliance)
|
|
170
|
+
|
|
171
|
+
### Step 1.4: Iterative Clarification Loop
|
|
172
|
+
|
|
173
|
+
After the initial deep-dive:
|
|
174
|
+
|
|
175
|
+
1. **Summarize** what you've understood so far — present it back to the user
|
|
176
|
+
2. **Identify gaps** — explicitly list any areas that are still unclear or ambiguous
|
|
177
|
+
3. **Ask follow-up questions** for each gap
|
|
178
|
+
4. **Repeat** until the user confirms: "Yes, that covers everything" or "That's clear enough"
|
|
179
|
+
|
|
180
|
+
**Signs that brainstorming is complete:**
|
|
181
|
+
- All functional requirements have concrete acceptance criteria
|
|
182
|
+
- Data model entities and relationships are defined
|
|
183
|
+
- Edge cases and error handling are addressed
|
|
184
|
+
- Integration points are identified
|
|
185
|
+
- The user has confirmed the summary is accurate
|
|
186
|
+
|
|
187
|
+
**Signs that more questions are needed:**
|
|
188
|
+
- User's answers contain vague terms ("handle it appropriately", "make it user-friendly", "standard behavior")
|
|
189
|
+
- Core business rules are undefined ("depends on the situation")
|
|
190
|
+
- Data relationships are unclear ("somehow connected")
|
|
191
|
+
- User says "I'm not sure" — help them think through it with concrete options
|
|
192
|
+
|
|
193
|
+
### Step 1.5: Requirements Summary
|
|
194
|
+
|
|
195
|
+
Once brainstorming is complete, produce a structured requirements summary:
|
|
196
|
+
|
|
197
|
+
```markdown
|
|
198
|
+
## Requirements Summary
|
|
199
|
+
|
|
200
|
+
### Project/Feature: [Name]
|
|
201
|
+
|
|
202
|
+
### Core Functionality
|
|
203
|
+
- [Bullet list of what the system does]
|
|
204
|
+
|
|
205
|
+
### User Roles
|
|
206
|
+
- [Role]: [What they can do]
|
|
207
|
+
|
|
208
|
+
### Data Model Overview
|
|
209
|
+
- [Entity]: [Key fields, relationships]
|
|
210
|
+
|
|
211
|
+
### Key Business Rules
|
|
212
|
+
- [Rule 1]
|
|
213
|
+
- [Rule 2]
|
|
214
|
+
|
|
215
|
+
### Integration Points
|
|
216
|
+
- [External system/API/module]
|
|
217
|
+
|
|
218
|
+
### Edge Cases & Error Handling
|
|
219
|
+
- [Case]: [Expected behavior]
|
|
220
|
+
|
|
221
|
+
### Non-Functional Requirements
|
|
222
|
+
- [Requirement]
|
|
223
|
+
|
|
224
|
+
### Confirmed by user: ✓
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
Present this summary to the user and get explicit confirmation before proceeding to Phase 2.
|
|
228
|
+
|
|
229
|
+
**CHECKPOINT CP-FW-0**: Requirements fully clarified and confirmed by user.
|
|
230
|
+
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
## Phase 2: Plan
|
|
97
234
|
|
|
98
|
-
**Goal**: Generate structured feature-list.json from
|
|
235
|
+
**Goal**: Generate structured feature-list.json from the clarified requirements.
|
|
99
236
|
|
|
100
237
|
**STEPS**:
|
|
101
238
|
|
|
102
|
-
1. **Invoke `app-planner` skill** with the
|
|
239
|
+
1. **Invoke `app-planner` skill** with the full requirements summary from Phase 1:
|
|
240
|
+
- Pass the structured requirements summary as input — NOT the raw user conversation
|
|
103
241
|
- For new projects: standard planning mode
|
|
104
242
|
- For existing projects with `--incremental`: incremental planning mode
|
|
105
243
|
|
|
106
244
|
2. **Interactive planning** (if app-planner requires clarification):
|
|
107
|
-
-
|
|
108
|
-
-
|
|
245
|
+
- Because Phase 1 was thorough, app-planner should need minimal clarification
|
|
246
|
+
- If questions arise, answer from the Phase 1 context or pass through to user
|
|
109
247
|
|
|
110
248
|
3. **Validate output**:
|
|
111
249
|
- Confirm `feature-list.json` exists
|
|
@@ -113,11 +251,11 @@ When user says "add features to existing project" or the project already has fea
|
|
|
113
251
|
|
|
114
252
|
**CHECKPOINT CP-FW-1**: `feature-list.json` generated and validated.
|
|
115
253
|
|
|
116
|
-
**If user says `--from <file>`**: Skip
|
|
254
|
+
**If user says `--from <file>`**: Skip Phase 1 and Phase 2 entirely.
|
|
117
255
|
|
|
118
256
|
---
|
|
119
257
|
|
|
120
|
-
## Phase
|
|
258
|
+
## Phase 3: Launch
|
|
121
259
|
|
|
122
260
|
**Goal**: Start the development pipeline.
|
|
123
261
|
|
|
@@ -136,18 +274,19 @@ When user says "add features to existing project" or the project already has fea
|
|
|
136
274
|
2. **Invoke `dev-pipeline-launcher` skill**:
|
|
137
275
|
- The launcher handles all prerequisites checks
|
|
138
276
|
- The launcher presents execution mode choices to the user (foreground/background/manual)
|
|
139
|
-
-
|
|
277
|
+
- The launcher asks whether to enable Critic Agent (adversarial review) — passes `--critic` flag if chosen
|
|
278
|
+
- Do NOT duplicate execution mode or critic selection here — let the launcher handle it
|
|
140
279
|
- Returns PID/status and log file location
|
|
141
280
|
|
|
142
281
|
3. **Verify launch success**:
|
|
143
282
|
- Confirm pipeline is running
|
|
144
|
-
- Record PID and log path for Phase
|
|
283
|
+
- Record PID and log path for Phase 4
|
|
145
284
|
|
|
146
285
|
**CHECKPOINT CP-FW-2**: Pipeline launched successfully.
|
|
147
286
|
|
|
148
287
|
---
|
|
149
288
|
|
|
150
|
-
## Phase
|
|
289
|
+
## Phase 4: Monitor
|
|
151
290
|
|
|
152
291
|
**Goal**: Track pipeline progress and report to user.
|
|
153
292
|
|
|
@@ -196,9 +335,9 @@ The workflow supports resuming by detecting existing state:
|
|
|
196
335
|
|
|
197
336
|
| State Found | Resume From |
|
|
198
337
|
|-------------|------------|
|
|
199
|
-
| No `feature-list.json` | Phase 1:
|
|
200
|
-
| `feature-list.json` exists, no pipeline state | Phase
|
|
201
|
-
| `feature-list.json` + pipeline state exists | Phase
|
|
338
|
+
| No `feature-list.json` | Phase 1: Brainstorm |
|
|
339
|
+
| `feature-list.json` exists, no pipeline state | Phase 3: Launch |
|
|
340
|
+
| `feature-list.json` + pipeline state exists | Phase 4: Monitor (check status) |
|
|
202
341
|
| All features completed | Report completion, suggest next steps |
|
|
203
342
|
|
|
204
343
|
**Resume**: If `feature-list.json` exists, ask user: "Existing feature plan found with N features. Resume pipeline or re-plan?"
|
|
@@ -222,11 +361,13 @@ While the pipeline runs, the user can continue the conversation:
|
|
|
222
361
|
|
|
223
362
|
| Error | Action |
|
|
224
363
|
|-------|--------|
|
|
225
|
-
|
|
|
364
|
+
| User's idea is too vague to brainstorm | Ask for more context: "Can you describe the main problem this solves?" |
|
|
365
|
+
| Brainstorming stalls | Offer concrete options: "Would you prefer A or B?" |
|
|
366
|
+
| `app-planner` cannot parse requirements | Refine the requirements summary and retry |
|
|
226
367
|
| `feature-list.json` generation failed | Show error, retry with refined input |
|
|
227
368
|
| Pipeline launch failed | Show daemon log, suggest manual start |
|
|
228
369
|
| All features blocked/failed | Show status, suggest retrying specific features |
|
|
229
|
-
| User wants to cancel mid-
|
|
370
|
+
| User wants to cancel mid-brainstorming | Save conversation context, offer to resume later |
|
|
230
371
|
|
|
231
372
|
---
|
|
232
373
|
|
|
@@ -234,8 +375,8 @@ While the pipeline runs, the user can continue the conversation:
|
|
|
234
375
|
|
|
235
376
|
| Skill | Relationship |
|
|
236
377
|
|-------|-------------|
|
|
237
|
-
| `app-planner` | **Called by Phase
|
|
238
|
-
| `dev-pipeline-launcher` | **Called by Phase
|
|
378
|
+
| `app-planner` | **Called by Phase 2** — generates feature-list.json from clarified requirements |
|
|
379
|
+
| `dev-pipeline-launcher` | **Called by Phase 3** — starts pipeline (handles execution mode selection) |
|
|
239
380
|
| `bug-planner` | **Alternative** — for bug fix workflows |
|
|
240
381
|
| `bugfix-pipeline-launcher` | **Alternative** — for bug fix pipelines |
|
|
241
382
|
| `refactor-workflow` | **Alternative** — for code restructuring |
|
|
@@ -247,12 +388,13 @@ While the pipeline runs, the user can continue the conversation:
|
|
|
247
388
|
| Dimension | feature-workflow | bug-fix-workflow | refactor-workflow |
|
|
248
389
|
|-----------|-----------------|------------------|-------------------|
|
|
249
390
|
| **Purpose** | New features (batch) | Single bug fix (interactive) | Code restructuring |
|
|
391
|
+
| **Brainstorming** | Yes — deep interactive Q&A | No (bug report is input) | No (analysis built-in) |
|
|
250
392
|
| **Planning Skill** | `app-planner` | None (triage built-in) | None (analysis built-in) |
|
|
251
393
|
| **Branch** | Pipeline manages per-feature | `fix/<BUG_ID>-*` | `refactor/<slug>` |
|
|
252
394
|
| **Execution** | Foreground or background daemon | In-session, interactive | In-session |
|
|
253
|
-
| **Input** |
|
|
395
|
+
| **Input** | Rough idea or requirements | Bug report / stack trace | Module / code target |
|
|
254
396
|
| **Output** | Multiple `feat()` commits | Single `fix()` commit | Single `refactor()` commit |
|
|
255
|
-
| **User verification** |
|
|
397
|
+
| **User verification** | Yes (Phase 1 brainstorm confirmation) | Yes (Phase 5) | Yes (Phase 5) |
|
|
256
398
|
| **Batch alternative** | (this is the batch flow) | `bug-planner` + `bugfix-pipeline-launcher` | N/A |
|
|
257
399
|
|
|
258
400
|
---
|
|
@@ -263,8 +405,9 @@ All internal asset paths use `${SKILL_DIR}` placeholder for cross-IDE compatibil
|
|
|
263
405
|
|
|
264
406
|
## Output
|
|
265
407
|
|
|
266
|
-
-
|
|
267
|
-
-
|
|
268
|
-
-
|
|
408
|
+
- Structured requirements summary (Phase 1 artifact)
|
|
409
|
+
- `feature-list.json` (Phase 2 artifact)
|
|
410
|
+
- Pipeline execution (Phase 3)
|
|
411
|
+
- Progress updates (Phase 4)
|
|
269
412
|
- Multiple git commits with `feat(<scope>):` prefix
|
|
270
413
|
- Updated `.prizm-docs/` (via prizmkit-retrospective per feature)
|
|
@@ -115,6 +115,6 @@ python3 ${SKILL_DIR}/scripts/install-prizmkit.py --target <project-skills-dir>
|
|
|
115
115
|
|
|
116
116
|
Both CodeBuddy and Claude Code use unified commands for automatic doc updates and commit enforcement.
|
|
117
117
|
Hooks and rules are configured automatically by `prizmkit-init`. See:
|
|
118
|
-
-
|
|
118
|
+
- The commit hook template is configured automatically during `prizmkit-init`
|
|
119
119
|
- `assets/project-memory-template.md` for the project memory template
|
|
120
120
|
- The init skill creates `prizm-documentation.md` and `prizm-commit-workflow.md` rules
|