@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,118 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Vector MCP — Consolidated Tool Server
4
+ * Context Augmentation & Reinforcement Layer
5
+ *
6
+ * Consolidates: DRL-engine + decision-logger + Staging + vector-json (v2)
7
+ * 4 tool groups, all optional, activated by Vector rules.
8
+ *
9
+ * When installed to .vector/vector-mcp/, workspace path resolves to parent of .vector/
10
+ */
11
+
12
+ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
13
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
14
+ import { CallToolRequestSchema, ListToolsRequestSchema } from "@modelcontextprotocol/sdk/types.js";
15
+ import path from 'path';
16
+ import { fileURLToPath } from 'url';
17
+
18
+ // Tool group imports
19
+ import { TOOLS as domainTools, handleTool as handleDomain } from './tools/domains.js';
20
+ import { TOOLS as decisionTools, handleTool as handleDecision } from './tools/decisions.js';
21
+ import { TOOLS as stagingTools, handleTool as handleStaging } from './tools/staging.js';
22
+ import { TOOLS as vectorJsonTools, handleTool as handleVectorJson } from './tools/vector-json.js';
23
+
24
+ // ============================================================
25
+ // CONFIGURATION
26
+ // ============================================================
27
+
28
+ // Resolve workspace from this file's location:
29
+ // Installed at .vector/vector-mcp/index.js → workspace is ../..
30
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
31
+ const WORKSPACE_PATH = path.resolve(__dirname, '../..');
32
+
33
+ function debugLog(...args) {
34
+ console.error('[Vector]', new Date().toISOString(), ...args);
35
+ }
36
+
37
+ // ============================================================
38
+ // TOOL REGISTRY
39
+ // ============================================================
40
+
41
+ const ALL_TOOLS = [...domainTools, ...decisionTools, ...stagingTools, ...vectorJsonTools];
42
+
43
+ // Build handler lookup: tool name → handler function
44
+ const TOOL_HANDLERS = {};
45
+ for (const tool of domainTools) TOOL_HANDLERS[tool.name] = handleDomain;
46
+ for (const tool of decisionTools) TOOL_HANDLERS[tool.name] = handleDecision;
47
+ for (const tool of stagingTools) TOOL_HANDLERS[tool.name] = handleStaging;
48
+ for (const tool of vectorJsonTools) TOOL_HANDLERS[tool.name] = handleVectorJson;
49
+
50
+ // ============================================================
51
+ // MCP SERVER
52
+ // ============================================================
53
+
54
+ const server = new Server({
55
+ name: "vector-mcp",
56
+ version: "2.0.0",
57
+ }, {
58
+ capabilities: {
59
+ tools: {},
60
+ },
61
+ });
62
+
63
+ debugLog('Vector MCP Server initialized');
64
+ debugLog('Workspace:', WORKSPACE_PATH);
65
+ debugLog('Tool groups: domains (%d), decisions (%d), staging (%d), vector-json (%d)',
66
+ domainTools.length, decisionTools.length, stagingTools.length, vectorJsonTools.length);
67
+ debugLog('Total tools:', ALL_TOOLS.length);
68
+
69
+ server.setRequestHandler(ListToolsRequestSchema, async () => {
70
+ debugLog('List tools request');
71
+ return { tools: ALL_TOOLS };
72
+ });
73
+
74
+ server.setRequestHandler(CallToolRequestSchema, async (request) => {
75
+ const { name, arguments: args } = request.params;
76
+ debugLog('Call tool:', name);
77
+
78
+ try {
79
+ const handler = TOOL_HANDLERS[name];
80
+ if (!handler) {
81
+ throw new Error(`Unknown tool: ${name}`);
82
+ }
83
+
84
+ const result = await handler(name, args || {}, WORKSPACE_PATH);
85
+
86
+ if (result === null) {
87
+ throw new Error(`Tool ${name} returned null — handler mismatch`);
88
+ }
89
+
90
+ return {
91
+ content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
92
+ isError: false,
93
+ };
94
+ } catch (error) {
95
+ debugLog('Error:', error.message);
96
+ return {
97
+ content: [{ type: "text", text: `Error: ${error.message}` }],
98
+ isError: true,
99
+ };
100
+ }
101
+ });
102
+
103
+ // ============================================================
104
+ // RUN
105
+ // ============================================================
106
+
107
+ async function runServer() {
108
+ const transport = new StdioServerTransport();
109
+ await server.connect(transport);
110
+ console.error("Vector MCP Server running on stdio");
111
+ }
112
+
113
+ try {
114
+ await runServer();
115
+ } catch (error) {
116
+ console.error("Fatal error:", error);
117
+ process.exit(1);
118
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "vector-mcp",
3
+ "version": "2.0.0",
4
+ "description": "Vector MCP Server - Domains, Decisions, PSMM, Staging, Vector JSON CRUD",
5
+ "type": "module",
6
+ "main": "index.js",
7
+ "dependencies": {
8
+ "@modelcontextprotocol/sdk": "^1.0.0"
9
+ }
10
+ }
@@ -0,0 +1,269 @@
1
+ /**
2
+ * Vector Decisions — Per-domain decision logging/recall tools
3
+ * Reads/writes .vector/decisions/{domain}.json files
4
+ */
5
+
6
+ import { readFileSync, writeFileSync, existsSync, readdirSync } from 'fs';
7
+ import { join } from 'path';
8
+
9
+ function debugLog(...args) {
10
+ console.error('[Vector:decisions]', new Date().toISOString(), ...args);
11
+ }
12
+
13
+ function getDecisionsDir(workspacePath) {
14
+ return join(workspacePath, '.vector', 'decisions');
15
+ }
16
+
17
+ function getDomainFilePath(workspacePath, domain) {
18
+ return join(getDecisionsDir(workspacePath), `${domain.toLowerCase()}.json`);
19
+ }
20
+
21
+ function readDomainDecisions(workspacePath, domain) {
22
+ const filepath = getDomainFilePath(workspacePath, domain);
23
+ if (!existsSync(filepath)) {
24
+ return { domain: domain.toLowerCase(), decisions: [], archived: [] };
25
+ }
26
+ try {
27
+ return JSON.parse(readFileSync(filepath, 'utf-8'));
28
+ } catch (error) {
29
+ debugLog('Error reading domain decisions:', error.message);
30
+ return { domain: domain.toLowerCase(), decisions: [], archived: [] };
31
+ }
32
+ }
33
+
34
+ function writeDomainDecisions(workspacePath, domain, data) {
35
+ const filepath = getDomainFilePath(workspacePath, domain);
36
+ writeFileSync(filepath, JSON.stringify(data, null, 2), 'utf-8');
37
+ }
38
+
39
+ function listAllDomainFiles(workspacePath) {
40
+ const dir = getDecisionsDir(workspacePath);
41
+ if (!existsSync(dir)) return [];
42
+ return readdirSync(dir)
43
+ .filter(f => f.endsWith('.json'))
44
+ .map(f => f.replace('.json', ''));
45
+ }
46
+
47
+ function nextDecisionId(domain, decisions) {
48
+ const prefix = `${domain.toLowerCase()}-`;
49
+ const nums = decisions
50
+ .map(d => {
51
+ const m = d.id.match(new RegExp(`^${prefix}(\\d+)$`));
52
+ return m ? parseInt(m[1], 10) : 0;
53
+ })
54
+ .filter(n => n > 0);
55
+ const max = nums.length > 0 ? Math.max(...nums) : 0;
56
+ return `${prefix}${String(max + 1).padStart(3, '0')}`;
57
+ }
58
+
59
+ // ============================================================
60
+ // TOOL DEFINITIONS
61
+ // ============================================================
62
+
63
+ export const TOOLS = [
64
+ {
65
+ name: "vector_log_decision",
66
+ description: "Log a decision to a Vector domain. Auto-creates domain file if new.",
67
+ inputSchema: {
68
+ type: "object",
69
+ properties: {
70
+ domain: { type: "string", description: "Domain name (e.g., 'casegate', 'development', 'global')" },
71
+ decision: { type: "string", description: "The decision made" },
72
+ rationale: { type: "string", description: "Why this decision was made" },
73
+ recall: { type: "string", description: "Comma-separated keywords for when to recall this decision" }
74
+ },
75
+ required: ["domain", "decision", "rationale", "recall"]
76
+ }
77
+ },
78
+ {
79
+ name: "vector_list_decision_domains",
80
+ description: "List all decision domain files with counts.",
81
+ inputSchema: { type: "object", properties: {} }
82
+ },
83
+ {
84
+ name: "vector_get_decisions",
85
+ description: "Get all decisions for a domain.",
86
+ inputSchema: {
87
+ type: "object",
88
+ properties: {
89
+ domain: { type: "string", description: "Domain name (e.g., 'casegate', 'development')" }
90
+ },
91
+ required: ["domain"]
92
+ }
93
+ },
94
+ {
95
+ name: "vector_search_decisions",
96
+ description: "Search decisions by keyword across all domain files.",
97
+ inputSchema: {
98
+ type: "object",
99
+ properties: {
100
+ keyword: { type: "string", description: "Keyword to search for" }
101
+ },
102
+ required: ["keyword"]
103
+ }
104
+ },
105
+ {
106
+ name: "vector_archive_decision",
107
+ description: "Move a decision to the archived array in its domain file.",
108
+ inputSchema: {
109
+ type: "object",
110
+ properties: {
111
+ id: { type: "string", description: "Decision ID (e.g., 'casegate-003')" }
112
+ },
113
+ required: ["id"]
114
+ }
115
+ }
116
+ ];
117
+
118
+ // ============================================================
119
+ // TOOL HANDLERS
120
+ // ============================================================
121
+
122
+ export async function handleTool(name, args, workspacePath) {
123
+ switch (name) {
124
+ case "vector_log_decision": return logDecision(args, workspacePath);
125
+ case "vector_list_decision_domains": return listDecisionDomains(workspacePath);
126
+ case "vector_get_decisions": return getDecisions(args, workspacePath);
127
+ case "vector_search_decisions": return searchDecisions(args, workspacePath);
128
+ case "vector_archive_decision": return archiveDecision(args, workspacePath);
129
+ default: return null;
130
+ }
131
+ }
132
+
133
+ async function logDecision(args, workspacePath) {
134
+ const { domain, decision, rationale, recall } = args;
135
+ const domainLower = domain.toLowerCase();
136
+ debugLog('Logging decision to domain:', domainLower);
137
+
138
+ const data = readDomainDecisions(workspacePath, domainLower);
139
+ const id = nextDecisionId(domainLower, data.decisions);
140
+ const date = new Date().toISOString().split('T')[0];
141
+ const recallList = recall.split(',').map(k => k.trim()).filter(Boolean);
142
+
143
+ const entry = {
144
+ id,
145
+ decision,
146
+ rationale,
147
+ date,
148
+ source: "manual",
149
+ recall: recallList
150
+ };
151
+
152
+ data.decisions.push(entry);
153
+ data.domain = domainLower;
154
+ if (!data.archived) data.archived = [];
155
+ writeDomainDecisions(workspacePath, domainLower, data);
156
+
157
+ return {
158
+ success: true,
159
+ id,
160
+ domain: domainLower,
161
+ message: `Logged: ${id} to ${domainLower}`
162
+ };
163
+ }
164
+
165
+ async function listDecisionDomains(workspacePath) {
166
+ debugLog('Listing decision domains');
167
+ const domainNames = listAllDomainFiles(workspacePath);
168
+ const domains = [];
169
+
170
+ for (const name of domainNames) {
171
+ const data = readDomainDecisions(workspacePath, name);
172
+ domains.push({
173
+ domain: name,
174
+ active_count: data.decisions.length,
175
+ archived_count: (data.archived || []).length
176
+ });
177
+ }
178
+
179
+ const totalActive = domains.reduce((sum, d) => sum + d.active_count, 0);
180
+ const totalArchived = domains.reduce((sum, d) => sum + d.archived_count, 0);
181
+
182
+ return {
183
+ success: true,
184
+ domain_count: domains.length,
185
+ total_active: totalActive,
186
+ total_archived: totalArchived,
187
+ domains
188
+ };
189
+ }
190
+
191
+ async function getDecisions(args, workspacePath) {
192
+ const { domain } = args;
193
+ const domainLower = domain.toLowerCase();
194
+ debugLog('Getting decisions for:', domainLower);
195
+
196
+ const filepath = getDomainFilePath(workspacePath, domainLower);
197
+ if (!existsSync(filepath)) {
198
+ return { error: `No decisions file for domain: ${domainLower}` };
199
+ }
200
+
201
+ const data = readDomainDecisions(workspacePath, domainLower);
202
+
203
+ return {
204
+ domain: domainLower,
205
+ count: data.decisions.length,
206
+ archived_count: (data.archived || []).length,
207
+ decisions: data.decisions,
208
+ archived: data.archived || []
209
+ };
210
+ }
211
+
212
+ async function searchDecisions(args, workspacePath) {
213
+ const { keyword } = args;
214
+ debugLog('Searching for:', keyword);
215
+
216
+ const lowerKeyword = keyword.toLowerCase();
217
+ const domainNames = listAllDomainFiles(workspacePath);
218
+ const results = [];
219
+
220
+ for (const name of domainNames) {
221
+ const data = readDomainDecisions(workspacePath, name);
222
+ for (const d of data.decisions) {
223
+ const searchText = [
224
+ d.decision,
225
+ d.rationale,
226
+ ...(d.recall || [])
227
+ ].join(' ').toLowerCase();
228
+
229
+ if (searchText.includes(lowerKeyword)) {
230
+ results.push({ ...d, domain: name });
231
+ }
232
+ }
233
+ }
234
+
235
+ return { keyword, count: results.length, decisions: results };
236
+ }
237
+
238
+ async function archiveDecision(args, workspacePath) {
239
+ const { id } = args;
240
+ debugLog('Archiving:', id);
241
+
242
+ // Extract domain from ID (e.g., 'casegate-003' -> 'casegate')
243
+ const dashIdx = id.lastIndexOf('-');
244
+ if (dashIdx === -1) {
245
+ return { error: `Invalid decision ID format: ${id}. Expected: {domain}-{number}` };
246
+ }
247
+ const domainLower = id.slice(0, dashIdx);
248
+
249
+ const filepath = getDomainFilePath(workspacePath, domainLower);
250
+ if (!existsSync(filepath)) {
251
+ return { error: `No decisions file for domain: ${domainLower}` };
252
+ }
253
+
254
+ const data = readDomainDecisions(workspacePath, domainLower);
255
+ const idx = data.decisions.findIndex(d => d.id === id);
256
+
257
+ if (idx === -1) {
258
+ return { error: `Decision not found: ${id}` };
259
+ }
260
+
261
+ const decision = data.decisions.splice(idx, 1)[0];
262
+ decision.archived_date = new Date().toISOString().split('T')[0];
263
+
264
+ if (!data.archived) data.archived = [];
265
+ data.archived.push(decision);
266
+ writeDomainDecisions(workspacePath, domainLower, data);
267
+
268
+ return { success: true, message: `Archived: ${id}` };
269
+ }