@pjmendonca/devflow 1.13.1 → 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 (228) 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/memory.md +0 -1
  9. package/.claude/commands/pair.md +0 -1
  10. package/.claude/commands/review.md +27 -0
  11. package/.claude/commands/route.md +0 -1
  12. package/.claude/commands/swarm.md +0 -1
  13. package/.claude/commands/validate.md +55 -0
  14. package/.claude/hooks/session-notification.sh +44 -0
  15. package/.claude/hooks/session-startup.sh +427 -0
  16. package/.claude/hooks/session-stop.sh +38 -0
  17. package/.claude/hooks/session_tracker.py +272 -0
  18. package/.claude/settings.json +38 -0
  19. package/.claude/skills/costs/SKILL.md +156 -0
  20. package/.claude/skills/validate/SKILL.md +101 -0
  21. package/CHANGELOG.md +254 -0
  22. package/README.md +207 -10
  23. package/bin/devflow-install.js +2 -1
  24. package/bin/devflow.js +5 -2
  25. package/lib/constants.js +0 -1
  26. package/lib/exec-python.js +1 -1
  27. package/package.json +1 -2
  28. package/tooling/.automation/.checkpoint_lock +1 -0
  29. package/tooling/.automation/agents/architect.md +19 -0
  30. package/tooling/.automation/agents/ba.md +19 -0
  31. package/tooling/.automation/agents/maintainer.md +19 -0
  32. package/tooling/.automation/agents/pm.md +19 -0
  33. package/tooling/.automation/agents/reviewer.md +1 -1
  34. package/tooling/.automation/agents/writer.md +19 -0
  35. package/tooling/.automation/benchmarks/benchmark_20251230_100119.json +314 -0
  36. package/tooling/.automation/benchmarks/benchmark_20251230_100216.json +314 -0
  37. package/tooling/.automation/costs/config.json +31 -0
  38. package/tooling/.automation/costs/sessions/2025-12-29_20251229_164128.json +22 -0
  39. package/tooling/.automation/memory/knowledge/kg_integration-test.json +707 -1
  40. package/tooling/.automation/memory/knowledge/kg_test-story.json +3273 -2
  41. package/tooling/.automation/memory/shared/shared_integration-test.json +181 -1
  42. package/tooling/.automation/memory/shared/shared_test-story.json +721 -1
  43. package/tooling/.automation/memory/shared/shared_test.json +1254 -0
  44. package/tooling/.automation/memory/shared/shared_validation-check.json +227 -0
  45. package/tooling/.automation/overrides/templates/architect/cloud-native.yaml +5 -5
  46. package/tooling/.automation/overrides/templates/architect/enterprise-architect.yaml +23 -5
  47. package/tooling/.automation/overrides/templates/architect/pragmatic-minimalist.yaml +24 -6
  48. package/tooling/.automation/overrides/templates/ba/agile-storyteller.yaml +4 -4
  49. package/tooling/.automation/overrides/templates/ba/domain-expert.yaml +4 -4
  50. package/tooling/.automation/overrides/templates/ba/requirements-engineer.yaml +4 -4
  51. package/tooling/.automation/overrides/templates/dev/performance-engineer.yaml +18 -0
  52. package/tooling/.automation/overrides/templates/dev/rapid-prototyper.yaml +19 -1
  53. package/tooling/.automation/overrides/templates/dev/security-focused.yaml +18 -0
  54. package/tooling/.automation/overrides/templates/dev/user-advocate.yaml +54 -0
  55. package/tooling/.automation/overrides/templates/maintainer/devops-maintainer.yaml +4 -4
  56. package/tooling/.automation/overrides/templates/maintainer/legacy-steward.yaml +4 -4
  57. package/tooling/.automation/overrides/templates/maintainer/oss-maintainer.yaml +4 -4
  58. package/tooling/.automation/overrides/templates/maintainer/reliability-engineer.yaml +55 -0
  59. package/tooling/.automation/overrides/templates/pm/agile-pm.yaml +4 -4
  60. package/tooling/.automation/overrides/templates/pm/hybrid-delivery.yaml +3 -3
  61. package/tooling/.automation/overrides/templates/pm/traditional-pm.yaml +4 -4
  62. package/tooling/.automation/overrides/templates/reviewer/quick-sanity.yaml +18 -0
  63. package/tooling/.automation/overrides/templates/reviewer/thorough-critic.yaml +18 -0
  64. package/tooling/.automation/overrides/templates/sm/agile-coach.yaml +2 -2
  65. package/tooling/.automation/overrides/templates/sm/startup-pm.yaml +3 -3
  66. package/tooling/.automation/overrides/templates/writer/api-documentarian.yaml +5 -5
  67. package/tooling/.automation/overrides/templates/writer/docs-as-code.yaml +4 -4
  68. package/tooling/.automation/overrides/templates/writer/user-guide-author.yaml +5 -5
  69. package/tooling/.automation/validation/history/2025-12-29_val_002a28c1.json +32 -0
  70. package/tooling/.automation/validation/history/2025-12-29_val_01273bb1.json +32 -0
  71. package/tooling/.automation/validation/history/2025-12-29_val_03369914.json +41 -0
  72. package/tooling/.automation/validation/history/2025-12-29_val_07a449ba.json +32 -0
  73. package/tooling/.automation/validation/history/2025-12-29_val_0df1f0a2.json +41 -0
  74. package/tooling/.automation/validation/history/2025-12-29_val_10ff3d34.json +41 -0
  75. package/tooling/.automation/validation/history/2025-12-29_val_110771d7.json +32 -0
  76. package/tooling/.automation/validation/history/2025-12-29_val_13f3a7f9.json +32 -0
  77. package/tooling/.automation/validation/history/2025-12-29_val_17ba9d21.json +41 -0
  78. package/tooling/.automation/validation/history/2025-12-29_val_22247089.json +32 -0
  79. package/tooling/.automation/validation/history/2025-12-29_val_227ea6a4.json +32 -0
  80. package/tooling/.automation/validation/history/2025-12-29_val_2335d5ae.json +32 -0
  81. package/tooling/.automation/validation/history/2025-12-29_val_246824bb.json +41 -0
  82. package/tooling/.automation/validation/history/2025-12-29_val_28b4b9cd.json +32 -0
  83. package/tooling/.automation/validation/history/2025-12-29_val_2abd12cc.json +32 -0
  84. package/tooling/.automation/validation/history/2025-12-29_val_2c801b2f.json +59 -0
  85. package/tooling/.automation/validation/history/2025-12-29_val_2c8cfa8e.json +32 -0
  86. package/tooling/.automation/validation/history/2025-12-29_val_2ce76eb0.json +32 -0
  87. package/tooling/.automation/validation/history/2025-12-29_val_30351948.json +41 -0
  88. package/tooling/.automation/validation/history/2025-12-29_val_30eb7229.json +41 -0
  89. package/tooling/.automation/validation/history/2025-12-29_val_34df0e77.json +41 -0
  90. package/tooling/.automation/validation/history/2025-12-29_val_376e4d6a.json +32 -0
  91. package/tooling/.automation/validation/history/2025-12-29_val_3a4e8a1a.json +59 -0
  92. package/tooling/.automation/validation/history/2025-12-29_val_3b77a628.json +32 -0
  93. package/tooling/.automation/validation/history/2025-12-29_val_3ea4e1cf.json +59 -0
  94. package/tooling/.automation/validation/history/2025-12-29_val_44aacdb4.json +59 -0
  95. package/tooling/.automation/validation/history/2025-12-29_val_457ddfa8.json +32 -0
  96. package/tooling/.automation/validation/history/2025-12-29_val_45af6238.json +41 -0
  97. package/tooling/.automation/validation/history/2025-12-29_val_4735dba1.json +41 -0
  98. package/tooling/.automation/validation/history/2025-12-29_val_486b203c.json +41 -0
  99. package/tooling/.automation/validation/history/2025-12-29_val_49dc56cd.json +59 -0
  100. package/tooling/.automation/validation/history/2025-12-29_val_4d863d6d.json +32 -0
  101. package/tooling/.automation/validation/history/2025-12-29_val_5149a808.json +59 -0
  102. package/tooling/.automation/validation/history/2025-12-29_val_52e0bb43.json +32 -0
  103. package/tooling/.automation/validation/history/2025-12-29_val_585d6319.json +59 -0
  104. package/tooling/.automation/validation/history/2025-12-29_val_5b2d859a.json +32 -0
  105. package/tooling/.automation/validation/history/2025-12-29_val_635a7081.json +41 -0
  106. package/tooling/.automation/validation/history/2025-12-29_val_64df4905.json +32 -0
  107. package/tooling/.automation/validation/history/2025-12-29_val_70634cee.json +41 -0
  108. package/tooling/.automation/validation/history/2025-12-29_val_714553f9.json +32 -0
  109. package/tooling/.automation/validation/history/2025-12-29_val_7f7bfdbf.json +41 -0
  110. package/tooling/.automation/validation/history/2025-12-29_val_7faad91d.json +32 -0
  111. package/tooling/.automation/validation/history/2025-12-29_val_81821f8f.json +41 -0
  112. package/tooling/.automation/validation/history/2025-12-29_val_8249f3c9.json +32 -0
  113. package/tooling/.automation/validation/history/2025-12-29_val_8422b50f.json +41 -0
  114. package/tooling/.automation/validation/history/2025-12-29_val_8446c134.json +32 -0
  115. package/tooling/.automation/validation/history/2025-12-29_val_879f4e26.json +59 -0
  116. package/tooling/.automation/validation/history/2025-12-29_val_8b6d5bd7.json +32 -0
  117. package/tooling/.automation/validation/history/2025-12-29_val_8c5cd787.json +32 -0
  118. package/tooling/.automation/validation/history/2025-12-29_val_91d20bc7.json +32 -0
  119. package/tooling/.automation/validation/history/2025-12-29_val_958a12b7.json +41 -0
  120. package/tooling/.automation/validation/history/2025-12-29_val_95d91108.json +41 -0
  121. package/tooling/.automation/validation/history/2025-12-29_val_980dbb74.json +32 -0
  122. package/tooling/.automation/validation/history/2025-12-29_val_9e40c79b.json +32 -0
  123. package/tooling/.automation/validation/history/2025-12-29_val_9f499b7c.json +32 -0
  124. package/tooling/.automation/validation/history/2025-12-29_val_9f7c3b57.json +32 -0
  125. package/tooling/.automation/validation/history/2025-12-29_val_a30d5bd4.json +32 -0
  126. package/tooling/.automation/validation/history/2025-12-29_val_a6eb09c7.json +32 -0
  127. package/tooling/.automation/validation/history/2025-12-29_val_a86f7b83.json +41 -0
  128. package/tooling/.automation/validation/history/2025-12-29_val_ad5347e1.json +41 -0
  129. package/tooling/.automation/validation/history/2025-12-29_val_b0a5a993.json +32 -0
  130. package/tooling/.automation/validation/history/2025-12-29_val_bcb0192e.json +32 -0
  131. package/tooling/.automation/validation/history/2025-12-29_val_bf3c9aaa.json +32 -0
  132. package/tooling/.automation/validation/history/2025-12-29_val_c461ff88.json +32 -0
  133. package/tooling/.automation/validation/history/2025-12-29_val_c4f4e258.json +41 -0
  134. package/tooling/.automation/validation/history/2025-12-29_val_c7f0fa6d.json +41 -0
  135. package/tooling/.automation/validation/history/2025-12-29_val_c911b0e6.json +32 -0
  136. package/tooling/.automation/validation/history/2025-12-29_val_cc581964.json +32 -0
  137. package/tooling/.automation/validation/history/2025-12-29_val_cdd5a33b.json +32 -0
  138. package/tooling/.automation/validation/history/2025-12-29_val_cfd42495.json +32 -0
  139. package/tooling/.automation/validation/history/2025-12-29_val_d1c7a4ee.json +41 -0
  140. package/tooling/.automation/validation/history/2025-12-29_val_d2280d0e.json +32 -0
  141. package/tooling/.automation/validation/history/2025-12-29_val_d2a6ff69.json +32 -0
  142. package/tooling/.automation/validation/history/2025-12-29_val_d8c53ab2.json +59 -0
  143. package/tooling/.automation/validation/history/2025-12-29_val_d9c1247a.json +41 -0
  144. package/tooling/.automation/validation/history/2025-12-29_val_d9d58569.json +32 -0
  145. package/tooling/.automation/validation/history/2025-12-29_val_dabb4fd9.json +32 -0
  146. package/tooling/.automation/validation/history/2025-12-29_val_dd8fe359.json +32 -0
  147. package/tooling/.automation/validation/history/2025-12-29_val_decdffc9.json +32 -0
  148. package/tooling/.automation/validation/history/2025-12-29_val_e3a95476.json +59 -0
  149. package/tooling/.automation/validation/history/2025-12-29_val_e776dfca.json +32 -0
  150. package/tooling/.automation/validation/history/2025-12-29_val_ea70969f.json +59 -0
  151. package/tooling/.automation/validation/history/2025-12-29_val_ef41ea95.json +32 -0
  152. package/tooling/.automation/validation/history/2025-12-29_val_f384f9b1.json +32 -0
  153. package/tooling/.automation/validation/history/2025-12-29_val_f8adc38c.json +41 -0
  154. package/tooling/.automation/validation/history/2025-12-29_val_fa40b69e.json +32 -0
  155. package/tooling/.automation/validation/history/2025-12-29_val_fc538d54.json +41 -0
  156. package/tooling/.automation/validation/history/2025-12-29_val_fe814665.json +32 -0
  157. package/tooling/.automation/validation/history/2025-12-29_val_ffea4b12.json +32 -0
  158. package/tooling/.automation/validation/history/2025-12-30_val_02d001e5.json +59 -0
  159. package/tooling/.automation/validation/history/2025-12-30_val_0b8966dc.json +32 -0
  160. package/tooling/.automation/validation/history/2025-12-30_val_15455fbf.json +59 -0
  161. package/tooling/.automation/validation/history/2025-12-30_val_157e34b9.json +32 -0
  162. package/tooling/.automation/validation/history/2025-12-30_val_28d1d933.json +32 -0
  163. package/tooling/.automation/validation/history/2025-12-30_val_3442a52c.json +32 -0
  164. package/tooling/.automation/validation/history/2025-12-30_val_37f1ce1e.json +32 -0
  165. package/tooling/.automation/validation/history/2025-12-30_val_4f1d8a93.json +32 -0
  166. package/tooling/.automation/validation/history/2025-12-30_val_56ff1de3.json +32 -0
  167. package/tooling/.automation/validation/history/2025-12-30_val_664fd4e2.json +41 -0
  168. package/tooling/.automation/validation/history/2025-12-30_val_66afb0a7.json +32 -0
  169. package/tooling/.automation/validation/history/2025-12-30_val_7634663c.json +41 -0
  170. package/tooling/.automation/validation/history/2025-12-30_val_8ea830c3.json +41 -0
  171. package/tooling/.automation/validation/history/2025-12-30_val_998957c2.json +32 -0
  172. package/tooling/.automation/validation/history/2025-12-30_val_a52177db.json +32 -0
  173. package/tooling/.automation/validation/history/2025-12-30_val_a5b65a63.json +32 -0
  174. package/tooling/.automation/validation/history/2025-12-30_val_ae391d0e.json +32 -0
  175. package/tooling/.automation/validation/history/2025-12-30_val_c7895339.json +41 -0
  176. package/tooling/.automation/validation/history/2025-12-30_val_ca416593.json +41 -0
  177. package/tooling/.automation/validation/history/2025-12-30_val_cee19422.json +32 -0
  178. package/tooling/.automation/validation/history/2025-12-30_val_ddd4f4e6.json +32 -0
  179. package/tooling/.automation/validation/history/2025-12-30_val_f2e1394b.json +32 -0
  180. package/tooling/.automation/validation/history/2025-12-30_val_f4a7fa06.json +41 -0
  181. package/tooling/.automation/validation/history/2025-12-30_val_ffea3369.json +32 -0
  182. package/tooling/.automation/validation-config.yaml +103 -0
  183. package/tooling/completions/DevflowCompletion.ps1 +21 -21
  184. package/tooling/completions/_run-story +3 -3
  185. package/tooling/completions/run-story-completion.bash +8 -8
  186. package/tooling/docs/DOC-STANDARD.md +14 -14
  187. package/tooling/docs/templates/migration-spec.md +4 -4
  188. package/tooling/scripts/context_checkpoint.py +5 -15
  189. package/tooling/scripts/cost_dashboard.py +610 -13
  190. package/tooling/scripts/create-persona.py +1 -12
  191. package/tooling/scripts/create-persona.sh +44 -44
  192. package/tooling/scripts/lib/__init__.py +12 -1
  193. package/tooling/scripts/lib/agent_handoff.py +11 -2
  194. package/tooling/scripts/lib/agent_router.py +31 -10
  195. package/tooling/scripts/lib/colors.py +106 -0
  196. package/tooling/scripts/lib/context_monitor.py +766 -0
  197. package/tooling/scripts/lib/cost_config.py +229 -10
  198. package/tooling/scripts/lib/cost_display.py +20 -45
  199. package/tooling/scripts/lib/cost_tracker.py +462 -15
  200. package/tooling/scripts/lib/currency_converter.py +28 -5
  201. package/tooling/scripts/lib/pair_programming.py +102 -3
  202. package/tooling/scripts/lib/personality_system.py +949 -0
  203. package/tooling/scripts/lib/platform.py +55 -0
  204. package/tooling/scripts/lib/shared_memory.py +9 -3
  205. package/tooling/scripts/lib/swarm_orchestrator.py +514 -75
  206. package/tooling/scripts/lib/validation_loop.py +1014 -0
  207. package/tooling/scripts/memory_summarize.py +9 -2
  208. package/tooling/scripts/new-doc.py +2 -9
  209. package/tooling/scripts/personalize_agent.py +1 -12
  210. package/tooling/scripts/rollback-migration.sh +60 -60
  211. package/tooling/scripts/run-collab.ps1 +16 -16
  212. package/tooling/scripts/run-collab.py +88 -53
  213. package/tooling/scripts/run-collab.sh +4 -4
  214. package/tooling/scripts/run-story.py +278 -20
  215. package/tooling/scripts/run-story.sh +3 -3
  216. package/tooling/scripts/setup-checkpoint-service.py +2 -9
  217. package/tooling/scripts/tech-debt-tracker.py +1 -12
  218. package/tooling/scripts/test_adversarial_swarm.py +452 -0
  219. package/tooling/scripts/update_version.py +48 -2
  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
  225. package/bin/devflow-init.js +0 -10
  226. package/tooling/scripts/init-project-workflow.ps1 +0 -651
  227. package/tooling/scripts/init-project-workflow.py +0 -70
  228. package/tooling/scripts/init-project-workflow.sh +0 -746
@@ -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
-
@@ -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