@accelerationguy/accel 1.0.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 (376) hide show
  1. package/CLAUDE.md +19 -0
  2. package/LICENSE +33 -0
  3. package/README.md +275 -0
  4. package/bin/install.js +661 -0
  5. package/docs/getting-started.md +164 -0
  6. package/docs/module-guide.md +139 -0
  7. package/modules/drive/LICENSE +21 -0
  8. package/modules/drive/PAUL-VS-GSD.md +171 -0
  9. package/modules/drive/README.md +555 -0
  10. package/modules/drive/assets/terminal.svg +67 -0
  11. package/modules/drive/bin/install.js +210 -0
  12. package/modules/drive/integration.js +76 -0
  13. package/modules/drive/package.json +38 -0
  14. package/modules/drive/src/commands/add-phase.md +36 -0
  15. package/modules/drive/src/commands/apply.md +83 -0
  16. package/modules/drive/src/commands/assumptions.md +37 -0
  17. package/modules/drive/src/commands/audit.md +57 -0
  18. package/modules/drive/src/commands/complete-milestone.md +36 -0
  19. package/modules/drive/src/commands/config.md +175 -0
  20. package/modules/drive/src/commands/consider-issues.md +41 -0
  21. package/modules/drive/src/commands/discover.md +48 -0
  22. package/modules/drive/src/commands/discuss-milestone.md +33 -0
  23. package/modules/drive/src/commands/discuss.md +34 -0
  24. package/modules/drive/src/commands/flows.md +73 -0
  25. package/modules/drive/src/commands/handoff.md +201 -0
  26. package/modules/drive/src/commands/help.md +525 -0
  27. package/modules/drive/src/commands/init.md +54 -0
  28. package/modules/drive/src/commands/map-codebase.md +34 -0
  29. package/modules/drive/src/commands/milestone.md +34 -0
  30. package/modules/drive/src/commands/pause.md +44 -0
  31. package/modules/drive/src/commands/plan-fix.md +216 -0
  32. package/modules/drive/src/commands/plan.md +36 -0
  33. package/modules/drive/src/commands/progress.md +138 -0
  34. package/modules/drive/src/commands/register.md +29 -0
  35. package/modules/drive/src/commands/remove-phase.md +37 -0
  36. package/modules/drive/src/commands/research-phase.md +209 -0
  37. package/modules/drive/src/commands/research.md +47 -0
  38. package/modules/drive/src/commands/resume.md +49 -0
  39. package/modules/drive/src/commands/status.md +78 -0
  40. package/modules/drive/src/commands/unify.md +87 -0
  41. package/modules/drive/src/commands/verify.md +60 -0
  42. package/modules/drive/src/references/checkpoints.md +234 -0
  43. package/modules/drive/src/references/context-management.md +219 -0
  44. package/modules/drive/src/references/git-strategy.md +206 -0
  45. package/modules/drive/src/references/loop-phases.md +254 -0
  46. package/modules/drive/src/references/plan-format.md +263 -0
  47. package/modules/drive/src/references/quality-principles.md +152 -0
  48. package/modules/drive/src/references/research-quality-control.md +247 -0
  49. package/modules/drive/src/references/sonarqube-integration.md +244 -0
  50. package/modules/drive/src/references/specialized-workflow-integration.md +186 -0
  51. package/modules/drive/src/references/subagent-criteria.md +179 -0
  52. package/modules/drive/src/references/tdd.md +219 -0
  53. package/modules/drive/src/references/work-units.md +161 -0
  54. package/modules/drive/src/rules/commands.md +108 -0
  55. package/modules/drive/src/rules/references.md +107 -0
  56. package/modules/drive/src/rules/style.md +123 -0
  57. package/modules/drive/src/rules/templates.md +51 -0
  58. package/modules/drive/src/rules/workflows.md +133 -0
  59. package/modules/drive/src/templates/CONTEXT.md +88 -0
  60. package/modules/drive/src/templates/DEBUG.md +164 -0
  61. package/modules/drive/src/templates/DISCOVERY.md +148 -0
  62. package/modules/drive/src/templates/HANDOFF.md +77 -0
  63. package/modules/drive/src/templates/ISSUES.md +93 -0
  64. package/modules/drive/src/templates/MILESTONES.md +167 -0
  65. package/modules/drive/src/templates/PLAN.md +328 -0
  66. package/modules/drive/src/templates/PROJECT.md +219 -0
  67. package/modules/drive/src/templates/RESEARCH.md +130 -0
  68. package/modules/drive/src/templates/ROADMAP.md +328 -0
  69. package/modules/drive/src/templates/SPECIAL-FLOWS.md +70 -0
  70. package/modules/drive/src/templates/STATE.md +210 -0
  71. package/modules/drive/src/templates/SUMMARY.md +221 -0
  72. package/modules/drive/src/templates/UAT-ISSUES.md +139 -0
  73. package/modules/drive/src/templates/codebase/architecture.md +259 -0
  74. package/modules/drive/src/templates/codebase/concerns.md +329 -0
  75. package/modules/drive/src/templates/codebase/conventions.md +311 -0
  76. package/modules/drive/src/templates/codebase/integrations.md +284 -0
  77. package/modules/drive/src/templates/codebase/stack.md +190 -0
  78. package/modules/drive/src/templates/codebase/structure.md +287 -0
  79. package/modules/drive/src/templates/codebase/testing.md +484 -0
  80. package/modules/drive/src/templates/config.md +181 -0
  81. package/modules/drive/src/templates/milestone-archive.md +236 -0
  82. package/modules/drive/src/templates/milestone-context.md +190 -0
  83. package/modules/drive/src/templates/paul-json.md +147 -0
  84. package/modules/drive/src/vector-config/PAUL +26 -0
  85. package/modules/drive/src/vector-config/PAUL.manifest +11 -0
  86. package/modules/drive/src/workflows/apply-phase.md +393 -0
  87. package/modules/drive/src/workflows/audit-plan.md +344 -0
  88. package/modules/drive/src/workflows/complete-milestone.md +479 -0
  89. package/modules/drive/src/workflows/configure-special-flows.md +283 -0
  90. package/modules/drive/src/workflows/consider-issues.md +172 -0
  91. package/modules/drive/src/workflows/create-milestone.md +268 -0
  92. package/modules/drive/src/workflows/debug.md +292 -0
  93. package/modules/drive/src/workflows/discovery.md +187 -0
  94. package/modules/drive/src/workflows/discuss-milestone.md +245 -0
  95. package/modules/drive/src/workflows/discuss-phase.md +231 -0
  96. package/modules/drive/src/workflows/init-project.md +698 -0
  97. package/modules/drive/src/workflows/map-codebase.md +459 -0
  98. package/modules/drive/src/workflows/pause-work.md +259 -0
  99. package/modules/drive/src/workflows/phase-assumptions.md +181 -0
  100. package/modules/drive/src/workflows/plan-phase.md +385 -0
  101. package/modules/drive/src/workflows/quality-gate.md +263 -0
  102. package/modules/drive/src/workflows/register-manifest.md +107 -0
  103. package/modules/drive/src/workflows/research.md +241 -0
  104. package/modules/drive/src/workflows/resume-project.md +200 -0
  105. package/modules/drive/src/workflows/roadmap-management.md +334 -0
  106. package/modules/drive/src/workflows/transition-phase.md +368 -0
  107. package/modules/drive/src/workflows/unify-phase.md +290 -0
  108. package/modules/drive/src/workflows/verify-work.md +241 -0
  109. package/modules/forge/README.md +281 -0
  110. package/modules/forge/bin/install.js +200 -0
  111. package/modules/forge/package.json +32 -0
  112. package/modules/forge/skillsmith/rules/checklists-rules.md +42 -0
  113. package/modules/forge/skillsmith/rules/context-rules.md +43 -0
  114. package/modules/forge/skillsmith/rules/entry-point-rules.md +44 -0
  115. package/modules/forge/skillsmith/rules/frameworks-rules.md +43 -0
  116. package/modules/forge/skillsmith/rules/tasks-rules.md +52 -0
  117. package/modules/forge/skillsmith/rules/templates-rules.md +43 -0
  118. package/modules/forge/skillsmith/skillsmith.md +82 -0
  119. package/modules/forge/skillsmith/tasks/audit.md +277 -0
  120. package/modules/forge/skillsmith/tasks/discover.md +145 -0
  121. package/modules/forge/skillsmith/tasks/distill.md +276 -0
  122. package/modules/forge/skillsmith/tasks/scaffold.md +349 -0
  123. package/modules/forge/specs/checklists.md +193 -0
  124. package/modules/forge/specs/context.md +223 -0
  125. package/modules/forge/specs/entry-point.md +320 -0
  126. package/modules/forge/specs/frameworks.md +228 -0
  127. package/modules/forge/specs/rules.md +245 -0
  128. package/modules/forge/specs/tasks.md +344 -0
  129. package/modules/forge/specs/templates.md +335 -0
  130. package/modules/forge/terminal.svg +70 -0
  131. package/modules/ignition/README.md +245 -0
  132. package/modules/ignition/bin/install.js +184 -0
  133. package/modules/ignition/checklists/planning-quality.md +55 -0
  134. package/modules/ignition/data/application/config.md +21 -0
  135. package/modules/ignition/data/application/guide.md +51 -0
  136. package/modules/ignition/data/application/skill-loadout.md +11 -0
  137. package/modules/ignition/data/campaign/config.md +18 -0
  138. package/modules/ignition/data/campaign/guide.md +36 -0
  139. package/modules/ignition/data/campaign/skill-loadout.md +10 -0
  140. package/modules/ignition/data/client/config.md +18 -0
  141. package/modules/ignition/data/client/guide.md +36 -0
  142. package/modules/ignition/data/client/skill-loadout.md +11 -0
  143. package/modules/ignition/data/utility/config.md +18 -0
  144. package/modules/ignition/data/utility/guide.md +31 -0
  145. package/modules/ignition/data/utility/skill-loadout.md +8 -0
  146. package/modules/ignition/data/workflow/config.md +19 -0
  147. package/modules/ignition/data/workflow/guide.md +41 -0
  148. package/modules/ignition/data/workflow/skill-loadout.md +10 -0
  149. package/modules/ignition/integration.js +54 -0
  150. package/modules/ignition/package.json +35 -0
  151. package/modules/ignition/seed.md +81 -0
  152. package/modules/ignition/tasks/add-type.md +164 -0
  153. package/modules/ignition/tasks/graduate.md +182 -0
  154. package/modules/ignition/tasks/ideate.md +221 -0
  155. package/modules/ignition/tasks/launch.md +137 -0
  156. package/modules/ignition/tasks/status.md +71 -0
  157. package/modules/ignition/templates/planning-application.md +193 -0
  158. package/modules/ignition/templates/planning-campaign.md +138 -0
  159. package/modules/ignition/templates/planning-client.md +149 -0
  160. package/modules/ignition/templates/planning-utility.md +112 -0
  161. package/modules/ignition/templates/planning-workflow.md +125 -0
  162. package/modules/ignition/terminal.svg +74 -0
  163. package/modules/mission-control/CONTEXT-CONTINUITY-SPEC.md +293 -0
  164. package/modules/mission-control/CONTEXT-ENGINEERING-GUIDE.md +282 -0
  165. package/modules/mission-control/README.md +91 -0
  166. package/modules/mission-control/assets/terminal.svg +80 -0
  167. package/modules/mission-control/examples/entities.example.json +133 -0
  168. package/modules/mission-control/examples/projects.example.json +318 -0
  169. package/modules/mission-control/examples/state.example.json +183 -0
  170. package/modules/mission-control/examples/vector.example.json +245 -0
  171. package/modules/mission-control/mission-control/checklists/install-verification.md +46 -0
  172. package/modules/mission-control/mission-control/frameworks/framework-registry.md +83 -0
  173. package/modules/mission-control/mission-control/mission-control.md +83 -0
  174. package/modules/mission-control/mission-control/tasks/insights.md +73 -0
  175. package/modules/mission-control/mission-control/tasks/install.md +194 -0
  176. package/modules/mission-control/mission-control/tasks/status.md +125 -0
  177. package/modules/mission-control/schemas/entities.schema.json +89 -0
  178. package/modules/mission-control/schemas/projects.schema.json +221 -0
  179. package/modules/mission-control/schemas/state.schema.json +108 -0
  180. package/modules/mission-control/schemas/vector.schema.json +200 -0
  181. package/modules/momentum/README.md +678 -0
  182. package/modules/momentum/bin/install.js +563 -0
  183. package/modules/momentum/integration.js +131 -0
  184. package/modules/momentum/package.json +42 -0
  185. package/modules/momentum/schemas/entities.schema.json +89 -0
  186. package/modules/momentum/schemas/projects.schema.json +221 -0
  187. package/modules/momentum/schemas/state.schema.json +108 -0
  188. package/modules/momentum/src/commands/audit-claude-md.md +31 -0
  189. package/modules/momentum/src/commands/audit.md +33 -0
  190. package/modules/momentum/src/commands/groom.md +35 -0
  191. package/modules/momentum/src/commands/history.md +27 -0
  192. package/modules/momentum/src/commands/pulse.md +33 -0
  193. package/modules/momentum/src/commands/scaffold.md +33 -0
  194. package/modules/momentum/src/commands/status.md +28 -0
  195. package/modules/momentum/src/commands/surface-convert.md +35 -0
  196. package/modules/momentum/src/commands/surface-create.md +34 -0
  197. package/modules/momentum/src/commands/surface-list.md +27 -0
  198. package/modules/momentum/src/commands/vector-hygiene.md +33 -0
  199. package/modules/momentum/src/framework/context/momentum-principles.md +71 -0
  200. package/modules/momentum/src/framework/frameworks/audit-strategies.md +53 -0
  201. package/modules/momentum/src/framework/frameworks/satellite-registration.md +44 -0
  202. package/modules/momentum/src/framework/tasks/audit-claude-md.md +68 -0
  203. package/modules/momentum/src/framework/tasks/audit.md +64 -0
  204. package/modules/momentum/src/framework/tasks/groom.md +164 -0
  205. package/modules/momentum/src/framework/tasks/history.md +34 -0
  206. package/modules/momentum/src/framework/tasks/pulse.md +83 -0
  207. package/modules/momentum/src/framework/tasks/scaffold.md +202 -0
  208. package/modules/momentum/src/framework/tasks/status.md +35 -0
  209. package/modules/momentum/src/framework/tasks/surface-convert.md +143 -0
  210. package/modules/momentum/src/framework/tasks/surface-create.md +184 -0
  211. package/modules/momentum/src/framework/tasks/surface-list.md +42 -0
  212. package/modules/momentum/src/framework/tasks/vector-hygiene.md +160 -0
  213. package/modules/momentum/src/framework/templates/workspace-json.md +96 -0
  214. package/modules/momentum/src/hooks/_template.py +129 -0
  215. package/modules/momentum/src/hooks/active-hook.py +178 -0
  216. package/modules/momentum/src/hooks/backlog-hook.py +115 -0
  217. package/modules/momentum/src/hooks/mission-control-insights.py +169 -0
  218. package/modules/momentum/src/hooks/momentum-pulse-check.py +351 -0
  219. package/modules/momentum/src/hooks/operator.py +53 -0
  220. package/modules/momentum/src/hooks/psmm-injector.py +67 -0
  221. package/modules/momentum/src/hooks/satellite-detection.py +248 -0
  222. package/modules/momentum/src/packages/momentum-mcp/index.js +119 -0
  223. package/modules/momentum/src/packages/momentum-mcp/package.json +10 -0
  224. package/modules/momentum/src/packages/momentum-mcp/tools/entities.js +226 -0
  225. package/modules/momentum/src/packages/momentum-mcp/tools/operator.js +106 -0
  226. package/modules/momentum/src/packages/momentum-mcp/tools/projects.js +322 -0
  227. package/modules/momentum/src/packages/momentum-mcp/tools/psmm.js +206 -0
  228. package/modules/momentum/src/packages/momentum-mcp/tools/state.js +199 -0
  229. package/modules/momentum/src/packages/momentum-mcp/tools/surfaces.js +404 -0
  230. package/modules/momentum/src/skill/momentum.md +111 -0
  231. package/modules/momentum/src/tasks/groom.md +164 -0
  232. package/modules/momentum/src/templates/operator.json +66 -0
  233. package/modules/momentum/src/templates/workspace.json +111 -0
  234. package/modules/momentum/terminal.svg +77 -0
  235. package/modules/radar/README.md +1552 -0
  236. package/modules/radar/commands/audit.md +233 -0
  237. package/modules/radar/commands/guardrails.md +194 -0
  238. package/modules/radar/commands/init.md +207 -0
  239. package/modules/radar/commands/playbook.md +176 -0
  240. package/modules/radar/commands/remediate.md +156 -0
  241. package/modules/radar/commands/report.md +172 -0
  242. package/modules/radar/commands/resume.md +176 -0
  243. package/modules/radar/commands/status.md +148 -0
  244. package/modules/radar/commands/transform.md +205 -0
  245. package/modules/radar/commands/validate.md +177 -0
  246. package/modules/radar/docs/ARCHITECTURE.md +336 -0
  247. package/modules/radar/docs/GETTING-STARTED.md +287 -0
  248. package/modules/radar/docs/standards/agents.md +197 -0
  249. package/modules/radar/docs/standards/commands.md +250 -0
  250. package/modules/radar/docs/standards/domains.md +191 -0
  251. package/modules/radar/docs/standards/personas.md +211 -0
  252. package/modules/radar/docs/standards/rules.md +218 -0
  253. package/modules/radar/docs/standards/runtime.md +445 -0
  254. package/modules/radar/docs/standards/schemas.md +269 -0
  255. package/modules/radar/docs/standards/tools.md +273 -0
  256. package/modules/radar/docs/standards/workflows.md +254 -0
  257. package/modules/radar/docs/terminal.svg +72 -0
  258. package/modules/radar/docs/validation/convention-compliance-report.md +183 -0
  259. package/modules/radar/docs/validation/cross-reference-report.md +195 -0
  260. package/modules/radar/docs/validation/validation-summary.md +118 -0
  261. package/modules/radar/docs/validation/version-manifest.yaml +363 -0
  262. package/modules/radar/install.sh +711 -0
  263. package/modules/radar/integration.js +53 -0
  264. package/modules/radar/src/core/agents/architect.md +25 -0
  265. package/modules/radar/src/core/agents/compliance-officer.md +25 -0
  266. package/modules/radar/src/core/agents/data-engineer.md +25 -0
  267. package/modules/radar/src/core/agents/devils-advocate.md +22 -0
  268. package/modules/radar/src/core/agents/performance-engineer.md +25 -0
  269. package/modules/radar/src/core/agents/principal-engineer.md +23 -0
  270. package/modules/radar/src/core/agents/reality-gap-analyst.md +22 -0
  271. package/modules/radar/src/core/agents/security-engineer.md +25 -0
  272. package/modules/radar/src/core/agents/senior-app-engineer.md +25 -0
  273. package/modules/radar/src/core/agents/sre.md +25 -0
  274. package/modules/radar/src/core/agents/staff-engineer.md +23 -0
  275. package/modules/radar/src/core/agents/test-engineer.md +25 -0
  276. package/modules/radar/src/core/personas/architect.md +111 -0
  277. package/modules/radar/src/core/personas/compliance-officer.md +104 -0
  278. package/modules/radar/src/core/personas/data-engineer.md +113 -0
  279. package/modules/radar/src/core/personas/devils-advocate.md +105 -0
  280. package/modules/radar/src/core/personas/performance-engineer.md +119 -0
  281. package/modules/radar/src/core/personas/principal-engineer.md +119 -0
  282. package/modules/radar/src/core/personas/reality-gap-analyst.md +111 -0
  283. package/modules/radar/src/core/personas/security-engineer.md +108 -0
  284. package/modules/radar/src/core/personas/senior-app-engineer.md +111 -0
  285. package/modules/radar/src/core/personas/sre.md +117 -0
  286. package/modules/radar/src/core/personas/staff-engineer.md +109 -0
  287. package/modules/radar/src/core/personas/test-engineer.md +109 -0
  288. package/modules/radar/src/core/workflows/disagreement-resolution.md +183 -0
  289. package/modules/radar/src/core/workflows/phase-0-context.md +148 -0
  290. package/modules/radar/src/core/workflows/phase-1-reconnaissance.md +169 -0
  291. package/modules/radar/src/core/workflows/phase-2-domain-audits.md +190 -0
  292. package/modules/radar/src/core/workflows/phase-3-cross-domain.md +177 -0
  293. package/modules/radar/src/core/workflows/phase-4-adversarial-review.md +165 -0
  294. package/modules/radar/src/core/workflows/phase-5-report.md +189 -0
  295. package/modules/radar/src/core/workflows/phase-checkpoint.md +222 -0
  296. package/modules/radar/src/core/workflows/session-handoff.md +152 -0
  297. package/modules/radar/src/domains/00-context.md +201 -0
  298. package/modules/radar/src/domains/01-architecture.md +248 -0
  299. package/modules/radar/src/domains/02-data.md +224 -0
  300. package/modules/radar/src/domains/03-correctness.md +230 -0
  301. package/modules/radar/src/domains/04-security.md +274 -0
  302. package/modules/radar/src/domains/05-compliance.md +228 -0
  303. package/modules/radar/src/domains/06-testing.md +228 -0
  304. package/modules/radar/src/domains/07-reliability.md +246 -0
  305. package/modules/radar/src/domains/08-performance.md +247 -0
  306. package/modules/radar/src/domains/09-maintainability.md +271 -0
  307. package/modules/radar/src/domains/10-operability.md +250 -0
  308. package/modules/radar/src/domains/11-change-risk.md +246 -0
  309. package/modules/radar/src/domains/12-team-risk.md +221 -0
  310. package/modules/radar/src/domains/13-risk-synthesis.md +202 -0
  311. package/modules/radar/src/rules/agent-boundaries.md +78 -0
  312. package/modules/radar/src/rules/disagreement-protocol.md +76 -0
  313. package/modules/radar/src/rules/epistemic-hygiene.md +78 -0
  314. package/modules/radar/src/schemas/confidence.md +185 -0
  315. package/modules/radar/src/schemas/disagreement.md +238 -0
  316. package/modules/radar/src/schemas/finding.md +287 -0
  317. package/modules/radar/src/schemas/report-section.md +150 -0
  318. package/modules/radar/src/schemas/signal.md +108 -0
  319. package/modules/radar/src/tools/checkov.md +463 -0
  320. package/modules/radar/src/tools/git-history.md +581 -0
  321. package/modules/radar/src/tools/gitleaks.md +447 -0
  322. package/modules/radar/src/tools/grype.md +611 -0
  323. package/modules/radar/src/tools/semgrep.md +378 -0
  324. package/modules/radar/src/tools/sonarqube.md +550 -0
  325. package/modules/radar/src/tools/syft.md +539 -0
  326. package/modules/radar/src/tools/trivy.md +439 -0
  327. package/modules/radar/src/transform/agents/change-risk-modeler.md +24 -0
  328. package/modules/radar/src/transform/agents/execution-validator.md +24 -0
  329. package/modules/radar/src/transform/agents/guardrail-generator.md +24 -0
  330. package/modules/radar/src/transform/agents/pedagogy-agent.md +24 -0
  331. package/modules/radar/src/transform/agents/remediation-architect.md +24 -0
  332. package/modules/radar/src/transform/personas/change-risk-modeler.md +95 -0
  333. package/modules/radar/src/transform/personas/execution-validator.md +95 -0
  334. package/modules/radar/src/transform/personas/guardrail-generator.md +103 -0
  335. package/modules/radar/src/transform/personas/pedagogy-agent.md +105 -0
  336. package/modules/radar/src/transform/personas/remediation-architect.md +95 -0
  337. package/modules/radar/src/transform/rules/change-risk-rules.md +87 -0
  338. package/modules/radar/src/transform/rules/safety-governance.md +87 -0
  339. package/modules/radar/src/transform/schemas/change-risk.md +139 -0
  340. package/modules/radar/src/transform/schemas/intervention-level.md +207 -0
  341. package/modules/radar/src/transform/schemas/playbook.md +205 -0
  342. package/modules/radar/src/transform/schemas/verification-plan.md +134 -0
  343. package/modules/radar/src/transform/workflows/phase-6-remediation.md +148 -0
  344. package/modules/radar/src/transform/workflows/phase-7-risk-validation.md +161 -0
  345. package/modules/radar/src/transform/workflows/phase-8-execution-planning.md +159 -0
  346. package/modules/radar/src/transform/workflows/transform-safety.md +158 -0
  347. package/modules/vector/.vector-template/sessions/.gitkeep +0 -0
  348. package/modules/vector/.vector-template/vector.json +72 -0
  349. package/modules/vector/AUDIT-CLAUDEMD.md +154 -0
  350. package/modules/vector/INSTALL.md +185 -0
  351. package/modules/vector/LICENSE +21 -0
  352. package/modules/vector/README.md +409 -0
  353. package/modules/vector/VECTOR-BLOCK.md +57 -0
  354. package/modules/vector/assets/terminal.svg +68 -0
  355. package/modules/vector/bin/install.js +455 -0
  356. package/modules/vector/bin/migrate-v1-to-v2.sh +492 -0
  357. package/modules/vector/commands/help.md +46 -0
  358. package/modules/vector/hooks/vector-hook.py +775 -0
  359. package/modules/vector/mcp/index.js +118 -0
  360. package/modules/vector/mcp/package.json +10 -0
  361. package/modules/vector/mcp/tools/decisions.js +269 -0
  362. package/modules/vector/mcp/tools/domains.js +361 -0
  363. package/modules/vector/mcp/tools/staging.js +252 -0
  364. package/modules/vector/mcp/tools/vector-json.js +647 -0
  365. package/modules/vector/package.json +38 -0
  366. package/modules/vector/schemas/vector.schema.json +237 -0
  367. package/package.json +39 -0
  368. package/shared/branding/branding.js +70 -0
  369. package/shared/config/defaults.json +59 -0
  370. package/shared/events/README.md +175 -0
  371. package/shared/events/event-bus.js +134 -0
  372. package/shared/events/event_bus.py +255 -0
  373. package/shared/events/integrations.js +161 -0
  374. package/shared/events/schemas/audit-complete.schema.json +21 -0
  375. package/shared/events/schemas/phase-progress.schema.json +23 -0
  376. package/shared/events/schemas/plan-created.schema.json +21 -0
@@ -0,0 +1,83 @@
1
+ <purpose>
2
+ Daily workspace activation. Read workspace state, calculate drift, present health dashboard, prime the operator for their session.
3
+ </purpose>
4
+
5
+ <user-story>
6
+ As an AI builder, I want a quick workspace health briefing at session start, so that I know what needs attention before I start working.
7
+ </user-story>
8
+
9
+ <when-to-use>
10
+ - Start of every work session
11
+ - When user says "momentum pulse", "what's the state of things", "workspace status"
12
+ - When the pulse hook detects overdue grooming and injects a prompt
13
+ - Entry point routes here via /momentum:pulse
14
+ </when-to-use>
15
+
16
+ <steps>
17
+
18
+ <step name="read_state" priority="first">
19
+ Read workspace state from `.accel/momentum/workspace.json` and `.accel/momentum/STATE.md`.
20
+
21
+ 1. Read `.accel/momentum/workspace.json` — the manifest
22
+ 2. Read `.accel/momentum/STATE.md` — the last known state
23
+ 3. If either file is missing, suggest running `/momentum:scaffold` first
24
+ 4. Extract: last groom date, groom cadence, area list, satellite list
25
+ </step>
26
+
27
+ <step name="calculate_drift">
28
+ Check each tracked area against filesystem reality.
29
+
30
+ For each area in the manifest:
31
+ 1. Check filesystem timestamps on tracked paths (stat modification dates)
32
+ 2. Compare against last groom date and area-specific cadence
33
+ 3. Calculate days overdue (0 if within cadence)
34
+ 4. Classify: Current (within cadence), Stale (1-2x overdue), Critical (2x+ overdue)
35
+
36
+ For each registered satellite:
37
+ 1. Check if state file exists and is readable
38
+ 2. Extract last modification date
39
+ 3. Report current phase if parseable
40
+
41
+ Calculate total drift score: sum of days-overdue across all areas, with Critical areas weighted 2x.
42
+ </step>
43
+
44
+ <step name="present_dashboard">
45
+ Present the health dashboard to the operator.
46
+
47
+ Format:
48
+ ```
49
+ Momentum Pulse — {workspace-name}
50
+ Last Groom: {date} ({N} days ago)
51
+ Drift Score: {score}
52
+
53
+ | Area | Status | Age | Due |
54
+ |------|--------|-----|-----|
55
+ ...
56
+
57
+ Satellites:
58
+ | Project | Phase | Last Active |
59
+ ...
60
+
61
+ {Recommendation based on drift score}
62
+ ```
63
+
64
+ Recommendations:
65
+ - Drift 0: "Workspace is clean. Proceed normally."
66
+ - Drift 1-7: "Minor drift in {areas}. Consider grooming this week."
67
+ - Drift 8-14: "Moderate drift. Run /momentum:groom soon."
68
+ - Drift 15+: "Critical drift. Workspace context is stale. Run /momentum:groom now."
69
+ </step>
70
+
71
+ </steps>
72
+
73
+ <output>
74
+ Health dashboard with drift score, area statuses, satellite health, and recommended next action.
75
+ </output>
76
+
77
+ <acceptance-criteria>
78
+ - [ ] All manifest areas checked against filesystem reality
79
+ - [ ] Drift score calculated correctly
80
+ - [ ] Satellites checked for health
81
+ - [ ] Clear recommendation provided based on drift level
82
+ - [ ] Dashboard is concise and scannable (not a wall of text)
83
+ </acceptance-criteria>
@@ -0,0 +1,202 @@
1
+ <purpose>
2
+ Set up Momentum in a new or existing workspace. Scan the workspace, ask guided questions, generate the manifest, install hooks, initialize JSON data surfaces, and run operator profile setup. Optional --full mode adds CLAUDE.md audit and guided first groom.
3
+ </purpose>
4
+
5
+ <user-story>
6
+ As an AI builder setting up my workspace, I want a guided scaffolding process that configures workspace management for my specific setup, so that I get maintenance automation without manual configuration.
7
+ </user-story>
8
+
9
+ <when-to-use>
10
+ - First-time Momentum installation in any workspace
11
+ - When user says "momentum scaffold", "set up momentum", "initialize workspace management"
12
+ - Entry point routes here via /momentum:scaffold
13
+ - Use --full flag for batteries-included mode with CLAUDE.md audit + first groom
14
+ </when-to-use>
15
+
16
+ <context>
17
+ @templates/workspace-json.md
18
+ </context>
19
+
20
+ <steps>
21
+
22
+ <step name="detect_mode" priority="first">
23
+ Determine scaffold mode.
24
+
25
+ 1. Check if user specified `--full` or mentioned wanting full setup
26
+ 2. If `--full`: CLAUDE.md audit + first groom will be offered after data layer setup
27
+ 3. If standard: data layer + hooks + operator profile
28
+ 4. Announce mode: "Running Momentum scaffold ({standard|full} mode)."
29
+ </step>
30
+
31
+ <step name="scan_workspace">
32
+ Scan the workspace and detect what exists.
33
+
34
+ 1. List top-level directories and files
35
+ 2. Detect common patterns:
36
+ - .accel/momentum/data/ → existing JSON surfaces (v2 data model)
37
+ - ACTIVE.md, BACKLOG.md → legacy working memory (offer migration)
38
+ - projects/ → project tracking
39
+ - apps/ → satellite projects
40
+ - tools/ → tool management
41
+ - .claude/ → system layer
42
+ - .mcp.json → MCP configuration
43
+ - content/ → content pipeline
44
+ - clients/ → client work
45
+ - obsidian/ → knowledge graph
46
+ - .vector/ → Vector dynamic rules
47
+ 3. Detect satellite projects (directories with .drive/ inside apps/)
48
+ 4. Present findings: "I found: {list of detected areas}"
49
+
50
+ **Wait for confirmation before proceeding.**
51
+ </step>
52
+
53
+ <step name="guided_configuration">
54
+ Walk through each detected area and configure tracking.
55
+
56
+ For each detected area:
57
+ 1. "I found {area}. Want Momentum to track this?"
58
+ 2. If yes: "What grooming cadence? (weekly/bi-weekly/monthly)"
59
+ 3. Auto-select audit strategy based on area type
60
+ 4. Allow override of defaults
61
+
62
+ Also ask:
63
+ - "What day do you prefer for weekly grooming?" (default: Friday)
64
+ - "Any directories I should scan for satellite projects?" (default: apps/)
65
+ - "Anything else you want tracked that I didn't detect?"
66
+
67
+ Build workspace.json from responses using `@templates/workspace-json.md` schema.
68
+ </step>
69
+
70
+ <step name="install_data_layer">
71
+ Create .accel/momentum/ directory and generate JSON data surfaces.
72
+
73
+ 1. Create `.accel/momentum/` directory structure:
74
+ ```
75
+ .accel/momentum/
76
+ ├── workspace.json
77
+ ├── operator.json
78
+ ├── data/
79
+ │ ├── active.json
80
+ │ ├── backlog.json
81
+ │ ├── projects.json
82
+ │ ├── entities.json
83
+ │ └── state.json
84
+ ├── hooks/
85
+ ├── momentum-mcp/
86
+ ├── grooming/
87
+ └── audits/
88
+ ```
89
+ 2. Write workspace.json from guided configuration (with surfaces and vector_hygiene sections)
90
+ 3. Initialize JSON data surfaces with empty starter content (don't overwrite existing)
91
+ 4. Copy operator.json template (don't overwrite existing)
92
+ 5. Register any detected satellite projects in workspace.json
93
+ 6. Report: "Momentum data layer installed. {N} areas tracked, {N} satellites registered, {N} data surfaces initialized."
94
+
95
+ **Legacy migration:** If ACTIVE.md or BACKLOG.md exist at workspace root, offer to convert them to JSON surfaces using `/momentum:surface convert`. Do not delete originals — let the user do that after verifying the conversion.
96
+ </step>
97
+
98
+ <step name="install_hooks">
99
+ Install and register Momentum hooks.
100
+
101
+ All hooks live in `.accel/momentum/hooks/`. Session hooks are registered in `.claude/settings.json`.
102
+
103
+ **UserPromptSubmit hooks** (fire every prompt):
104
+ - active-hook.py — active work surface injection
105
+ - backlog-hook.py — backlog surface injection
106
+ - momentum-pulse-check.py — drift detection + groom reminders
107
+ - psmm-injector.py — per-session meta memory injection
108
+ - operator.py — operator identity context injection
109
+ - satellite-detection.py — Drive project auto-registration
110
+
111
+ **On-demand hooks** (invoked by commands, not auto-registered):
112
+ - mission-control-insights.py — workspace analytics (invoked by /accel:insights)
113
+
114
+ For each auto-fire hook:
115
+ 1. Check if `.accel/momentum/hooks/{hook}` exists
116
+ 2. If not: copy from `~/.claude/momentum-framework/hooks/{hook}` (global install source)
117
+ - If `~/.claude/momentum-framework/hooks/{hook}` doesn't exist either, warn:
118
+ "Momentum framework not globally installed. Run `npx momentum-framework --global` first, then re-run scaffold."
119
+ 3. Check `.claude/settings.json` for hook registration in `UserPromptSubmit` array
120
+ 4. If not registered: add the hook entry with absolute path to `.accel/momentum/hooks/{hook}`
121
+
122
+ Hook registration format in settings.json:
123
+ ```json
124
+ {
125
+ "hooks": {
126
+ "UserPromptSubmit": [
127
+ { "type": "command", "command": "python3 /absolute/path/.accel/momentum/hooks/{hook}" }
128
+ ]
129
+ }
130
+ }
131
+ ```
132
+
133
+ Report: "Hooks installed ({N} auto-fire hooks registered, 1 on-demand hook available)."
134
+ </step>
135
+
136
+ <step name="operator_profile">
137
+ Guide the operator through their profile setup.
138
+
139
+ 1. Check if `.accel/momentum/operator.json` has completed sections (check `completed_at` fields)
140
+ 2. If all sections completed: "Operator profile already configured. Want to update any section?"
141
+ 3. If incomplete or new:
142
+ - Walk through each section of operator.json:
143
+ a. **Deep Why** — 5 progressively deeper questions about motivation
144
+ b. **North Star** — One measurable metric with timeframe
145
+ c. **Key Values** — Rank-ordered values with concrete meanings (max 5)
146
+ d. **Elevator Pitch** — Layered pitch (1-4 floors)
147
+ e. **Surface Vision** — Concrete scenes of what success looks like
148
+ - Each section can be skipped: "Skip for now? You can complete it later."
149
+ - Write responses to operator.json after each section
150
+ 4. Report: "Operator profile {complete|partially complete}. The operator hook will inject your identity context every session."
151
+ </step>
152
+
153
+ <step name="install_mcp">
154
+ Verify MCP server is wired.
155
+
156
+ 1. Check `.mcp.json` for momentum-mcp registration
157
+ 2. If not registered:
158
+ - Check if `.accel/momentum/momentum-mcp/` exists with node_modules
159
+ - If no node_modules: run `npm install` in `.accel/momentum/momentum-mcp/`
160
+ - Add registration to `.mcp.json`:
161
+ ```json
162
+ { "momentum-mcp": { "type": "stdio", "command": "node", "args": ["./.accel/momentum/momentum-mcp/index.js"] } }
163
+ ```
164
+ 3. Report: "Momentum MCP server registered. Claude can now manage your data surfaces through tool calls."
165
+ </step>
166
+
167
+ <step name="full_mode_extras">
168
+ **Full mode only.**
169
+
170
+ **CLAUDE.md audit:**
171
+ 1. Check if CLAUDE.md exists
172
+ 2. If exists: "Want me to audit your CLAUDE.md against Momentum conventions?"
173
+ - If yes: route to `/momentum:audit-claude-md` task
174
+ 3. If doesn't exist: "Want me to generate a CLAUDE.md template for your workspace?"
175
+ - If yes: generate based on detected workspace structure
176
+
177
+ **First groom:**
178
+ 1. "Want to run an initial groom to establish baseline? This reviews each area once."
179
+ 2. If yes: run /momentum:groom flow
180
+ 3. If no: "Baseline set from filesystem timestamps. First groom due: {date}."
181
+ </step>
182
+
183
+ </steps>
184
+
185
+ <output>
186
+ Fully configured Momentum installation. Standard mode: data layer with JSON surfaces, hooks wired, operator profile setup, MCP registered. Full mode: adds CLAUDE.md audit and guided first groom.
187
+ </output>
188
+
189
+ <acceptance-criteria>
190
+ - [ ] Workspace scanned and areas detected
191
+ - [ ] Operator confirmed tracked areas and cadences
192
+ - [ ] .accel/momentum/ directory created with all required files
193
+ - [ ] workspace.json generated from guided configuration
194
+ - [ ] JSON data surfaces initialized (active, backlog, projects, entities, state)
195
+ - [ ] operator.json created and profile questionnaire offered
196
+ - [ ] Satellite projects detected and registered
197
+ - [ ] All auto-fire hooks installed and registered in settings.json
198
+ - [ ] Momentum MCP server wired in .mcp.json
199
+ - [ ] (Full mode) CLAUDE.md audit offered
200
+ - [ ] (Full mode) First groom offered
201
+ - [ ] Operator informed of next groom date
202
+ </acceptance-criteria>
@@ -0,0 +1,35 @@
1
+ <purpose>
2
+ Quick one-liner workspace health check. No conversation, just the numbers.
3
+ </purpose>
4
+
5
+ <user-story>
6
+ As an AI builder, I want a fast health check I can glance at, so that I know if anything needs attention without a full briefing.
7
+ </user-story>
8
+
9
+ <when-to-use>
10
+ - When user wants a quick check without full pulse
11
+ - Entry point routes here via /momentum:status
12
+ </when-to-use>
13
+
14
+ <steps>
15
+
16
+ <step name="quick_check" priority="first">
17
+ Read state and output one-liner.
18
+
19
+ 1. Read `.accel/momentum/STATE.md`
20
+ 2. Calculate current drift score from timestamps
21
+ 3. Count overdue areas and past-due backlog items
22
+ 4. Output single line: "Momentum: Drift {score} | {N} areas overdue | {N} backlog items past review-by | Last groom: {date}"
23
+ </step>
24
+
25
+ </steps>
26
+
27
+ <output>
28
+ Single-line health summary. No conversation.
29
+ </output>
30
+
31
+ <acceptance-criteria>
32
+ - [ ] Output is one line
33
+ - [ ] Drift score is current (not cached)
34
+ - [ ] Overdue counts are accurate
35
+ </acceptance-criteria>
@@ -0,0 +1,143 @@
1
+ <purpose>
2
+ Convert an existing @-mentioned markdown file into a structured data surface. Analyzes the markdown structure, proposes a schema, migrates content, and generates all surface artifacts (JSON, hook, registration).
3
+ </purpose>
4
+
5
+ <user-story>
6
+ As an AI builder, I want to convert my existing markdown tracking files into structured surfaces so Claude gets cheap passive awareness instead of expensive @-file parsing.
7
+ </user-story>
8
+
9
+ <when-to-use>
10
+ - /momentum:surface convert {file-path}
11
+ - "convert this file to a surface", "make this a data surface"
12
+ - User has a markdown file they @-mention regularly and wants it structured
13
+ </when-to-use>
14
+
15
+ <context>
16
+ @.accel/momentum/hooks/_template.py
17
+ @.accel/momentum/workspace.json
18
+ </context>
19
+
20
+ <steps>
21
+
22
+ <step name="read" priority="first">
23
+ ## Step 1: Read & Analyze
24
+
25
+ 1. Read the specified markdown file completely
26
+ 2. Detect structure:
27
+ - **Headings** → potential categories or priority groups
28
+ - **Bold labels** (e.g., `**Status:**`) → field names
29
+ - **List items** → individual entries
30
+ - **Checkboxes** → checklist/progress fields
31
+ - **Dates** → timestamp fields
32
+ - **File paths** → location fields
33
+ - **Tables** → structured data (archived items, reference tables)
34
+ 3. Identify patterns:
35
+ - How many distinct items?
36
+ - What fields recur across items?
37
+ - Are there priority/status groupings?
38
+ - Is there an archived/done section?
39
+
40
+ Present findings:
41
+ ```
42
+ Detected structure in {file}:
43
+ Items found: {count}
44
+ Sections: {list of heading-based groups}
45
+ Recurring fields: {field names}
46
+ Archived section: {yes/no}
47
+ ```
48
+ </step>
49
+
50
+ <step name="propose">
51
+ ## Step 2: Propose Schema
52
+
53
+ Based on analysis, propose:
54
+
55
+ 1. **Surface name** — infer from filename (e.g., ACTIVE.md → "active")
56
+ 2. **Schema** — field names, types, required fields, ID prefix
57
+ 3. **Sample conversion** — show 2-3 items converted to JSON
58
+
59
+ ```
60
+ Proposed schema for "{name}":
61
+ ID prefix: {PREFIX}
62
+ Required: {fields}
63
+ Optional: {fields}
64
+ Priority levels: {if detected}
65
+
66
+ Sample conversion:
67
+ "{heading item}" →
68
+ {
69
+ "id": "PREFIX-001",
70
+ "title": "...",
71
+ "status": "...",
72
+ ...
73
+ }
74
+ ```
75
+
76
+ Ask: "Does this schema look right? Adjust anything?"
77
+
78
+ **Wait for response.**
79
+ </step>
80
+
81
+ <step name="confirm">
82
+ ## Step 3: Confirm
83
+
84
+ Apply any user adjustments to the schema. Lock it for generation.
85
+
86
+ If user is satisfied, confirm:
87
+ "Schema locked. I'll generate the surface and migrate {count} items."
88
+ </step>
89
+
90
+ <step name="generate">
91
+ ## Step 4: Generate Artifacts
92
+
93
+ Same generation as surface-create Step 5:
94
+ - `.accel/momentum/data/{name}.json` — with migrated items (not empty)
95
+ - `.accel/momentum/hooks/{name}-hook.py` — from _template.py with appropriate grouping
96
+ - workspace.json surface registration
97
+ - settings.json hook entry
98
+
99
+ Include staleness detection with sensible defaults based on detected priority levels.
100
+ </step>
101
+
102
+ <step name="migrate">
103
+ ## Step 5: Migrate Content
104
+
105
+ Parse every item from the markdown into JSON entries:
106
+ - Map heading groups to priority/category fields
107
+ - Map bold labels to field values
108
+ - Preserve checklists as arrays of {text, done} objects
109
+ - Preserve dates in ISO format
110
+ - Preserve file paths as location fields
111
+ - Map done/closed/archived sections to the archived array
112
+
113
+ Report:
114
+ ```
115
+ Migration complete:
116
+ Items migrated: {count}
117
+ Archived items: {count}
118
+ Unmapped items: {count, if any — list them}
119
+ ```
120
+
121
+ If any items couldn't be auto-mapped, present them for manual resolution.
122
+ </step>
123
+
124
+ <step name="cleanup">
125
+ ## Step 6: Clean Up
126
+
127
+ 1. Check if the original file is @-referenced in CLAUDE.md
128
+ 2. If found, offer: "Remove @{file} from CLAUDE.md? The surface hook replaces it."
129
+ 3. Suggest: "Original file preserved at {path} for reference."
130
+
131
+ Do NOT delete the original markdown file — the user decides its fate.
132
+ </step>
133
+
134
+ </steps>
135
+
136
+ <verification>
137
+ After conversion:
138
+ - [ ] .accel/momentum/data/{name}.json exists with migrated items
139
+ - [ ] Item count matches source markdown
140
+ - [ ] .accel/momentum/hooks/{name}-hook.py exists and produces output
141
+ - [ ] workspace.json and settings.json updated
142
+ - [ ] Original markdown file is untouched
143
+ </verification>
@@ -0,0 +1,184 @@
1
+ <purpose>
2
+ Create a new data surface through guided conversation. Generates: JSON data file, injection hook, workspace.json registration, and settings.json hook entry. The user answers questions; Claude generates everything.
3
+ </purpose>
4
+
5
+ <user-story>
6
+ As an AI builder, I want to create custom data surfaces so Claude has structured, passive awareness of any domain I track — without manually wiring JSON files, hooks, and config.
7
+ </user-story>
8
+
9
+ <when-to-use>
10
+ - /momentum:surface create {name}
11
+ - "create a surface", "add a new surface", "I want to track X"
12
+ - User wants structured data with hook injection and MCP access
13
+ </when-to-use>
14
+
15
+ <context>
16
+ @.accel/momentum/hooks/_template.py
17
+ @.accel/momentum/workspace.json
18
+ </context>
19
+
20
+ <steps>
21
+
22
+ <step name="define" priority="first">
23
+ ## Step 1: Define
24
+
25
+ Extract surface name from args or ask: "What should this surface be called? (lowercase, no spaces)"
26
+
27
+ **Validate:**
28
+ 1. Name is lowercase, alphanumeric + hyphens only
29
+ 2. Not already registered in workspace.json surfaces section
30
+ 3. No reserved names: "active", "backlog", "psmm", "staging"
31
+
32
+ Ask: "What does this surface track? (one sentence)"
33
+ → This becomes the `description` in workspace.json.
34
+
35
+ **Wait for response before proceeding.**
36
+ </step>
37
+
38
+ <step name="schema">
39
+ ## Step 2: Schema
40
+
41
+ Ask: "What fields does each item need?"
42
+
43
+ Guide through these decisions (one at a time):
44
+
45
+ 1. **Required fields** — What must every item have?
46
+ - Default minimum: `["title"]`
47
+ - Common additions: status, priority, category, assignee, due_date
48
+
49
+ 2. **ID prefix** — Auto-suggest first 3 chars of name, uppercase.
50
+ - e.g., surface "clients" → prefix "CLI"
51
+ - User can override
52
+
53
+ 3. **Priority/status enums** — If the surface has priority or status fields:
54
+ - Ask: "What priority levels?" (e.g., high, medium, low)
55
+ - Ask: "What status values?" (e.g., active, pending, done)
56
+
57
+ 4. **Time rules** (optional) — If the surface benefits from review-by dates:
58
+ - Ask: "Should items have review-by deadlines? If so, how many days per priority level?"
59
+ - Default: none
60
+
61
+ Build the schema object from answers:
62
+ ```json
63
+ {
64
+ "id_prefix": "CLI",
65
+ "required_fields": ["title", "status"],
66
+ "priority_levels": ["high", "medium", "low"],
67
+ "status_values": ["active", "pending", "done"]
68
+ }
69
+ ```
70
+
71
+ **Wait for response before proceeding.**
72
+ </step>
73
+
74
+ <step name="injection">
75
+ ## Step 3: Injection
76
+
77
+ Ask: "How should items appear in Claude's context each prompt?"
78
+
79
+ Guide through:
80
+
81
+ 1. **Grouping** — How to organize items in the injection?
82
+ - By priority (default) | By status | By date | Flat (no grouping)
83
+
84
+ 2. **Summary format** — What fields to show per line?
85
+ - Default: `- [ID] Title (status)`
86
+ - Can add: priority tag, due date, custom field
87
+
88
+ 3. **Staleness thresholds** — Days before an item is flagged STALE per priority:
89
+ - Suggest defaults based on priority levels from Step 2
90
+ - e.g., high: 5d, medium: 10d, low: 30d
91
+ - User can adjust
92
+
93
+ 4. **Behavioral mode:**
94
+ - Silent (default) — passive awareness, respond only when asked
95
+ - Proactive — mention items unprompted (rare, use for critical surfaces)
96
+ - Threshold — stay silent unless deadline/staleness threshold crossed
97
+
98
+ **Wait for response before proceeding.**
99
+ </step>
100
+
101
+ <step name="tools">
102
+ ## Step 4: Tools (Informational)
103
+
104
+ Inform the user:
105
+
106
+ "All 7 Momentum MCP tools work automatically with your new surface:
107
+ - `momentum_list_surfaces` — see all surfaces
108
+ - `momentum_get_surface("{name}")` — read all items
109
+ - `momentum_get_item("{name}", id)` — get specific item
110
+ - `momentum_add_item("{name}", data)` — add new item (validates required fields, auto-generates ID)
111
+ - `momentum_update_item("{name}", id, data)` — update fields (resets staleness clock)
112
+ - `momentum_archive_item("{name}", id)` — move to archived
113
+ - `momentum_search(query, "{name}")` — search items
114
+
115
+ No configuration needed — Momentum MCP auto-discovers surfaces from workspace.json."
116
+
117
+ **Continue to generation.**
118
+ </step>
119
+
120
+ <step name="generate" priority="critical">
121
+ ## Step 5: Generate
122
+
123
+ Create all artifacts:
124
+
125
+ **1. Data file:** `.accel/momentum/data/{name}.json`
126
+ ```json
127
+ {
128
+ "surface": "{name}",
129
+ "version": 1,
130
+ "last_modified": "{timestamp}",
131
+ "items": [],
132
+ "archived": []
133
+ }
134
+ ```
135
+
136
+ **2. Hook file:** `.accel/momentum/hooks/{name}-hook.py`
137
+ - Read `.accel/momentum/hooks/_template.py` as the starting point
138
+ - Customize SURFACE_NAME, grouping logic, summary format, staleness thresholds, behavioral directive
139
+ - Use the injection decisions from Step 3
140
+ - Include `from datetime import date` for staleness calculation
141
+ - Follow the _template.py contract exactly
142
+
143
+ **3. Registration:** Add to `.accel/momentum/workspace.json` surfaces section:
144
+ ```json
145
+ "{name}": {
146
+ "file": "data/{name}.json",
147
+ "description": "{description from Step 1}",
148
+ "hook": true,
149
+ "silent": true,
150
+ "schema": { ...schema from Step 2... }
151
+ }
152
+ ```
153
+
154
+ **4. Hook registration:** Add to `.claude/settings.json` UserPromptSubmit hooks:
155
+ ```json
156
+ {
157
+ "type": "command",
158
+ "command": "python3 {absolute_workspace_path}/.accel/momentum/hooks/{name}-hook.py"
159
+ }
160
+ ```
161
+ Use absolute path resolved from workspace root.
162
+
163
+ **5. Report:**
164
+ ```
165
+ Surface "{name}" created:
166
+ Data: .accel/momentum/data/{name}.json (empty, ready for items)
167
+ Hook: .accel/momentum/hooks/{name}-hook.py (will inject next prompt)
168
+ Schema: {id_prefix}-NNN, {required_fields}
169
+ Tools: momentum_get_item("{name}", id), momentum_add_item("{name}", data), etc.
170
+
171
+ Add your first item: momentum_add_item("{name}", {title: "..."})
172
+ ```
173
+ </step>
174
+
175
+ </steps>
176
+
177
+ <verification>
178
+ After generation:
179
+ - [ ] .accel/momentum/data/{name}.json exists and is valid JSON
180
+ - [ ] .accel/momentum/hooks/{name}-hook.py exists and parses as valid Python
181
+ - [ ] workspace.json has the surface registration
182
+ - [ ] settings.json has the hook entry with absolute path
183
+ - [ ] Hook outputs correct XML when piped test input
184
+ </verification>
@@ -0,0 +1,42 @@
1
+ <purpose>
2
+ Display all registered data surfaces with item counts, hook status, and staleness summary.
3
+ </purpose>
4
+
5
+ <when-to-use>
6
+ - /momentum:surface list
7
+ - "what surfaces exist", "show surfaces", "list surfaces"
8
+ </when-to-use>
9
+
10
+ <steps>
11
+
12
+ <step name="read_and_display">
13
+ ## Show Surfaces
14
+
15
+ 1. Call `momentum_list_surfaces` to get all registered surfaces with item counts
16
+ 2. For each surface, read the data file to count stale items (items with no `updated` field or `updated` older than threshold)
17
+
18
+ Display as:
19
+
20
+ ```
21
+ Data Surfaces
22
+ ═══════════════════════════════════════
23
+
24
+ | Surface | Items | Hook | Description |
25
+ |---------|-------|------|-------------|
26
+ | active | 12 | ✓ | Active work items, projects, and tasks |
27
+ | backlog | 8 | ✓ | Future work queue, ideas, and deferred tasks |
28
+
29
+ Total: {count} surfaces, {total_items} items
30
+
31
+ Create a new surface: /momentum:surface create {name}
32
+ Convert a file: /momentum:surface convert {path}
33
+ ```
34
+
35
+ If no surfaces registered:
36
+ ```
37
+ No data surfaces registered.
38
+ Run /momentum:surface create {name} to create your first surface.
39
+ ```
40
+ </step>
41
+
42
+ </steps>