@sentropic/h2a 0.85.24 → 0.86.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 (287) hide show
  1. package/.claude-plugin/plugin.json +2 -3
  2. package/.codex-plugin/plugin.json +1 -1
  3. package/dist/bin.js +51 -2
  4. package/dist/bin.js.map +1 -1
  5. package/dist/cli-command-map.d.ts +119 -0
  6. package/dist/cli-command-map.d.ts.map +1 -0
  7. package/dist/cli-command-map.js +396 -0
  8. package/dist/cli-command-map.js.map +1 -0
  9. package/dist/cli-contract.d.ts.map +1 -1
  10. package/dist/cli-contract.js +38 -0
  11. package/dist/cli-contract.js.map +1 -1
  12. package/dist/cli.d.ts +25 -1
  13. package/dist/cli.d.ts.map +1 -1
  14. package/dist/cli.js +356 -7
  15. package/dist/cli.js.map +1 -1
  16. package/dist/identity.d.ts +37 -3
  17. package/dist/identity.d.ts.map +1 -1
  18. package/dist/identity.js +0 -0
  19. package/dist/identity.js.map +1 -1
  20. package/dist/index.d.ts +7 -2
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +9 -2
  23. package/dist/index.js.map +1 -1
  24. package/dist/runtime/enrollment/ceremony.d.ts +542 -0
  25. package/dist/runtime/enrollment/ceremony.d.ts.map +1 -0
  26. package/dist/runtime/enrollment/ceremony.js +777 -0
  27. package/dist/runtime/enrollment/ceremony.js.map +1 -0
  28. package/dist/runtime/enrollment/index.d.ts +16 -0
  29. package/dist/runtime/enrollment/index.d.ts.map +1 -0
  30. package/dist/runtime/enrollment/index.js +16 -0
  31. package/dist/runtime/enrollment/index.js.map +1 -0
  32. package/dist/runtime/feed/descriptors.d.ts +261 -0
  33. package/dist/runtime/feed/descriptors.d.ts.map +1 -0
  34. package/dist/runtime/feed/descriptors.js +425 -0
  35. package/dist/runtime/feed/descriptors.js.map +1 -0
  36. package/dist/runtime/feed/index.d.ts +12 -0
  37. package/dist/runtime/feed/index.d.ts.map +1 -0
  38. package/dist/runtime/feed/index.js +12 -0
  39. package/dist/runtime/feed/index.js.map +1 -0
  40. package/dist/runtime/identity/index.d.ts +3 -3
  41. package/dist/runtime/identity/index.d.ts.map +1 -1
  42. package/dist/runtime/identity/index.js +2 -2
  43. package/dist/runtime/identity/index.js.map +1 -1
  44. package/dist/runtime/identity/live.d.ts +68 -0
  45. package/dist/runtime/identity/live.d.ts.map +1 -1
  46. package/dist/runtime/identity/live.js +78 -2
  47. package/dist/runtime/identity/live.js.map +1 -1
  48. package/dist/runtime/identity/readers.d.ts +89 -5
  49. package/dist/runtime/identity/readers.d.ts.map +1 -1
  50. package/dist/runtime/identity/readers.js +242 -33
  51. package/dist/runtime/identity/readers.js.map +1 -1
  52. package/dist/runtime/local-files/presence.d.ts +16 -1
  53. package/dist/runtime/local-files/presence.d.ts.map +1 -1
  54. package/dist/runtime/local-files/presence.js +32 -20
  55. package/dist/runtime/local-files/presence.js.map +1 -1
  56. package/dist/runtime/loop/index.d.ts +5 -0
  57. package/dist/runtime/loop/index.d.ts.map +1 -1
  58. package/dist/runtime/loop/index.js +48 -5
  59. package/dist/runtime/loop/index.js.map +1 -1
  60. package/dist/runtime/mcp/agent-launch.d.ts +15 -1
  61. package/dist/runtime/mcp/agent-launch.d.ts.map +1 -1
  62. package/dist/runtime/mcp/agent-launch.js +45 -4
  63. package/dist/runtime/mcp/agent-launch.js.map +1 -1
  64. package/dist/runtime/mcp/index.d.ts +1 -1
  65. package/dist/runtime/mcp/index.d.ts.map +1 -1
  66. package/dist/runtime/mcp/index.js +1 -1
  67. package/dist/runtime/mcp/index.js.map +1 -1
  68. package/dist/runtime/mcp/server.d.ts +3 -1
  69. package/dist/runtime/mcp/server.d.ts.map +1 -1
  70. package/dist/runtime/mcp/server.js +7 -2
  71. package/dist/runtime/mcp/server.js.map +1 -1
  72. package/dist/runtime/mcp/sessions.d.ts +19 -0
  73. package/dist/runtime/mcp/sessions.d.ts.map +1 -1
  74. package/dist/runtime/mcp/sessions.js +44 -2
  75. package/dist/runtime/mcp/sessions.js.map +1 -1
  76. package/dist/runtime/mcp/stdio.d.ts +8 -0
  77. package/dist/runtime/mcp/stdio.d.ts.map +1 -1
  78. package/dist/runtime/mcp/stdio.js +42 -0
  79. package/dist/runtime/mcp/stdio.js.map +1 -1
  80. package/dist/runtime/mcp-registry/broker.d.ts +175 -0
  81. package/dist/runtime/mcp-registry/broker.d.ts.map +1 -0
  82. package/dist/runtime/mcp-registry/broker.js +203 -0
  83. package/dist/runtime/mcp-registry/broker.js.map +1 -0
  84. package/dist/runtime/mcp-registry/broker.typecheck.d.ts +2 -0
  85. package/dist/runtime/mcp-registry/broker.typecheck.d.ts.map +1 -0
  86. package/dist/runtime/mcp-registry/broker.typecheck.js +48 -0
  87. package/dist/runtime/mcp-registry/broker.typecheck.js.map +1 -0
  88. package/dist/runtime/mirror/accept.d.ts +43 -5
  89. package/dist/runtime/mirror/accept.d.ts.map +1 -1
  90. package/dist/runtime/mirror/accept.js +55 -7
  91. package/dist/runtime/mirror/accept.js.map +1 -1
  92. package/dist/runtime/mirror/build.d.ts +23 -4
  93. package/dist/runtime/mirror/build.d.ts.map +1 -1
  94. package/dist/runtime/mirror/build.js +34 -4
  95. package/dist/runtime/mirror/build.js.map +1 -1
  96. package/dist/runtime/mirror/index.d.ts +3 -0
  97. package/dist/runtime/mirror/index.d.ts.map +1 -1
  98. package/dist/runtime/mirror/index.js +3 -0
  99. package/dist/runtime/mirror/index.js.map +1 -1
  100. package/dist/runtime/mirror/ingest.d.ts +109 -0
  101. package/dist/runtime/mirror/ingest.d.ts.map +1 -0
  102. package/dist/runtime/mirror/ingest.js +117 -0
  103. package/dist/runtime/mirror/ingest.js.map +1 -0
  104. package/dist/runtime/mirror/push-daemon.d.ts +376 -0
  105. package/dist/runtime/mirror/push-daemon.d.ts.map +1 -0
  106. package/dist/runtime/mirror/push-daemon.js +644 -0
  107. package/dist/runtime/mirror/push-daemon.js.map +1 -0
  108. package/dist/runtime/mirror/sanitize.d.ts +477 -0
  109. package/dist/runtime/mirror/sanitize.d.ts.map +1 -0
  110. package/dist/runtime/mirror/sanitize.js +625 -0
  111. package/dist/runtime/mirror/sanitize.js.map +1 -0
  112. package/dist/runtime/mirror/serve.d.ts.map +1 -1
  113. package/dist/runtime/mirror/serve.js +104 -24
  114. package/dist/runtime/mirror/serve.js.map +1 -1
  115. package/dist/runtime/reporting/report-ai.d.ts.map +1 -1
  116. package/dist/runtime/reporting/report-ai.js +1 -0
  117. package/dist/runtime/reporting/report-ai.js.map +1 -1
  118. package/dist/runtime/reporting/stdin.d.ts +2 -0
  119. package/dist/runtime/reporting/stdin.d.ts.map +1 -0
  120. package/dist/runtime/reporting/stdin.js +8 -0
  121. package/dist/runtime/reporting/stdin.js.map +1 -0
  122. package/dist/status-surface.d.ts +167 -0
  123. package/dist/status-surface.d.ts.map +1 -0
  124. package/dist/status-surface.js +670 -0
  125. package/dist/status-surface.js.map +1 -0
  126. package/dist/types.d.ts +17 -0
  127. package/dist/types.d.ts.map +1 -1
  128. package/dist/types.js +3 -0
  129. package/dist/types.js.map +1 -1
  130. package/focus-app/client/_app/immutable/assets/{0.BdzHFb9q.css → 0.CgEVz9YW.css} +1 -1
  131. package/focus-app/client/_app/immutable/assets/0.CgEVz9YW.css.br +0 -0
  132. package/focus-app/client/_app/immutable/assets/0.CgEVz9YW.css.gz +0 -0
  133. package/focus-app/client/_app/immutable/assets/2.DaTmt6o7.css +1 -0
  134. package/focus-app/client/_app/immutable/assets/2.DaTmt6o7.css.br +0 -0
  135. package/focus-app/client/_app/immutable/assets/2.DaTmt6o7.css.gz +0 -0
  136. package/focus-app/client/_app/immutable/assets/3.vWQUAHjz.css +1 -0
  137. package/focus-app/client/_app/immutable/assets/3.vWQUAHjz.css.br +0 -0
  138. package/focus-app/client/_app/immutable/assets/3.vWQUAHjz.css.gz +0 -0
  139. package/focus-app/client/_app/immutable/assets/AppShell.CDPwj3zU.css +1 -0
  140. package/focus-app/client/_app/immutable/assets/AppShell.CDPwj3zU.css.br +0 -0
  141. package/focus-app/client/_app/immutable/assets/AppShell.CDPwj3zU.css.gz +0 -0
  142. package/focus-app/client/_app/immutable/chunks/{Cj6wo28J.js → 1NK_OeRJ.js} +1 -1
  143. package/focus-app/client/_app/immutable/chunks/1NK_OeRJ.js.br +0 -0
  144. package/focus-app/client/_app/immutable/chunks/1NK_OeRJ.js.gz +0 -0
  145. package/focus-app/client/_app/immutable/chunks/{Bs3f1UbD.js → B1veta3r.js} +2 -2
  146. package/focus-app/client/_app/immutable/chunks/B1veta3r.js.br +0 -0
  147. package/focus-app/client/_app/immutable/chunks/B1veta3r.js.gz +0 -0
  148. package/focus-app/client/_app/immutable/chunks/{DEmooz0s.js → BZ4lcC0v.js} +1 -1
  149. package/focus-app/client/_app/immutable/chunks/BZ4lcC0v.js.br +0 -0
  150. package/focus-app/client/_app/immutable/chunks/BZ4lcC0v.js.gz +0 -0
  151. package/focus-app/client/_app/immutable/chunks/Bu7F9NOv.js +2 -0
  152. package/focus-app/client/_app/immutable/chunks/Bu7F9NOv.js.br +0 -0
  153. package/focus-app/client/_app/immutable/chunks/Bu7F9NOv.js.gz +0 -0
  154. package/focus-app/client/_app/immutable/chunks/C6KhNEX3.js +1 -0
  155. package/focus-app/client/_app/immutable/chunks/C6KhNEX3.js.br +0 -0
  156. package/focus-app/client/_app/immutable/chunks/C6KhNEX3.js.gz +0 -0
  157. package/focus-app/client/_app/immutable/chunks/DIljKPJN.js +1 -0
  158. package/focus-app/client/_app/immutable/chunks/DIljKPJN.js.br +0 -0
  159. package/focus-app/client/_app/immutable/chunks/DIljKPJN.js.gz +0 -0
  160. package/focus-app/client/_app/immutable/chunks/iXQate3J.js +2 -0
  161. package/focus-app/client/_app/immutable/chunks/iXQate3J.js.br +0 -0
  162. package/focus-app/client/_app/immutable/chunks/iXQate3J.js.gz +0 -0
  163. package/focus-app/client/_app/immutable/chunks/{ZxFklh9T.js → kCE9wz0g.js} +1 -1
  164. package/focus-app/client/_app/immutable/chunks/kCE9wz0g.js.br +0 -0
  165. package/focus-app/client/_app/immutable/chunks/kCE9wz0g.js.gz +0 -0
  166. package/focus-app/client/_app/immutable/chunks/x-hq5fDG.js +1 -0
  167. package/focus-app/client/_app/immutable/chunks/x-hq5fDG.js.br +0 -0
  168. package/focus-app/client/_app/immutable/chunks/x-hq5fDG.js.gz +0 -0
  169. package/focus-app/client/_app/immutable/entry/app.C1sDdCg5.js +2 -0
  170. package/focus-app/client/_app/immutable/entry/app.C1sDdCg5.js.br +0 -0
  171. package/focus-app/client/_app/immutable/entry/app.C1sDdCg5.js.gz +0 -0
  172. package/focus-app/client/_app/immutable/entry/start.X3j_A5RN.js +1 -0
  173. package/focus-app/client/_app/immutable/entry/start.X3j_A5RN.js.br +2 -0
  174. package/focus-app/client/_app/immutable/entry/start.X3j_A5RN.js.gz +0 -0
  175. package/focus-app/client/_app/immutable/nodes/0.gLl44WzG.js +5 -0
  176. package/focus-app/client/_app/immutable/nodes/0.gLl44WzG.js.br +0 -0
  177. package/focus-app/client/_app/immutable/nodes/0.gLl44WzG.js.gz +0 -0
  178. package/focus-app/client/_app/immutable/nodes/1.DUrghq2x.js +1 -0
  179. package/focus-app/client/_app/immutable/nodes/1.DUrghq2x.js.br +0 -0
  180. package/focus-app/client/_app/immutable/nodes/1.DUrghq2x.js.gz +0 -0
  181. package/focus-app/client/_app/immutable/nodes/2.Bp7JE7Pz.js +1 -0
  182. package/focus-app/client/_app/immutable/nodes/2.Bp7JE7Pz.js.br +0 -0
  183. package/focus-app/client/_app/immutable/nodes/2.Bp7JE7Pz.js.gz +0 -0
  184. package/focus-app/client/_app/immutable/nodes/3.Cml8enOG.js +12 -0
  185. package/focus-app/client/_app/immutable/nodes/3.Cml8enOG.js.br +0 -0
  186. package/focus-app/client/_app/immutable/nodes/3.Cml8enOG.js.gz +0 -0
  187. package/focus-app/client/_app/version.json +1 -1
  188. package/focus-app/client/_app/version.json.br +0 -0
  189. package/focus-app/client/_app/version.json.gz +0 -0
  190. package/focus-app/h2a-focus.json +108 -80
  191. package/focus-app/handler.js +7 -7
  192. package/focus-app/index.js +7 -7
  193. package/focus-app/server/chunks/chunks/AppShell.js-6Pi87dO0.js +1353 -0
  194. package/focus-app/server/chunks/chunks/AppShell.js-6Pi87dO0.js.map +1 -0
  195. package/focus-app/server/chunks/chunks/agent-memory-dossier.js-nmFG_rgx.js +1036 -0
  196. package/focus-app/server/chunks/chunks/agent-memory-dossier.js-nmFG_rgx.js.map +1 -0
  197. package/focus-app/server/chunks/chunks/{exports.js-DUTkELZq.js → exports.js-CdqPbjm1.js} +3 -3
  198. package/focus-app/server/chunks/chunks/{exports.js-DUTkELZq.js.map → exports.js-CdqPbjm1.js.map} +1 -1
  199. package/focus-app/server/chunks/chunks/h2a-bus.js-bLEJ_Adi.js +233 -0
  200. package/focus-app/server/chunks/chunks/h2a-bus.js-bLEJ_Adi.js.map +1 -0
  201. package/focus-app/server/chunks/chunks/{index.js-Di21TltP.js → index.js-laGHLarB.js} +5 -2
  202. package/focus-app/server/chunks/chunks/index.js-laGHLarB.js.map +1 -0
  203. package/focus-app/server/chunks/chunks/{internal.js-33vbd70h.js → internal.js-C6T8nHkl.js} +4 -4
  204. package/focus-app/server/chunks/chunks/{internal.js-33vbd70h.js.map → internal.js-C6T8nHkl.js.map} +1 -1
  205. package/focus-app/server/chunks/chunks/{root.js-DO1m-gJA.js → root.js-CtVQOgDw.js} +2 -2
  206. package/focus-app/server/chunks/chunks/{root.js-DO1m-gJA.js.map → root.js-CtVQOgDw.js.map} +1 -1
  207. package/focus-app/server/chunks/entries/endpoints/api/decisions/inject/{_server.ts.js-j0NNcOSZ.js → _server.ts.js-hrbMnsV0.js} +13 -42
  208. package/focus-app/server/chunks/entries/endpoints/api/decisions/inject/_server.ts.js-hrbMnsV0.js.map +1 -0
  209. package/focus-app/server/chunks/entries/endpoints/api/dossiers/agent-memory/include/_server.ts.js-Dw4odGdV.js +138 -0
  210. package/focus-app/server/chunks/entries/endpoints/api/dossiers/agent-memory/include/_server.ts.js-Dw4odGdV.js.map +1 -0
  211. package/focus-app/server/chunks/entries/endpoints/api/h2a/targets/_server.ts.js-BLjYv7vg.js +41 -0
  212. package/focus-app/server/chunks/entries/endpoints/api/h2a/targets/_server.ts.js-BLjYv7vg.js.map +1 -0
  213. package/focus-app/server/chunks/entries/fallbacks/{error.svelte.js-Dj3sETSX.js → error.svelte.js-RbeaNF5a.js} +4 -4
  214. package/focus-app/server/chunks/entries/fallbacks/{error.svelte.js-Dj3sETSX.js.map → error.svelte.js-RbeaNF5a.js.map} +1 -1
  215. package/focus-app/server/chunks/entries/pages/{_layout.svelte.js-BoLsbuC2.js → _layout.svelte.js-e1E_I04z.js} +2 -2
  216. package/focus-app/server/chunks/entries/pages/{_layout.svelte.js-BoLsbuC2.js.map → _layout.svelte.js-e1E_I04z.js.map} +1 -1
  217. package/focus-app/server/chunks/entries/pages/{_page.svelte.js-QDldMYhk.js → _page.svelte.js-DbaEG23x.js} +31 -1373
  218. package/focus-app/server/chunks/entries/pages/_page.svelte.js-DbaEG23x.js.map +1 -0
  219. package/focus-app/server/chunks/entries/pages/dossier/agent-memory/_page.server.ts.js-CFC-wn6U.js +88 -0
  220. package/focus-app/server/chunks/entries/pages/dossier/agent-memory/_page.server.ts.js-CFC-wn6U.js.map +1 -0
  221. package/focus-app/server/chunks/entries/pages/dossier/agent-memory/_page.svelte.js-BpR26NMa.js +1574 -0
  222. package/focus-app/server/chunks/entries/pages/dossier/agent-memory/_page.svelte.js-BpR26NMa.js.map +1 -0
  223. package/focus-app/server/chunks/{handler-Cp_5hLyY.js → handler-Be3dyNi0.js} +3 -3
  224. package/focus-app/server/chunks/{handler-Cp_5hLyY.js.map → handler-Be3dyNi0.js.map} +1 -1
  225. package/focus-app/server/chunks/{index.js-CBh7Wjqp.js → index.js-siUxMMnK.js} +3 -3
  226. package/focus-app/server/chunks/{index.js-CBh7Wjqp.js.map → index.js-siUxMMnK.js.map} +1 -1
  227. package/focus-app/server/chunks/manifest.js-CXJqSHHn.js +78 -0
  228. package/focus-app/server/chunks/manifest.js-CXJqSHHn.js.map +1 -0
  229. package/focus-app/server/chunks/nodes/0.js-leU6sfRR.js +9 -0
  230. package/focus-app/server/chunks/nodes/{0.js-4wlmdsk8.js.map → 0.js-leU6sfRR.js.map} +1 -1
  231. package/focus-app/server/chunks/nodes/1.js-os6QXm6B.js +9 -0
  232. package/focus-app/server/chunks/nodes/{1.js-B-LpY-lC.js.map → 1.js-os6QXm6B.js.map} +1 -1
  233. package/focus-app/server/chunks/nodes/2.js-DAaLjh93.js +19 -0
  234. package/focus-app/server/chunks/nodes/2.js-DAaLjh93.js.map +1 -0
  235. package/focus-app/server/chunks/nodes/3.js-Cmgi6Uy0.js +18 -0
  236. package/focus-app/server/chunks/nodes/3.js-Cmgi6Uy0.js.map +1 -0
  237. package/package.json +2 -2
  238. package/skills/h2a-run/SKILL.md +100 -0
  239. package/focus-app/client/_app/immutable/assets/0.BdzHFb9q.css.br +0 -2
  240. package/focus-app/client/_app/immutable/assets/0.BdzHFb9q.css.gz +0 -0
  241. package/focus-app/client/_app/immutable/assets/2.Ddxq02y4.css +0 -1
  242. package/focus-app/client/_app/immutable/assets/2.Ddxq02y4.css.br +0 -0
  243. package/focus-app/client/_app/immutable/assets/2.Ddxq02y4.css.gz +0 -0
  244. package/focus-app/client/_app/immutable/chunks/Bs3f1UbD.js.br +0 -0
  245. package/focus-app/client/_app/immutable/chunks/Bs3f1UbD.js.gz +0 -0
  246. package/focus-app/client/_app/immutable/chunks/Bv8OL8ib.js +0 -1
  247. package/focus-app/client/_app/immutable/chunks/Bv8OL8ib.js.br +0 -0
  248. package/focus-app/client/_app/immutable/chunks/Bv8OL8ib.js.gz +0 -0
  249. package/focus-app/client/_app/immutable/chunks/CVq_IFFr.js +0 -2
  250. package/focus-app/client/_app/immutable/chunks/CVq_IFFr.js.br +0 -0
  251. package/focus-app/client/_app/immutable/chunks/CVq_IFFr.js.gz +0 -0
  252. package/focus-app/client/_app/immutable/chunks/Cj6wo28J.js.br +0 -0
  253. package/focus-app/client/_app/immutable/chunks/Cj6wo28J.js.gz +0 -0
  254. package/focus-app/client/_app/immutable/chunks/DEmooz0s.js.br +0 -0
  255. package/focus-app/client/_app/immutable/chunks/DEmooz0s.js.gz +0 -0
  256. package/focus-app/client/_app/immutable/chunks/DQIRXgdC.js +0 -2
  257. package/focus-app/client/_app/immutable/chunks/DQIRXgdC.js.br +0 -0
  258. package/focus-app/client/_app/immutable/chunks/DQIRXgdC.js.gz +0 -0
  259. package/focus-app/client/_app/immutable/chunks/ZxFklh9T.js.br +0 -0
  260. package/focus-app/client/_app/immutable/chunks/ZxFklh9T.js.gz +0 -0
  261. package/focus-app/client/_app/immutable/chunks/_wRuVGPs.js +0 -1
  262. package/focus-app/client/_app/immutable/chunks/_wRuVGPs.js.br +0 -0
  263. package/focus-app/client/_app/immutable/chunks/_wRuVGPs.js.gz +0 -0
  264. package/focus-app/client/_app/immutable/entry/app.6DKouWRt.js +0 -2
  265. package/focus-app/client/_app/immutable/entry/app.6DKouWRt.js.br +0 -0
  266. package/focus-app/client/_app/immutable/entry/app.6DKouWRt.js.gz +0 -0
  267. package/focus-app/client/_app/immutable/entry/start.DlLmkUb7.js +0 -1
  268. package/focus-app/client/_app/immutable/entry/start.DlLmkUb7.js.br +0 -2
  269. package/focus-app/client/_app/immutable/entry/start.DlLmkUb7.js.gz +0 -0
  270. package/focus-app/client/_app/immutable/nodes/0.CuSOF0Of.js +0 -5
  271. package/focus-app/client/_app/immutable/nodes/0.CuSOF0Of.js.br +0 -0
  272. package/focus-app/client/_app/immutable/nodes/0.CuSOF0Of.js.gz +0 -0
  273. package/focus-app/client/_app/immutable/nodes/1.D39jdnqm.js +0 -1
  274. package/focus-app/client/_app/immutable/nodes/1.D39jdnqm.js.br +0 -0
  275. package/focus-app/client/_app/immutable/nodes/1.D39jdnqm.js.gz +0 -0
  276. package/focus-app/client/_app/immutable/nodes/2.CnU8ifRl.js +0 -1
  277. package/focus-app/client/_app/immutable/nodes/2.CnU8ifRl.js.br +0 -0
  278. package/focus-app/client/_app/immutable/nodes/2.CnU8ifRl.js.gz +0 -0
  279. package/focus-app/server/chunks/chunks/index.js-Di21TltP.js.map +0 -1
  280. package/focus-app/server/chunks/entries/endpoints/api/decisions/inject/_server.ts.js-j0NNcOSZ.js.map +0 -1
  281. package/focus-app/server/chunks/entries/pages/_page.svelte.js-QDldMYhk.js.map +0 -1
  282. package/focus-app/server/chunks/manifest.js-Cm6cC7mC.js +0 -56
  283. package/focus-app/server/chunks/manifest.js-Cm6cC7mC.js.map +0 -1
  284. package/focus-app/server/chunks/nodes/0.js-4wlmdsk8.js +0 -9
  285. package/focus-app/server/chunks/nodes/1.js-B-LpY-lC.js +0 -9
  286. package/focus-app/server/chunks/nodes/2.js-F6jp5eD9.js +0 -19
  287. package/focus-app/server/chunks/nodes/2.js-F6jp5eD9.js.map +0 -1
@@ -2,7 +2,7 @@ export { createMcpServer, isMcpTransportResult } from "./server.js";
2
2
  export { H2A_CLI_MCP_TOOL_DESCRIPTORS } from "./tools.js";
3
3
  export {} from "./handlers.js";
4
4
  export { H2A_MCP_READY_FILE_ENV, H2A_MCP_READY_KIND, H2A_MCP_READY_NONCE_ENV, runMcpStdio } from "./stdio.js";
5
- export { buildH2aRunInvocation, executeH2aRun, executeH2aRunWithSpawn, handleH2aRun, H2A_RUN_API_VERSION, validateH2aRunRequest } from "./agent-launch.js";
5
+ export { buildH2aRunInvocation, executeH2aRun, executeH2aRunWithSpawn, handleH2aRun, recordMcpRunDelegation, H2A_RUN_API_VERSION, validateH2aRunRequest } from "./agent-launch.js";
6
6
  export { SessionRegistry } from "./sessions.js";
7
7
  export { NotificationDispatcher } from "./notifications.js";
8
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/mcp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,oBAAoB,EAIrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,4BAA4B,EAG7B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAGN,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,EACvB,WAAW,EAEZ,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,sBAAsB,EACtB,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EAItB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,eAAe,EAGhB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,sBAAsB,EAGvB,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/mcp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,oBAAoB,EAIrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,4BAA4B,EAG7B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAGN,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,EACvB,WAAW,EAEZ,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,sBAAsB,EACtB,YAAY,EACZ,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EAItB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,eAAe,EAGhB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,sBAAsB,EAGvB,MAAM,oBAAoB,CAAC"}
@@ -3,7 +3,7 @@ import { type McpErrorResult, type McpToolResult } from "./handlers.js";
3
3
  import { NotificationDispatcher, type NotificationSink } from "./notifications.js";
4
4
  import { SessionRegistry, type SessionRegistryOptions } from "./sessions.js";
5
5
  import { type McpToolDescriptor } from "./tools.js";
6
- import { type H2aRunExecutor } from "./agent-launch.js";
6
+ import { type H2aRunDelegation, type H2aRunExecutor } from "./agent-launch.js";
7
7
  export interface CreateMcpServerOptions {
8
8
  /** Filesystem root for the backing local-files store. */
9
9
  root: string;
@@ -11,6 +11,8 @@ export interface CreateMcpServerOptions {
11
11
  workspaceRoot?: string;
12
12
  /** Test seam for the canonical h2a run subprocess bridge. */
13
13
  runExecutor?: H2aRunExecutor;
14
+ /** Trusted context of this MCP sidecar, read only when a launch occurs. */
15
+ delegationContext?: () => H2aRunDelegation | undefined;
14
16
  /**
15
17
  * Optional pre-built store. If omitted, the server creates one with
16
18
  * `createLocalStore({ root })`. Useful for tests that want to share state
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/runtime/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,EAqCL,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sBAAsB,EACtB,KAAK,gBAAgB,EACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,EAC5B,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,YAAY,CAAC;AAOpB,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,sBAAsB;IACrC,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B;;;;OAIG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC;;;OAGG;IACH,aAAa,CAAC,EAAE;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,gBAAgB,CAAC;KACzB,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,IAAI,iBAAiB,EAAE,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,aAAa,GAAG,cAAc,GAAG,kBAAkB,CAAC;IACvH,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,mDAAmD;IACnD,QAAQ,CAAC,aAAa,EAAE,sBAAsB,CAAC;CAChD;AAED,mFAAmF;AACnF,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAOhF;AAID;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,SAAS,CAuI1E"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/runtime/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,EAqCL,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sBAAsB,EACtB,KAAK,gBAAgB,EACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,EAC5B,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,YAAY,CAAC;AAOpB,OAAO,EAIL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,sBAAsB;IACrC,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,2EAA2E;IAC3E,iBAAiB,CAAC,EAAE,MAAM,gBAAgB,GAAG,SAAS,CAAC;IACvD;;;;OAIG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC;;;OAGG;IACH,aAAa,CAAC,EAAE;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,gBAAgB,CAAC;KACzB,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,IAAI,iBAAiB,EAAE,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,aAAa,GAAG,cAAc,GAAG,kBAAkB,CAAC;IACvH,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,mDAAmD;IACnD,QAAQ,CAAC,aAAa,EAAE,sBAAsB,CAAC;CAChD;AAED,mFAAmF;AACnF,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAOhF;AAID;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,SAAS,CA6I1E"}
@@ -5,7 +5,7 @@ import { SessionRegistry } from "./sessions.js";
5
5
  import { H2A_CLI_MCP_TOOL_DESCRIPTORS } from "./tools.js";
6
6
  import { TRACK_READ_TOOL_DESCRIPTORS, callTrackReadTool } from "@sentropic/track/mcp";
7
7
  import { H2A_SESSION_DEFAULT_HEARTBEAT_INTERVAL_MS } from "@sentropic/h2a";
8
- import { executeH2aRun, handleH2aRun } from "./agent-launch.js";
8
+ import { executeH2aRun, handleH2aRun, recordMcpRunDelegation } from "./agent-launch.js";
9
9
  export function isMcpTransportResult(value) {
10
10
  return (typeof value === "object" &&
11
11
  value !== null &&
@@ -126,7 +126,12 @@ export function createMcpServer(options) {
126
126
  case "h2a_loop_status":
127
127
  return handleLoopStatus(store.paths.root, args);
128
128
  case "h2a_run":
129
- return handleH2aRun(args, options.workspaceRoot ?? process.cwd(), options.runExecutor ?? executeH2aRun);
129
+ {
130
+ const delegation = options.delegationContext?.();
131
+ const result = handleH2aRun(args, options.workspaceRoot ?? process.cwd(), options.runExecutor ?? executeH2aRun, delegation);
132
+ recordMcpRunDelegation(store.paths.root, result, delegation);
133
+ return result;
134
+ }
130
135
  default:
131
136
  return { error: `unknown tool: ${name}` };
132
137
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/runtime/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/runtime/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAmB,MAAM,yBAAyB,CAAC;AAE5E,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,EAClB,2BAA2B,EAC3B,uBAAuB,EACvB,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,WAAW,EACX,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,eAAe,EAGhB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sBAAsB,EAEvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EAEhB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,4BAA4B,EAG7B,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,yCAAyC,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EACL,aAAa,EACb,YAAY,EACZ,sBAAsB,EAGvB,MAAM,mBAAmB,CAAC;AAgD3B,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,SAAS,IAAI,KAAK;QAClB,KAAK,CAAC,OAAO,CAAE,KAA+B,CAAC,OAAO,CAAC,CACxD,CAAC;AACJ,CAAC;AAED,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAS,2BAA2B,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAEpG;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,OAA+B;IAC7D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,gBAAgB,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE;QACjD,aAAa,EAAE,KAAK;QACpB,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;KAC5B,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,IAAI,sBAAsB,CAC9C,QAAQ,EACR,KAAK,EACL,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,aAAa,EAAE,IAAI,EAC3B,OAAO,CAAC,aAAa,EAAE,UAAU;QAC/B,yCAAyC,CAC5C,CAAC;IAEF,SAAS,QAAQ,CACf,IAAY,EACZ,IAAyC;QAEzC,IAAI,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,iBAAiB,CAC9B,EAAE,GAAG,EAAE,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,EAC/C,IAA4D,EAC5D,IAAI,IAAI,EAAE,CACX,CAAC;gBACF,OAAO;oBACL,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;wBACnC,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;qBACrF;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;yBAC7D;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,IAAmB,CAAC;QACrC,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,uBAAuB;gBAC1B,OAAO,sBAAsB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YACtD,KAAK,wBAAwB;gBAC3B,OAAO,uBAAuB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YACvD,KAAK,WAAW;gBACd,OAAO,WAAW,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAC3C,KAAK,oBAAoB;gBACvB,OAAO,mBAAmB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YACnD,KAAK,sBAAsB;gBACzB,OAAO,qBAAqB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YACrD,KAAK,WAAW;gBACd,OAAO,WAAW,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAC3C,KAAK,kBAAkB;gBACrB,OAAO,kBAAkB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAClD,KAAK,UAAU;gBACb,OAAO,UAAU,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAC1C,KAAK,eAAe;gBAClB,OAAO,eAAe,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAC/C,KAAK,0BAA0B;gBAC7B,OAAO,yBAAyB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YACzD,KAAK,6BAA6B;gBAChC,OAAO,2BAA2B,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAC3D,KAAK,sBAAsB;gBACzB,OAAO,qBAAqB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YACrD,KAAK,cAAc;gBACjB,OAAO,cAAc,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAC9C,KAAK,kBAAkB;gBACrB,OAAO,iBAAiB,CAAC,QAAQ,EAAE,IAAa,CAAC,CAAC;YACpD,KAAK,mBAAmB;gBACtB,OAAO,kBAAkB,CAAC,QAAQ,EAAE,IAAa,CAAC,CAAC;YACrD,KAAK,uBAAuB;gBAC1B,OAAO,sBAAsB,CAAC,QAAQ,EAAE,IAAa,CAAC,CAAC;YACzD,KAAK,gBAAgB;gBACnB,OAAO,eAAe,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAC/C,KAAK,mBAAmB;gBACtB,OAAO,kBAAkB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAClD,KAAK,gBAAgB;gBACnB,OAAO,eAAe,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAC/C,KAAK,kBAAkB;gBACrB,OAAO,iBAAiB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YACjD,KAAK,gBAAgB;gBACnB,OAAO,eAAe,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAC/C,KAAK,oBAAoB;gBACvB,OAAO,mBAAmB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YACnD,KAAK,mBAAmB;gBACtB,OAAO,kBAAkB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YAClD,KAAK,sBAAsB;gBACzB,OAAO,qBAAqB,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC;YACrD,KAAK,eAAe;gBAClB,OAAO,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YAC1D,KAAK,qBAAqB;gBACxB,OAAO,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YAC/D,KAAK,uBAAuB;gBAC1B,OAAO,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YACjE,KAAK,4BAA4B;gBAC/B,OAAO,0BAA0B,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YACrE,KAAK,sBAAsB;gBACzB,OAAO,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YAChE,KAAK,iBAAiB;gBACpB,OAAO,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YAC3D,KAAK,eAAe;gBAClB,OAAO,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YACzD,KAAK,iBAAiB;gBACpB,OAAO,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YAC3D,KAAK,eAAe;gBAClB,OAAO,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YACzD,KAAK,eAAe;gBAClB,OAAO,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YACzD,KAAK,eAAe;gBAClB,OAAO,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,iBAAiB;gBACpB,OAAO,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAa,CAAC,CAAC;YAC3D,KAAK,SAAS;gBACZ,CAAC;oBACC,MAAM,UAAU,GAAG,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;oBACjD,MAAM,MAAM,GAAG,YAAY,CAC3B,IAAI,EACJ,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE,EACtC,OAAO,CAAC,WAAW,IAAI,aAAa,EAClC,UAAU,CACX,CAAC;oBACF,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;oBAC7D,OAAO,MAAM,CAAC;gBAChB,CAAC;YACH;gBACE,OAAO,EAAE,KAAK,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,OAAO;QACL,SAAS,EAAE,GAAG,EAAE,CAAC,4BAA4B,CAAC,KAAK,EAAE;QACrD,QAAQ;QACR,QAAQ;QACR,aAAa;KACd,CAAC;AACJ,CAAC"}
@@ -47,6 +47,25 @@ export declare class SessionRegistry {
47
47
  constructor(root: string, options?: SessionRegistryOptions);
48
48
  open(request: OpenSessionRequest): H2ASession;
49
49
  close(sessionId: string, finalState?: H2ASessionState): H2ASession | undefined;
50
+ /**
51
+ * Install (or replace) the host-native display-name resolver for a session.
52
+ * Spec 2026-07-25-h2a-lane-addressing §D1b. Idempotent on unknown ids.
53
+ */
54
+ setDisplayNameResolver(sessionId: string, resolve: () => string | undefined): void;
55
+ /**
56
+ * Re-derive the host-native display name for a session, returning it only
57
+ * when it is a real CHANGE worth writing.
58
+ *
59
+ * Deliberately conservative in three ways (spec §D1b):
60
+ * - a resolver that throws is swallowed — a naming bug must never break the
61
+ * heartbeat, which is what liveness is computed from;
62
+ * - `undefined` (transcript rotated, deleted, or not yet findable) keeps the
63
+ * name we already have. It must NEVER downgrade a real host-native name back
64
+ * to the cwd basename — refresh is monotonic in confidence;
65
+ * - an unchanged value returns undefined so the patch key is omitted entirely
66
+ * rather than re-writing the same string.
67
+ */
68
+ private nextDisplayName;
50
69
  /** Mark heartbeat on disk for a known session. Idempotent on unknown ids. */
51
70
  touch(sessionId: string): H2ASession | undefined;
52
71
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/runtime/mcp/sessions.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAChC,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AASxB,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;IACrC,oDAAoD;IACpD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,mFAAmF;IACnF,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClD,+EAA+E;IAC/E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,2BAA2B,EAAE,CAAC;IACnE,kEAAkE;IAClE,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;IACnC,yFAAyF;IACzF,QAAQ,CAAC,aAAa,CAAC,EAAE,gBAAgB,CAAC;IAC1C,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,sBAAsB;IACrC,sFAAsF;IACtF,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;CAClC;AAsCD;;;;;GAKG;AACH,qBAAa,eAAe;IAOxB,OAAO,CAAC,QAAQ,CAAC,IAAI;IANvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAC3D,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAU;gBAGrB,IAAI,EAAE,MAAM,EAC7B,OAAO,GAAE,sBAA2B;IAQtC,IAAI,CAAC,OAAO,EAAE,kBAAkB,GAAG,UAAU;IA2C7C,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,GAAE,eAA0B,GAAG,UAAU,GAAG,SAAS;IAgBxF,6EAA6E;IAC7E,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAsBhD;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKrC,2DAA2D;IAC3D,IAAI,IAAI,UAAU,EAAE;IAIpB,+EAA+E;IAC/E,SAAS,CAAC,GAAG,GAAE,MAAmB,GAAG,UAAU,EAAE;IAIjD;;;OAGG;IACH,QAAQ,CAAC,UAAU,GAAE,eAA0B,GAAG,IAAI;CASvD"}
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/runtime/mcp/sessions.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAChC,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AASxB,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;IACrC,oDAAoD;IACpD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,mFAAmF;IACnF,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClD,+EAA+E;IAC/E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,2BAA2B,EAAE,CAAC;IACnE,kEAAkE;IAClE,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;IACnC,yFAAyF;IACzF,QAAQ,CAAC,aAAa,CAAC,EAAE,gBAAgB,CAAC;IAC1C,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,sBAAsB;IACrC,sFAAsF;IACtF,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;CAClC;AA6CD;;;;;GAKG;AACH,qBAAa,eAAe;IAOxB,OAAO,CAAC,QAAQ,CAAC,IAAI;IANvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAC3D,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAU;gBAGrB,IAAI,EAAE,MAAM,EAC7B,OAAO,GAAE,sBAA2B;IAQtC,IAAI,CAAC,OAAO,EAAE,kBAAkB,GAAG,UAAU;IA2C7C,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,GAAE,eAA0B,GAAG,UAAU,GAAG,SAAS;IAgBxF;;;OAGG;IACH,sBAAsB,CACpB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,MAAM,GAAG,SAAS,GAChC,IAAI;IAMP;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,eAAe;IAavB,6EAA6E;IAC7E,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAyBhD;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKrC,2DAA2D;IAC3D,IAAI,IAAI,UAAU,EAAE;IAIpB,+EAA+E;IAC/E,SAAS,CAAC,GAAG,GAAE,MAAmB,GAAG,UAAU,EAAE;IAIjD;;;OAGG;IACH,QAAQ,CAAC,UAAU,GAAE,eAA0B,GAAG,IAAI;CASvD"}
@@ -92,23 +92,65 @@ export class SessionRegistry {
92
92
  }
93
93
  return updated;
94
94
  }
95
+ /**
96
+ * Install (or replace) the host-native display-name resolver for a session.
97
+ * Spec 2026-07-25-h2a-lane-addressing §D1b. Idempotent on unknown ids.
98
+ */
99
+ setDisplayNameResolver(sessionId, resolve) {
100
+ const entry = this.entries.get(sessionId);
101
+ if (!entry)
102
+ return;
103
+ entry.resolveDisplayName = resolve;
104
+ }
105
+ /**
106
+ * Re-derive the host-native display name for a session, returning it only
107
+ * when it is a real CHANGE worth writing.
108
+ *
109
+ * Deliberately conservative in three ways (spec §D1b):
110
+ * - a resolver that throws is swallowed — a naming bug must never break the
111
+ * heartbeat, which is what liveness is computed from;
112
+ * - `undefined` (transcript rotated, deleted, or not yet findable) keeps the
113
+ * name we already have. It must NEVER downgrade a real host-native name back
114
+ * to the cwd basename — refresh is monotonic in confidence;
115
+ * - an unchanged value returns undefined so the patch key is omitted entirely
116
+ * rather than re-writing the same string.
117
+ */
118
+ nextDisplayName(entry) {
119
+ if (!entry.resolveDisplayName)
120
+ return undefined;
121
+ let resolved;
122
+ try {
123
+ resolved = entry.resolveDisplayName();
124
+ }
125
+ catch {
126
+ return undefined;
127
+ }
128
+ if (!resolved)
129
+ return undefined;
130
+ if (resolved === entry.session.name)
131
+ return undefined;
132
+ return resolved;
133
+ }
95
134
  /** Mark heartbeat on disk for a known session. Idempotent on unknown ids. */
96
135
  touch(sessionId) {
97
136
  const entry = this.entries.get(sessionId);
98
137
  if (!entry)
99
138
  return undefined;
139
+ const nextName = this.nextDisplayName(entry);
100
140
  let updated = updatePresence(this.root, sessionId, {
101
141
  heartbeatAt: nowIso(),
102
142
  // WP-F: flush the latest in-memory MCP-activity timestamp alongside the
103
143
  // blind heartbeat. Unlike heartbeatAt (which the external keepalive prober
104
144
  // can also refresh), this only advances on real inbound MCP traffic.
105
- ...(entry.lastActivityAt ? { lastMcpActivityAt: entry.lastActivityAt } : {})
145
+ ...(entry.lastActivityAt ? { lastMcpActivityAt: entry.lastActivityAt } : {}),
146
+ ...(nextName ? { name: nextName } : {})
106
147
  });
107
148
  if (!updated) {
108
149
  updated = {
109
150
  ...entry.session,
110
151
  heartbeatAt: nowIso(),
111
- ...(entry.lastActivityAt ? { lastMcpActivityAt: entry.lastActivityAt } : {})
152
+ ...(entry.lastActivityAt ? { lastMcpActivityAt: entry.lastActivityAt } : {}),
153
+ ...(nextName ? { name: nextName } : {})
112
154
  };
113
155
  writePresence(this.root, updated);
114
156
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/runtime/mcp/sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/runtime/mcp/sessions.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,14 @@ export interface RunMcpStdioOptions {
44
44
  readonly workspace?: H2AWorkspaceRef;
45
45
  readonly name?: string;
46
46
  readonly scopes?: readonly string[];
47
+ /**
48
+ * Re-reads the host-native display title on each heartbeat (spec
49
+ * 2026-07-25-h2a-lane-addressing §D1b). Omit to freeze the name — which is
50
+ * what an explicit `--name` does.
51
+ */
52
+ readonly refreshDisplayName?: () => string | undefined;
53
+ /** Set only for a locally-derived sidecar identity (not --instance). */
54
+ readonly delegationEligible?: true;
47
55
  };
48
56
  /**
49
57
  * Internal structured-launch readiness handshake. When present, auto-open is
@@ -1 +1 @@
1
- {"version":3,"file":"stdio.d.ts","sourceRoot":"","sources":["../../../src/runtime/mcp/stdio.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGtD,OAAO,EAA2B,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAS5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA4BxD,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,8DAA8D;IAC9D,KAAK,EAAE,QAAQ,CAAC;IAChB,gEAAgE;IAChE,MAAM,EAAE,QAAQ,CAAC;IACjB,yEAAyE;IACzE,MAAM,EAAE,QAAQ,CAAC;IACjB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE;QACT,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;QACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KACrC,CAAC;IACF;;;;OAIG;IACH,SAAS,CAAC,EAAE;QACV,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;KACxB,CAAC;IACF;;;;;;OAMG;IACH,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;QAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;KAChC,CAAC;IACF;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAaD,eAAO,MAAM,sBAAsB,uBAAuB,CAAC;AAC3D,eAAO,MAAM,uBAAuB,wBAAwB,CAAC;AAC7D,eAAO,MAAM,kBAAkB,kBAAkB,CAAC;AA6FlD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2PtE"}
1
+ {"version":3,"file":"stdio.d.ts","sourceRoot":"","sources":["../../../src/runtime/mcp/stdio.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGtD,OAAO,EAA2B,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAS5E,OAAO,KAAK,EAAoB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA4B1E,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,8DAA8D;IAC9D,KAAK,EAAE,QAAQ,CAAC;IAChB,gEAAgE;IAChE,MAAM,EAAE,QAAQ,CAAC;IACjB,yEAAyE;IACzE,MAAM,EAAE,QAAQ,CAAC;IACjB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE;QACT,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;QACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACpC;;;;WAIG;QACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;QACvD,wEAAwE;QACxE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC;KACpC,CAAC;IACF;;;;OAIG;IACH,SAAS,CAAC,EAAE;QACV,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;KACxB,CAAC;IACF;;;;;;OAMG;IACH,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;QAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;KAChC,CAAC;IACF;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AA2CD,eAAO,MAAM,sBAAsB,uBAAuB,CAAC;AAC3D,eAAO,MAAM,uBAAuB,wBAAwB,CAAC;AAC7D,eAAO,MAAM,kBAAkB,kBAAkB,CAAC;AA6FlD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgRtE"}
@@ -1,4 +1,5 @@
1
1
  import { createInterface } from "node:readline";
2
+ import { spawnSync } from "node:child_process";
2
3
  import { randomUUID } from "node:crypto";
3
4
  import { linkSync, unlinkSync, writeFileSync } from "node:fs";
4
5
  import { createInboxWakeHandler } from "../drive/inbox-wake.js";
@@ -17,6 +18,29 @@ function envInt(name) {
17
18
  const PROTOCOL_VERSION = "2025-06-18";
18
19
  const SERVER_NAME = "@sentropic/h2a";
19
20
  const SERVER_VERSION = "0.1.1";
21
+ function currentTmuxSessionForSidecar() {
22
+ const pane = process.env.TMUX_PANE;
23
+ if (!pane || !/^%\d+$/.test(pane))
24
+ return undefined;
25
+ try {
26
+ const result = spawnSync("tmux", ["display-message", "-p", "-t", pane, "#{session_name}"], { encoding: "utf8", timeout: 250 });
27
+ const name = result.status === 0 ? (result.stdout ?? "").trim() : "";
28
+ return name && name.length <= 128 && !/[\u0000-\u001f\u007f-\u009f\u202a-\u202e\u2066-\u2069]/u.test(name)
29
+ ? name
30
+ : undefined;
31
+ }
32
+ catch {
33
+ return undefined;
34
+ }
35
+ }
36
+ function recordTmuxOwner(session, instance) {
37
+ try {
38
+ spawnSync("tmux", ["set-option", "-t", `=${session}`, "@h2a_owner_instance", instance], { stdio: "ignore", timeout: 250 });
39
+ }
40
+ catch {
41
+ // A missing tmux server means the owner link stays unknown; never invent it.
42
+ }
43
+ }
20
44
  export const H2A_MCP_READY_FILE_ENV = "H2A_MCP_READY_FILE";
21
45
  export const H2A_MCP_READY_NONCE_ENV = "H2A_MCP_READY_NONCE";
22
46
  export const H2A_MCP_READY_KIND = "h2a.mcp.ready";
@@ -112,10 +136,12 @@ export function runMcpStdio(options) {
112
136
  const expiryMs = options.expiryMs ?? envInt("H2A_SESSION_EXPIRY_MS");
113
137
  // The stdio transport carries live agent sessions; enable autoHeartbeat so
114
138
  // the presence file stays fresh while this mcp-serve process is alive.
139
+ let delegation;
115
140
  const server = createMcpServer({
116
141
  root,
117
142
  workspaceRoot: options.workspaceRoot ?? process.cwd(),
118
143
  ...(options.runExecutor ? { runExecutor: options.runExecutor } : {}),
144
+ delegationContext: () => delegation,
119
145
  sessions: {
120
146
  autoHeartbeat: true,
121
147
  ...(heartbeatIntervalMs !== undefined ? { heartbeatIntervalMs } : {}),
@@ -174,6 +200,22 @@ export function runMcpStdio(options) {
174
200
  }
175
201
  });
176
202
  autoOpenedSessionId = opened.sessionId;
203
+ // Spec 2026-07-25-h2a-lane-addressing §D1b: follow the host-native title
204
+ // for the life of the session, so a rename converges into presence within
205
+ // one heartbeat instead of staying stale until the host reconnects.
206
+ // Absent when the operator passed an explicit `--name`.
207
+ if (options.autoOpen.refreshDisplayName) {
208
+ server.sessions.setDisplayNameResolver(opened.sessionId, options.autoOpen.refreshDisplayName);
209
+ }
210
+ const delegatorTmuxSession = currentTmuxSessionForSidecar();
211
+ if (delegatorTmuxSession && options.autoOpen.delegationEligible === true) {
212
+ delegation = {
213
+ origin: "mcp:h2a_run",
214
+ delegatorInstance: options.autoOpen.instance,
215
+ delegatorTmuxSession,
216
+ };
217
+ recordTmuxOwner(delegatorTmuxSession, options.autoOpen.instance);
218
+ }
177
219
  stderr.write(`h2a mcp-serve: auto-opened session for ${options.autoOpen.instance}\n`);
178
220
  // Reap the false-live presence left by a previous connection of THIS
179
221
  // agent that the host dropped without signalling (process lingered,
@@ -1 +1 @@
1
- {"version":3,"file":"stdio.js","sourceRoot":"","sources":["../../../src/runtime/mcp/stdio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAK9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAkB,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EACL,eAAe,EACf,oBAAoB,EAErB,MAAM,aAAa,CAAC;AAsGrB,SAAS,MAAM,CAAC,IAAY;IAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACpE,CAAC;AAED,MAAM,gBAAgB,GAAG,YAAY,CAAC;AACtC,MAAM,WAAW,GAAG,gBAAgB,CAAC;AACrC,MAAM,cAAc,GAAG,OAAO,CAAC;AAE/B,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAAoB,CAAC;AAC3D,MAAM,CAAC,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;AAC7D,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAElD,SAAS,mBAAmB,CAC1B,SAAuD,EACvD,SAAiB;IAEjB,MAAM,SAAS,GAAG,GAAG,SAAS,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,IAAI,UAAU,EAAE,MAAM,CAAC;IACzE,IAAI,CAAC;QACH,aAAa,CACX,SAAS,EACT,GAAG,IAAI,CAAC,SAAS,CAAC;YAChB,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,CAAC;YACV,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS;SACV,CAAC,IAAI,EACN,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAC9C,CAAC;QACF,4EAA4E;QAC5E,4EAA4E;QAC5E,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YACH,UAAU,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,4EAA4E;QAC9E,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,MAAgB,EAAE,QAAyB;IAChE,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,aAAa,CACpB,EAAW,EACX,IAAY,EACZ,OAAe,EACf,IAAc;IAEd,MAAM,KAAK,GAAkC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC/D,IAAI,IAAI,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,eAAe,CAAC,EAAW,EAAE,MAAe;IACnD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,YAAY,CACnB,MAAiB,EACjB,MAAc,EACd,MAAe;IAEf,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,OAAO;YACL,eAAe,EAAE,gBAAgB;YACjC,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE;YAC1D,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;SAC5B,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;IACvC,CAAC;IACD,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAA4C,CAAC;QACpE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,GACR,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;YAC5C,CAAC,CAAE,CAAC,CAAC,SAAqC;YAC1C,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,oBAAoB,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAChD,MAAM,OAAO,GAAG,OAAO,CACrB,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAK,MAAiB,CACtE,CAAC;QACF,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACzD,OAAO;SACR,CAAC;IACJ,CAAC;IACD,yDAAyD;IACzD,MAAM,IAAI,mBAAmB,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,mBAAoB,SAAQ,KAAK;IACT;IAA5B,YAA4B,MAAc;QACxC,KAAK,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;QADX,WAAM,GAAN,MAAM,CAAQ;QAExC,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,OAA2B;IACrD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAChD,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,mBAAmB,GACvB,OAAO,CAAC,mBAAmB,IAAI,MAAM,CAAC,2BAA2B,CAAC,CAAC;IACrE,MAAM,gBAAgB,GACpB,OAAO,CAAC,gBAAgB;QACxB,MAAM,CAAC,wBAAwB,CAAC;QAChC,mBAAmB,CAAC;IACtB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACrE,2EAA2E;IAC3E,uEAAuE;IACvE,MAAM,MAAM,GAAG,eAAe,CAAC;QAC7B,IAAI;QACJ,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE;QACrD,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,QAAQ,EAAE;YACR,aAAa,EAAE,IAAI;YACnB,GAAG,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD;QACD,aAAa,EAAE;YACb,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,IAAI,EAAE,CAAC,YAAY,EAAE,EAAE;gBACrB,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF;KACF,CAAC,CAAC;IACH,uEAAuE;IACvE,mDAAmD;IACnD,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAE7B,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,SAAS,QAAQ;QACf,IAAI,WAAW;YAAE,OAAO;QACxB,WAAW,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,CAAC,KAAK,CAAC,kCAAkC,OAAO,IAAI,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,6EAA6E;IAC7E,IAAI,mBAAuC,CAAC;IAE5C,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,+CAA+C;IAC/C,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBACnC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/E,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS;oBAC1C,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE;oBAC3C,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/E,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC5C,sEAAsE;gBACtE,iEAAiE;gBACjE,GAAG,CAAC,CAAC,GAAG,EAAE;oBACR,MAAM,EAAE,GAAG,uBAAuB,CAChC,OAAO,CAAC,GAAG,EACX,SAAS,EACT,wBAAwB,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAC7D,CAAC;oBACF,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzC,CAAC,CAAC,EAAE,CAAC;gBACL,SAAS,EAAE;oBACT,MAAM,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;oBAC3D,YAAY,EAAE,EAAE;iBACjB;aACF,CAAC,CAAC;YACH,mBAAmB,GAAG,MAAM,CAAC,SAAS,CAAC;YACvC,MAAM,CAAC,KAAK,CACV,0CAA0C,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,CACxE,CAAC;YACF,qEAAqE;YACrE,oEAAoE;YACpE,0EAA0E;YAC1E,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,wBAAwB,CACrC,IAAI,EACJ,OAAO,CAAC,QAAQ,CAAC,QAAQ,EACzB,MAAM,CAAC,SAAS,CACjB,CAAC;gBACF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,MAAM,CAAC,KAAK,CACV,yBAAyB,MAAM,CAAC,MAAM,+BAA+B,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,CACnG,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,cAAc;YAChB,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,CAAC,KAAK,CAAC,oCAAoC,OAAO,IAAI,CAAC,CAAC;YAC9D,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,QAAQ,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,gCAAgC,OAAO,EAAE,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QACD,6EAA6E;QAC7E,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC/C,MAAM,SAAS,GAAG,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,sBAAsB,CAAC;gBAClC,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,YAAY,CAAC;gBAClD,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa;gBACzC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM;gBAC3B,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/E,yEAAyE;gBACzE,2EAA2E;gBAC3E,4EAA4E;gBAC5E,gFAAgF;gBAChF,oBAAoB,EAAE,GAAG,EAAE,CACzB,uBAAuB,CACrB,OAAO,CAAC,GAAG,EACX,SAAS,EACT,wBAAwB,OAAO,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAC9D;gBACH,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,IAAI,IAAI,CAAC;aACxD,CAAC,CAAC;YACH,MAAM,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAClD,IAAI,QAAQ,KAAK,YAAY;oBAAE,KAAK,IAAI,EAAE,CAAC;YAC7C,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,uCAAuC,YAAY,IAAI,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,4EAA4E;IAC5E,uEAAuE;IACvE,IAAI,OAAO,CAAC,SAAS,IAAI,mBAAmB,EAAE,CAAC;QAC7C,IAAI,CAAC;YACH,mBAAmB,CAAC,OAAO,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,CAAC,KAAK,CAAC,wCAAwC,OAAO,IAAI,CAAC,CAAC;YAClE,QAAQ,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;IACjE,KAAyC,CAAC,GAAG,EAAE,EAAE,CAAC;IACnD,KAAK,CAAC,MAAM,EAAE,CAAC;IAEf,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,6EAA6E;QAC7E,4EAA4E;QAC5E,yEAAyE;QACzE,MAAM,OAAO,GAAG,GAAS,EAAE;YACzB,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC;gBACH,EAAE,CAAC,KAAK,EAAE,CAAC;YACb,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAEjC,yEAAyE;YACzE,4EAA4E;YAC5E,IAAI,mBAAmB;gBAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;YAE3E,IAAI,OAAuB,CAAC;YAC5B,IAAI,CAAC;gBACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAmB,CAAC;YAClD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC3E,OAAO;YACT,CAAC;YAED,sEAAsE;YACtE,yEAAyE;YACzE,0EAA0E;YAC1E,wEAAwE;YACxE,0EAA0E;YAC1E,2EAA2E;YAC3E,sEAAsE;YACtE,qBAAqB;YACrB,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,CAAC;YAE1C,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACpE,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC;gBACtF,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBACpE,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,aAAa,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,cAAc,EAAE,CAAC;oBACnB,oEAAoE;oBACpE,gEAAgE;oBAChE,IAAI,CAAC,CAAC,GAAG,YAAY,mBAAmB,CAAC,EAAE,CAAC;wBAC1C,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACjE,MAAM,CAAC,KAAK,CAAC,+CAA+C,OAAO,CAAC,MAAM,MAAM,OAAO,IAAI,CAAC,CAAC;oBAC/F,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,IAAI,GAAG,YAAY,mBAAmB,EAAE,CAAC;oBACvC,aAAa,CACX,MAAM,EACN,aAAa,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,KAAK,EAAE,qBAAqB,GAAG,CAAC,MAAM,EAAE,CAAC,CAC7E,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,CAAC,KAAK,CAAC,kCAAkC,OAAO,IAAI,CAAC,CAAC;gBAC5D,aAAa,CACX,MAAM,EACN,aAAa,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,KAAK,EAAE,mBAAmB,OAAO,EAAE,CAAC,CACxE,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACrB,QAAQ,EAAE,CAAC;YACX,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"stdio.js","sourceRoot":"","sources":["../../../src/runtime/mcp/stdio.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,175 @@
1
+ /**
2
+ * Internal groundwork for a principal-scoped third-party MCP broker.
3
+ *
4
+ * This module deliberately has no stdio, HTTP, or public h2a MCP wiring. The
5
+ * future gateway owns authenticated ingress and turns its authenticated `sub`
6
+ * into an AuthenticatedPrincipal before it creates this broker.
7
+ */
8
+ declare const authenticatedPrincipalBrand: unique symbol;
9
+ declare const secretRefBrand: unique symbol;
10
+ /** A subject established by the broker ingress, never an agent tool argument. */
11
+ export type AuthenticatedPrincipal = string & {
12
+ readonly [authenticatedPrincipalBrand]: "AuthenticatedPrincipal";
13
+ };
14
+ /**
15
+ * Opaque vault reference. This is the only credential-shaped value in the
16
+ * broker types: it names server-held material, it does not contain that
17
+ * material.
18
+ */
19
+ export type SecretRef = string & {
20
+ readonly [secretRefBrand]: "SecretRef";
21
+ };
22
+ /** Construct server-side opaque values at trusted integration boundaries. */
23
+ export declare function authenticatedPrincipal(sub: string): AuthenticatedPrincipal;
24
+ /** Construct a server-side vault handle; no credential value is accepted. */
25
+ export declare function secretRef(ref: string): SecretRef;
26
+ export interface RegistryToolInputSchema {
27
+ readonly type: "object";
28
+ readonly properties: {
29
+ readonly query: {
30
+ readonly type: "string";
31
+ readonly description?: string;
32
+ };
33
+ };
34
+ readonly required: readonly ["query"];
35
+ readonly additionalProperties: false;
36
+ }
37
+ /** The complete tool shape an agent may receive from this module. */
38
+ export interface AgentVisibleRegistryTool {
39
+ readonly name: string;
40
+ readonly description: string;
41
+ readonly inputSchema: RegistryToolInputSchema;
42
+ }
43
+ /** The only agent-supplied shape accepted by this one-server increment. */
44
+ export interface AgentVisibleRegistryArguments {
45
+ readonly query: string;
46
+ }
47
+ /** The reviewed, agent-visible result shape for the one read-only mail operation. */
48
+ export interface AgentVisibleRegistryOutput {
49
+ readonly kind: "mail.search.result";
50
+ readonly messages: readonly {
51
+ readonly id: string;
52
+ readonly subject: string;
53
+ }[];
54
+ }
55
+ /**
56
+ * Adapter-side reviewed data. This is intentionally not the object returned to
57
+ * an agent: the broker constructs the closed AgentVisibleRegistryOutput DTO.
58
+ */
59
+ export interface ReviewedMailSearchResult {
60
+ readonly messages: readonly {
61
+ readonly id: string;
62
+ readonly subject: string;
63
+ }[];
64
+ }
65
+ /** A reviewed, pinned descriptor. It is never learned from upstream tools/list. */
66
+ export interface ReviewedRegistryServer {
67
+ readonly id: string;
68
+ readonly tools: readonly AgentVisibleRegistryTool[];
69
+ }
70
+ /**
71
+ * Server-side authorization record. `secretRef` is intentionally opaque and
72
+ * is absent from every agent-visible result type below.
73
+ */
74
+ export interface ConnectorGrant {
75
+ readonly connectorRef: string;
76
+ readonly serverId: string;
77
+ readonly secretRef: SecretRef;
78
+ readonly mayUseToolNames: readonly string[];
79
+ readonly active: boolean;
80
+ }
81
+ export interface Established<T> {
82
+ readonly kind: "established";
83
+ readonly state: "success";
84
+ readonly value: T;
85
+ readonly asOf: string;
86
+ }
87
+ /**
88
+ * A non-success resolution is intentionally open-ended. Broker code recognizes
89
+ * only the positive `established` state, so a newly added failure state cannot
90
+ * be mistaken for an established empty collection.
91
+ */
92
+ export interface NonEstablishedResolution {
93
+ readonly kind: string;
94
+ readonly state: "failure";
95
+ readonly source: string;
96
+ readonly code: string;
97
+ readonly retryable: boolean;
98
+ readonly observedAt: string;
99
+ }
100
+ export type RegistryResolution<T> = Established<T> | NonEstablishedResolution;
101
+ export declare function established<T>(value: T, asOf?: string): Established<T>;
102
+ export declare function isEstablished<T>(resolution: RegistryResolution<T>): resolution is Established<T>;
103
+ export interface PrincipalGrantResolver {
104
+ resolve(principal: AuthenticatedPrincipal): RegistryResolution<readonly ConnectorGrant[]>;
105
+ }
106
+ /** Executor-only call: the opaque secret reference never enters agent-visible types. */
107
+ export interface RegistryUpstreamAdapter {
108
+ invoke(input: {
109
+ readonly connectorRef: string;
110
+ readonly secretRef: SecretRef;
111
+ readonly tool: AgentVisibleRegistryTool;
112
+ readonly arguments: AgentVisibleRegistryArguments;
113
+ readonly correlationId: string;
114
+ }): RegistryResolution<ReviewedMailSearchResult>;
115
+ }
116
+ export interface RegistryAuditEvent {
117
+ readonly principalRef: string;
118
+ readonly connectorRef: string | undefined;
119
+ readonly toolName: string | undefined;
120
+ readonly outcome: "listed" | "called" | "unavailable" | "not_authorized" | "invalid_arguments";
121
+ readonly correlationId: string | undefined;
122
+ readonly observedAt: string;
123
+ }
124
+ export interface PrincipalScopedRegistryBrokerOptions {
125
+ readonly principal: AuthenticatedPrincipal;
126
+ readonly catalogue: readonly ReviewedRegistryServer[];
127
+ readonly grantResolver: PrincipalGrantResolver;
128
+ readonly adapters: Readonly<Record<string, RegistryUpstreamAdapter>>;
129
+ readonly audit?: (event: RegistryAuditEvent) => void;
130
+ readonly now?: () => string;
131
+ }
132
+ export interface RegistryToolsEstablished {
133
+ readonly kind: "established";
134
+ readonly tools: readonly AgentVisibleRegistryTool[];
135
+ readonly asOf: string;
136
+ }
137
+ export type RegistryUnavailableSource = "catalogue" | "binding" | "grant" | "credential" | "upstream" | "adapter";
138
+ export type RegistryUnavailableCode = "source_unavailable" | "upstream_timeout" | "upstream_protocol_error" | "adapter_not_available";
139
+ export interface RegistryUnavailable {
140
+ readonly kind: "unavailable";
141
+ readonly source: RegistryUnavailableSource;
142
+ readonly code: RegistryUnavailableCode;
143
+ readonly retryable: boolean;
144
+ readonly observedAt: string;
145
+ }
146
+ /** The only two possible discovery results: established (including empty), or unavailable. */
147
+ export type RegistryToolsResult = RegistryToolsEstablished | RegistryUnavailable;
148
+ export interface RegistryCallCompleted {
149
+ readonly kind: "completed";
150
+ readonly output: AgentVisibleRegistryOutput;
151
+ }
152
+ export interface RegistryNotAuthorized {
153
+ readonly kind: "not_authorized";
154
+ }
155
+ export interface RegistryInvalidArguments {
156
+ readonly kind: "invalid_arguments";
157
+ }
158
+ export type RegistryCallResult = RegistryCallCompleted | RegistryUnavailable | RegistryNotAuthorized | RegistryInvalidArguments;
159
+ export interface PrincipalScopedRegistryBroker {
160
+ /** Returns only this principal's effective mayUse projection, never the catalogue or grants. */
161
+ listTools(): RegistryToolsResult;
162
+ /** Re-resolves grants before every call; a previous list is never authorization. */
163
+ callTool(input: {
164
+ readonly name: string;
165
+ readonly arguments: AgentVisibleRegistryArguments;
166
+ readonly correlationId: string;
167
+ }): RegistryCallResult;
168
+ }
169
+ /**
170
+ * Creates one broker projection for one ingress-authenticated principal.
171
+ * The caller supplies the principal at construction time, not as agent data.
172
+ */
173
+ export declare function createPrincipalScopedRegistryBroker(options: PrincipalScopedRegistryBrokerOptions): PrincipalScopedRegistryBroker;
174
+ export {};
175
+ //# sourceMappingURL=broker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"broker.d.ts","sourceRoot":"","sources":["../../../src/runtime/mcp-registry/broker.ts"],"names":[],"mappings":"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"}