@ikunin/sprintpilot 2.2.31 → 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.
Files changed (47) hide show
  1. package/README.md +228 -415
  2. package/_Sprintpilot/Sprintpilot.md +76 -8
  3. package/_Sprintpilot/bin/autopilot.js +734 -68
  4. package/_Sprintpilot/lib/orchestrator/action-ledger.js +208 -0
  5. package/_Sprintpilot/lib/orchestrator/adapt.js +93 -15
  6. package/_Sprintpilot/lib/orchestrator/profile-rules.js +7 -16
  7. package/_Sprintpilot/lib/orchestrator/sprint-plan.js +488 -0
  8. package/_Sprintpilot/lib/orchestrator/state-store.js +9 -5
  9. package/_Sprintpilot/lib/orchestrator/user-command-applier.js +78 -0
  10. package/_Sprintpilot/lib/orchestrator/user-commands.js +114 -0
  11. package/_Sprintpilot/lib/orchestrator/verify.js +10 -17
  12. package/_Sprintpilot/manifest.yaml +4 -3
  13. package/_Sprintpilot/modules/autopilot/profiles/_base.yaml +18 -4
  14. package/_Sprintpilot/modules/git/config.yaml +15 -9
  15. package/_Sprintpilot/modules/ma/config.yaml +29 -27
  16. package/_Sprintpilot/scripts/dispatch-layer.js +12 -15
  17. package/_Sprintpilot/scripts/infer-dependencies.js +706 -254
  18. package/_Sprintpilot/scripts/log-timing.js +6 -10
  19. package/_Sprintpilot/scripts/merge-shards.js +21 -23
  20. package/_Sprintpilot/scripts/post-green-gates.js +3 -1
  21. package/_Sprintpilot/scripts/resolve-dag.js +452 -280
  22. package/_Sprintpilot/scripts/sprint-plan.js +1068 -0
  23. package/_Sprintpilot/scripts/state-shard.js +13 -5
  24. package/_Sprintpilot/scripts/summarize-timings.js +2 -3
  25. package/_Sprintpilot/skills/sprint-autopilot-on/SKILL.md +30 -2
  26. package/_Sprintpilot/skills/sprint-autopilot-on/workflow.orchestrator.md +36 -10
  27. package/_Sprintpilot/skills/sprintpilot-codebase-map/agents/architecture-mapper.md +10 -8
  28. package/_Sprintpilot/skills/sprintpilot-codebase-map/agents/concerns-hunter.md +11 -9
  29. package/_Sprintpilot/skills/sprintpilot-codebase-map/agents/integration-mapper.md +11 -9
  30. package/_Sprintpilot/skills/sprintpilot-codebase-map/agents/quality-assessor.md +10 -8
  31. package/_Sprintpilot/skills/sprintpilot-codebase-map/agents/stack-analyzer.md +11 -9
  32. package/_Sprintpilot/skills/sprintpilot-codebase-map/workflow.md +1 -1
  33. package/_Sprintpilot/skills/sprintpilot-dependency-graph/SKILL.md +63 -0
  34. package/_Sprintpilot/skills/sprintpilot-dependency-graph/workflow.md +227 -0
  35. package/_Sprintpilot/skills/sprintpilot-plan-sprint/SKILL.md +67 -0
  36. package/_Sprintpilot/skills/sprintpilot-plan-sprint/workflow.md +435 -0
  37. package/_Sprintpilot/skills/sprintpilot-sprint-progress/SKILL.md +53 -0
  38. package/_Sprintpilot/skills/sprintpilot-sprint-progress/workflow.md +169 -0
  39. package/lib/commands/install.js +186 -12
  40. package/package.json +1 -1
  41. package/_Sprintpilot/skills/sprintpilot-code-review/SKILL.md +0 -6
  42. package/_Sprintpilot/skills/sprintpilot-code-review/agents/acceptance-auditor.md +0 -51
  43. package/_Sprintpilot/skills/sprintpilot-code-review/agents/blind-hunter.md +0 -39
  44. package/_Sprintpilot/skills/sprintpilot-code-review/agents/edge-case-hunter.md +0 -46
  45. package/_Sprintpilot/skills/sprintpilot-code-review/workflow.md +0 -111
  46. package/_Sprintpilot/skills/sprintpilot-party-mode/SKILL.md +0 -6
  47. package/_Sprintpilot/skills/sprintpilot-party-mode/workflow.md +0 -138
@@ -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>