@pjmendonca/devflow 1.19.0 → 1.20.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 (55) hide show
  1. package/.claude/hooks/session-startup.sh +20 -0
  2. package/.claude/settings.json +0 -4
  3. package/.claude/skills/dashboard/SKILL.md +118 -0
  4. package/CHANGELOG.md +26 -0
  5. package/README.md +2 -2
  6. package/bin/devflow-dashboard.js +10 -0
  7. package/bin/devflow-swarm.js +11 -0
  8. package/bin/devflow.js +2 -0
  9. package/package.json +3 -1
  10. package/tooling/.automation/memory/knowledge/kg_integration-test.json +212 -1
  11. package/tooling/.automation/memory/knowledge/kg_test-story.json +710 -2
  12. package/tooling/.automation/memory/shared/shared_integration-test.json +61 -1
  13. package/tooling/.automation/memory/shared/shared_test-story.json +181 -1
  14. package/tooling/.automation/memory/shared/shared_test.json +313 -1
  15. package/tooling/.automation/memory/shared/shared_validation-check.json +66 -1
  16. package/tooling/.automation/validation/history/2026-01-16_val_0b81ec2f.json +41 -0
  17. package/tooling/.automation/validation/history/2026-01-16_val_26c18e64.json +32 -0
  18. package/tooling/.automation/validation/history/2026-01-16_val_32af0152.json +32 -0
  19. package/tooling/.automation/validation/history/2026-01-16_val_353d1569.json +32 -0
  20. package/tooling/.automation/validation/history/2026-01-16_val_39e3c143.json +59 -0
  21. package/tooling/.automation/validation/history/2026-01-16_val_77fb42e4.json +32 -0
  22. package/tooling/.automation/validation/history/2026-01-16_val_a0752656.json +41 -0
  23. package/tooling/.automation/validation/history/2026-01-16_val_a29213b0.json +41 -0
  24. package/tooling/.automation/validation/history/2026-01-16_val_a9375d4c.json +32 -0
  25. package/tooling/.automation/validation/history/2026-01-16_val_c147bbdf.json +32 -0
  26. package/tooling/.automation/validation/history/2026-01-16_val_d06ccf8d.json +32 -0
  27. package/tooling/.automation/validation/history/2026-01-16_val_d6a80295.json +59 -0
  28. package/tooling/.automation/validation/history/2026-01-16_val_dce5005d.json +41 -0
  29. package/tooling/.automation/validation/history/2026-01-16_val_e53b3a63.json +32 -0
  30. package/tooling/.automation/validation/history/2026-01-18_val_108c18cf.json +32 -0
  31. package/tooling/.automation/validation/history/2026-01-18_val_35ee606f.json +32 -0
  32. package/tooling/.automation/validation/history/2026-01-18_val_3fc7268b.json +41 -0
  33. package/tooling/.automation/validation/history/2026-01-18_val_49f0bb17.json +32 -0
  34. package/tooling/.automation/validation/history/2026-01-18_val_53c928d2.json +59 -0
  35. package/tooling/.automation/validation/history/2026-01-18_val_55604791.json +32 -0
  36. package/tooling/.automation/validation/history/2026-01-18_val_67e695f0.json +41 -0
  37. package/tooling/.automation/validation/history/2026-01-18_val_82784713.json +41 -0
  38. package/tooling/.automation/validation/history/2026-01-18_val_94a8e584.json +32 -0
  39. package/tooling/.automation/validation/history/2026-01-18_val_95353af0.json +32 -0
  40. package/tooling/.automation/validation/history/2026-01-18_val_9a046f3a.json +32 -0
  41. package/tooling/.automation/validation/history/2026-01-18_val_b3443d2e.json +32 -0
  42. package/tooling/.automation/validation/history/2026-01-18_val_bfd298f4.json +32 -0
  43. package/tooling/.automation/validation/history/2026-01-18_val_cfc2a362.json +32 -0
  44. package/tooling/.automation/validation/history/2026-01-18_val_e581a3d2.json +41 -0
  45. package/tooling/scripts/lib/__init__.py +1 -3
  46. package/tooling/scripts/lib/agent_router.py +0 -4
  47. package/tooling/scripts/lib/cost_display.py +7 -1
  48. package/tooling/scripts/lib/swarm_orchestrator.py +14 -12
  49. package/tooling/scripts/live_dashboard.py +832 -0
  50. package/tooling/scripts/new-doc.py +1 -1
  51. package/tooling/scripts/run-collab.py +3 -47
  52. package/tooling/scripts/run-story.py +21 -9
  53. package/tooling/scripts/setup-checkpoint-service.py +1 -1
  54. package/.claude/commands/pair.md +0 -23
  55. package/tooling/scripts/lib/pair_programming.py +0 -688
@@ -424,4 +424,24 @@ echo " /develop - Development phase only"
424
424
  echo " /review - Code review only"
425
425
  echo " /costs - View cost dashboard"
426
426
 
427
+ # ============================================================================
428
+ # AUTO-LAUNCH LIVE DASHBOARD
429
+ # ============================================================================
430
+
431
+ DASHBOARD_SCRIPT="$PROJECT_DIR/tooling/scripts/live_dashboard.py"
432
+
433
+ if [ -f "$DASHBOARD_SCRIPT" ]; then
434
+ # Launch dashboard in a new terminal window (macOS)
435
+ if [ "$(uname)" = "Darwin" ]; then
436
+ osascript -e "tell application \"Terminal\"
437
+ do script \"cd '$PROJECT_DIR' && python3 '$DASHBOARD_SCRIPT' --compact\"
438
+ end tell" >/dev/null 2>&1 &
439
+ # Linux with common terminal emulators
440
+ elif command -v gnome-terminal >/dev/null 2>&1; then
441
+ gnome-terminal -- bash -c "cd '$PROJECT_DIR' && python3 '$DASHBOARD_SCRIPT'; exec bash" >/dev/null 2>&1 &
442
+ elif command -v xterm >/dev/null 2>&1; then
443
+ xterm -e "cd '$PROJECT_DIR' && python3 '$DASHBOARD_SCRIPT'" >/dev/null 2>&1 &
444
+ fi
445
+ fi
446
+
427
447
  exit 0
@@ -1,8 +1,4 @@
1
1
  {
2
- "statusLine": {
3
- "type": "command",
4
- "command": "~/.claude/statusline.sh"
5
- },
6
2
  "hooks": {
7
3
  "SessionStart": [
8
4
  {
@@ -0,0 +1,118 @@
1
+ ---
2
+ name: dashboard
3
+ description: Launch live status dashboard in a terminal
4
+ ---
5
+
6
+ # Live Dashboard Skill
7
+
8
+ Launch or provide instructions for the Devflow live status dashboard - a real-time display of context usage, cost tracking, and agent activity.
9
+
10
+ ## Usage
11
+
12
+ ```
13
+ /dashboard [story-key] [options]
14
+ ```
15
+
16
+ ## Options
17
+
18
+ | Option | Description |
19
+ |--------|-------------|
20
+ | story-key | Story to monitor (default: 'default') |
21
+ | --refresh N | Refresh interval in seconds (default: 0.5) |
22
+ | --compact | Single-line compact mode |
23
+ | --width N | Dashboard width (default: 70) |
24
+
25
+ ## Prompt
26
+
27
+ You are helping the user launch the Devflow live dashboard.
28
+
29
+ **Arguments:** $ARGUMENTS
30
+
31
+ ### Dashboard Launch Instructions
32
+
33
+ The live dashboard is a terminal-based real-time display that needs to run in a separate terminal to show continuous updates while you work.
34
+
35
+ **Option 1: VS Code Split Terminal (Recommended)**
36
+
37
+ Tell the user:
38
+
39
+ 1. Open the VS Code integrated terminal (Ctrl+` or Cmd+`)
40
+ 2. Click the "Split Terminal" button (or press Cmd+Shift+5 / Ctrl+Shift+5)
41
+ 3. In the new terminal pane, run:
42
+
43
+ ```bash
44
+ python3 tooling/scripts/live_dashboard.py $ARGUMENTS
45
+ ```
46
+
47
+ Or if using npm:
48
+ ```bash
49
+ npx devflow dashboard $ARGUMENTS
50
+ ```
51
+
52
+ **Option 2: Separate Terminal Window**
53
+
54
+ For a floating dashboard window:
55
+
56
+ ```bash
57
+ # Open a new terminal and run:
58
+ cd [project-root] && python3 tooling/scripts/live_dashboard.py $ARGUMENTS
59
+ ```
60
+
61
+ **Option 3: Compact Mode (less screen space)**
62
+
63
+ For minimal display:
64
+ ```bash
65
+ python3 tooling/scripts/live_dashboard.py --compact $ARGUMENTS
66
+ ```
67
+
68
+ ### Dashboard Features
69
+
70
+ The dashboard displays:
71
+
72
+ ```
73
+ +------------------------------------------------------------------+
74
+ | DEVFLOW LIVE DASHBOARD Updated: HH:MM |
75
+ +------------------------------------------------------------------+
76
+ | ACTIVITY |
77
+ | Agent: DEV [2/3] Development (3:45) |
78
+ | Task: Implementing user authentication |
79
+ +------------------------------------------------------------------+
80
+ | CONTEXT |
81
+ | Usage: [================--------] 65.2% ^ |
82
+ | Tokens: 130.4K/200K ~14 exchanges left |
83
+ +------------------------------------------------------------------+
84
+ | COST |
85
+ | Budget: [====--------------------] 12.3% |
86
+ | Spent: $1.85 / $15.00 In: 45.2K Out: 12.1K |
87
+ +------------------------------------------------------------------+
88
+ | RECENT |
89
+ | > +3.2K tokens (45s ago) |
90
+ | > +2.8K tokens (1m ago) |
91
+ +------------------------------------------------------------------+
92
+ ```
93
+
94
+ - **Activity**: Current agent, phase, task, and elapsed time
95
+ - **Context**: Visual progress bar with trend indicator and remaining exchanges
96
+ - **Cost**: Budget usage with token breakdown
97
+ - **Recent**: Token history showing recent activity
98
+
99
+ ### Color Coding
100
+
101
+ - Green: Safe levels (< 50% context, < 75% budget)
102
+ - Yellow: Caution (50-75% context, 75-90% budget)
103
+ - Red: Critical (> 75% context, > 90% budget)
104
+
105
+ ### Tips
106
+
107
+ 1. **High refresh rate**: Use `--refresh 0.25` for faster updates
108
+ 2. **Narrow terminal**: Use `--width 60` for smaller panes
109
+ 3. **Minimal mode**: Use `--compact` for single-line status
110
+ 4. **Stop dashboard**: Press Ctrl+C to exit
111
+
112
+ ### If No Data Shows
113
+
114
+ The dashboard reads from:
115
+ - Context state: `tooling/.automation/context/context_[story-key].json`
116
+ - Cost data: `tooling/.automation/costs/sessions/*.json`
117
+
118
+ If these files don't exist yet, run a story or use `/develop` to generate tracking data.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,32 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.20.1] - 2026-01-18
9
+
10
+ ### Changed
11
+ - **Version Bump** - Patch release for npm publish
12
+
13
+ ## [1.20.0] - 2026-01-16
14
+
15
+ ### Fixed
16
+ - **Import Error** - Fixed Python stdlib `platform` module conflict in multiple scripts
17
+ - `run-collab.py`, `run-story.py`, `new-doc.py`, `setup-checkpoint-service.py` now use `from lib.platform import`
18
+ - `swarm_orchestrator.py`, `pair_programming.py`, `cost_display.py` now prioritize lib.platform over stdlib
19
+ - Resolves `ImportError: cannot import name 'IS_MACOS' from 'platform'` on Python 3.14+
20
+
21
+ ### Added
22
+ - **Live Dashboard** - Real-time terminal status display for monitoring Devflow sessions
23
+ - Rich ASCII dashboard with box-drawing characters and color-coded progress bars
24
+ - Shows context usage, cost tracking, current agent/activity, and token history
25
+ - Configurable refresh rate (default 0.5s) for responsive updates
26
+ - Compact single-line mode with `--compact` flag
27
+ - Run via `devflow dashboard` or `python3 tooling/scripts/live_dashboard.py`
28
+ - New `/dashboard` skill with instructions for VS Code split terminal setup
29
+
30
+ - **Swarm Command** - Added `devflow swarm` CLI command for multi-agent swarm mode
31
+ - New `bin/devflow-swarm.js` wrapper that calls run-collab.py with --swarm flag
32
+ - Added to devflow.js dispatcher and package.json bin entries
33
+
8
34
  ## [1.19.0] - 2026-01-03
9
35
 
10
36
  ### Added
package/README.md CHANGED
@@ -747,7 +747,7 @@ Free to use in commercial and personal projects.
747
747
 
748
748
 
749
749
  <!-- VERSION_START - Auto-updated by update_version.py -->
750
- **Version**: 1.19.0
750
+ **Version**: 1.20.1
751
751
  **Status**: Production Ready
752
- **Last Updated**: 2026-01-03
752
+ **Last Updated**: 2026-01-18
753
753
  <!-- VERSION_END -->
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env node
2
+
3
+ const path = require('path');
4
+ const { execPythonScript, getScriptsDir } = require('../lib/exec-python');
5
+
6
+ const scriptPath = path.join(getScriptsDir(), 'live_dashboard.py');
7
+ const args = process.argv.slice(2);
8
+
9
+ const exitCode = execPythonScript(scriptPath, args);
10
+ process.exit(exitCode);
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env node
2
+
3
+ const path = require('path');
4
+ const { execPythonScript, getScriptsDir } = require('../lib/exec-python');
5
+
6
+ const scriptPath = path.join(getScriptsDir(), 'run-collab.py');
7
+ const args = process.argv.slice(2);
8
+
9
+ // Prepend --swarm flag to run in swarm mode
10
+ const exitCode = execPythonScript(scriptPath, ['--swarm', ...args]);
11
+ process.exit(exitCode);
package/bin/devflow.js CHANGED
@@ -6,6 +6,8 @@ const commands = {
6
6
  'install': 'Install Devflow into your project',
7
7
  'story': 'Run full story pipeline (context + dev + review)',
8
8
  'collab': 'Run collaborative story with mode selection',
9
+ 'swarm': 'Run multi-agent swarm mode (debate/consensus)',
10
+ 'dashboard': 'Live status dashboard (context, cost, activity)',
9
11
  'checkpoint': 'Create or restore context checkpoints',
10
12
  'memory': 'View or query shared agent memory',
11
13
  'cost': 'View cost dashboard and spending analytics',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pjmendonca/devflow",
3
- "version": "1.19.0",
3
+ "version": "1.20.1",
4
4
  "description": "Development workflow automation with Claude Code - agent-based development system with cost tracking",
5
5
  "keywords": [
6
6
  "devflow",
@@ -33,6 +33,8 @@
33
33
  "devflow-checkpoint": "bin/devflow-checkpoint.js",
34
34
  "devflow-memory": "bin/devflow-memory.js",
35
35
  "devflow-collab": "bin/devflow-collab.js",
36
+ "devflow-swarm": "bin/devflow-swarm.js",
37
+ "devflow-dashboard": "bin/devflow-dashboard.js",
36
38
  "devflow-create-persona": "bin/devflow-create-persona.js",
37
39
  "devflow-personalize": "bin/devflow-personalize.js",
38
40
  "devflow-validate-overrides": "bin/devflow-validate-overrides.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "story_key": "integration-test",
3
- "last_updated": "2026-01-03T14:30:38.051845",
3
+ "last_updated": "2026-01-18T10:57:50.036218",
4
4
  "decisions": {},
5
5
  "topic_index": {},
6
6
  "handoffs": [
@@ -962,6 +962,217 @@
962
962
  "Implement the required functionality",
963
963
  "Write tests for the implementation"
964
964
  ]
965
+ },
966
+ {
967
+ "id": "handoff_cb6d7c7a",
968
+ "timestamp": "2026-01-16T12:33:30.919040",
969
+ "from_agent": "SM",
970
+ "to_agent": "DEV",
971
+ "story_key": "integration-test",
972
+ "summary": "Ready for implementation",
973
+ "key_decisions": [],
974
+ "blockers_resolved": [],
975
+ "watch_out_for": [],
976
+ "files_touched": [
977
+ ".claude/commands/brainstorm.md",
978
+ ".claude/commands/init.md",
979
+ ".claude/skills/brainstorm/SKILL.md",
980
+ ".claude/skills/dashboard/SKILL.md",
981
+ "CHANGELOG.md",
982
+ "README.md",
983
+ "bin/devflow-dashboard.js",
984
+ "bin/devflow-swarm.js",
985
+ "bin/devflow.js",
986
+ "package.json",
987
+ "pyproject.toml",
988
+ "tooling/docs/stories/.gitkeep",
989
+ "tooling/docs/templates/brainstorm-guide.md",
990
+ "tooling/docs/templates/story.md",
991
+ "tooling/scripts/lib/__init__.py",
992
+ "tooling/scripts/lib/cost_display.py",
993
+ "tooling/scripts/lib/pair_programming.py",
994
+ "tooling/scripts/lib/swarm_orchestrator.py",
995
+ "tooling/scripts/live_dashboard.py",
996
+ "tooling/scripts/new-doc.py",
997
+ "tooling/scripts/run-collab.py",
998
+ "tooling/scripts/run-story.py",
999
+ "tooling/scripts/setup-checkpoint-service.py"
1000
+ ],
1001
+ "next_steps": [
1002
+ "Review the acceptance criteria in the story context",
1003
+ "Examine the 23 files that have context",
1004
+ "Implement the required functionality",
1005
+ "Write tests for the implementation"
1006
+ ]
1007
+ },
1008
+ {
1009
+ "id": "handoff_a2389911",
1010
+ "timestamp": "2026-01-16T12:33:48.829611",
1011
+ "from_agent": "SM",
1012
+ "to_agent": "DEV",
1013
+ "story_key": "integration-test",
1014
+ "summary": "Ready for implementation",
1015
+ "key_decisions": [],
1016
+ "blockers_resolved": [],
1017
+ "watch_out_for": [],
1018
+ "files_touched": [
1019
+ ".claude/commands/brainstorm.md",
1020
+ ".claude/commands/init.md",
1021
+ ".claude/skills/brainstorm/SKILL.md",
1022
+ ".claude/skills/dashboard/SKILL.md",
1023
+ "CHANGELOG.md",
1024
+ "README.md",
1025
+ "bin/devflow-dashboard.js",
1026
+ "bin/devflow-swarm.js",
1027
+ "bin/devflow.js",
1028
+ "package.json",
1029
+ "pyproject.toml",
1030
+ "tooling/docs/stories/.gitkeep",
1031
+ "tooling/docs/templates/brainstorm-guide.md",
1032
+ "tooling/docs/templates/story.md",
1033
+ "tooling/scripts/lib/__init__.py",
1034
+ "tooling/scripts/lib/cost_display.py",
1035
+ "tooling/scripts/lib/pair_programming.py",
1036
+ "tooling/scripts/lib/swarm_orchestrator.py",
1037
+ "tooling/scripts/live_dashboard.py",
1038
+ "tooling/scripts/new-doc.py",
1039
+ "tooling/scripts/run-collab.py",
1040
+ "tooling/scripts/run-story.py",
1041
+ "tooling/scripts/setup-checkpoint-service.py"
1042
+ ],
1043
+ "next_steps": [
1044
+ "Review the acceptance criteria in the story context",
1045
+ "Examine the 23 files that have context",
1046
+ "Implement the required functionality",
1047
+ "Write tests for the implementation"
1048
+ ]
1049
+ },
1050
+ {
1051
+ "id": "handoff_4ccb6f32",
1052
+ "timestamp": "2026-01-18T10:54:54.615636",
1053
+ "from_agent": "SM",
1054
+ "to_agent": "DEV",
1055
+ "story_key": "integration-test",
1056
+ "summary": "Ready for implementation",
1057
+ "key_decisions": [],
1058
+ "blockers_resolved": [],
1059
+ "watch_out_for": [],
1060
+ "files_touched": [
1061
+ ".claude/commands/pair.md",
1062
+ ".claude/hooks/session-startup.sh",
1063
+ ".claude/settings.json",
1064
+ ".claude/skills/dashboard/SKILL.md",
1065
+ "CHANGELOG.md",
1066
+ "README.md",
1067
+ "bin/devflow-dashboard.js",
1068
+ "bin/devflow-swarm.js",
1069
+ "bin/devflow.js",
1070
+ "package.json",
1071
+ "pyproject.toml",
1072
+ "tests/test_collaboration.py",
1073
+ "tests/test_pair_programming.py",
1074
+ "tooling/scripts/lib/__init__.py",
1075
+ "tooling/scripts/lib/agent_router.py",
1076
+ "tooling/scripts/lib/cost_display.py",
1077
+ "tooling/scripts/lib/pair_programming.py",
1078
+ "tooling/scripts/lib/swarm_orchestrator.py",
1079
+ "tooling/scripts/live_dashboard.py",
1080
+ "tooling/scripts/new-doc.py",
1081
+ "tooling/scripts/run-collab.py",
1082
+ "tooling/scripts/run-story.py",
1083
+ "tooling/scripts/setup-checkpoint-service.py"
1084
+ ],
1085
+ "next_steps": [
1086
+ "Review the acceptance criteria in the story context",
1087
+ "Examine the 23 files that have context",
1088
+ "Implement the required functionality",
1089
+ "Write tests for the implementation"
1090
+ ]
1091
+ },
1092
+ {
1093
+ "id": "handoff_44df8777",
1094
+ "timestamp": "2026-01-18T10:55:18.910018",
1095
+ "from_agent": "SM",
1096
+ "to_agent": "DEV",
1097
+ "story_key": "integration-test",
1098
+ "summary": "Ready for implementation",
1099
+ "key_decisions": [],
1100
+ "blockers_resolved": [],
1101
+ "watch_out_for": [],
1102
+ "files_touched": [
1103
+ ".claude/commands/pair.md",
1104
+ ".claude/hooks/session-startup.sh",
1105
+ ".claude/settings.json",
1106
+ ".claude/skills/dashboard/SKILL.md",
1107
+ "CHANGELOG.md",
1108
+ "README.md",
1109
+ "bin/devflow-dashboard.js",
1110
+ "bin/devflow-swarm.js",
1111
+ "bin/devflow.js",
1112
+ "package.json",
1113
+ "pyproject.toml",
1114
+ "tests/test_collaboration.py",
1115
+ "tests/test_pair_programming.py",
1116
+ "tooling/scripts/lib/__init__.py",
1117
+ "tooling/scripts/lib/agent_router.py",
1118
+ "tooling/scripts/lib/cost_display.py",
1119
+ "tooling/scripts/lib/pair_programming.py",
1120
+ "tooling/scripts/lib/swarm_orchestrator.py",
1121
+ "tooling/scripts/live_dashboard.py",
1122
+ "tooling/scripts/new-doc.py",
1123
+ "tooling/scripts/run-collab.py",
1124
+ "tooling/scripts/run-story.py",
1125
+ "tooling/scripts/setup-checkpoint-service.py"
1126
+ ],
1127
+ "next_steps": [
1128
+ "Review the acceptance criteria in the story context",
1129
+ "Examine the 23 files that have context",
1130
+ "Implement the required functionality",
1131
+ "Write tests for the implementation"
1132
+ ]
1133
+ },
1134
+ {
1135
+ "id": "handoff_2686a81c",
1136
+ "timestamp": "2026-01-18T10:57:50.036067",
1137
+ "from_agent": "SM",
1138
+ "to_agent": "DEV",
1139
+ "story_key": "integration-test",
1140
+ "summary": "Ready for implementation",
1141
+ "key_decisions": [],
1142
+ "blockers_resolved": [],
1143
+ "watch_out_for": [],
1144
+ "files_touched": [
1145
+ ".claude/commands/pair.md",
1146
+ ".claude/hooks/session-startup.sh",
1147
+ ".claude/settings.json",
1148
+ ".claude/skills/dashboard/SKILL.md",
1149
+ "CHANGELOG.md",
1150
+ "README.md",
1151
+ "bin/devflow-dashboard.js",
1152
+ "bin/devflow-swarm.js",
1153
+ "bin/devflow.js",
1154
+ "package.json",
1155
+ "pyproject.toml",
1156
+ "tests/test_agent_router.py",
1157
+ "tests/test_collaboration.py",
1158
+ "tests/test_pair_programming.py",
1159
+ "tooling/scripts/lib/__init__.py",
1160
+ "tooling/scripts/lib/agent_router.py",
1161
+ "tooling/scripts/lib/cost_display.py",
1162
+ "tooling/scripts/lib/pair_programming.py",
1163
+ "tooling/scripts/lib/swarm_orchestrator.py",
1164
+ "tooling/scripts/live_dashboard.py",
1165
+ "tooling/scripts/new-doc.py",
1166
+ "tooling/scripts/run-collab.py",
1167
+ "tooling/scripts/run-story.py",
1168
+ "tooling/scripts/setup-checkpoint-service.py"
1169
+ ],
1170
+ "next_steps": [
1171
+ "Review the acceptance criteria in the story context",
1172
+ "Examine the 24 files that have context",
1173
+ "Implement the required functionality",
1174
+ "Write tests for the implementation"
1175
+ ]
965
1176
  }
966
1177
  ]
967
1178
  }