@xopcai/xopc 0.0.354 → 0.0.356

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 (479) hide show
  1. package/dist/browser-ext/manifest.json +1 -1
  2. package/dist/extensions/feishu/src/adapters/cli-login.js +3 -3
  3. package/dist/extensions/feishu/src/outbound/media-load.js +1 -1
  4. package/dist/extensions/telegram/src/inbound-processor.js +2 -2
  5. package/dist/extensions/telegram/src/outbound-sender.js +1 -1
  6. package/dist/extensions/telegram/src/plugin.js +2 -2
  7. package/dist/extensions/telegram/xopc.extension.json +1 -1
  8. package/dist/extensions/weixin/src/api/api.js +2 -2
  9. package/dist/extensions/weixin/src/auth/accounts.js +12 -12
  10. package/dist/extensions/weixin/src/messaging/debug-mode.js +5 -5
  11. package/dist/extensions/weixin/src/messaging/inbound.js +11 -11
  12. package/dist/gateway/static/root/assets/{activity-store-X7CG9pzB.js → activity-store-Bj0GuUUk.js} +1 -1
  13. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-B8PS1eLP.js → agent-avatar-dicebear-i0dJX4Ag.js} +1 -1
  14. package/dist/gateway/static/root/assets/{agent-defaults-settings-panel-CLBSL9hl.js → agent-defaults-settings-panel-C-gsYOIi.js} +1 -1
  15. package/dist/gateway/static/root/assets/agent-plugin-dialog-D00xRE50.js +1 -0
  16. package/dist/gateway/static/root/assets/agents-Bg90PJpR.js +66 -0
  17. package/dist/gateway/static/root/assets/{agents-admin-api-Ck2x78jq.js → agents-admin-api-CYqmO7gb.js} +1 -1
  18. package/dist/gateway/static/root/assets/{app-management-settings-panel-COdQOmdT.js → app-management-settings-panel-LGezxe7p.js} +1 -1
  19. package/dist/gateway/static/root/assets/{appearance-settings-CDNjc2yy.js → appearance-settings-By7sj-tH.js} +1 -1
  20. package/dist/gateway/static/root/assets/{apps-page-C-kvpPj8.js → apps-page-DRX7wRpG.js} +1 -1
  21. package/dist/gateway/static/root/assets/{archive-plugin-QfOaQPL_.js → archive-plugin-BZHSbFiu.js} +1 -1
  22. package/dist/gateway/static/root/assets/{automations-page-87DN5nXX.js → automations-page-B5ZRVvra.js} +1 -1
  23. package/dist/gateway/static/root/assets/automations-workspace-CQmwjCm5.js +7 -0
  24. package/dist/gateway/static/root/assets/{binary-plugins-BF2lVwR9.js → binary-plugins-x2-RmzUs.js} +1 -1
  25. package/dist/gateway/static/root/assets/{block-editor-B04Kv5DU.js → block-editor-C8eM0IQi.js} +39 -39
  26. package/dist/gateway/static/root/assets/{browser-automation-inputs-FW3bYZ-z.js → browser-automation-inputs-uQ2AGFFU.js} +1 -1
  27. package/dist/gateway/static/root/assets/{browser-automations-page-Ck6Zb9aU.js → browser-automations-page-DonJaYJ7.js} +1 -1
  28. package/dist/gateway/static/root/assets/{browser-settings-page-DHlyYItE.js → browser-settings-page-Cku_iTDi.js} +2 -2
  29. package/dist/gateway/static/root/assets/{capabilities-CF4-mrIa.js → capabilities-Btku0cS3.js} +1 -1
  30. package/dist/gateway/static/root/assets/{capabilities-BCF_160Z.js → capabilities-Cl1RErL_.js} +1 -1
  31. package/dist/gateway/static/root/assets/capabilities-page-gUGN48Ob.js +2 -0
  32. package/dist/gateway/static/root/assets/capabilities-settings-panel-C3pM7xZ1.js +8 -0
  33. package/dist/gateway/static/root/assets/{capability-header-actions-PBPJJsp6.js → capability-header-actions-aXDBY-4S.js} +1 -1
  34. package/dist/gateway/static/root/assets/channels-BSbO91V4.js +1 -0
  35. package/dist/gateway/static/root/assets/{chat-terminal-dock-DTd7mWyE.js → chat-terminal-dock-Bn_O5W2o.js} +1 -1
  36. package/dist/gateway/static/root/assets/{computer-settings-page--9rh1mvu.js → computer-settings-page-CqzDwqcT.js} +1 -1
  37. package/dist/gateway/static/root/assets/{connector-service-page-v6Is0BOO.js → connector-service-page-BYq8YaSp.js} +1 -1
  38. package/dist/gateway/static/root/assets/connectors-page-CXVlZmoT.js +2 -0
  39. package/dist/gateway/static/root/assets/{date-picker-DTsMzjoZ.js → date-picker-dIJ4tP-C.js} +1 -1
  40. package/dist/gateway/static/root/assets/{dependency-picker-Y1QYCcLp.js → dependency-picker-ktHB4hRk.js} +1 -1
  41. package/dist/gateway/static/root/assets/{desktop-pet-D9dfZrOp.js → desktop-pet-BqXL3Ivw.js} +1 -1
  42. package/dist/gateway/static/root/assets/{desktop-pet-settings-BHVOHZUL.js → desktop-pet-settings-BspF0vWW.js} +1 -1
  43. package/dist/gateway/static/root/assets/device-pairing-wizard-CnADxQU1.js +1 -0
  44. package/dist/gateway/static/root/assets/{directory-picker-path-field-DeMo9KlE.js → directory-picker-path-field-CyR-4zZC.js} +1 -1
  45. package/dist/gateway/static/root/assets/dist-C3DSFZCi.js +1 -0
  46. package/dist/gateway/static/root/assets/{extension-debug-page-BrGWLJg9.js → extension-debug-page-DPc3vTw0.js} +1 -1
  47. package/dist/gateway/static/root/assets/{extension-page-AWrvy1Nb.js → extension-page-CWqtFuVa.js} +1 -1
  48. package/dist/gateway/static/root/assets/{extension-provider-CUpbXB2k.js → extension-provider-D-0AeFhE.js} +1 -1
  49. package/dist/gateway/static/root/assets/{extension-settings-page-C5KgmhYu.js → extension-settings-page-92wO2TEf.js} +1 -1
  50. package/dist/gateway/static/root/assets/{gateway-config-swr-B31I6Gbq.js → gateway-config-swr-Da3Oob_s.js} +1 -1
  51. package/dist/gateway/static/root/assets/{gateway-realtime-D6ffOiPe.js → gateway-realtime-BDh3i8n7.js} +1 -1
  52. package/dist/gateway/static/root/assets/gateway-realtime-store-B5Oq6VCQ.js +1 -0
  53. package/dist/gateway/static/root/assets/{gateway-settings-DC-lok0J.js → gateway-settings-CO_50TOx.js} +1 -1
  54. package/dist/gateway/static/root/assets/{gateway-startup-retry-DVol958v.js → gateway-startup-retry-BEj_bcbm.js} +1 -1
  55. package/dist/gateway/static/root/assets/home-page-Ba20kfpf.js +1 -0
  56. package/dist/gateway/static/root/assets/{image-generation-api-TVgJfz9r.js → image-generation-api-8jfU8AlD.js} +1 -1
  57. package/dist/gateway/static/root/assets/{imports-page-BKVKfVMA.js → imports-page-ciLLYJao.js} +1 -1
  58. package/dist/gateway/static/root/assets/index-DUgsBdV3.css +1 -0
  59. package/dist/gateway/static/root/assets/index-XgbDpmNc.js +106 -0
  60. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-DiwE4gKU.js → keyboard-shortcuts-settings-7429mJN3.js} +1 -1
  61. package/dist/gateway/static/root/assets/{local-app-workbench-page-Dt3TC64L.js → local-app-workbench-page-CQyP9KBM.js} +1 -1
  62. package/dist/gateway/static/root/assets/{local-apps-page-DFPhWkxU.js → local-apps-page-Cht3NkYu.js} +1 -1
  63. package/dist/gateway/static/root/assets/{local-session-drafts-wiq_12oN.js → local-session-drafts-jOqfUlwj.js} +1 -1
  64. package/dist/gateway/static/root/assets/{locale-store-Y1aBayM_.js → locale-store-DodizOrj.js} +1 -1
  65. package/dist/gateway/static/root/assets/{logs-page-C4faHZHj.js → logs-page-Bye3bESN.js} +2 -2
  66. package/dist/gateway/static/root/assets/loopi-C09I2mNj.css +1 -0
  67. package/dist/gateway/static/root/assets/loopi-Djb8XU3l.js +1 -0
  68. package/dist/gateway/static/root/assets/{management-settings-pZLdvIiw.js → management-settings-BG2yeKtz.js} +1 -1
  69. package/dist/gateway/static/root/assets/{markdown-view-7tzqIp_G.js → markdown-view-Bb6ohqHz.js} +1 -1
  70. package/dist/gateway/static/root/assets/{media-plugins-cjgrKnne.js → media-plugins-DIhqKSK5.js} +1 -1
  71. package/dist/gateway/static/root/assets/messages-D8PmAUB-.js +3 -0
  72. package/dist/gateway/static/root/assets/models-hub-cache-CaYi043g.js +1 -0
  73. package/dist/gateway/static/root/assets/note-detail-panel-DA_6YKSN.js +5 -0
  74. package/dist/gateway/static/root/assets/{notes-api-J0yhflxC.js → notes-api-DYfvIxWh.js} +1 -1
  75. package/dist/gateway/static/root/assets/notes-page-kc3CMA5c.js +8 -0
  76. package/dist/gateway/static/root/assets/{oauth-api-CYe61zfD.js → oauth-api-gSu-iTk5.js} +1 -1
  77. package/dist/gateway/static/root/assets/{page-context-capture-button-CiBUm2Br.js → page-context-capture-button-r0vf-oBH.js} +1 -1
  78. package/dist/gateway/static/root/assets/personal-page-CmZzN99O.js +1 -0
  79. package/dist/gateway/static/root/assets/{popover-select-DcsFzD_i.js → popover-select-BNZZDJpO.js} +1 -1
  80. package/dist/gateway/static/root/assets/{product-open-page-B8_w6c3J.js → product-open-page-BdedC52J.js} +1 -1
  81. package/dist/gateway/static/root/assets/{project-detail-page-CDZdKiTz.js → project-detail-page-b23nMTcO.js} +1 -1
  82. package/dist/gateway/static/root/assets/{projects-page-BvahSrZi.js → projects-page-DCA7oEdB.js} +1 -1
  83. package/dist/gateway/static/root/assets/{registry-api-DqDOrPQ0.js → registry-api-D0eYNizR.js} +1 -1
  84. package/dist/gateway/static/root/assets/remote-access-hub-DeK3ATTQ.js +1 -0
  85. package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-BnMS50vK.js → runtime-tools-settings-panel-BqD6oWU5.js} +1 -1
  86. package/dist/gateway/static/root/assets/{scenes-page-CDR1-q25.js → scenes-page-Ds6trhfL.js} +2 -2
  87. package/dist/gateway/static/root/assets/{schema-form-B4Xa8w8S.js → schema-form-D-cjcRAn.js} +1 -1
  88. package/dist/gateway/static/root/assets/{send-session-input-C7Nqy0sK.js → send-session-input-DstpmO44.js} +1 -1
  89. package/dist/gateway/static/root/assets/{session-api-CTN4qwiN.js → session-api-qy4gMa5t.js} +1 -1
  90. package/dist/gateway/static/root/assets/{session-manager-DsH1DZI_.js → session-manager-CFqOuGy-.js} +1 -1
  91. package/dist/gateway/static/root/assets/sessions-page-DltxWUQd.js +1 -0
  92. package/dist/gateway/static/root/assets/settings-advanced-gate-Bqg7glTa.js +1 -0
  93. package/dist/gateway/static/root/assets/{settings-page-CHZdpvkT.js → settings-page-BVfsQrWS.js} +1 -1
  94. package/dist/gateway/static/root/assets/{setup-status-panel-HESfALIF.js → setup-status-panel-DqkS3DKy.js} +1 -1
  95. package/dist/gateway/static/root/assets/{share-link-dialog-COlX10Dc.js → share-link-dialog-B3Io5mOY.js} +1 -1
  96. package/dist/gateway/static/root/assets/{share-preview-page-NtRLUieq.js → share-preview-page-BpZqXsgR.js} +1 -1
  97. package/dist/gateway/static/root/assets/{shares-api-DICV5EKH.js → shares-api-BNNaREyB.js} +1 -1
  98. package/dist/gateway/static/root/assets/shares-settings-CEaRXDeL.js +1 -0
  99. package/dist/gateway/static/root/assets/{skill-api-DYgcO7y0.js → skill-api-1Hp370EM.js} +1 -1
  100. package/dist/gateway/static/root/assets/{skill-reload-api-CWH3Fmx4.js → skill-reload-api-Dm6GgUYK.js} +1 -1
  101. package/dist/gateway/static/root/assets/skills-page-Cgze-HZy.js +2 -0
  102. package/dist/gateway/static/root/assets/{system-settings-panel-wXCBwYwE.js → system-settings-panel-CFSQ3Qjr.js} +1 -1
  103. package/dist/gateway/static/root/assets/task-detail-page-DEDh0FPJ.js +1 -0
  104. package/dist/gateway/static/root/assets/{theme-store-BKgBPLH4.js → theme-store-AXut7b8R.js} +1 -1
  105. package/dist/gateway/static/root/assets/{tunnel-api-C0t8y3Mi.js → tunnel-api-WcqOMVcQ.js} +1 -1
  106. package/dist/gateway/static/root/assets/{usage-page-A2DZAidl.js → usage-page-C6cnfavb.js} +1 -1
  107. package/dist/gateway/static/root/assets/{use-autosave-Cn6hqqyM.js → use-autosave-BT3l-ETP.js} +1 -1
  108. package/dist/gateway/static/root/assets/{use-composer-attachments-DL61XeSu.js → use-composer-attachments-zfL8zvRu.js} +1 -1
  109. package/dist/gateway/static/root/assets/{use-file-preview-expanded-Cl9mU32w.js → use-file-preview-expanded-C4bBXf4j.js} +2 -2
  110. package/dist/gateway/static/root/assets/user-model-page-C6_GMD0W.js +2 -0
  111. package/dist/gateway/static/root/assets/{voice-api-key-field-Bw05QB_V.js → voice-api-key-field-BF9hOZ_1.js} +1 -1
  112. package/dist/gateway/static/root/assets/voice-config-api-D8G4fALX.js +1 -0
  113. package/dist/gateway/static/root/assets/work-discovery-overlay-DVvqH1d-.js +1 -0
  114. package/dist/gateway/static/root/assets/{workflow-run-setup-panel-rM4U1FXc.js → workflow-run-setup-panel-MDkhjfGm.js} +2 -2
  115. package/dist/gateway/static/root/assets/{workflows-page-QKC34FzQ.js → workflows-page-Bhu13vVb.js} +3 -3
  116. package/dist/gateway/static/root/assets/{workspace-api-BbBT75Kg.js → workspace-api-C4q2GwGV.js} +2 -2
  117. package/dist/gateway/static/root/index.html +32 -30
  118. package/dist/package.js +1 -1
  119. package/dist/packages/realtime-protocol/src/voice-catalog.js +4 -1
  120. package/dist/src/agent/agent-manager.js +15 -15
  121. package/dist/src/agent/agent-scope.js +2 -2
  122. package/dist/src/agent/background-review/prompts.js +1 -1
  123. package/dist/src/agent/background-review/run-background-review.js +4 -4
  124. package/dist/src/agent/coding/repository-instructions.js +1 -1
  125. package/dist/src/agent/context/coordinator.js +2 -2
  126. package/dist/src/agent/context/execution-context.js +4 -4
  127. package/dist/src/agent/context/execution-scope.js +2 -2
  128. package/dist/src/agent/context/project-context.js +3 -3
  129. package/dist/src/agent/data-acquisition/service.js +1 -1
  130. package/dist/src/agent/embedded/index.js +2 -2
  131. package/dist/src/agent/embedded/model-runtime.js +1 -1
  132. package/dist/src/agent/embedded/run-for-session.d.ts +1 -0
  133. package/dist/src/agent/embedded/run-for-session.js +6 -5
  134. package/dist/src/agent/embedded/run-turn.js +24 -6
  135. package/dist/src/agent/embedded/session-tool-result-guard.js +3 -3
  136. package/dist/src/agent/embedded/tool-result-truncation.js +1 -1
  137. package/dist/src/agent/embedded/types.d.ts +1 -0
  138. package/dist/src/agent/external-tools/cliProvider.js +3 -3
  139. package/dist/src/agent/external-tools/composio-provider.js +3 -3
  140. package/dist/src/agent/external-tools/endpoint-provider.js +2 -2
  141. package/dist/src/agent/external-tools/gateway-tools.js +1 -1
  142. package/dist/src/agent/external-tools/mcp-provider.js +3 -3
  143. package/dist/src/agent/image/generation/openai-images-provider.js +1 -1
  144. package/dist/src/agent/image/generation/providers/dashscope.js +1 -1
  145. package/dist/src/agent/image/generation/providers/fal.js +1 -1
  146. package/dist/src/agent/image/generation/providers/google.js +1 -1
  147. package/dist/src/agent/image/generation/runtime.js +1 -1
  148. package/dist/src/agent/image/index.js +1 -1
  149. package/dist/src/agent/image/load-image-media.js +1 -1
  150. package/dist/src/agent/image/tool-model-config.js +2 -2
  151. package/dist/src/agent/inbound/attachment-pipeline.js +1 -1
  152. package/dist/src/agent/inbound/inbound-loop.js +2 -2
  153. package/dist/src/agent/index.js +1 -1
  154. package/dist/src/agent/mcp/bundle-mcp-config.js +1 -1
  155. package/dist/src/agent/mcp/bundle-mcp-gateway.js +1 -1
  156. package/dist/src/agent/mcp/bundle-mcp-runtime.js +2 -2
  157. package/dist/src/agent/mcp/index.js +2 -2
  158. package/dist/src/agent/mcp/mcp-stdio-transport.js +1 -1
  159. package/dist/src/agent/mcp/mcp-transport.js +1 -1
  160. package/dist/src/agent/mcp/oauth/mcp-oauth-manager.js +1 -1
  161. package/dist/src/agent/mcp/oauth/mcp-oauth-store.js +1 -1
  162. package/dist/src/agent/mcp/plugin-http-fetch.js +1 -1
  163. package/dist/src/agent/memory/context-recovery.js +1 -1
  164. package/dist/src/agent/memory/index.js +1 -1
  165. package/dist/src/agent/orchestration/agent-orchestrator.js +1 -1
  166. package/dist/src/agent/prompt/sections/messaging-runtime.js +2 -1
  167. package/dist/src/agent/prompt/service-prompt-builder.js +2 -2
  168. package/dist/src/agent/sandbox/exec-policy.js +1 -1
  169. package/dist/src/agent/service/direct-turn-helpers.d.ts +1 -0
  170. package/dist/src/agent/service/direct-turn-helpers.js +5 -4
  171. package/dist/src/agent/service/process-direct-one-shot.js +1 -1
  172. package/dist/src/agent/service/process-direct-streaming.js +6 -5
  173. package/dist/src/agent/service/webchat-tts.js +2 -2
  174. package/dist/src/agent/service.js +22 -22
  175. package/dist/src/agent/session/session-config-service.js +1 -1
  176. package/dist/src/agent/session/session-hydrator.js +1 -1
  177. package/dist/src/agent/session/session-inspector.js +1 -1
  178. package/dist/src/agent/skills/hub-lock.js +1 -1
  179. package/dist/src/agent/skills/index.js +1 -1
  180. package/dist/src/agent/skills/managed-store.js +1 -1
  181. package/dist/src/agent/skills/skill-manage-ops.js +1 -1
  182. package/dist/src/agent/source-context/index.js +2 -2
  183. package/dist/src/agent/tasks/task-judge-service.js +4 -4
  184. package/dist/src/agent/tools/create-share-tool.js +3 -3
  185. package/dist/src/agent/tools/dataBatch.js +1 -1
  186. package/dist/src/agent/tools/delegate-tool.js +3 -3
  187. package/dist/src/agent/tools/delegation-parent-policy.js +1 -1
  188. package/dist/src/agent/tools/executor.js +1 -1
  189. package/dist/src/agent/tools/factory.js +16 -16
  190. package/dist/src/agent/tools/fetch-text.js +1 -1
  191. package/dist/src/agent/tools/image-generate-tool.js +3 -3
  192. package/dist/src/agent/tools/index.js +6 -6
  193. package/dist/src/agent/tools/list-dir.js +1 -1
  194. package/dist/src/agent/tools/personal-preference-tool.d.ts +1 -1
  195. package/dist/src/agent/tools/personal-preference-tool.js +3 -2
  196. package/dist/src/agent/tools/personal-task-tool.d.ts +2 -1
  197. package/dist/src/agent/tools/personal-task-tool.js +27 -8
  198. package/dist/src/agent/tools/publish-artifacts.js +2 -2
  199. package/dist/src/agent/tools/read.js +2 -2
  200. package/dist/src/agent/tools/review-workspace.js +1 -1
  201. package/dist/src/agent/tools/send-media.js +2 -2
  202. package/dist/src/agent/tools/skills-tools.js +1 -1
  203. package/dist/src/agent/tools/tts-tool.js +1 -1
  204. package/dist/src/agent/tools/user-context-tool.js +1 -1
  205. package/dist/src/agent/tools/write.js +2 -2
  206. package/dist/src/agent/tools/xopc-use-tool.js +5 -5
  207. package/dist/src/agent/workflow/subagent-runner.js +1 -1
  208. package/dist/src/agent-catalog/capabilities.js +2 -2
  209. package/dist/src/agent-config/schema.d.ts +20 -1
  210. package/dist/src/agent-config/schema.js +7 -1
  211. package/dist/src/ai-assist/text-assist.js +1 -1
  212. package/dist/src/auth/credentials.js +2 -2
  213. package/dist/src/auth/oauth-provider-lock.js +1 -1
  214. package/dist/src/auth/profiles/store.js +1 -1
  215. package/dist/src/auth/sync-provider-auth.js +1 -1
  216. package/dist/src/automations/capabilities/drafts.js +1 -1
  217. package/dist/src/automations/domain/index.js +2 -2
  218. package/dist/src/automations/index.js +4 -4
  219. package/dist/src/automations/service/automation-service.js +2 -2
  220. package/dist/src/backup/archive.js +1 -1
  221. package/dist/src/bootstrap/application-state.js +1 -1
  222. package/dist/src/browser/native-messaging-host.js +1 -1
  223. package/dist/src/browser/providers/browser-ext-install.js +1 -1
  224. package/dist/src/capabilities/runtime/dispatcher.js +1 -1
  225. package/dist/src/capabilities/runtime/product.js +1 -1
  226. package/dist/src/channels/attachments/voice-stt-webchat.js +2 -2
  227. package/dist/src/channels/index.js +2 -2
  228. package/dist/src/channels/outbound-sender.js +1 -1
  229. package/dist/src/channels/pairing/allow-from-file.js +9 -9
  230. package/dist/src/channels/pairing/pairing-store.js +6 -6
  231. package/dist/src/chat-commands/agent-edit.js +1 -1
  232. package/dist/src/chat-commands/builtins/config.js +3 -3
  233. package/dist/src/chat-commands/builtins/review.js +1 -1
  234. package/dist/src/chat-commands/builtins/session.js +1 -1
  235. package/dist/src/chat-commands/builtins/thinking.js +1 -1
  236. package/dist/src/chat-commands/builtins/tts.js +1 -1
  237. package/dist/src/chat-commands/builtins/understanding.js +1 -1
  238. package/dist/src/chat-commands/builtins/workflow.js +2 -2
  239. package/dist/src/chat-commands/context.js +3 -3
  240. package/dist/src/chat-commands/index.js +3 -3
  241. package/dist/src/cli/commands/agent.js +7 -7
  242. package/dist/src/cli/commands/agents.js +1 -1
  243. package/dist/src/cli/commands/config.js +1 -1
  244. package/dist/src/cli/commands/connectors.js +1 -1
  245. package/dist/src/cli/commands/doctor/checks/channel-plugins.js +1 -1
  246. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  247. package/dist/src/cli/commands/doctor/checks/gateway-health.js +1 -1
  248. package/dist/src/cli/commands/doctor/checks/provider-auth.js +2 -2
  249. package/dist/src/cli/commands/doctor/checks/tool-runtimes.js +1 -1
  250. package/dist/src/cli/commands/extension-agent-plugin.js +2 -2
  251. package/dist/src/cli/commands/extension-dev.js +1 -1
  252. package/dist/src/cli/commands/extension-marketplace.js +2 -2
  253. package/dist/src/cli/commands/extension.js +4 -4
  254. package/dist/src/cli/commands/gateway/shared.js +1 -1
  255. package/dist/src/cli/commands/gateway/token.js +1 -1
  256. package/dist/src/cli/commands/image.js +1 -1
  257. package/dist/src/cli/commands/init.js +1 -1
  258. package/dist/src/cli/commands/models.js +3 -3
  259. package/dist/src/cli/commands/onboard/channels/registry.js +1 -1
  260. package/dist/src/cli/commands/onboard/model.js +1 -1
  261. package/dist/src/cli/commands/onboard.js +1 -1
  262. package/dist/src/cli/commands/project.js +2 -2
  263. package/dist/src/cli/commands/runtime.js +1 -1
  264. package/dist/src/cli/commands/skills.js +2 -2
  265. package/dist/src/cli/commands/tunnel.js +4 -4
  266. package/dist/src/cli/extension-cli-register.js +5 -5
  267. package/dist/src/cli/utils/gateway-client.js +1 -1
  268. package/dist/src/cli/utils/init-workspace-core.js +2 -2
  269. package/dist/src/cli/utils/session.js +1 -1
  270. package/dist/src/computer/runtime.js +2 -2
  271. package/dist/src/config/index.js +8 -8
  272. package/dist/src/config/loader.js +2 -2
  273. package/dist/src/config/models-json.js +2 -2
  274. package/dist/src/config/schema.js +1 -1
  275. package/dist/src/connectors/cli/authorization.js +1 -1
  276. package/dist/src/connectors/cli/runtime.js +1 -1
  277. package/dist/src/connectors/composio-sessions.js +1 -1
  278. package/dist/src/connectors/composio.js +1 -1
  279. package/dist/src/connectors/connected-source-understanding.js +3 -3
  280. package/dist/src/connectors/connection-recovery-service.js +5 -5
  281. package/dist/src/connectors/health.js +1 -1
  282. package/dist/src/connectors/plugin-mcp-recovery.js +1 -1
  283. package/dist/src/discussions/live-worker.js +1 -1
  284. package/dist/src/discussions/recording.js +1 -1
  285. package/dist/src/discussions/sealer.js +1 -1
  286. package/dist/src/extensions/activation-context.js +3 -3
  287. package/dist/src/extensions/agent-plugins/validation.js +1 -1
  288. package/dist/src/extensions/api.js +4 -4
  289. package/dist/src/extensions/bundled-extension-activation.js +1 -1
  290. package/dist/src/extensions/index.js +3 -3
  291. package/dist/src/extensions/install.js +1 -1
  292. package/dist/src/extensions/loader.js +2 -2
  293. package/dist/src/extensions/lockfile.js +1 -1
  294. package/dist/src/extensions/sdk/index.js +1 -1
  295. package/dist/src/extensions/sdk/media.js +1 -1
  296. package/dist/src/extensions/update.js +1 -1
  297. package/dist/src/gateway/agents-admin.js +2 -2
  298. package/dist/src/gateway/device-routes.js +2 -2
  299. package/dist/src/gateway/file-path-classifier.js +2 -2
  300. package/dist/src/gateway/global-defaults-admin.js +1 -1
  301. package/dist/src/gateway/hono/app.js +3 -3
  302. package/dist/src/gateway/hono/lib/config-payload.js +4 -4
  303. package/dist/src/gateway/hono/routes/agents.js +1 -1
  304. package/dist/src/gateway/hono/routes/auth-registry-extensions.js +1 -1
  305. package/dist/src/gateway/hono/routes/browser.js +1 -1
  306. package/dist/src/gateway/hono/routes/commands-skills.js +4 -4
  307. package/dist/src/gateway/hono/routes/config-patch/gateway.js +1 -1
  308. package/dist/src/gateway/hono/routes/config-patch/misc.js +2 -2
  309. package/dist/src/gateway/hono/routes/home.js +1 -1
  310. package/dist/src/gateway/hono/routes/mcp.js +2 -2
  311. package/dist/src/gateway/hono/routes/media.js +1 -1
  312. package/dist/src/gateway/hono/routes/models.js +24 -6
  313. package/dist/src/gateway/hono/routes/notes.js +3 -3
  314. package/dist/src/gateway/hono/routes/personal-agent.js +135 -8
  315. package/dist/src/gateway/hono/routes/projects.js +4 -4
  316. package/dist/src/gateway/hono/routes/session-command-handler.js +1 -1
  317. package/dist/src/gateway/hono/routes/session-input-handler.js +4 -4
  318. package/dist/src/gateway/hono/routes/sessions.js +2 -2
  319. package/dist/src/gateway/hono/routes/shares.js +3 -3
  320. package/dist/src/gateway/hono/routes/side-chats.js +1 -1
  321. package/dist/src/gateway/hono/routes/site-shares.js +1 -1
  322. package/dist/src/gateway/hono/routes/tasks.js +2 -2
  323. package/dist/src/gateway/hono/routes/user-model-refresh.js +1 -1
  324. package/dist/src/gateway/hono/routes/user-model.js +5 -5
  325. package/dist/src/gateway/hono/routes/voice.js +33 -8
  326. package/dist/src/gateway/hono/routes/workflows.js +2 -2
  327. package/dist/src/gateway/image-generation-setup.js +3 -3
  328. package/dist/src/gateway/index.js +1 -1
  329. package/dist/src/gateway/lock.js +11 -11
  330. package/dist/src/gateway/media-access.js +1 -1
  331. package/dist/src/gateway/mobile-privacy.js +2 -2
  332. package/dist/src/gateway/ports.js +6 -6
  333. package/dist/src/gateway/run-loop.js +1 -1
  334. package/dist/src/gateway/scenes/mailContext.js +1 -1
  335. package/dist/src/gateway/scenes/slackThreadSource.js +1 -1
  336. package/dist/src/gateway/security/gateway-scopes.js +2 -0
  337. package/dist/src/gateway/server.js +1 -1
  338. package/dist/src/gateway/service/agent-runner.js +41 -0
  339. package/dist/src/gateway/service/config-coordinator.js +3 -3
  340. package/dist/src/gateway/service/run-gateway-agent.js +5 -4
  341. package/dist/src/gateway/service/session-command-service.js +2 -2
  342. package/dist/src/gateway/service/sessions-api.js +1 -1
  343. package/dist/src/gateway/service.js +49 -49
  344. package/dist/src/gateway/session-context-summary.js +2 -2
  345. package/dist/src/gateway/session-reset-service.js +1 -1
  346. package/dist/src/gateway/workspace-editor-path.js +2 -2
  347. package/dist/src/gateway/xopc-cloud-capability-setup.d.ts +11 -1
  348. package/dist/src/gateway/xopc-cloud-capability-setup.js +146 -10
  349. package/dist/src/gateway/xopc-cloud-onboarding.d.ts +3 -0
  350. package/dist/src/gateway/xopc-cloud-onboarding.js +27 -0
  351. package/dist/src/home-intelligence/generator.js +1 -1
  352. package/dist/src/home-intelligence/host.js +2 -2
  353. package/dist/src/infra/gateway-processes.js +2 -2
  354. package/dist/src/infra/path-env.js +3 -3
  355. package/dist/src/infra/update-global.js +10 -10
  356. package/dist/src/local-apps/service.js +2 -2
  357. package/dist/src/mcp/gateway-http-client.js +1 -1
  358. package/dist/src/media-understanding/openai-compatible-audio.js +1 -1
  359. package/dist/src/notes/agent-context.js +4 -4
  360. package/dist/src/notes/index.js +1 -1
  361. package/dist/src/notes/service.js +1 -1
  362. package/dist/src/notes/store.js +1 -1
  363. package/dist/src/personal-agent/onboarding.d.ts +27 -0
  364. package/dist/src/personal-agent/onboarding.js +48 -0
  365. package/dist/src/personal-agent/repository.d.ts +6 -1
  366. package/dist/src/personal-agent/repository.js +7 -2
  367. package/dist/src/personal-agent/service.d.ts +24 -6
  368. package/dist/src/personal-agent/service.js +38 -15
  369. package/dist/src/providers/auth-runtime/resolve-auth.js +1 -1
  370. package/dist/src/providers/index.js +2 -2
  371. package/dist/src/providers/model-catalog-persistence.js +2 -2
  372. package/dist/src/providers/model-reference-auditor.js +1 -1
  373. package/dist/src/providers/model-registry.js +1 -1
  374. package/dist/src/providers/register-runtime-providers.js +1 -1
  375. package/dist/src/remote-access/exposure-manager.js +1 -1
  376. package/dist/src/scenes/taskFollowUp/agentExecutor.js +4 -4
  377. package/dist/src/scenes/taskFollowUp/resources.js +1 -1
  378. package/dist/src/scenes/taskFollowUp/service.js +4 -4
  379. package/dist/src/session/index.js +2 -2
  380. package/dist/src/session/resolve-session.js +1 -1
  381. package/dist/src/session/session-title.js +1 -1
  382. package/dist/src/session/store.js +4 -4
  383. package/dist/src/session/thinking-resolve.js +1 -1
  384. package/dist/src/share/share-store.js +1 -1
  385. package/dist/src/share/share-thumbnail.js +1 -1
  386. package/dist/src/share/share-zip.js +1 -1
  387. package/dist/src/share/site-proxy.js +1 -1
  388. package/dist/src/share/site-share-store.js +1 -1
  389. package/dist/src/storage/sqlite/connection.js +9 -9
  390. package/dist/src/storage/sqlite/migrations/230_personal_agent_onboarding.sql +8 -0
  391. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  392. package/dist/src/storage/sqlite/migrations/runner.js +3 -3
  393. package/dist/src/storage/sqlite/schema.js +1 -1
  394. package/dist/src/tasks/capabilities/read.js +2 -2
  395. package/dist/src/tasks/capabilities/write.js +1 -1
  396. package/dist/src/tasks/execution-context.js +1 -1
  397. package/dist/src/tasks/home-query-service.js +3 -3
  398. package/dist/src/tasks/index.js +4 -4
  399. package/dist/src/tasks/task-application-service.js +3 -3
  400. package/dist/src/tasks/task-collaboration-delivery.js +1 -1
  401. package/dist/src/tasks/task-context-assembler.js +1 -1
  402. package/dist/src/tasks/task-handoff-service.js +1 -1
  403. package/dist/src/tasks/task-main-update-decision-service.js +1 -1
  404. package/dist/src/tasks/task-main-update-delivery.js +5 -2
  405. package/dist/src/tasks/task-origin-repository.d.ts +4 -1
  406. package/dist/src/tasks/task-origin-repository.js +3 -3
  407. package/dist/src/tasks/task-run-coordinator.d.ts +1 -0
  408. package/dist/src/tasks/task-run-coordinator.js +13 -7
  409. package/dist/src/tasks/task-run-dispatcher.d.ts +1 -1
  410. package/dist/src/tasks/task-run-dispatcher.js +6 -4
  411. package/dist/src/tui/backends/embedded-backend.js +12 -12
  412. package/dist/src/tui/backends/gateway-realtime-backend.js +1 -1
  413. package/dist/src/tui/extension-host/load-extensions.js +1 -1
  414. package/dist/src/tui/tui-command-formatters.js +1 -1
  415. package/dist/src/tui/tui-commands.js +8 -8
  416. package/dist/src/tui/tui-oauth-login.js +1 -1
  417. package/dist/src/tui/tui-picker-overlay.js +1 -1
  418. package/dist/src/tui/tui-skills-autocomplete.js +1 -1
  419. package/dist/src/tui/tui-startup-resources.js +4 -4
  420. package/dist/src/tui/tui.js +7 -7
  421. package/dist/src/tunnel/frpc-binary.js +1 -1
  422. package/dist/src/tunnel/gateway-lifecycle.js +1 -1
  423. package/dist/src/voice/language-profile.js +1 -1
  424. package/dist/src/voice/metadata/builtin.js +16 -39
  425. package/dist/src/voice/metadata/types.d.ts +2 -0
  426. package/dist/src/voice/platform-catalog.d.ts +3 -0
  427. package/dist/src/voice/realtime/memory-context.js +3 -3
  428. package/dist/src/voice/realtime/persona-context.js +1 -1
  429. package/dist/src/voice/realtime/runtime.js +19 -4
  430. package/dist/src/voice/stt/index.js +2 -2
  431. package/dist/src/voice/stt/preflight.js +1 -1
  432. package/dist/src/voice/stt/providers/alibaba-transcription.js +4 -4
  433. package/dist/src/voice/stt/providers/xopc-cloud-transcription.js +1 -1
  434. package/dist/src/voice/stt/transcribe-core.js +1 -1
  435. package/dist/src/voice/stt/types.js +1 -1
  436. package/dist/src/voice/tts/index.js +3 -3
  437. package/dist/src/voice/tts/merge-config.js +1 -1
  438. package/dist/src/voice/tts/payload.js +1 -1
  439. package/dist/src/voice/tts/providers/alibaba-speech.js +4 -16
  440. package/dist/src/voice/tts/providers/alibaba-voices.d.ts +3 -0
  441. package/dist/src/voice/tts/providers/alibaba-voices.js +197 -0
  442. package/dist/src/voice/tts/providers/xopc-cloud-speech.js +1 -1
  443. package/dist/src/voice/tts/speak-core.js +1 -1
  444. package/dist/src/voice/tts/speech-provider-types.d.ts +1 -0
  445. package/dist/src/voice/tts/types.js +1 -1
  446. package/dist/src/work-discovery/incremental-repository.js +1 -1
  447. package/dist/src/work-discovery/index.js +1 -1
  448. package/dist/src/work-discovery/service.js +5 -5
  449. package/dist/src/workflows/engine/workflow-engine.js +1 -1
  450. package/dist/src/workflows/service/workflow-run-service.js +8 -8
  451. package/dist/src/workflows/service/workflow-session-bridge.js +1 -1
  452. package/package.json +4 -4
  453. package/dist/gateway/static/root/assets/agent-plugin-dialog-BninweSg.js +0 -1
  454. package/dist/gateway/static/root/assets/agents-CcVLP_WP.js +0 -66
  455. package/dist/gateway/static/root/assets/automations-workspace-BdZ8NO8k.js +0 -7
  456. package/dist/gateway/static/root/assets/capabilities-page-C-6RLFNh.js +0 -2
  457. package/dist/gateway/static/root/assets/capabilities-settings-panel-CST_HBkR.js +0 -8
  458. package/dist/gateway/static/root/assets/channels-CM4sIvcP.js +0 -1
  459. package/dist/gateway/static/root/assets/connectors-page-CryQzmEZ.js +0 -2
  460. package/dist/gateway/static/root/assets/device-pairing-wizard-Cy5YDZ2b.js +0 -1
  461. package/dist/gateway/static/root/assets/dist-3h6cXXhT.js +0 -1
  462. package/dist/gateway/static/root/assets/gateway-realtime-store-DQuFWNjA.js +0 -1
  463. package/dist/gateway/static/root/assets/home-page-C29_VFAs.js +0 -1
  464. package/dist/gateway/static/root/assets/index-BJh5gU04.css +0 -1
  465. package/dist/gateway/static/root/assets/index-ByFXhQ-T.js +0 -107
  466. package/dist/gateway/static/root/assets/messages-DPw2X06D.js +0 -3
  467. package/dist/gateway/static/root/assets/models-hub-cache-HGrORbzR.js +0 -1
  468. package/dist/gateway/static/root/assets/note-detail-panel-BLnT1tYJ.js +0 -5
  469. package/dist/gateway/static/root/assets/notes-page-BawArJvP.js +0 -8
  470. package/dist/gateway/static/root/assets/personal-page-Cng583RH.js +0 -1
  471. package/dist/gateway/static/root/assets/remote-access-hub-CU_UdkuI.js +0 -1
  472. package/dist/gateway/static/root/assets/sessions-page-Ymyg98G-.js +0 -1
  473. package/dist/gateway/static/root/assets/settings-advanced-gate-wMZhxwTM.js +0 -1
  474. package/dist/gateway/static/root/assets/shares-settings-CXEBo5YL.js +0 -1
  475. package/dist/gateway/static/root/assets/skills-page-Dx5v64jU.js +0 -2
  476. package/dist/gateway/static/root/assets/task-detail-page-hoIyr7tp.js +0 -1
  477. package/dist/gateway/static/root/assets/user-model-page-C1jGTwjK.js +0 -2
  478. package/dist/gateway/static/root/assets/voice-config-api-BM75K3mR.js +0 -1
  479. package/dist/gateway/static/root/assets/work-discovery-overlay-xB0QpOFk.js +0 -1
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/session-manager-DsH1DZI_.js","assets/rolldown-runtime-aKtaBQYM.js","assets/locale-store-Y1aBayM_.js","assets/vendor-react-BOUWij0V.js","assets/messages-DPw2X06D.js","assets/gateway-realtime-D6ffOiPe.js","assets/schemas-CObaziC7.js","assets/gateway-realtime-store-DQuFWNjA.js","assets/local-session-drafts-wiq_12oN.js","assets/session-api-CTN4qwiN.js","assets/gateway-startup-retry-DVol958v.js","assets/tool-activity-BtJkgjFf.js","assets/constants-Co2_smKQ.js","assets/registry-api-DqDOrPQ0.js","assets/preload-helper-zJ_50EbN.js","assets/attachment-utils-core-BIOUBrpT.js","assets/agents-admin-api-Ck2x78jq.js","assets/gateway-config-swr-B31I6Gbq.js","assets/vendor-swr-BIWyz7Rc.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-zJ_50EbN.js";import{i as t,r as n}from"./locale-store-Y1aBayM_.js";import{i as r,n as i,r as a,t as o}from"./files-Bw4SBGdM.js";async function s(e){let t=await e.json().catch(()=>null);return Error(t?.error?.message??`HTTP ${e.status}`)}async function c(e,r){let i=await t(n(e),r);if(!i.ok)throw await s(i);return i.json()}async function l(t){if(!t?.projectId&&t?.conversationId){let{SessionManager:n}=await e(async()=>{let{SessionManager:e}=await import(`./session-manager-DsH1DZI_.js`).then(e=>e.n);return{SessionManager:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]));await new n().materialize(t.conversationId,`session_resources`)}let n=t?.projectId?{kind:`project`,id:t.projectId}:t?.conversationId?{kind:`session`,id:t.conversationId}:t?.agentId?{kind:`agent`,id:t.agentId}:null;if(n){let e=await c(`/api/files/contexts/${n.kind}/${encodeURIComponent(n.id)}`);return r.parse(e.space)}let i=await c(`/api/files/default-space`);return r.parse(i.space)}function u(e){return{id:e.id,name:e.name,path:e.relativePath,isDirectory:e.kind===`directory`,mimeType:e.mimeType,revision:e.revision}}async function d(e,t){let n=await l(t),r=await c(`/api/files/resolve`,{method:`POST`,body:JSON.stringify({spaceId:n.id,path:e})});return i.parse(r.resource)}async function f(e,t){return d(e,t)}async function p(e=``,t){let n=await l(t),r=new URLSearchParams;return e&&r.set(`path`,e),{entries:a.parse(await c(`/api/files/spaces/${encodeURIComponent(n.id)}/children${r.size?`?${r}`:``}`)).items.map(u)}}async function m(e=``,t){return(await p(e,t)).entries}async function h(e){let t=await l(e);return u(o.parse(await c(`/api/files/spaces/${encodeURIComponent(t.id)}/root`)).resource)}async function g(e,t,n=50){let r=await l(t),i=new URLSearchParams({q:e.trim(),limit:String(n),spaceId:r.id});return a.parse(await c(`/api/files/search?${i}`)).items.map(u)}async function _(e,r){let i=await d(e,r),a=await t(n(`/api/files/${encodeURIComponent(i.id)}/content`));if(!a.ok)throw await s(a);return{content:await a.text(),path:i.relativePath,mtimeMs:i.modifiedAt,revision:i.revision}}async function v(e,t){let n;try{n=await l(t)}catch{return null}try{let t=await c(`/api/files/resolve`,{method:`POST`,body:JSON.stringify({spaceId:n.id,path:e})}),r=i.parse(t.resource);return{fileId:r.id,inputPath:e,displayName:r.name,scope:`workspace`,locationKind:`workspace`,exists:!0,isDirectory:r.kind===`directory`,workspaceRelativePath:r.relativePath,capabilities:r.capabilities.filter(e=>e===`preview`||e===`edit`),mtimeMs:r.modifiedAt}}catch{try{return(await c(`/api/files/resolve-reference`,{method:`POST`,body:JSON.stringify({spaceId:n.id,path:e,conversationId:t?.conversationId})})).reference}catch{return null}}}async function y(e,t,n){return await c(`/api/files/references/${encodeURIComponent(e)}/action`,{method:`POST`,body:JSON.stringify({action:t,conversationId:n?.conversationId})})}async function b(e,r){let i=await d(e,r),a=await t(n(`/api/files/${encodeURIComponent(i.id)}/content`),{headers:{Accept:`*/*`}});if(!a.ok)throw await s(a);return a.blob()}async function x(e,t,n){let r=await d(e,n),a=await c(`/api/files/${encodeURIComponent(r.id)}/content`,{method:`PUT`,body:JSON.stringify({content:t,revision:r.revision})}),o=i.parse(a.resource);return{path:o.relativePath,mtimeMs:o.modifiedAt,revision:o.revision}}async function S(e,r=``,i){let a=await l(i),c=new FormData;c.set(`directory`,r),c.set(`file`,e);let d=await t(n(`/api/files/spaces/${encodeURIComponent(a.id)}/upload`),{method:`POST`,body:c});if(!d.ok)throw await s(d);return u(o.parse(await d.json()).resource)}async function C(e){let r=await t(n(`/api/files/${encodeURIComponent(e)}`),{method:`DELETE`});if(!r.ok)throw await s(r)}function w(e,t){let n=new Blob([t],{type:`text/plain;charset=utf-8`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=e,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)}function T(e,t,n){let r=new Blob([t],{type:n}),i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=e,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(i)}export{b as a,_ as c,f as d,g as f,p as i,y as l,x as m,T as n,h as o,S as p,w as r,m as s,C as t,v as u};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/session-manager-CFqOuGy-.js","assets/rolldown-runtime-aKtaBQYM.js","assets/locale-store-DodizOrj.js","assets/vendor-react-BOUWij0V.js","assets/messages-D8PmAUB-.js","assets/gateway-realtime-BDh3i8n7.js","assets/schemas-CObaziC7.js","assets/gateway-realtime-store-B5Oq6VCQ.js","assets/local-session-drafts-jOqfUlwj.js","assets/session-api-qy4gMa5t.js","assets/gateway-startup-retry-BEj_bcbm.js","assets/tool-activity-BtJkgjFf.js","assets/constants-Co2_smKQ.js","assets/registry-api-D0eYNizR.js","assets/preload-helper-zJ_50EbN.js","assets/attachment-utils-core-BIOUBrpT.js","assets/agents-admin-api-CYqmO7gb.js","assets/gateway-config-swr-Da3Oob_s.js","assets/vendor-swr-BIWyz7Rc.js"])))=>i.map(i=>d[i]);
2
+ import{t as e}from"./preload-helper-zJ_50EbN.js";import{i as t,r as n}from"./locale-store-DodizOrj.js";import{i as r,n as i,r as a,t as o}from"./files-Bw4SBGdM.js";async function s(e){let t=await e.json().catch(()=>null);return Error(t?.error?.message??`HTTP ${e.status}`)}async function c(e,r){let i=await t(n(e),r);if(!i.ok)throw await s(i);return i.json()}async function l(t){if(!t?.projectId&&t?.conversationId){let{SessionManager:n}=await e(async()=>{let{SessionManager:e}=await import(`./session-manager-CFqOuGy-.js`).then(e=>e.n);return{SessionManager:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]));await new n().materialize(t.conversationId,`session_resources`)}let n=t?.projectId?{kind:`project`,id:t.projectId}:t?.conversationId?{kind:`session`,id:t.conversationId}:t?.agentId?{kind:`agent`,id:t.agentId}:null;if(n){let e=await c(`/api/files/contexts/${n.kind}/${encodeURIComponent(n.id)}`);return r.parse(e.space)}let i=await c(`/api/files/default-space`);return r.parse(i.space)}function u(e){return{id:e.id,name:e.name,path:e.relativePath,isDirectory:e.kind===`directory`,mimeType:e.mimeType,revision:e.revision}}async function d(e,t){let n=await l(t),r=await c(`/api/files/resolve`,{method:`POST`,body:JSON.stringify({spaceId:n.id,path:e})});return i.parse(r.resource)}async function f(e,t){return d(e,t)}async function p(e=``,t){let n=await l(t),r=new URLSearchParams;return e&&r.set(`path`,e),{entries:a.parse(await c(`/api/files/spaces/${encodeURIComponent(n.id)}/children${r.size?`?${r}`:``}`)).items.map(u)}}async function m(e=``,t){return(await p(e,t)).entries}async function h(e){let t=await l(e);return u(o.parse(await c(`/api/files/spaces/${encodeURIComponent(t.id)}/root`)).resource)}async function g(e,t,n=50){let r=await l(t),i=new URLSearchParams({q:e.trim(),limit:String(n),spaceId:r.id});return a.parse(await c(`/api/files/search?${i}`)).items.map(u)}async function _(e,r){let i=await d(e,r),a=await t(n(`/api/files/${encodeURIComponent(i.id)}/content`));if(!a.ok)throw await s(a);return{content:await a.text(),path:i.relativePath,mtimeMs:i.modifiedAt,revision:i.revision}}async function v(e,t){let n;try{n=await l(t)}catch{return null}try{let t=await c(`/api/files/resolve`,{method:`POST`,body:JSON.stringify({spaceId:n.id,path:e})}),r=i.parse(t.resource);return{fileId:r.id,inputPath:e,displayName:r.name,scope:`workspace`,locationKind:`workspace`,exists:!0,isDirectory:r.kind===`directory`,workspaceRelativePath:r.relativePath,capabilities:r.capabilities.filter(e=>e===`preview`||e===`edit`),mtimeMs:r.modifiedAt}}catch{try{return(await c(`/api/files/resolve-reference`,{method:`POST`,body:JSON.stringify({spaceId:n.id,path:e,conversationId:t?.conversationId})})).reference}catch{return null}}}async function y(e,t,n){return await c(`/api/files/references/${encodeURIComponent(e)}/action`,{method:`POST`,body:JSON.stringify({action:t,conversationId:n?.conversationId})})}async function b(e,r){let i=await d(e,r),a=await t(n(`/api/files/${encodeURIComponent(i.id)}/content`),{headers:{Accept:`*/*`}});if(!a.ok)throw await s(a);return a.blob()}async function x(e,t,n){let r=await d(e,n),a=await c(`/api/files/${encodeURIComponent(r.id)}/content`,{method:`PUT`,body:JSON.stringify({content:t,revision:r.revision})}),o=i.parse(a.resource);return{path:o.relativePath,mtimeMs:o.modifiedAt,revision:o.revision}}async function S(e,r=``,i){let a=await l(i),c=new FormData;c.set(`directory`,r),c.set(`file`,e);let d=await t(n(`/api/files/spaces/${encodeURIComponent(a.id)}/upload`),{method:`POST`,body:c});if(!d.ok)throw await s(d);return u(o.parse(await d.json()).resource)}async function C(e){let r=await t(n(`/api/files/${encodeURIComponent(e)}`),{method:`DELETE`});if(!r.ok)throw await s(r)}function w(e,t){let n=new Blob([t],{type:`text/plain;charset=utf-8`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=e,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)}function T(e,t,n){let r=new Blob([t],{type:n}),i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=e,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(i)}export{b as a,_ as c,f as d,g as f,p as i,y as l,x as m,T as n,h as o,S as p,w as r,m as s,C as t,v as u};
@@ -11,7 +11,7 @@
11
11
  <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png?v=20260910-1" />
12
12
  <link rel="manifest" href="/site.webmanifest?v=20260910-1" />
13
13
  <title>XOPC — Keep what matters moving.</title>
14
- <script type="module" crossorigin src="/assets/index-ByFXhQ-T.js"></script>
14
+ <script type="module" crossorigin src="/assets/index-XgbDpmNc.js"></script>
15
15
  <link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-aKtaBQYM.js">
16
16
  <link rel="modulepreload" crossorigin href="/assets/preload-helper-zJ_50EbN.js">
17
17
  <link rel="modulepreload" crossorigin href="/assets/vendor-react-BOUWij0V.js">
@@ -25,26 +25,26 @@
25
25
  <link rel="modulepreload" crossorigin href="/assets/download-Dk-ZjtO6.js">
26
26
  <link rel="modulepreload" crossorigin href="/assets/plus-Q2yW6OE7.js">
27
27
  <link rel="modulepreload" crossorigin href="/assets/x-B_N4OPjy.js">
28
- <link rel="modulepreload" crossorigin href="/assets/messages-DPw2X06D.js">
29
- <link rel="modulepreload" crossorigin href="/assets/locale-store-Y1aBayM_.js">
28
+ <link rel="modulepreload" crossorigin href="/assets/messages-D8PmAUB-.js">
29
+ <link rel="modulepreload" crossorigin href="/assets/locale-store-DodizOrj.js">
30
30
  <link rel="modulepreload" crossorigin href="/assets/cn-JdwAhgNB.js">
31
31
  <link rel="modulepreload" crossorigin href="/assets/schemas-CObaziC7.js">
32
32
  <link rel="modulepreload" crossorigin href="/assets/local-apps-yys1VChX.js">
33
33
  <link rel="modulepreload" crossorigin href="/assets/product-delivery-BAks11S4.js">
34
34
  <link rel="modulepreload" crossorigin href="/assets/app-link-DRL0YnPs.js">
35
35
  <link rel="modulepreload" crossorigin href="/assets/copy-to-clipboard-HOJ79TWv.js">
36
- <link rel="modulepreload" crossorigin href="/assets/markdown-view-7tzqIp_G.js">
36
+ <link rel="modulepreload" crossorigin href="/assets/markdown-view-Bb6ohqHz.js">
37
37
  <link rel="modulepreload" crossorigin href="/assets/dist-Che_jiQF.js">
38
38
  <link rel="modulepreload" crossorigin href="/assets/vendor-swr-BIWyz7Rc.js">
39
39
  <link rel="modulepreload" crossorigin href="/assets/activity-YogQEteU.js">
40
40
  <link rel="modulepreload" crossorigin href="/assets/bot-DjLkhyZL.js">
41
41
  <link rel="modulepreload" crossorigin href="/assets/check-DUBLcKHA.js">
42
42
  <link rel="modulepreload" crossorigin href="/assets/chevron-right-BweFrslA.js">
43
- <link rel="modulepreload" crossorigin href="/assets/dist-3h6cXXhT.js">
43
+ <link rel="modulepreload" crossorigin href="/assets/dist-C3DSFZCi.js">
44
44
  <link rel="modulepreload" crossorigin href="/assets/skeleton-BwbyijEw.js">
45
45
  <link rel="modulepreload" crossorigin href="/assets/settings-shell-dialog-layer-BU3UuiJr.js">
46
46
  <link rel="modulepreload" crossorigin href="/assets/settings-shell-layer-context-BTQUDoJ2.js">
47
- <link rel="modulepreload" crossorigin href="/assets/popover-select-DcsFzD_i.js">
47
+ <link rel="modulepreload" crossorigin href="/assets/popover-select-BNZZDJpO.js">
48
48
  <link rel="modulepreload" crossorigin href="/assets/circle-alert-BEjgurr2.js">
49
49
  <link rel="modulepreload" crossorigin href="/assets/circle-check-C23XjkUj.js">
50
50
  <link rel="modulepreload" crossorigin href="/assets/circle-dashed-8qMD7gHf.js">
@@ -70,30 +70,30 @@
70
70
  <link rel="modulepreload" crossorigin href="/assets/rotate-cw-LIg3Am9S.js">
71
71
  <link rel="modulepreload" crossorigin href="/assets/search-DA7gz22f.js">
72
72
  <link rel="modulepreload" crossorigin href="/assets/index.module-Cd9ENXfk.js">
73
- <link rel="modulepreload" crossorigin href="/assets/gateway-startup-retry-DVol958v.js">
74
- <link rel="modulepreload" crossorigin href="/assets/session-api-CTN4qwiN.js">
73
+ <link rel="modulepreload" crossorigin href="/assets/gateway-startup-retry-BEj_bcbm.js">
74
+ <link rel="modulepreload" crossorigin href="/assets/session-api-qy4gMa5t.js">
75
75
  <link rel="modulepreload" crossorigin href="/assets/constants-Co2_smKQ.js">
76
76
  <link rel="modulepreload" crossorigin href="/assets/app-chrome-BeB4KgOf.js">
77
77
  <link rel="modulepreload" crossorigin href="/assets/attachment-utils-core-BIOUBrpT.js">
78
78
  <link rel="modulepreload" crossorigin href="/assets/files-Bw4SBGdM.js">
79
- <link rel="modulepreload" crossorigin href="/assets/workspace-api-BbBT75Kg.js">
79
+ <link rel="modulepreload" crossorigin href="/assets/workspace-api-C4q2GwGV.js">
80
80
  <link rel="modulepreload" crossorigin href="/assets/electron-env-Dit0bHgy.js">
81
81
  <link rel="modulepreload" crossorigin href="/assets/use-async-resource-GrnWNwMZ.js">
82
- <link rel="modulepreload" crossorigin href="/assets/activity-store-X7CG9pzB.js">
83
- <link rel="modulepreload" crossorigin href="/assets/use-file-preview-expanded-Cl9mU32w.js">
82
+ <link rel="modulepreload" crossorigin href="/assets/activity-store-Bj0GuUUk.js">
83
+ <link rel="modulepreload" crossorigin href="/assets/use-file-preview-expanded-C4bBXf4j.js">
84
84
  <link rel="modulepreload" crossorigin href="/assets/globe-DSSGFWFn.js">
85
85
  <link rel="modulepreload" crossorigin href="/assets/button-CS04eWY9.js">
86
86
  <link rel="modulepreload" crossorigin href="/assets/copy-text-row-BHDs3cBa.js">
87
- <link rel="modulepreload" crossorigin href="/assets/share-link-dialog-COlX10Dc.js">
88
- <link rel="modulepreload" crossorigin href="/assets/local-session-drafts-wiq_12oN.js">
87
+ <link rel="modulepreload" crossorigin href="/assets/share-link-dialog-B3Io5mOY.js">
88
+ <link rel="modulepreload" crossorigin href="/assets/local-session-drafts-jOqfUlwj.js">
89
89
  <link rel="modulepreload" crossorigin href="/assets/tasks-Buv1mgPF.js">
90
- <link rel="modulepreload" crossorigin href="/assets/capabilities-BCF_160Z.js">
90
+ <link rel="modulepreload" crossorigin href="/assets/capabilities-Cl1RErL_.js">
91
91
  <link rel="modulepreload" crossorigin href="/assets/skill-wire-pattern-BPpeIcCi.js">
92
- <link rel="modulepreload" crossorigin href="/assets/shares-api-DICV5EKH.js">
93
- <link rel="modulepreload" crossorigin href="/assets/capabilities-CF4-mrIa.js">
94
- <link rel="modulepreload" crossorigin href="/assets/use-composer-attachments-DL61XeSu.js">
92
+ <link rel="modulepreload" crossorigin href="/assets/shares-api-BNNaREyB.js">
93
+ <link rel="modulepreload" crossorigin href="/assets/capabilities-Btku0cS3.js">
94
+ <link rel="modulepreload" crossorigin href="/assets/use-composer-attachments-zfL8zvRu.js">
95
95
  <link rel="modulepreload" crossorigin href="/assets/git-branch-Dh9uxTot.js">
96
- <link rel="modulepreload" crossorigin href="/assets/notes-api-J0yhflxC.js">
96
+ <link rel="modulepreload" crossorigin href="/assets/notes-api-DYfvIxWh.js">
97
97
  <link rel="modulepreload" crossorigin href="/assets/message-square-fVE7Ghj1.js">
98
98
  <link rel="modulepreload" crossorigin href="/assets/pause-DuPxgSxk.js">
99
99
  <link rel="modulepreload" crossorigin href="/assets/play-kxZvpBg8.js">
@@ -101,23 +101,25 @@
101
101
  <link rel="modulepreload" crossorigin href="/assets/settings-2-D-csvaET.js">
102
102
  <link rel="modulepreload" crossorigin href="/assets/sparkles-DHlfQFAF.js">
103
103
  <link rel="modulepreload" crossorigin href="/assets/middleware-Pd0e8Igk.js">
104
- <link rel="modulepreload" crossorigin href="/assets/gateway-realtime-store-DQuFWNjA.js">
105
- <link rel="modulepreload" crossorigin href="/assets/gateway-realtime-D6ffOiPe.js">
104
+ <link rel="modulepreload" crossorigin href="/assets/gateway-realtime-store-B5Oq6VCQ.js">
105
+ <link rel="modulepreload" crossorigin href="/assets/gateway-realtime-BDh3i8n7.js">
106
106
  <link rel="modulepreload" crossorigin href="/assets/tool-activity-BtJkgjFf.js">
107
- <link rel="modulepreload" crossorigin href="/assets/registry-api-DqDOrPQ0.js">
108
- <link rel="modulepreload" crossorigin href="/assets/gateway-config-swr-B31I6Gbq.js">
109
- <link rel="modulepreload" crossorigin href="/assets/agents-admin-api-Ck2x78jq.js">
110
- <link rel="modulepreload" crossorigin href="/assets/session-manager-DsH1DZI_.js">
111
- <link rel="modulepreload" crossorigin href="/assets/send-session-input-C7Nqy0sK.js">
112
- <link rel="modulepreload" crossorigin href="/assets/theme-store-BKgBPLH4.js">
113
- <link rel="modulepreload" crossorigin href="/assets/extension-provider-CUpbXB2k.js">
114
- <link rel="modulepreload" crossorigin href="/assets/models-hub-cache-HGrORbzR.js">
115
- <link rel="modulepreload" crossorigin href="/assets/oauth-api-CYe61zfD.js">
107
+ <link rel="modulepreload" crossorigin href="/assets/registry-api-D0eYNizR.js">
108
+ <link rel="modulepreload" crossorigin href="/assets/gateway-config-swr-Da3Oob_s.js">
109
+ <link rel="modulepreload" crossorigin href="/assets/agents-admin-api-CYqmO7gb.js">
110
+ <link rel="modulepreload" crossorigin href="/assets/session-manager-CFqOuGy-.js">
111
+ <link rel="modulepreload" crossorigin href="/assets/send-session-input-DstpmO44.js">
112
+ <link rel="modulepreload" crossorigin href="/assets/theme-store-AXut7b8R.js">
113
+ <link rel="modulepreload" crossorigin href="/assets/extension-provider-D-0AeFhE.js">
114
+ <link rel="modulepreload" crossorigin href="/assets/loopi-Djb8XU3l.js">
115
+ <link rel="modulepreload" crossorigin href="/assets/models-hub-cache-CaYi043g.js">
116
+ <link rel="modulepreload" crossorigin href="/assets/oauth-api-gSu-iTk5.js">
116
117
  <link rel="modulepreload" crossorigin href="/assets/skill-api-utils-C7V4JVXM.js">
117
118
  <link rel="modulepreload" crossorigin href="/assets/model-display-name-DXhO9rcM.js">
118
119
  <link rel="modulepreload" crossorigin href="/assets/settings-form-draft-Dy10ldo8.js">
119
120
  <link rel="stylesheet" crossorigin href="/assets/markdown-view-DSjfHfaW.css">
120
- <link rel="stylesheet" crossorigin href="/assets/index-BJh5gU04.css">
121
+ <link rel="stylesheet" crossorigin href="/assets/loopi-C09I2mNj.css">
122
+ <link rel="stylesheet" crossorigin href="/assets/index-DUgsBdV3.css">
121
123
  </head>
122
124
  <body>
123
125
  <div id="root"></div>
package/dist/package.js CHANGED
@@ -1,4 +1,4 @@
1
1
  //#region package.json
2
- var version = "0.0.354";
2
+ var version = "0.0.356";
3
3
  //#endregion
4
4
  export { version };
@@ -32,7 +32,10 @@ var init_voice_catalog = __esmMin((() => {
32
32
  voices: z.array(z.strictObject({
33
33
  id: z.string().min(1),
34
34
  name: z.string(),
35
- languages: z.array(z.string())
35
+ languages: z.array(z.string()),
36
+ gender: z.enum(["female", "male"]).optional(),
37
+ style: z.string().optional(),
38
+ description: z.string().optional()
36
39
  })),
37
40
  defaultVoice: z.string().min(1).optional(),
38
41
  limits: z.strictObject({
@@ -6,46 +6,46 @@ import { consumeClarificationApproval, init_clarification_wait_repository } from
6
6
  import { getInteractionState } from "../storage/sqlite/interaction-state-repository.js";
7
7
  import { getSessionMetadata } from "../storage/sqlite/session-read-repository.js";
8
8
  import { init_sqlite } from "../storage/sqlite/index.js";
9
- import { getAgentDefaultModelRef, init_schema } from "../config/schema.js";
10
- import { applyConfigOverrides } from "../config/runtime-overrides.js";
11
9
  import { expandWorkspacePathString, init_workspace_path } from "../config/workspace-path.js";
12
10
  import { init_agent_scope, listAgentEntries, resolveAgentProfileDir } from "./agent-scope.js";
13
- import { resolveEffectiveAgentProfile, resolveEffectiveAgentProfileForSession } from "../config/agent-profile.js";
11
+ import { extractTextContent } from "./context/workspace.js";
12
+ import { getAgentDefaultModelRef, init_schema } from "../config/schema.js";
14
13
  import { init_paths, resolveBundledSkillsDir } from "../config/paths.js";
15
- import { init_sync_provider_auth, resolveProviderApiKeySync } from "../auth/sync-provider-auth.js";
16
14
  import { CredentialResolver, init_credentials } from "../auth/credentials.js";
15
+ import { init_sync_provider_auth, resolveProviderApiKeySync } from "../auth/sync-provider-auth.js";
17
16
  import { getApiKeySync, getDefaultModelSync, init_providers, resolveModel } from "../providers/index.js";
18
17
  import { createExtensionAwareStreamFn } from "../providers/extension-stream-bridge.js";
19
18
  import { continuesAfterTool, trackAiUsageStream } from "../usage/recorder.js";
20
- import { extractTextContent } from "./context/workspace.js";
21
- import { buildExecutionScopeContextForPrompt } from "./context/execution-scope.js";
22
- import { clearBootstrapSnapshot } from "./bootstrap/bootstrap-cache.js";
23
- import { resolveBootstrapContextSync } from "./bootstrap/bootstrap-files.js";
24
- import { loadProjectAgentsContextFile } from "./bootstrap/project-agents-context.js";
25
- import { getEmbeddedExecutionRunId } from "./embedded/execution-context.js";
26
- import { parseExternalToolRef } from "./external-tools/refs.js";
27
19
  import { loadSkillsLock } from "./skills/hub-lock.js";
28
20
  import { isUnderManagedSkillsDir } from "./skills/managed-store.js";
29
- import { mcpToolPolicyId } from "./mcp/bundle-mcp-policy.js";
21
+ import { maybeRequestChannelExecApproval } from "../channels/exec-approval-runtime.js";
22
+ import { resolveEffectiveAgentProfile, resolveEffectiveAgentProfileForSession } from "../config/agent-profile.js";
23
+ import { applyConfigOverrides } from "../config/runtime-overrides.js";
30
24
  import { disposeAllSessionMcpRuntimes, retireSessionMcpRuntimeForConversationId } from "./mcp/bundle-mcp-runtime.js";
25
+ import { mcpToolPolicyId } from "./mcp/bundle-mcp-policy.js";
31
26
  import { createSkillConfigManager, isSkillEnabled, resolveSkillConfig } from "./skills/config.js";
32
27
  import { isValidSkillEnvVarName } from "./skills/required-env-vars.js";
33
28
  import { resolveWorkspaceSkillsDir, resolveWorkspaceSkillsLockPath } from "./skills/workspace-skills-dir.js";
29
+ import { parseExternalToolRef } from "./external-tools/refs.js";
30
+ import { evaluateToolGate } from "./context/execution-context.js";
31
+ import { resolveUserContextSessionAccess } from "../user-context/access-policy.js";
34
32
  import { replaceAgentSystemPrompt } from "./prompt/agent-system-prompt.js";
35
33
  import { evictAllEmbeddedSessionRunners, evictEmbeddedSessionRunner } from "./embedded/session-runner.js";
34
+ import { getEmbeddedExecutionRunId } from "./embedded/execution-context.js";
36
35
  import { createAgentTurnPolicy } from "./orchestration/agent-turn-policy.js";
37
- import { resolveUserContextSessionAccess } from "../user-context/access-policy.js";
36
+ import { buildExecutionScopeContextForPrompt } from "./context/execution-scope.js";
37
+ import { clearBootstrapSnapshot } from "./bootstrap/bootstrap-cache.js";
38
+ import { resolveBootstrapContextSync } from "./bootstrap/bootstrap-files.js";
39
+ import { loadProjectAgentsContextFile } from "./bootstrap/project-agents-context.js";
38
40
  import { createAgentCapabilitySessionState, resolveAgentCapabilityCatalog } from "./capabilities/registry.js";
39
41
  import "./capabilities/index.js";
40
42
  import { sortToolsForPromptCache } from "./tools/cache-stability.js";
41
43
  import { AgentToolsFactory } from "./tools/factory.js";
42
44
  import "./mcp/bundle-mcp-tools.js";
43
45
  import { isMemorySubsystemEnabled } from "./memory/memory-config.js";
44
- import { evaluateToolGate } from "./context/execution-context.js";
45
46
  import { ExecutionContextCoordinator } from "./context/coordinator.js";
46
47
  import { WorkspaceRuntimeRegistry } from "./workspace-runtime/registry.js";
47
48
  import { BackgroundReviewCoordinator } from "./background-review/coordinator.js";
48
- import { maybeRequestChannelExecApproval } from "../channels/exec-approval-runtime.js";
49
49
  import { SkillFilesystemWatcher } from "./skills/filesystem-watcher.js";
50
50
  import { ProjectTrustStore, hasTrustRequiringProjectResources } from "../project-trust/trust-store.js";
51
51
  import { basename, resolve, sep } from "node:path";
@@ -5,7 +5,7 @@ import { AgentCatalogRepository, init_repository } from "../agent-catalog/reposi
5
5
  import { expandWorkspacePathString, init_workspace_path } from "../config/workspace-path.js";
6
6
  import { init_workspace_defaults, resolveDefaultAgentWorkspaceDir } from "../config/workspace-defaults.js";
7
7
  import { basename, isAbsolute, join, relative, resolve } from "node:path";
8
- import fs from "node:fs";
8
+ import fsSync from "node:fs";
9
9
  //#region src/agent/agent-scope.ts
10
10
  /** Agent path and list resolution backed by the SQLite Agent catalog. */
11
11
  /** Expand `~` and resolve to an absolute path. */
@@ -51,7 +51,7 @@ function normalizePathForComparison(input) {
51
51
  const resolved = resolve(resolveUserPath(input));
52
52
  let normalized = resolved;
53
53
  try {
54
- normalized = fs.realpathSync.native(resolved);
54
+ normalized = fsSync.realpathSync.native(resolved);
55
55
  } catch {}
56
56
  return process.platform === "win32" ? normalized.toLowerCase() : normalized;
57
57
  }
@@ -1,5 +1,5 @@
1
- import { USER_UNDERSTANDING_MAINTENANCE_POLICY } from "../../user-model/maintenance-policy.js";
2
1
  import { USER_FACING_UNDERSTANDING_WRITING_GUIDANCE } from "../../user-context/understanding-writing.js";
2
+ import { USER_UNDERSTANDING_MAINTENANCE_POLICY } from "../../user-model/maintenance-policy.js";
3
3
  //#region src/agent/background-review/prompts.ts
4
4
  const USER_MODEL_MAINTAINER_SYSTEM_PROMPT = `You are xopc's user-understanding maintainer. You do not chat with the user and cannot write storage. Distinguish explicit memory commands, corrections, forgetting, durable user assertions, durable goals, collaboration rules, and ordinary task requests. Return strict JSON only. Assistant text is never evidence about the user.\n\n${USER_UNDERSTANDING_MAINTENANCE_POLICY}\n\n${USER_FACING_UNDERSTANDING_WRITING_GUIDANCE}`;
5
5
  function buildUserModelInterpreterPrompt(options) {
@@ -4,18 +4,18 @@ import { finishContextExtractionRun } from "../../storage/sqlite/context-extract
4
4
  import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
5
5
  import { loadCompactionSourceSnapshot } from "../../storage/sqlite/transcript-repository.js";
6
6
  import { init_sqlite } from "../../storage/sqlite/index.js";
7
- import { extractProfileAgentId } from "../../config/agent-profile.js";
7
+ import { extractTextContent } from "../context/workspace.js";
8
8
  import { init_sync_provider_auth, resolveProviderApiKeySync } from "../../auth/sync-provider-auth.js";
9
9
  import { getApiKeySync, init_providers, resolveModel } from "../../providers/index.js";
10
10
  import { createExtensionAwareStreamFn } from "../../providers/extension-stream-bridge.js";
11
11
  import { trackAiUsageStream } from "../../usage/recorder.js";
12
- import { extractTextContent } from "../context/workspace.js";
12
+ import { extractProfileAgentId } from "../../config/agent-profile.js";
13
13
  import { getAssertionSlot, listUserAssertions } from "../../user-model/repository.js";
14
+ import { resolveModelIntentRef } from "../../config/agent-model-intents.js";
15
+ import { claimRegisteredExtraction } from "../../user-context/extraction/registry.js";
14
16
  import { readAgentMessageContent } from "../memory/agent-message-access.js";
15
17
  import { isAssistantTurnAborted, isAssistantTurnFailed } from "../orchestration/llm-turn-retry.js";
16
18
  import { resolveAgentTurnTimeoutMs, runAgentTurnWithTimeout } from "../orchestration/run-agent-turn-with-timeout.js";
17
- import { resolveModelIntentRef } from "../../config/agent-model-intents.js";
18
- import { claimRegisteredExtraction } from "../../user-context/extraction/registry.js";
19
19
  import { emptyUserModelCaptureResult, executeUserModelInterpretation } from "../../user-model/capture/executor.js";
20
20
  import { parseUserModelInterpretation } from "../../user-model/capture/semantic.js";
21
21
  import "../../user-model/capture/index.js";
@@ -1,5 +1,5 @@
1
- import { validateDataBatch } from "../data-acquisition/schema.js";
2
1
  import { isDataBatchResult } from "../data-acquisition/render.js";
2
+ import { validateDataBatch } from "../data-acquisition/schema.js";
3
3
  import { basename, dirname, isAbsolute, relative, resolve, sep } from "node:path";
4
4
  import { execFile } from "node:child_process";
5
5
  import { promisify } from "node:util";
@@ -1,8 +1,8 @@
1
1
  import { extractProfileAgentId } from "../../config/agent-profile.js";
2
- import { assembleTaskContext } from "../../tasks/task-context-assembler.js";
3
2
  import { recordExecutionContext } from "./audit.js";
4
- import { extractAgentUserPlainText } from "../memory/user-message-text.js";
5
3
  import { buildExecutionContext, fitExecutionContextToChars } from "./execution-context.js";
4
+ import { assembleTaskContext } from "../../tasks/task-context-assembler.js";
5
+ import { extractAgentUserPlainText } from "../memory/user-message-text.js";
6
6
  //#region src/agent/context/coordinator.ts
7
7
  var ExecutionContextCoordinator = class {
8
8
  currentBySession = /* @__PURE__ */ new Map();
@@ -1,13 +1,13 @@
1
1
  import { getSqliteDatabase, init_transaction } from "../../storage/sqlite/transaction.js";
2
2
  import { init_collaboration_rule_repository, listCollaborationRules } from "../../storage/sqlite/collaboration-rule-repository.js";
3
- import { searchKnowledgeItems } from "../../knowledge-memory/repository.js";
4
- import "../../knowledge-memory/index.js";
5
- import { retrievalLexicalSimilarity } from "../../retrieval/textFeatures.js";
6
3
  import { listUserAssertions } from "../../user-model/repository.js";
7
4
  import { calculateExecutionValue } from "../../user-model/importance.js";
8
5
  import { canUseAssertion } from "../../user-model/usage-policy.js";
9
- import { getExecutionContextFeedbackScores } from "./audit.js";
6
+ import { searchKnowledgeItems } from "../../knowledge-memory/repository.js";
7
+ import "../../knowledge-memory/index.js";
8
+ import { retrievalLexicalSimilarity } from "../../retrieval/textFeatures.js";
10
9
  import { buildUserContextBlock } from "../memory/context-fence.js";
10
+ import { getExecutionContextFeedbackScores } from "./audit.js";
11
11
  import { randomUUID } from "node:crypto";
12
12
  //#region src/agent/context/execution-context.ts
13
13
  init_transaction();
@@ -2,9 +2,9 @@ import { isXopcDatabaseOpen } from "../../storage/sqlite/connection.js";
2
2
  import { TaskRepository, init_task_repository } from "../../tasks/task-repository.js";
3
3
  import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
4
4
  import { init_sqlite } from "../../storage/sqlite/index.js";
5
- import { sanitizeForPromptLiteral } from "../prompt/sanitize-for-prompt.js";
6
- import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
7
5
  import { TaskReadModelProjector } from "../../tasks/task-read-model-projector.js";
6
+ import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
7
+ import { sanitizeForPromptLiteral } from "../prompt/sanitize-for-prompt.js";
8
8
  import { buildActiveProjectContextForPrompt } from "./project-context.js";
9
9
  //#region src/agent/context/execution-scope.ts
10
10
  init_sqlite();
@@ -1,11 +1,11 @@
1
1
  import { TaskRepository, init_task_repository } from "../../tasks/task-repository.js";
2
- import { sanitizeForPromptLiteral } from "../prompt/sanitize-for-prompt.js";
3
- import { TaskReadModelProjector } from "../../tasks/task-read-model-projector.js";
4
- import { LocalAppStore } from "../../local-apps/store.js";
5
2
  import { ProjectStore } from "../../projects/project-store.js";
6
3
  import { getProjectForSession, getProjectWorkspacePathForSession } from "../../projects/workspace.js";
7
4
  import { knowledgeItemAllowed, listKnowledgeItems, searchKnowledgeItems } from "../../knowledge-memory/repository.js";
8
5
  import "../../knowledge-memory/index.js";
6
+ import { TaskReadModelProjector } from "../../tasks/task-read-model-projector.js";
7
+ import { sanitizeForPromptLiteral } from "../prompt/sanitize-for-prompt.js";
8
+ import { LocalAppStore } from "../../local-apps/store.js";
9
9
  //#region src/agent/context/project-context.ts
10
10
  init_task_repository();
11
11
  const MAX_TEXT = 1200;
@@ -1,7 +1,7 @@
1
1
  import { executeWithTimeout } from "../lifecycle/timeout-wrapper.js";
2
2
  import { checkedFilePath, readWorkspaceFileAsync } from "../sandbox/fileAccess.js";
3
- import { dataScheduler } from "./scheduler.js";
4
3
  import { checkFileSafety } from "../prompt/safety.js";
4
+ import { dataScheduler } from "./scheduler.js";
5
5
  import { parseRepositoryMatch, repositorySearch } from "../tools/repository-search.js";
6
6
  import { DATA_OPERATION_TOOLS, nativeDataArgs, validateDataBatch } from "./schema.js";
7
7
  import { readGitData } from "./git.js";
@@ -1,11 +1,11 @@
1
- import { getEmbeddedExecutionRunId, getEmbeddedExecutionSession, runWithEmbeddedExecutionSession } from "./execution-context.js";
2
- import { abortEmbeddedRun, getEmbeddedRunByConversationId, queueEmbeddedSteer } from "./runs.js";
3
1
  import { DEFAULT_MAX_LIVE_TOOL_RESULT_CHARS, resolveLiveToolResultMaxChars, truncateToolResultMessage } from "./tool-result-truncation.js";
2
+ import { abortEmbeddedRun, getEmbeddedRunByConversationId, queueEmbeddedSteer } from "./runs.js";
4
3
  import { getRawSessionAppendMessage, guardSessionManager, installSessionToolResultGuard } from "./session-tool-result-guard.js";
5
4
  import { acquireEmbeddedSessionRunner, buildEmbeddedRunnerFingerprint, evictAllEmbeddedSessionRunners, evictEmbeddedSessionRunner, getEmbeddedSessionRunnerIdleTtlMs, getEmbeddedSessionRunnerStats, isEmbeddedSessionRunnerEnabled, resetEmbeddedSessionRunnerForTest } from "./session-runner.js";
6
5
  import { repairAssistantUsageInSessionManager } from "./session-manager-init.js";
7
6
  import { openSqliteHydratingSessionManager } from "./sqlite-hydrating-session-manager.js";
8
7
  import { InMemoryTranscriptRuntime, createSqliteTranscriptRuntime } from "./transcript-runtime.js";
8
+ import { getEmbeddedExecutionRunId, getEmbeddedExecutionSession, runWithEmbeddedExecutionSession } from "./execution-context.js";
9
9
  import { runXopcEmbeddedTurn } from "./run-turn.js";
10
10
  import { runEmbeddedTurnForSession } from "./run-for-session.js";
11
11
  import { CURRENT_SESSION_VERSION, PiTranscriptManager } from "./pi-transcript.js";
@@ -1,6 +1,6 @@
1
1
  import { init_paths, resolveModelsJsonPath } from "../../config/paths.js";
2
- import { init_sync_provider_auth, resolveProviderApiKeySync } from "../../auth/sync-provider-auth.js";
3
2
  import { CredentialResolver, init_credentials } from "../../auth/credentials.js";
3
+ import { init_sync_provider_auth, resolveProviderApiKeySync } from "../../auth/sync-provider-auth.js";
4
4
  import { XopcModelCredentialStore, init_model_credential_store } from "../../auth/model-credential-store.js";
5
5
  import { init_register_bundled_oauth_flows, registerBundledOAuthFlows } from "../../providers/register-bundled-oauth-flows.js";
6
6
  import { init_register_runtime_providers, registerRuntimeProviders } from "../../providers/register-runtime-providers.js";
@@ -15,6 +15,7 @@ export type RunEmbeddedForSessionParams = {
15
15
  modelManager: ModelManager;
16
16
  thinkingOverride?: string | null;
17
17
  presentation?: 'voice';
18
+ requireVisibleReply?: boolean;
18
19
  abortSignal?: AbortSignal;
19
20
  /** Absolute parent deadline. The turn's own timeout is capped to the remaining budget. */
20
21
  deadlineAtMs?: number;
@@ -2,16 +2,16 @@ import { createLogger } from "../../utils/logger/index.js";
2
2
  import { init_logger } from "../../utils/logger.js";
3
3
  import { parseTurnOutcome } from "../../../packages/gateway-contract/src/turn-outcome.js";
4
4
  import { init_src } from "../../../packages/gateway-contract/src/index.js";
5
- import { resolveEffectiveAgentProfileForSession } from "../../config/agent-profile.js";
6
5
  import { init_providers, resolveModel } from "../../providers/index.js";
7
6
  import { appendDynamicPromptSection } from "../prompt/cache-boundary.js";
8
- import { runWithEmbeddedExecutionSession } from "./execution-context.js";
7
+ import { resolveEffectiveAgentProfileForSession } from "../../config/agent-profile.js";
8
+ import { resolveCompactionPolicy } from "../memory/compaction-policy.js";
9
+ import { projectTurnOutcome } from "../../session/turn-outcome-projector.js";
9
10
  import { resolveAgentTurnTimeoutMs } from "../orchestration/run-agent-turn-with-timeout.js";
10
11
  import { resolvePromptCachePolicy } from "../../providers/prompt-cache-plan.js";
11
12
  import { recoverContext } from "../memory/context-recovery.js";
12
- import { resolveCompactionPolicy } from "../memory/compaction-policy.js";
13
+ import { runWithEmbeddedExecutionSession } from "./execution-context.js";
13
14
  import { runXopcEmbeddedTurn } from "./run-turn.js";
14
- import { projectTurnOutcome } from "../../session/turn-outcome-projector.js";
15
15
  import { voicePresentationPrompt } from "../prompt/voice-presentation.js";
16
16
  import { applyStartupContextToUserMessage } from "../reply/apply-turn-user-enrichment.js";
17
17
  import { AgentRunSupervisor } from "../orchestration/agent-run-supervisor.js";
@@ -209,7 +209,8 @@ async function runEmbeddedTurnForSession(params) {
209
209
  abortSignal: supervisor.signal,
210
210
  onEvent: params.onEvent,
211
211
  onAgentEvent: (event) => agentManager.emitRuntimeEvent(conversationId, event),
212
- resumeLastUserMessage
212
+ resumeLastUserMessage,
213
+ requireVisibleReply: params.requireVisibleReply
213
214
  }), runId);
214
215
  if (turnResult.ok) {
215
216
  if (isFallbackAttempt) log.info({
@@ -6,10 +6,12 @@ import { getConnectionResumeInput, init_connection_wait_repository, isConnection
6
6
  import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
7
7
  import { init_session_repository } from "../../storage/sqlite/session-repository.js";
8
8
  import { init_sqlite } from "../../storage/sqlite/index.js";
9
- import { resolveEffectiveAgentConfigForSession } from "../../config/agent-profile.js";
10
9
  import { continuesAfterTool, trackAiUsageStream } from "../../usage/recorder.js";
11
- import { runWithEmbeddedExecutionSession } from "./execution-context.js";
10
+ import { resolveEffectiveAgentConfigForSession } from "../../config/agent-profile.js";
12
11
  import { isComputerControlActive, isComputerLeaseTool, stopComputerControl } from "../../computer/control-guard.js";
12
+ import { projectContextForModel } from "../memory/context-budget.js";
13
+ import { resolveCompactionPolicy } from "../memory/compaction-policy.js";
14
+ import { markTurnToolResult } from "../memory/turn-provenance.js";
13
15
  import { EmbeddedRunConflictError, abortEmbeddedRun, acquireEmbeddedRunLease, queueEmbeddedSteer } from "./runs.js";
14
16
  import { lastAssistantPlainText, subscribeEmbeddedSessionEvents } from "./subscribe-session.js";
15
17
  import { isContextOverflowError } from "../orchestration/context-overflow.js";
@@ -21,17 +23,16 @@ import { restoreCurrentTurnImages } from "./current-turn-images.js";
21
23
  import { resolvePromptCachePolicy } from "../../providers/prompt-cache-plan.js";
22
24
  import { wrapStreamFnForXopcExtensions } from "./xopc-stream-bridge.js";
23
25
  import { acquireEmbeddedSessionRunner, evictEmbeddedSessionRunner } from "./session-runner.js";
24
- import { projectContextForModel } from "../memory/context-budget.js";
25
26
  import { createSqliteTranscriptRuntime } from "./transcript-runtime.js";
26
27
  import { assessContext, recoverContext } from "../memory/context-recovery.js";
27
- import { resolveCompactionPolicy } from "../memory/compaction-policy.js";
28
28
  import { buildPromptCacheSnapshot, observePromptCacheSnapshot } from "../../providers/prompt-cache-observability.js";
29
29
  import { isPromptCacheExpired, recordPromptCacheTouch } from "../../providers/prompt-cache-lifecycle.js";
30
- import { markTurnToolResult } from "../memory/turn-provenance.js";
31
30
  import { RepositoryInstructions } from "../coding/repository-instructions.js";
32
31
  import { RunVerification } from "../coding/run-verification.js";
33
32
  import { withDelegationScope } from "../orchestration/delegation-scope.js";
33
+ import { runWithEmbeddedExecutionSession } from "./execution-context.js";
34
34
  import { getModelThinking } from "../../providers/model-thinking.js";
35
+ import "../messaging/no-reply.js";
35
36
  import { createAssistantMessageEventStream, getCurrentSystemPrompt, getCurrentTools, isRecoverableLength } from "@earendil-works/pi-ai";
36
37
  //#region src/agent/embedded/run-turn.ts
37
38
  init_connection_wait_repository();
@@ -496,6 +497,7 @@ async function runXopcEmbeddedTurn(params) {
496
497
  let policyStopped = false;
497
498
  let connectionStopped = false;
498
499
  let clarificationStopped = false;
500
+ let sentVisibleMessage = false;
499
501
  params.turnPolicy?.reset();
500
502
  session.agent.beforeToolCall = async (context, signal) => {
501
503
  const resume = getClarificationResumeInput(conversationId, runId);
@@ -569,7 +571,10 @@ async function runXopcEmbeddedTurn(params) {
569
571
  };
570
572
  unsubscribe = subscribeEmbeddedSessionEvents(session, (event) => {
571
573
  if (event.type === "message_end" && event.message.role === "assistant") recordPromptCacheTouch(conversationId, resolvedModel, event.message.usage);
572
- if (event.type === "tool_execution_end") markTurnToolResult(conversationId, runId, event.toolName);
574
+ if (event.type === "tool_execution_end") {
575
+ markTurnToolResult(conversationId, runId, event.toolName);
576
+ if (event.toolName === "send_message" && !event.isError) sentVisibleMessage = true;
577
+ }
573
578
  onEvent?.({
574
579
  ...event,
575
580
  runId
@@ -624,6 +629,14 @@ async function runXopcEmbeddedTurn(params) {
624
629
  useAuthoritativeProjection = true;
625
630
  }
626
631
  });
632
+ if (params.requireVisibleReply && !sentVisibleMessage && !policyStopped && !runAbortSignal.aborted && !isAssistantTurnFailed(session.agent) && !isAssistantTurnAborted(session.agent) && lastAssistantPlainText(session).trim() === "NO_REPLY") {
633
+ await session.sendCustomMessage({
634
+ customType: "visible_reply_required",
635
+ content: "The direct user message still needs a visible response in this conversation. Answer it now. If it is unclear, ask one short clarifying question. Do not output NO_REPLY.",
636
+ display: false
637
+ }, { triggerTurn: true });
638
+ await session.agent.waitForIdle();
639
+ }
627
640
  const pending = await verification.pendingContext();
628
641
  if ((params.verifyChanges ?? false) && pending && !policyStopped && !runAbortSignal.aborted && !isAssistantTurnFailed(session.agent) && !isAssistantTurnAborted(session.agent)) {
629
642
  await session.sendCustomMessage({
@@ -661,6 +674,11 @@ async function runXopcEmbeddedTurn(params) {
661
674
  errorMessage: getAssistantTurnErrorMessage(session.agent) ?? "Assistant turn failed",
662
675
  lastAssistantText: lastAssistantPlainText(session)
663
676
  };
677
+ if (params.requireVisibleReply && !sentVisibleMessage && lastAssistantPlainText(session).trim() === "NO_REPLY") return {
678
+ ok: false,
679
+ retryable: false,
680
+ errorMessage: "Assistant did not produce a visible reply"
681
+ };
664
682
  runner.piSm.appendCustomEntry("xopc.model-selection", {
665
683
  runId,
666
684
  model: `${session.agent.state.model?.provider ?? resolvedModel.provider}/${session.agent.state.model?.id ?? resolvedModel.id}`,
@@ -1,10 +1,10 @@
1
1
  import { init_string_coerce, normalizeOptionalString } from "../../utils/string-coerce.js";
2
+ import { formatContextLimitTruncationNotice } from "./tool-result-context-guard.js";
3
+ import { resolveLiveToolResultMaxChars, truncateToolResultMessage } from "./tool-result-truncation.js";
4
+ import { emitSessionTranscriptUpdate } from "../../session/transcript-events.js";
2
5
  import { extractToolCallsFromAssistant, extractToolResultId } from "../transcript/tool-call-id.js";
3
6
  import { makeMissingToolResult, sanitizeToolCallInputs } from "../transcript/session-transcript-repair.js";
4
7
  import { boundedJsonUtf8Bytes, firstEnumerableOwnKeys, jsonUtf8BytesOrInfinity } from "../../infra/json-utf8-bytes.js";
5
- import { emitSessionTranscriptUpdate } from "../../session/transcript-events.js";
6
- import { formatContextLimitTruncationNotice } from "./tool-result-context-guard.js";
7
- import { resolveLiveToolResultMaxChars, truncateToolResultMessage } from "./tool-result-truncation.js";
8
8
  //#region src/agent/embedded/session-tool-result-guard.ts
9
9
  init_string_coerce();
10
10
  /**
@@ -1,6 +1,6 @@
1
1
  import { init_string_coerce, normalizeLowercaseStringOrEmpty } from "../../utils/string-coerce.js";
2
- import { isDataBatchResult, renderDataBatch } from "../data-acquisition/render.js";
3
2
  import { formatContextLimitTruncationNotice } from "./tool-result-context-guard.js";
3
+ import { isDataBatchResult, renderDataBatch } from "../data-acquisition/render.js";
4
4
  //#region src/agent/embedded/tool-result-truncation.ts
5
5
  init_string_coerce();
6
6
  const MAX_TOOL_RESULT_CONTEXT_SHARE = .3;
@@ -87,6 +87,7 @@ export type RunXopcEmbeddedTurnParams = {
87
87
  /** Continue from the persisted trailing user row instead of appending it again. */
88
88
  resumeLastUserMessage?: boolean;
89
89
  verifyChanges?: boolean;
90
+ requireVisibleReply?: boolean;
90
91
  };
91
92
  export type RunXopcEmbeddedTurnResult = {
92
93
  ok: boolean;
@@ -8,14 +8,14 @@ import { init_sqlite } from "../../storage/sqlite/index.js";
8
8
  import { CapabilityError } from "../../capabilities/runtime/errors.js";
9
9
  import { ExternalEffectNotAppliedError, executeExternalOperation } from "../../capabilities/runtime/external-operations.js";
10
10
  import "../../capabilities/runtime/dispatcher.js";
11
- import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
12
- import { selectConnectorAccount } from "../../connectors/account-selection.js";
13
- import { cliContextPath } from "../../connectors/cli/process.js";
14
11
  import { validateActionInput } from "../../connectors/cli/protocol.js";
15
12
  import { getCliAdapter } from "../../connectors/cli/adapterRegistry.js";
16
13
  import { evaluateConnectorExecutionPolicy } from "../../connectors/policy.js";
17
14
  import { listConnectorInstances } from "../../connectors/instances.js";
15
+ import { cliContextPath } from "../../connectors/cli/process.js";
18
16
  import { cliOwnerId, recoverCliExecutions } from "../../connectors/cli/store.js";
17
+ import { selectConnectorAccount } from "../../connectors/account-selection.js";
18
+ import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
19
19
  import { describeCliAction, executeCliAction } from "../../connectors/cli/runtime.js";
20
20
  import { connectorPrincipalForSession } from "../../connectors/principal.js";
21
21
  import { externalToolRef, parseExternalToolRef } from "./refs.js";
@@ -7,17 +7,17 @@ import { bindObjectiveAccount, connectionBinding, connectionBindings, connectorO
7
7
  import { init_sqlite } from "../../storage/sqlite/index.js";
8
8
  import { CapabilityError } from "../../capabilities/runtime/errors.js";
9
9
  import { ExternalEffectNotAppliedError, executeExternalOperation } from "../../capabilities/runtime/external-operations.js";
10
- import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
11
- import { canAccessConnectorAccount, currentAccountConnections } from "../../connectors/account-access.js";
12
10
  import { connectorIdentitySummary } from "../../connectors/connector-identity.js";
13
11
  import { evaluateConnectorExecutionPolicy } from "../../connectors/policy.js";
12
+ import { canAccessConnectorAccount, currentAccountConnections } from "../../connectors/account-access.js";
14
13
  import { ComposioSessionsAdapter } from "../../connectors/composio-sessions.js";
15
14
  import { getComposioToolkitScope, getConfiguredComposioAuthConfigs, isComposioActionAllowedByCatalog, scopeForComposioAction } from "../../connectors/composio.js";
16
15
  import { getConnectorDefinition } from "../../connectors/catalog.js";
17
16
  import { listConnectorInstances } from "../../connectors/instances.js";
17
+ import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
18
+ import { isToolInputSchema } from "../../connectors/connection-capabilities.js";
18
19
  import { connectorPrincipalForSession } from "../../connectors/principal.js";
19
20
  import { externalToolRef, parseExternalToolRef } from "./refs.js";
20
- import { isToolInputSchema } from "../../connectors/connection-capabilities.js";
21
21
  import { ExternalToolSearchError } from "./search-error.js";
22
22
  //#region src/agent/external-tools/composio-provider.ts
23
23
  init_session_input_repository();