agileflow 2.42.0 → 2.43.0
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/package.json +1 -1
- package/src/core/agents/accessibility.md +8 -0
- package/src/core/agents/adr-writer.md +8 -0
- package/src/core/agents/analytics.md +8 -0
- package/src/core/agents/api.md +8 -2
- package/src/core/agents/ci.md +8 -0
- package/src/core/agents/compliance.md +8 -0
- package/src/core/agents/configuration/archival.md +23 -1
- package/src/core/agents/configuration/attribution.md +22 -1
- package/src/core/agents/configuration/ci.md +23 -1
- package/src/core/agents/configuration/git-config.md +23 -1
- package/src/core/agents/configuration/hooks.md +22 -1
- package/src/core/agents/configuration/precompact.md +8 -0
- package/src/core/agents/configuration/status-line.md +93 -13
- package/src/core/agents/configuration/verify.md +23 -1
- package/src/core/agents/database.md +8 -2
- package/src/core/agents/datamigration.md +8 -0
- package/src/core/agents/design.md +8 -0
- package/src/core/agents/devops.md +8 -2
- package/src/core/agents/documentation.md +8 -0
- package/src/core/agents/epic-planner.md +8 -0
- package/src/core/agents/integrations.md +8 -0
- package/src/core/agents/mentor.md +8 -3
- package/src/core/agents/mobile.md +8 -0
- package/src/core/agents/monitoring.md +8 -0
- package/src/core/agents/multi-expert.md +8 -0
- package/src/core/agents/performance.md +8 -2
- package/src/core/agents/product.md +8 -0
- package/src/core/agents/qa.md +8 -0
- package/src/core/agents/readme-updater.md +8 -0
- package/src/core/agents/refactor.md +8 -2
- package/src/core/agents/research.md +8 -0
- package/src/core/agents/security.md +8 -2
- package/src/core/agents/testing.md +8 -0
- package/src/core/agents/ui.md +8 -2
- package/src/core/commands/adr.md +2 -13
- package/src/core/commands/agent.md +2 -13
- package/src/core/commands/assign.md +2 -13
- package/src/core/commands/auto.md +2 -13
- package/src/core/commands/babysit.md +94 -88
- package/src/core/commands/baseline.md +2 -13
- package/src/core/commands/blockers.md +4 -13
- package/src/core/commands/board.md +4 -13
- package/src/core/commands/deps.md +4 -15
- package/src/core/commands/docs.md +2 -15
- package/src/core/commands/epic.md +4 -15
- package/src/core/commands/help.md +3 -14
- package/src/core/commands/metrics.md +4 -15
- package/src/core/commands/packages.md +3 -14
- package/src/core/commands/pr.md +4 -13
- package/src/core/commands/readme-sync.md +7 -24
- package/src/core/commands/research.md +3 -14
- package/src/core/commands/retro.md +4 -15
- package/src/core/commands/sprint.md +8 -0
- package/src/core/commands/status.md +5 -14
- package/src/core/commands/story-validate.md +3 -14
- package/src/core/commands/story.md +17 -17
- package/src/core/commands/template.md +2 -15
- package/src/core/commands/tests.md +2 -15
- package/src/core/commands/update.md +2 -15
- package/src/core/commands/validate-expertise.md +2 -15
- package/src/core/commands/velocity.md +4 -15
- package/src/core/commands/verify.md +4 -15
- package/src/core/templates/agileflow-configure.js +123 -2
- package/src/core/templates/agileflow-metadata.json +12 -0
- package/src/core/templates/agileflow-statusline.sh +238 -44
|
@@ -10,25 +10,14 @@ Visualize and analyze story/epic dependency graphs with critical path analysis a
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
-
##
|
|
14
|
-
|
|
15
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
13
|
+
## STEP 0: Gather Context
|
|
16
14
|
|
|
17
15
|
```bash
|
|
18
|
-
node -
|
|
19
|
-
const fs = require('fs');
|
|
20
|
-
const path = 'docs/09-agents/session-state.json';
|
|
21
|
-
if (fs.existsSync(path)) {
|
|
22
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
23
|
-
const cmd = { name: 'deps', activated_at: new Date().toISOString(), state: {} };
|
|
24
|
-
state.active_commands = state.active_commands || [];
|
|
25
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
26
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
27
|
-
console.log('✅ Deps command activated');
|
|
28
|
-
}
|
|
29
|
-
"
|
|
16
|
+
node scripts/obtain-context.js deps
|
|
30
17
|
```
|
|
31
18
|
|
|
19
|
+
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
20
|
+
|
|
32
21
|
---
|
|
33
22
|
|
|
34
23
|
<!-- COMPACT_SUMMARY_START -->
|
|
@@ -9,23 +9,10 @@ Synchronize documentation with codebase changes.
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
##
|
|
13
|
-
|
|
14
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
12
|
+
## STEP 0: Gather Context
|
|
15
13
|
|
|
16
14
|
```bash
|
|
17
|
-
node -
|
|
18
|
-
const fs = require('fs');
|
|
19
|
-
const path = 'docs/09-agents/session-state.json';
|
|
20
|
-
if (fs.existsSync(path)) {
|
|
21
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
22
|
-
const cmd = { name: 'docs', activated_at: new Date().toISOString(), state: {} };
|
|
23
|
-
state.active_commands = state.active_commands || [];
|
|
24
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
25
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
26
|
-
console.log('✅ Docs command activated');
|
|
27
|
-
}
|
|
28
|
-
"
|
|
15
|
+
node scripts/obtain-context.js docs
|
|
29
16
|
```
|
|
30
17
|
|
|
31
18
|
---
|
|
@@ -7,25 +7,14 @@ argument-hint: EPIC=<EP-ID> TITLE=<text> OWNER=<id> GOAL=<text> [STORIES=<list>]
|
|
|
7
7
|
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
-
##
|
|
11
|
-
|
|
12
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
10
|
+
## STEP 0: Gather Context
|
|
13
11
|
|
|
14
12
|
```bash
|
|
15
|
-
node -
|
|
16
|
-
const fs = require('fs');
|
|
17
|
-
const path = 'docs/09-agents/session-state.json';
|
|
18
|
-
if (fs.existsSync(path)) {
|
|
19
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
20
|
-
const cmd = { name: 'epic', activated_at: new Date().toISOString(), state: {} };
|
|
21
|
-
state.active_commands = state.active_commands || [];
|
|
22
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
23
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
24
|
-
console.log('✅ Epic command activated');
|
|
25
|
-
}
|
|
26
|
-
"
|
|
13
|
+
node scripts/obtain-context.js epic
|
|
27
14
|
```
|
|
28
15
|
|
|
16
|
+
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
17
|
+
|
|
29
18
|
---
|
|
30
19
|
|
|
31
20
|
Create a new epic with optional child stories.
|
|
@@ -8,26 +8,15 @@ Display a concise overview of the AgileFlow system.
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
## STEP 0:
|
|
11
|
+
## STEP 0: Gather Context
|
|
12
12
|
|
|
13
13
|
```bash
|
|
14
|
-
node -
|
|
15
|
-
const fs = require('fs');
|
|
16
|
-
const path = 'docs/09-agents/session-state.json';
|
|
17
|
-
if (fs.existsSync(path)) {
|
|
18
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
19
|
-
const cmd = { name: 'help', activated_at: new Date().toISOString(), state: {} };
|
|
20
|
-
state.active_commands = state.active_commands || [];
|
|
21
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
22
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
23
|
-
console.log('✅ help command activated');
|
|
24
|
-
}
|
|
25
|
-
"
|
|
14
|
+
node scripts/obtain-context.js help
|
|
26
15
|
```
|
|
27
16
|
|
|
28
17
|
---
|
|
29
18
|
|
|
30
|
-
##
|
|
19
|
+
## Context Loading (Documentation)
|
|
31
20
|
|
|
32
21
|
**PURPOSE**: Immediately load full context before executing any logic.
|
|
33
22
|
|
|
@@ -8,25 +8,14 @@ model: haiku
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
11
|
+
## STEP 0: Gather Context
|
|
14
12
|
|
|
15
13
|
```bash
|
|
16
|
-
node -
|
|
17
|
-
const fs = require('fs');
|
|
18
|
-
const path = 'docs/09-agents/session-state.json';
|
|
19
|
-
if (fs.existsSync(path)) {
|
|
20
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
21
|
-
const cmd = { name: 'metrics', activated_at: new Date().toISOString(), state: {} };
|
|
22
|
-
state.active_commands = state.active_commands || [];
|
|
23
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
24
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
25
|
-
console.log('✅ Metrics command activated');
|
|
26
|
-
}
|
|
27
|
-
"
|
|
14
|
+
node scripts/obtain-context.js metrics
|
|
28
15
|
```
|
|
29
16
|
|
|
17
|
+
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
18
|
+
|
|
30
19
|
---
|
|
31
20
|
|
|
32
21
|
Comprehensive project analytics dashboard with cycle time, lead time, throughput, and trend analysis.
|
|
@@ -8,26 +8,15 @@ Manage project package dependencies (npm, pip, cargo, etc.) with dashboard, upda
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
## STEP 0:
|
|
11
|
+
## STEP 0: Gather Context
|
|
12
12
|
|
|
13
13
|
```bash
|
|
14
|
-
node -
|
|
15
|
-
const fs = require('fs');
|
|
16
|
-
const path = 'docs/09-agents/session-state.json';
|
|
17
|
-
if (fs.existsSync(path)) {
|
|
18
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
19
|
-
const cmd = { name: 'packages', activated_at: new Date().toISOString(), state: {} };
|
|
20
|
-
state.active_commands = state.active_commands || [];
|
|
21
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
22
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
23
|
-
console.log('✅ packages command activated');
|
|
24
|
-
}
|
|
25
|
-
"
|
|
14
|
+
node scripts/obtain-context.js packages
|
|
26
15
|
```
|
|
27
16
|
|
|
28
17
|
---
|
|
29
18
|
|
|
30
|
-
##
|
|
19
|
+
## Context Loading (Documentation)
|
|
31
20
|
|
|
32
21
|
**PURPOSE**: Immediately load full context before executing any logic.
|
|
33
22
|
|
package/src/core/commands/pr.md
CHANGED
|
@@ -5,23 +5,14 @@ argument-hint: STORY=<US-ID> [TITLE=<text>] [TEST_EVIDENCE=<text>]
|
|
|
5
5
|
|
|
6
6
|
# pr-template
|
|
7
7
|
|
|
8
|
-
## STEP 0:
|
|
8
|
+
## STEP 0: Gather Context
|
|
9
9
|
|
|
10
10
|
```bash
|
|
11
|
-
node -
|
|
12
|
-
const fs = require('fs');
|
|
13
|
-
const path = 'docs/09-agents/session-state.json';
|
|
14
|
-
if (fs.existsSync(path)) {
|
|
15
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
16
|
-
const cmd = { name: 'pr-template', activated_at: new Date().toISOString(), state: {} };
|
|
17
|
-
state.active_commands = state.active_commands || [];
|
|
18
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
19
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
20
|
-
console.log('✅ pr-template command activated');
|
|
21
|
-
}
|
|
22
|
-
"
|
|
11
|
+
node scripts/obtain-context.js pr
|
|
23
12
|
```
|
|
24
13
|
|
|
14
|
+
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
15
|
+
|
|
25
16
|
---
|
|
26
17
|
|
|
27
18
|
<!-- COMPACT_SUMMARY_START -->
|
|
@@ -9,26 +9,15 @@ Synchronize a folder's README.md with its current contents.
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
## STEP 0:
|
|
12
|
+
## STEP 0: Gather Context
|
|
13
13
|
|
|
14
14
|
```bash
|
|
15
|
-
node -
|
|
16
|
-
const fs = require('fs');
|
|
17
|
-
const path = 'docs/09-agents/session-state.json';
|
|
18
|
-
if (fs.existsSync(path)) {
|
|
19
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
20
|
-
const cmd = { name: 'readme-sync', activated_at: new Date().toISOString(), state: {} };
|
|
21
|
-
state.active_commands = state.active_commands || [];
|
|
22
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
23
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
24
|
-
console.log('✅ readme-sync command activated');
|
|
25
|
-
}
|
|
26
|
-
"
|
|
15
|
+
node scripts/obtain-context.js readme-sync
|
|
27
16
|
```
|
|
28
17
|
|
|
29
18
|
---
|
|
30
19
|
|
|
31
|
-
##
|
|
20
|
+
## Context Loading (Documentation)
|
|
32
21
|
|
|
33
22
|
**PURPOSE**: Immediately load full context before executing any logic.
|
|
34
23
|
|
|
@@ -58,7 +47,7 @@ if (fs.existsSync(path)) {
|
|
|
58
47
|
- **AskUserQuestion**: Use XML format with multiSelect for decisions
|
|
59
48
|
- **Output**: Updates only "## Contents" section, preserves all other sections
|
|
60
49
|
- **Use Cases**: After adding files, before releases, documentation cleanup, reorganizing folders
|
|
61
|
-
- **Related**:
|
|
50
|
+
- **Related**: Async agent spawning patterns, AskUserQuestion format
|
|
62
51
|
<!-- COMPACT_SUMMARY_END -->
|
|
63
52
|
|
|
64
53
|
---
|
|
@@ -70,7 +59,7 @@ ROLE: README Sync Orchestrator
|
|
|
70
59
|
🔴 **AskUserQuestion Format** (when asking decisions):
|
|
71
60
|
- NEVER ask users to "type" anything - use proper options
|
|
72
61
|
- Use XML invoke format with multiSelect for multiple choices
|
|
73
|
-
- See
|
|
62
|
+
- See AskUserQuestion format examples in any configuration agent
|
|
74
63
|
|
|
75
64
|
INPUTS
|
|
76
65
|
FOLDER=<path> Path to folder (e.g., docs/02-practices)
|
|
@@ -178,9 +167,6 @@ Found 8 files:
|
|
|
178
167
|
• ci.md – CI/CD pipeline configuration, testing gates
|
|
179
168
|
• security.md – Security practices, input validation, authentication
|
|
180
169
|
• releasing.md – Release procedures, versioning, changelog
|
|
181
|
-
• diagrams.md – Mermaid diagram generation with light/dark themes
|
|
182
|
-
• async-agent-spawning.md – Launch, monitor, and retrieve background agents
|
|
183
|
-
• ask-user-question.md – Using the AskUserQuestion tool effectively
|
|
184
170
|
|
|
185
171
|
Proposed Changes to ## Contents Section:
|
|
186
172
|
─────────────────────────────────────────
|
|
@@ -189,9 +175,6 @@ Proposed Changes to ## Contents Section:
|
|
|
189
175
|
- **ci.md** – CI/CD pipeline configuration, testing gates
|
|
190
176
|
- **security.md** – Security practices, input validation, authentication
|
|
191
177
|
- **releasing.md** – Release procedures, versioning, changelog
|
|
192
|
-
- **diagrams.md** – Mermaid diagram generation with light/dark themes
|
|
193
|
-
- **async-agent-spawning.md** – Launch, monitor, and retrieve background agents
|
|
194
|
-
- **ask-user-question.md** – Using the AskUserQuestion tool effectively
|
|
195
178
|
|
|
196
179
|
Update README.md with these changes? (YES/NO)
|
|
197
180
|
```
|
|
@@ -224,5 +207,5 @@ Only the `## Contents` section of README.md:
|
|
|
224
207
|
- Preserves custom notes and links
|
|
225
208
|
|
|
226
209
|
RELATED
|
|
227
|
-
-
|
|
228
|
-
-
|
|
210
|
+
- CLAUDE.md - Project conventions and practices
|
|
211
|
+
- Mermaid diagram syntax - For flowcharts and sequence diagrams
|
|
@@ -8,26 +8,15 @@ Initialize or save research notes to the research folder.
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
## STEP 0:
|
|
11
|
+
## STEP 0: Gather Context
|
|
12
12
|
|
|
13
13
|
```bash
|
|
14
|
-
node -
|
|
15
|
-
const fs = require('fs');
|
|
16
|
-
const path = 'docs/09-agents/session-state.json';
|
|
17
|
-
if (fs.existsSync(path)) {
|
|
18
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
19
|
-
const cmd = { name: 'research-init', activated_at: new Date().toISOString(), state: {} };
|
|
20
|
-
state.active_commands = state.active_commands || [];
|
|
21
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
22
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
23
|
-
console.log('✅ research-init command activated');
|
|
24
|
-
}
|
|
25
|
-
"
|
|
14
|
+
node scripts/obtain-context.js research
|
|
26
15
|
```
|
|
27
16
|
|
|
28
17
|
---
|
|
29
18
|
|
|
30
|
-
##
|
|
19
|
+
## Context Loading (Documentation)
|
|
31
20
|
|
|
32
21
|
**PURPOSE**: Immediately load full context before executing any logic.
|
|
33
22
|
|
|
@@ -8,25 +8,14 @@ model: haiku
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
11
|
+
## STEP 0: Gather Context
|
|
14
12
|
|
|
15
13
|
```bash
|
|
16
|
-
node -
|
|
17
|
-
const fs = require('fs');
|
|
18
|
-
const path = 'docs/09-agents/session-state.json';
|
|
19
|
-
if (fs.existsSync(path)) {
|
|
20
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
21
|
-
const cmd = { name: 'retro', activated_at: new Date().toISOString(), state: {} };
|
|
22
|
-
state.active_commands = state.active_commands || [];
|
|
23
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
24
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
25
|
-
console.log('✅ Retro command activated');
|
|
26
|
-
}
|
|
27
|
-
"
|
|
14
|
+
node scripts/obtain-context.js retro
|
|
28
15
|
```
|
|
29
16
|
|
|
17
|
+
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
18
|
+
|
|
30
19
|
---
|
|
31
20
|
|
|
32
21
|
Automated retrospective generator that analyzes patterns and surfaces insights from AgileFlow data.
|
|
@@ -68,6 +68,14 @@ Sprint Planner that creates data-driven sprint commitments based on historical v
|
|
|
68
68
|
|
|
69
69
|
Intelligent sprint planning with capacity-based story selection, dependency validation, and velocity forecasting.
|
|
70
70
|
|
|
71
|
+
## STEP 0: Gather Context
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
node scripts/obtain-context.js sprint
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
78
|
+
|
|
71
79
|
## Prompt
|
|
72
80
|
|
|
73
81
|
ROLE: Sprint Planner
|
|
@@ -9,26 +9,17 @@ Update story status and broadcast to agents via message bus.
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
## STEP 0:
|
|
12
|
+
## STEP 0: Gather Context
|
|
13
13
|
|
|
14
14
|
```bash
|
|
15
|
-
node -
|
|
16
|
-
const fs = require('fs');
|
|
17
|
-
const path = 'docs/09-agents/session-state.json';
|
|
18
|
-
if (fs.existsSync(path)) {
|
|
19
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
20
|
-
const cmd = { name: 'status', activated_at: new Date().toISOString(), state: {} };
|
|
21
|
-
state.active_commands = state.active_commands || [];
|
|
22
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
23
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
24
|
-
console.log('✅ status command activated');
|
|
25
|
-
}
|
|
26
|
-
"
|
|
15
|
+
node scripts/obtain-context.js status
|
|
27
16
|
```
|
|
28
17
|
|
|
18
|
+
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
19
|
+
|
|
29
20
|
---
|
|
30
21
|
|
|
31
|
-
##
|
|
22
|
+
## Context Loading (Documentation)
|
|
32
23
|
|
|
33
24
|
**PURPOSE**: Immediately load full context before executing any logic.
|
|
34
25
|
|
|
@@ -9,26 +9,15 @@ Validate a specific story for completeness, architecture context, and readiness
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
## STEP 0:
|
|
12
|
+
## STEP 0: Gather Context
|
|
13
13
|
|
|
14
14
|
```bash
|
|
15
|
-
node -
|
|
16
|
-
const fs = require('fs');
|
|
17
|
-
const path = 'docs/09-agents/session-state.json';
|
|
18
|
-
if (fs.existsSync(path)) {
|
|
19
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
20
|
-
const cmd = { name: 'story-validate', activated_at: new Date().toISOString(), state: {} };
|
|
21
|
-
state.active_commands = state.active_commands || [];
|
|
22
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
23
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
24
|
-
console.log('✅ story-validate command activated');
|
|
25
|
-
}
|
|
26
|
-
"
|
|
15
|
+
node scripts/obtain-context.js story-validate
|
|
27
16
|
```
|
|
28
17
|
|
|
29
18
|
---
|
|
30
19
|
|
|
31
|
-
##
|
|
20
|
+
## Context Loading (Documentation)
|
|
32
21
|
|
|
33
22
|
**PURPOSE**: Immediately load full context before executing any logic.
|
|
34
23
|
|
|
@@ -9,23 +9,10 @@ Create a new user story with acceptance criteria and test stubs.
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
##
|
|
13
|
-
|
|
14
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
12
|
+
## STEP 0: Gather Context
|
|
15
13
|
|
|
16
14
|
```bash
|
|
17
|
-
node -
|
|
18
|
-
const fs = require('fs');
|
|
19
|
-
const path = 'docs/09-agents/session-state.json';
|
|
20
|
-
if (fs.existsSync(path)) {
|
|
21
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
22
|
-
const cmd = { name: 'story', activated_at: new Date().toISOString(), state: {} };
|
|
23
|
-
state.active_commands = state.active_commands || [];
|
|
24
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
25
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
26
|
-
console.log('✅ Story command activated');
|
|
27
|
-
}
|
|
28
|
-
"
|
|
15
|
+
node scripts/obtain-context.js story
|
|
29
16
|
```
|
|
30
17
|
|
|
31
18
|
---
|
|
@@ -40,7 +27,7 @@ if (fs.existsSync(path)) {
|
|
|
40
27
|
**Critical Rules**:
|
|
41
28
|
- MUST use TodoWrite to track all 6 steps (parse, create story, create test stub, update status.json, append to bus/log.jsonl, confirm)
|
|
42
29
|
- MUST show preview before creating files (use AskUserQuestion with proper XML invoke format)
|
|
43
|
-
- NEVER ask users to "type" - always use proper options format
|
|
30
|
+
- NEVER ask users to "type" - always use proper options format
|
|
44
31
|
- MUST use story-template.md as the base structure
|
|
45
32
|
- MUST create test stub referencing acceptance criteria
|
|
46
33
|
- MUST update both status.json and bus/log.jsonl
|
|
@@ -102,7 +89,20 @@ if (fs.existsSync(path)) {
|
|
|
102
89
|
|
|
103
90
|
ROLE: Story Creator
|
|
104
91
|
|
|
105
|
-
🔴 **AskUserQuestion Format**: NEVER ask users to "type" anything. Use proper options
|
|
92
|
+
🔴 **AskUserQuestion Format**: NEVER ask users to "type" anything. Use proper options:
|
|
93
|
+
```xml
|
|
94
|
+
<invoke name="AskUserQuestion">
|
|
95
|
+
<parameter name="questions">[{
|
|
96
|
+
"question": "Create this story?",
|
|
97
|
+
"header": "Confirm",
|
|
98
|
+
"multiSelect": false,
|
|
99
|
+
"options": [
|
|
100
|
+
{"label": "Yes, create it", "description": "Create story file and test stub"},
|
|
101
|
+
{"label": "Edit first", "description": "Modify details before creating"}
|
|
102
|
+
]
|
|
103
|
+
}]</parameter>
|
|
104
|
+
</invoke>
|
|
105
|
+
```
|
|
106
106
|
|
|
107
107
|
TODO LIST TRACKING
|
|
108
108
|
**CRITICAL**: Immediately create a todo list using TodoWrite tool to track story creation:
|
|
@@ -8,23 +8,10 @@ Create and manage custom templates for stories, epics, ADRs, and other documents
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
11
|
+
## STEP 0: Gather Context
|
|
14
12
|
|
|
15
13
|
```bash
|
|
16
|
-
node -
|
|
17
|
-
const fs = require('fs');
|
|
18
|
-
const path = 'docs/09-agents/session-state.json';
|
|
19
|
-
if (fs.existsSync(path)) {
|
|
20
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
21
|
-
const cmd = { name: 'custom-template', activated_at: new Date().toISOString(), state: {} };
|
|
22
|
-
state.active_commands = state.active_commands || [];
|
|
23
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
24
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
25
|
-
console.log('✅ Custom-template command activated');
|
|
26
|
-
}
|
|
27
|
-
"
|
|
14
|
+
node scripts/obtain-context.js template
|
|
28
15
|
```
|
|
29
16
|
|
|
30
17
|
---
|
|
@@ -8,23 +8,10 @@ Automatically set up testing infrastructure for projects without existing tests.
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
11
|
+
## STEP 0: Gather Context
|
|
14
12
|
|
|
15
13
|
```bash
|
|
16
|
-
node -
|
|
17
|
-
const fs = require('fs');
|
|
18
|
-
const path = 'docs/09-agents/session-state.json';
|
|
19
|
-
if (fs.existsSync(path)) {
|
|
20
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
21
|
-
const cmd = { name: 'setup-tests', activated_at: new Date().toISOString(), state: {} };
|
|
22
|
-
state.active_commands = state.active_commands || [];
|
|
23
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
24
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
25
|
-
console.log('✅ Setup-tests command activated');
|
|
26
|
-
}
|
|
27
|
-
"
|
|
14
|
+
node scripts/obtain-context.js tests
|
|
28
15
|
```
|
|
29
16
|
|
|
30
17
|
---
|
|
@@ -8,23 +8,10 @@ Generate stakeholder communication updates from project status.
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
11
|
+
## STEP 0: Gather Context
|
|
14
12
|
|
|
15
13
|
```bash
|
|
16
|
-
node -
|
|
17
|
-
const fs = require('fs');
|
|
18
|
-
const path = 'docs/09-agents/session-state.json';
|
|
19
|
-
if (fs.existsSync(path)) {
|
|
20
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
21
|
-
const cmd = { name: 'stakeholder-update', activated_at: new Date().toISOString(), state: {} };
|
|
22
|
-
state.active_commands = state.active_commands || [];
|
|
23
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
24
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
25
|
-
console.log('✅ Stakeholder-update command activated');
|
|
26
|
-
}
|
|
27
|
-
"
|
|
14
|
+
node scripts/obtain-context.js update
|
|
28
15
|
```
|
|
29
16
|
|
|
30
17
|
---
|
|
@@ -10,23 +10,10 @@ Validate agent expertise files to ensure they haven't drifted from the codebase.
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
-
##
|
|
14
|
-
|
|
15
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
13
|
+
## STEP 0: Gather Context
|
|
16
14
|
|
|
17
15
|
```bash
|
|
18
|
-
node -
|
|
19
|
-
const fs = require('fs');
|
|
20
|
-
const path = 'docs/09-agents/session-state.json';
|
|
21
|
-
if (fs.existsSync(path)) {
|
|
22
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
23
|
-
const cmd = { name: 'validate-expertise', activated_at: new Date().toISOString(), state: {} };
|
|
24
|
-
state.active_commands = state.active_commands || [];
|
|
25
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
26
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
27
|
-
console.log('✅ Validate-expertise command activated');
|
|
28
|
-
}
|
|
29
|
-
"
|
|
16
|
+
node scripts/obtain-context.js validate-expertise
|
|
30
17
|
```
|
|
31
18
|
|
|
32
19
|
---
|
|
@@ -9,25 +9,14 @@ Track team velocity, calculate trends, and forecast completion dates.
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
##
|
|
13
|
-
|
|
14
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
12
|
+
## STEP 0: Gather Context
|
|
15
13
|
|
|
16
14
|
```bash
|
|
17
|
-
node -
|
|
18
|
-
const fs = require('fs');
|
|
19
|
-
const path = 'docs/09-agents/session-state.json';
|
|
20
|
-
if (fs.existsSync(path)) {
|
|
21
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
22
|
-
const cmd = { name: 'velocity', activated_at: new Date().toISOString(), state: {} };
|
|
23
|
-
state.active_commands = state.active_commands || [];
|
|
24
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
25
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
26
|
-
console.log('✅ Velocity command activated');
|
|
27
|
-
}
|
|
28
|
-
"
|
|
15
|
+
node scripts/obtain-context.js velocity
|
|
29
16
|
```
|
|
30
17
|
|
|
18
|
+
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
19
|
+
|
|
31
20
|
---
|
|
32
21
|
|
|
33
22
|
<!-- COMPACT_SUMMARY_START -->
|
|
@@ -9,25 +9,14 @@ Execute project tests and update test status for stories.
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
##
|
|
13
|
-
|
|
14
|
-
**Before doing ANYTHING else, run this to register the command for context preservation:**
|
|
12
|
+
## STEP 0: Gather Context
|
|
15
13
|
|
|
16
14
|
```bash
|
|
17
|
-
node -
|
|
18
|
-
const fs = require('fs');
|
|
19
|
-
const path = 'docs/09-agents/session-state.json';
|
|
20
|
-
if (fs.existsSync(path)) {
|
|
21
|
-
const state = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
22
|
-
const cmd = { name: 'verify', activated_at: new Date().toISOString(), state: {} };
|
|
23
|
-
state.active_commands = state.active_commands || [];
|
|
24
|
-
if (!state.active_commands.some(c => c.name === cmd.name)) state.active_commands.push(cmd);
|
|
25
|
-
fs.writeFileSync(path, JSON.stringify(state, null, 2) + '\n');
|
|
26
|
-
console.log('✅ Verify command activated');
|
|
27
|
-
}
|
|
28
|
-
"
|
|
15
|
+
node scripts/obtain-context.js verify
|
|
29
16
|
```
|
|
30
17
|
|
|
18
|
+
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
19
|
+
|
|
31
20
|
---
|
|
32
21
|
|
|
33
22
|
<!-- COMPACT_SUMMARY_START -->
|