@pjmendonca/devflow 1.13.2 → 1.18.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.
Files changed (224) hide show
  1. package/.claude/commands/agent.md +1 -1
  2. package/.claude/commands/bugfix.md +21 -0
  3. package/.claude/commands/checkpoint.md +0 -1
  4. package/.claude/commands/collab.md +0 -1
  5. package/.claude/commands/costs.md +88 -18
  6. package/.claude/commands/devflow.md +26 -0
  7. package/.claude/commands/handoff.md +0 -1
  8. package/.claude/commands/init.md +287 -0
  9. package/.claude/commands/memory.md +0 -1
  10. package/.claude/commands/pair.md +0 -1
  11. package/.claude/commands/review.md +27 -0
  12. package/.claude/commands/route.md +0 -1
  13. package/.claude/commands/swarm.md +0 -1
  14. package/.claude/commands/validate.md +55 -0
  15. package/.claude/hooks/session-notification.sh +44 -0
  16. package/.claude/hooks/session-startup.sh +427 -0
  17. package/.claude/hooks/session-stop.sh +38 -0
  18. package/.claude/hooks/session_tracker.py +272 -0
  19. package/.claude/settings.json +38 -0
  20. package/.claude/skills/costs/SKILL.md +156 -0
  21. package/.claude/skills/validate/SKILL.md +101 -0
  22. package/CHANGELOG.md +243 -0
  23. package/README.md +207 -10
  24. package/bin/devflow-install.js +2 -1
  25. package/bin/devflow.js +4 -0
  26. package/lib/constants.js +0 -1
  27. package/lib/exec-python.js +1 -1
  28. package/package.json +1 -1
  29. package/tooling/.automation/.checkpoint_lock +1 -0
  30. package/tooling/.automation/agents/architect.md +19 -0
  31. package/tooling/.automation/agents/ba.md +19 -0
  32. package/tooling/.automation/agents/maintainer.md +19 -0
  33. package/tooling/.automation/agents/pm.md +19 -0
  34. package/tooling/.automation/agents/reviewer.md +1 -1
  35. package/tooling/.automation/agents/writer.md +19 -0
  36. package/tooling/.automation/benchmarks/benchmark_20251230_100119.json +314 -0
  37. package/tooling/.automation/benchmarks/benchmark_20251230_100216.json +314 -0
  38. package/tooling/.automation/costs/config.json +31 -0
  39. package/tooling/.automation/costs/sessions/2025-12-29_20251229_164128.json +22 -0
  40. package/tooling/.automation/memory/knowledge/kg_integration-test.json +707 -1
  41. package/tooling/.automation/memory/knowledge/kg_test-story.json +3273 -2
  42. package/tooling/.automation/memory/shared/shared_integration-test.json +181 -1
  43. package/tooling/.automation/memory/shared/shared_test-story.json +721 -1
  44. package/tooling/.automation/memory/shared/shared_test.json +1254 -0
  45. package/tooling/.automation/memory/shared/shared_validation-check.json +227 -0
  46. package/tooling/.automation/overrides/templates/architect/cloud-native.yaml +5 -5
  47. package/tooling/.automation/overrides/templates/architect/enterprise-architect.yaml +23 -5
  48. package/tooling/.automation/overrides/templates/architect/pragmatic-minimalist.yaml +24 -6
  49. package/tooling/.automation/overrides/templates/ba/agile-storyteller.yaml +4 -4
  50. package/tooling/.automation/overrides/templates/ba/domain-expert.yaml +4 -4
  51. package/tooling/.automation/overrides/templates/ba/requirements-engineer.yaml +4 -4
  52. package/tooling/.automation/overrides/templates/dev/performance-engineer.yaml +18 -0
  53. package/tooling/.automation/overrides/templates/dev/rapid-prototyper.yaml +19 -1
  54. package/tooling/.automation/overrides/templates/dev/security-focused.yaml +18 -0
  55. package/tooling/.automation/overrides/templates/dev/user-advocate.yaml +54 -0
  56. package/tooling/.automation/overrides/templates/maintainer/devops-maintainer.yaml +4 -4
  57. package/tooling/.automation/overrides/templates/maintainer/legacy-steward.yaml +4 -4
  58. package/tooling/.automation/overrides/templates/maintainer/oss-maintainer.yaml +4 -4
  59. package/tooling/.automation/overrides/templates/maintainer/reliability-engineer.yaml +55 -0
  60. package/tooling/.automation/overrides/templates/pm/agile-pm.yaml +4 -4
  61. package/tooling/.automation/overrides/templates/pm/hybrid-delivery.yaml +3 -3
  62. package/tooling/.automation/overrides/templates/pm/traditional-pm.yaml +4 -4
  63. package/tooling/.automation/overrides/templates/reviewer/quick-sanity.yaml +18 -0
  64. package/tooling/.automation/overrides/templates/reviewer/thorough-critic.yaml +18 -0
  65. package/tooling/.automation/overrides/templates/sm/agile-coach.yaml +2 -2
  66. package/tooling/.automation/overrides/templates/sm/startup-pm.yaml +3 -3
  67. package/tooling/.automation/overrides/templates/writer/api-documentarian.yaml +5 -5
  68. package/tooling/.automation/overrides/templates/writer/docs-as-code.yaml +4 -4
  69. package/tooling/.automation/overrides/templates/writer/user-guide-author.yaml +5 -5
  70. package/tooling/.automation/validation/history/2025-12-29_val_002a28c1.json +32 -0
  71. package/tooling/.automation/validation/history/2025-12-29_val_01273bb1.json +32 -0
  72. package/tooling/.automation/validation/history/2025-12-29_val_03369914.json +41 -0
  73. package/tooling/.automation/validation/history/2025-12-29_val_07a449ba.json +32 -0
  74. package/tooling/.automation/validation/history/2025-12-29_val_0df1f0a2.json +41 -0
  75. package/tooling/.automation/validation/history/2025-12-29_val_10ff3d34.json +41 -0
  76. package/tooling/.automation/validation/history/2025-12-29_val_110771d7.json +32 -0
  77. package/tooling/.automation/validation/history/2025-12-29_val_13f3a7f9.json +32 -0
  78. package/tooling/.automation/validation/history/2025-12-29_val_17ba9d21.json +41 -0
  79. package/tooling/.automation/validation/history/2025-12-29_val_22247089.json +32 -0
  80. package/tooling/.automation/validation/history/2025-12-29_val_227ea6a4.json +32 -0
  81. package/tooling/.automation/validation/history/2025-12-29_val_2335d5ae.json +32 -0
  82. package/tooling/.automation/validation/history/2025-12-29_val_246824bb.json +41 -0
  83. package/tooling/.automation/validation/history/2025-12-29_val_28b4b9cd.json +32 -0
  84. package/tooling/.automation/validation/history/2025-12-29_val_2abd12cc.json +32 -0
  85. package/tooling/.automation/validation/history/2025-12-29_val_2c801b2f.json +59 -0
  86. package/tooling/.automation/validation/history/2025-12-29_val_2c8cfa8e.json +32 -0
  87. package/tooling/.automation/validation/history/2025-12-29_val_2ce76eb0.json +32 -0
  88. package/tooling/.automation/validation/history/2025-12-29_val_30351948.json +41 -0
  89. package/tooling/.automation/validation/history/2025-12-29_val_30eb7229.json +41 -0
  90. package/tooling/.automation/validation/history/2025-12-29_val_34df0e77.json +41 -0
  91. package/tooling/.automation/validation/history/2025-12-29_val_376e4d6a.json +32 -0
  92. package/tooling/.automation/validation/history/2025-12-29_val_3a4e8a1a.json +59 -0
  93. package/tooling/.automation/validation/history/2025-12-29_val_3b77a628.json +32 -0
  94. package/tooling/.automation/validation/history/2025-12-29_val_3ea4e1cf.json +59 -0
  95. package/tooling/.automation/validation/history/2025-12-29_val_44aacdb4.json +59 -0
  96. package/tooling/.automation/validation/history/2025-12-29_val_457ddfa8.json +32 -0
  97. package/tooling/.automation/validation/history/2025-12-29_val_45af6238.json +41 -0
  98. package/tooling/.automation/validation/history/2025-12-29_val_4735dba1.json +41 -0
  99. package/tooling/.automation/validation/history/2025-12-29_val_486b203c.json +41 -0
  100. package/tooling/.automation/validation/history/2025-12-29_val_49dc56cd.json +59 -0
  101. package/tooling/.automation/validation/history/2025-12-29_val_4d863d6d.json +32 -0
  102. package/tooling/.automation/validation/history/2025-12-29_val_5149a808.json +59 -0
  103. package/tooling/.automation/validation/history/2025-12-29_val_52e0bb43.json +32 -0
  104. package/tooling/.automation/validation/history/2025-12-29_val_585d6319.json +59 -0
  105. package/tooling/.automation/validation/history/2025-12-29_val_5b2d859a.json +32 -0
  106. package/tooling/.automation/validation/history/2025-12-29_val_635a7081.json +41 -0
  107. package/tooling/.automation/validation/history/2025-12-29_val_64df4905.json +32 -0
  108. package/tooling/.automation/validation/history/2025-12-29_val_70634cee.json +41 -0
  109. package/tooling/.automation/validation/history/2025-12-29_val_714553f9.json +32 -0
  110. package/tooling/.automation/validation/history/2025-12-29_val_7f7bfdbf.json +41 -0
  111. package/tooling/.automation/validation/history/2025-12-29_val_7faad91d.json +32 -0
  112. package/tooling/.automation/validation/history/2025-12-29_val_81821f8f.json +41 -0
  113. package/tooling/.automation/validation/history/2025-12-29_val_8249f3c9.json +32 -0
  114. package/tooling/.automation/validation/history/2025-12-29_val_8422b50f.json +41 -0
  115. package/tooling/.automation/validation/history/2025-12-29_val_8446c134.json +32 -0
  116. package/tooling/.automation/validation/history/2025-12-29_val_879f4e26.json +59 -0
  117. package/tooling/.automation/validation/history/2025-12-29_val_8b6d5bd7.json +32 -0
  118. package/tooling/.automation/validation/history/2025-12-29_val_8c5cd787.json +32 -0
  119. package/tooling/.automation/validation/history/2025-12-29_val_91d20bc7.json +32 -0
  120. package/tooling/.automation/validation/history/2025-12-29_val_958a12b7.json +41 -0
  121. package/tooling/.automation/validation/history/2025-12-29_val_95d91108.json +41 -0
  122. package/tooling/.automation/validation/history/2025-12-29_val_980dbb74.json +32 -0
  123. package/tooling/.automation/validation/history/2025-12-29_val_9e40c79b.json +32 -0
  124. package/tooling/.automation/validation/history/2025-12-29_val_9f499b7c.json +32 -0
  125. package/tooling/.automation/validation/history/2025-12-29_val_9f7c3b57.json +32 -0
  126. package/tooling/.automation/validation/history/2025-12-29_val_a30d5bd4.json +32 -0
  127. package/tooling/.automation/validation/history/2025-12-29_val_a6eb09c7.json +32 -0
  128. package/tooling/.automation/validation/history/2025-12-29_val_a86f7b83.json +41 -0
  129. package/tooling/.automation/validation/history/2025-12-29_val_ad5347e1.json +41 -0
  130. package/tooling/.automation/validation/history/2025-12-29_val_b0a5a993.json +32 -0
  131. package/tooling/.automation/validation/history/2025-12-29_val_bcb0192e.json +32 -0
  132. package/tooling/.automation/validation/history/2025-12-29_val_bf3c9aaa.json +32 -0
  133. package/tooling/.automation/validation/history/2025-12-29_val_c461ff88.json +32 -0
  134. package/tooling/.automation/validation/history/2025-12-29_val_c4f4e258.json +41 -0
  135. package/tooling/.automation/validation/history/2025-12-29_val_c7f0fa6d.json +41 -0
  136. package/tooling/.automation/validation/history/2025-12-29_val_c911b0e6.json +32 -0
  137. package/tooling/.automation/validation/history/2025-12-29_val_cc581964.json +32 -0
  138. package/tooling/.automation/validation/history/2025-12-29_val_cdd5a33b.json +32 -0
  139. package/tooling/.automation/validation/history/2025-12-29_val_cfd42495.json +32 -0
  140. package/tooling/.automation/validation/history/2025-12-29_val_d1c7a4ee.json +41 -0
  141. package/tooling/.automation/validation/history/2025-12-29_val_d2280d0e.json +32 -0
  142. package/tooling/.automation/validation/history/2025-12-29_val_d2a6ff69.json +32 -0
  143. package/tooling/.automation/validation/history/2025-12-29_val_d8c53ab2.json +59 -0
  144. package/tooling/.automation/validation/history/2025-12-29_val_d9c1247a.json +41 -0
  145. package/tooling/.automation/validation/history/2025-12-29_val_d9d58569.json +32 -0
  146. package/tooling/.automation/validation/history/2025-12-29_val_dabb4fd9.json +32 -0
  147. package/tooling/.automation/validation/history/2025-12-29_val_dd8fe359.json +32 -0
  148. package/tooling/.automation/validation/history/2025-12-29_val_decdffc9.json +32 -0
  149. package/tooling/.automation/validation/history/2025-12-29_val_e3a95476.json +59 -0
  150. package/tooling/.automation/validation/history/2025-12-29_val_e776dfca.json +32 -0
  151. package/tooling/.automation/validation/history/2025-12-29_val_ea70969f.json +59 -0
  152. package/tooling/.automation/validation/history/2025-12-29_val_ef41ea95.json +32 -0
  153. package/tooling/.automation/validation/history/2025-12-29_val_f384f9b1.json +32 -0
  154. package/tooling/.automation/validation/history/2025-12-29_val_f8adc38c.json +41 -0
  155. package/tooling/.automation/validation/history/2025-12-29_val_fa40b69e.json +32 -0
  156. package/tooling/.automation/validation/history/2025-12-29_val_fc538d54.json +41 -0
  157. package/tooling/.automation/validation/history/2025-12-29_val_fe814665.json +32 -0
  158. package/tooling/.automation/validation/history/2025-12-29_val_ffea4b12.json +32 -0
  159. package/tooling/.automation/validation/history/2025-12-30_val_02d001e5.json +59 -0
  160. package/tooling/.automation/validation/history/2025-12-30_val_0b8966dc.json +32 -0
  161. package/tooling/.automation/validation/history/2025-12-30_val_15455fbf.json +59 -0
  162. package/tooling/.automation/validation/history/2025-12-30_val_157e34b9.json +32 -0
  163. package/tooling/.automation/validation/history/2025-12-30_val_28d1d933.json +32 -0
  164. package/tooling/.automation/validation/history/2025-12-30_val_3442a52c.json +32 -0
  165. package/tooling/.automation/validation/history/2025-12-30_val_37f1ce1e.json +32 -0
  166. package/tooling/.automation/validation/history/2025-12-30_val_4f1d8a93.json +32 -0
  167. package/tooling/.automation/validation/history/2025-12-30_val_56ff1de3.json +32 -0
  168. package/tooling/.automation/validation/history/2025-12-30_val_664fd4e2.json +41 -0
  169. package/tooling/.automation/validation/history/2025-12-30_val_66afb0a7.json +32 -0
  170. package/tooling/.automation/validation/history/2025-12-30_val_7634663c.json +41 -0
  171. package/tooling/.automation/validation/history/2025-12-30_val_8ea830c3.json +41 -0
  172. package/tooling/.automation/validation/history/2025-12-30_val_998957c2.json +32 -0
  173. package/tooling/.automation/validation/history/2025-12-30_val_a52177db.json +32 -0
  174. package/tooling/.automation/validation/history/2025-12-30_val_a5b65a63.json +32 -0
  175. package/tooling/.automation/validation/history/2025-12-30_val_ae391d0e.json +32 -0
  176. package/tooling/.automation/validation/history/2025-12-30_val_c7895339.json +41 -0
  177. package/tooling/.automation/validation/history/2025-12-30_val_ca416593.json +41 -0
  178. package/tooling/.automation/validation/history/2025-12-30_val_cee19422.json +32 -0
  179. package/tooling/.automation/validation/history/2025-12-30_val_ddd4f4e6.json +32 -0
  180. package/tooling/.automation/validation/history/2025-12-30_val_f2e1394b.json +32 -0
  181. package/tooling/.automation/validation/history/2025-12-30_val_f4a7fa06.json +41 -0
  182. package/tooling/.automation/validation/history/2025-12-30_val_ffea3369.json +32 -0
  183. package/tooling/.automation/validation-config.yaml +103 -0
  184. package/tooling/completions/DevflowCompletion.ps1 +21 -21
  185. package/tooling/completions/_run-story +3 -3
  186. package/tooling/completions/run-story-completion.bash +8 -8
  187. package/tooling/docs/DOC-STANDARD.md +14 -14
  188. package/tooling/docs/templates/migration-spec.md +4 -4
  189. package/tooling/scripts/context_checkpoint.py +5 -15
  190. package/tooling/scripts/cost_dashboard.py +610 -13
  191. package/tooling/scripts/create-persona.py +1 -12
  192. package/tooling/scripts/create-persona.sh +44 -44
  193. package/tooling/scripts/lib/__init__.py +12 -1
  194. package/tooling/scripts/lib/agent_handoff.py +11 -2
  195. package/tooling/scripts/lib/agent_router.py +31 -10
  196. package/tooling/scripts/lib/colors.py +106 -0
  197. package/tooling/scripts/lib/context_monitor.py +766 -0
  198. package/tooling/scripts/lib/cost_config.py +229 -10
  199. package/tooling/scripts/lib/cost_display.py +20 -45
  200. package/tooling/scripts/lib/cost_tracker.py +462 -15
  201. package/tooling/scripts/lib/currency_converter.py +28 -5
  202. package/tooling/scripts/lib/pair_programming.py +102 -3
  203. package/tooling/scripts/lib/personality_system.py +949 -0
  204. package/tooling/scripts/lib/platform.py +55 -0
  205. package/tooling/scripts/lib/shared_memory.py +9 -3
  206. package/tooling/scripts/lib/swarm_orchestrator.py +514 -75
  207. package/tooling/scripts/lib/validation_loop.py +1014 -0
  208. package/tooling/scripts/memory_summarize.py +9 -2
  209. package/tooling/scripts/new-doc.py +2 -9
  210. package/tooling/scripts/personalize_agent.py +1 -12
  211. package/tooling/scripts/rollback-migration.sh +60 -60
  212. package/tooling/scripts/run-collab.ps1 +16 -16
  213. package/tooling/scripts/run-collab.py +88 -53
  214. package/tooling/scripts/run-collab.sh +4 -4
  215. package/tooling/scripts/run-story.py +278 -20
  216. package/tooling/scripts/run-story.sh +3 -3
  217. package/tooling/scripts/setup-checkpoint-service.py +2 -9
  218. package/tooling/scripts/tech-debt-tracker.py +1 -12
  219. package/tooling/scripts/test_adversarial_swarm.py +452 -0
  220. package/tooling/scripts/validate-overrides.py +1 -10
  221. package/tooling/scripts/validate-overrides.sh +40 -40
  222. package/tooling/scripts/validate_loop.py +162 -0
  223. package/tooling/scripts/validate_setup.py +2 -30
  224. package/.claude/skills/init/SKILL.md +0 -496
@@ -7,4 +7,4 @@ Invoke the Devflow agent: $ARGUMENTS
7
7
 
8
8
  Execute: `npx @pjmendonca/devflow agent $ARGUMENTS`
9
9
 
10
- Available agents: architect, ba, dev, maintainer, pm, reviewer, sm
10
+ Available agents: architect, ba, dev, maintainer, pm, reviewer, sm, writer
@@ -6,3 +6,24 @@ argument-hint: <bug-id>
6
6
  Run the Devflow bugfix automation for: $ARGUMENTS
7
7
 
8
8
  Execute: `npx @pjmendonca/devflow bugfix $ARGUMENTS`
9
+
10
+ This invokes the MAINTAINER agent to investigate and fix bugs using a surgical approach.
11
+
12
+ ## What it does
13
+
14
+ 1. Investigates the bug to understand root cause
15
+ 2. Identifies the minimal change needed to fix it
16
+ 3. Implements the fix with regression tests
17
+ 4. Documents the fix and any related technical debt
18
+
19
+ ## Options
20
+
21
+ - `--dry-run` - Analyze the bug without making changes
22
+ - `--investigation-only` - Just investigate, don't fix
23
+
24
+ ## Example
25
+
26
+ ```bash
27
+ /bugfix login-crash-123
28
+ /bugfix "Users can't submit form on mobile"
29
+ ```
@@ -27,4 +27,3 @@ Automatic checkpointing occurs at:
27
27
  - Before each agent phase starts
28
28
  - When approaching context limits
29
29
  - After major milestones
30
-
@@ -27,4 +27,3 @@ Examples:
27
27
  - `/collab 3-5 --swarm` - Run swarm mode
28
28
  - `/collab 3-5 --pair` - Run pair programming
29
29
  - `/collab "fix auth bug" --auto` - Auto-route task
30
-
@@ -1,27 +1,97 @@
1
1
  ---
2
2
  description: View cost dashboard and spending analytics
3
- argument-hint: [--period day|week|month]
3
+ argument-hint: [--period day|week|month] [--history N]
4
4
  ---
5
5
 
6
- View Devflow cost dashboard: $ARGUMENTS
6
+ # Cost Dashboard
7
7
 
8
- Execute: `npx @pjmendonca/devflow costs $ARGUMENTS`
8
+ Display Devflow cost tracking and spending analytics.
9
9
 
10
- This displays cost tracking and analytics:
11
- - Total spend by model (Opus, Sonnet, Haiku)
12
- - Cost breakdown by agent
13
- - Cost breakdown by story/task
14
- - Budget utilization tracking
15
- - Cost trends over time
10
+ **Arguments:** $ARGUMENTS
16
11
 
17
- Options:
18
- - `--period day` - Show today's costs
19
- - `--period week` - Show this week's costs
20
- - `--period month` - Show this month's costs
21
- - `--export csv` - Export to CSV file
12
+ ## Instructions
22
13
 
23
- Examples:
24
- - `/costs` - Show current cost dashboard
25
- - `/costs --period week` - Show weekly breakdown
26
- - `/costs --by-agent` - Group costs by agent
14
+ ### Step 1: Read Cost Configuration
27
15
 
16
+ Read `tooling/.automation/costs/config.json` to get:
17
+ - Budget limits (budget_dev, budget_context, budget_review)
18
+ - Subscription info (plan, token limit, billing period days)
19
+ - Warning/critical thresholds
20
+ - Currency settings
21
+
22
+ ### Step 2: Find and Read Session Files
23
+
24
+ Find all `tooling/.automation/costs/sessions/*.json` files.
25
+
26
+ For each session, extract:
27
+ - session_id, start_time, end_time
28
+ - story_key (if set)
29
+ - entries with model, input_tokens, output_tokens, cost_usd
30
+ - totals
31
+
32
+ Identify the most recent session as "current session".
33
+
34
+ ### Step 3: Apply Filters (based on $ARGUMENTS)
35
+
36
+ - `--period day`: Today's sessions only
37
+ - `--period week`: Last 7 days
38
+ - `--period month`: Last 30 days (default)
39
+ - `--history N`: Last N sessions
40
+ - `--story KEY`: Filter by story key
41
+
42
+ ### Step 4: Calculate Metrics
43
+
44
+ - Current session: tokens and cost from most recent session
45
+ - Cumulative: sum of ALL sessions in billing period
46
+ - Cost by model (opus, sonnet, haiku)
47
+ - Cost by story
48
+ - Budget usage %
49
+ - Subscription token usage %
50
+ - Averages per session
51
+ - I/O ratio (input tokens / output tokens)
52
+ - Days remaining in billing period
53
+ - Projected monthly usage (tokens and cost)
54
+
55
+ ### Step 5: Display Dashboard
56
+
57
+ ```
58
+ =================================================================
59
+ DEVFLOW COST DASHBOARD
60
+ =================================================================
61
+ Plan: [plan] | Tokens: [used]/[limit] ([%]%) | [days] days left
62
+ This Session: $[current] | Cumulative: $[total]
63
+ =================================================================
64
+
65
+ PERIOD: [period] SESSIONS: [count]
66
+
67
+ --- TOKEN USAGE ---------------------------------------------
68
+ This Session Cumulative
69
+ Input: [in] [total_in]
70
+ Output: [out] [total_out]
71
+ Total: [total] [grand_total]
72
+
73
+ I/O Ratio: [ratio]:1
74
+
75
+ --- COST BY MODEL -------------------------------------------
76
+ [model] $[cost] ([%]%)
77
+
78
+ --- BUDGET STATUS -------------------------------------------
79
+ Spent: $[spent] / $[budget] ([%]%)
80
+ [==============================----------------------] [%]%
81
+
82
+ --- PROJECTIONS ---------------------------------------------
83
+ Monthly tokens: [projected] / [limit] ([%]%)
84
+ Monthly cost: $[projected]
85
+ Avg/session: $[avg] | [tokens] tokens
86
+
87
+ --- RECENT SESSIONS -----------------------------------------
88
+ [id] [date] [tokens] $[cost] [story]
89
+ (last 5)
90
+
91
+ --- CURRENCIES ----------------------------------------------
92
+ $[USD] | E[EUR] | L[GBP] | R$[BRL]
93
+ =================================================================
94
+ ```
95
+
96
+ Show [WARNING] if budget > 75%, [CRITICAL] if > 90%.
97
+ Use K/M suffixes. No emojis.
@@ -4,3 +4,29 @@ argument-hint: <command> [args]
4
4
  ---
5
5
 
6
6
  Run: `devflow $ARGUMENTS`
7
+
8
+ This is a passthrough command to run any Devflow CLI command directly.
9
+
10
+ ## Available Commands
11
+
12
+ | Command | Description |
13
+ |---------|-------------|
14
+ | `story` | Run full story pipeline (context + dev + review) |
15
+ | `collab` | Run collaborative multi-agent mode |
16
+ | `checkpoint` | Create or restore context checkpoints |
17
+ | `memory` | View or query shared agent memory |
18
+ | `cost` | View cost dashboard and spending analytics |
19
+ | `validate` | Validate project configuration |
20
+ | `personalize` | Personalize agent behavior |
21
+ | `version` | Show version information |
22
+
23
+ ## Examples
24
+
25
+ ```bash
26
+ /devflow story 3-5
27
+ /devflow cost --history 10
28
+ /devflow checkpoint --list
29
+ /devflow validate
30
+ ```
31
+
32
+ Run `devflow --help` for full command list.
@@ -23,4 +23,3 @@ Examples:
23
23
  - `/handoff 3-5` - Show all handoffs for story
24
24
  - `/handoff 3-5 --from DEV --to REVIEWER` - Specific handoff
25
25
  - `/handoff 3-5 --latest` - Most recent handoff
26
-
@@ -0,0 +1,287 @@
1
+ ---
2
+ description: Initialize Devflow with AI-guided interactive setup
3
+ argument-hint: [--quick]
4
+ ---
5
+
6
+ # Devflow Initialization Wizard
7
+
8
+ You are now the **Devflow Setup Wizard** - an AI-driven initialization system that guides developers through setting up Devflow for their project.
9
+
10
+ ## Your Role
11
+
12
+ Act as a friendly, knowledgeable setup assistant. Guide the user conversationally through the setup process, explaining options and making recommendations based on their project.
13
+
14
+ ## Initialization Flow
15
+
16
+ ### Phase 1: Welcome and Discovery
17
+
18
+ Start by welcoming the user and exploring their project:
19
+
20
+ ```
21
+ Welcome to Devflow Setup!
22
+
23
+ I'll help you configure Devflow for your project. This will only take a few minutes.
24
+
25
+ Let me start by exploring your project structure...
26
+ ```
27
+
28
+ **Actions to perform:**
29
+ 1. Use Glob and Read tools to detect the project type by looking for:
30
+ - `package.json` (Node.js)
31
+ - `pubspec.yaml` (Flutter/Dart)
32
+ - `Cargo.toml` (Rust)
33
+ - `go.mod` (Go)
34
+ - `requirements.txt` or `pyproject.toml` (Python)
35
+ - `Gemfile` (Ruby)
36
+ - `pom.xml` or `build.gradle` (Java/Android)
37
+ - `Package.swift` or `*.xcodeproj` (Swift/iOS)
38
+
39
+ 2. Check if Devflow is already installed by looking for `tooling/.automation/config.sh`
40
+
41
+ 3. Summarize findings to the user
42
+
43
+ ### Phase 2: Project Configuration
44
+
45
+ Ask the user using AskUserQuestion tool:
46
+
47
+ **Question 1: Confirm Project Type**
48
+ After detecting the project type, confirm with the user:
49
+ - Show what you detected
50
+ - Offer to correct if wrong
51
+
52
+ **Question 2: Workflow Mode**
53
+ ```
54
+ What type of work will you primarily do?
55
+ ```
56
+ Options:
57
+ - **Greenfield** - Building new features from scratch
58
+ - **Brownfield** - Maintaining existing code (bugs, refactoring, migrations)
59
+ - **Both** (Recommended) - Full workflow support
60
+
61
+ **Question 3: Claude Model Strategy**
62
+ ```
63
+ How would you like to optimize Claude model usage?
64
+ ```
65
+ Options:
66
+ - **Quality First** - Use Opus for everything (best results, higher cost)
67
+ - **Balanced** (Recommended) - Opus for coding, Sonnet for planning
68
+ - **Cost Optimized** - Use Sonnet for everything (lower cost)
69
+
70
+ **Question 4: Currency Preference**
71
+ ```
72
+ Which currency should I use for cost tracking?
73
+ ```
74
+ Options: USD, EUR, GBP, BRL, CAD, AUD
75
+
76
+ ### Phase 3: Agent Personalization (Optional)
77
+
78
+ Ask if they want to customize agent personas:
79
+ ```
80
+ Would you like to personalize agent behavior?
81
+ ```
82
+
83
+ If yes, briefly explain each agent and offer quick customization:
84
+ - **dev** - Developer agent (implements code)
85
+ - **sm** - Scrum Master (planning and review)
86
+ - **reviewer** - Code reviewer (quality assurance)
87
+ - **architect** - System architect (design decisions)
88
+ - **maintainer** - Brownfield specialist (bugs, refactoring)
89
+
90
+ Offer template options for each if they want customization.
91
+
92
+ ### Phase 4: Generate Configuration
93
+
94
+ Based on the answers, create all necessary files:
95
+
96
+ 1. **Create directory structure:**
97
+ ```
98
+ tooling/.automation/agents/
99
+ tooling/.automation/checkpoints/
100
+ tooling/.automation/logs/
101
+ tooling/.automation/costs/
102
+ tooling/.automation/memory/shared/
103
+ tooling/.automation/overrides/
104
+ tooling/scripts/lib/
105
+ tooling/docs/
106
+ ```
107
+
108
+ 2. **Generate `tooling/.automation/config.sh`** with the collected preferences
109
+
110
+ 3. **Generate agent personas** in `tooling/.automation/agents/`:
111
+ - `dev.md`
112
+ - `sm.md`
113
+ - `ba.md`
114
+ - `architect.md`
115
+ - `reviewer.md`
116
+ - `maintainer.md`
117
+ - `writer.md`
118
+ - `pm.md`
119
+
120
+ 4. **Generate sprint status** in `tooling/docs/sprint-status.yaml`
121
+
122
+ 5. **Generate workflow README** in `tooling/README.md`
123
+
124
+ ### Phase 5: Next Steps
125
+
126
+ After setup is complete, provide a summary:
127
+
128
+ ```
129
+ [OK] Devflow Setup Complete!
130
+
131
+ Configuration created:
132
+ - Project: {project_name} ({project_type})
133
+ - Workflow: {workflow_mode}
134
+ - Models: {model_strategy}
135
+ - Currency: {currency}
136
+
137
+ Quick Start:
138
+ 1. Create your first story: /story create "Add login feature"
139
+ 2. Run development: /develop 1-1
140
+ 3. Run review: /review 1-1
141
+ 4. Check costs: /costs
142
+
143
+ Useful Commands:
144
+ - /personalize - Customize agent behavior
145
+ - /memory - View shared agent memory
146
+ - /checkpoint - Save/restore context
147
+
148
+ Documentation: tooling/README.md
149
+ ```
150
+
151
+ ## Quick Mode
152
+
153
+ If the user runs `/init --quick`, skip optional questions and use smart defaults:
154
+ - Detect project type automatically
155
+ - Use "Both" workflow mode
156
+ - Use "Balanced" model strategy (Opus for dev, Sonnet for planning)
157
+ - Use USD for currency
158
+ - Skip agent personalization
159
+
160
+ ## Important Guidelines
161
+
162
+ 1. **Be conversational** - Don't just dump information, engage in dialogue
163
+ 2. **Explain recommendations** - Tell users WHY you recommend certain options
164
+ 3. **Detect context** - Read the project to make informed suggestions
165
+ 4. **Handle existing setups** - If Devflow is already configured, offer to reconfigure or exit
166
+ 5. **No emojis** - Use text markers like [OK], [INFO], [WARNING] instead
167
+ 6. **Create files directly** - Use Write tool to create configuration files
168
+ 7. **Validate at end** - Confirm all files were created successfully
169
+
170
+ ## Configuration Templates
171
+
172
+ ### config.sh Template
173
+
174
+ ```bash
175
+ #!/bin/zsh
176
+ ################################################################################
177
+ # Devflow Automation Configuration
178
+ # Generated: {date}
179
+ ################################################################################
180
+
181
+ # Project settings
182
+ export PROJECT_NAME="{project_name}"
183
+ export PROJECT_TYPE="{project_type}"
184
+
185
+ # Claude Code CLI settings
186
+ export CLAUDE_CLI="${CLAUDE_CLI:-claude}"
187
+ export CLAUDE_MODEL_DEV="{model_dev}"
188
+ export CLAUDE_MODEL_PLANNING="{model_planning}"
189
+ export CLAUDE_MODEL="${CLAUDE_MODEL:-{default_model}}"
190
+
191
+ # Permission mode
192
+ export PERMISSION_MODE="${PERMISSION_MODE:-dangerouslySkipPermissions}"
193
+
194
+ # Auto-commit settings
195
+ export AUTO_COMMIT="${AUTO_COMMIT:-true}"
196
+ export AUTO_PR="${AUTO_PR:-false}"
197
+
198
+ # Budget limits (USD)
199
+ export MAX_BUDGET_CONTEXT=3.00
200
+ export MAX_BUDGET_DEV=15.00
201
+ export MAX_BUDGET_REVIEW=5.00
202
+
203
+ # Cost display settings
204
+ export COST_DISPLAY_CURRENCY="{currency}"
205
+ export COST_WARNING_PERCENT=75
206
+ export COST_CRITICAL_PERCENT=90
207
+ export COST_AUTO_STOP="true"
208
+
209
+ # Paths
210
+ export AUTOMATION_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
211
+ export PROJECT_ROOT="$(cd "$AUTOMATION_DIR/../.." && pwd)"
212
+ export SCRIPTS_DIR="$PROJECT_ROOT/tooling/scripts"
213
+ export DOCS_DIR="$PROJECT_ROOT/tooling/docs"
214
+
215
+ # Tool configurations
216
+ export CHECKPOINT_THRESHOLDS="75,85,95"
217
+ ```
218
+
219
+ ### Agent Persona Template (dev.md)
220
+
221
+ ```markdown
222
+ # Developer Agent
223
+
224
+ You are a senior {project_type} developer implementing features.
225
+
226
+ ## Responsibilities
227
+ - Implement stories according to specifications
228
+ - Write clean, maintainable code
229
+ - Create comprehensive tests
230
+ - Follow project patterns and conventions
231
+
232
+ ## Approach
233
+ - Code first, explain later
234
+ - Prioritize working solutions
235
+ - Write self-documenting code
236
+ - Ensure tests pass before completion
237
+
238
+ ## Critical Rules
239
+ - ACT IMMEDIATELY - don't ask for permission, just code
240
+ - Use all available tools to explore and modify the codebase
241
+ - Create checkpoints for large tasks
242
+ - Commit working changes frequently
243
+
244
+ ## Communication Style
245
+ - Concise and technical
246
+ - Focus on implementation details
247
+ - Proactive problem-solving
248
+ ```
249
+
250
+ ### Sprint Status Template
251
+
252
+ ```yaml
253
+ # Sprint Status - {project_name}
254
+ # Updated: {date}
255
+
256
+ sprint:
257
+ number: 1
258
+ start: {start_date}
259
+ end: {end_date}
260
+
261
+ # Story Status Values:
262
+ # - backlog: Not yet started
263
+ # - drafted: Story specification created
264
+ # - ready-for-dev: Context created, ready for implementation
265
+ # - in-progress: Currently being worked on
266
+ # - review: Implementation complete, awaiting review
267
+ # - done: Reviewed and approved
268
+
269
+ stories:
270
+ # Add stories here:
271
+ # 1-1-feature-name: backlog
272
+ ```
273
+
274
+ ## Error Handling
275
+
276
+ If any step fails:
277
+ 1. Explain what went wrong
278
+ 2. Offer to retry or skip that step
279
+ 3. Continue with remaining setup if possible
280
+ 4. Provide manual instructions as fallback
281
+
282
+ ## Resume Capability
283
+
284
+ If setup is interrupted:
285
+ 1. Check what files already exist
286
+ 2. Offer to continue from where it left off
287
+ 3. Don't overwrite existing customizations without asking
@@ -20,4 +20,3 @@ Use `--query` to ask questions about past decisions:
20
20
  Examples:
21
21
  - `/memory 3-5` - Show all shared memory for story 3-5
22
22
  - `/memory 3-5 --query "security decisions"` - Query specific topic
23
-
@@ -21,4 +21,3 @@ Benefits:
21
21
 
22
22
  Example:
23
23
  - `/pair 3-5` - Run pair programming for story 3-5
24
-
@@ -6,3 +6,30 @@ argument-hint: <story-key>
6
6
  Run the Devflow code review for story: $ARGUMENTS
7
7
 
8
8
  Execute: `npx @pjmendonca/devflow review $ARGUMENTS`
9
+
10
+ This invokes the REVIEWER agent to perform a thorough code review.
11
+
12
+ ## What it does
13
+
14
+ 1. Reviews all code changes for the story
15
+ 2. Checks security, reliability, correctness, and maintainability
16
+ 3. Classifies issues by severity (CRITICAL, HIGH, MEDIUM, LOW)
17
+ 4. Produces a structured review with actionable feedback
18
+
19
+ ## Review Output
20
+
21
+ The review produces a verdict:
22
+ - **APPROVED** - Code meets standards, ready to merge
23
+ - **CHANGES REQUIRED** - Issues found that must be addressed
24
+ - **BLOCKED** - Critical issues prevent progress
25
+
26
+ ## Options
27
+
28
+ - `--adversarial` - Use Opus for deeper, more critical analysis
29
+
30
+ ## Example
31
+
32
+ ```bash
33
+ /review 3-5
34
+ /review 3-5 --adversarial
35
+ ```
@@ -23,4 +23,3 @@ Examples:
23
23
  - `/route fix authentication timeout` - Routes to bug specialists
24
24
  - `/route add payment integration` - Routes to feature team
25
25
  - `/route --route-only fix memory leak` - Preview routing only
26
-
@@ -19,4 +19,3 @@ Examples:
19
19
  - `/swarm 3-5` - Run swarm with default agents
20
20
  - `/swarm 3-5 --agents ARCHITECT,DEV,REVIEWER,SECURITY` - Custom agents
21
21
  - `/swarm 3-5 --max-iter 5` - Increase max iterations
22
-
@@ -0,0 +1,55 @@
1
+ # Validate
2
+
3
+ Run validation checks on the current story or codebase.
4
+
5
+ ## Usage
6
+
7
+ ```
8
+ /validate [story-key] [options]
9
+ ```
10
+
11
+ ## Options
12
+
13
+ - `--tier 1|2|3|all` - Which validation tier to run
14
+ - 1: Pre-flight (story exists, budget, dependencies)
15
+ - 2: Inter-phase (code compiles, lint, transitions)
16
+ - 3: Post-completion (tests, types, version sync)
17
+ - all: Run all tiers
18
+ - `--auto-fix` - Attempt automatic fixes for failures
19
+ - `--json` - Output as JSON
20
+ - `--quiet` - Minimal output
21
+
22
+ ## Examples
23
+
24
+ ```bash
25
+ # Run all validation tiers
26
+ /validate 3-5 --tier all
27
+
28
+ # Run pre-flight checks only
29
+ /validate 3-5 --tier 1
30
+
31
+ # Run post-completion with auto-fix
32
+ /validate 3-5 --tier 3 --auto-fix
33
+ ```
34
+
35
+ ## Prompt
36
+
37
+ Run the validation loop for story: $ARGUMENTS
38
+
39
+ Execute the following:
40
+
41
+ ```bash
42
+ python3 tooling/scripts/lib/validation_loop.py --story "$ARGUMENTS" --all
43
+ ```
44
+
45
+ If no story key is provided, run validation on the current codebase state:
46
+
47
+ ```bash
48
+ python3 tooling/scripts/lib/validation_loop.py --tier 3
49
+ ```
50
+
51
+ Report the validation results clearly, including:
52
+ - Which gates passed
53
+ - Which gates failed with reasons
54
+ - Any warnings
55
+ - Suggested fixes if available
@@ -0,0 +1,44 @@
1
+ #!/bin/bash
2
+ # Session Notification Hook - Captures token usage from Claude Code notifications
3
+
4
+ PROJECT_DIR="${CLAUDE_PROJECT_DIR:-$(pwd)}"
5
+ TRACKER="$PROJECT_DIR/.claude/hooks/session_tracker.py"
6
+
7
+ # Read notification data from Claude Code
8
+ INPUT=$(cat)
9
+
10
+ # Try to extract token usage from notification
11
+ # Claude Code may send usage data in various formats
12
+ INPUT_TOKENS=$(echo "$INPUT" | jq -r '
13
+ .usage.input_tokens //
14
+ .data.usage.input_tokens //
15
+ .message.usage.input_tokens //
16
+ .input_tokens //
17
+ 0
18
+ ' 2>/dev/null)
19
+
20
+ OUTPUT_TOKENS=$(echo "$INPUT" | jq -r '
21
+ .usage.output_tokens //
22
+ .data.usage.output_tokens //
23
+ .message.usage.output_tokens //
24
+ .output_tokens //
25
+ 0
26
+ ' 2>/dev/null)
27
+
28
+ MODEL=$(echo "$INPUT" | jq -r '
29
+ .model //
30
+ .data.model //
31
+ .message.model //
32
+ ""
33
+ ' 2>/dev/null)
34
+
35
+ # Only log if we have actual token data
36
+ if [ "$INPUT_TOKENS" -gt 0 ] 2>/dev/null || [ "$OUTPUT_TOKENS" -gt 0 ] 2>/dev/null; then
37
+ if [ -n "$MODEL" ] && [ "$MODEL" != "null" ]; then
38
+ python3 "$TRACKER" log --input "$INPUT_TOKENS" --output "$OUTPUT_TOKENS" --model "$MODEL" 2>/dev/null
39
+ else
40
+ python3 "$TRACKER" log --input "$INPUT_TOKENS" --output "$OUTPUT_TOKENS" 2>/dev/null
41
+ fi
42
+ fi
43
+
44
+ exit 0