vgxness 1.20.4 → 1.20.6

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 (375) hide show
  1. package/dist/adapters/claude/agent-renderer.js +82 -0
  2. package/dist/{mcp → adapters/claude/install}/claude-code-agent-config.js +64 -9
  3. package/dist/{mcp → adapters/claude/install}/claude-code-config.js +28 -6
  4. package/dist/{mcp → adapters/claude/install}/claude-code-project-memory.js +35 -5
  5. package/dist/{mcp → adapters/claude/install}/claude-code-scope.js +12 -3
  6. package/dist/{mcp → adapters/claude/install}/claude-code-user-config.js +26 -5
  7. package/dist/{mcp → adapters/claude/install}/claude-code-user-memory.js +47 -7
  8. package/dist/{mcp → adapters/claude/install}/client-install-claude-code-contract.js +45 -8
  9. package/dist/{mcp → adapters/claude/install}/client-install-claude-code.js +98 -14
  10. package/dist/adapters/json/agent-renderer.js +104 -0
  11. package/dist/adapters/opencode/agent-renderer.js +113 -0
  12. package/dist/{mcp → adapters/opencode/install}/client-install-opencode-contract.js +2 -2
  13. package/dist/{mcp → adapters/opencode/install}/client-install-opencode.js +1 -1
  14. package/dist/{mcp → adapters/opencode/install}/opencode-default-agent-config.js +2 -2
  15. package/dist/{mcp → adapters/opencode/install}/opencode-handoff-preview.js +60 -7
  16. package/dist/{mcp → adapters/opencode/install}/opencode-visibility.js +1 -1
  17. package/dist/adapters/provider-renderer.js +6 -0
  18. package/dist/agents/agent-activation-service.js +1 -263
  19. package/dist/agents/agent-lookup-contexts.js +1 -28
  20. package/dist/agents/agent-registry-service.js +1 -81
  21. package/dist/agents/agent-resolver.js +1 -287
  22. package/dist/agents/agent-seed-service.js +1 -157
  23. package/dist/agents/agent-seed-upgrade-service.js +1 -231
  24. package/dist/agents/agent-selector-resolver.js +1 -28
  25. package/dist/agents/boot-upgrade.js +1 -59
  26. package/dist/agents/canonical-agent-manifest.js +1 -245
  27. package/dist/agents/canonical-agent-projection.js +1 -236
  28. package/dist/agents/manager-profile-overlay-service.js +1 -60
  29. package/dist/agents/profile-model-routing.js +1 -30
  30. package/dist/agents/renderers/claude-renderer.js +1 -82
  31. package/dist/agents/renderers/index.js +1 -14
  32. package/dist/agents/renderers/json-renderer.js +1 -104
  33. package/dist/agents/renderers/opencode-renderer.js +1 -113
  34. package/dist/agents/renderers/provider-adapter.js +1 -6
  35. package/dist/agents/repositories/agent-seed-history.js +1 -128
  36. package/dist/agents/repositories/agents.js +1 -200
  37. package/dist/agents/repositories/manager-profile-overlays.js +1 -90
  38. package/dist/agents/schema.js +1 -1
  39. package/dist/application/agents/agent-activation-service.js +261 -0
  40. package/dist/application/agents/agent-lookup-contexts.js +28 -0
  41. package/dist/application/agents/agent-registry-service.js +81 -0
  42. package/dist/application/agents/agent-resolver.js +287 -0
  43. package/dist/application/agents/agent-seed-service.js +157 -0
  44. package/dist/application/agents/agent-seed-upgrade-service.js +231 -0
  45. package/dist/application/agents/agent-selector-resolver.js +28 -0
  46. package/dist/application/agents/boot-upgrade.js +59 -0
  47. package/dist/application/agents/canonical-agent-projection.js +236 -0
  48. package/dist/application/agents/manager-profile-overlay-service.js +68 -0
  49. package/dist/application/agents/profile-model-routing.js +30 -0
  50. package/dist/application/agents/renderers/claude-renderer.js +1 -0
  51. package/dist/application/agents/renderers/index.js +14 -0
  52. package/dist/application/agents/renderers/json-renderer.js +1 -0
  53. package/dist/application/agents/renderers/opencode-renderer.js +1 -0
  54. package/dist/application/agents/renderers/provider-adapter.js +1 -0
  55. package/dist/application/memory/active-work-preview.js +75 -0
  56. package/dist/application/memory/agent-memory-capture-service.js +498 -0
  57. package/dist/application/memory/import/dry-run-planner.js +58 -0
  58. package/dist/application/memory/import/index.js +3 -0
  59. package/dist/application/memory/import/observation-writer.js +226 -0
  60. package/dist/application/memory/import/package.js +179 -0
  61. package/dist/application/memory/memory-service.js +202 -0
  62. package/dist/application/memory/search.js +11 -0
  63. package/dist/{mcp → application/provider-setup}/provider-change-plan.js +74 -13
  64. package/dist/{mcp → application/provider-setup}/provider-doctor.js +201 -31
  65. package/dist/{mcp → application/provider-setup}/provider-health-types.js +1 -1
  66. package/dist/{mcp → application/provider-setup}/provider-status.js +170 -33
  67. package/dist/application/runs/execution-planning.js +180 -0
  68. package/dist/application/runs/operation-execution.js +1 -0
  69. package/dist/application/runs/operation-retry.js +129 -0
  70. package/dist/application/runs/resume-after-approval-result.js +88 -0
  71. package/dist/application/runs/run-insights.js +270 -0
  72. package/dist/application/runs/run-service.js +1480 -0
  73. package/dist/application/runs/run-snapshot-export-service.js +31 -0
  74. package/dist/application/runs/sandbox-process-execution.js +244 -0
  75. package/dist/application/runs/sandbox-worktree-planning.js +59 -0
  76. package/dist/application/runs/task-scoped-command-grant-service.js +224 -0
  77. package/dist/application/sdd/artifact-portability-service.js +137 -0
  78. package/dist/application/sdd/cockpit-read-model.js +195 -0
  79. package/dist/application/sdd/sdd-continuation-plan.js +265 -0
  80. package/dist/application/sdd/sdd-workflow-service.js +892 -0
  81. package/dist/application/skills/boot-seed.js +42 -0
  82. package/dist/application/skills/personal-skills.js +41 -0
  83. package/dist/application/skills/skill-export-service.js +34 -0
  84. package/dist/application/skills/skill-index-service.js +126 -0
  85. package/dist/application/skills/skill-payload.js +186 -0
  86. package/dist/application/skills/skill-registry-service.js +648 -0
  87. package/dist/application/skills/skill-resolver.js +368 -0
  88. package/dist/application/skills/skill-seed-service.js +242 -0
  89. package/dist/application/skills/skill-status-service.js +147 -0
  90. package/dist/cli/bun-bin.js +0 -0
  91. package/dist/cli/cli-flags.js +1 -387
  92. package/dist/cli/cli-help.js +1 -173
  93. package/dist/cli/cli-helpers.js +1 -77
  94. package/dist/cli/cli-types.js +1 -1
  95. package/dist/cli/commands/agent-skill-dispatcher.js +1 -700
  96. package/dist/cli/commands/index.js +1 -9
  97. package/dist/cli/commands/interactive-entrypoint-dispatcher.js +1 -14
  98. package/dist/cli/commands/mcp-dispatcher.js +1 -232
  99. package/dist/cli/commands/memory-sdd-dispatcher.js +1 -367
  100. package/dist/cli/commands/run-permission-dispatcher.js +1 -455
  101. package/dist/cli/commands/setup-dispatcher.js +1 -496
  102. package/dist/cli/commands/status-dispatcher.js +1 -130
  103. package/dist/cli/commands/verification-dispatcher.js +1 -47
  104. package/dist/cli/commands/workflow-dispatcher.js +1 -566
  105. package/dist/cli/dispatcher.js +1 -247
  106. package/dist/cli/doctor-renderer.js +1 -26
  107. package/dist/cli/home-tui-app.js +1 -411
  108. package/dist/cli/home-tui-controller.js +1 -314
  109. package/dist/cli/mcp-start-path.js +1 -21
  110. package/dist/cli/product-resume-renderer.js +1 -32
  111. package/dist/cli/product-status-renderer.js +1 -81
  112. package/dist/cli/sdd-renderer.js +1 -247
  113. package/dist/cli/setup-plan-renderer.js +1 -79
  114. package/dist/cli/setup-status-renderer.js +1 -50
  115. package/dist/cli/setup-tui-app.js +1 -130
  116. package/dist/cli/setup-tui-controller.js +1 -89
  117. package/dist/cli/tui/focus-reducer.js +1 -0
  118. package/dist/cli/tui/focus-types.js +1 -0
  119. package/dist/cli/tui/ink/app-shell.js +1 -0
  120. package/dist/cli/tui/ink/components.js +1 -38
  121. package/dist/cli/tui/ink/help-overlay.js +1 -0
  122. package/dist/cli/tui/ink/state-components.js +1 -0
  123. package/dist/cli/tui/ink/theme.js +1 -36
  124. package/dist/cli/tui/key-intents.js +1 -0
  125. package/dist/cli/tui/keymap.js +1 -20
  126. package/dist/cli/tui/navigation.js +1 -10
  127. package/dist/cli/tui/screen-registry.js +1 -0
  128. package/dist/cli/tui/terminal-capabilities.js +1 -12
  129. package/dist/cli/tui/tui-types.js +1 -1
  130. package/dist/cli/tui/visual/badges.js +1 -19
  131. package/dist/cli/tui/visual/footer.js +1 -27
  132. package/dist/cli/tui/visual/index.js +1 -3
  133. package/dist/cli/tui/visual/viewport.js +1 -11
  134. package/dist/cli/tui-render-helpers.js +1 -200
  135. package/dist/cli/verification-plan-renderer.js +1 -25
  136. package/dist/cli/verification-report-renderer.js +1 -19
  137. package/dist/domain/agents/canonical-agent-manifest.js +355 -0
  138. package/dist/domain/agents/schema.js +1 -0
  139. package/dist/domain/memory/active-work-topics.js +64 -0
  140. package/dist/domain/memory/memory-capture-schema.js +1 -0
  141. package/dist/domain/memory/schema.js +1 -0
  142. package/dist/domain/runs/schema.js +5 -0
  143. package/dist/domain/sdd/cockpit-types.js +1 -0
  144. package/dist/domain/sdd/schema.js +111 -0
  145. package/dist/domain/skills/schema.js +1 -0
  146. package/dist/governance/risk-classifier.js +2 -0
  147. package/dist/interfaces/cli/bun-bin.js +46 -0
  148. package/dist/interfaces/cli/cli-flags.js +391 -0
  149. package/dist/interfaces/cli/cli-help.js +173 -0
  150. package/dist/interfaces/cli/cli-helpers.js +77 -0
  151. package/dist/interfaces/cli/cli-types.js +1 -0
  152. package/dist/interfaces/cli/commands/agent-skill-dispatcher.js +700 -0
  153. package/dist/interfaces/cli/commands/index.js +9 -0
  154. package/dist/interfaces/cli/commands/interactive-entrypoint-dispatcher.js +14 -0
  155. package/dist/interfaces/cli/commands/mcp-dispatcher.js +252 -0
  156. package/dist/interfaces/cli/commands/memory-sdd-dispatcher.js +367 -0
  157. package/dist/interfaces/cli/commands/run-permission-dispatcher.js +460 -0
  158. package/dist/interfaces/cli/commands/setup-dispatcher.js +496 -0
  159. package/dist/interfaces/cli/commands/status-dispatcher.js +130 -0
  160. package/dist/interfaces/cli/commands/verification-dispatcher.js +47 -0
  161. package/dist/interfaces/cli/commands/workflow-dispatcher.js +566 -0
  162. package/dist/interfaces/cli/dispatcher.js +247 -0
  163. package/dist/interfaces/cli/doctor-renderer.js +26 -0
  164. package/dist/interfaces/cli/home-tui-app.js +462 -0
  165. package/dist/interfaces/cli/home-tui-controller.js +341 -0
  166. package/dist/interfaces/cli/index.js +27 -0
  167. package/dist/interfaces/cli/mcp-start-path.js +21 -0
  168. package/dist/interfaces/cli/product-resume-renderer.js +32 -0
  169. package/dist/interfaces/cli/product-status-renderer.js +81 -0
  170. package/dist/interfaces/cli/sdd-renderer.js +247 -0
  171. package/dist/interfaces/cli/setup-plan-renderer.js +79 -0
  172. package/dist/interfaces/cli/setup-status-renderer.js +50 -0
  173. package/dist/interfaces/cli/setup-tui-app.js +135 -0
  174. package/dist/interfaces/cli/setup-tui-controller.js +89 -0
  175. package/dist/interfaces/cli/tui/focus-reducer.js +60 -0
  176. package/dist/interfaces/cli/tui/focus-types.js +10 -0
  177. package/dist/interfaces/cli/tui/ink/app-shell.js +16 -0
  178. package/dist/interfaces/cli/tui/ink/components.js +38 -0
  179. package/dist/interfaces/cli/tui/ink/help-overlay.js +6 -0
  180. package/dist/interfaces/cli/tui/ink/state-components.js +22 -0
  181. package/dist/interfaces/cli/tui/ink/theme.js +36 -0
  182. package/dist/interfaces/cli/tui/key-intents.js +33 -0
  183. package/dist/interfaces/cli/tui/keymap.js +20 -0
  184. package/dist/interfaces/cli/tui/navigation.js +10 -0
  185. package/dist/interfaces/cli/tui/screen-registry.js +43 -0
  186. package/dist/interfaces/cli/tui/terminal-capabilities.js +12 -0
  187. package/dist/interfaces/cli/tui/tui-types.js +1 -0
  188. package/dist/interfaces/cli/tui/visual/badges.js +19 -0
  189. package/dist/interfaces/cli/tui/visual/footer.js +27 -0
  190. package/dist/interfaces/cli/tui/visual/index.js +3 -0
  191. package/dist/interfaces/cli/tui/visual/viewport.js +11 -0
  192. package/dist/interfaces/cli/tui-render-helpers.js +200 -0
  193. package/dist/interfaces/cli/verification-plan-renderer.js +25 -0
  194. package/dist/interfaces/cli/verification-report-renderer.js +19 -0
  195. package/dist/interfaces/mcp/contracts/agents.js +1 -0
  196. package/dist/interfaces/mcp/contracts/context.js +1 -0
  197. package/dist/interfaces/mcp/contracts/governance.js +1 -0
  198. package/dist/interfaces/mcp/contracts/index.js +1 -0
  199. package/dist/interfaces/mcp/contracts/memory.js +1 -0
  200. package/dist/interfaces/mcp/contracts/providers.js +1 -0
  201. package/dist/interfaces/mcp/contracts/runs.js +1 -0
  202. package/dist/interfaces/mcp/contracts/sdd.js +1 -0
  203. package/dist/interfaces/mcp/contracts/sessions.js +1 -0
  204. package/dist/interfaces/mcp/contracts/skills.js +1 -0
  205. package/dist/interfaces/mcp/contracts/verification.js +1 -0
  206. package/dist/interfaces/mcp/control-plane/handlers/agents.js +38 -0
  207. package/dist/interfaces/mcp/control-plane/handlers/context.js +12 -0
  208. package/dist/interfaces/mcp/control-plane/handlers/memory.js +95 -0
  209. package/dist/interfaces/mcp/control-plane/handlers/providers.js +19 -0
  210. package/dist/interfaces/mcp/control-plane/handlers/runs.js +134 -0
  211. package/dist/interfaces/mcp/control-plane/handlers/sdd.js +225 -0
  212. package/dist/interfaces/mcp/control-plane/handlers/sessions.js +39 -0
  213. package/dist/interfaces/mcp/control-plane/handlers/skills.js +82 -0
  214. package/dist/interfaces/mcp/control-plane/handlers/verification.js +11 -0
  215. package/dist/interfaces/mcp/control-plane/types.js +1 -0
  216. package/dist/interfaces/mcp/control-plane.js +235 -0
  217. package/dist/interfaces/mcp/schema.js +174 -0
  218. package/dist/interfaces/mcp/schemas/common.js +121 -0
  219. package/dist/interfaces/mcp/schemas/inputs/agents.js +69 -0
  220. package/dist/interfaces/mcp/schemas/inputs/context.js +32 -0
  221. package/dist/interfaces/mcp/schemas/inputs/governance.js +23 -0
  222. package/dist/interfaces/mcp/schemas/inputs/index.js +10 -0
  223. package/dist/interfaces/mcp/schemas/inputs/memory.js +50 -0
  224. package/dist/interfaces/mcp/schemas/inputs/providers.js +35 -0
  225. package/dist/interfaces/mcp/schemas/inputs/runs.js +146 -0
  226. package/dist/interfaces/mcp/schemas/inputs/sdd.js +102 -0
  227. package/dist/interfaces/mcp/schemas/inputs/sessions.js +32 -0
  228. package/dist/interfaces/mcp/schemas/inputs/skills.js +231 -0
  229. package/dist/interfaces/mcp/schemas/inputs/verification.js +9 -0
  230. package/dist/interfaces/mcp/schemas/outputs/index.js +2 -0
  231. package/dist/interfaces/mcp/schemas/outputs/providers.js +28 -0
  232. package/dist/interfaces/mcp/schemas/outputs/sdd.js +166 -0
  233. package/dist/interfaces/mcp/stdio-server.js +116 -0
  234. package/dist/interfaces/mcp/validation/agents.js +189 -0
  235. package/dist/interfaces/mcp/validation/common.js +415 -0
  236. package/dist/interfaces/mcp/validation/governance.js +50 -0
  237. package/dist/interfaces/mcp/validation/memory.js +133 -0
  238. package/dist/interfaces/mcp/validation/providers.js +94 -0
  239. package/dist/interfaces/mcp/validation/runs.js +514 -0
  240. package/dist/interfaces/mcp/validation/sdd.js +247 -0
  241. package/dist/interfaces/mcp/validation/sessions.js +51 -0
  242. package/dist/interfaces/mcp/validation/skills.js +685 -0
  243. package/dist/interfaces/mcp/validation/verification.js +24 -0
  244. package/dist/interfaces/mcp/validation.js +149 -0
  245. package/dist/mcp/control-plane-snapshot-service.js +65 -2
  246. package/dist/mcp/control-plane.js +1 -646
  247. package/dist/mcp/doctor.js +1 -1
  248. package/dist/mcp/index.js +17 -17
  249. package/dist/mcp/schema.js +1 -1072
  250. package/dist/mcp/stdio-server.js +1 -116
  251. package/dist/mcp/validation.js +1 -2239
  252. package/dist/memory/active-work-preview.js +1 -75
  253. package/dist/memory/active-work-topics.js +1 -64
  254. package/dist/memory/agent-memory-capture-service.js +1 -497
  255. package/dist/memory/import/dry-run-planner.js +1 -58
  256. package/dist/memory/import/index.js +1 -3
  257. package/dist/memory/import/observation-writer.js +1 -226
  258. package/dist/memory/import/package.js +1 -179
  259. package/dist/memory/memory-capture-schema.js +1 -1
  260. package/dist/memory/memory-service.js +1 -201
  261. package/dist/memory/repositories/artifacts.js +1 -67
  262. package/dist/memory/repositories/observations.js +1 -217
  263. package/dist/memory/repositories/sessions.js +1 -125
  264. package/dist/memory/repositories/traces.js +1 -78
  265. package/dist/memory/schema.js +1 -1
  266. package/dist/memory/search.js +1 -11
  267. package/dist/memory/sqlite/database.js +1 -228
  268. package/dist/memory/storage-paths.js +1 -72
  269. package/dist/payload/context-budget-policy.js +10 -0
  270. package/dist/payload/context-budget-service.js +26 -0
  271. package/dist/payload/payload-diagnostics.js +50 -0
  272. package/dist/permissions/explicit-request-authorization.js +126 -0
  273. package/dist/permissions/policy-evaluator.js +54 -14
  274. package/dist/runs/execution-planning.js +1 -178
  275. package/dist/runs/operation-execution.js +1 -1
  276. package/dist/runs/operation-retry.js +1 -129
  277. package/dist/runs/repositories/runs.js +1 -676
  278. package/dist/runs/repositories/task-scoped-command-grants.js +1 -462
  279. package/dist/runs/resume-after-approval-result.js +1 -84
  280. package/dist/runs/run-insights.js +1 -270
  281. package/dist/runs/run-service.js +1 -1439
  282. package/dist/runs/run-snapshot-export-service.js +1 -31
  283. package/dist/runs/sandbox-process-execution.js +1 -240
  284. package/dist/runs/sandbox-worktree-planning.js +1 -59
  285. package/dist/runs/schema.js +1 -5
  286. package/dist/runs/task-scoped-command-grant-service.js +1 -216
  287. package/dist/sdd/artifact-portability-service.js +1 -137
  288. package/dist/sdd/cockpit-read-model.js +1 -195
  289. package/dist/sdd/cockpit-types.js +1 -1
  290. package/dist/sdd/schema.js +1 -111
  291. package/dist/sdd/sdd-continuation-plan.js +1 -265
  292. package/dist/sdd/sdd-workflow-service.js +1 -822
  293. package/dist/setup/providers/claude-setup-adapter.js +11 -4
  294. package/dist/setup/providers/opencode-setup-adapter.js +10 -7
  295. package/dist/setup/setup-plan.js +20 -7
  296. package/dist/skills/boot-seed.js +1 -42
  297. package/dist/skills/personal-skills.js +1 -41
  298. package/dist/skills/repositories/skill-evaluation-requests.js +1 -190
  299. package/dist/skills/repositories/skill-evaluation-scenarios.js +1 -305
  300. package/dist/skills/repositories/skill-improvement-proposals.js +1 -355
  301. package/dist/skills/repositories/skills.js +1 -1077
  302. package/dist/skills/schema.js +1 -1
  303. package/dist/skills/skill-export-service.js +1 -34
  304. package/dist/skills/skill-index-service.js +1 -126
  305. package/dist/skills/skill-payload.js +1 -186
  306. package/dist/skills/skill-registry-service.js +1 -644
  307. package/dist/skills/skill-resolver.js +1 -368
  308. package/dist/skills/skill-seed-service.js +1 -242
  309. package/dist/skills/skill-status-service.js +1 -147
  310. package/dist/storage/agents/repositories/agent-seed-history.js +128 -0
  311. package/dist/storage/agents/repositories/agents.js +200 -0
  312. package/dist/storage/agents/repositories/manager-profile-overlays.js +90 -0
  313. package/dist/storage/memory/repositories/artifacts.js +67 -0
  314. package/dist/storage/memory/repositories/observations.js +217 -0
  315. package/dist/storage/memory/repositories/sessions.js +125 -0
  316. package/dist/storage/memory/repositories/traces.js +78 -0
  317. package/dist/storage/memory/sqlite/database.js +228 -0
  318. package/dist/storage/memory/storage-paths.js +72 -0
  319. package/dist/storage/runs/repositories/runs.js +676 -0
  320. package/dist/storage/runs/repositories/task-scoped-command-grants.js +464 -0
  321. package/dist/storage/skills/repositories/skill-evaluation-requests.js +190 -0
  322. package/dist/storage/skills/repositories/skill-evaluation-scenarios.js +305 -0
  323. package/dist/storage/skills/repositories/skill-improvement-proposals.js +355 -0
  324. package/dist/storage/skills/repositories/skills.js +1084 -0
  325. package/docs/architecture.md +2 -2
  326. package/docs/glossary.md +1 -1
  327. package/docs/mcp.md +1 -1
  328. package/docs/module-boundaries.md +114 -0
  329. package/docs/prd.md +1 -1
  330. package/docs/project-health-audit-v1.10.x.md +1 -1
  331. package/docs/providers.md +2 -2
  332. package/docs/safety.md +3 -3
  333. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/apply-progress.md +122 -0
  334. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/archive-report.md +61 -0
  335. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/design.md +66 -0
  336. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/proposal.md +79 -0
  337. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/spec.md +67 -0
  338. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/tasks.md +63 -0
  339. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/verify-report.md +71 -0
  340. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/apply-progress.md +68 -0
  341. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/archive-report.md +61 -0
  342. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/design.md +43 -0
  343. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/proposal.md +61 -0
  344. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/spec.md +31 -0
  345. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/tasks.md +27 -0
  346. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/verify-report.md +58 -0
  347. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/apply-progress.md +65 -0
  348. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/archive-report.md +53 -0
  349. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/design.md +64 -0
  350. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/proposal.md +62 -0
  351. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/spec.md +51 -0
  352. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/tasks.md +50 -0
  353. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/verify-report.md +66 -0
  354. package/docs/storage.md +2 -2
  355. package/package.json +2 -2
  356. /package/dist/{mcp → adapters/claude/install}/claude-code-cli.js +0 -0
  357. /package/dist/{memory → storage/memory}/sqlite/migrations/001_initial.sql +0 -0
  358. /package/dist/{memory → storage/memory}/sqlite/migrations/002_observation_revisions.sql +0 -0
  359. /package/dist/{memory → storage/memory}/sqlite/migrations/003_agent_registry.sql +0 -0
  360. /package/dist/{memory → storage/memory}/sqlite/migrations/004_run_runtime.sql +0 -0
  361. /package/dist/{memory → storage/memory}/sqlite/migrations/005_run_approvals.sql +0 -0
  362. /package/dist/{memory → storage/memory}/sqlite/migrations/006_run_operation_attempts.sql +0 -0
  363. /package/dist/{memory → storage/memory}/sqlite/migrations/007_abandoned_operation_attempts.sql +0 -0
  364. /package/dist/{memory → storage/memory}/sqlite/migrations/008_run_execution_plan_events.sql +0 -0
  365. /package/dist/{memory → storage/memory}/sqlite/migrations/009_multiple_operation_attempts.sql +0 -0
  366. /package/dist/{memory → storage/memory}/sqlite/migrations/010_skill_registry.sql +0 -0
  367. /package/dist/{memory → storage/memory}/sqlite/migrations/011_skill_usage_resolution_outcomes.sql +0 -0
  368. /package/dist/{memory → storage/memory}/sqlite/migrations/012_skill_improvement_proposals.sql +0 -0
  369. /package/dist/{memory → storage/memory}/sqlite/migrations/013_skill_evaluation_scenarios.sql +0 -0
  370. /package/dist/{memory → storage/memory}/sqlite/migrations/014_manager_profile_overlays.sql +0 -0
  371. /package/dist/{memory → storage/memory}/sqlite/migrations/015_artifact_metadata.sql +0 -0
  372. /package/dist/{memory → storage/memory}/sqlite/migrations/016_agent_seed_history.sql +0 -0
  373. /package/dist/{memory → storage/memory}/sqlite/migrations/017_intent_signal_skill_targets.sql +0 -0
  374. /package/dist/{memory → storage/memory}/sqlite/migrations/018_skill_system_v2.sql +0 -0
  375. /package/dist/{memory → storage/memory}/sqlite/migrations/019_task_scoped_command_grants.sql +0 -0
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,235 @@
1
+ import { OpenCodeHandoffPreviewService } from '../../adapters/opencode/install/opencode-handoff-preview.js';
2
+ import { AgentActivationService } from '../../agents/agent-activation-service.js';
3
+ import { AgentRegistryService } from '../../agents/agent-registry-service.js';
4
+ import { ManagerProfileOverlayService } from '../../agents/manager-profile-overlay-service.js';
5
+ import { ManagerProfileOverlayRepository } from '../../agents/repositories/manager-profile-overlays.js';
6
+ import { ProviderChangePlanService } from '../../application/provider-setup/provider-change-plan.js';
7
+ import { ProviderDoctorService } from '../../application/provider-setup/provider-doctor.js';
8
+ import { ProviderStatusService } from '../../application/provider-setup/provider-status.js';
9
+ import { MemoryService } from '../../memory/memory-service.js';
10
+ import { openMemoryDatabase } from '../../memory/sqlite/database.js';
11
+ import { prepareMemoryDatabasePath, resolveMemoryDatabasePath } from '../../memory/storage-paths.js';
12
+ import { OpenCodeManagerPayloadService } from '../../providers/opencode/manager-payload.js';
13
+ import { RunService } from '../../runs/run-service.js';
14
+ import { SddWorkflowService } from '../../sdd/sdd-workflow-service.js';
15
+ import { runBootSkillSeed } from '../../skills/boot-seed.js';
16
+ import { SkillIndexService } from '../../skills/skill-index-service.js';
17
+ import { SkillRegistryService } from '../../skills/skill-registry-service.js';
18
+ import { SkillStatusService } from '../../skills/skill-status-service.js';
19
+ import { VerificationPlanService } from '../../verification/index.js';
20
+ import { agentActivateEnvelope, agentResolveEnvelope, managerProfileGetEnvelope, managerProfileSetEnvelope, opencodeHandoffPreviewEnvelope, opencodeManagerPayloadEnvelope, } from './control-plane/handlers/agents.js';
21
+ import { contextCockpitEnvelope, resumeContextEnvelope } from './control-plane/handlers/context.js';
22
+ import { memoryGetEnvelope, memorySaveEnvelope, memorySearchEnvelope, memoryUpdateEnvelope } from './control-plane/handlers/memory.js';
23
+ import { providerChangePlanEnvelope, providerDoctorEnvelope, providerStatusEnvelope } from './control-plane/handlers/providers.js';
24
+ import { runCheckpointEnvelope, runFinalizeEnvelope, runGetEnvelope, runListEnvelope, runPreflightEnvelope, runResumeCandidatesEnvelope, runResumeGateEnvelope, runResumeInspectEnvelope, runStartEnvelope, runTaskGrantCreateEnvelope, runTaskGrantGetEnvelope, runTaskGrantListEnvelope, runTaskGrantPreviewMatchEnvelope, runTaskGrantRevokeEnvelope, } from './control-plane/handlers/runs.js';
25
+ import { governanceReportEnvelope, sddAcceptArtifactEnvelope, sddCockpitEnvelope, sddContinueEnvelope, sddGetArtifactEnvelope, sddGetReadinessEnvelope, sddListArtifactsEnvelope, sddNextEnvelope, sddReadyEnvelope, sddReopenArtifactEnvelope, sddSaveArtifactEnvelope, sddStatusEnvelope, } from './control-plane/handlers/sdd.js';
26
+ import { sessionAppendActivityEnvelope, sessionCloseEnvelope, sessionRestoreEnvelope, sessionStartEnvelope } from './control-plane/handlers/sessions.js';
27
+ import { skillActivateEnvelope, skillCreateDraftEnvelope, skillGetEnvelope, skillGetEvaluationEnvelope, skillIndexEnvelope, skillListEvaluationsEnvelope, skillListImprovementProposalsEnvelope, skillPayloadEnvelope, skillProposeImprovementEnvelope, skillPublishVersionEnvelope, skillRecordUsageEnvelope, skillRequestEvaluationEnvelope, skillSearchEnvelope, skillStatusEnvelope, skillUpdateDraftEnvelope, } from './control-plane/handlers/skills.js';
28
+ import { verificationPlanEnvelope } from './control-plane/handlers/verification.js';
29
+ import { errorEnvelope, successEnvelope, } from './schema.js';
30
+ import { validateVgxMcpToolCall } from './validation.js';
31
+ export function callVgxTool(call, services) {
32
+ const validated = validateVgxMcpToolCall(call);
33
+ if (!validated.ok)
34
+ return validated;
35
+ switch (validated.tool) {
36
+ case 'vgxness_sdd_status':
37
+ return sddStatusEnvelope(validated.input, services);
38
+ case 'vgxness_sdd_ready':
39
+ return sddReadyEnvelope(validated.input, services);
40
+ case 'vgxness_sdd_get_readiness':
41
+ return sddGetReadinessEnvelope(validated.input, services);
42
+ case 'vgxness_sdd_save_artifact':
43
+ return sddSaveArtifactEnvelope(validated.input, services);
44
+ case 'vgxness_sdd_accept_artifact':
45
+ return sddAcceptArtifactEnvelope(validated.input, services);
46
+ case 'vgxness_sdd_reopen_artifact':
47
+ return sddReopenArtifactEnvelope(validated.input, services);
48
+ case 'vgxness_sdd_get_artifact':
49
+ return sddGetArtifactEnvelope(validated.input, services);
50
+ case 'vgxness_sdd_list_artifacts':
51
+ return sddListArtifactsEnvelope(validated.input, services);
52
+ case 'vgxness_sdd_next':
53
+ return sddNextEnvelope(validated.input, services);
54
+ case 'vgxness_sdd_cockpit':
55
+ return sddCockpitEnvelope(validated.input, services);
56
+ case 'vgxness_sdd_continue':
57
+ return sddContinueEnvelope(validated.input, services);
58
+ case 'vgxness_governance_report':
59
+ return governanceReportEnvelope(validated.input, services);
60
+ case 'vgxness_memory_save':
61
+ return memorySaveEnvelope(validated.input, services);
62
+ case 'vgxness_memory_search':
63
+ return memorySearchEnvelope(validated.input, services);
64
+ case 'vgxness_memory_get':
65
+ return memoryGetEnvelope(validated.input, services);
66
+ case 'vgxness_memory_update':
67
+ return memoryUpdateEnvelope(validated.input, services);
68
+ case 'vgxness_session_start':
69
+ return sessionStartEnvelope(validated.input, services);
70
+ case 'vgxness_session_append_activity':
71
+ return sessionAppendActivityEnvelope(validated.input, services);
72
+ case 'vgxness_session_close':
73
+ return sessionCloseEnvelope(validated.input, services);
74
+ case 'vgxness_session_restore':
75
+ return sessionRestoreEnvelope(validated.input, services);
76
+ case 'vgxness_context_cockpit':
77
+ return contextCockpitEnvelope(validated.input, services);
78
+ case 'vgxness_resume_context':
79
+ return resumeContextEnvelope(validated.input, services);
80
+ case 'vgxness_agent_resolve':
81
+ return agentResolveEnvelope(validated.input, services);
82
+ case 'vgxness_agent_activate':
83
+ return agentActivateEnvelope(validated.input, services);
84
+ case 'vgxness_manager_profile_get':
85
+ return managerProfileGetEnvelope(validated.input, services);
86
+ case 'vgxness_manager_profile_set':
87
+ return managerProfileSetEnvelope(validated.input, services);
88
+ case 'vgxness_skill_index':
89
+ return skillIndexEnvelope(validated.input, services);
90
+ case 'vgxness_skill_search':
91
+ return skillSearchEnvelope(validated.input, services);
92
+ case 'vgxness_skill_get':
93
+ return skillGetEnvelope(validated.input, services);
94
+ case 'vgxness_skill_status':
95
+ return skillStatusEnvelope(validated.input, services);
96
+ case 'vgxness_skill_payload':
97
+ return skillPayloadEnvelope(validated.input, services);
98
+ case 'vgxness_skill_activate':
99
+ return skillActivateEnvelope(validated.input, services);
100
+ case 'vgxness_skill_record_usage':
101
+ return skillRecordUsageEnvelope(validated.input, services);
102
+ case 'vgxness_skill_propose_improvement':
103
+ return skillProposeImprovementEnvelope(validated.input, services);
104
+ case 'vgxness_skill_list_improvement_proposals':
105
+ return skillListImprovementProposalsEnvelope(validated.input, services);
106
+ case 'vgxness_skill_request_evaluation':
107
+ return skillRequestEvaluationEnvelope(validated.input, services);
108
+ case 'vgxness_skill_list_evaluations':
109
+ return skillListEvaluationsEnvelope(validated.input, services);
110
+ case 'vgxness_skill_get_evaluation':
111
+ return skillGetEvaluationEnvelope(validated.input, services);
112
+ case 'vgxness_skill_create_draft':
113
+ return skillCreateDraftEnvelope(validated.input, services);
114
+ case 'vgxness_skill_update_draft':
115
+ return skillUpdateDraftEnvelope(validated.input, services);
116
+ case 'vgxness_skill_publish_version':
117
+ return skillPublishVersionEnvelope(validated.input, services);
118
+ case 'vgxness_opencode_manager_payload':
119
+ return opencodeManagerPayloadEnvelope(validated.input, services);
120
+ case 'vgxness_opencode_handoff_preview':
121
+ return opencodeHandoffPreviewEnvelope(validated.input, services);
122
+ case 'vgxness_run_list':
123
+ return runListEnvelope(validated.input, services);
124
+ case 'vgxness_run_get':
125
+ return runGetEnvelope(validated.input, services);
126
+ case 'vgxness_run_preflight':
127
+ return runPreflightEnvelope(validated.input, services);
128
+ case 'vgxness_run_task_grant_create':
129
+ return runTaskGrantCreateEnvelope(validated.input, services);
130
+ case 'vgxness_run_task_grant_list':
131
+ return runTaskGrantListEnvelope(validated.input, services);
132
+ case 'vgxness_run_task_grant_get':
133
+ return runTaskGrantGetEnvelope(validated.input, services);
134
+ case 'vgxness_run_task_grant_revoke':
135
+ return runTaskGrantRevokeEnvelope(validated.input, services);
136
+ case 'vgxness_run_task_grant_preview_match':
137
+ return runTaskGrantPreviewMatchEnvelope(validated.input, services);
138
+ case 'vgxness_run_start':
139
+ return runStartEnvelope(validated.input, services);
140
+ case 'vgxness_run_checkpoint':
141
+ return runCheckpointEnvelope(validated.input, services);
142
+ case 'vgxness_run_finalize':
143
+ return runFinalizeEnvelope(validated.input, services);
144
+ case 'vgxness_run_resume_candidates':
145
+ return runResumeCandidatesEnvelope(validated.input, services);
146
+ case 'vgxness_run_resume_inspect':
147
+ return runResumeInspectEnvelope(validated.input, services);
148
+ case 'vgxness_run_resume_gate':
149
+ return runResumeGateEnvelope(validated.input, services);
150
+ case 'vgxness_provider_status':
151
+ return providerStatusEnvelope(validated.input, services);
152
+ case 'vgxness_provider_doctor':
153
+ return providerDoctorEnvelope(validated.input, services);
154
+ case 'vgxness_provider_change_plan':
155
+ return providerChangePlanEnvelope(validated.input, services);
156
+ case 'vgxness_verification_plan':
157
+ return verificationPlanEnvelope(validated.input, services);
158
+ }
159
+ return errorEnvelope('validation_failed', 'Tool dispatch is not implemented');
160
+ }
161
+ export function createVgxMcpControlPlane(options = {}) {
162
+ const databasePath = resolveControlPlaneDatabasePath(options);
163
+ if (!databasePath.ok)
164
+ throw new VgxMcpControlPlaneError(databasePath.error);
165
+ const prepared = prepareMemoryDatabasePath(databasePath.value);
166
+ if (!prepared.ok)
167
+ throw new VgxMcpControlPlaneError(prepared.error);
168
+ const opened = openMemoryDatabase({ path: databasePath.value });
169
+ if (!opened.ok)
170
+ throw new VgxMcpControlPlaneError(opened.error);
171
+ const database = opened.value;
172
+ const services = createServices(database);
173
+ let closed = false;
174
+ return {
175
+ callVgxTool: (tool, input) => callVgxTool({ tool, input }, services),
176
+ database,
177
+ close: () => {
178
+ if (closed)
179
+ return;
180
+ closed = true;
181
+ database.close();
182
+ },
183
+ };
184
+ }
185
+ export class VgxMcpControlPlaneError extends Error {
186
+ code;
187
+ cause;
188
+ constructor(failure) {
189
+ super(failure.message);
190
+ this.name = 'VgxMcpControlPlaneError';
191
+ this.code = failure.code;
192
+ if (failure.cause !== undefined)
193
+ this.cause = failure.cause;
194
+ }
195
+ }
196
+ function createServices(database) {
197
+ const memory = new MemoryService(database);
198
+ const agents = new AgentRegistryService(database);
199
+ const skills = new SkillRegistryService(database);
200
+ const skillIndex = new SkillIndexService(skills);
201
+ const skillStatus = new SkillStatusService(skills, agents);
202
+ const runs = new RunService(database);
203
+ const managerProfiles = new ManagerProfileOverlayService({ agents, overlays: new ManagerProfileOverlayRepository(database) });
204
+ const opencodeManagerPayload = new OpenCodeManagerPayloadService({ agents, managerProfiles, skills });
205
+ const sdd = new SddWorkflowService(memory, { actor: 'mcp-control-plane' });
206
+ const providerStatus = new ProviderStatusService({ sdd });
207
+ const providerDoctor = new ProviderDoctorService();
208
+ return {
209
+ sdd,
210
+ memory,
211
+ agents,
212
+ managerProfiles,
213
+ skills,
214
+ skillIndex,
215
+ skillStatus,
216
+ seedBuiltInSkills: () => runBootSkillSeed(database),
217
+ opencodeManagerPayload,
218
+ opencodeHandoffPreview: new OpenCodeHandoffPreviewService({ managerPayload: opencodeManagerPayload, sdd, providerStatus }),
219
+ activation: new AgentActivationService({ agents, managerProfiles, runs, opencodeManagerPayload }),
220
+ runs,
221
+ providerStatus,
222
+ providerDoctor,
223
+ providerChangePlan: new ProviderChangePlanService({ providerStatus, providerDoctor }),
224
+ verificationPlan: new VerificationPlanService(),
225
+ };
226
+ }
227
+ function _toEnvelope(tool, result) {
228
+ return result.ok ? successEnvelope(tool, result.value) : errorEnvelope(result.error.code, result.error.message, tool);
229
+ }
230
+ function resolveControlPlaneDatabasePath(options) {
231
+ if (options.databasePath !== undefined)
232
+ return { ok: true, value: options.databasePath };
233
+ const resolved = resolveMemoryDatabasePath({ cwd: process.cwd(), env: process.env });
234
+ return resolved.ok ? { ok: true, value: resolved.value.path } : resolved;
235
+ }
@@ -0,0 +1,174 @@
1
+ import { z } from 'zod';
2
+ import { AGENTS_MCP_TOOL_INPUT_SCHEMAS, CONTEXT_MCP_TOOL_INPUT_SCHEMAS, GOVERNANCE_MCP_TOOL_INPUT_SCHEMAS, MEMORY_MCP_TOOL_INPUT_SCHEMAS, PROVIDERS_MCP_TOOL_INPUT_SCHEMAS, RUNS_MCP_TOOL_INPUT_SCHEMAS, SDD_MCP_TOOL_INPUT_SCHEMAS, SESSIONS_MCP_TOOL_INPUT_SCHEMAS, SKILLS_MCP_TOOL_INPUT_SCHEMAS, VERIFICATION_MCP_TOOL_INPUT_SCHEMAS, } from './schemas/inputs/index.js';
3
+ import { buildProviderMcpToolOutputSchemas, buildSddMcpToolOutputSchemas } from './schemas/outputs/index.js';
4
+ export const SUPPORTED_VGX_MCP_TOOL_NAMES = [
5
+ 'vgxness_sdd_status',
6
+ 'vgxness_sdd_ready',
7
+ 'vgxness_sdd_get_readiness',
8
+ 'vgxness_sdd_save_artifact',
9
+ 'vgxness_sdd_accept_artifact',
10
+ 'vgxness_sdd_reopen_artifact',
11
+ 'vgxness_sdd_get_artifact',
12
+ 'vgxness_sdd_list_artifacts',
13
+ 'vgxness_sdd_next',
14
+ 'vgxness_sdd_cockpit',
15
+ 'vgxness_sdd_continue',
16
+ 'vgxness_governance_report',
17
+ 'vgxness_memory_save',
18
+ 'vgxness_memory_search',
19
+ 'vgxness_memory_get',
20
+ 'vgxness_memory_update',
21
+ 'vgxness_session_start',
22
+ 'vgxness_session_append_activity',
23
+ 'vgxness_session_close',
24
+ 'vgxness_session_restore',
25
+ 'vgxness_context_cockpit',
26
+ 'vgxness_resume_context',
27
+ 'vgxness_agent_resolve',
28
+ 'vgxness_agent_activate',
29
+ 'vgxness_manager_profile_get',
30
+ 'vgxness_manager_profile_set',
31
+ 'vgxness_skill_index',
32
+ 'vgxness_skill_search',
33
+ 'vgxness_skill_get',
34
+ 'vgxness_skill_status',
35
+ 'vgxness_skill_payload',
36
+ 'vgxness_skill_activate',
37
+ 'vgxness_skill_record_usage',
38
+ 'vgxness_skill_propose_improvement',
39
+ 'vgxness_skill_list_improvement_proposals',
40
+ 'vgxness_skill_request_evaluation',
41
+ 'vgxness_skill_list_evaluations',
42
+ 'vgxness_skill_get_evaluation',
43
+ 'vgxness_skill_create_draft',
44
+ 'vgxness_skill_update_draft',
45
+ 'vgxness_skill_publish_version',
46
+ 'vgxness_opencode_manager_payload',
47
+ 'vgxness_opencode_handoff_preview',
48
+ 'vgxness_run_list',
49
+ 'vgxness_run_get',
50
+ 'vgxness_run_preflight',
51
+ 'vgxness_run_task_grant_create',
52
+ 'vgxness_run_task_grant_list',
53
+ 'vgxness_run_task_grant_get',
54
+ 'vgxness_run_task_grant_revoke',
55
+ 'vgxness_run_task_grant_preview_match',
56
+ 'vgxness_run_start',
57
+ 'vgxness_run_checkpoint',
58
+ 'vgxness_run_finalize',
59
+ 'vgxness_run_resume_candidates',
60
+ 'vgxness_run_resume_inspect',
61
+ 'vgxness_run_resume_gate',
62
+ 'vgxness_provider_status',
63
+ 'vgxness_provider_doctor',
64
+ 'vgxness_provider_change_plan',
65
+ 'vgxness_verification_plan',
66
+ ];
67
+ export const EXPOSED_VGX_MCP_TOOL_NAMES = [
68
+ 'sdd_status',
69
+ 'sdd_ready',
70
+ 'sdd_get_readiness',
71
+ 'sdd_save_artifact',
72
+ 'sdd_accept_artifact',
73
+ 'sdd_reopen_artifact',
74
+ 'sdd_get_artifact',
75
+ 'sdd_list_artifacts',
76
+ 'sdd_next',
77
+ 'sdd_cockpit',
78
+ 'sdd_continue',
79
+ 'governance_report',
80
+ 'memory_save',
81
+ 'memory_search',
82
+ 'memory_get',
83
+ 'memory_update',
84
+ 'session_start',
85
+ 'session_append_activity',
86
+ 'session_close',
87
+ 'session_restore',
88
+ 'context_cockpit',
89
+ 'resume_context',
90
+ 'agent_resolve',
91
+ 'agent_activate',
92
+ 'manager_profile_get',
93
+ 'manager_profile_set',
94
+ 'skill_index',
95
+ 'skill_search',
96
+ 'skill_get',
97
+ 'skill_status',
98
+ 'skill_payload',
99
+ 'skill_activate',
100
+ 'skill_record_usage',
101
+ 'skill_propose_improvement',
102
+ 'skill_list_improvement_proposals',
103
+ 'skill_request_evaluation',
104
+ 'skill_list_evaluations',
105
+ 'skill_get_evaluation',
106
+ 'skill_create_draft',
107
+ 'skill_update_draft',
108
+ 'skill_publish_version',
109
+ 'opencode_manager_payload',
110
+ 'opencode_handoff_preview',
111
+ 'run_list',
112
+ 'run_get',
113
+ 'run_preflight',
114
+ 'run_task_grant_create',
115
+ 'run_task_grant_list',
116
+ 'run_task_grant_get',
117
+ 'run_task_grant_revoke',
118
+ 'run_task_grant_preview_match',
119
+ 'run_start',
120
+ 'run_checkpoint',
121
+ 'run_finalize',
122
+ 'run_resume_candidates',
123
+ 'run_resume_inspect',
124
+ 'run_resume_gate',
125
+ 'provider_status',
126
+ 'provider_doctor',
127
+ 'provider_change_plan',
128
+ 'verification_plan',
129
+ ];
130
+ const EXPOSED_TO_INTERNAL_TOOL_NAMES = Object.fromEntries(SUPPORTED_VGX_MCP_TOOL_NAMES.map((toolName) => [toExposedVgxMcpToolName(toolName), toolName]));
131
+ export function toExposedVgxMcpToolName(toolName) {
132
+ return toolName.replace(/^vgxness_/, '');
133
+ }
134
+ export function toInternalVgxMcpToolName(toolName) {
135
+ return EXPOSED_TO_INTERNAL_TOOL_NAMES[toolName];
136
+ }
137
+ const mcpSuccessOutputSchema = (value) => z
138
+ .object({
139
+ ok: z.literal(true),
140
+ tool: z.enum(SUPPORTED_VGX_MCP_TOOL_NAMES),
141
+ value,
142
+ })
143
+ .passthrough();
144
+ export const VGX_MCP_TOOL_INPUT_SCHEMAS = {
145
+ ...SDD_MCP_TOOL_INPUT_SCHEMAS,
146
+ ...GOVERNANCE_MCP_TOOL_INPUT_SCHEMAS,
147
+ ...MEMORY_MCP_TOOL_INPUT_SCHEMAS,
148
+ ...SESSIONS_MCP_TOOL_INPUT_SCHEMAS,
149
+ ...CONTEXT_MCP_TOOL_INPUT_SCHEMAS,
150
+ ...AGENTS_MCP_TOOL_INPUT_SCHEMAS,
151
+ ...SKILLS_MCP_TOOL_INPUT_SCHEMAS,
152
+ ...RUNS_MCP_TOOL_INPUT_SCHEMAS,
153
+ ...PROVIDERS_MCP_TOOL_INPUT_SCHEMAS,
154
+ ...VERIFICATION_MCP_TOOL_INPUT_SCHEMAS,
155
+ };
156
+ export const VGX_MCP_TOOL_OUTPUT_SCHEMAS = {
157
+ ...buildSddMcpToolOutputSchemas(mcpSuccessOutputSchema),
158
+ ...buildProviderMcpToolOutputSchemas(mcpSuccessOutputSchema),
159
+ };
160
+ export function successEnvelope(tool, value) {
161
+ return { ok: true, tool, value };
162
+ }
163
+ export function errorEnvelope(code, message, tool, details) {
164
+ const error = { code, message };
165
+ if (details !== undefined)
166
+ error.details = details;
167
+ const result = { ok: false, error };
168
+ if (tool !== undefined)
169
+ result.tool = tool;
170
+ return result;
171
+ }
172
+ export function isVgxMcpToolName(value) {
173
+ return typeof value === 'string' && SUPPORTED_VGX_MCP_TOOL_NAMES.includes(value);
174
+ }
@@ -0,0 +1,121 @@
1
+ import { z } from 'zod';
2
+ import { permissionCategories } from '../../../permissions/schema.js';
3
+ import { sddPhases } from '../../../sdd/schema.js';
4
+ import { workflowIds } from '../../../workflows/schema.js';
5
+ export { permissionCategories, workflowIds };
6
+ export const scopes = ['project', 'personal'];
7
+ export const providerInstallTargets = ['user-global'];
8
+ export const agentModes = ['agent', 'subagent'];
9
+ export const memoryTypes = ['architecture', 'decision', 'bugfix', 'pattern', 'config', 'discovery', 'learning', 'preference', 'manual'];
10
+ export const activityKinds = ['prompt', 'tool_call', 'artifact', 'summary', 'error'];
11
+ export const runStatuses = ['created', 'planned', 'running', 'needs-human', 'completed', 'failed', 'blocked', 'cancelled'];
12
+ export const taskGrantStatuses = ['active', 'revoked', 'expired', 'exhausted'];
13
+ export const taskGrantCategories = ['shell', 'test-run', 'git'];
14
+ export const finalRunStatuses = ['completed', 'failed', 'blocked', 'cancelled'];
15
+ export const runOutcomes = ['success', 'partial', 'failure', 'blocked', 'cancelled'];
16
+ export const payloadModes = ['compact', 'verbose'];
17
+ export const skillVersionStatuses = ['draft', 'active', 'deprecated', 'archived'];
18
+ export const skillImprovementProposalStatuses = ['draft', 'pending-approval', 'approved', 'rejected', 'cancelled', 'applied'];
19
+ export const skillEvaluationRequestStatuses = ['requested', 'planned', 'running', 'completed', 'failed', 'cancelled', 'skipped'];
20
+ export const skillSourceKinds = ['path', 'url', 'inline'];
21
+ export const skillUsageOutcomes = ['selected', 'injected', 'helped', 'failed', 'neutral'];
22
+ export const skillAttachmentTargetTypes = ['agent', 'subagent', 'workflow-phase', 'provider-adapter', 'intent-signal'];
23
+ export const jsonRecordSchema = z.record(z.string(), z.unknown());
24
+ export const explicitRequestInputSchema = z
25
+ .object({
26
+ version: z.literal(1),
27
+ actor: z
28
+ .object({
29
+ type: z.literal('human'),
30
+ id: z.string().min(1).optional(),
31
+ displayName: z.string().min(1).optional(),
32
+ })
33
+ .strict(),
34
+ request: z
35
+ .object({
36
+ id: z.string().min(1).optional(),
37
+ source: z.enum(['chat', 'mcp', 'cli', 'provider', 'unknown']),
38
+ utteranceRef: z.string().min(1).optional(),
39
+ excerpt: z.string().min(1).optional(),
40
+ requestedAt: z.string().min(1),
41
+ sessionId: z.string().min(1).optional(),
42
+ runId: z.string().min(1).optional(),
43
+ })
44
+ .strict(),
45
+ requestedOperation: z
46
+ .object({
47
+ category: z.enum(permissionCategories),
48
+ operation: z.string().min(1),
49
+ commandId: z.string().min(1).optional(),
50
+ providerToolName: z.string().min(1).optional(),
51
+ targetPath: z.string().min(1).optional(),
52
+ targetPaths: z.array(z.string().min(1)).optional(),
53
+ cwd: z.string().min(1).optional(),
54
+ workspaceRoot: z.string().min(1).optional(),
55
+ scopeSummary: z.string().min(1),
56
+ })
57
+ .strict(),
58
+ riskAttributes: z
59
+ .object({
60
+ destructive: z.boolean().optional(),
61
+ privileged: z.boolean().optional(),
62
+ external: z.boolean().optional(),
63
+ ambiguous: z.boolean().optional(),
64
+ secrets: z.boolean().optional(),
65
+ providerConfigMutation: z.boolean().optional(),
66
+ globalConfigMutation: z.boolean().optional(),
67
+ network: z.boolean().optional(),
68
+ install: z.boolean().optional(),
69
+ })
70
+ .strict(),
71
+ parser: z
72
+ .object({
73
+ exact: z.boolean(),
74
+ confidence: z.enum(['high', 'medium', 'low']).optional(),
75
+ ambiguityReasons: z.array(z.string().min(1)).optional(),
76
+ expansionReasons: z.array(z.string().min(1)).optional(),
77
+ })
78
+ .strict(),
79
+ })
80
+ .strict();
81
+ export const skillLifecycleActorSchema = z
82
+ .object({
83
+ type: z.enum(['human', 'agent', 'system']),
84
+ id: z.string().min(1),
85
+ displayName: z.string().min(1).optional(),
86
+ })
87
+ .passthrough();
88
+ export const skillSourceSchema = z
89
+ .object({
90
+ kind: z.enum(skillSourceKinds),
91
+ path: z.string().min(1).optional(),
92
+ url: z.string().min(1).optional(),
93
+ inlineMetadata: jsonRecordSchema.optional(),
94
+ })
95
+ .passthrough();
96
+ export const contextCockpitLevels = ['compact', 'expanded', 'verbose'];
97
+ export const providerChangePlanProviders = ['opencode', 'claude', 'antigravity', 'custom'];
98
+ export const providerChangePlanTypes = ['opencode-mcp-install', 'claude-mcp-install', 'setup', 'install', 'config-preparation'];
99
+ export const sddPhaseInputSchema = z.union([z.enum(sddPhases), z.literal('apply')]);
100
+ export const sddPhaseSchema = z.enum(sddPhases);
101
+ export const jsonValueSchema = z.lazy(() => z.union([z.string(), z.number().finite(), z.boolean(), z.null(), z.array(jsonValueSchema), z.record(z.string(), jsonValueSchema)]));
102
+ export const taskGrantHumanActorInputSchema = z
103
+ .object({
104
+ type: z.literal('human'),
105
+ id: z.string().min(1),
106
+ displayName: z.string().min(1).optional(),
107
+ })
108
+ .strict();
109
+ export const taskGrantRevocationActorInputSchema = z
110
+ .object({
111
+ type: z.enum(['human', 'system']),
112
+ id: z.string().min(1),
113
+ displayName: z.string().min(1).optional(),
114
+ })
115
+ .strict();
116
+ export const taskGrantCommandPolicyInputSchema = z
117
+ .object({
118
+ kind: z.literal('allowlisted-command-ids'),
119
+ ids: z.array(z.string().min(1)).min(1),
120
+ })
121
+ .strict();
@@ -0,0 +1,69 @@
1
+ import { z } from 'zod';
2
+ import { agentModes, payloadModes, scopes, sddPhaseInputSchema } from '../common.js';
3
+ export const AGENTS_MCP_TOOL_INPUT_SCHEMAS = {
4
+ vgxness_agent_resolve: z
5
+ .object({
6
+ project: z.string().min(1).optional(),
7
+ scope: z.enum(scopes).optional(),
8
+ taskDescription: z.string().min(1).optional(),
9
+ intent: z.string().min(1).optional(),
10
+ desiredCapabilities: z.array(z.string().min(1)).optional(),
11
+ workflow: z.string().min(1).optional(),
12
+ phase: z.string().min(1).optional(),
13
+ providerAdapter: z.string().min(1).optional(),
14
+ mode: z.enum(agentModes).optional(),
15
+ })
16
+ .passthrough(),
17
+ vgxness_agent_activate: z
18
+ .object({
19
+ project: z.string().min(1),
20
+ scope: z.enum(scopes).optional(),
21
+ agentId: z.string().min(1).optional(),
22
+ userIntent: z.string().min(1),
23
+ workflow: z.string().min(1).optional(),
24
+ phase: z.string().min(1).optional(),
25
+ workspaceRoot: z.string().min(1).optional(),
26
+ maxSourceBytes: z.number().int().positive().optional(),
27
+ providerAdapter: z.string().min(1).optional(),
28
+ payloadMode: z.enum(payloadModes).optional(),
29
+ })
30
+ .passthrough(),
31
+ vgxness_manager_profile_get: z
32
+ .object({
33
+ project: z.string().min(1),
34
+ scope: z.enum(scopes).optional(),
35
+ managerName: z.string().min(1).optional(),
36
+ })
37
+ .passthrough(),
38
+ vgxness_manager_profile_set: z
39
+ .object({
40
+ project: z.string().min(1),
41
+ scope: z.enum(scopes),
42
+ managerName: z.string().min(1),
43
+ instructions: z.string().min(1),
44
+ })
45
+ .passthrough(),
46
+ vgxness_opencode_manager_payload: z
47
+ .object({
48
+ project: z.string().min(1),
49
+ scope: z.enum(scopes).optional(),
50
+ agentId: z.string().min(1).optional(),
51
+ agentName: z.string().min(1).optional(),
52
+ workspaceRoot: z.string().min(1).optional(),
53
+ maxSourceBytes: z.number().int().positive().optional(),
54
+ payloadMode: z.enum(payloadModes).optional(),
55
+ })
56
+ .passthrough(),
57
+ vgxness_opencode_handoff_preview: z
58
+ .object({
59
+ project: z.string().min(1),
60
+ scope: z.enum(scopes).optional(),
61
+ agentId: z.string().min(1).optional(),
62
+ agentName: z.string().min(1).optional(),
63
+ workspaceRoot: z.string().min(1).optional(),
64
+ maxSourceBytes: z.number().int().positive().optional(),
65
+ change: z.string().min(1).optional(),
66
+ phase: sddPhaseInputSchema.optional(),
67
+ })
68
+ .passthrough(),
69
+ };
@@ -0,0 +1,32 @@
1
+ import { z } from 'zod';
2
+ import { contextCockpitLevels, payloadModes } from '../common.js';
3
+ export const CONTEXT_MCP_TOOL_INPUT_SCHEMAS = {
4
+ vgxness_context_cockpit: z
5
+ .object({
6
+ project: z.string().min(1),
7
+ change: z.preprocess((value) => (value === '' ? undefined : value), z
8
+ .string()
9
+ .min(1)
10
+ .regex(/^[A-Za-z0-9][A-Za-z0-9._-]*$/)
11
+ .optional()),
12
+ directory: z.string().min(1).optional(),
13
+ limit: z.number().int().min(1).max(100).optional(),
14
+ level: z.enum(contextCockpitLevels).optional(),
15
+ })
16
+ .passthrough(),
17
+ vgxness_resume_context: z
18
+ .object({
19
+ project: z.string().min(1),
20
+ directory: z.string().min(1).optional(),
21
+ workspaceRoot: z.string().min(1).optional(),
22
+ userPrompt: z.string().optional(),
23
+ explicitChange: z.preprocess((value) => (typeof value === 'string' && value.trim().length === 0 ? undefined : value), z
24
+ .string()
25
+ .min(1)
26
+ .regex(/^[A-Za-z0-9][A-Za-z0-9._-]*$/)
27
+ .optional()),
28
+ limit: z.number().int().min(1).max(25).optional(),
29
+ payloadMode: z.enum(payloadModes).optional(),
30
+ })
31
+ .passthrough(),
32
+ };
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+ import { agentModes, payloadModes, scopes } from '../common.js';
3
+ export const GOVERNANCE_MCP_TOOL_INPUT_SCHEMAS = {
4
+ vgxness_governance_report: z
5
+ .object({
6
+ project: z.string().min(1),
7
+ change: z.string().min(1).optional(),
8
+ runId: z.string().min(1).optional(),
9
+ workflow: z.string().min(1).optional(),
10
+ phase: z.string().min(1).optional(),
11
+ agentId: z.string().min(1).optional(),
12
+ payloadMode: z.enum(payloadModes).optional(),
13
+ agent: z
14
+ .object({
15
+ id: z.string().min(1).optional(),
16
+ name: z.string().min(1).optional(),
17
+ mode: z.enum(agentModes).optional(),
18
+ scope: z.enum(scopes).optional(),
19
+ })
20
+ .optional(),
21
+ })
22
+ .passthrough(),
23
+ };
@@ -0,0 +1,10 @@
1
+ export { AGENTS_MCP_TOOL_INPUT_SCHEMAS } from './agents.js';
2
+ export { CONTEXT_MCP_TOOL_INPUT_SCHEMAS } from './context.js';
3
+ export { GOVERNANCE_MCP_TOOL_INPUT_SCHEMAS } from './governance.js';
4
+ export { MEMORY_MCP_TOOL_INPUT_SCHEMAS } from './memory.js';
5
+ export { PROVIDERS_MCP_TOOL_INPUT_SCHEMAS } from './providers.js';
6
+ export { RUNS_MCP_TOOL_INPUT_SCHEMAS } from './runs.js';
7
+ export { SDD_MCP_TOOL_INPUT_SCHEMAS } from './sdd.js';
8
+ export { SESSIONS_MCP_TOOL_INPUT_SCHEMAS } from './sessions.js';
9
+ export { SKILLS_MCP_TOOL_INPUT_SCHEMAS } from './skills.js';
10
+ export { VERIFICATION_MCP_TOOL_INPUT_SCHEMAS } from './verification.js';