@xopcai/xopc 0.0.285 → 0.0.286

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 (935) hide show
  1. package/dist/browser-ext/dist/assets/{auth-DB30ywek.js → auth-BXCWrPlg.js} +1 -1
  2. package/dist/browser-ext/dist/background.js +2 -2
  3. package/dist/browser-ext/dist/sidepanel.html +1 -1
  4. package/dist/browser-ext/dist/sidepanel.js +136 -136
  5. package/dist/browser-ext/manifest.json +1 -1
  6. package/dist/extensions/feishu/src/adapters/gateway-setup.js +14 -14
  7. package/dist/extensions/feishu/src/state/message-bindings.d.ts +1 -1
  8. package/dist/extensions/feishu/src/state/thread-bindings.d.ts +4 -4
  9. package/dist/extensions/feishu/src/state/thread-bindings.js +6 -6
  10. package/dist/extensions/feishu/src/subagent-hooks.d.ts +1 -1
  11. package/dist/extensions/feishu/src/subagent-hooks.js +5 -5
  12. package/dist/extensions/feishu/src/transport/socket-mode/monitor.js +9 -9
  13. package/dist/extensions/feishu/src/transport/webhook/monitor.js +4 -4
  14. package/dist/extensions/feishu/src/workflow-progress.d.ts +1 -1
  15. package/dist/extensions/feishu/src/workflow-progress.js +8 -7
  16. package/dist/extensions/telegram/src/approval-store.d.ts +2 -2
  17. package/dist/extensions/telegram/src/approval-store.js +1 -1
  18. package/dist/extensions/telegram/src/command-handler.d.ts +2 -2
  19. package/dist/extensions/telegram/src/command-handler.js +8 -8
  20. package/dist/extensions/telegram/src/delivery-chat-id.d.ts +1 -1
  21. package/dist/extensions/telegram/src/delivery-chat-id.js +7 -3
  22. package/dist/extensions/telegram/src/exec-approval-handler.js +1 -1
  23. package/dist/extensions/telegram/src/focus-handler.d.ts +2 -2
  24. package/dist/extensions/telegram/src/focus-handler.js +10 -10
  25. package/dist/extensions/telegram/src/inbound-processor.d.ts +3 -3
  26. package/dist/extensions/telegram/src/inbound-processor.js +11 -11
  27. package/dist/extensions/telegram/src/plugin.js +5 -5
  28. package/dist/extensions/telegram/src/routing-integration.d.ts +1 -1
  29. package/dist/extensions/telegram/src/routing-integration.js +19 -21
  30. package/dist/extensions/telegram/src/thread-bindings.d.ts +1 -1
  31. package/dist/extensions/telegram/src/workflow-progress.js +8 -7
  32. package/dist/extensions/telegram/xopc.extension.json +1 -1
  33. package/dist/extensions/weixin/src/auth/login-qr.d.ts +4 -4
  34. package/dist/extensions/weixin/src/auth/login-qr.js +21 -21
  35. package/dist/extensions/weixin/src/auth/weixin-account-id.d.ts +1 -1
  36. package/dist/extensions/weixin/src/auth/weixin-account-id.js +1 -1
  37. package/dist/extensions/weixin/src/cli/gateway-qr-login.d.ts +2 -2
  38. package/dist/extensions/weixin/src/cli/gateway-qr-login.js +13 -13
  39. package/dist/extensions/weixin/src/cli/qr-login.js +1 -1
  40. package/dist/extensions/weixin/src/delivery-to.js +6 -2
  41. package/dist/extensions/weixin/src/messaging/inbound.d.ts +1 -1
  42. package/dist/extensions/weixin/src/messaging/inbound.js +1 -1
  43. package/dist/extensions/weixin/src/messaging/process-message.js +3 -3
  44. package/dist/extensions/weixin/src/plugin.js +5 -5
  45. package/dist/extensions/weixin/src/routing-integration.d.ts +1 -1
  46. package/dist/extensions/weixin/src/routing-integration.js +3 -3
  47. package/dist/extensions/weixin/src/workflow-progress.d.ts +1 -1
  48. package/dist/extensions/weixin/src/workflow-progress.js +7 -6
  49. package/dist/gateway/static/root/assets/{activity-store-B0BTIk9j.js → activity-store-xOhV8FHx.js} +1 -1
  50. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-Dc-0QZTQ.js → agent-avatar-dicebear-BzQbYWEj.js} +1 -1
  51. package/dist/gateway/static/root/assets/{agent-defaults-settings-panel-CcmqK1Sc.js → agent-defaults-settings-panel-BxR5eog4.js} +1 -1
  52. package/dist/gateway/static/root/assets/{agents-B_7PVt7S.js → agents-Dx1om1eN.js} +1 -1
  53. package/dist/gateway/static/root/assets/{api-Coly9ab6.js → api-CVJQLBv9.js} +1 -1
  54. package/dist/gateway/static/root/assets/api-q1kIMCLW.js +1 -0
  55. package/dist/gateway/static/root/assets/{app-management-settings-panel-TWBO-msg.js → app-management-settings-panel-CTyuXkNC.js} +1 -1
  56. package/dist/gateway/static/root/assets/{appearance-settings-CpTZ2KuT.js → appearance-settings-Tk-GJtvF.js} +1 -1
  57. package/dist/gateway/static/root/assets/apps-page-BA-7OrhJ.js +1 -0
  58. package/dist/gateway/static/root/assets/{archive-plugin-z_u6alob.js → archive-plugin-O49jeeXo.js} +1 -1
  59. package/dist/gateway/static/root/assets/{attachment-load-C2nS04TC.js → attachment-load-r9lBF2tW.js} +1 -1
  60. package/dist/gateway/static/root/assets/{automations-page-aIBsw9zR.js → automations-page-CFFLXYgS.js} +1 -1
  61. package/dist/gateway/static/root/assets/{automations-workspace-BRQlU4qk.js → automations-workspace-DUZE1NOH.js} +3 -3
  62. package/dist/gateway/static/root/assets/{binary-plugins-CGmXoZnl.js → binary-plugins-BpM43vsn.js} +1 -1
  63. package/dist/gateway/static/root/assets/{block-editor-CtvzCZhC.js → block-editor-DFrfEcGw.js} +1 -1
  64. package/dist/gateway/static/root/assets/{browser-automation-inputs-BOTU1isH.js → browser-automation-inputs-CyHGQwxQ.js} +1 -1
  65. package/dist/gateway/static/root/assets/{browser-automations-page-BwU5V8J0.js → browser-automations-page-CPkOWfM9.js} +1 -1
  66. package/dist/gateway/static/root/assets/{browser-settings-page-DDjbDeHQ.js → browser-settings-page-BOcseZxg.js} +2 -2
  67. package/dist/gateway/static/root/assets/button-CGlRPNzi.js +1 -0
  68. package/dist/gateway/static/root/assets/capabilities-settings-panel-ohEV64hG.js +8 -0
  69. package/dist/gateway/static/root/assets/channels-settings-UOf9mgqt.js +1 -0
  70. package/dist/gateway/static/root/assets/{channels-status-swr-Dfi0Desh.js → channels-status-swr-BArPeImO.js} +1 -1
  71. package/dist/gateway/static/root/assets/{chat-terminal-dock-B0MvcO6j.js → chat-terminal-dock-D5Aka4S8.js} +2 -2
  72. package/dist/gateway/static/root/assets/{connectors-page-L8JehrxF.js → connectors-page-BEQR0NRq.js} +2 -2
  73. package/dist/gateway/static/root/assets/{cron-expression-CjrWuy2m.js → cron-expression-GDPX4NxC.js} +1 -1
  74. package/dist/gateway/static/root/assets/{date-picker-DXOvbHCr.js → date-picker-DNtRu6EB.js} +1 -1
  75. package/dist/gateway/static/root/assets/{dependency-picker-BEnC-eS0.js → dependency-picker-Dng3dIQa.js} +1 -1
  76. package/dist/gateway/static/root/assets/desktop-pet-BicYycxy.js +1 -0
  77. package/dist/gateway/static/root/assets/{desktop-pet-settings-CYyjcSn6.js → desktop-pet-settings-BEse55eX.js} +1 -1
  78. package/dist/gateway/static/root/assets/{device-pairing-wizard-BPMGvAKE.js → device-pairing-wizard-be30HuFI.js} +1 -1
  79. package/dist/gateway/static/root/assets/{extension-debug-page-H_aPMGXW.js → extension-debug-page-YzhYyuay.js} +1 -1
  80. package/dist/gateway/static/root/assets/{extension-page-C1JnpeMt.js → extension-page-CEXVIkDl.js} +1 -1
  81. package/dist/gateway/static/root/assets/extension-settings-page-CrlbgK8g.js +1 -0
  82. package/dist/gateway/static/root/assets/{gateway-config-swr-G2lQt7Ak.js → gateway-config-swr-BNuoHXiZ.js} +1 -1
  83. package/dist/gateway/static/root/assets/gateway-settings-CDJY1AOW.js +1 -0
  84. package/dist/gateway/static/root/assets/{gateway-startup-retry-GP31PUrG.js → gateway-startup-retry-zMPfje0n.js} +1 -1
  85. package/dist/gateway/static/root/assets/{heartbeat-settings-C7fjiowt.js → heartbeat-settings-BtxitqZ3.js} +1 -1
  86. package/dist/gateway/static/root/assets/{home-page-DZXeXdUL.js → home-page-_oqo0pNR.js} +1 -1
  87. package/dist/gateway/static/root/assets/{image-generation-api-CKFhfHSw.js → image-generation-api-B_Tyx74A.js} +1 -1
  88. package/dist/gateway/static/root/assets/{imports-page-GROumhj8.js → imports-page-eZciuLw_.js} +1 -1
  89. package/dist/gateway/static/root/assets/index--YC42LAz.css +2 -0
  90. package/dist/gateway/static/root/assets/index-fVtuw2o9.js +75 -0
  91. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-zcI822m_.js → keyboard-shortcuts-settings-B796W039.js} +1 -1
  92. package/dist/gateway/static/root/assets/{local-app-workbench-page-CAEKGTAg.js → local-app-workbench-page-Z8mpau9d.js} +1 -1
  93. package/dist/gateway/static/root/assets/{local-apps-page-BtgDJ92Q.js → local-apps-page-DXmY5jwM.js} +1 -1
  94. package/dist/gateway/static/root/assets/locale-store-D0001I7p.js +1 -0
  95. package/dist/gateway/static/root/assets/logs-page-BGOO8ouT.js +2 -0
  96. package/dist/gateway/static/root/assets/{management-settings-DasZxCyD.js → management-settings-b1MG7s-3.js} +1 -1
  97. package/dist/gateway/static/root/assets/{markdown-view-6oYdBahT.js → markdown-view-2txE_Blz.js} +1 -1
  98. package/dist/gateway/static/root/assets/{media-plugins-CxthbBvk.js → media-plugins-CDEf3ksI.js} +1 -1
  99. package/dist/gateway/static/root/assets/messages-BWANv-N-.js +3 -0
  100. package/dist/gateway/static/root/assets/{note-detail-panel-BcWq3ddw.js → note-detail-panel-Bm33_3xJ.js} +3 -3
  101. package/dist/gateway/static/root/assets/notes-page-C32-xssK.js +8 -0
  102. package/dist/gateway/static/root/assets/page-tabs-Bi_-DA5J.js +1 -0
  103. package/dist/gateway/static/root/assets/popover-select-DldSX8GX.js +1 -0
  104. package/dist/gateway/static/root/assets/{preview-open-alternatives-Bevpbq9f.js → preview-open-alternatives-Dhfdf14p.js} +1 -1
  105. package/dist/gateway/static/root/assets/proactive-page-BNouL7Tv.js +1 -0
  106. package/dist/gateway/static/root/assets/{product-open-page-Bi1seZpM.js → product-open-page-BkbZBqBr.js} +1 -1
  107. package/dist/gateway/static/root/assets/project-detail-page-CZ7glGYw.js +1 -0
  108. package/dist/gateway/static/root/assets/projects-page-DP3ZINZz.js +1 -0
  109. package/dist/gateway/static/root/assets/{registry-api-D0ddwBFj.js → registry-api-icwoEKYB.js} +1 -1
  110. package/dist/gateway/static/root/assets/remote-access-hub-xqJcPdOO.js +1 -0
  111. package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-Wkru8_My.js → runtime-tools-settings-panel-bmgxwWpW.js} +1 -1
  112. package/dist/gateway/static/root/assets/{schema-form-CSMRzj9Y.js → schema-form-DoZeepCg.js} +1 -1
  113. package/dist/gateway/static/root/assets/{sessions-page-Hj9uFcIO.js → sessions-page-BaxIfjpm.js} +1 -1
  114. package/dist/gateway/static/root/assets/settings-advanced-gate-Cy3Ab3Vg.js +1 -0
  115. package/dist/gateway/static/root/assets/settings-form-section-sw2bbS2b.js +1 -0
  116. package/dist/gateway/static/root/assets/{settings-page-BcQGAnCs.js → settings-page-BWF8uac0.js} +1 -1
  117. package/dist/gateway/static/root/assets/settings-page-layout-CsUQKRq0.js +1 -0
  118. package/dist/gateway/static/root/assets/{setup-status-panel-DzxmsaQG.js → setup-status-panel-BuYto2mT.js} +1 -1
  119. package/dist/gateway/static/root/assets/{share-preview-page-DQocUl-1.js → share-preview-page-BIHYD6-O.js} +1 -1
  120. package/dist/gateway/static/root/assets/shares-settings-DKtWUneq.js +1 -0
  121. package/dist/gateway/static/root/assets/skill-reload-api-Dn7ElMUk.js +1 -0
  122. package/dist/gateway/static/root/assets/{skills-page-AmqtBJo7.js → skills-page-D-7UtJIc.js} +1 -1
  123. package/dist/gateway/static/root/assets/{skills-page.utils-DtlfCgJp.js → skills-page.utils-dvue6Ish.js} +1 -1
  124. package/dist/gateway/static/root/assets/{system-settings-panel-Ct698Nf-.js → system-settings-panel-DCyxPWCl.js} +1 -1
  125. package/dist/gateway/static/root/assets/task-detail-page-efmH43Pq.js +1 -0
  126. package/dist/gateway/static/root/assets/{theme-store-ng8KJsAT.js → theme-store-CZwYGpbY.js} +1 -1
  127. package/dist/gateway/static/root/assets/tunnel-api-__auf8Ww.js +1 -0
  128. package/dist/gateway/static/root/assets/{use-autosave-BSyxRHt2.js → use-autosave-Iq83UDt3.js} +1 -1
  129. package/dist/gateway/static/root/assets/{user-model-page-DIEHnAER.js → user-model-page-DByIJcQq.js} +1 -1
  130. package/dist/gateway/static/root/assets/{voice-api-key-field-SE3OQI1s.js → voice-api-key-field-D-QssKik.js} +1 -1
  131. package/dist/gateway/static/root/assets/{voice-config-api-VNuCmdFe.js → voice-config-api-B0wNN_tE.js} +1 -1
  132. package/dist/gateway/static/root/assets/{work-discovery-overlay-Dn1vy2oq.js → work-discovery-overlay-5NRYg1iI.js} +1 -1
  133. package/dist/gateway/static/root/assets/{workflow-run-setup-panel-BJEfGY-k.js → workflow-run-setup-panel-Ds2SZjLG.js} +1 -1
  134. package/dist/gateway/static/root/assets/{workflows-page-DgRNIyr7.js → workflows-page-BJv3eoKR.js} +2 -2
  135. package/dist/gateway/static/root/index.html +12 -12
  136. package/dist/package.js +1 -1
  137. package/dist/packages/endpoint-tools-protocol/src/index.js +312 -305
  138. package/dist/packages/gateway-contract/src/agent-stream.js +6 -0
  139. package/dist/packages/gateway-contract/src/automations.js +215 -0
  140. package/dist/packages/gateway-contract/src/browser-page-context.js +48 -39
  141. package/dist/packages/gateway-contract/src/browser-tab-binding.js +30 -25
  142. package/dist/packages/gateway-contract/src/clarifications.js +6 -0
  143. package/dist/packages/gateway-contract/src/connection-waits.js +6 -0
  144. package/dist/packages/gateway-contract/src/conversation-identity.js +17 -0
  145. package/dist/packages/gateway-contract/src/device-pairing.js +84 -78
  146. package/dist/packages/gateway-contract/src/discussions.js +19 -15
  147. package/dist/packages/gateway-contract/src/files.js +55 -0
  148. package/dist/packages/gateway-contract/src/home.js +188 -0
  149. package/dist/packages/gateway-contract/src/index.js +65 -0
  150. package/dist/packages/gateway-contract/src/mobile-privacy.js +26 -0
  151. package/dist/packages/gateway-contract/src/model-selection.js +4 -1
  152. package/dist/packages/gateway-contract/src/new-session.js +5 -1
  153. package/dist/packages/gateway-contract/src/notifications.js +64 -59
  154. package/dist/packages/gateway-contract/src/proactive.js +133 -128
  155. package/dist/packages/gateway-contract/src/product-delivery.js +56 -50
  156. package/dist/packages/gateway-contract/src/project-monitoring.js +33 -28
  157. package/dist/packages/gateway-contract/src/project-operating.js +100 -0
  158. package/dist/packages/gateway-contract/src/session-identity.js +38 -34
  159. package/dist/packages/gateway-contract/src/session-input-reliability.js +6 -0
  160. package/dist/packages/gateway-contract/src/sessions.js +145 -0
  161. package/dist/packages/gateway-contract/src/task-lifecycle.js +69 -64
  162. package/dist/packages/gateway-contract/src/task-runs.js +80 -75
  163. package/dist/packages/gateway-contract/src/tasks.js +445 -438
  164. package/dist/packages/gateway-contract/src/tool-activity.js +154 -149
  165. package/dist/packages/gateway-contract/src/turn-outcome.js +118 -112
  166. package/dist/packages/gateway-contract/src/user-message-display.js +13 -8
  167. package/dist/packages/gateway-contract/src/welcome-suggestions.js +6 -0
  168. package/dist/packages/realtime-client/src/index.js +1 -1
  169. package/dist/packages/realtime-protocol/src/index.js +4 -2
  170. package/dist/packages/realtime-protocol/src/voice.js +4 -4
  171. package/dist/src/activity/types.d.ts +1 -1
  172. package/dist/src/agent/agent-instance-gateway.d.ts +18 -18
  173. package/dist/src/agent/agent-manager.d.ts +27 -27
  174. package/dist/src/agent/agent-manager.js +180 -179
  175. package/dist/src/agent/background-review/coordinator.d.ts +3 -3
  176. package/dist/src/agent/background-review/coordinator.js +10 -10
  177. package/dist/src/agent/background-review/run-background-review.d.ts +1 -1
  178. package/dist/src/agent/background-review/run-background-review.js +14 -14
  179. package/dist/src/agent/bootstrap/bootstrap-cache.d.ts +4 -4
  180. package/dist/src/agent/bootstrap/bootstrap-cache.js +9 -9
  181. package/dist/src/agent/bootstrap/bootstrap-files.d.ts +4 -4
  182. package/dist/src/agent/bootstrap/bootstrap-files.js +9 -9
  183. package/dist/src/agent/bootstrap/filter-bootstrap-files.d.ts +1 -1
  184. package/dist/src/agent/bootstrap/filter-bootstrap-files.js +3 -3
  185. package/dist/src/agent/child-agent-factory.d.ts +3 -3
  186. package/dist/src/agent/child-agent-factory.js +5 -5
  187. package/dist/src/agent/coding/workspace-revision.js +1 -1
  188. package/dist/src/agent/commands/command-registry.js +2 -1
  189. package/dist/src/agent/context/audit.d.ts +2 -2
  190. package/dist/src/agent/context/audit.js +5 -4
  191. package/dist/src/agent/context/coordinator.d.ts +6 -6
  192. package/dist/src/agent/context/coordinator.js +13 -13
  193. package/dist/src/agent/context/execution-context.js +4 -3
  194. package/dist/src/agent/context/execution-scope.d.ts +3 -3
  195. package/dist/src/agent/context/execution-scope.js +13 -13
  196. package/dist/src/agent/context/project-context.d.ts +1 -1
  197. package/dist/src/agent/context/project-context.js +4 -4
  198. package/dist/src/agent/embedded/execution-context.d.ts +1 -1
  199. package/dist/src/agent/embedded/execution-context.js +3 -3
  200. package/dist/src/agent/embedded/index.d.ts +1 -1
  201. package/dist/src/agent/embedded/index.js +2 -2
  202. package/dist/src/agent/embedded/run-for-session.d.ts +1 -1
  203. package/dist/src/agent/embedded/run-for-session.js +78 -104
  204. package/dist/src/agent/embedded/run-turn.js +77 -33
  205. package/dist/src/agent/embedded/runs.d.ts +11 -11
  206. package/dist/src/agent/embedded/runs.js +22 -22
  207. package/dist/src/agent/embedded/session-runner.d.ts +2 -2
  208. package/dist/src/agent/embedded/session-runner.js +5 -5
  209. package/dist/src/agent/embedded/session-tool-result-guard.d.ts +2 -2
  210. package/dist/src/agent/embedded/session-tool-result-guard.js +8 -8
  211. package/dist/src/agent/embedded/sqlite-hydrating-session-manager.d.ts +2 -2
  212. package/dist/src/agent/embedded/sqlite-hydrating-session-manager.js +4 -4
  213. package/dist/src/agent/embedded/transcript-runtime.d.ts +4 -3
  214. package/dist/src/agent/embedded/transcript-runtime.js +33 -20
  215. package/dist/src/agent/embedded/types.d.ts +2 -1
  216. package/dist/src/agent/external-tools/composio-provider.d.ts +1 -1
  217. package/dist/src/agent/external-tools/composio-provider.js +12 -11
  218. package/dist/src/agent/external-tools/endpoint-provider.js +1 -1
  219. package/dist/src/agent/external-tools/extension-provider.d.ts +1 -1
  220. package/dist/src/agent/external-tools/extension-provider.js +1 -1
  221. package/dist/src/agent/external-tools/gateway-tools.js +9 -8
  222. package/dist/src/agent/external-tools/index.js +3 -3
  223. package/dist/src/agent/external-tools/mcp-provider.d.ts +2 -2
  224. package/dist/src/agent/external-tools/mcp-provider.js +8 -8
  225. package/dist/src/agent/external-tools/memory-provider.d.ts +1 -1
  226. package/dist/src/agent/external-tools/memory-provider.js +1 -1
  227. package/dist/src/agent/external-tools/types.d.ts +1 -1
  228. package/dist/src/agent/inbound/attachment-pipeline.d.ts +7 -7
  229. package/dist/src/agent/inbound/attachment-pipeline.js +22 -21
  230. package/dist/src/agent/inbound/inbound-loop.d.ts +6 -6
  231. package/dist/src/agent/inbound/inbound-loop.js +23 -23
  232. package/dist/src/agent/inbound/turn-dispatcher.d.ts +14 -14
  233. package/dist/src/agent/inbound/turn-dispatcher.js +16 -16
  234. package/dist/src/agent/ipc/bus.d.ts +1 -1
  235. package/dist/src/agent/ipc/types.d.ts +3 -3
  236. package/dist/src/agent/ipc/types.js +1 -1
  237. package/dist/src/agent/lifecycle/hook-handler.d.ts +2 -2
  238. package/dist/src/agent/lifecycle/hook-handler.js +6 -6
  239. package/dist/src/agent/lifecycle/manager.d.ts +1 -1
  240. package/dist/src/agent/lifecycle/manager.js +4 -4
  241. package/dist/src/agent/lifecycle/types.d.ts +1 -1
  242. package/dist/src/agent/mcp/bundle-mcp-runtime.d.ts +4 -4
  243. package/dist/src/agent/mcp/bundle-mcp-runtime.js +21 -20
  244. package/dist/src/agent/mcp/bundle-mcp-tools.d.ts +1 -1
  245. package/dist/src/agent/mcp/bundle-mcp-tools.js +2 -2
  246. package/dist/src/agent/mcp/bundle-mcp-types.d.ts +4 -4
  247. package/dist/src/agent/mcp/index.js +2 -2
  248. package/dist/src/agent/mcp/oauth/mcp-oauth-manager.js +9 -8
  249. package/dist/src/agent/memory/compaction-ledger.js +9 -2
  250. package/dist/src/agent/memory/compaction-promotion.d.ts +2 -2
  251. package/dist/src/agent/memory/compaction-promotion.js +6 -6
  252. package/dist/src/agent/memory/compaction-source-planner.d.ts +2 -0
  253. package/dist/src/agent/memory/compaction-source-planner.js +9 -1
  254. package/dist/src/agent/memory/compaction.d.ts +6 -1
  255. package/dist/src/agent/memory/compaction.js +22 -11
  256. package/dist/src/agent/memory/context-recovery.d.ts +44 -0
  257. package/dist/src/agent/memory/context-recovery.js +96 -0
  258. package/dist/src/agent/memory/manager.js +11 -11
  259. package/dist/src/agent/memory/turn-provenance.d.ts +5 -5
  260. package/dist/src/agent/memory/turn-provenance.js +21 -17
  261. package/dist/src/agent/memory/types.d.ts +2 -2
  262. package/dist/src/agent/messaging/command-handler.d.ts +11 -11
  263. package/dist/src/agent/messaging/command-handler.js +7 -7
  264. package/dist/src/agent/messaging/message-router.d.ts +1 -1
  265. package/dist/src/agent/messaging/message-router.js +4 -4
  266. package/dist/src/agent/messaging/outbound-coordinator.d.ts +2 -2
  267. package/dist/src/agent/messaging/outbound-coordinator.js +4 -4
  268. package/dist/src/agent/middleware/context.d.ts +1 -2
  269. package/dist/src/agent/middleware/context.js +2 -5
  270. package/dist/src/agent/models/manager.d.ts +10 -10
  271. package/dist/src/agent/models/manager.js +34 -34
  272. package/dist/src/agent/orchestration/agent-event-handler.js +14 -14
  273. package/dist/src/agent/orchestration/agent-orchestrator.d.ts +7 -7
  274. package/dist/src/agent/orchestration/agent-orchestrator.js +29 -29
  275. package/dist/src/agent/orchestration/context-overflow.js +2 -0
  276. package/dist/src/agent/orchestration/llm-turn-retry.d.ts +1 -1
  277. package/dist/src/agent/orchestration/llm-turn-retry.js +2 -2
  278. package/dist/src/agent/orchestration/run-agent-turn-with-timeout.d.ts +1 -1
  279. package/dist/src/agent/orchestration/run-agent-turn-with-timeout.js +2 -2
  280. package/dist/src/agent/prompt/response-language.d.ts +1 -1
  281. package/dist/src/agent/prompt/response-language.js +2 -2
  282. package/dist/src/agent/prompt/service-prompt-builder.d.ts +2 -2
  283. package/dist/src/agent/prompt/service-prompt-builder.js +4 -4
  284. package/dist/src/agent/prompt/subagent-context.d.ts +4 -4
  285. package/dist/src/agent/prompt/subagent-context.js +1 -1
  286. package/dist/src/agent/prompt/system-prompt-params.d.ts +4 -4
  287. package/dist/src/agent/prompt/system-prompt-params.js +13 -12
  288. package/dist/src/agent/reply/apply-turn-user-enrichment.d.ts +1 -1
  289. package/dist/src/agent/reply/apply-turn-user-enrichment.js +3 -3
  290. package/dist/src/agent/reply/post-compaction-context.d.ts +1 -1
  291. package/dist/src/agent/reply/post-compaction-context.js +2 -2
  292. package/dist/src/agent/service/btw-query.d.ts +1 -1
  293. package/dist/src/agent/service/btw-query.js +4 -4
  294. package/dist/src/agent/service/build-direct-message-content.d.ts +1 -1
  295. package/dist/src/agent/service/build-direct-message-content.js +2 -2
  296. package/dist/src/agent/service/direct-turn-helpers.d.ts +6 -6
  297. package/dist/src/agent/service/direct-turn-helpers.js +17 -16
  298. package/dist/src/agent/service/parse-outbound-session-key.d.ts +1 -1
  299. package/dist/src/agent/service/parse-outbound-session-key.js +8 -9
  300. package/dist/src/agent/service/process-direct-one-shot.d.ts +11 -11
  301. package/dist/src/agent/service/process-direct-one-shot.js +16 -16
  302. package/dist/src/agent/service/process-direct-streaming.d.ts +18 -18
  303. package/dist/src/agent/service/process-direct-streaming.js +45 -40
  304. package/dist/src/agent/service/session-context-report.d.ts +1 -1
  305. package/dist/src/agent/service/session-context-report.js +3 -3
  306. package/dist/src/agent/service/webchat-tts.d.ts +3 -3
  307. package/dist/src/agent/service/webchat-tts.js +7 -7
  308. package/dist/src/agent/service.d.ts +23 -23
  309. package/dist/src/agent/service.js +111 -108
  310. package/dist/src/agent/service.types.d.ts +3 -3
  311. package/dist/src/agent/session/session-config-service.d.ts +5 -5
  312. package/dist/src/agent/session/session-config-service.js +53 -66
  313. package/dist/src/agent/session/session-context.d.ts +2 -2
  314. package/dist/src/agent/session/session-context.js +2 -2
  315. package/dist/src/agent/session/session-hydrator.d.ts +3 -3
  316. package/dist/src/agent/session/session-hydrator.js +19 -19
  317. package/dist/src/agent/session/session-inspector.d.ts +7 -7
  318. package/dist/src/agent/session/session-inspector.js +45 -45
  319. package/dist/src/agent/session/session-lifecycle.d.ts +2 -2
  320. package/dist/src/agent/session/session-lifecycle.js +17 -17
  321. package/dist/src/agent/session/session-state-bag.d.ts +18 -18
  322. package/dist/src/agent/session/session-state-bag.js +46 -46
  323. package/dist/src/agent/session/tracker.d.ts +7 -7
  324. package/dist/src/agent/session/tracker.js +27 -27
  325. package/dist/src/agent/source-context/types.d.ts +1 -1
  326. package/dist/src/agent/tasks/task-judge-service.d.ts +1 -1
  327. package/dist/src/agent/tasks/task-judge-service.js +11 -10
  328. package/dist/src/agent/tools/automation-tool.js +2 -0
  329. package/dist/src/agent/tools/chain-tracker.d.ts +10 -10
  330. package/dist/src/agent/tools/chain-tracker.js +31 -31
  331. package/dist/src/agent/tools/clarify-tool.d.ts +1 -1
  332. package/dist/src/agent/tools/create-share-tool.js +2 -0
  333. package/dist/src/agent/tools/delegate-tool.d.ts +1 -1
  334. package/dist/src/agent/tools/delegate-tool.js +4 -4
  335. package/dist/src/agent/tools/exec-command.d.ts +1 -1
  336. package/dist/src/agent/tools/exec-command.js +1 -1
  337. package/dist/src/agent/tools/factory.d.ts +3 -3
  338. package/dist/src/agent/tools/factory.js +36 -36
  339. package/dist/src/agent/tools/knowledge-memory-tool.js +2 -2
  340. package/dist/src/agent/tools/managed-job-tool.d.ts +1 -1
  341. package/dist/src/agent/tools/managed-job-tool.js +2 -2
  342. package/dist/src/agent/tools/publish-artifacts.js +2 -0
  343. package/dist/src/agent/tools/send-media.js +2 -0
  344. package/dist/src/agent/tools/session-recall-tool.d.ts +1 -1
  345. package/dist/src/agent/tools/session-recall-tool.js +3 -3
  346. package/dist/src/agent/tools/session-search-tool.d.ts +1 -1
  347. package/dist/src/agent/tools/session-search-tool.js +6 -6
  348. package/dist/src/agent/tools/skill-install-tool.d.ts +3 -3
  349. package/dist/src/agent/tools/skill-install-tool.js +3 -3
  350. package/dist/src/agent/tools/todo-tool.d.ts +3 -3
  351. package/dist/src/agent/tools/todo-tool.js +4 -4
  352. package/dist/src/agent/tools/workflow-tool.d.ts +1 -1
  353. package/dist/src/agent/tools/workflow-tool.js +15 -13
  354. package/dist/src/agent/tools/write.js +2 -0
  355. package/dist/src/agent/tools/xopc-use-tool.d.ts +1 -1
  356. package/dist/src/agent/tools/xopc-use-tool.js +16 -13
  357. package/dist/src/agent/types.d.ts +1 -1
  358. package/dist/src/agent/workflow/catalog.js +4 -2
  359. package/dist/src/agent/workflow/channel-capability.d.ts +2 -2
  360. package/dist/src/agent/workflow/progress-broker.d.ts +4 -4
  361. package/dist/src/agent/workflow/progress-broker.js +17 -17
  362. package/dist/src/agent/workflow/subagent-runner.js +10 -10
  363. package/dist/src/agent/workflow/types.d.ts +2 -2
  364. package/dist/src/agent/workflow/workflow-child-tools.js +1 -1
  365. package/dist/src/agent/workspace-runtime/registry.js +1 -1
  366. package/dist/src/automations/domain/types.d.ts +7 -7
  367. package/dist/src/automations/domain/validation.js +2 -0
  368. package/dist/src/automations/service/action-executor.js +15 -15
  369. package/dist/src/automations/service/automation-service.js +4 -3
  370. package/dist/src/automations/storage/automation-repository.js +2 -1
  371. package/dist/src/automations/storage/automation-run-repository.js +9 -8
  372. package/dist/src/browser/native-messaging-host.js +4 -1
  373. package/dist/src/browser/policy/approval-store.d.ts +4 -4
  374. package/dist/src/browser/policy/approval-store.js +8 -8
  375. package/dist/src/browser/providers/extension.js +6 -6
  376. package/dist/src/browser/providers/realtime-extension.js +2 -2
  377. package/dist/src/browser/runtime/browser-runtime.js +3 -3
  378. package/dist/src/channels/exec-approval-runtime.d.ts +1 -1
  379. package/dist/src/channels/manager.js +1 -1
  380. package/dist/src/channels/pipeline.js +2 -2
  381. package/dist/src/channels/plugin-types.d.ts +2 -2
  382. package/dist/src/channels/plugins/types.adapters.d.ts +1 -1
  383. package/dist/src/channels/telegram/index.d.ts +1 -1
  384. package/dist/src/channels/telegram/index.js +2 -2
  385. package/dist/src/chat-commands/agent-edit.js +2 -2
  386. package/dist/src/chat-commands/builtins/review.js +4 -4
  387. package/dist/src/chat-commands/builtins/session.js +1 -1
  388. package/dist/src/chat-commands/builtins/system.js +2 -2
  389. package/dist/src/chat-commands/builtins/thinking.js +7 -7
  390. package/dist/src/chat-commands/builtins/understanding.js +4 -4
  391. package/dist/src/chat-commands/builtins/workflow.js +8 -8
  392. package/dist/src/chat-commands/context.d.ts +9 -9
  393. package/dist/src/chat-commands/context.js +35 -35
  394. package/dist/src/chat-commands/index.d.ts +1 -1
  395. package/dist/src/chat-commands/index.js +2 -2
  396. package/dist/src/chat-commands/processor.js +2 -2
  397. package/dist/src/chat-commands/registry.js +1 -1
  398. package/dist/src/chat-commands/session-key.d.ts +3 -3
  399. package/dist/src/chat-commands/session-key.js +20 -24
  400. package/dist/src/chat-commands/types.d.ts +3 -3
  401. package/dist/src/cli/command-manifest.js +1 -1
  402. package/dist/src/cli/commands/agent/interactive.d.ts +1 -1
  403. package/dist/src/cli/commands/agent/interactive.js +8 -8
  404. package/dist/src/cli/commands/agent/stream-renderer.d.ts +1 -1
  405. package/dist/src/cli/commands/agent/stream-renderer.js +2 -2
  406. package/dist/src/cli/commands/agent.js +10 -6
  407. package/dist/src/cli/commands/doctor/checks/database-schema.js +3 -2
  408. package/dist/src/cli/commands/doctor/checks/session-integrity.js +9 -9
  409. package/dist/src/cli/commands/gateway/lifecycle.js +1 -1
  410. package/dist/src/cli/commands/gateway/run-foreground.js +2 -1
  411. package/dist/src/cli/commands/import.js +2 -1
  412. package/dist/src/cli/commands/logs.js +3 -3
  413. package/dist/src/cli/commands/project.js +5 -5
  414. package/dist/src/cli/commands/resume.js +4 -4
  415. package/dist/src/cli/commands/tunnel.js +2 -1
  416. package/dist/src/config/agent-profile.d.ts +3 -3
  417. package/dist/src/config/agent-profile.js +12 -12
  418. package/dist/src/config/models-json.d.ts +6 -6
  419. package/dist/src/config/schema.d.ts +1 -1
  420. package/dist/src/connectors/catalog.js +2 -1
  421. package/dist/src/connectors/composio-sessions.d.ts +1 -1
  422. package/dist/src/connectors/composio-sessions.js +3 -3
  423. package/dist/src/connectors/connection-recovery-service.d.ts +4 -4
  424. package/dist/src/connectors/connection-recovery-service.js +41 -37
  425. package/dist/src/connectors/principal.d.ts +1 -1
  426. package/dist/src/connectors/principal.js +4 -3
  427. package/dist/src/connectors/types.d.ts +2 -2
  428. package/dist/src/discussions/action-tasks.js +5 -2
  429. package/dist/src/discussions/analyzer.js +2 -1
  430. package/dist/src/discussions/edits.js +4 -2
  431. package/dist/src/discussions/index.js +1 -1
  432. package/dist/src/discussions/organizer.js +3 -2
  433. package/dist/src/discussions/recording.js +5 -2
  434. package/dist/src/discussions/recordingJobs.js +2 -1
  435. package/dist/src/discussions/repository.js +2 -1
  436. package/dist/src/discussions/revisions.js +2 -1
  437. package/dist/src/discussions/sealer.js +1 -1
  438. package/dist/src/discussions/service.js +6 -3
  439. package/dist/src/discussions/types.js +4 -0
  440. package/dist/src/endpoint-tools/auth.js +2 -1
  441. package/dist/src/endpoint-tools/binding-service.d.ts +8 -8
  442. package/dist/src/endpoint-tools/binding-service.js +14 -14
  443. package/dist/src/endpoint-tools/invocation-service.js +2 -1
  444. package/dist/src/endpoint-tools/policy.js +2 -1
  445. package/dist/src/endpoint-tools/registry.js +2 -1
  446. package/dist/src/endpoint-tools/upload-service.js +2 -1
  447. package/dist/src/execution-environments/local-worktree-manager.d.ts +1 -1
  448. package/dist/src/execution-environments/local-worktree-manager.js +2 -2
  449. package/dist/src/execution-environments/session-environment-service.d.ts +3 -3
  450. package/dist/src/execution-environments/session-environment-service.js +10 -10
  451. package/dist/src/execution-environments/store.d.ts +2 -2
  452. package/dist/src/execution-environments/store.js +15 -14
  453. package/dist/src/execution-environments/subject.d.ts +1 -1
  454. package/dist/src/execution-environments/subject.js +2 -2
  455. package/dist/src/execution-environments/types.d.ts +2 -2
  456. package/dist/src/extensions/api.js +1 -1
  457. package/dist/src/extensions/install.js +1 -1
  458. package/dist/src/extensions/loader.d.ts +1 -1
  459. package/dist/src/extensions/types/core.d.ts +2 -2
  460. package/dist/src/extensions/types/hooks.d.ts +12 -12
  461. package/dist/src/extensions/types/tools.d.ts +3 -3
  462. package/dist/src/extensions/types/tui.d.ts +3 -3
  463. package/dist/src/files/file-service.d.ts +3 -3
  464. package/dist/src/files/file-service.js +3 -3
  465. package/dist/src/gateway/automation-agent-session.js +5 -5
  466. package/dist/src/gateway/chat-stream/mapper.d.ts +1 -1
  467. package/dist/src/gateway/chat-stream/mapper.js +4 -2
  468. package/dist/src/gateway/chat-stream/protocol.d.ts +1 -1
  469. package/dist/src/gateway/chat-stream/thinking-delta-coalescer.js +1 -1
  470. package/dist/src/gateway/clarify-runtime.d.ts +2 -2
  471. package/dist/src/gateway/clarify-runtime.js +2 -2
  472. package/dist/src/gateway/file-path-classifier.d.ts +2 -2
  473. package/dist/src/gateway/file-path-classifier.js +4 -4
  474. package/dist/src/gateway/file-reference-registry.d.ts +2 -2
  475. package/dist/src/gateway/file-reference-registry.js +1 -1
  476. package/dist/src/gateway/file-space-service.js +3 -3
  477. package/dist/src/gateway/gateway-workflow-host.types.d.ts +1 -1
  478. package/dist/src/gateway/heartbeat/check-store.js +2 -1
  479. package/dist/src/gateway/heartbeat/service.js +23 -9
  480. package/dist/src/gateway/hono/middleware/log-context.d.ts +1 -1
  481. package/dist/src/gateway/hono/middleware/log-context.js +3 -3
  482. package/dist/src/gateway/hono/routes/agent-stream.js +20 -20
  483. package/dist/src/gateway/hono/routes/browser-session.js +2 -2
  484. package/dist/src/gateway/hono/routes/browser.js +22 -20
  485. package/dist/src/gateway/hono/routes/chat-model-config.d.ts +1 -1
  486. package/dist/src/gateway/hono/routes/chat-model-config.js +6 -6
  487. package/dist/src/gateway/hono/routes/commands-skills.js +13 -13
  488. package/dist/src/gateway/hono/routes/connection-waits.js +5 -5
  489. package/dist/src/gateway/hono/routes/connectors.js +5 -5
  490. package/dist/src/gateway/hono/routes/context-sources.js +2 -1
  491. package/dist/src/gateway/hono/routes/device-pairing-approval.js +2 -0
  492. package/dist/src/gateway/hono/routes/devices.js +2 -0
  493. package/dist/src/gateway/hono/routes/discussions.js +2 -2
  494. package/dist/src/gateway/hono/routes/endpoint-tools.js +8 -7
  495. package/dist/src/gateway/hono/routes/execution-environments.js +11 -11
  496. package/dist/src/gateway/hono/routes/file-references.js +5 -5
  497. package/dist/src/gateway/hono/routes/home.js +1 -1
  498. package/dist/src/gateway/hono/routes/interaction-state.js +6 -6
  499. package/dist/src/gateway/hono/routes/logs.js +2 -2
  500. package/dist/src/gateway/hono/routes/media.js +3 -3
  501. package/dist/src/gateway/hono/routes/notes.js +11 -11
  502. package/dist/src/gateway/hono/routes/projects.js +26 -26
  503. package/dist/src/gateway/hono/routes/public-gateway.js +3 -3
  504. package/dist/src/gateway/hono/routes/session-input-handler.d.ts +10 -10
  505. package/dist/src/gateway/hono/routes/session-input-handler.js +20 -17
  506. package/dist/src/gateway/hono/routes/sessions.js +79 -50
  507. package/dist/src/gateway/hono/routes/shares.js +38 -38
  508. package/dist/src/gateway/hono/routes/side-chats.js +4 -2
  509. package/dist/src/gateway/hono/routes/site-shares.js +6 -6
  510. package/dist/src/gateway/hono/routes/tasks.js +18 -13
  511. package/dist/src/gateway/hono/routes/tui.js +2 -2
  512. package/dist/src/gateway/hono/routes/user-model.js +1 -1
  513. package/dist/src/gateway/hono/routes/voice.js +1 -1
  514. package/dist/src/gateway/hono/routes/workflows.js +9 -9
  515. package/dist/src/gateway/media-access.d.ts +1 -1
  516. package/dist/src/gateway/media-access.js +3 -3
  517. package/dist/src/gateway/resolve-webchat-session-key.d.ts +5 -5
  518. package/dist/src/gateway/resolve-webchat-session-key.js +5 -5
  519. package/dist/src/gateway/service/agent-runner.d.ts +15 -15
  520. package/dist/src/gateway/service/agent-runner.js +63 -62
  521. package/dist/src/gateway/service/marketplace-service.d.ts +3 -3
  522. package/dist/src/gateway/service/marketplace-service.js +6 -6
  523. package/dist/src/gateway/service/run-gateway-agent.js +51 -49
  524. package/dist/src/gateway/service/session-input-coordinator.d.ts +11 -11
  525. package/dist/src/gateway/service/session-input-coordinator.js +76 -74
  526. package/dist/src/gateway/service/sessions-api.d.ts +19 -20
  527. package/dist/src/gateway/service/sessions-api.js +30 -38
  528. package/dist/src/gateway/service/task-conversation-query-service.d.ts +3 -2
  529. package/dist/src/gateway/service/task-conversation-query-service.js +3 -3
  530. package/dist/src/gateway/service.d.ts +4 -4
  531. package/dist/src/gateway/service.js +75 -69
  532. package/dist/src/gateway/session-context-summary.d.ts +1 -1
  533. package/dist/src/gateway/session-context-summary.js +13 -11
  534. package/dist/src/gateway/session-reset-service.d.ts +4 -4
  535. package/dist/src/gateway/session-reset-service.js +12 -12
  536. package/dist/src/gateway/side-chat/context-snapshot.d.ts +2 -2
  537. package/dist/src/gateway/side-chat/context-snapshot.js +2 -2
  538. package/dist/src/gateway/side-chat/manager.d.ts +4 -4
  539. package/dist/src/gateway/side-chat/manager.js +13 -13
  540. package/dist/src/gateway/side-chat/run-service.js +8 -8
  541. package/dist/src/gateway/side-chat/types.d.ts +4 -4
  542. package/dist/src/heartbeat/index.js +1 -1
  543. package/dist/src/heartbeat/wake.d.ts +1 -1
  544. package/dist/src/history/ctx/exporter.js +11 -11
  545. package/dist/src/history/ctx/format.d.ts +1 -1
  546. package/dist/src/history/ctx/format.js +7 -7
  547. package/dist/src/imports/contextImport.js +2 -1
  548. package/dist/src/imports/productImport.js +2 -1
  549. package/dist/src/infra/node-sqlite.js +9 -3
  550. package/dist/src/infra/process-diagnostics.js +9 -5
  551. package/dist/src/infra/sqlite-errors.js +25 -20
  552. package/dist/src/infra/unhandled-rejections.js +15 -7
  553. package/dist/src/infra/update-restart.js +1 -1
  554. package/dist/src/infra/warning-filter.js +9 -3
  555. package/dist/src/knowledge-memory/domain.d.ts +2 -2
  556. package/dist/src/knowledge-memory/repository.d.ts +1 -1
  557. package/dist/src/knowledge-memory/repository.js +10 -8
  558. package/dist/src/mcp/channel-bridge.d.ts +3 -3
  559. package/dist/src/mcp/channel-bridge.js +7 -7
  560. package/dist/src/mcp/channel-shared.d.ts +4 -4
  561. package/dist/src/mcp/channel-shared.js +3 -3
  562. package/dist/src/mcp/channel-tools.js +19 -19
  563. package/dist/src/media/session-references.js +2 -2
  564. package/dist/src/memory-maintenance/service.js +2 -1
  565. package/dist/src/migrations/conversation-routing-config.d.ts +2 -0
  566. package/dist/src/migrations/conversation-routing-config.js +42 -0
  567. package/dist/src/migrations/runner.js +6 -5
  568. package/dist/src/notes/service.d.ts +2 -2
  569. package/dist/src/notes/service.js +6 -6
  570. package/dist/src/notes/store.js +2 -1
  571. package/dist/src/notes/types.d.ts +3 -3
  572. package/dist/src/notifications/device-store.js +2 -1
  573. package/dist/src/notifications/planner.js +5 -3
  574. package/dist/src/notifications/proactive-channel.js +4 -1
  575. package/dist/src/notifications/proactive-policy.js +2 -1
  576. package/dist/src/notifications/service.d.ts +4 -4
  577. package/dist/src/notifications/service.js +4 -1
  578. package/dist/src/notifications/store.js +4 -1
  579. package/dist/src/notifications/web-push.js +4 -1
  580. package/dist/src/platform/contracts.d.ts +3 -3
  581. package/dist/src/proactive/actions/service.js +2 -1
  582. package/dist/src/proactive/events/product-event-bridge.js +1 -1
  583. package/dist/src/proactive/events/repository.js +2 -1
  584. package/dist/src/proactive/execution/authorization.js +2 -1
  585. package/dist/src/proactive/execution/context.js +2 -1
  586. package/dist/src/proactive/execution/insight.js +2 -0
  587. package/dist/src/proactive/execution/repository.js +2 -1
  588. package/dist/src/proactive/execution/worker.js +3 -2
  589. package/dist/src/proactive/experience.d.ts +1 -1
  590. package/dist/src/proactive/experience.js +4 -3
  591. package/dist/src/proactive/follow-ups.d.ts +7 -7
  592. package/dist/src/proactive/follow-ups.js +5 -4
  593. package/dist/src/proactive/inbox/cards.js +5 -2
  594. package/dist/src/proactive/inbox/delivery.js +2 -1
  595. package/dist/src/proactive/inbox/digest.js +2 -1
  596. package/dist/src/proactive/inbox/lifecycle.js +2 -1
  597. package/dist/src/proactive/inbox/repository.js +2 -1
  598. package/dist/src/proactive/inbox/service.js +2 -1
  599. package/dist/src/proactive/mail-thread.js +2 -1
  600. package/dist/src/proactive/maintenance.js +2 -1
  601. package/dist/src/proactive/metrics.js +2 -1
  602. package/dist/src/proactive/policy/presence.js +2 -1
  603. package/dist/src/proactive/policy/service.js +4 -1
  604. package/dist/src/proactive/routing/batch-repository.js +2 -1
  605. package/dist/src/proactive/scenarios/control.js +4 -1
  606. package/dist/src/proactive/scenarios/repository.js +2 -1
  607. package/dist/src/proactive/service.js +2 -1
  608. package/dist/src/proactive/source-freshness.js +2 -1
  609. package/dist/src/proactive/status.js +2 -1
  610. package/dist/src/proactive/temporal/schedule.js +2 -1
  611. package/dist/src/projects/automation-bind.js +2 -1
  612. package/dist/src/projects/index.js +2 -2
  613. package/dist/src/projects/knowledge-bind.js +2 -1
  614. package/dist/src/projects/project-agent.js +4 -1
  615. package/dist/src/projects/project-service.d.ts +4 -4
  616. package/dist/src/projects/project-service.js +11 -10
  617. package/dist/src/projects/project-store.js +11 -9
  618. package/dist/src/projects/session-bind.d.ts +5 -5
  619. package/dist/src/projects/session-bind.js +18 -17
  620. package/dist/src/projects/types.d.ts +1 -1
  621. package/dist/src/projects/workflow-bind.js +2 -1
  622. package/dist/src/projects/workspace.d.ts +3 -3
  623. package/dist/src/projects/workspace.js +6 -6
  624. package/dist/src/providers/model-reference-auditor.js +1 -1
  625. package/dist/src/providers/prompt-cache-lifecycle.d.ts +2 -2
  626. package/dist/src/providers/prompt-cache-lifecycle.js +6 -6
  627. package/dist/src/realtime/broker.js +3 -3
  628. package/dist/src/realtime/runtime.js +1 -1
  629. package/dist/src/retrieval/queryProfile.d.ts +1 -1
  630. package/dist/src/routing/agent-session-key.d.ts +12 -41
  631. package/dist/src/routing/agent-session-key.js +39 -120
  632. package/dist/src/routing/conversation-route.d.ts +28 -0
  633. package/dist/src/routing/conversation-route.js +50 -0
  634. package/dist/src/routing/index.d.ts +2 -2
  635. package/dist/src/routing/index.js +5 -5
  636. package/dist/src/routing/resolve-route.d.ts +4 -9
  637. package/dist/src/routing/resolve-route.js +20 -60
  638. package/dist/src/routing/resolve-tui-session-key.d.ts +5 -13
  639. package/dist/src/routing/resolve-tui-session-key.js +11 -36
  640. package/dist/src/routing/session-key.d.ts +6 -39
  641. package/dist/src/routing/session-key.js +13 -161
  642. package/dist/src/session/client-history.js +2 -0
  643. package/dist/src/session/compaction-types.js +18 -13
  644. package/dist/src/session/config-store.d.ts +8 -8
  645. package/dist/src/session/config-store.js +19 -19
  646. package/dist/src/session/index.d.ts +2 -2
  647. package/dist/src/session/index.js +9 -5
  648. package/dist/src/session/init-session-turn.d.ts +7 -7
  649. package/dist/src/session/init-session-turn.js +18 -18
  650. package/dist/src/session/manager.d.ts +7 -7
  651. package/dist/src/session/manager.js +6 -6
  652. package/dist/src/session/model-config-lock.d.ts +1 -1
  653. package/dist/src/session/model-config-lock.js +4 -4
  654. package/dist/src/session/resolve-session.d.ts +10 -10
  655. package/dist/src/session/resolve-session.js +20 -20
  656. package/dist/src/session/session-context-for-llm.js +17 -10
  657. package/dist/src/session/session-title.d.ts +5 -5
  658. package/dist/src/session/session-title.js +28 -28
  659. package/dist/src/session/session-workspace.d.ts +1 -1
  660. package/dist/src/session/session-workspace.js +3 -3
  661. package/dist/src/session/store.d.ts +14 -14
  662. package/dist/src/session/store.js +70 -50
  663. package/dist/src/session/stored-rows-to-file-entries.d.ts +1 -1
  664. package/dist/src/session/stored-rows-to-file-entries.js +5 -3
  665. package/dist/src/session/thinking-resolve.d.ts +2 -2
  666. package/dist/src/session/thinking-resolve.js +4 -4
  667. package/dist/src/session/transcript-events.d.ts +1 -1
  668. package/dist/src/session/transcript-events.js +3 -3
  669. package/dist/src/session/transcript-outline.js +2 -1
  670. package/dist/src/session/turn-outcome-projector.js +2 -0
  671. package/dist/src/session/types.d.ts +5 -4
  672. package/dist/src/session/types.js +13 -9
  673. package/dist/src/session/user-message-display.js +2 -0
  674. package/dist/src/session/user-round-delete.js +2 -1
  675. package/dist/src/session/voice-transcript.js +8 -3
  676. package/dist/src/share/hosted-session-share.d.ts +6 -6
  677. package/dist/src/share/hosted-session-share.js +13 -11
  678. package/dist/src/share/hosted-static-site-publish.d.ts +1 -1
  679. package/dist/src/share/hosted-static-site-publish.js +1 -1
  680. package/dist/src/share/session-share-service.d.ts +9 -9
  681. package/dist/src/share/session-share-service.js +19 -19
  682. package/dist/src/share/share-store.d.ts +2 -2
  683. package/dist/src/share/share-store.js +9 -7
  684. package/dist/src/share/share-types.d.ts +2 -2
  685. package/dist/src/share/site-share-router.d.ts +2 -2
  686. package/dist/src/share/site-share-store.js +4 -2
  687. package/dist/src/share/site-share-types.d.ts +1 -1
  688. package/dist/src/storage/sqlite/activity-repository.js +2 -1
  689. package/dist/src/storage/sqlite/browser-session-repository.js +2 -1
  690. package/dist/src/storage/sqlite/browser-tab-binding-repository.d.ts +2 -2
  691. package/dist/src/storage/sqlite/browser-tab-binding-repository.js +10 -9
  692. package/dist/src/storage/sqlite/clarification-wait-repository.d.ts +7 -7
  693. package/dist/src/storage/sqlite/clarification-wait-repository.js +58 -53
  694. package/dist/src/storage/sqlite/collaboration-rule-repository.js +2 -1
  695. package/dist/src/storage/sqlite/composer-input-history-repository.js +2 -1
  696. package/dist/src/storage/sqlite/config-repository.d.ts +6 -6
  697. package/dist/src/storage/sqlite/config-repository.js +29 -25
  698. package/dist/src/storage/sqlite/connection-wait-repository.d.ts +11 -11
  699. package/dist/src/storage/sqlite/connection-wait-repository.js +61 -51
  700. package/dist/src/storage/sqlite/connection.js +28 -18
  701. package/dist/src/storage/sqlite/connector-account-repository.js +2 -1
  702. package/dist/src/storage/sqlite/connector-learning-repository.js +2 -1
  703. package/dist/src/storage/sqlite/connector-repository.d.ts +1 -1
  704. package/dist/src/storage/sqlite/connector-repository.js +11 -10
  705. package/dist/src/storage/sqlite/connector-sync-policy-repository.js +2 -1
  706. package/dist/src/storage/sqlite/context-evidence-repository.d.ts +1 -1
  707. package/dist/src/storage/sqlite/context-evidence-repository.js +7 -6
  708. package/dist/src/storage/sqlite/context-extraction-repository.js +2 -1
  709. package/dist/src/storage/sqlite/context-relation-repository.js +2 -1
  710. package/dist/src/storage/sqlite/conversation-repository.d.ts +12 -0
  711. package/dist/src/storage/sqlite/conversation-repository.js +76 -0
  712. package/dist/src/storage/sqlite/device-access-repository.js +4 -1
  713. package/dist/src/storage/sqlite/device-pairing-approval.js +4 -1
  714. package/dist/src/storage/sqlite/device-pairing-repository.js +2 -1
  715. package/dist/src/storage/sqlite/durable-queue.js +4 -2
  716. package/dist/src/storage/sqlite/durable-state.js +4 -2
  717. package/dist/src/storage/sqlite/endpoint-principal-repository.js +2 -1
  718. package/dist/src/storage/sqlite/endpoint-session-binding-repository.d.ts +3 -3
  719. package/dist/src/storage/sqlite/endpoint-session-binding-repository.js +12 -11
  720. package/dist/src/storage/sqlite/endpoint-tool-invocation-repository.js +2 -1
  721. package/dist/src/storage/sqlite/fts.js +39 -34
  722. package/dist/src/storage/sqlite/gateway-identity-repository.js +2 -1
  723. package/dist/src/storage/sqlite/home-attention-repository.js +2 -1
  724. package/dist/src/storage/sqlite/import-repository.js +2 -1
  725. package/dist/src/storage/sqlite/import-selection-repository.js +2 -1
  726. package/dist/src/storage/sqlite/index.d.ts +1 -1
  727. package/dist/src/storage/sqlite/index.js +25 -11
  728. package/dist/src/storage/sqlite/interaction-state-repository.d.ts +4 -4
  729. package/dist/src/storage/sqlite/interaction-state-repository.js +12 -11
  730. package/dist/src/storage/sqlite/knowledge-repository.js +2 -1
  731. package/dist/src/storage/sqlite/migrations/178_conversation_uuid.sql +2 -0
  732. package/dist/src/storage/sqlite/migrations/conversation-backup.d.ts +3 -0
  733. package/dist/src/storage/sqlite/migrations/conversation-backup.js +88 -0
  734. package/dist/src/storage/sqlite/migrations/conversation-backup.ts +66 -0
  735. package/dist/src/storage/sqlite/migrations/conversation-key-decoder.d.ts +8 -0
  736. package/dist/src/storage/sqlite/migrations/conversation-key-decoder.js +87 -0
  737. package/dist/src/storage/sqlite/migrations/conversation-key-decoder.ts +50 -0
  738. package/dist/src/storage/sqlite/migrations/conversation-uuid.d.ts +8 -0
  739. package/dist/src/storage/sqlite/migrations/conversation-uuid.js +366 -0
  740. package/dist/src/storage/sqlite/migrations/conversation-uuid.ts +324 -0
  741. package/dist/src/storage/sqlite/migrations/conversation-windows-owners.d.ts +1 -0
  742. package/dist/src/storage/sqlite/migrations/conversation-windows-owners.js +92 -0
  743. package/dist/src/storage/sqlite/migrations/conversation-windows-owners.ts +71 -0
  744. package/dist/src/storage/sqlite/migrations/discover.js +7 -3
  745. package/dist/src/storage/sqlite/migrations/errors.js +28 -23
  746. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  747. package/dist/src/storage/sqlite/migrations/runner.js +43 -14
  748. package/dist/src/storage/sqlite/migrations/runner.ts +13 -3
  749. package/dist/src/storage/sqlite/migrations/types.d.ts +1 -1
  750. package/dist/src/storage/sqlite/migrations/types.ts +1 -1
  751. package/dist/src/storage/sqlite/note-agent-context-repository.js +2 -1
  752. package/dist/src/storage/sqlite/notes-repository.js +4 -2
  753. package/dist/src/storage/sqlite/paths.js +6 -2
  754. package/dist/src/storage/sqlite/relationship-settings-repository.js +2 -1
  755. package/dist/src/storage/sqlite/row-mappers.d.ts +10 -10
  756. package/dist/src/storage/sqlite/row-mappers.js +22 -15
  757. package/dist/src/storage/sqlite/schema-version.js +7 -2
  758. package/dist/src/storage/sqlite/schema.js +14 -6
  759. package/dist/src/storage/sqlite/session-identity-sql.js +12 -5
  760. package/dist/src/storage/sqlite/session-input-repository.d.ts +14 -14
  761. package/dist/src/storage/sqlite/session-input-repository.js +69 -61
  762. package/dist/src/storage/sqlite/session-instance-repository.d.ts +1 -1
  763. package/dist/src/storage/sqlite/session-instance-repository.js +6 -3
  764. package/dist/src/storage/sqlite/session-metadata.d.ts +2 -2
  765. package/dist/src/storage/sqlite/session-metadata.js +7 -3
  766. package/dist/src/storage/sqlite/session-repository.d.ts +15 -15
  767. package/dist/src/storage/sqlite/session-repository.js +126 -102
  768. package/dist/src/storage/sqlite/session-task-plan-repository.d.ts +3 -3
  769. package/dist/src/storage/sqlite/session-task-plan-repository.js +21 -19
  770. package/dist/src/storage/sqlite/session-turn-replace-repository.d.ts +2 -2
  771. package/dist/src/storage/sqlite/session-turn-replace-repository.js +26 -22
  772. package/dist/src/storage/sqlite/transaction.js +12 -6
  773. package/dist/src/storage/sqlite/transcript-repository.d.ts +14 -14
  774. package/dist/src/storage/sqlite/transcript-repository.js +107 -102
  775. package/dist/src/storage/sqlite/user-people-repository.js +2 -1
  776. package/dist/src/storage/sqlite/user-trust-repository.js +2 -1
  777. package/dist/src/support/collect-support-report.js +7 -7
  778. package/dist/src/support/types.d.ts +2 -2
  779. package/dist/src/support/types.js +1 -1
  780. package/dist/src/tasks/execution-context.d.ts +2 -2
  781. package/dist/src/tasks/execution-context.js +3 -3
  782. package/dist/src/tasks/home-query-service.d.ts +2 -2
  783. package/dist/src/tasks/home-query-service.js +6 -6
  784. package/dist/src/tasks/index.js +6 -2
  785. package/dist/src/tasks/project-monitoring-service.js +2 -1
  786. package/dist/src/tasks/project-operating-view-service.js +2 -1
  787. package/dist/src/tasks/task-application-service.js +9 -4
  788. package/dist/src/tasks/task-change-events.js +7 -2
  789. package/dist/src/tasks/task-context-assembler.d.ts +2 -2
  790. package/dist/src/tasks/task-context-assembler.js +12 -9
  791. package/dist/src/tasks/task-context-repository.d.ts +1 -1
  792. package/dist/src/tasks/task-context-repository.js +4 -3
  793. package/dist/src/tasks/task-conversation-repository.d.ts +7 -7
  794. package/dist/src/tasks/task-conversation-repository.js +27 -26
  795. package/dist/src/tasks/task-deletion-service.js +2 -1
  796. package/dist/src/tasks/task-dependency-service.js +2 -1
  797. package/dist/src/tasks/task-handoff-service.d.ts +2 -2
  798. package/dist/src/tasks/task-handoff-service.js +16 -15
  799. package/dist/src/tasks/task-outbox-dispatcher.js +2 -1
  800. package/dist/src/tasks/task-read-model-projector.js +4 -2
  801. package/dist/src/tasks/task-repository.js +2 -1
  802. package/dist/src/tasks/task-run-coordinator.js +6 -5
  803. package/dist/src/tasks/task-run-dispatcher.d.ts +1 -1
  804. package/dist/src/tasks/task-run-dispatcher.js +4 -3
  805. package/dist/src/tasks/task-run-repository.d.ts +2 -2
  806. package/dist/src/tasks/task-run-repository.js +219 -212
  807. package/dist/src/tasks/task-signal-service.js +6 -2
  808. package/dist/src/tasks/task-workflow-coordinator.js +2 -1
  809. package/dist/src/tui/backends/embedded-backend.d.ts +33 -32
  810. package/dist/src/tui/backends/embedded-backend.js +95 -83
  811. package/dist/src/tui/backends/gateway-realtime-backend.d.ts +34 -33
  812. package/dist/src/tui/backends/gateway-realtime-backend.js +95 -78
  813. package/dist/src/tui/components/branch-summary.js +3 -3
  814. package/dist/src/tui/components/session-selector.d.ts +5 -5
  815. package/dist/src/tui/components/session-selector.js +7 -7
  816. package/dist/src/tui/components/tui-bottom-bar.js +1 -1
  817. package/dist/src/tui/components/tui-header.d.ts +1 -1
  818. package/dist/src/tui/components/tui-header.js +2 -2
  819. package/dist/src/tui/extension-host/autocomplete.d.ts +2 -2
  820. package/dist/src/tui/extension-host/autocomplete.js +4 -4
  821. package/dist/src/tui/extension-host/host.d.ts +1 -1
  822. package/dist/src/tui/extension-host/runtime-context.d.ts +1 -1
  823. package/dist/src/tui/extension-host/runtime-context.js +2 -2
  824. package/dist/src/tui/extension-host/runtime.d.ts +1 -1
  825. package/dist/src/tui/extension-host/runtime.js +6 -6
  826. package/dist/src/tui/tui-backend.d.ts +43 -39
  827. package/dist/src/tui/tui-command-formatters.d.ts +2 -2
  828. package/dist/src/tui/tui-command-formatters.js +10 -18
  829. package/dist/src/tui/tui-commands.d.ts +3 -3
  830. package/dist/src/tui/tui-commands.js +31 -33
  831. package/dist/src/tui/tui-empty-session-cleanup.d.ts +2 -3
  832. package/dist/src/tui/tui-empty-session-cleanup.js +7 -15
  833. package/dist/src/tui/tui-file-autocomplete.d.ts +1 -1
  834. package/dist/src/tui/tui-file-autocomplete.js +2 -2
  835. package/dist/src/tui/tui-new-session-preferences.js +2 -0
  836. package/dist/src/tui/tui-picker-overlay.d.ts +1 -1
  837. package/dist/src/tui/tui-picker-overlay.js +41 -53
  838. package/dist/src/tui/tui-picker-services.d.ts +3 -3
  839. package/dist/src/tui/tui-session-actions.d.ts +1 -1
  840. package/dist/src/tui/tui-session-actions.js +8 -17
  841. package/dist/src/tui/tui-session-format.js +4 -1
  842. package/dist/src/tui/tui-session-snapshot.d.ts +2 -2
  843. package/dist/src/tui/tui-session-snapshot.js +4 -4
  844. package/dist/src/tui/tui-settings.js +2 -0
  845. package/dist/src/tui/tui-startup-resources.d.ts +1 -1
  846. package/dist/src/tui/tui-startup-resources.js +3 -3
  847. package/dist/src/tui/tui-startup-text.js +1 -1
  848. package/dist/src/tui/tui-transcript-tree-picker.d.ts +1 -1
  849. package/dist/src/tui/tui-transcript-tree-picker.js +2 -2
  850. package/dist/src/tui/tui-types.d.ts +4 -2
  851. package/dist/src/tui/tui-types.js +2 -2
  852. package/dist/src/tui/tui.js +114 -112
  853. package/dist/src/user-context/access-policy.d.ts +1 -1
  854. package/dist/src/user-context/access-policy.js +6 -5
  855. package/dist/src/user-context/changes.js +9 -4
  856. package/dist/src/user-context/domain.d.ts +1 -1
  857. package/dist/src/user-context/relationship-continuity.d.ts +1 -1
  858. package/dist/src/user-context/relationship-continuity.js +1 -1
  859. package/dist/src/user-context/sources/repository.js +4 -2
  860. package/dist/src/user-model/capture/executor.d.ts +1 -1
  861. package/dist/src/user-model/capture/executor.js +3 -3
  862. package/dist/src/user-model/goals.js +2 -1
  863. package/dist/src/user-model/repository.js +2 -1
  864. package/dist/src/utils/global-singleton.js +4 -1
  865. package/dist/src/utils/logger/context.d.ts +1 -1
  866. package/dist/src/utils/logger/context.js +2 -2
  867. package/dist/src/utils/logger/log-store.js +2 -2
  868. package/dist/src/utils/logger/pino-record.js +6 -6
  869. package/dist/src/utils/logger/types.d.ts +6 -6
  870. package/dist/src/voice/realtime/agentBroker.d.ts +6 -6
  871. package/dist/src/voice/realtime/agentBroker.js +6 -6
  872. package/dist/src/voice/realtime/agentEngine.js +6 -6
  873. package/dist/src/voice/realtime/memory-context.d.ts +2 -2
  874. package/dist/src/voice/realtime/memory-context.js +15 -15
  875. package/dist/src/voice/realtime/persona-context.d.ts +1 -1
  876. package/dist/src/voice/realtime/persona-context.js +6 -6
  877. package/dist/src/voice/realtime/runtime.d.ts +1 -1
  878. package/dist/src/voice/realtime/runtime.js +14 -13
  879. package/dist/src/voice/realtime/runtime.types.d.ts +6 -6
  880. package/dist/src/work-discovery/investigation-repository.js +4 -2
  881. package/dist/src/work-discovery/probe.js +1 -1
  882. package/dist/src/work-discovery/repository.js +7 -5
  883. package/dist/src/work-discovery/service.js +33 -29
  884. package/dist/src/work-discovery/types.d.ts +1 -1
  885. package/dist/src/workflows/context/workflow-context-snapshot-repository.js +2 -1
  886. package/dist/src/workflows/domain/event.d.ts +1 -1
  887. package/dist/src/workflows/domain/run.d.ts +5 -5
  888. package/dist/src/workflows/engine/projector.js +1 -1
  889. package/dist/src/workflows/engine/workflow-engine.d.ts +2 -2
  890. package/dist/src/workflows/engine/workflow-engine.js +15 -18
  891. package/dist/src/workflows/index.js +3 -3
  892. package/dist/src/workflows/project-presets/project-workflow-preset-repository.js +2 -1
  893. package/dist/src/workflows/service/run-view-to-snapshot.js +1 -1
  894. package/dist/src/workflows/service/workflow-run-service.d.ts +2 -2
  895. package/dist/src/workflows/service/workflow-run-service.js +53 -42
  896. package/dist/src/workflows/service/workflow-run-service.types.d.ts +2 -2
  897. package/dist/src/workflows/service/workflow-session-bridge.d.ts +2 -2
  898. package/dist/src/workflows/service/workflow-session-bridge.js +31 -31
  899. package/dist/src/workflows/service/workflow-session-key.d.ts +1 -1
  900. package/dist/src/workflows/service/workflow-session-key.js +4 -4
  901. package/dist/src/workflows/service/workflow-writeback-service.js +2 -1
  902. package/dist/src/workflows/store/event-store.js +4 -2
  903. package/dist/src/workflows/store/run-index-store.js +9 -8
  904. package/package.json +4 -4
  905. package/dist/gateway/static/root/assets/api-COG_Tzpv.js +0 -1
  906. package/dist/gateway/static/root/assets/apps-page-6qxxKFsK.js +0 -1
  907. package/dist/gateway/static/root/assets/button-BA45yciM.js +0 -1
  908. package/dist/gateway/static/root/assets/capabilities-settings-panel-DM1Bcf1x.js +0 -8
  909. package/dist/gateway/static/root/assets/channels-settings-Bq36CUxL.js +0 -1
  910. package/dist/gateway/static/root/assets/desktop-pet-DtPNvznL.js +0 -1
  911. package/dist/gateway/static/root/assets/extension-settings-page-C75kCOqe.js +0 -1
  912. package/dist/gateway/static/root/assets/gateway-settings-BCF732TU.js +0 -1
  913. package/dist/gateway/static/root/assets/index-ChIrvv3t.js +0 -74
  914. package/dist/gateway/static/root/assets/index-R1VNlHjj.css +0 -2
  915. package/dist/gateway/static/root/assets/locale-store-DlOv7896.js +0 -1
  916. package/dist/gateway/static/root/assets/logs-page-DHZ4BEkG.js +0 -2
  917. package/dist/gateway/static/root/assets/messages-Ls1Aaiqd.js +0 -3
  918. package/dist/gateway/static/root/assets/notes-page-DfZ8QWyv.js +0 -8
  919. package/dist/gateway/static/root/assets/page-tabs-BG39KidE.js +0 -1
  920. package/dist/gateway/static/root/assets/popover-select-DGmMQt4t.js +0 -1
  921. package/dist/gateway/static/root/assets/proactive-page-D2U_xQaS.js +0 -1
  922. package/dist/gateway/static/root/assets/project-detail-page-CzlGTW4F.js +0 -1
  923. package/dist/gateway/static/root/assets/projects-page-mQsM-TsP.js +0 -1
  924. package/dist/gateway/static/root/assets/remote-access-hub-Cb56JcO1.js +0 -1
  925. package/dist/gateway/static/root/assets/settings-advanced-gate-CV4-_EVA.js +0 -1
  926. package/dist/gateway/static/root/assets/settings-form-section-wcAdCkK8.js +0 -1
  927. package/dist/gateway/static/root/assets/settings-page-layout-DYelDcMV.js +0 -1
  928. package/dist/gateway/static/root/assets/shares-settings-xlJh1ccG.js +0 -1
  929. package/dist/gateway/static/root/assets/skill-reload-api-wSXJRSxX.js +0 -1
  930. package/dist/gateway/static/root/assets/task-detail-page-sQpwq5-c.js +0 -1
  931. package/dist/gateway/static/root/assets/tunnel-api-Boajol0M.js +0 -1
  932. package/dist/src/routing/session-key-utils.d.ts +0 -23
  933. package/dist/src/routing/session-key-utils.js +0 -85
  934. package/dist/src/session/session-id.d.ts +0 -3
  935. package/dist/src/session/session-id.js +0 -10
@@ -8,8 +8,8 @@ function expandKeyLabel(keybindings) {
8
8
  function branchSummaryMarkdown(summary) {
9
9
  const lines = [
10
10
  `**Rows forked:** ${summary.rowCount.toLocaleString()}`,
11
- `**Source:** ${summary.sourceSessionKey}`,
12
- `**Target:** ${summary.targetSessionKey}`
11
+ `**Source:** ${summary.sourceConversationId}`,
12
+ `**Target:** ${summary.targetConversationId}`
13
13
  ];
14
14
  if (summary.entryId) lines.push(`**Entry:** ${summary.entryId}`);
15
15
  if (summary.restoredText?.trim()) lines.push("", "**Restored input:**", summary.restoredText.trim());
@@ -39,7 +39,7 @@ var BranchSummaryComponent = class extends Container {
39
39
  const title = `${theme.bold("[branch]")} ${theme.dim(`${this.summary.rowCount.toLocaleString()} rows`)}`;
40
40
  this.body.addChild(new Text(title, 1, 1, (text) => theme.toolSuccessBg(text)));
41
41
  if (!this.expanded) {
42
- this.body.addChild(new Text(theme.dim(`Forked to ${this.summary.targetSessionKey} (${expandKeyLabel(this.keybindings)} to expand)`), 1, 0));
42
+ this.body.addChild(new Text(theme.dim(`Forked to ${this.summary.targetConversationId} (${expandKeyLabel(this.keybindings)} to expand)`), 1, 0));
43
43
  return;
44
44
  }
45
45
  this.body.addChild(new Markdown(branchSummaryMarkdown(this.summary), 1, 0, markdownTheme, { color: (line) => theme.assistantText(line) }, { preserveOrderedListMarkers: true }));
@@ -1,12 +1,12 @@
1
1
  import { type Focusable, type Component, type KeybindingsManager, type SelectItem } from '@earendil-works/pi-tui';
2
2
  import type { TuiSessionItem } from '../tui-backend.js';
3
3
  export type SessionSelectorCallbacks = {
4
- onResume: (sessionKey: string) => void;
5
- onRename: (sessionKey: string, name: string) => Promise<{
4
+ onResume: (conversationId: string) => void;
5
+ onRename: (conversationId: string, name: string) => Promise<{
6
6
  ok: boolean;
7
7
  error?: string;
8
8
  }>;
9
- onDelete: (sessionKey: string) => Promise<{
9
+ onDelete: (conversationId: string) => Promise<{
10
10
  ok: boolean;
11
11
  error?: string;
12
12
  }>;
@@ -19,7 +19,7 @@ export declare class SessionSelector implements Component, Focusable {
19
19
  private readonly callbacks;
20
20
  private readonly keybindings?;
21
21
  private readonly currentCwd?;
22
- private readonly currentSessionKey?;
22
+ private readonly currentConversationId?;
23
23
  private sessions;
24
24
  private readonly list;
25
25
  private readonly footer;
@@ -31,7 +31,7 @@ export declare class SessionSelector implements Component, Focusable {
31
31
  private showKey;
32
32
  private scope;
33
33
  private _focused;
34
- constructor(sessions: TuiSessionItem[], callbacks: SessionSelectorCallbacks, keybindings?: KeybindingsManager, currentCwd?: string, currentSessionKey?: string);
34
+ constructor(sessions: TuiSessionItem[], callbacks: SessionSelectorCallbacks, keybindings?: KeybindingsManager, currentCwd?: string, currentConversationId?: string);
35
35
  get focused(): boolean;
36
36
  set focused(value: boolean);
37
37
  setSessions(sessions: TuiSessionItem[]): void;
@@ -119,11 +119,11 @@ var SessionSelector = class {
119
119
  showKey = false;
120
120
  scope = "current";
121
121
  _focused = false;
122
- constructor(sessions, callbacks, keybindings, currentCwd, currentSessionKey) {
122
+ constructor(sessions, callbacks, keybindings, currentCwd, currentConversationId) {
123
123
  this.callbacks = callbacks;
124
124
  this.keybindings = keybindings;
125
125
  this.currentCwd = currentCwd;
126
- this.currentSessionKey = currentSessionKey;
126
+ this.currentConversationId = currentConversationId;
127
127
  this.sessions = sessions;
128
128
  this.list = new SearchableSelectList(toSelectItems(sessions, this.sortByName, this.namedOnly, this.showKey, this.scope, this.currentCwd), 12, searchableSelectListTheme, { filterItems: filterSessionSelectItems });
129
129
  this.list.onSelect = (item) => {
@@ -189,7 +189,7 @@ var SessionSelector = class {
189
189
  triggerDeleteForSelectedSession() {
190
190
  const item = this.list.getSelectedItem();
191
191
  if (!item) return;
192
- if (item.value === this.currentSessionKey) {
192
+ if (item.value === this.currentConversationId) {
193
193
  this.pendingDeleteKey = null;
194
194
  this.setFooterHint("Cannot delete the active session");
195
195
  this.callbacks.requestRender();
@@ -263,14 +263,14 @@ var SessionSelector = class {
263
263
  }
264
264
  if (this.pendingDeleteKey) {
265
265
  if (this.matchesAction(keyData, "tui.select.confirm", ["enter"])) {
266
- const sessionKey = this.pendingDeleteKey;
266
+ const conversationId = this.pendingDeleteKey;
267
267
  this.pendingDeleteKey = null;
268
- this.callbacks.onDelete(sessionKey).then((result) => {
268
+ this.callbacks.onDelete(conversationId).then((result) => {
269
269
  if (result.ok) {
270
- this.sessions = this.sessions.filter((s) => s.key !== sessionKey);
270
+ this.sessions = this.sessions.filter((s) => s.key !== conversationId);
271
271
  this.refreshList();
272
272
  }
273
- this.setFooterHint(result.ok ? `Deleted ${sessionKey}` : result.error ?? "Delete failed");
273
+ this.setFooterHint(result.ok ? `Deleted ${conversationId}` : result.error ?? "Delete failed");
274
274
  this.callbacks.requestRender();
275
275
  });
276
276
  return;
@@ -83,7 +83,7 @@ var TuiBottomBar = class {
83
83
  const branch = getGitBranchCached(cwdRaw);
84
84
  return branch ? `${cwd} (${branch})` : cwd;
85
85
  })() : "workspace loading";
86
- const sessionLine = state.sessionInfo.displayName ?? `session ${state.currentSessionKey}`;
86
+ const sessionLine = state.sessionInfo.displayName ?? `session ${state.currentConversationId}`;
87
87
  const pwdLine = truncateToWidth(theme.dim(`${cwdWithBranch} · ${sessionLine}`), width, theme.dim("…"));
88
88
  const busy = BUSY_ACTIVITY.has(state.activityStatus);
89
89
  const leftParts = [state.connectionStatus];
@@ -2,7 +2,7 @@ import type { Component, KeybindingsManager } from '@earendil-works/pi-tui';
2
2
  export type TuiHeaderModel = {
3
3
  version: string;
4
4
  connectionLabel: string;
5
- sessionKey: string;
5
+ conversationId: string;
6
6
  showHints: boolean;
7
7
  };
8
8
  /** Collapsible startup header (pi-style hints subset). */
@@ -28,8 +28,8 @@ var TuiHeader = class {
28
28
  }
29
29
  render(width) {
30
30
  if (this.customComponent) return this.customComponent.render(width).map((line) => truncateToWidth(line, width, theme.dim("…")));
31
- const { version, connectionLabel, sessionKey, showHints } = this.getModel();
32
- const lines = [truncateToWidth(theme.header(`xopc tui v${version} — ${connectionLabel} — ${sessionKey}`), width, theme.dim("…"))];
31
+ const { version, connectionLabel, conversationId, showHints } = this.getModel();
32
+ const lines = [truncateToWidth(theme.header(`xopc tui v${version} — ${connectionLabel} — ${conversationId}`), width, theme.dim("…"))];
33
33
  if (showHints) {
34
34
  lines.push(truncateToWidth(theme.dim(this.getCompactHints()), width, theme.dim("…")));
35
35
  lines.push(truncateToWidth(theme.dim(STARTUP_HELP_HINT), width, theme.dim("…")));
@@ -11,10 +11,10 @@ export declare class ChainedAutocompleteProvider implements AutocompleteProvider
11
11
  private readonly extraProviders;
12
12
  private readonly extensionSlashCommands;
13
13
  private readonly baseSlashCommandNames;
14
- private readonly getSessionKey;
14
+ private readonly getConversationId;
15
15
  private readonly cwd;
16
16
  private readonly additionalSlashCommands;
17
- constructor(primary: AutocompleteProvider, extraProviders: TuiAutocompleteProvider[], extensionSlashCommands: ExtensionSlashCommandAutocompleteItem[], baseSlashCommandNames: Set<string>, getSessionKey: () => string, cwd: string, additionalSlashCommands?: ExtensionSlashCommandAutocompleteItem[]);
17
+ constructor(primary: AutocompleteProvider, extraProviders: TuiAutocompleteProvider[], extensionSlashCommands: ExtensionSlashCommandAutocompleteItem[], baseSlashCommandNames: Set<string>, getConversationId: () => string, cwd: string, additionalSlashCommands?: ExtensionSlashCommandAutocompleteItem[]);
18
18
  getSuggestions(lines: string[], cursorLine: number, cursorCol: number, options: {
19
19
  signal: AbortSignal;
20
20
  force?: boolean;
@@ -8,12 +8,12 @@ function dedupeAutocompleteItems(items) {
8
8
  });
9
9
  }
10
10
  var ChainedAutocompleteProvider = class {
11
- constructor(primary, extraProviders, extensionSlashCommands, baseSlashCommandNames, getSessionKey, cwd, additionalSlashCommands = []) {
11
+ constructor(primary, extraProviders, extensionSlashCommands, baseSlashCommandNames, getConversationId, cwd, additionalSlashCommands = []) {
12
12
  this.primary = primary;
13
13
  this.extraProviders = extraProviders;
14
14
  this.extensionSlashCommands = extensionSlashCommands;
15
15
  this.baseSlashCommandNames = baseSlashCommandNames;
16
- this.getSessionKey = getSessionKey;
16
+ this.getConversationId = getConversationId;
17
17
  this.cwd = cwd;
18
18
  this.additionalSlashCommands = additionalSlashCommands;
19
19
  }
@@ -47,12 +47,12 @@ var ChainedAutocompleteProvider = class {
47
47
  if (!atMatch) return primary;
48
48
  const query = atMatch[1] ?? "";
49
49
  const prefix = `@${query}`;
50
- const sessionKey = this.getSessionKey();
50
+ const conversationId = this.getConversationId();
51
51
  const items = [];
52
52
  for (const provider of this.extraProviders) {
53
53
  const suggestions = await provider(query, {
54
54
  cwd: this.cwd,
55
- sessionKey
55
+ conversationId
56
56
  });
57
57
  for (const s of suggestions) {
58
58
  const value = s.value ?? `@${s.name}`;
@@ -4,7 +4,7 @@ import { TuiExtensionSurface } from './surface.js';
4
4
  export interface TuiExtensionHostDeps {
5
5
  extensionId: string;
6
6
  surface: TuiExtensionSurface;
7
- getSessionKey: () => string;
7
+ getConversationId: () => string;
8
8
  notify: (message: string, level?: TuiNotifyLevel) => void;
9
9
  onTerminalInputAdded: (handler: TuiTerminalInputHandler) => () => void;
10
10
  showOverlay: (component: Component) => void;
@@ -4,7 +4,7 @@ import type { ChatLog } from '../components/chat-log.js';
4
4
  import type { TuiState } from '../tui-types.js';
5
5
  export declare const STALE_EXTENSION_CONTEXT_MESSAGE = "This extension ctx is stale after session replacement or reload. Do not use a captured pi or command ctx after ctx.newSession(), ctx.fork(), ctx.switchSession(), or ctx.reload(). For newSession, fork, and switchSession, move post-replacement work into withSession and use the ctx passed to withSession. For reload, do not use the old ctx after await ctx.reload().";
6
6
  export declare function boundedWidgetLines(lines: string[]): string[];
7
- export declare function createEmptySessionManager(cwd: string, sessionKey: string): TuiReadonlySessionManager;
7
+ export declare function createEmptySessionManager(cwd: string, conversationId: string): TuiReadonlySessionManager;
8
8
  export declare function createDefaultModelRegistry(): TuiModelRegistry;
9
9
  export declare function resolveCustomOverlayOptions(component: TuiCustomComponent, customOpts?: TuiCustomOptions): OverlayOptions | undefined;
10
10
  export declare function invokeCustomFactory<T>(factory: TuiCustomFactory<T>, tui: TUI, keybindings: KeybindingsManager | undefined, done: (result: T) => void): TuiCustomComponent | Promise<TuiCustomComponent>;
@@ -17,7 +17,7 @@ function boundedWidgetLines(lines) {
17
17
  if (lines.length <= MAX_WIDGET_LINES) return lines;
18
18
  return [...lines.slice(0, MAX_WIDGET_LINES), WIDGET_TRUNCATED_LINE];
19
19
  }
20
- function createEmptySessionManager(cwd, sessionKey) {
20
+ function createEmptySessionManager(cwd, conversationId) {
21
21
  return {
22
22
  getEntries: () => [],
23
23
  getBranch: () => [],
@@ -27,7 +27,7 @@ function createEmptySessionManager(cwd, sessionKey) {
27
27
  getLabel: () => void 0,
28
28
  getHeader: () => null,
29
29
  getTree: () => [],
30
- getSessionId: () => sessionKey,
30
+ getSessionId: () => conversationId,
31
31
  getSessionFile: () => void 0,
32
32
  getSessionDir: () => void 0,
33
33
  getSessionName: () => void 0,
@@ -73,7 +73,7 @@ export interface CreateTuiExtensionRuntimeOptions {
73
73
  reload?: () => Promise<void>;
74
74
  sendUserMessage?: TuiReplacedSessionContext['sendUserMessage'];
75
75
  sendMessage?: TuiReplacedSessionContext['sendMessage'];
76
- searchWorkspaceFiles?: (sessionKey: string, query: string, options?: {
76
+ searchWorkspaceFiles?: (conversationId: string, query: string, options?: {
77
77
  limit?: number;
78
78
  }) => Promise<Array<{
79
79
  name: string;
@@ -48,7 +48,7 @@ function createTuiExtensionRuntime(opts) {
48
48
  const autocompleteProvider = new WrappedAutocompleteProvider(new ChainedAutocompleteProvider(new CombinedAutocompleteProvider(opts.baseSlashCommands.map((c) => ({
49
49
  name: c.name,
50
50
  description: c.description
51
- })), opts.cwd, null), autocompleteProviders, slashCommands, new Set(opts.baseSlashCommands.map((command) => command.name)), () => opts.getState().currentSessionKey, opts.cwd, opts.additionalSlashCommands ?? []), autocompleteProviderFactories);
51
+ })), opts.cwd, null), autocompleteProviders, slashCommands, new Set(opts.baseSlashCommands.map((command) => command.name)), () => opts.getState().currentConversationId, opts.cwd, opts.additionalSlashCommands ?? []), autocompleteProviderFactories);
52
52
  const invalidate = () => {
53
53
  opts.header.setCustomComponent?.(surface.customHeader);
54
54
  opts.header.setExtensionLines(surface.getHeaderLines());
@@ -216,7 +216,7 @@ function createTuiExtensionRuntime(opts) {
216
216
  assertActive();
217
217
  return opts.getSystemPromptOptions?.() ?? {
218
218
  cwd: opts.cwd,
219
- sessionKey: opts.getState().currentSessionKey,
219
+ conversationId: opts.getState().currentConversationId,
220
220
  model: getTuiModelInfo(opts.getState())
221
221
  };
222
222
  },
@@ -321,7 +321,7 @@ function createTuiExtensionRuntime(opts) {
321
321
  enumerable: true,
322
322
  get: () => {
323
323
  assertActive();
324
- return opts.getSessionManager?.() ?? createEmptySessionManager(opts.cwd, opts.getState().currentSessionKey);
324
+ return opts.getSessionManager?.() ?? createEmptySessionManager(opts.cwd, opts.getState().currentConversationId);
325
325
  }
326
326
  },
327
327
  modelRegistry: {
@@ -345,11 +345,11 @@ function createTuiExtensionRuntime(opts) {
345
345
  return opts.cwd;
346
346
  }
347
347
  },
348
- sessionKey: {
348
+ conversationId: {
349
349
  enumerable: true,
350
350
  get: () => {
351
351
  assertActive();
352
- return opts.getState().currentSessionKey;
352
+ return opts.getState().currentConversationId;
353
353
  }
354
354
  }
355
355
  });
@@ -457,7 +457,7 @@ function createTuiExtensionRuntime(opts) {
457
457
  const createHost = (extensionId) => createTuiExtensionHost({
458
458
  extensionId,
459
459
  surface,
460
- getSessionKey: () => opts.getState().currentSessionKey,
460
+ getConversationId: () => opts.getState().currentConversationId,
461
461
  notify: (message, level) => notifyInChatLog(opts.chatLog, opts.tui, message, level),
462
462
  onTerminalInputAdded: (handler) => {
463
463
  const unregister = opts.addInputListener?.(handler);
@@ -5,7 +5,7 @@ import type { ReviewContext } from '../review/review-git.js';
5
5
  import type { SessionInfo, TuiEventSource } from './tui-types.js';
6
6
  /** Options for sending a chat message. */
7
7
  export interface ChatSendOptions {
8
- sessionKey: string;
8
+ conversationId: string;
9
9
  message: string;
10
10
  attachments?: TuiInboundAttachment[];
11
11
  thinking?: string;
@@ -32,13 +32,16 @@ export interface TuiComposerHistoryItem {
32
32
  }
33
33
  /** Minimal session list item. */
34
34
  export interface TuiSessionItem {
35
+ agentId?: string;
36
+ sourceChannel?: string;
37
+ generatedShell?: boolean;
35
38
  key: string;
36
39
  updatedAt?: number | null;
37
40
  model?: string | null;
38
41
  totalTokens?: number | null;
39
42
  displayName?: string;
40
43
  messageCount?: number;
41
- forkedFromSessionKey?: string;
44
+ forkedFromConversationId?: string;
42
45
  cwd?: string;
43
46
  }
44
47
  export interface TuiAgentInfo {
@@ -83,8 +86,8 @@ export interface TuiCompactionResult {
83
86
  transcriptSummary?: string;
84
87
  }
85
88
  export interface TuiBranchSummary {
86
- sourceSessionKey: string;
87
- targetSessionKey: string;
89
+ sourceConversationId: string;
90
+ targetConversationId: string;
88
91
  rowCount: number;
89
92
  entryId?: string;
90
93
  restoredText?: string;
@@ -118,7 +121,7 @@ export interface TuiStartupResources {
118
121
  connectors: string[];
119
122
  }
120
123
  export interface TuiChatInputState {
121
- sessionKey: string;
124
+ conversationId: string;
122
125
  revision: number;
123
126
  inputs: Array<{
124
127
  id: string;
@@ -132,7 +135,7 @@ export interface TuiWorkspaceFileSearchEntry {
132
135
  isDirectory: boolean;
133
136
  }
134
137
  export interface TuiWorkflowRunStartRequest {
135
- sessionKey: string;
138
+ conversationId: string;
136
139
  definitionId: string;
137
140
  agentId?: string;
138
141
  goal?: string;
@@ -140,7 +143,7 @@ export interface TuiWorkflowRunStartRequest {
140
143
  }
141
144
  export interface TuiWorkflowRunStartResult {
142
145
  runId: string;
143
- sessionKey: string;
146
+ conversationId: string;
144
147
  definitionId: string;
145
148
  }
146
149
  export interface TuiStartupProjectResult {
@@ -204,7 +207,7 @@ export interface TuiBackend {
204
207
  }>;
205
208
  /** Reattach to a live gateway/webchat run when the original response stream stalled. */
206
209
  resumeChat?(opts: {
207
- sessionKey: string;
210
+ conversationId: string;
208
211
  runId: string;
209
212
  }): Promise<{
210
213
  ok: boolean;
@@ -212,60 +215,60 @@ export interface TuiBackend {
212
215
  }>;
213
216
  /** Abort an active run. */
214
217
  abortChat(opts: {
215
- sessionKey: string;
218
+ conversationId: string;
216
219
  runId: string;
217
220
  }): Promise<{
218
221
  ok: boolean;
219
222
  }>;
220
223
  /** Inject steering text into an active run (tool-boundary delivery). */
221
224
  submitChatInput(opts: {
222
- sessionKey: string;
225
+ conversationId: string;
223
226
  message: string;
224
227
  delivery: 'next' | 'steer';
225
228
  }): Promise<{
226
229
  ok: boolean;
227
230
  effectiveDelivery?: 'next' | 'steer';
228
231
  }>;
229
- getChatInputState(sessionKey: string): Promise<TuiChatInputState>;
232
+ getChatInputState(conversationId: string): Promise<TuiChatInputState>;
230
233
  /** Start a workflow run directly, without routing through the LLM. */
231
234
  startWorkflowRun?(opts: TuiWorkflowRunStartRequest): Promise<TuiWorkflowRunStartResult>;
232
235
  /** Resolve or create the project implied by the TUI launch workspace. */
233
236
  resolveStartupProject?(opts: {
234
237
  workspacePath: string;
235
- sessionKey: string;
238
+ conversationId: string;
236
239
  agentId: string;
237
240
  autoCreate?: boolean;
238
241
  }): Promise<TuiStartupProjectResult>;
239
242
  /** Load startup resources shown in `/start` and initial help. */
240
- getStartupResources?(sessionKey: string): Promise<TuiStartupResources>;
243
+ getStartupResources?(conversationId: string): Promise<TuiStartupResources>;
241
244
  /** Re-evaluate project-scoped resources after a local trust decision changes. */
242
245
  refreshWorkspaceTrust?(): void | Promise<void>;
243
246
  /** Fuzzy search files in this session's effective workspace. */
244
- searchWorkspaceFiles?(sessionKey: string, query: string, options?: {
247
+ searchWorkspaceFiles?(conversationId: string, query: string, options?: {
245
248
  limit?: number;
246
249
  }): Promise<TuiWorkspaceFileSearchEntry[]>;
247
250
  /** Load git branches/commits/status for the interactive review launcher. */
248
- getReviewContext?(sessionKey: string): Promise<ReviewContext>;
251
+ getReviewContext?(conversationId: string): Promise<ReviewContext>;
249
252
  /** Load chat history for a session. */
250
253
  loadHistory(opts: {
251
- sessionKey: string;
254
+ conversationId: string;
252
255
  limit?: number;
253
256
  }): Promise<{
254
257
  messages: HistoryMessage[];
255
258
  }>;
256
259
  /** Load a bounded transcript window around a persisted row number. */
257
260
  loadHistoryWindow?(opts: {
258
- sessionKey: string;
261
+ conversationId: string;
259
262
  rowNumber: number;
260
263
  before?: number;
261
264
  after?: number;
262
265
  }): Promise<TuiHistoryWindow>;
263
266
  /** Load current transcript rows as a tree-shaped list. */
264
- loadTranscriptTree(sessionKey: string): Promise<TuiTranscriptTreeEntry[]>;
267
+ loadTranscriptTree(conversationId: string): Promise<TuiTranscriptTreeEntry[]>;
265
268
  /** Load current transcript rows as timeline items for turn navigation. */
266
- loadTimeline(sessionKey: string): Promise<SessionTimelineItem[]>;
269
+ loadTimeline(conversationId: string): Promise<SessionTimelineItem[]>;
267
270
  /** Compute transcript message/token statistics. */
268
- getSessionStats(sessionKey: string): Promise<TuiSessionStats>;
271
+ getSessionStats(conversationId: string): Promise<TuiSessionStats>;
269
272
  /** List sessions. */
270
273
  listSessions(): Promise<TuiSessionItem[]>;
271
274
  /** List agents available for TUI agent switching. */
@@ -275,64 +278,65 @@ export interface TuiBackend {
275
278
  agentId: string;
276
279
  }>;
277
280
  /** Fetch session info (model, tokens, thinking). */
278
- getSessionInfo(sessionKey: string): Promise<SessionInfo>;
281
+ getSessionInfo(conversationId: string): Promise<SessionInfo>;
282
+ createConversation(agentId: string, conversationId?: string): Promise<string>;
279
283
  /** List available models. */
280
284
  listModels(): Promise<TuiModelChoice[]>;
281
285
  /** Refresh dynamic model catalogs after credentials change. */
282
286
  refreshModels?(): Promise<void>;
283
287
  /** Reset / create new session. */
284
- resetSession(sessionKey: string): Promise<void>;
288
+ resetSession(conversationId: string): Promise<void>;
285
289
  /** Rename session display name. */
286
- renameSession(sessionKey: string, name: string): Promise<{
290
+ renameSession(conversationId: string, name: string): Promise<{
287
291
  ok: boolean;
288
292
  }>;
289
293
  /** Delete session and transcript. */
290
- deleteSession(sessionKey: string): Promise<{
294
+ deleteSession(conversationId: string): Promise<{
291
295
  ok: boolean;
292
296
  }>;
293
297
  /** Patch session settings (e.g. model). */
294
- patchSession(sessionKey: string, patch: Record<string, unknown>): Promise<void>;
298
+ patchSession(conversationId: string, patch: Record<string, unknown>): Promise<void>;
295
299
  /** Compact session transcript (returns whether compaction ran). */
296
- compactSession(sessionKey: string, options?: {
300
+ compactSession(conversationId: string, options?: {
297
301
  force?: boolean;
298
302
  instructions?: string;
299
303
  }): Promise<TuiCompactionResult>;
300
304
  /** Export a session transcript. */
301
- exportSession(sessionKey: string, format: ExportFormat): Promise<string>;
305
+ exportSession(conversationId: string, format: ExportFormat): Promise<string>;
302
306
  /** Import an xopc JSON session export into a new session key. */
303
- importSession(targetSessionKey: string, jsonContent: string): Promise<{
304
- sessionKey: string;
307
+ importSession(targetConversationId: string, jsonContent: string): Promise<{
308
+ conversationId: string;
305
309
  rowCount: number;
306
310
  }>;
307
311
  /** Create a share link for a workspace file/folder/site artifact. */
308
- createShare(sessionKey: string, request: TuiShareRequest, options?: {
312
+ createShare(conversationId: string, request: TuiShareRequest, options?: {
309
313
  agentId?: string;
310
314
  }): Promise<TuiShareResult>;
311
315
  /** Ask an ephemeral side question using this session as read-only background. */
312
- btwQuery(sessionKey: string, question: string): Promise<{
316
+ btwQuery(conversationId: string, question: string): Promise<{
313
317
  text: string;
314
318
  error?: string;
315
319
  }>;
316
320
  /** Fork one session transcript into a new session key. */
317
- forkSession(sourceSessionKey: string, targetSessionKey: string): Promise<{
318
- sessionKey: string;
321
+ forkSession(sourceConversationId: string, targetConversationId: string): Promise<{
322
+ conversationId: string;
319
323
  rowCount: number;
320
324
  }>;
321
325
  /** Fork one session transcript through a selected transcript-tree entry. */
322
- forkSessionAt(sourceSessionKey: string, targetSessionKey: string, entryId: string): Promise<{
323
- sessionKey: string;
326
+ forkSessionAt(sourceConversationId: string, targetConversationId: string, entryId: string): Promise<{
327
+ conversationId: string;
324
328
  rowCount: number;
325
329
  }>;
326
330
  /** Append or clear a label for a transcript entry. */
327
- setTranscriptLabel(sessionKey: string, entryId: string, label: string | undefined): Promise<{
331
+ setTranscriptLabel(conversationId: string, entryId: string, label: string | undefined): Promise<{
328
332
  ok: boolean;
329
333
  }>;
330
334
  /** Append extension state for replay by TUI extension sessionManager APIs. */
331
- appendCustomEntry(sessionKey: string, customType: string, data?: unknown): Promise<{
335
+ appendCustomEntry(conversationId: string, customType: string, data?: unknown): Promise<{
332
336
  ok: boolean;
333
337
  }>;
334
338
  /** Append a visible extension custom message. */
335
- appendCustomMessage(sessionKey: string, message: {
339
+ appendCustomMessage(conversationId: string, message: {
336
340
  customType: string;
337
341
  content?: string | unknown[];
338
342
  display?: boolean;
@@ -341,7 +345,7 @@ export interface TuiBackend {
341
345
  ok: boolean;
342
346
  }>;
343
347
  /** Persist a local TUI shell execution for replay and optional LLM context. */
344
- appendBashExecution(sessionKey: string, entry: {
348
+ appendBashExecution(conversationId: string, entry: {
345
349
  command: string;
346
350
  output?: string;
347
351
  exitCode?: number | null;
@@ -41,11 +41,11 @@ export declare function formatTuiDebugInfo(params: {
41
41
  export declare function writeTuiDebugInfo(deps: TuiDebugDeps): string;
42
42
  export declare function formatTuiModelsInfo(models: TuiModelChoice[]): string;
43
43
  export declare function formatTuiSessionListInfo(sessions: TuiSessionItem[], options?: {
44
- currentSessionKey?: string;
44
+ currentConversationId?: string;
45
45
  limit?: number;
46
46
  }): string;
47
47
  export declare function formatTuiSessionTreeInfo(sessions: TuiSessionItem[], options?: {
48
- currentSessionKey?: string;
48
+ currentConversationId?: string;
49
49
  limitPerGroup?: number;
50
50
  }): string;
51
51
  export declare function formatTuiTranscriptTreeInfo(entries: TuiTranscriptTreeEntry[], options?: {
@@ -1,8 +1,6 @@
1
1
  import { getLogDir } from "../utils/logger/config.js";
2
2
  import { getRuntimeLogStats } from "../utils/logger/stats.js";
3
3
  import { init_logger } from "../utils/logger.js";
4
- import { parseAgentSessionKey } from "../routing/session-key-utils.js";
5
- import { init_agent_session_key } from "../routing/agent-session-key.js";
6
4
  import { resolveConfigPath } from "../config/paths.js";
7
5
  import { getProviderDisplayName, getSortedProviders, init_providers, providerSupportsApiKey, providerSupportsOAuth } from "../providers/index.js";
8
6
  import { createWorkflowCatalog } from "../agent/workflow/catalog.js";
@@ -16,7 +14,6 @@ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
16
14
  import { visibleWidth } from "@earendil-works/pi-tui";
17
15
  //#region src/tui/tui-command-formatters.ts
18
16
  init_providers();
19
- init_agent_session_key();
20
17
  init_logger();
21
18
  const SHARE_AUDIENCES = new Set([
22
19
  "friend",
@@ -277,7 +274,7 @@ function formatTuiSessionListInfo(sessions, options = {}) {
277
274
  const visible = sessions.slice(0, limit);
278
275
  const lines = ["Sessions", ""];
279
276
  for (const session of visible) {
280
- const current = session.key === options.currentSessionKey ? "* " : " ";
277
+ const current = session.key === options.currentConversationId ? "* " : " ";
281
278
  const label = session.displayName?.trim() || session.key;
282
279
  const description = formatSessionPickerDescription(session, { showKey: Boolean(session.displayName) });
283
280
  lines.push(`${current}${label}${description ? ` — ${description}` : ""}`);
@@ -286,14 +283,10 @@ function formatTuiSessionListInfo(sessions, options = {}) {
286
283
  return lines.join("\n");
287
284
  }
288
285
  function sessionTreeGroup(session) {
289
- const parsed = parseAgentSessionKey(session.key);
290
- const agentId = parsed?.agentId ?? "unknown";
291
- const rest = parsed?.rest ?? session.key;
292
- const parts = rest.split(":").filter(Boolean);
293
286
  return {
294
- agentId,
295
- root: parts[0] ?? rest,
296
- leaf: parts.length > 1 ? parts.slice(1).join(":") : rest
287
+ agentId: session.agentId ?? "unknown",
288
+ root: session.sourceChannel ?? "chat",
289
+ leaf: session.displayName ?? session.key
297
290
  };
298
291
  }
299
292
  function formatTuiSessionTreeInfo(sessions, options = {}) {
@@ -316,13 +309,13 @@ function formatTuiSessionTreeInfo(sessions, options = {}) {
316
309
  const sorted = [...groupSessions].sort((a, b) => (b.updatedAt ?? 0) - (a.updatedAt ?? 0));
317
310
  const visible = sorted.slice(0, limitPerGroup);
318
311
  for (const session of visible) {
319
- const current = session.key === options.currentSessionKey ? "*" : " ";
312
+ const current = session.key === options.currentConversationId ? "*" : " ";
320
313
  const group = sessionTreeGroup(session);
321
314
  const label = session.displayName?.trim() || group.leaf;
322
315
  const description = formatSessionPickerDescription(session, { showKey: Boolean(session.displayName) });
323
316
  lines.push(` ${current} ${label}${description ? ` — ${description}` : ""}`);
324
- if (session.forkedFromSessionKey) {
325
- const sourceLabel = byKey.get(session.forkedFromSessionKey)?.displayName?.trim() || session.forkedFromSessionKey;
317
+ if (session.forkedFromConversationId) {
318
+ const sourceLabel = byKey.get(session.forkedFromConversationId)?.displayName?.trim() || session.forkedFromConversationId;
326
319
  lines.push(` forked from ${sourceLabel}`);
327
320
  }
328
321
  }
@@ -443,7 +436,6 @@ function formatTuiSessionStatsBlock(stats) {
443
436
  ];
444
437
  }
445
438
  function formatTuiSessionInfo(state, stats) {
446
- const parsedKey = parseAgentSessionKey(state.currentSessionKey);
447
439
  const tokenEstimate = state.sessionInfo.totalTokens ?? state.sessionInfo.contextTokens;
448
440
  const contextLabel = formatContextUsageLabel(state.sessionInfo.contextUsagePercent ?? computeContextUsagePercent(tokenEstimate, state.sessionInfo.contextWindow), state.sessionInfo.contextWindow) ?? "-";
449
441
  const connectionLabel = state.isConnected ? "connected" : "disconnected";
@@ -451,8 +443,8 @@ function formatTuiSessionInfo(state, stats) {
451
443
  "Session Info",
452
444
  "",
453
445
  `Name: ${formatMaybe(state.sessionInfo.displayName)}`,
454
- `Key: ${state.currentSessionKey}`,
455
- `Agent: ${formatMaybe(parsedKey?.agentId)}`,
446
+ `Key: ${state.currentConversationId}`,
447
+ `Agent: ${formatMaybe(state.sessionInfo.agentId)}`,
456
448
  `Connection: ${connectionLabel} (${formatMaybe(state.connectionStatus)})`,
457
449
  `Activity: ${formatMaybe(state.activityStatus)}`,
458
450
  `Model: ${formatModelLabel(state)}`,
@@ -528,7 +520,7 @@ function formatTuiConfigInfo(state) {
528
520
  return [
529
521
  "Config",
530
522
  "",
531
- `Session: ${state.currentSessionKey}`,
523
+ `Session: ${state.currentConversationId}`,
532
524
  `Model: ${formatModelLabel(state)}`,
533
525
  `Thinking: ${formatMaybe(state.sessionInfo.thinkingLevel)}`,
534
526
  `Reasoning: ${formatMaybe(state.sessionInfo.reasoningLevel)}`,
@@ -61,7 +61,7 @@ export type CommandHandlerDeps = {
61
61
  } | Promise<{
62
62
  agentId: string;
63
63
  }>;
64
- switchAgentSession?: (sessionKey: string, agentId: string) => void | Promise<void>;
64
+ switchAgentSession?: (conversationId: string, agentId: string) => void | Promise<void>;
65
65
  getSessionStats?: () => TuiSessionStats | Promise<TuiSessionStats>;
66
66
  getStartupResources?: () => TuiStartupResources | undefined;
67
67
  loadTranscriptTree?: () => TuiTranscriptTreeEntry[] | Promise<TuiTranscriptTreeEntry[]>;
@@ -80,11 +80,11 @@ export type CommandHandlerDeps = {
80
80
  goal?: string;
81
81
  }) => {
82
82
  runId: string;
83
- sessionKey: string;
83
+ conversationId: string;
84
84
  definitionId: string;
85
85
  } | Promise<{
86
86
  runId: string;
87
- sessionKey: string;
87
+ conversationId: string;
88
88
  definitionId: string;
89
89
  }>;
90
90
  authProfiles?: {