@ikunin/sprintpilot 2.3.0 → 2.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -192,13 +192,11 @@ Full handoff report format + ledger semantics: [docs/USAGE.md](docs/USAGE.md#han
192
192
  | `/sprint-autopilot-on` | Engage autonomous sprint execution |
193
193
  | `/sprint-autopilot-off` | Disengage and show status |
194
194
  | `/sprintpilot-update` | Check for updates and install the latest version |
195
- | `/sprintpilot-code-review` | Parallel 3-layer adversarial code review |
196
195
  | `/sprintpilot-codebase-map` | 5-stream brownfield codebase analysis |
197
196
  | `/sprintpilot-assess` | Tech debt, dependency audit, migration assessment |
198
197
  | `/sprintpilot-reverse-architect` | Extract architecture document from existing code |
199
198
  | `/sprintpilot-migrate` | 12-step legacy migration planning |
200
199
  | `/sprintpilot-research` | Parallel web research fan-out |
201
- | `/sprintpilot-party-mode` | Multi-persona BMad agent discussions |
202
200
 
203
201
  Multi-agent skill internals: [docs/USAGE.md](docs/USAGE.md#multi-agent-skills).
204
202
 
@@ -348,11 +346,9 @@ Decision matrix and additional knobs: [`modules/git/branching-and-pr-strategy.md
348
346
 
349
347
  ## Multi-Agent Intelligence
350
348
 
351
- Beyond the autopilot, 7 multi-agent skills launch parallel subagents for tasks that benefit from diverse perspectives.
349
+ Beyond the autopilot, multi-agent skills launch parallel subagents for tasks that benefit from diverse perspectives.
352
350
 
353
- **`/sprintpilot-code-review`** — 3 reviewers run simultaneously: Blind Hunter (adversarial, diff only), Edge Case Hunter (codebase access), Acceptance Auditor (story spec). Findings triaged as **PATCH / WARN / DISMISS**. PATCH findings auto-applied as separate commits.
354
-
355
- **`/sprintpilot-codebase-map`** — 5 parallel agents scan an existing codebase: stack, architecture, quality, concerns, integrations. Output under `_bmad-output/codebase-analysis/`.
351
+ **`/sprintpilot-codebase-map`** — 5 parallel agents scan an existing codebase: stack, architecture, quality, concerns, integrations. Output under `_bmad-output/codebase-analysis/`. Inspired by [GSD's map-codebase](https://github.com/gsd-build/get-shit-done) see [NOTICES.md](NOTICES.md).
356
352
 
357
353
  **`/sprintpilot-assess`** — Dependency auditor (CVEs), debt classifier (prioritized), migration analyzer. Output: prioritized findings with severity / confidence / effort.
358
354
 
@@ -362,8 +358,6 @@ Beyond the autopilot, 7 multi-agent skills launch parallel subagents for tasks t
362
358
 
363
359
  **`/sprintpilot-research`** — Fan out research across multiple topics in parallel; synthesized into a unified report.
364
360
 
365
- **`/sprintpilot-party-mode`** — 2–3 BMad personas (architect, PM, QA, dev) debate a topic over multiple rounds. Output: consensus points, disagreements, action items.
366
-
367
361
  Skill internals + output schemas: [docs/USAGE.md](docs/USAGE.md#multi-agent-skills).
368
362
 
369
363
  ## Requirements
@@ -178,13 +178,11 @@ These launch parallel subagents for deeper, faster analysis:
178
178
 
179
179
  | Skill | Agents | When to use |
180
180
  |-------|--------|-------------|
181
- | `sprintpilot-code-review` | 3 | Parallel adversarial code review (Blind Hunter + Edge Case + Acceptance) |
182
181
  | `sprintpilot-codebase-map` | 5 | Brownfield codebase mapping (stack, architecture, quality, concerns, integrations) |
183
182
  | `sprintpilot-assess` | 3 | Tech debt assessment (dependency audit, debt classification, migration analysis) |
184
183
  | `sprintpilot-reverse-architect` | 3 | Extract architecture from existing code (components, data flow, patterns) |
185
184
  | `sprintpilot-migrate` | 4 | Full migration planning — 12 steps from current stack to target stack |
186
185
  | `sprintpilot-research` | N | Parallel research fan-out with web search |
187
- | `sprintpilot-party-mode` | 2-3 | Multi-persona discussion (architect, PM, QA, etc. debating in parallel) |
188
186
 
189
187
  ### Brownfield analysis pipeline
190
188
 
@@ -1,6 +1,6 @@
1
1
  addon:
2
2
  name: sprintpilot
3
- version: 2.3.0
3
+ version: 2.3.1
4
4
  description: Sprintpilot — autopilot and multi-agent addon for BMad Method (git workflow, parallel agents, autonomous story execution)
5
5
  bmad_compatibility: ">=6.2.0"
6
6
  modules:
@@ -17,13 +17,11 @@ addon:
17
17
  - sprint-autopilot-on
18
18
  - sprint-autopilot-off
19
19
  - sprintpilot-update
20
- - sprintpilot-code-review
21
20
  - sprintpilot-codebase-map
22
21
  - sprintpilot-assess
23
22
  - sprintpilot-reverse-architect
24
23
  - sprintpilot-migrate
25
24
  - sprintpilot-research
26
- - sprintpilot-party-mode
27
25
  - sprintpilot-plan-sprint
28
26
  - sprintpilot-sprint-progress
29
27
  - sprintpilot-dependency-graph
@@ -6,18 +6,20 @@ You are analyzing a codebase to identify system design patterns, module boundari
6
6
 
7
7
  Scan the project at `{{project_root}}` and write your findings to `{{output_file}}`.
8
8
 
9
- ## Quality Bar
9
+ ## Output standard
10
10
 
11
- - **Patterns matter more than lists.** Don't just list directories — explain the architectural intent behind the structure.
12
- - **Be prescriptive, not descriptive.** Say "layered architecture with clean separation between API routes, services, and repositories" not "has multiple directories".
13
- - **Every finding needs a file path.** No claims without evidence.
11
+ - **Show structure, don't just enumerate it.** Don't just list directories — explain the architectural intent behind the structure.
12
+ - **Commit to a definite finding.** Say "layered architecture with clean separation between API routes, services, and repositories" not "has multiple directories".
13
+ - **Cite the file path for every claim.** No assertion without evidence.
14
14
  - **Focus on boundaries.** What talks to what? Where are the seams?
15
15
 
16
- ## Forbidden Files — NEVER Read
16
+ ## Off-limits files
17
17
 
18
- - `.env`, `.env.*` (secrets)
19
- - `*.key`, `*.pem`, `*.p12` (private keys)
20
- - `credentials.json`, `service-account.json`
18
+ Do not open these. Note their existence in the file inventory but never read or quote their contents:
19
+
20
+ - environment files (`.env`, `.env.<variant>`)
21
+ - private keys and certs (`*.key`, `*.pem`, `*.p12`)
22
+ - credential blobs (`credentials.json`, `service-account.json`)
21
23
 
22
24
  ## Ignore-file Awareness
23
25
 
@@ -6,19 +6,21 @@ You are scanning a codebase for tech debt, security issues, deprecated patterns,
6
6
 
7
7
  Scan the project at `{{project_root}}` and write your findings to `{{output_file}}`.
8
8
 
9
- ## Quality Bar
9
+ ## Output standard
10
10
 
11
- - **Patterns matter more than lists.** Don't just count TODOs — assess systemic debt patterns.
12
- - **Be prescriptive, not descriptive.** Say "12 TODO comments in auth module suggest incomplete migration from session-based to JWT auth" not "found some TODOs".
13
- - **Every finding needs a file path and line number.**
11
+ - **Look for systemic patterns, not isolated counts.** Don't just count TODOs — assess systemic debt patterns.
12
+ - **Commit to a definite finding.** Say "12 TODO comments in auth module suggest incomplete migration from session-based to JWT auth" not "found some TODOs".
13
+ - **Cite a file path and line number for every claim.**
14
14
  - **Severity must be justified.** CRITICAL = blocks features or security risk. HIGH = degrades reliability. MEDIUM = maintenance burden. LOW = cleanup opportunity.
15
15
 
16
- ## Forbidden Files — NEVER Read
16
+ ## Off-limits files
17
17
 
18
- - `.env`, `.env.*` (secrets)
19
- - `*.key`, `*.pem`, `*.p12` (private keys)
20
- - `credentials.json`, `service-account.json`
21
- - Files in `.git/` directory
18
+ Do not open these. Note their existence in the file inventory but never read or quote their contents:
19
+
20
+ - environment files (`.env`, `.env.<variant>`)
21
+ - private keys and certs (`*.key`, `*.pem`, `*.p12`)
22
+ - credential blobs (`credentials.json`, `service-account.json`)
23
+ - anything under `.git/`
22
24
 
23
25
  ## Ignore-file Awareness
24
26
 
@@ -6,20 +6,22 @@ You are mapping all external dependencies, APIs, services, and data stores that
6
6
 
7
7
  Scan the project at `{{project_root}}` and write your findings to `{{output_file}}`.
8
8
 
9
- ## Quality Bar
9
+ ## Output standard
10
10
 
11
- - **Patterns matter more than lists.** Don't just list env vars — explain the integration topology.
12
- - **Be prescriptive, not descriptive.** Say "uses Stripe via @stripe/stripe-node v13 for payment processing with webhook verification" not "appears to call Stripe".
13
- - **Every finding needs a file path.** No claims without evidence.
11
+ - **Describe the topology, not just the catalog.** Don't just list env vars — explain the integration topology.
12
+ - **Commit to a definite finding.** Say "uses Stripe via @stripe/stripe-node v13 for payment processing with webhook verification" not "appears to call Stripe".
13
+ - **Cite the file path for every claim.** No assertion without evidence.
14
14
  - **Redact actual secrets.** Show variable names and patterns only. NEVER output real tokens, keys, or passwords.
15
15
 
16
- ## Forbidden Files — NEVER Read Contents Of
16
+ ## Off-limits files
17
17
 
18
- - `.env`, `.env.local`, `.env.production` (actual secrets)
19
- - `*.key`, `*.pem`, `*.p12` (private keys)
20
- - `credentials.json`, `service-account.json`
18
+ Do not open these. Note their existence but never quote contents:
21
19
 
22
- **DO read**: `.env.example`, `.env.sample`, `.env.template` (safe — contain variable names only)
20
+ - environment files holding real values (`.env`, `.env.local`, `.env.production`)
21
+ - private keys and certs (`*.key`, `*.pem`, `*.p12`)
22
+ - credential blobs (`credentials.json`, `service-account.json`)
23
+
24
+ **OK to read**: `.env.example`, `.env.sample`, `.env.template` — these contain variable names only, no secrets.
23
25
 
24
26
  ## Ignore-file Awareness
25
27
 
@@ -6,18 +6,20 @@ You are analyzing a codebase to assess code quality, test coverage, CI/CD maturi
6
6
 
7
7
  Scan the project at `{{project_root}}` and write your findings to `{{output_file}}`.
8
8
 
9
- ## Quality Bar
9
+ ## Output standard
10
10
 
11
- - **Patterns matter more than lists.** Don't just count test files — assess whether the test strategy is sound.
12
- - **Be prescriptive, not descriptive.** Say "unit tests cover services but not controllers — integration gap" not "some tests exist".
13
- - **Every finding needs a file path.** No claims without evidence.
11
+ - **Assess strategy, don't just tally artifacts.** Don't just count test files — assess whether the test strategy is sound.
12
+ - **Commit to a definite finding.** Say "unit tests cover services but not controllers — integration gap" not "some tests exist".
13
+ - **Cite the file path for every claim.** No assertion without evidence.
14
14
  - **Ratios tell the story.** Test:source ratio, coverage gaps, CI stage completeness.
15
15
 
16
- ## Forbidden Files — NEVER Read
16
+ ## Off-limits files
17
17
 
18
- - `.env`, `.env.*` (secrets)
19
- - `*.key`, `*.pem`, `*.p12` (private keys)
20
- - `credentials.json`, `service-account.json`
18
+ Do not open these. Note their existence in the file inventory but never read or quote their contents:
19
+
20
+ - environment files (`.env`, `.env.<variant>`)
21
+ - private keys and certs (`*.key`, `*.pem`, `*.p12`)
22
+ - credential blobs (`credentials.json`, `service-account.json`)
21
23
 
22
24
  ## Ignore-file Awareness
23
25
 
@@ -6,19 +6,21 @@ You are analyzing a codebase to produce a complete technology inventory.
6
6
 
7
7
  Scan the project at `{{project_root}}` and write your findings to `{{output_file}}`.
8
8
 
9
- ## Quality Bar
9
+ ## Output standard
10
10
 
11
- - **Patterns matter more than lists.** Don't just list packages — explain what they're used for and how they fit together.
12
- - **Be prescriptive, not descriptive.** Say "uses React 18 with Server Components" not "appears to use React".
13
- - **Every finding needs a file path.** No claims without evidence (e.g., `package.json:15`).
11
+ - **Show how parts connect.** Don't just list packages — explain what they're used for and how they fit together.
12
+ - **Commit to a definite finding.** Say "uses React 18 with Server Components" not "appears to use React".
13
+ - **Cite the file path for every claim.** No assertion without evidence (e.g., `package.json:15`).
14
14
  - **Version numbers are critical.** Always include the exact version, not "latest" or "recent".
15
15
 
16
- ## Forbidden Files — NEVER Read
16
+ ## Off-limits files
17
17
 
18
- - `.env`, `.env.*` (secrets)
19
- - `*.key`, `*.pem`, `*.p12` (private keys)
20
- - `credentials.json`, `service-account.json`
21
- - `*.secret`, `*password*`, `*token*` (in filenames)
18
+ Do not open these. Note their existence in the file inventory but never read or quote their contents:
19
+
20
+ - environment files (`.env`, `.env.<variant>`)
21
+ - private keys and certs (`*.key`, `*.pem`, `*.p12`)
22
+ - credential blobs (`credentials.json`, `service-account.json`)
23
+ - anything whose filename contains `secret`, `password`, or `token`
22
24
 
23
25
  ## Ignore-file Awareness
24
26
 
@@ -1,6 +1,6 @@
1
1
  # Multi-Agent Codebase Map
2
2
 
3
- > Inspired by [GSD's map-codebase](https://github.com/gsd-build/get-shit-done). Adapted with distinct output format and enriched agent prompts.
3
+ > Inspired by [GSD's map-codebase](https://github.com/gsd-build/get-shit-done) (MIT, Copyright (c) 2025 Lex Christopherson). Adapted with distinct output format and rewritten agent prompts. Full attribution: [NOTICES.md](../../../NOTICES.md).
4
4
 
5
5
  ## Purpose
6
6
 
@@ -1714,13 +1714,11 @@ async function runInstall(options = {}) {
1714
1714
  console.log(' autopilot start --no-auto-plan Skip auto-planning for one session');
1715
1715
  console.log('');
1716
1716
  console.log('Multi-agent skills — run parallel subagents for faster analysis:');
1717
- console.log(' /sprintpilot-code-review Parallel 3-layer adversarial review');
1718
1717
  console.log(' /sprintpilot-codebase-map 5-stream brownfield codebase analysis');
1719
1718
  console.log(' /sprintpilot-assess Tech debt and dependency audit');
1720
1719
  console.log(' /sprintpilot-reverse-architect Extract architecture from existing code');
1721
1720
  console.log(' /sprintpilot-migrate Legacy migration planning');
1722
1721
  console.log(' /sprintpilot-research Parallel web research');
1723
- console.log(' /sprintpilot-party-mode Multi-persona agent discussions');
1724
1722
  console.log('');
1725
1723
  console.log('Documentation:');
1726
1724
  console.log(' Sprint planning walkthrough: docs/USAGE.md');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ikunin/sprintpilot",
3
- "version": "2.3.0",
3
+ "version": "2.3.1",
4
4
  "description": "Sprintpilot — autopilot and multi-agent addon for BMad Method v6: git workflow, parallel agents, autonomous story execution",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -1,6 +0,0 @@
1
- ---
2
- name: sprintpilot-code-review
3
- description: 'Parallel 3-layer code review via subagents. Launches Blind Hunter (adversarial), Edge Case Hunter, and Acceptance Auditor simultaneously. Collects results, triages findings, and produces prioritized patch list. Use instead of stock bmad-code-review for deeper, faster reviews.'
4
- ---
5
-
6
- Follow the instructions in ./workflow.md.
@@ -1,51 +0,0 @@
1
- # Acceptance Auditor — Code Review Agent
2
-
3
- You are a QA auditor verifying that the implementation satisfies the story's acceptance criteria. You have the diff, the story file, and project access.
4
-
5
- ## Rules
6
-
7
- - Every acceptance criterion (AC) must be explicitly verified against the code.
8
- - If an AC is NOT covered by the implementation, flag it as MISSING.
9
- - If an AC is partially covered, flag what's missing.
10
- - If the implementation does something NOT in the ACs, note it as EXTRA (not necessarily bad, but worth flagging).
11
- - Cap your response at 2000 tokens.
12
-
13
- ## What to Check
14
-
15
- For each acceptance criterion in the story:
16
- 1. **Implemented?** — Is there code that addresses this criterion?
17
- 2. **Tested?** — Is there a test that verifies this criterion?
18
- 3. **Correct?** — Does the implementation actually satisfy the criterion, or does it miss a nuance?
19
-
20
- Also check:
21
- 4. **Task list completion** — Are all tasks and subtasks in the story file addressed?
22
- 5. **File List accuracy** — Does the story's File List match the actual files changed?
23
- 6. **No regressions** — Do the changes break any existing functionality visible in the diff?
24
-
25
- ## Output Format
26
-
27
- ```
28
- ## AC Verification
29
-
30
- | AC | Status | Evidence | Notes |
31
- |----|--------|----------|-------|
32
- | AC-1: <text> | PASS/FAIL/PARTIAL | file:line | ... |
33
- | AC-2: <text> | PASS/FAIL/PARTIAL | file:line | ... |
34
-
35
- ## Issues Found
36
-
37
- 1. [SEVERITY] AC-N not satisfied — file:line
38
- What's missing: ...
39
- Suggested fix: ...
40
-
41
- 2. ...
42
-
43
- ## Extra (not in ACs)
44
- - <description of extra behavior>
45
- ```
46
-
47
- If all ACs pass, say "All acceptance criteria verified" with the evidence table.
48
-
49
- ## Story and Diff
50
-
51
- The story file content and diff follow below. Review them now.
@@ -1,39 +0,0 @@
1
- # Blind Hunter — Adversarial Code Review Agent
2
-
3
- You are a ruthless code reviewer. You see ONLY the diff — no project context, no story, no acceptance criteria. Your job is to find bugs, vulnerabilities, and bad practices purely from the code changes.
4
-
5
- ## Rules
6
-
7
- - You have NO project context. Do not ask for it. Review only what you see.
8
- - Be specific: cite exact file paths and line numbers.
9
- - Focus on things that will break in production, not style preferences.
10
- - Cap your response at 2000 tokens. Be concise.
11
-
12
- ## What to Look For
13
-
14
- 1. **Bugs**: null/undefined access, off-by-one, race conditions, resource leaks, incorrect logic
15
- 2. **Security**: injection (SQL, XSS, command), auth bypass, exposed secrets, insecure defaults
16
- 3. **Error handling**: swallowed exceptions, missing error paths, unchecked return values
17
- 4. **Performance**: O(n²) in hot paths, unbounded allocations, missing pagination, N+1 queries
18
- 5. **Type safety**: unchecked casts, any/unknown abuse, missing validation at boundaries
19
-
20
- ## Output Format
21
-
22
- Return findings as a numbered list:
23
-
24
- ```
25
- 1. [SEVERITY] file:line — Title
26
- Description of the issue.
27
- Suggested fix: ...
28
-
29
- 2. [SEVERITY] file:line — Title
30
- ...
31
- ```
32
-
33
- Severity: CRITICAL, HIGH, MEDIUM, LOW
34
-
35
- If the diff looks clean, say "No issues found" — do not manufacture findings.
36
-
37
- ## Diff to Review
38
-
39
- The diff follows below. Review it now.
@@ -1,46 +0,0 @@
1
- # Edge Case Hunter — Code Review Agent
2
-
3
- You are a methodical edge case analyst. You have access to the diff AND the project codebase (via Read, Grep, Glob tools). Your job is to find boundary conditions, missing validations, and scenarios the developer didn't consider.
4
-
5
- ## Rules
6
-
7
- - Use Read/Grep/Glob to understand how changed code interacts with the rest of the codebase.
8
- - Think about inputs at the extremes: empty, null, max length, unicode, concurrent access, negative numbers.
9
- - Focus on cases that the tests probably DON'T cover.
10
- - Cap your response at 2000 tokens. Be concise.
11
-
12
- ## What to Look For
13
-
14
- 1. **Boundary conditions**: empty arrays, zero-length strings, max int, negative values
15
- 2. **Missing validation**: user input not sanitized, API responses not checked, file paths not validated
16
- 3. **State issues**: stale state after error, partial updates without rollback, cache invalidation gaps
17
- 4. **Concurrency**: shared mutable state, missing locks, TOCTOU races
18
- 5. **Integration boundaries**: API contract mismatches, schema drift, timezone handling, encoding issues
19
- 6. **Error propagation**: errors swallowed at boundaries, misleading error messages, partial failure states
20
-
21
- ## Method
22
-
23
- For each changed file in the diff:
24
- 1. Read the full file (not just the diff) to understand context
25
- 2. Grep for callers of changed functions to assess blast radius
26
- 3. Think: "What input would make this fail?"
27
- 4. Think: "What happens if the thing this calls fails?"
28
-
29
- ## Output Format
30
-
31
- ```
32
- 1. [SEVERITY] file:line — Edge Case Title
33
- Scenario: When <condition>, then <what goes wrong>
34
- Impact: <what breaks>
35
- Suggested fix: ...
36
-
37
- 2. ...
38
- ```
39
-
40
- Severity: CRITICAL, HIGH, MEDIUM, LOW
41
-
42
- If no edge cases found, say "No edge cases identified" — do not manufacture findings.
43
-
44
- ## Diff to Review
45
-
46
- The diff follows below. Review it now, then explore the codebase as needed.
@@ -1,111 +0,0 @@
1
- # Multi-Agent Code Review
2
-
3
- ## Purpose
4
-
5
- Perform a thorough code review using 3 parallel subagents, each with a different review lens. Results are collected, deduplicated, and triaged into a prioritized action list.
6
-
7
- ## When to Use
8
-
9
- Use this instead of stock `bmad-code-review` when you want deeper coverage. The autopilot can be configured to call this automatically.
10
-
11
- ---
12
-
13
- ## Step 1 — Gather Context
14
-
15
- <action>Identify the story being reviewed from sprint-status.yaml or user input.</action>
16
- <action>Generate the diff to review:
17
- ```bash
18
- git diff origin/main...HEAD --unified=5
19
- ```
20
- If the diff exceeds 3000 lines, summarize by file and only pass relevant sections to agents.
21
- Save full diff to `review-diff.txt` for agent reference.
22
- </action>
23
- <action>Read the story file to extract acceptance criteria.</action>
24
- <action>Set `{{diff_file}}` = path to review-diff.txt</action>
25
- <action>Set `{{story_file}}` = path to story file</action>
26
-
27
- ---
28
-
29
- ## Step 2 — Launch 3 Review Agents in Parallel
30
-
31
- Launch ALL THREE agents in a **single message** using the Agent tool. Each agent gets its own inlined prompt (not a Skill reference).
32
-
33
- <critical>
34
- All 3 Agent calls MUST be in the same message to run in parallel.
35
- Each agent's result is capped at ~2000 tokens via structured output instructions.
36
- </critical>
37
-
38
- ### Agent 1: Blind Hunter (Adversarial Review)
39
-
40
- ```
41
- Agent(
42
- description: "Blind adversarial code review",
43
- prompt: <read from ./agents/blind-hunter.md, append diff content or diff_file path>
44
- )
45
- ```
46
-
47
- ### Agent 2: Edge Case Hunter
48
-
49
- ```
50
- Agent(
51
- description: "Edge case analysis",
52
- prompt: <read from ./agents/edge-case-hunter.md, append diff content or diff_file path>
53
- )
54
- ```
55
-
56
- ### Agent 3: Acceptance Auditor
57
-
58
- ```
59
- Agent(
60
- description: "Acceptance criteria audit",
61
- prompt: <read from ./agents/acceptance-auditor.md, append diff content + story file content>
62
- )
63
- ```
64
-
65
- ---
66
-
67
- ## Step 3 — Triage Results
68
-
69
- <action>Collect all 3 agent results.</action>
70
-
71
- <action>For each finding, classify:
72
- - **PATCH** — concrete code fix needed, actionable
73
- - **WARN** — valid concern but no code change needed (document for awareness)
74
- - **DISMISS** — false positive, not applicable, or already handled
75
-
76
- Deduplication rules:
77
- - Same file + same line range + same concern → merge into one finding
78
- - **Contradictory findings** (Agent A says "add check", Agent B says "remove check"):
79
- → If Acceptance Auditor cites an AC → Acceptance Auditor wins
80
- → Otherwise → classify as `decision_needed` and flag for user
81
- </action>
82
-
83
- <action>Produce the triage report:
84
-
85
- ```markdown
86
- ## Code Review — Triage Report
87
-
88
- ### PATCH (apply these)
89
- 1. **[P1]** {title} — {file}:{line} — {description} — Source: {agent}
90
- 2. **[P2]** ...
91
-
92
- ### WARN (acknowledge, no code change)
93
- 1. **[W1]** {title} — {description} — Source: {agent}
94
-
95
- ### DISMISSED
96
- 1. **[D1]** {reason} — Source: {agent}
97
-
98
- ### DECISION NEEDED (contradictory or ambiguous)
99
- 1. **[DN1]** {description} — Agent A says: ... / Agent B says: ...
100
- ```
101
- </action>
102
-
103
- ---
104
-
105
- ## Step 4 — Output
106
-
107
- <action>Present the triage report to the caller (autopilot or user).</action>
108
- <action>If running under autopilot: the autopilot will auto-apply all PATCH findings and commit each one.</action>
109
- <action>If running manually: present findings and ask user which to apply.</action>
110
-
111
- <action>Suggest next step: "Apply patches, then run full test suite."</action>
@@ -1,6 +0,0 @@
1
- ---
2
- name: sprintpilot-party-mode
3
- description: 'Real parallel multi-agent discussions. Select 2-3 BMad Method agent personas per round, launch them simultaneously with a topic, collect responses as a discussion round. Supports multiple rounds. Use when you need diverse perspectives from BMad personas (architect, PM, QA, etc.) debating in parallel rather than sequentially.'
4
- ---
5
-
6
- Follow the instructions in ./workflow.md.
@@ -1,138 +0,0 @@
1
- # Multi-Agent Party Mode
2
-
3
- ## Purpose
4
-
5
- Run real parallel multi-persona discussions. Instead of sequentially role-playing each persona (as stock `bmad-party-mode` does), this launches 2-3 Agent subagents simultaneously, each embodying a different BMAD persona. Results are collected and presented as a discussion round.
6
-
7
- ---
8
-
9
- ## Step 1 — Setup
10
-
11
- <action>Get from user or context:
12
- - **Topic/Question**: what to discuss
13
- - **Personas**: which BMAD personas to include (2-3 per round)
14
- Available: analyst, architect, pm, dev, qa, ux-designer, tech-writer, sm
15
- - **Context files**: any project artifacts to provide as context (PRD, architecture, etc.)
16
- - **Rounds**: how many discussion rounds (default: 2)
17
-
18
- If not specified, recommend a relevant set based on the topic:
19
- - Architecture decisions → architect, dev, qa
20
- - Product direction → pm, analyst, ux-designer
21
- - Implementation approach → dev, architect, qa
22
- - Process/workflow → sm, pm, dev
23
- </action>
24
-
25
- ---
26
-
27
- ## Step 2 — Load Persona Definitions
28
-
29
- <action>For each selected persona, read the agent definition from BMAD:
30
- - `{project-root}/_bmad/_config/agents/` — look for persona YAML files
31
- - Or look in the installed skills directory for `bmad-agent-{persona}/SKILL.md`
32
-
33
- Extract the persona's:
34
- - Role description
35
- - Expertise areas
36
- - Communication style
37
- - Key concerns/priorities
38
- </action>
39
-
40
- ---
41
-
42
- ## Step 3 — Run Discussion Rounds
43
-
44
- For each round (1 to {{num_rounds}}):
45
-
46
- <critical>Launch ALL persona agents for this round in a single message.</critical>
47
-
48
- For each persona in this round:
49
- ```
50
- Agent(
51
- description: "{persona_name} perspective on {topic}",
52
- prompt: "You are the {persona_name} on a BMAD development team.
53
-
54
- ## Your Role
55
- {persona_description}
56
-
57
- ## Your Priorities
58
- {persona_priorities}
59
-
60
- ## Discussion Topic
61
- {topic}
62
-
63
- ## Context
64
- {project_context_files_content}
65
-
66
- ## Previous Round Discussion
67
- {previous_round_responses — empty for round 1}
68
-
69
- ## Instructions
70
-
71
- Respond to the topic from your persona's perspective.
72
- - State your position clearly
73
- - Raise concerns specific to your role
74
- - Propose concrete actions
75
- - If responding to previous round: agree, disagree, or build on other personas' points
76
- - Be direct and specific, not generic
77
-
78
- Cap response at 1000 tokens."
79
- )
80
- ```
81
-
82
- <action>Collect all responses for this round.</action>
83
-
84
- <action>Present the round:
85
-
86
- ```markdown
87
- ## Round {{round_number}}
88
-
89
- ### {Persona 1 Name} ({role})
90
- {response}
91
-
92
- ### {Persona 2 Name} ({role})
93
- {response}
94
-
95
- ### {Persona 3 Name} ({role})
96
- {response}
97
- ```
98
- </action>
99
-
100
- <action>For subsequent rounds, include previous round responses as context so personas can respond to each other.</action>
101
-
102
- ---
103
-
104
- ## Step 4 — Synthesis
105
-
106
- After all rounds complete:
107
-
108
- <action>Produce a synthesis:
109
-
110
- ```markdown
111
- ## Discussion Summary
112
-
113
- ### Topic
114
- {topic}
115
-
116
- ### Participants
117
- {persona list with roles}
118
-
119
- ### Points of Agreement
120
- - ...
121
-
122
- ### Points of Disagreement
123
- - {persona A} vs {persona B}: ...
124
- Resolution suggestion: ...
125
-
126
- ### Action Items
127
- 1. [Owner: {persona}] {action}
128
- 2. ...
129
-
130
- ### Open Questions
131
- - ...
132
-
133
- ### Recommendation
134
- [Based on the discussion, what is the recommended path forward?]
135
- ```
136
- </action>
137
-
138
- <action>Ask user: "Continue with another topic, or apply these insights to the current workflow?"</action>