devchain-cli 0.20.2 → 0.21.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 (400) hide show
  1. package/dist/cli.js +11 -1
  2. package/dist/drizzle/0072_fat_vulcan.sql +21 -0
  3. package/dist/drizzle/meta/0072_snapshot.json +6062 -0
  4. package/dist/drizzle/meta/_journal.json +7 -0
  5. package/dist/node_modules/@devchain/shared/e2ee/index.d.ts +1 -1
  6. package/dist/node_modules/@devchain/shared/e2ee/index.d.ts.map +1 -1
  7. package/dist/node_modules/@devchain/shared/e2ee/index.js +1 -1
  8. package/dist/node_modules/@devchain/shared/e2ee/index.js.map +1 -1
  9. package/dist/node_modules/@devchain/shared/e2ee/negotiation.d.ts +6 -0
  10. package/dist/node_modules/@devchain/shared/e2ee/negotiation.d.ts.map +1 -1
  11. package/dist/node_modules/@devchain/shared/e2ee/negotiation.js +13 -0
  12. package/dist/node_modules/@devchain/shared/e2ee/negotiation.js.map +1 -1
  13. package/dist/node_modules/@devchain/shared/index.d.ts +2 -2
  14. package/dist/node_modules/@devchain/shared/index.d.ts.map +1 -1
  15. package/dist/node_modules/@devchain/shared/index.js +2 -2
  16. package/dist/node_modules/@devchain/shared/index.js.map +1 -1
  17. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.d.ts +11816 -0
  18. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.d.ts.map +1 -0
  19. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.js +1069 -0
  20. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.js.map +1 -0
  21. package/dist/node_modules/@devchain/shared/tsconfig.tsbuildinfo +1 -1
  22. package/dist/node_modules/@devchain/shared/tunnel-protocol.d.ts +23 -2
  23. package/dist/node_modules/@devchain/shared/tunnel-protocol.d.ts.map +1 -1
  24. package/dist/node_modules/@devchain/shared/tunnel-protocol.js +24 -2
  25. package/dist/node_modules/@devchain/shared/tunnel-protocol.js.map +1 -1
  26. package/dist/server/app.main.module.js +2 -0
  27. package/dist/server/app.main.module.js.map +1 -1
  28. package/dist/server/app.normal.module.js +2 -0
  29. package/dist/server/app.normal.module.js.map +1 -1
  30. package/dist/server/common/test/app-bootstrap.helper.js +0 -1
  31. package/dist/server/common/test/app-bootstrap.helper.js.map +1 -1
  32. package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js +10 -4
  33. package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js.map +1 -1
  34. package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js +2 -0
  35. package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js.map +1 -1
  36. package/dist/server/modules/agent-message-delivery/dtos/delivery.types.d.ts +4 -1
  37. package/dist/server/modules/cloud/cloud.module.js +2 -1
  38. package/dist/server/modules/cloud/cloud.module.js.map +1 -1
  39. package/dist/server/modules/cloud/services/cloud-egress-bridge.service.d.ts +3 -1
  40. package/dist/server/modules/cloud/services/cloud-egress-bridge.service.js +16 -9
  41. package/dist/server/modules/cloud/services/cloud-egress-bridge.service.js.map +1 -1
  42. package/dist/server/modules/cloud/services/event-mapper.service.d.ts +1 -0
  43. package/dist/server/modules/cloud/services/event-mapper.service.js +14 -0
  44. package/dist/server/modules/cloud/services/event-mapper.service.js.map +1 -1
  45. package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js +4 -0
  46. package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js.map +1 -1
  47. package/dist/server/modules/cloud-tunnel/services/ask-user-question-push-gate.service.d.ts +5 -1
  48. package/dist/server/modules/cloud-tunnel/services/ask-user-question-push-gate.service.js +27 -7
  49. package/dist/server/modules/cloud-tunnel/services/ask-user-question-push-gate.service.js.map +1 -1
  50. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.d.ts +5 -2
  51. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js +12 -5
  52. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js.map +1 -1
  53. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.d.ts +11815 -0
  54. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.js +1076 -0
  55. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.js.map +1 -0
  56. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.d.ts +67 -0
  57. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.js +181 -0
  58. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.js.map +1 -0
  59. package/dist/server/modules/cloud-tunnel/services/tunnel-client.service.d.ts +15 -2
  60. package/dist/server/modules/cloud-tunnel/services/tunnel-client.service.js +145 -6
  61. package/dist/server/modules/cloud-tunnel/services/tunnel-client.service.js.map +1 -1
  62. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.d.ts +4 -1
  63. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js +16 -2
  64. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js.map +1 -1
  65. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.d.ts +4 -1
  66. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js +64 -250
  67. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js.map +1 -1
  68. package/dist/server/modules/cloud-tunnel/services/tunnel-rpc-crypto.service.d.ts +0 -2
  69. package/dist/server/modules/cloud-tunnel/services/tunnel-rpc-crypto.service.js +7 -5
  70. package/dist/server/modules/cloud-tunnel/services/tunnel-rpc-crypto.service.js.map +1 -1
  71. package/dist/server/modules/cloud-tunnel/services/tunnel-viewport-crypto.service.d.ts +1 -2
  72. package/dist/server/modules/cloud-tunnel/services/tunnel-viewport-crypto.service.js +14 -16
  73. package/dist/server/modules/cloud-tunnel/services/tunnel-viewport-crypto.service.js.map +1 -1
  74. package/dist/server/modules/cloud-tunnel/services/viewport-streamer.service.d.ts +20 -3
  75. package/dist/server/modules/cloud-tunnel/services/viewport-streamer.service.js +139 -9
  76. package/dist/server/modules/cloud-tunnel/services/viewport-streamer.service.js.map +1 -1
  77. package/dist/server/modules/e2ee/controllers/e2ee-pairing.controller.js +3 -1
  78. package/dist/server/modules/e2ee/controllers/e2ee-pairing.controller.js.map +1 -1
  79. package/dist/server/modules/e2ee/controllers/e2ee-trust.controller.d.ts +6 -1
  80. package/dist/server/modules/e2ee/controllers/e2ee-trust.controller.js +56 -2
  81. package/dist/server/modules/e2ee/controllers/e2ee-trust.controller.js.map +1 -1
  82. package/dist/server/modules/e2ee/e2ee.module.js +17 -2
  83. package/dist/server/modules/e2ee/e2ee.module.js.map +1 -1
  84. package/dist/server/modules/e2ee/events/paired-device-workspace-access.events.d.ts +6 -0
  85. package/dist/server/modules/e2ee/events/paired-device-workspace-access.events.js +5 -0
  86. package/dist/server/modules/e2ee/events/paired-device-workspace-access.events.js.map +1 -0
  87. package/dist/server/modules/e2ee/services/e2ee-device-label.d.ts +1 -0
  88. package/dist/server/modules/e2ee/services/e2ee-device-label.js +17 -0
  89. package/dist/server/modules/e2ee/services/e2ee-device-label.js.map +1 -0
  90. package/dist/server/modules/e2ee/services/e2ee-device-store.service.d.ts +9 -2
  91. package/dist/server/modules/e2ee/services/e2ee-device-store.service.js +94 -28
  92. package/dist/server/modules/e2ee/services/e2ee-device-store.service.js.map +1 -1
  93. package/dist/server/modules/e2ee/services/e2ee-pairing.service.js +3 -1
  94. package/dist/server/modules/e2ee/services/e2ee-pairing.service.js.map +1 -1
  95. package/dist/server/modules/e2ee/services/e2ee-trust.service.d.ts +4 -0
  96. package/dist/server/modules/e2ee/services/e2ee-trust.service.js +33 -10
  97. package/dist/server/modules/e2ee/services/e2ee-trust.service.js.map +1 -1
  98. package/dist/server/modules/e2ee/services/paired-device-workspace-access.service.d.ts +19 -0
  99. package/dist/server/modules/e2ee/services/paired-device-workspace-access.service.js +103 -0
  100. package/dist/server/modules/e2ee/services/paired-device-workspace-access.service.js.map +1 -0
  101. package/dist/server/modules/epics/services/epics.service.d.ts +1 -0
  102. package/dist/server/modules/epics/services/epics.service.js +7 -1
  103. package/dist/server/modules/epics/services/epics.service.js.map +1 -1
  104. package/dist/server/modules/events/catalog/epic.updated.d.ts +26 -26
  105. package/dist/server/modules/events/catalog/index.d.ts +48 -48
  106. package/dist/server/modules/events/catalog/review.updated.d.ts +18 -18
  107. package/dist/server/modules/events/catalog/team.config.updated.d.ts +4 -4
  108. package/dist/server/modules/mcp/mcp-full.module.js +2 -3
  109. package/dist/server/modules/mcp/mcp-full.module.js.map +1 -1
  110. package/dist/server/modules/mcp/services/handlers/epic-tools.js +1 -1
  111. package/dist/server/modules/mcp/services/handlers/epic-tools.js.map +1 -1
  112. package/dist/server/modules/mcp/services/mcp-tool-binding.registry.d.ts +23 -0
  113. package/dist/server/modules/mcp/services/mcp-tool-binding.registry.js +120 -0
  114. package/dist/server/modules/mcp/services/mcp-tool-binding.registry.js.map +1 -0
  115. package/dist/server/modules/mcp/services/mcp.service.d.ts +4 -45
  116. package/dist/server/modules/mcp/services/mcp.service.js +15 -265
  117. package/dist/server/modules/mcp/services/mcp.service.js.map +1 -1
  118. package/dist/server/modules/mcp/services/testing/mcp-tool-binding-registry.fixture.d.ts +5 -0
  119. package/dist/server/modules/mcp/services/testing/mcp-tool-binding-registry.fixture.js +8 -0
  120. package/dist/server/modules/mcp/services/testing/mcp-tool-binding-registry.fixture.js.map +1 -0
  121. package/dist/server/modules/mcp/standalone-mcp.module.js +3 -10
  122. package/dist/server/modules/mcp/standalone-mcp.module.js.map +1 -1
  123. package/dist/server/modules/mcp/tool-descriptors/agent.bindings.d.ts +1 -2
  124. package/dist/server/modules/mcp/tool-descriptors/agent.bindings.js +15 -2
  125. package/dist/server/modules/mcp/tool-descriptors/agent.bindings.js.map +1 -1
  126. package/dist/server/modules/mcp/tool-descriptors/binding-types.d.ts +38 -0
  127. package/dist/server/modules/mcp/tool-descriptors/binding-types.js +10 -0
  128. package/dist/server/modules/mcp/tool-descriptors/binding-types.js.map +1 -0
  129. package/dist/server/modules/mcp/tool-descriptors/chat.bindings.d.ts +1 -2
  130. package/dist/server/modules/mcp/tool-descriptors/chat.bindings.js +16 -2
  131. package/dist/server/modules/mcp/tool-descriptors/chat.bindings.js.map +1 -1
  132. package/dist/server/modules/mcp/tool-descriptors/document.bindings.d.ts +1 -2
  133. package/dist/server/modules/mcp/tool-descriptors/document.bindings.js +10 -2
  134. package/dist/server/modules/mcp/tool-descriptors/document.bindings.js.map +1 -1
  135. package/dist/server/modules/mcp/tool-descriptors/epic.bindings.d.ts +1 -2
  136. package/dist/server/modules/mcp/tool-descriptors/epic.bindings.js +12 -6
  137. package/dist/server/modules/mcp/tool-descriptors/epic.bindings.js.map +1 -1
  138. package/dist/server/modules/mcp/tool-descriptors/index.d.ts +2 -3
  139. package/dist/server/modules/mcp/tool-descriptors/index.js +1 -25
  140. package/dist/server/modules/mcp/tool-descriptors/index.js.map +1 -1
  141. package/dist/server/modules/mcp/tool-descriptors/project.bindings.d.ts +1 -2
  142. package/dist/server/modules/mcp/tool-descriptors/project.bindings.js +11 -2
  143. package/dist/server/modules/mcp/tool-descriptors/project.bindings.js.map +1 -1
  144. package/dist/server/modules/mcp/tool-descriptors/prompt.bindings.d.ts +1 -2
  145. package/dist/server/modules/mcp/tool-descriptors/prompt.bindings.js +11 -2
  146. package/dist/server/modules/mcp/tool-descriptors/prompt.bindings.js.map +1 -1
  147. package/dist/server/modules/mcp/tool-descriptors/record.bindings.d.ts +1 -2
  148. package/dist/server/modules/mcp/tool-descriptors/record.bindings.js +6 -2
  149. package/dist/server/modules/mcp/tool-descriptors/record.bindings.js.map +1 -1
  150. package/dist/server/modules/mcp/tool-descriptors/review.bindings.d.ts +1 -2
  151. package/dist/server/modules/mcp/tool-descriptors/review.bindings.js +13 -2
  152. package/dist/server/modules/mcp/tool-descriptors/review.bindings.js.map +1 -1
  153. package/dist/server/modules/mcp/tool-descriptors/runtime-bindings.d.ts +2 -0
  154. package/dist/server/modules/mcp/tool-descriptors/runtime-bindings.js +29 -0
  155. package/dist/server/modules/mcp/tool-descriptors/runtime-bindings.js.map +1 -0
  156. package/dist/server/modules/mcp/tool-descriptors/session.bindings.d.ts +1 -2
  157. package/dist/server/modules/mcp/tool-descriptors/session.bindings.js +11 -2
  158. package/dist/server/modules/mcp/tool-descriptors/session.bindings.js.map +1 -1
  159. package/dist/server/modules/mcp/tool-descriptors/skill.bindings.d.ts +1 -2
  160. package/dist/server/modules/mcp/tool-descriptors/skill.bindings.js +10 -2
  161. package/dist/server/modules/mcp/tool-descriptors/skill.bindings.js.map +1 -1
  162. package/dist/server/modules/mcp/tool-descriptors/team.bindings.d.ts +1 -2
  163. package/dist/server/modules/mcp/tool-descriptors/team.bindings.js +11 -2
  164. package/dist/server/modules/mcp/tool-descriptors/team.bindings.js.map +1 -1
  165. package/dist/server/modules/mcp/tool-descriptors/types.d.ts +0 -2
  166. package/dist/server/modules/project-communication/project-communication.service.d.ts +2 -0
  167. package/dist/server/modules/project-communication/project-communication.service.js +72 -20
  168. package/dist/server/modules/project-communication/project-communication.service.js.map +1 -1
  169. package/dist/server/modules/projects/controllers/projects.controller.d.ts +2 -1
  170. package/dist/server/modules/projects/controllers/projects.controller.js +16 -3
  171. package/dist/server/modules/projects/controllers/projects.controller.js.map +1 -1
  172. package/dist/server/modules/projects/dtos/template-upgrade.dto.d.ts +1 -0
  173. package/dist/server/modules/projects/dtos/template-upgrade.dto.js +9 -0
  174. package/dist/server/modules/projects/dtos/template-upgrade.dto.js.map +1 -1
  175. package/dist/server/modules/projects/events/project-workspace-changed.events.d.ts +6 -0
  176. package/dist/server/modules/projects/events/project-workspace-changed.events.js +5 -0
  177. package/dist/server/modules/projects/events/project-workspace-changed.events.js.map +1 -0
  178. package/dist/server/modules/projects/helpers/template-loader.d.ts +1 -0
  179. package/dist/server/modules/projects/helpers/template-loader.js +1 -0
  180. package/dist/server/modules/projects/helpers/template-loader.js.map +1 -1
  181. package/dist/server/modules/projects/services/project-registry-import.service.d.ts +2 -0
  182. package/dist/server/modules/projects/services/project-registry-import.service.js +3 -1
  183. package/dist/server/modules/projects/services/project-registry-import.service.js.map +1 -1
  184. package/dist/server/modules/projects/services/projects.service.d.ts +4 -1
  185. package/dist/server/modules/projects/services/projects.service.js +17 -3
  186. package/dist/server/modules/projects/services/projects.service.js.map +1 -1
  187. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.d.ts +1 -1
  188. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js +72 -41
  189. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js.map +1 -1
  190. package/dist/server/modules/scheduled-epics/services/scheduled-epics.service.js +14 -16
  191. package/dist/server/modules/scheduled-epics/services/scheduled-epics.service.js.map +1 -1
  192. package/dist/server/modules/seeders/seeders/0003_seed_preseed_jeffallan_claude_skills.js +45 -15
  193. package/dist/server/modules/seeders/seeders/0003_seed_preseed_jeffallan_claude_skills.js.map +1 -1
  194. package/dist/server/modules/seeders/seeders/0005_seed_renew_instructions_subscriber.js +2 -2
  195. package/dist/server/modules/seeders/seeders/0005_seed_renew_instructions_subscriber.js.map +1 -1
  196. package/dist/server/modules/session-reader/data/pricing.json +51 -4
  197. package/dist/server/modules/session-reader/services/transcript-serialization.d.ts +13 -0
  198. package/dist/server/modules/session-reader/services/transcript-serialization.js +41 -0
  199. package/dist/server/modules/session-reader/services/transcript-serialization.js.map +1 -1
  200. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.module.d.ts +2 -0
  201. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.module.js +25 -0
  202. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.module.js.map +1 -0
  203. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.service.d.ts +19 -0
  204. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.service.js +118 -0
  205. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.service.js.map +1 -0
  206. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.types.d.ts +10 -0
  207. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.types.js +3 -0
  208. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.types.js.map +1 -0
  209. package/dist/server/modules/sessions/services/message-enqueue.service.d.ts +2 -1
  210. package/dist/server/modules/sessions/services/message-enqueue.service.js +1 -0
  211. package/dist/server/modules/sessions/services/message-enqueue.service.js.map +1 -1
  212. package/dist/server/modules/sessions/services/message-pool.types.d.ts +6 -1
  213. package/dist/server/modules/sessions/services/message-pool.types.js +10 -1
  214. package/dist/server/modules/sessions/services/message-pool.types.js.map +1 -1
  215. package/dist/server/modules/sessions/services/provider-runtime-preparation/index.d.ts +2 -0
  216. package/dist/server/modules/sessions/services/provider-runtime-preparation/index.js +6 -0
  217. package/dist/server/modules/sessions/services/provider-runtime-preparation/index.js.map +1 -0
  218. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.service.d.ts +24 -0
  219. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.service.js +297 -0
  220. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.service.js.map +1 -0
  221. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.types.d.ts +41 -0
  222. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.types.js +8 -0
  223. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.types.js.map +1 -0
  224. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.d.ts +33 -37
  225. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js +37 -56
  226. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js.map +1 -1
  227. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.d.ts +3 -5
  228. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js +23 -112
  229. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js.map +1 -1
  230. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.d.ts +3 -9
  231. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js +23 -125
  232. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js.map +1 -1
  233. package/dist/server/modules/sessions/services/sessions-message-pool.service.d.ts +13 -1
  234. package/dist/server/modules/sessions/services/sessions-message-pool.service.js +253 -20
  235. package/dist/server/modules/sessions/services/sessions-message-pool.service.js.map +1 -1
  236. package/dist/server/modules/sessions/services/sessions.service.d.ts +0 -13
  237. package/dist/server/modules/sessions/services/sessions.service.js +0 -66
  238. package/dist/server/modules/sessions/services/sessions.service.js.map +1 -1
  239. package/dist/server/modules/sessions/sessions-lifecycle.module.js.map +1 -1
  240. package/dist/server/modules/sessions/sessions.module.js +3 -1
  241. package/dist/server/modules/sessions/sessions.module.js.map +1 -1
  242. package/dist/server/modules/settings/dtos/settings.dto.d.ts +2 -2
  243. package/dist/server/modules/skills/controllers/community-sources.controller.d.ts +3 -3
  244. package/dist/server/modules/skills/controllers/community-sources.controller.js +8 -8
  245. package/dist/server/modules/skills/controllers/community-sources.controller.js.map +1 -1
  246. package/dist/server/modules/skills/controllers/local-sources.controller.d.ts +3 -3
  247. package/dist/server/modules/skills/controllers/local-sources.controller.js +8 -8
  248. package/dist/server/modules/skills/controllers/local-sources.controller.js.map +1 -1
  249. package/dist/server/modules/skills/controllers/skills.controller.d.ts +4 -3
  250. package/dist/server/modules/skills/controllers/skills.controller.js +7 -7
  251. package/dist/server/modules/skills/controllers/skills.controller.js.map +1 -1
  252. package/dist/server/modules/skills/services/skill-source-lifecycle.service.d.ts +42 -0
  253. package/dist/server/modules/skills/services/{local-sources.service.js → skill-source-lifecycle.service.js} +187 -62
  254. package/dist/server/modules/skills/services/skill-source-lifecycle.service.js.map +1 -0
  255. package/dist/server/modules/skills/services/skill-sync.service.d.ts +2 -20
  256. package/dist/server/modules/skills/services/skill-sync.service.js +30 -68
  257. package/dist/server/modules/skills/services/skill-sync.service.js.map +1 -1
  258. package/dist/server/modules/skills/services/skill-sync.types.d.ts +14 -0
  259. package/dist/server/modules/{mcp/services/handlers/types.js → skills/services/skill-sync.types.js} +1 -1
  260. package/dist/server/modules/skills/services/skill-sync.types.js.map +1 -0
  261. package/dist/server/modules/skills/services/skills.service.d.ts +0 -1
  262. package/dist/server/modules/skills/services/skills.service.js +0 -3
  263. package/dist/server/modules/skills/services/skills.service.js.map +1 -1
  264. package/dist/server/modules/skills/skills.module.js +2 -5
  265. package/dist/server/modules/skills/skills.module.js.map +1 -1
  266. package/dist/server/modules/storage/db/db.provider.d.ts +4 -0
  267. package/dist/server/modules/storage/db/db.provider.js +13 -1
  268. package/dist/server/modules/storage/db/db.provider.js.map +1 -1
  269. package/dist/server/modules/storage/db/schema.d.ts +182 -0
  270. package/dist/server/modules/storage/db/schema.js +23 -2
  271. package/dist/server/modules/storage/db/schema.js.map +1 -1
  272. package/dist/server/modules/storage/db/transaction-runner.d.ts +9 -0
  273. package/dist/server/modules/storage/db/transaction-runner.js +142 -4
  274. package/dist/server/modules/storage/db/transaction-runner.js.map +1 -1
  275. package/dist/server/modules/storage/interfaces/storage.interface.d.ts +31 -9
  276. package/dist/server/modules/storage/interfaces/storage.interface.js.map +1 -1
  277. package/dist/server/modules/storage/local/delegates/agent.delegate.d.ts +3 -2
  278. package/dist/server/modules/storage/local/delegates/agent.delegate.js +45 -6
  279. package/dist/server/modules/storage/local/delegates/agent.delegate.js.map +1 -1
  280. package/dist/server/modules/storage/local/delegates/base-storage.delegate.d.ts +2 -0
  281. package/dist/server/modules/storage/local/delegates/base-storage.delegate.js +3 -0
  282. package/dist/server/modules/storage/local/delegates/base-storage.delegate.js.map +1 -1
  283. package/dist/server/modules/storage/local/delegates/document.delegate.d.ts +4 -6
  284. package/dist/server/modules/storage/local/delegates/document.delegate.js +86 -79
  285. package/dist/server/modules/storage/local/delegates/document.delegate.js.map +1 -1
  286. package/dist/server/modules/storage/local/delegates/epic.delegate.d.ts +6 -4
  287. package/dist/server/modules/storage/local/delegates/epic.delegate.js +94 -60
  288. package/dist/server/modules/storage/local/delegates/epic.delegate.js.map +1 -1
  289. package/dist/server/modules/storage/local/delegates/project-workspace.delegate.d.ts +16 -0
  290. package/dist/server/modules/storage/local/delegates/project-workspace.delegate.js +191 -0
  291. package/dist/server/modules/storage/local/delegates/project-workspace.delegate.js.map +1 -0
  292. package/dist/server/modules/storage/local/delegates/project.delegate.d.ts +7 -2
  293. package/dist/server/modules/storage/local/delegates/project.delegate.js +126 -140
  294. package/dist/server/modules/storage/local/delegates/project.delegate.js.map +1 -1
  295. package/dist/server/modules/storage/local/delegates/prompt.delegate.d.ts +3 -2
  296. package/dist/server/modules/storage/local/delegates/prompt.delegate.js +65 -66
  297. package/dist/server/modules/storage/local/delegates/prompt.delegate.js.map +1 -1
  298. package/dist/server/modules/storage/local/delegates/record.delegate.d.ts +3 -2
  299. package/dist/server/modules/storage/local/delegates/record.delegate.js +76 -62
  300. package/dist/server/modules/storage/local/delegates/record.delegate.js.map +1 -1
  301. package/dist/server/modules/storage/local/delegates/review.delegate.d.ts +3 -6
  302. package/dist/server/modules/storage/local/delegates/review.delegate.js +93 -72
  303. package/dist/server/modules/storage/local/delegates/review.delegate.js.map +1 -1
  304. package/dist/server/modules/storage/local/delegates/scheduled-epic.delegate.d.ts +4 -2
  305. package/dist/server/modules/storage/local/delegates/scheduled-epic.delegate.js +53 -20
  306. package/dist/server/modules/storage/local/delegates/scheduled-epic.delegate.js.map +1 -1
  307. package/dist/server/modules/storage/local/delegates/skill-source.delegate.d.ts +7 -11
  308. package/dist/server/modules/storage/local/delegates/skill-source.delegate.js +135 -160
  309. package/dist/server/modules/storage/local/delegates/skill-source.delegate.js.map +1 -1
  310. package/dist/server/modules/storage/local/delegates/tag.delegate.d.ts +1 -0
  311. package/dist/server/modules/storage/local/delegates/tag.delegate.js +11 -5
  312. package/dist/server/modules/storage/local/delegates/tag.delegate.js.map +1 -1
  313. package/dist/server/modules/storage/local/helpers/storage-helpers.d.ts +0 -2
  314. package/dist/server/modules/storage/local/helpers/storage-helpers.js +1 -24
  315. package/dist/server/modules/storage/local/helpers/storage-helpers.js.map +1 -1
  316. package/dist/server/modules/storage/local/local-storage.service.d.ts +15 -12
  317. package/dist/server/modules/storage/local/local-storage.service.js +40 -95
  318. package/dist/server/modules/storage/local/local-storage.service.js.map +1 -1
  319. package/dist/server/modules/storage/local/versioned-mutation.executor.d.ts +31 -0
  320. package/dist/server/modules/storage/local/versioned-mutation.executor.js +50 -0
  321. package/dist/server/modules/storage/local/versioned-mutation.executor.js.map +1 -0
  322. package/dist/server/modules/storage/models/domain.models.d.ts +18 -1
  323. package/dist/server/modules/subscribers/actions/action.interface.d.ts +4 -0
  324. package/dist/server/modules/subscribers/actions/actions.registry.js +4 -0
  325. package/dist/server/modules/subscribers/actions/actions.registry.js.map +1 -1
  326. package/dist/server/modules/subscribers/actions/delete-agent.action.d.ts +16 -0
  327. package/dist/server/modules/subscribers/actions/delete-agent.action.js +200 -0
  328. package/dist/server/modules/subscribers/actions/delete-agent.action.js.map +1 -0
  329. package/dist/server/modules/subscribers/actions/family-agent-targets.d.ts +4 -0
  330. package/dist/server/modules/subscribers/actions/family-agent-targets.js +35 -0
  331. package/dist/server/modules/subscribers/actions/family-agent-targets.js.map +1 -0
  332. package/dist/server/modules/subscribers/actions/send-message.action.js +22 -9
  333. package/dist/server/modules/subscribers/actions/send-message.action.js.map +1 -1
  334. package/dist/server/modules/subscribers/actions/terminate-session.action.d.ts +27 -0
  335. package/dist/server/modules/subscribers/actions/terminate-session.action.js +204 -0
  336. package/dist/server/modules/subscribers/actions/terminate-session.action.js.map +1 -0
  337. package/dist/server/modules/subscribers/dtos/subscriber.dto.js +3 -2
  338. package/dist/server/modules/subscribers/dtos/subscriber.dto.js.map +1 -1
  339. package/dist/server/modules/subscribers/events/event-fields-catalog.js +1 -1
  340. package/dist/server/modules/subscribers/events/event-fields-catalog.js.map +1 -1
  341. package/dist/server/modules/subscribers/services/subscriber-executor.service.d.ts +3 -3
  342. package/dist/server/modules/subscribers/services/subscriber-executor.service.js +7 -13
  343. package/dist/server/modules/subscribers/services/subscriber-executor.service.js.map +1 -1
  344. package/dist/server/modules/subscribers/subscribers.module.js +2 -0
  345. package/dist/server/modules/subscribers/subscribers.module.js.map +1 -1
  346. package/dist/server/modules/teams/services/teams.service.d.ts +9 -0
  347. package/dist/server/modules/teams/services/teams.service.js +24 -6
  348. package/dist/server/modules/teams/services/teams.service.js.map +1 -1
  349. package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +6 -4
  350. package/dist/server/modules/terminal/gateways/terminal.gateway.js +13 -12
  351. package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
  352. package/dist/server/modules/terminal/services/pty.service.d.ts +7 -7
  353. package/dist/server/modules/terminal/services/pty.service.js +21 -24
  354. package/dist/server/modules/terminal/services/pty.service.js.map +1 -1
  355. package/dist/server/modules/terminal/services/terminal-key-input/terminal-key-input.facade.js.map +1 -1
  356. package/dist/server/modules/terminal/services/terminal-registry-rehydrator.service.d.ts +3 -3
  357. package/dist/server/modules/terminal/services/terminal-registry-rehydrator.service.js +8 -12
  358. package/dist/server/modules/terminal/services/terminal-registry-rehydrator.service.js.map +1 -1
  359. package/dist/server/modules/terminal/services/terminal-seed.service.d.ts +3 -3
  360. package/dist/server/modules/terminal/services/terminal-seed.service.js +11 -18
  361. package/dist/server/modules/terminal/services/terminal-seed.service.js.map +1 -1
  362. package/dist/server/modules/terminal/services/terminal-viewport/terminal-viewport.facade.js.map +1 -1
  363. package/dist/server/modules/terminal/terminal-key-input.module.js.map +1 -1
  364. package/dist/server/modules/terminal/terminal-viewport.module.js.map +1 -1
  365. package/dist/server/modules/terminal/terminal.module.js +2 -2
  366. package/dist/server/modules/terminal/terminal.module.js.map +1 -1
  367. package/dist/server/modules/workspaces/controllers/workspaces.controller.d.ts +11 -0
  368. package/dist/server/modules/workspaces/controllers/workspaces.controller.js +101 -0
  369. package/dist/server/modules/workspaces/controllers/workspaces.controller.js.map +1 -0
  370. package/dist/server/modules/workspaces/services/workspace-mode-control.d.ts +6 -0
  371. package/dist/server/modules/workspaces/services/workspace-mode-control.js +5 -0
  372. package/dist/server/modules/workspaces/services/workspace-mode-control.js.map +1 -0
  373. package/dist/server/modules/workspaces/services/workspace-mode-coordinator.service.d.ts +23 -0
  374. package/dist/server/modules/workspaces/services/workspace-mode-coordinator.service.js +137 -0
  375. package/dist/server/modules/workspaces/services/workspace-mode-coordinator.service.js.map +1 -0
  376. package/dist/server/modules/workspaces/services/workspaces.service.d.ts +11 -0
  377. package/dist/server/modules/workspaces/services/workspaces.service.js +41 -0
  378. package/dist/server/modules/workspaces/services/workspaces.service.js.map +1 -0
  379. package/dist/server/modules/workspaces/workspaces.module.d.ts +2 -0
  380. package/dist/server/modules/workspaces/workspaces.module.js +26 -0
  381. package/dist/server/modules/workspaces/workspaces.module.js.map +1 -0
  382. package/dist/server/templates/teams-dev.json +214 -15
  383. package/dist/server/tsconfig.tsbuildinfo +1 -1
  384. package/dist/server/ui/assets/{ReviewDetailPage-BXLlZvPO.js → ReviewDetailPage-CNffXKv8.js} +1 -1
  385. package/dist/server/ui/assets/{ReviewsPage-CmFUc6IP.js → ReviewsPage-DAcufZ3r.js} +1 -1
  386. package/dist/server/ui/assets/index-7iCs8Dxj.js +1153 -0
  387. package/dist/server/ui/assets/index-CLXZjL_B.css +32 -0
  388. package/dist/server/ui/assets/{useReviewSubscription-Ch8K_5xz.js → useReviewSubscription-DD29I7uU.js} +1 -1
  389. package/dist/server/ui/index.html +2 -2
  390. package/dist/templates/teams-dev.json +214 -15
  391. package/package.json +16 -2
  392. package/dist/server/modules/mcp/services/handlers/types.d.ts +0 -2
  393. package/dist/server/modules/mcp/services/handlers/types.js.map +0 -1
  394. package/dist/server/modules/skills/services/community-sources.service.d.ts +0 -18
  395. package/dist/server/modules/skills/services/community-sources.service.js +0 -161
  396. package/dist/server/modules/skills/services/community-sources.service.js.map +0 -1
  397. package/dist/server/modules/skills/services/local-sources.service.d.ts +0 -20
  398. package/dist/server/modules/skills/services/local-sources.service.js.map +0 -1
  399. package/dist/server/ui/assets/index-LNBfBNWF.js +0 -1148
  400. package/dist/server/ui/assets/index-NypjSmlZ.css +0 -32
@@ -14,207 +14,21 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.McpService = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
- const storage_interface_1 = require("../../storage/interfaces/storage.interface");
18
- const sessions_service_1 = require("../../sessions/services/sessions.service");
19
- const realtime_broadcaster_port_1 = require("../../realtime/ports/realtime-broadcaster.port");
20
- const terminal_io_service_1 = require("../../terminal/services/terminal-io/terminal-io.service");
21
- const epics_service_1 = require("../../epics/services/epics.service");
22
- const settings_service_1 = require("../../settings/services/settings.service");
23
- const guests_service_1 = require("../../guests/services/guests.service");
24
- const reviews_service_1 = require("../../reviews/services/reviews.service");
25
- const review_suggestion_applier_service_1 = require("../../reviews/services/review-suggestion-applier.service");
26
- const skills_service_1 = require("../../skills/services/skills.service");
27
- const teams_service_1 = require("../../teams/services/teams.service");
28
- const agent_message_delivery_service_1 = require("../../agent-message-delivery/agent-message-delivery.service");
29
- const logger_1 = require("../../../common/logging/logger");
30
- const instructions_resolver_1 = require("./instructions-resolver");
31
17
  const zod_1 = require("zod");
32
- const document_link_resolver_1 = require("./utils/document-link-resolver");
33
- const tool_descriptors_1 = require("../tool-descriptors");
18
+ const logger_1 = require("../../../common/logging/logger");
19
+ const storage_interface_1 = require("../../storage/interfaces/storage.interface");
34
20
  const param_suggestion_1 = require("../utils/param-suggestion");
35
- const session_context_resolver_1 = require("./utils/session-context-resolver");
36
- const resource_resolver_1 = require("./utils/resource-resolver");
21
+ const mcp_tool_binding_registry_1 = require("./mcp-tool-binding.registry");
37
22
  const redact_1 = require("./utils/redact");
38
- const null_adapter_1 = require("./handlers/null-adapter");
39
- const project_communication_service_1 = require("../../project-communication/project-communication.service");
23
+ const resource_resolver_1 = require("./utils/resource-resolver");
40
24
  const logger = (0, logger_1.createLogger)('McpService');
41
- const CHAT_TOOLS = new Set(['devchain_send_message']);
42
- const PROJECT_TOOLS = new Set(['devchain_projects_list']);
43
- const EPIC_TOOLS = new Set([
44
- 'devchain_list_epics',
45
- 'devchain_list_assigned_epics_tasks',
46
- 'devchain_create_epic',
47
- 'devchain_get_epic_by_id',
48
- 'devchain_add_epic_comment',
49
- 'devchain_update_epic',
50
- 'devchain_delete_epic',
51
- ]);
52
- const REVIEW_TOOLS = new Set([
53
- 'devchain_list_reviews',
54
- 'devchain_get_review',
55
- 'devchain_get_review_comments',
56
- 'devchain_reply_comment',
57
- 'devchain_resolve_comment',
58
- 'devchain_apply_suggestion',
59
- ]);
60
- const TEAMS_TOOLS = new Set([
61
- 'devchain_teams_list',
62
- 'devchain_teams_members_list',
63
- 'devchain_teams_configs_list',
64
- 'devchain_teams_create_agent',
65
- 'devchain_teams_delete_agent',
66
- 'devchain_team',
67
- ]);
68
- const RECORD_TOOLS = new Set([
69
- 'devchain_create_record',
70
- 'devchain_update_record',
71
- 'devchain_get_record',
72
- 'devchain_list_records',
73
- 'devchain_add_tags',
74
- 'devchain_remove_tags',
75
- ]);
76
- const DOCUMENT_TOOLS = new Set([
77
- 'devchain_list_documents',
78
- 'devchain_get_document',
79
- 'devchain_create_document',
80
- 'devchain_update_document',
81
- ]);
82
- const PROMPT_TOOLS = new Set(['devchain_list_prompts', 'devchain_get_prompt']);
83
- const SKILL_TOOLS = new Set(['devchain_list_skills', 'devchain_get_skill']);
84
- const SESSION_TOOLS = new Set(['devchain_list_sessions', 'devchain_register_guest']);
85
- const AGENT_TOOLS = new Set([
86
- 'devchain_list_agents',
87
- 'devchain_get_agent_by_name',
88
- 'devchain_list_statuses',
89
- ]);
90
25
  let McpService = class McpService {
91
- storage;
92
- sessionsService;
93
- broadcaster;
94
- epicsService;
95
- settingsService;
96
- guestsService;
97
- skillsService;
98
- reviewsService;
99
- reviewSuggestionApplier;
100
- teamsService;
101
- terminalIO;
102
- agentMessageDelivery;
103
- projectCommunicationService;
104
- instructionsResolver;
105
- featureFlags;
106
- sessionContextResolver;
26
+ bindingRegistry;
107
27
  resourceResolver;
108
- toolHandlers;
109
- toolMetadata;
110
- DEFAULT_INLINE_MAX_BYTES = 64 * 1024;
111
- constructor(storage, sessionsService, broadcaster, epicsService, settingsService, guestsService, skillsService, reviewsService, reviewSuggestionApplier, teamsService, terminalIO, agentMessageDelivery, projectCommunicationService) {
112
- this.storage = storage;
113
- this.sessionsService = sessionsService;
114
- this.broadcaster = broadcaster;
115
- this.epicsService = epicsService;
116
- this.settingsService = settingsService;
117
- this.guestsService = guestsService;
118
- this.skillsService = skillsService;
119
- this.reviewsService = reviewsService;
120
- this.reviewSuggestionApplier = reviewSuggestionApplier;
121
- this.teamsService = teamsService;
122
- this.terminalIO = terminalIO;
123
- this.agentMessageDelivery = agentMessageDelivery;
124
- this.projectCommunicationService = projectCommunicationService;
28
+ constructor(storage, bindingRegistry) {
29
+ this.bindingRegistry = bindingRegistry;
125
30
  logger.info('McpService initialized');
126
- this.featureFlags = this.storage.getFeatureFlags();
127
- this.instructionsResolver = new instructions_resolver_1.InstructionsResolver(this.storage, (document, cache, maxDepth, maxBytes) => (0, document_link_resolver_1.buildInlineResolution)(this.storage, document, cache, maxDepth, maxBytes));
128
- this.sessionContextResolver = new session_context_resolver_1.SessionContextResolver(this.storage, this.sessionsService, this.guestsService, this.terminalIO);
129
- this.resourceResolver = new resource_resolver_1.ResourceResolver(this.storage);
130
- this.toolHandlers = new Map(tool_descriptors_1.allBindings);
131
- this.toolMetadata = new Map(tool_descriptors_1.allMetadata.map((m) => [m.name, m]));
132
- }
133
- buildChatToolContext() {
134
- return {
135
- storage: this.storage,
136
- teamsService: this.teamsService ?? (0, null_adapter_1.createNullAdapter)('TeamsService'),
137
- agentMessageDelivery: this.agentMessageDelivery ??
138
- (0, null_adapter_1.createNullAdapter)('AgentMessageDeliveryService'),
139
- settingsService: this.settingsService ?? (0, null_adapter_1.createNullAdapter)('SettingsService'),
140
- projectCommunicationService: this.projectCommunicationService ??
141
- (0, null_adapter_1.createNullAdapter)('ProjectCommunicationService'),
142
- resolveSessionContext: (sessionId) => this.resolveSessionContext(sessionId),
143
- };
144
- }
145
- buildProjectToolContext() {
146
- return {
147
- projectCommunicationService: this.projectCommunicationService ??
148
- (0, null_adapter_1.createNullAdapter)('ProjectCommunicationService'),
149
- resolveSessionContext: (sessionId) => this.resolveSessionContext(sessionId),
150
- };
151
- }
152
- buildEpicToolContext() {
153
- return {
154
- storage: this.storage,
155
- epicsService: this.epicsService ?? (0, null_adapter_1.createNullAdapter)('EpicsService'),
156
- resolveSessionContext: (sessionId) => this.resolveSessionContext(sessionId),
157
- };
158
- }
159
- buildReviewToolContext() {
160
- return {
161
- storage: this.storage,
162
- reviewsService: this.reviewsService ?? (0, null_adapter_1.createNullAdapter)('ReviewsService'),
163
- reviewSuggestionApplier: this.reviewSuggestionApplier ??
164
- (0, null_adapter_1.createNullAdapter)('ReviewSuggestionApplier'),
165
- resolveSessionContext: (sessionId) => this.resolveSessionContext(sessionId),
166
- };
167
- }
168
- buildTeamsToolContext() {
169
- return {
170
- storage: this.storage,
171
- teamsService: this.teamsService ?? (0, null_adapter_1.createNullAdapter)('TeamsService'),
172
- resolveSessionContext: (sessionId) => this.resolveSessionContext(sessionId),
173
- };
174
- }
175
- buildRecordToolContext() {
176
- return {
177
- storage: this.storage,
178
- };
179
- }
180
- buildDocumentToolContext() {
181
- return {
182
- storage: this.storage,
183
- defaultInlineMaxBytes: this.DEFAULT_INLINE_MAX_BYTES,
184
- resolveSessionContext: (sessionId) => this.resolveSessionContext(sessionId),
185
- };
186
- }
187
- buildPromptToolContext() {
188
- return {
189
- storage: this.storage,
190
- teamsService: this.teamsService ?? (0, null_adapter_1.createNullAdapter)('TeamsService'),
191
- resolveSessionContext: (sessionId) => this.resolveSessionContext(sessionId),
192
- };
193
- }
194
- buildSkillToolContext() {
195
- return {
196
- skillsService: this.skillsService ?? (0, null_adapter_1.createNullAdapter)('SkillsService'),
197
- resolveSessionContext: (sessionId) => this.resolveSessionContext(sessionId),
198
- };
199
- }
200
- buildSessionToolContext() {
201
- return {
202
- storage: this.storage,
203
- sessionsService: this.sessionsService ?? (0, null_adapter_1.createNullAdapter)('SessionsService'),
204
- guestsService: this.guestsService ?? (0, null_adapter_1.createNullAdapter)('GuestsService'),
205
- };
206
- }
207
- buildAgentToolContext() {
208
- return {
209
- storage: this.storage,
210
- sessionsService: this.sessionsService ?? (0, null_adapter_1.createNullAdapter)('SessionsService'),
211
- terminalIO: this.terminalIO ?? (0, null_adapter_1.createNullAdapter)('TerminalIOService'),
212
- instructionsResolver: this.instructionsResolver ??
213
- (0, null_adapter_1.createNullAdapter)('InstructionsResolver'),
214
- teamsService: this.teamsService ?? (0, null_adapter_1.createNullAdapter)('TeamsService'),
215
- defaultInlineMaxBytes: this.DEFAULT_INLINE_MAX_BYTES,
216
- resolveSessionContext: (sessionId) => this.resolveSessionContext(sessionId),
217
- };
31
+ this.resourceResolver = new resource_resolver_1.ResourceResolver(storage);
218
32
  }
219
33
  async handleToolCall(tool, params) {
220
34
  const normalizedParams = params ?? {};
@@ -224,8 +38,8 @@ let McpService = class McpService {
224
38
  if (normalizedTool === 'notifications_initialized') {
225
39
  return { success: true, data: { acknowledged: true } };
226
40
  }
227
- const handler = this.toolHandlers.get(normalizedTool);
228
- if (!handler) {
41
+ const binding = this.bindingRegistry.resolve(normalizedTool);
42
+ if (!binding) {
229
43
  logger.warn({ tool: normalizedTool }, 'Unknown MCP tool');
230
44
  return {
231
45
  success: false,
@@ -235,39 +49,10 @@ let McpService = class McpService {
235
49
  },
236
50
  };
237
51
  }
238
- const metadata = this.toolMetadata.get(normalizedTool);
239
- const parsed = metadata?.paramsSchema
240
- ? metadata.paramsSchema.parse(normalizedParams)
52
+ const parsed = binding.paramsSchema
53
+ ? binding.paramsSchema.parse(normalizedParams)
241
54
  : normalizedParams;
242
- return await handler(CHAT_TOOLS.has(normalizedTool)
243
- ? this.buildChatToolContext()
244
- : PROJECT_TOOLS.has(normalizedTool)
245
- ? this.buildProjectToolContext()
246
- : EPIC_TOOLS.has(normalizedTool)
247
- ? this.buildEpicToolContext()
248
- : REVIEW_TOOLS.has(normalizedTool)
249
- ? this.buildReviewToolContext()
250
- : TEAMS_TOOLS.has(normalizedTool)
251
- ? this.buildTeamsToolContext()
252
- : RECORD_TOOLS.has(normalizedTool)
253
- ? this.buildRecordToolContext()
254
- : DOCUMENT_TOOLS.has(normalizedTool)
255
- ? this.buildDocumentToolContext()
256
- : PROMPT_TOOLS.has(normalizedTool)
257
- ? this.buildPromptToolContext()
258
- : SKILL_TOOLS.has(normalizedTool)
259
- ? this.buildSkillToolContext()
260
- : SESSION_TOOLS.has(normalizedTool)
261
- ? this.buildSessionToolContext()
262
- : AGENT_TOOLS.has(normalizedTool)
263
- ? this.buildAgentToolContext()
264
- : {
265
- success: false,
266
- error: {
267
- code: 'UNKNOWN_TOOL',
268
- message: `Unknown tool: ${tool}`,
269
- },
270
- }, parsed);
55
+ return await binding.invoke(parsed);
271
56
  }
272
57
  catch (error) {
273
58
  logger.error({ tool, error }, 'MCP tool call failed');
@@ -276,8 +61,7 @@ let McpService = class McpService {
276
61
  for (const issue of error.issues) {
277
62
  if (issue.code !== 'unrecognized_keys')
278
63
  continue;
279
- const unknownKeys = issue.keys;
280
- for (const key of unknownKeys) {
64
+ for (const key of issue.keys) {
281
65
  const suggestion = (0, param_suggestion_1.suggestNestedPath)(key, normalizedTool);
282
66
  if (suggestion)
283
67
  suggestions.push(suggestion);
@@ -320,45 +104,11 @@ let McpService = class McpService {
320
104
  };
321
105
  }
322
106
  }
323
- async resolveSessionContext(sessionId) {
324
- return this.sessionContextResolver.resolve(sessionId);
325
- }
326
107
  };
327
108
  exports.McpService = McpService;
328
109
  exports.McpService = McpService = __decorate([
329
110
  (0, common_1.Injectable)(),
330
111
  __param(0, (0, common_1.Inject)(storage_interface_1.STORAGE_SERVICE)),
331
- __param(1, (0, common_1.Optional)()),
332
- __param(1, (0, common_1.Inject)((0, common_1.forwardRef)(() => sessions_service_1.SessionsService))),
333
- __param(2, (0, common_1.Optional)()),
334
- __param(2, (0, common_1.Inject)(realtime_broadcaster_port_1.REALTIME_BROADCASTER)),
335
- __param(3, (0, common_1.Optional)()),
336
- __param(3, (0, common_1.Inject)((0, common_1.forwardRef)(() => epics_service_1.EpicsService))),
337
- __param(4, (0, common_1.Optional)()),
338
- __param(4, (0, common_1.Inject)((0, common_1.forwardRef)(() => settings_service_1.SettingsService))),
339
- __param(5, (0, common_1.Optional)()),
340
- __param(5, (0, common_1.Inject)((0, common_1.forwardRef)(() => guests_service_1.GuestsService))),
341
- __param(6, (0, common_1.Optional)()),
342
- __param(6, (0, common_1.Inject)((0, common_1.forwardRef)(() => skills_service_1.SkillsService))),
343
- __param(7, (0, common_1.Optional)()),
344
- __param(7, (0, common_1.Inject)((0, common_1.forwardRef)(() => reviews_service_1.ReviewsService))),
345
- __param(8, (0, common_1.Optional)()),
346
- __param(8, (0, common_1.Inject)((0, common_1.forwardRef)(() => review_suggestion_applier_service_1.ReviewSuggestionApplier))),
347
- __param(9, (0, common_1.Optional)()),
348
- __param(9, (0, common_1.Inject)((0, common_1.forwardRef)(() => teams_service_1.TeamsService))),
349
- __param(10, (0, common_1.Optional)()),
350
- __param(11, (0, common_1.Optional)()),
351
- __param(11, (0, common_1.Inject)((0, common_1.forwardRef)(() => agent_message_delivery_service_1.AgentMessageDeliveryService))),
352
- __param(12, (0, common_1.Optional)()),
353
- __metadata("design:paramtypes", [Object, sessions_service_1.SessionsService, Object, epics_service_1.EpicsService,
354
- settings_service_1.SettingsService,
355
- guests_service_1.GuestsService,
356
- skills_service_1.SkillsService,
357
- reviews_service_1.ReviewsService,
358
- review_suggestion_applier_service_1.ReviewSuggestionApplier,
359
- teams_service_1.TeamsService,
360
- terminal_io_service_1.TerminalIOService,
361
- agent_message_delivery_service_1.AgentMessageDeliveryService,
362
- project_communication_service_1.ProjectCommunicationService])
112
+ __metadata("design:paramtypes", [Object, mcp_tool_binding_registry_1.McpToolBindingRegistry])
363
113
  ], McpService);
364
114
  //# sourceMappingURL=mcp.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.service.js","sourceRoot":"","sources":["../../../../src/modules/mcp/services/mcp.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.service.js","sourceRoot":"","sources":["../../../../src/modules/mcp/services/mcp.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { StorageService } from '../../../storage/interfaces/storage.interface';
2
+ import type { McpBindingRuntime } from '../../tool-descriptors/binding-types';
3
+ import { McpToolBindingRegistry } from '../mcp-tool-binding.registry';
4
+ export type McpToolBindingRegistryFixtureDependencies = Partial<Pick<McpBindingRuntime, 'sessionsService' | 'epicsService' | 'settingsService' | 'guestsService' | 'skillsService' | 'reviewsService' | 'reviewSuggestionApplier' | 'teamsService' | 'terminalIO' | 'agentMessageDelivery' | 'projectCommunicationService'>>;
5
+ export declare function createMcpToolBindingRegistryFixture(storage: StorageService, dependencies?: McpToolBindingRegistryFixtureDependencies): McpToolBindingRegistry;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createMcpToolBindingRegistryFixture = createMcpToolBindingRegistryFixture;
4
+ const mcp_tool_binding_registry_1 = require("../mcp-tool-binding.registry");
5
+ function createMcpToolBindingRegistryFixture(storage, dependencies = {}) {
6
+ return new mcp_tool_binding_registry_1.McpToolBindingRegistry(storage, dependencies.sessionsService, dependencies.epicsService, dependencies.settingsService, dependencies.guestsService, dependencies.skillsService, dependencies.reviewsService, dependencies.reviewSuggestionApplier, dependencies.teamsService, dependencies.terminalIO, dependencies.agentMessageDelivery, dependencies.projectCommunicationService);
7
+ }
8
+ //# sourceMappingURL=mcp-tool-binding-registry.fixture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tool-binding-registry.fixture.js","sourceRoot":"","sources":["../../../../../src/modules/mcp/services/testing/mcp-tool-binding-registry.fixture.ts"],"names":[],"mappings":";;AAqBA,kFAkBC;AArCD,4EAAsE;AAmBtE,SAAgB,mCAAmC,CACjD,OAAuB,EACvB,eAA0D,EAAE;IAE5D,OAAO,IAAI,kDAAsB,CAC/B,OAAO,EACP,YAAY,CAAC,eAAe,EAC5B,YAAY,CAAC,YAAY,EACzB,YAAY,CAAC,eAAe,EAC5B,YAAY,CAAC,aAAa,EAC1B,YAAY,CAAC,aAAa,EAC1B,YAAY,CAAC,cAAc,EAC3B,YAAY,CAAC,uBAAuB,EACpC,YAAY,CAAC,YAAY,EACzB,YAAY,CAAC,UAAU,EACvB,YAAY,CAAC,oBAAoB,EACjC,YAAY,CAAC,2BAA2B,CACzC,CAAC;AACJ,CAAC"}
@@ -12,24 +12,17 @@ const mcp_service_1 = require("./services/mcp.service");
12
12
  const mcp_server_service_1 = require("./services/mcp-server.service");
13
13
  const mcp_gateway_1 = require("./gateways/mcp.gateway");
14
14
  const storage_module_1 = require("../storage/storage.module");
15
- const realtime_broadcaster_port_1 = require("../realtime/ports/realtime-broadcaster.port");
16
- const noop_realtime_broadcast_adapter_1 = require("../realtime/services/noop-realtime-broadcast.adapter");
17
- const realtime_broadcast_module_1 = require("../realtime/realtime-broadcast.module");
18
15
  const mcp_http_controller_1 = require("./controllers/mcp-http.controller");
19
16
  const mcp_sdk_controller_1 = require("./controllers/mcp-sdk.controller");
17
+ const mcp_tool_binding_registry_1 = require("./services/mcp-tool-binding.registry");
20
18
  let StandaloneMcpModule = class StandaloneMcpModule {
21
19
  };
22
20
  exports.StandaloneMcpModule = StandaloneMcpModule;
23
21
  exports.StandaloneMcpModule = StandaloneMcpModule = __decorate([
24
22
  (0, common_1.Module)({
25
- imports: [storage_module_1.StorageModule, realtime_broadcast_module_1.RealtimeBroadcastModule],
23
+ imports: [storage_module_1.StorageModule],
26
24
  controllers: [mcp_http_controller_1.McpHttpController, mcp_sdk_controller_1.McpSdkController],
27
- providers: [
28
- mcp_service_1.McpService,
29
- mcp_server_service_1.McpServerService,
30
- mcp_gateway_1.McpGateway,
31
- { provide: realtime_broadcaster_port_1.REALTIME_BROADCASTER, useClass: noop_realtime_broadcast_adapter_1.NoopRealtimeBroadcastAdapter },
32
- ],
25
+ providers: [mcp_tool_binding_registry_1.McpToolBindingRegistry, mcp_service_1.McpService, mcp_server_service_1.McpServerService, mcp_gateway_1.McpGateway],
33
26
  exports: [mcp_service_1.McpService],
34
27
  })
35
28
  ], StandaloneMcpModule);
@@ -1 +1 @@
1
- {"version":3,"file":"standalone-mcp.module.js","sourceRoot":"","sources":["../../../src/modules/mcp/standalone-mcp.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,wDAAoD;AACpD,sEAAiE;AACjE,wDAAoD;AACpD,8DAA0D;AAC1D,2FAAmF;AACnF,0GAAoG;AACpG,qFAAgF;AAChF,2EAAsE;AACtE,yEAAoE;AAa7D,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;CAAG,CAAA;AAAtB,kDAAmB;8BAAnB,mBAAmB;IAX/B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,8BAAa,EAAE,mDAAuB,CAAC;QACjD,WAAW,EAAE,CAAC,uCAAiB,EAAE,qCAAgB,CAAC;QAClD,SAAS,EAAE;YACT,wBAAU;YACV,qCAAgB;YAChB,wBAAU;YACV,EAAE,OAAO,EAAE,gDAAoB,EAAE,QAAQ,EAAE,8DAA4B,EAAE;SAC1E;QACD,OAAO,EAAE,CAAC,wBAAU,CAAC;KACtB,CAAC;GACW,mBAAmB,CAAG"}
1
+ {"version":3,"file":"standalone-mcp.module.js","sourceRoot":"","sources":["../../../src/modules/mcp/standalone-mcp.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,wDAAoD;AACpD,sEAAiE;AACjE,wDAAoD;AACpD,8DAA0D;AAC1D,2EAAsE;AACtE,yEAAoE;AACpE,oFAA8E;AAQvE,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;CAAG,CAAA;AAAtB,kDAAmB;8BAAnB,mBAAmB;IAN/B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,8BAAa,CAAC;QACxB,WAAW,EAAE,CAAC,uCAAiB,EAAE,qCAAgB,CAAC;QAClD,SAAS,EAAE,CAAC,kDAAsB,EAAE,wBAAU,EAAE,qCAAgB,EAAE,wBAAU,CAAC;QAC7E,OAAO,EAAE,CAAC,wBAAU,CAAC;KACtB,CAAC;GACW,mBAAmB,CAAG"}
@@ -1,2 +1 @@
1
- import type { ToolBindingEntry } from './types';
2
- export declare const agentBindings: ToolBindingEntry[];
1
+ export declare const agentBindings: readonly import("./binding-types").McpToolBindingDefinition[];
@@ -1,10 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.agentBindings = void 0;
4
+ const null_adapter_1 = require("../services/handlers/null-adapter");
4
5
  const agent_tools_1 = require("../services/handlers/agent-tools");
5
- exports.agentBindings = [
6
+ const binding_types_1 = require("./binding-types");
7
+ function createAgentContext(runtime) {
8
+ return {
9
+ storage: runtime.storage,
10
+ sessionsService: runtime.sessionsService ?? (0, null_adapter_1.createNullAdapter)('SessionsService'),
11
+ terminalIO: runtime.terminalIO ?? (0, null_adapter_1.createNullAdapter)('TerminalIOService'),
12
+ instructionsResolver: runtime.instructionsResolver,
13
+ teamsService: runtime.teamsService ?? (0, null_adapter_1.createNullAdapter)('TeamsService'),
14
+ defaultInlineMaxBytes: runtime.defaultInlineMaxBytes,
15
+ resolveSessionContext: runtime.resolveSessionContext,
16
+ };
17
+ }
18
+ exports.agentBindings = (0, binding_types_1.defineToolGroup)(createAgentContext, [
6
19
  ['devchain_list_agents', agent_tools_1.handleListAgents],
7
20
  ['devchain_get_agent_by_name', agent_tools_1.handleGetAgentByName],
8
21
  ['devchain_list_statuses', agent_tools_1.handleListStatuses],
9
- ];
22
+ ]);
10
23
  //# sourceMappingURL=agent.bindings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.bindings.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tool-descriptors/agent.bindings.ts"],"names":[],"mappings":";;;AACA,kEAI0C;AAE7B,QAAA,aAAa,GAAuB;IAC/C,CAAC,sBAAsB,EAAE,8BAAkD,CAAC;IAC5E,CAAC,4BAA4B,EAAE,kCAAsD,CAAC;IACtF,CAAC,wBAAwB,EAAE,gCAAoD,CAAC;CACjF,CAAC"}
1
+ {"version":3,"file":"agent.bindings.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tool-descriptors/agent.bindings.ts"],"names":[],"mappings":";;;AAAA,oEAAsE;AAEtE,kEAI0C;AAI1C,mDAA0E;AAE1E,SAAS,kBAAkB,CAAC,OAA0B;IACpD,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,eAAe,EACb,OAAO,CAAC,eAAe,IAAI,IAAA,gCAAiB,EAAkB,iBAAiB,CAAC;QAClF,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAA,gCAAiB,EAAoB,mBAAmB,CAAC;QAC3F,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;QAClD,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAA,gCAAiB,EAAe,cAAc,CAAC;QACrF,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;KACrD,CAAC;AACJ,CAAC;AAEY,QAAA,aAAa,GAAG,IAAA,+BAAe,EAAmB,kBAAkB,EAAE;IACjF,CAAC,sBAAsB,EAAE,8BAAgB,CAAC;IAC1C,CAAC,4BAA4B,EAAE,kCAAoB,CAAC;IACpD,CAAC,wBAAwB,EAAE,gCAAkB,CAAC;CAC/C,CAAC,CAAC"}
@@ -0,0 +1,38 @@
1
+ import type { McpResponse } from '../dtos/mcp.dto';
2
+ import type { AgentMessageDeliveryService } from '../../agent-message-delivery/agent-message-delivery.service';
3
+ import type { EpicsService } from '../../epics/services/epics.service';
4
+ import type { GuestsService } from '../../guests/services/guests.service';
5
+ import type { ProjectCommunicationService } from '../../project-communication/project-communication.service';
6
+ import type { ReviewsService } from '../../reviews/services/reviews.service';
7
+ import type { ReviewSuggestionApplier } from '../../reviews/services/review-suggestion-applier.service';
8
+ import type { SessionsService } from '../../sessions/services/sessions.service';
9
+ import type { SettingsService } from '../../settings/services/settings.service';
10
+ import type { SkillsService } from '../../skills/services/skills.service';
11
+ import type { StorageService } from '../../storage/interfaces/storage.interface';
12
+ import type { TeamsService } from '../../teams/services/teams.service';
13
+ import type { TerminalIOService } from '../../terminal/services/terminal-io/terminal-io.service';
14
+ import type { InstructionsResolver } from '../services/instructions-resolver';
15
+ export type ContextualMcpToolHandler<TContext> = (context: TContext, params: unknown) => Promise<McpResponse>;
16
+ export type BoundMcpToolHandler = (params: unknown) => Promise<McpResponse>;
17
+ export interface McpBindingRuntime {
18
+ readonly storage: StorageService;
19
+ readonly sessionsService?: SessionsService;
20
+ readonly epicsService?: EpicsService;
21
+ readonly settingsService?: SettingsService;
22
+ readonly guestsService?: GuestsService;
23
+ readonly skillsService?: SkillsService;
24
+ readonly reviewsService?: ReviewsService;
25
+ readonly reviewSuggestionApplier?: ReviewSuggestionApplier;
26
+ readonly teamsService?: TeamsService;
27
+ readonly terminalIO?: TerminalIOService;
28
+ readonly agentMessageDelivery?: AgentMessageDeliveryService;
29
+ readonly projectCommunicationService?: ProjectCommunicationService;
30
+ readonly instructionsResolver: InstructionsResolver;
31
+ readonly defaultInlineMaxBytes: number;
32
+ readonly resolveSessionContext: (sessionId: string) => Promise<McpResponse>;
33
+ }
34
+ export interface McpToolBindingDefinition {
35
+ readonly name: string;
36
+ readonly bind: (runtime: McpBindingRuntime) => BoundMcpToolHandler;
37
+ }
38
+ export declare function defineToolGroup<TContext>(createContext: (runtime: McpBindingRuntime) => TContext, entries: readonly (readonly [string, ContextualMcpToolHandler<TContext>])[]): readonly McpToolBindingDefinition[];
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defineToolGroup = defineToolGroup;
4
+ function defineToolGroup(createContext, entries) {
5
+ return Object.freeze(entries.map(([name, handler]) => Object.freeze({
6
+ name,
7
+ bind: (runtime) => async (params) => handler(createContext(runtime), params),
8
+ })));
9
+ }
10
+ //# sourceMappingURL=binding-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binding-types.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tool-descriptors/binding-types.ts"],"names":[],"mappings":";;AA6CA,0CAeC;AAfD,SAAgB,eAAe,CAC7B,aAAuD,EACvD,OAA2E;IAE3E,OAAO,MAAM,CAAC,MAAM,CAClB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAC9B,MAAM,CAAC,MAAM,CAAC;QACZ,IAAI;QACJ,IAAI,EACF,CAAC,OAA0B,EAAuB,EAAE,CACpD,KAAK,EAAE,MAAe,EAAwB,EAAE,CAC9C,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;KAC5C,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}
@@ -1,2 +1 @@
1
- import type { ToolBindingEntry } from './types';
2
- export declare const chatBindings: ToolBindingEntry[];
1
+ export declare const chatBindings: readonly import("./binding-types").McpToolBindingDefinition[];
@@ -2,7 +2,21 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.chatBindings = void 0;
4
4
  const chat_tools_1 = require("../services/handlers/chat-tools");
5
- exports.chatBindings = [
5
+ const null_adapter_1 = require("../services/handlers/null-adapter");
6
+ const binding_types_1 = require("./binding-types");
7
+ function createChatContext(runtime) {
8
+ return {
9
+ storage: runtime.storage,
10
+ teamsService: runtime.teamsService ?? (0, null_adapter_1.createNullAdapter)('TeamsService'),
11
+ agentMessageDelivery: runtime.agentMessageDelivery ??
12
+ (0, null_adapter_1.createNullAdapter)('AgentMessageDeliveryService'),
13
+ settingsService: runtime.settingsService ?? (0, null_adapter_1.createNullAdapter)('SettingsService'),
14
+ projectCommunicationService: runtime.projectCommunicationService ??
15
+ (0, null_adapter_1.createNullAdapter)('ProjectCommunicationService'),
16
+ resolveSessionContext: runtime.resolveSessionContext,
17
+ };
18
+ }
19
+ exports.chatBindings = (0, binding_types_1.defineToolGroup)(createChatContext, [
6
20
  ['devchain_send_message', chat_tools_1.handleSendMessage],
7
- ];
21
+ ]);
8
22
  //# sourceMappingURL=chat.bindings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat.bindings.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tool-descriptors/chat.bindings.ts"],"names":[],"mappings":";;;AACA,gEAAoE;AAEvD,QAAA,YAAY,GAAuB;IAC9C,CAAC,uBAAuB,EAAE,8BAAmD,CAAC;CAC/E,CAAC"}
1
+ {"version":3,"file":"chat.bindings.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tool-descriptors/chat.bindings.ts"],"names":[],"mappings":";;;AAKA,gEAAoE;AACpE,oEAAsE;AACtE,mDAA0E;AAE1E,SAAS,iBAAiB,CAAC,OAA0B;IACnD,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAA,gCAAiB,EAAe,cAAc,CAAC;QACrF,oBAAoB,EAClB,OAAO,CAAC,oBAAoB;YAC5B,IAAA,gCAAiB,EAA8B,6BAA6B,CAAC;QAC/E,eAAe,EACb,OAAO,CAAC,eAAe,IAAI,IAAA,gCAAiB,EAAkB,iBAAiB,CAAC;QAClF,2BAA2B,EACzB,OAAO,CAAC,2BAA2B;YACnC,IAAA,gCAAiB,EAA8B,6BAA6B,CAAC;QAC/E,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;KACrD,CAAC;AACJ,CAAC;AAEY,QAAA,YAAY,GAAG,IAAA,+BAAe,EAAkB,iBAAiB,EAAE;IAC9E,CAAC,uBAAuB,EAAE,8BAAiB,CAAC;CAC7C,CAAC,CAAC"}
@@ -1,2 +1 @@
1
- import type { ToolBindingEntry } from './types';
2
- export declare const documentBindings: ToolBindingEntry[];
1
+ export declare const documentBindings: readonly import("./binding-types").McpToolBindingDefinition[];
@@ -2,10 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.documentBindings = void 0;
4
4
  const document_tools_1 = require("../services/handlers/document-tools");
5
- exports.documentBindings = [
5
+ const binding_types_1 = require("./binding-types");
6
+ function createDocumentContext(runtime) {
7
+ return {
8
+ storage: runtime.storage,
9
+ defaultInlineMaxBytes: runtime.defaultInlineMaxBytes,
10
+ resolveSessionContext: runtime.resolveSessionContext,
11
+ };
12
+ }
13
+ exports.documentBindings = (0, binding_types_1.defineToolGroup)(createDocumentContext, [
6
14
  ['devchain_list_documents', document_tools_1.handleListDocuments],
7
15
  ['devchain_get_document', document_tools_1.handleGetDocument],
8
16
  ['devchain_create_document', document_tools_1.handleCreateDocument],
9
17
  ['devchain_update_document', document_tools_1.handleUpdateDocument],
10
- ];
18
+ ]);
11
19
  //# sourceMappingURL=document.bindings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"document.bindings.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tool-descriptors/document.bindings.ts"],"names":[],"mappings":";;;AACA,wEAK6C;AAEhC,QAAA,gBAAgB,GAAuB;IAClD,CAAC,yBAAyB,EAAE,oCAAqD,CAAC;IAClF,CAAC,uBAAuB,EAAE,kCAAmD,CAAC;IAC9E,CAAC,0BAA0B,EAAE,qCAAsD,CAAC;IACpF,CAAC,0BAA0B,EAAE,qCAAsD,CAAC;CACrF,CAAC"}
1
+ {"version":3,"file":"document.bindings.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tool-descriptors/document.bindings.ts"],"names":[],"mappings":";;;AACA,wEAK6C;AAC7C,mDAA0E;AAE1E,SAAS,qBAAqB,CAAC,OAA0B;IACvD,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;KACrD,CAAC;AACJ,CAAC;AAEY,QAAA,gBAAgB,GAAG,IAAA,+BAAe,EAAsB,qBAAqB,EAAE;IAC1F,CAAC,yBAAyB,EAAE,oCAAmB,CAAC;IAChD,CAAC,uBAAuB,EAAE,kCAAiB,CAAC;IAC5C,CAAC,0BAA0B,EAAE,qCAAoB,CAAC;IAClD,CAAC,0BAA0B,EAAE,qCAAoB,CAAC;CACnD,CAAC,CAAC"}
@@ -1,2 +1 @@
1
- import type { ToolBindingEntry } from './types';
2
- export declare const epicBindings: ToolBindingEntry[];
1
+ export declare const epicBindings: readonly import("./binding-types").McpToolBindingDefinition[];
@@ -2,16 +2,22 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.epicBindings = void 0;
4
4
  const epic_tools_1 = require("../services/handlers/epic-tools");
5
- exports.epicBindings = [
5
+ const null_adapter_1 = require("../services/handlers/null-adapter");
6
+ const binding_types_1 = require("./binding-types");
7
+ function createEpicContext(runtime) {
8
+ return {
9
+ storage: runtime.storage,
10
+ epicsService: runtime.epicsService ?? (0, null_adapter_1.createNullAdapter)('EpicsService'),
11
+ resolveSessionContext: runtime.resolveSessionContext,
12
+ };
13
+ }
14
+ exports.epicBindings = (0, binding_types_1.defineToolGroup)(createEpicContext, [
6
15
  ['devchain_list_epics', epic_tools_1.handleListEpics],
7
- [
8
- 'devchain_list_assigned_epics_tasks',
9
- epic_tools_1.handleListAssignedEpicsTasks,
10
- ],
16
+ ['devchain_list_assigned_epics_tasks', epic_tools_1.handleListAssignedEpicsTasks],
11
17
  ['devchain_create_epic', epic_tools_1.handleCreateEpic],
12
18
  ['devchain_get_epic_by_id', epic_tools_1.handleGetEpicById],
13
19
  ['devchain_add_epic_comment', epic_tools_1.handleAddEpicComment],
14
20
  ['devchain_update_epic', epic_tools_1.handleUpdateEpic],
15
21
  ['devchain_delete_epic', epic_tools_1.handleDeleteEpic],
16
- ];
22
+ ]);
17
23
  //# sourceMappingURL=epic.bindings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"epic.bindings.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tool-descriptors/epic.bindings.ts"],"names":[],"mappings":";;;AACA,gEAQyC;AAE5B,QAAA,YAAY,GAAuB;IAC9C,CAAC,qBAAqB,EAAE,4BAAiD,CAAC;IAC1E;QACE,oCAAoC;QACpC,yCAA8D;KAC/D;IACD,CAAC,sBAAsB,EAAE,6BAAkD,CAAC;IAC5E,CAAC,yBAAyB,EAAE,8BAAmD,CAAC;IAChF,CAAC,2BAA2B,EAAE,iCAAsD,CAAC;IACrF,CAAC,sBAAsB,EAAE,6BAAkD,CAAC;IAC5E,CAAC,sBAAsB,EAAE,6BAAkD,CAAC;CAC7E,CAAC"}
1
+ {"version":3,"file":"epic.bindings.js","sourceRoot":"","sources":["../../../../src/modules/mcp/tool-descriptors/epic.bindings.ts"],"names":[],"mappings":";;;AAEA,gEAQyC;AACzC,oEAAsE;AACtE,mDAA0E;AAE1E,SAAS,iBAAiB,CAAC,OAA0B;IACnD,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAA,gCAAiB,EAAe,cAAc,CAAC;QACrF,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;KACrD,CAAC;AACJ,CAAC;AAEY,QAAA,YAAY,GAAG,IAAA,+BAAe,EAAkB,iBAAiB,EAAE;IAC9E,CAAC,qBAAqB,EAAE,4BAAe,CAAC;IACxC,CAAC,oCAAoC,EAAE,yCAA4B,CAAC;IACpE,CAAC,sBAAsB,EAAE,6BAAgB,CAAC;IAC1C,CAAC,yBAAyB,EAAE,8BAAiB,CAAC;IAC9C,CAAC,2BAA2B,EAAE,iCAAoB,CAAC;IACnD,CAAC,sBAAsB,EAAE,6BAAgB,CAAC;IAC1C,CAAC,sBAAsB,EAAE,6BAAgB,CAAC;CAC3C,CAAC,CAAC"}