@xopcai/xopc 0.0.415 → 0.0.417

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 (892) hide show
  1. package/README.md +2 -2
  2. package/README.zh-CN.md +2 -2
  3. package/dist/browser-ext/_locales/en/messages.json +4 -1
  4. package/dist/browser-ext/_locales/zh_CN/messages.json +4 -1
  5. package/dist/browser-ext/dist/assets/{page-context-MuzjMBlJ.js → page-context-BKnEwsOO.js} +2914 -1381
  6. package/dist/browser-ext/dist/background.js +39 -10
  7. package/dist/browser-ext/dist/sidepanel.html +1 -1
  8. package/dist/browser-ext/dist/sidepanel.js +502 -348
  9. package/dist/browser-ext/manifest.json +1 -1
  10. package/dist/extensions/telegram/xopc.extension.json +1 -1
  11. package/dist/gateway/static/root/assets/activity-YogQEteU.js +1 -0
  12. package/dist/gateway/static/root/assets/activity-store-DnqOM8GN.js +1 -0
  13. package/dist/gateway/static/root/assets/agent-avatar-dicebear-1UABT2KS.js +1 -0
  14. package/dist/gateway/static/root/assets/agent-avatar-display-Cy50vjbq.js +2 -0
  15. package/dist/gateway/static/root/assets/agent-defaults-settings-panel-V4NX_cWz.js +1 -0
  16. package/dist/gateway/static/root/assets/agent-display-names-Bje7vfSn.js +1 -0
  17. package/dist/gateway/static/root/assets/agent-plugin-dialog-CQ5LLDMO.js +1 -0
  18. package/dist/gateway/static/root/assets/agents-O7mago-m.js +77 -0
  19. package/dist/gateway/static/root/assets/{agents-admin-api-B1p-ghg9.js → agents-admin-api-CyjykMEh.js} +2 -2
  20. package/dist/gateway/static/root/assets/agents-app-path-ciChvpCS.js +1 -0
  21. package/dist/gateway/static/root/assets/api-C1dxxDZx.js +1 -0
  22. package/dist/gateway/static/root/assets/api-Ddrs70xV.js +1 -0
  23. package/dist/gateway/static/root/assets/app-chrome-BeB4KgOf.js +1 -0
  24. package/dist/gateway/static/root/assets/app-link-CytZ5zkp.js +1 -0
  25. package/dist/gateway/static/root/assets/app-management-settings-panel-C1Zs-eha.js +1 -0
  26. package/dist/gateway/static/root/assets/appearance-settings-lIfGokbz.js +1 -0
  27. package/dist/gateway/static/root/assets/apps-page-CUvtsRYD.js +1 -0
  28. package/dist/gateway/static/root/assets/archive-Dz0hferG.js +1 -0
  29. package/dist/gateway/static/root/assets/{archive-plugin-Ch7wolHE.js → archive-plugin-n5lPr79c.js} +1 -1
  30. package/dist/gateway/static/root/assets/arrow-left-D880xG-P.js +1 -0
  31. package/dist/gateway/static/root/assets/arrow-right-DSSvoX71.js +1 -0
  32. package/dist/gateway/static/root/assets/arrow-up-D5ZtR1QT.js +1 -0
  33. package/dist/gateway/static/root/assets/arrow-up-right-T72JbQ1Q.js +1 -0
  34. package/dist/gateway/static/root/assets/{attachment-preview-renderer-wzIchDSv.js → attachment-preview-renderer-DdOEgexg.js} +3 -3
  35. package/dist/gateway/static/root/assets/{attachment-process-heavy-Db4nTY5N.js → attachment-process-heavy-DGZZ-M85.js} +2 -2
  36. package/dist/gateway/static/root/assets/automation-api-Bld8blNl.js +1 -0
  37. package/dist/gateway/static/root/assets/automation-display-BcfZOQTC.js +2 -0
  38. package/dist/gateway/static/root/assets/{automations-page-DK7AU79v.js → automations-page-oLsNzu_6.js} +1 -1
  39. package/dist/gateway/static/root/assets/automations-workspace-BgtYY2Mm.js +8 -0
  40. package/dist/gateway/static/root/assets/beta-badge-BnzdzIEl.js +1 -0
  41. package/dist/gateway/static/root/assets/{binary-plugins-B4HcHYsC.js → binary-plugins-D9VW7dWP.js} +2 -2
  42. package/dist/gateway/static/root/assets/{block-editor-BQAWEZF-.js → block-editor-C477bTtO.js} +23 -23
  43. package/dist/gateway/static/root/assets/book-open-CCGtrT3R.js +1 -0
  44. package/dist/gateway/static/root/assets/bot-DjLkhyZL.js +1 -0
  45. package/dist/gateway/static/root/assets/box-DvYoGszj.js +1 -0
  46. package/dist/gateway/static/root/assets/braces-Cfmtagno.js +1 -0
  47. package/dist/gateway/static/root/assets/brand-logo-CgT9zQfr.js +1 -0
  48. package/dist/gateway/static/root/assets/briefcase-business-BsoCaI_t.js +1 -0
  49. package/dist/gateway/static/root/assets/browser-BLJWD7WI.js +8 -0
  50. package/dist/gateway/static/root/assets/{browser-automation-inputs-D6AccXaA.js → browser-automation-inputs-CCiYXxmh.js} +1 -1
  51. package/dist/gateway/static/root/assets/browser-automations-page-DIUNY94X.js +3 -0
  52. package/dist/gateway/static/root/assets/browser-control-api-Y3fvmeBk.js +6 -0
  53. package/dist/gateway/static/root/assets/browser-notification-delivery-DmE2FgGc.js +1 -0
  54. package/dist/gateway/static/root/assets/browser-settings-page-DjkGahlz.js +3 -0
  55. package/dist/gateway/static/root/assets/{button-aIC072nz.js → button-CnRSIP6m.js} +1 -1
  56. package/dist/gateway/static/root/assets/calendar-clock-D-quYVPe.js +1 -0
  57. package/dist/gateway/static/root/assets/calendar-days-hw_Y-g-s.js +1 -0
  58. package/dist/gateway/static/root/assets/capabilities-DAyA681v.js +1 -0
  59. package/dist/gateway/static/root/assets/capabilities-DRVXLssH.js +1 -0
  60. package/dist/gateway/static/root/assets/capabilities-page-DFW4Y0x8.js +2 -0
  61. package/dist/gateway/static/root/assets/capabilities-settings-panel-uOHSMQPZ.js +8 -0
  62. package/dist/gateway/static/root/assets/capability-header-actions-CTUCuBlW.js +1 -0
  63. package/dist/gateway/static/root/assets/capability-icon-DVoZxEgW.js +1 -0
  64. package/dist/gateway/static/root/assets/capability-links-DzQWK1Fh.js +1 -0
  65. package/dist/gateway/static/root/assets/channels-D2a69dSt.js +1 -0
  66. package/dist/gateway/static/root/assets/channels-routes-r2g-9DdC.js +1 -0
  67. package/dist/gateway/static/root/assets/chat-agents-api-D5nR_JVe.js +1 -0
  68. package/dist/gateway/static/root/assets/chat-chart-block-K2t333qv.js +2 -0
  69. package/dist/gateway/static/root/assets/chat-page-CG38tCHE.js +71 -0
  70. package/dist/gateway/static/root/assets/chat-page-zQeUaawJ.css +1 -0
  71. package/dist/gateway/static/root/assets/chat-terminal-dock-CkFG6mA3.js +35 -0
  72. package/dist/gateway/static/root/assets/chevron-left-DqFhpbvK.js +1 -0
  73. package/dist/gateway/static/root/assets/chevron-right-BweFrslA.js +1 -0
  74. package/dist/gateway/static/root/assets/chunk-D32TOXHM-DQIy-Baq.js +156 -0
  75. package/dist/gateway/static/root/assets/chunk-KS7C4IRE-CiwuuyV8.js +4 -0
  76. package/dist/gateway/static/root/assets/circle-BoO4YvTx.js +1 -0
  77. package/dist/gateway/static/root/assets/circle-alert-BEjgurr2.js +1 -0
  78. package/dist/gateway/static/root/assets/circle-pause-CN9jYH2s.js +1 -0
  79. package/dist/gateway/static/root/assets/circle-x-DFsCKeya.js +1 -0
  80. package/dist/gateway/static/root/assets/clock-3-DnrAnuyZ.js +1 -0
  81. package/dist/gateway/static/root/assets/cloud-C4-yfnnk.js +1 -0
  82. package/dist/gateway/static/root/assets/cloud-credits-B-nbtkqv.js +1 -0
  83. package/dist/gateway/static/root/assets/code-xml-DJtYhZUF.js +1 -0
  84. package/dist/gateway/static/root/assets/coins-DjP27vUx.js +1 -0
  85. package/dist/gateway/static/root/assets/command-palette-api-Do_66X1B.js +1 -0
  86. package/dist/gateway/static/root/assets/composer-payload-handoff-BU3B-C26.js +1 -0
  87. package/dist/gateway/static/root/assets/computer-settings-page-DBxOcMko.js +1 -0
  88. package/dist/gateway/static/root/assets/confirm-dialog-XGclfBqe.js +1 -0
  89. package/dist/gateway/static/root/assets/connected-providers-grid-Dmnu2zle.js +1 -0
  90. package/dist/gateway/static/root/assets/connector-filters-Cfcx9EA2.js +1 -0
  91. package/dist/gateway/static/root/assets/connector-service-page-rWpnchb3.js +1 -0
  92. package/dist/gateway/static/root/assets/connectors-api-DIBG72k4.js +1 -0
  93. package/dist/gateway/static/root/assets/connectors-page-DT_WrC1y.js +1 -0
  94. package/dist/gateway/static/root/assets/constants-DBtMsXdW.js +1 -0
  95. package/dist/gateway/static/root/assets/copy-text-row-CYIv7RfP.js +1 -0
  96. package/dist/gateway/static/root/assets/cpu-B247669f.js +1 -0
  97. package/dist/gateway/static/root/assets/database-CjjeZfRG.js +1 -0
  98. package/dist/gateway/static/root/assets/date-picker-CE-cZFCU.js +1 -0
  99. package/dist/gateway/static/root/assets/dependency-picker-7SpSfDSg.js +1 -0
  100. package/dist/gateway/static/root/assets/desktop-pet-lorocS9j.js +1 -0
  101. package/dist/gateway/static/root/assets/desktop-pet-narrative-CS8qJpNO.js +1 -0
  102. package/dist/gateway/static/root/assets/desktop-pet-settings-CEcohlZq.js +1 -0
  103. package/dist/gateway/static/root/assets/{desktop-pet-sprite-Bd-aOI7N.js → desktop-pet-sprite-D5YYq2zC.js} +1 -1
  104. package/dist/gateway/static/root/assets/dev-view-store-57HgVuZ6.js +1 -0
  105. package/dist/gateway/static/root/assets/device-pairing-wizard-CLCPuf4R.js +1 -0
  106. package/dist/gateway/static/root/assets/directory-picker-path-field-D4jMhpka.js +1 -0
  107. package/dist/gateway/static/root/assets/discussion-annotation-sync-BKjf9gWe.js +1 -0
  108. package/dist/gateway/static/root/assets/dist-CaUuvp8-.js +1 -0
  109. package/dist/gateway/static/root/assets/dist-DNCdG_qB.js +1 -0
  110. package/dist/gateway/static/root/assets/dist-DfWfZ9iu.js +1 -0
  111. package/dist/gateway/static/root/assets/dist-DusecO_p.js +1 -0
  112. package/dist/gateway/static/root/assets/docx-preview-CnIClbYi.js +20 -0
  113. package/dist/gateway/static/root/assets/earth-BMhZtzcj.js +1 -0
  114. package/dist/gateway/static/root/assets/echarts-runtime-QSmTlXOu.js +18 -0
  115. package/dist/gateway/static/root/assets/electron-env-DHOGevH3.js +1 -0
  116. package/dist/gateway/static/root/assets/extension-debug-page-BsK2LMXQ.js +1 -0
  117. package/dist/gateway/static/root/assets/extension-iframe-host-Dhkk5JV2.js +1 -0
  118. package/dist/gateway/static/root/assets/extension-marketplace-api-CVJPqJOB.js +1 -0
  119. package/dist/gateway/static/root/assets/extension-page-Brps2XDP.js +1 -0
  120. package/dist/gateway/static/root/assets/extension-paths-DvuaZJuy.js +1 -0
  121. package/dist/gateway/static/root/assets/extension-provider-Byrd8Sor.js +1 -0
  122. package/dist/gateway/static/root/assets/extension-settings-page-CHY68DpG.js +1 -0
  123. package/dist/gateway/static/root/assets/file-BqMS_3DT.js +1 -0
  124. package/dist/gateway/static/root/assets/file-archive-DanfQJNe.js +1 -0
  125. package/dist/gateway/static/root/assets/file-preview-surface-BlprUrIs.js +1 -0
  126. package/dist/gateway/static/root/assets/file-text-D12HbeVy.js +1 -0
  127. package/dist/gateway/static/root/assets/file-tree-CFlZnV3Y.js +1 -0
  128. package/dist/gateway/static/root/assets/file-tree-utils-DJs1faGv.js +1 -0
  129. package/dist/gateway/static/root/assets/files-BNL4kkSB.js +1 -0
  130. package/dist/gateway/static/root/assets/floating-ui.dom-seOukHzT.js +1 -0
  131. package/dist/gateway/static/root/assets/folder-CN-pC3XL.js +1 -0
  132. package/dist/gateway/static/root/assets/folder-kanban-CpLlFI1o.js +1 -0
  133. package/dist/gateway/static/root/assets/form-field-width-DJw_jULe.js +1 -0
  134. package/dist/gateway/static/root/assets/{gateway-config-swr-fQKBHBi1.js → gateway-config-swr-BAmUhiP1.js} +1 -1
  135. package/dist/gateway/static/root/assets/gateway-realtime-CsykKL4l.js +1 -0
  136. package/dist/gateway/static/root/assets/gateway-realtime-store-DQqMBruB.js +1 -0
  137. package/dist/gateway/static/root/assets/gateway-restart-Ch128Lrr.js +1 -0
  138. package/dist/gateway/static/root/assets/gateway-settings-BA5-Uuwx.js +1 -0
  139. package/dist/gateway/static/root/assets/{gateway-startup-retry-Cfwxof4k.js → gateway-startup-retry-CtUB3g6N.js} +1 -1
  140. package/dist/gateway/static/root/assets/gauge-C78eD2BA.js +1 -0
  141. package/dist/gateway/static/root/assets/git-branch-Dh9uxTot.js +1 -0
  142. package/dist/gateway/static/root/assets/global-defaults-api-CINf-C6a.js +2 -0
  143. package/dist/gateway/static/root/assets/heart-Cp4rgrqn.js +1 -0
  144. package/dist/gateway/static/root/assets/highlight-code-BH65IIbJ.js +1 -0
  145. package/dist/gateway/static/root/assets/highlighted-body-KQOG7T2V-DKGma5wI.js +1 -0
  146. package/dist/gateway/static/root/assets/history-DXH_9jsE.js +1 -0
  147. package/dist/gateway/static/root/assets/home-page-DaMFBYo1.js +2 -0
  148. package/dist/gateway/static/root/assets/image-Cwyalflz.js +1 -0
  149. package/dist/gateway/static/root/assets/image-generation-api-I_JgLL_m.js +1 -0
  150. package/dist/gateway/static/root/assets/imports-page-BWShtGRQ.js +1 -0
  151. package/dist/gateway/static/root/assets/index-BpCi0TdG.js +11 -0
  152. package/dist/gateway/static/root/assets/index-DY2Y83b9.css +1 -0
  153. package/dist/gateway/static/root/assets/index.module-Cd9ENXfk.js +1 -0
  154. package/dist/gateway/static/root/assets/info-CDrmIZhb.js +1 -0
  155. package/dist/gateway/static/root/assets/install-connector-dialog-DU1Tz7B3.js +1 -0
  156. package/dist/gateway/static/root/assets/interaction-BdhHBbYa.js +1 -0
  157. package/dist/gateway/static/root/assets/is-masked-secret-DOkL5b_X.js +1 -0
  158. package/dist/gateway/static/root/assets/{jszip.min-DT31yWkU.js → jszip.min-Dj17eJqX.js} +1 -1
  159. package/dist/gateway/static/root/assets/key-round-DWbpyU2U.js +1 -0
  160. package/dist/gateway/static/root/assets/keyboard-shortcuts-settings-CdM4BQwp.js +1 -0
  161. package/dist/gateway/static/root/assets/languages-zXtNocoy.js +2 -0
  162. package/dist/gateway/static/root/assets/laptop-CI3hBVrl.js +1 -0
  163. package/dist/gateway/static/root/assets/layers-mJW7JJKm.js +1 -0
  164. package/dist/gateway/static/root/assets/layout-grid-CEVZdVFU.js +1 -0
  165. package/dist/gateway/static/root/assets/list-checks-BbsExAoq.js +1 -0
  166. package/dist/gateway/static/root/assets/list-filter-COkzTdOz.js +1 -0
  167. package/dist/gateway/static/root/assets/list-todo-CTVRto8O.js +1 -0
  168. package/dist/gateway/static/root/assets/list-tree-B0OMswgM.js +1 -0
  169. package/dist/gateway/static/root/assets/local-app-workbench-page-qPflPuQD.js +1 -0
  170. package/dist/gateway/static/root/assets/local-apps-Ck6kACsY.js +1 -0
  171. package/dist/gateway/static/root/assets/local-apps-page-CxyRVfjD.js +1 -0
  172. package/dist/gateway/static/root/assets/local-session-drafts-B9ZPwotC.js +1 -0
  173. package/dist/gateway/static/root/assets/{locale-store-B7s2Hb35.js → locale-store-lIXD1FMw.js} +1 -1
  174. package/dist/gateway/static/root/assets/lock-keyhole-DEK5kH0u.js +1 -0
  175. package/dist/gateway/static/root/assets/logs-page-CbY1N-zi.js +2 -0
  176. package/dist/gateway/static/root/assets/loopi-C09I2mNj.css +1 -0
  177. package/dist/gateway/static/root/assets/loopi-CNtmi9FU.js +1 -0
  178. package/dist/gateway/static/root/assets/management-settings-Diy12JfQ.js +1 -0
  179. package/dist/gateway/static/root/assets/{markdown-editor-phTQ0mox.js → markdown-editor-BuuGlcfG.js} +1 -1
  180. package/dist/gateway/static/root/assets/markdown-view-C-DHb3Io.css +1 -0
  181. package/dist/gateway/static/root/assets/markdown-view-CJt-i2Dp.js +324 -0
  182. package/dist/gateway/static/root/assets/{media-plugins-DYQDjCVQ.js → media-plugins-D_bR23mA.js} +1 -1
  183. package/dist/gateway/static/root/assets/mermaid-MCJ5UELQ-Ur99GwOg.js +1 -0
  184. package/dist/gateway/static/root/assets/mermaid-render-oOellPHt.js +134 -0
  185. package/dist/gateway/static/root/assets/message-circle-Badhj-4D.js +1 -0
  186. package/dist/gateway/static/root/assets/message-square-fVE7Ghj1.js +1 -0
  187. package/dist/gateway/static/root/assets/message-square-plus-XP0tGdlV.js +1 -0
  188. package/dist/gateway/static/root/assets/{messages-BYq0cPbn.js → messages-DRR9N3HC.js} +1 -1
  189. package/dist/gateway/static/root/assets/messages-square-BckAJrEW.js +1 -0
  190. package/dist/gateway/static/root/assets/mic-CuUb7zc-.js +1 -0
  191. package/dist/gateway/static/root/assets/minimize-2-DtOGrlpo.js +1 -0
  192. package/dist/gateway/static/root/assets/mobile-pair-qr-CuIbmw5x.js +1 -0
  193. package/dist/gateway/static/root/assets/model-selector-DCYA_ntf.js +1 -0
  194. package/dist/gateway/static/root/assets/models-hub-cache-za2fWJLg.js +1 -0
  195. package/dist/gateway/static/root/assets/monitor-Af5eAvF7.js +1 -0
  196. package/dist/gateway/static/root/assets/mouse-pointer-2-DZ51Onvj.js +1 -0
  197. package/dist/gateway/static/root/assets/navigation-BkjnOw30.js +1 -0
  198. package/dist/gateway/static/root/assets/network-BUQLY1BV.js +1 -0
  199. package/dist/gateway/static/root/assets/new-session-preferences-gb411vZP.js +1 -0
  200. package/dist/gateway/static/root/assets/note-detail-panel-DBs1yHLy.js +5 -0
  201. package/dist/gateway/static/root/assets/note-image-lightbox-CivkB6LB.js +1 -0
  202. package/dist/gateway/static/root/assets/notes-api-C_458rv5.js +1 -0
  203. package/dist/gateway/static/root/assets/notes-page-DL3c-41a.js +8 -0
  204. package/dist/gateway/static/root/assets/number-input-El7Szeln.js +1 -0
  205. package/dist/gateway/static/root/assets/oauth-api-C3X9FLYw.js +1 -0
  206. package/dist/gateway/static/root/assets/oauth-authorization-window-o6URRos4.js +1 -0
  207. package/dist/gateway/static/root/assets/oauth-provider-connect-H81se_3n.js +1 -0
  208. package/dist/gateway/static/root/assets/package-wATCyihJ.js +1 -0
  209. package/dist/gateway/static/root/assets/page-context-capture-button-BkAlQ7cB.js +1 -0
  210. package/dist/gateway/static/root/assets/page-context-draft-ClLgaOaD.js +1 -0
  211. package/dist/gateway/static/root/assets/page-header-store-DH8K0xii.js +1 -0
  212. package/dist/gateway/static/root/assets/page-tabs-oeTY7z3_.js +1 -0
  213. package/dist/gateway/static/root/assets/panel-left-C8MqSXRZ.js +1 -0
  214. package/dist/gateway/static/root/assets/panel-right-CFGrHTsD.js +1 -0
  215. package/dist/gateway/static/root/assets/paperclip-f1HujQY1.js +1 -0
  216. package/dist/gateway/static/root/assets/pause-DuPxgSxk.js +1 -0
  217. package/dist/gateway/static/root/assets/{pdf-D4PI9qAw.js → pdf-EQHMWEbX.js} +3 -3
  218. package/dist/gateway/static/root/assets/pdf-runtime-JnUAvfIa.js +2 -0
  219. package/dist/gateway/static/root/assets/{pdf.worker.min-B4E34YdZ.js → pdf.worker.min-bpyjgR8v.js} +7 -7
  220. package/dist/gateway/static/root/assets/pencil-DmIY3Oa-.js +1 -0
  221. package/dist/gateway/static/root/assets/personal-avatar-BLtHt8fV.js +1 -0
  222. package/dist/gateway/static/root/assets/personal-avatar-BUCb7OiW.css +1 -0
  223. package/dist/gateway/static/root/assets/personal-page-B5DP3lO-.js +1 -0
  224. package/dist/gateway/static/root/assets/personal-proactivity-DaRnbB1f.js +1 -0
  225. package/dist/gateway/static/root/assets/personal-settings-panel-DjDc5Kaz.js +1 -0
  226. package/dist/gateway/static/root/assets/phone-dependencies-card-DISHarj8.js +1 -0
  227. package/dist/gateway/static/root/assets/phone-model-picker-u8YIQCgo.js +1 -0
  228. package/dist/gateway/static/root/assets/phone-settings-page-el3pT0PD.js +1 -0
  229. package/dist/gateway/static/root/assets/phone-workspace-store-fhnZrgy_.js +1 -0
  230. package/dist/gateway/static/root/assets/pin-off-BMRv-Kxr.js +1 -0
  231. package/dist/gateway/static/root/assets/play-kxZvpBg8.js +1 -0
  232. package/dist/gateway/static/root/assets/plug-DKYPEgkR.js +1 -0
  233. package/dist/gateway/static/root/assets/plug-zap-L8NMe3Sv.js +1 -0
  234. package/dist/gateway/static/root/assets/plugin-details-dialog-CTBs1Jde.js +1 -0
  235. package/dist/gateway/static/root/assets/plus-Q2yW6OE7.js +1 -0
  236. package/dist/gateway/static/root/assets/popover-select-DniHw2dy.js +1 -0
  237. package/dist/gateway/static/root/assets/power-ZI-pBczI.js +1 -0
  238. package/dist/gateway/static/root/assets/power-off-CwwQ7Gp7.js +1 -0
  239. package/dist/gateway/static/root/assets/preference-select-fields-D7oluyHN.js +1 -0
  240. package/dist/gateway/static/root/assets/preload-helper-Czpn1I53.js +1 -0
  241. package/dist/gateway/static/root/assets/preview-open-alternatives-CY_hjK4b.js +1 -0
  242. package/dist/gateway/static/root/assets/product-automation-feedback-DsUSqCOX.js +7 -0
  243. package/dist/gateway/static/root/assets/product-delivery-BU_H84jL.js +1 -0
  244. package/dist/gateway/static/root/assets/product-navigation-Co8pLbDP.js +1 -0
  245. package/dist/gateway/static/root/assets/product-open-page-xn9G4hSI.js +1 -0
  246. package/dist/gateway/static/root/assets/product-preview-content-DcoK-iZe.js +1 -0
  247. package/dist/gateway/static/root/assets/product-preview-modal-Ruw9WSKK.js +2 -0
  248. package/dist/gateway/static/root/assets/project-detail-page-BKvWLiMw.js +7 -0
  249. package/dist/gateway/static/root/assets/project-understanding-BCQr0AZ_.js +1 -0
  250. package/dist/gateway/static/root/assets/projects-page-D4g7bB7X.js +1 -0
  251. package/dist/gateway/static/root/assets/providers-api-CzVkFKFg.js +1 -0
  252. package/dist/gateway/static/root/assets/puzzle-BptcPjKI.js +1 -0
  253. package/dist/gateway/static/root/assets/recording-upload-0jxahBMo.js +1 -0
  254. package/dist/gateway/static/root/assets/refresh-button-bU_0NarN.js +1 -0
  255. package/dist/gateway/static/root/assets/refresh-cw-BRlGaq2w.js +1 -0
  256. package/dist/gateway/static/root/assets/{registry-api-BcfoLEna.js → registry-api-n8TwtJ_j.js} +2 -2
  257. package/dist/gateway/static/root/assets/remote-access-hub-cZpBi4Rk.js +1 -0
  258. package/dist/gateway/static/root/assets/rotate-ccw-JM1TBLpp.js +1 -0
  259. package/dist/gateway/static/root/assets/rotate-cw-LIg3Am9S.js +1 -0
  260. package/dist/gateway/static/root/assets/route-preload-B5UiReO7.js +2 -0
  261. package/dist/gateway/static/root/assets/runtime-health-D2TDFLLq.js +1 -0
  262. package/dist/gateway/static/root/assets/{runtime-tools-api-DesqGCnE.js → runtime-tools-api-D-8KjYK6.js} +1 -1
  263. package/dist/gateway/static/root/assets/runtime-tools-settings-panel-MKlLFuow.js +1 -0
  264. package/dist/gateway/static/root/assets/save-DRDABU--.js +1 -0
  265. package/dist/gateway/static/root/assets/schema-form-v4N4lawq.js +1 -0
  266. package/dist/gateway/static/root/assets/schemas-CCWMleym.js +55 -0
  267. package/dist/gateway/static/root/assets/search-DA7gz22f.js +1 -0
  268. package/dist/gateway/static/root/assets/secret-input-BQvFXqzz.js +1 -0
  269. package/dist/gateway/static/root/assets/secret-input-labels-B5Jl5HqK.js +1 -0
  270. package/dist/gateway/static/root/assets/segmented-styles-Cqb91xsn.js +1 -0
  271. package/dist/gateway/static/root/assets/send-1f1Ntw6E.js +1 -0
  272. package/dist/gateway/static/root/assets/server-BlHCBjiE.js +1 -0
  273. package/dist/gateway/static/root/assets/service-recommendation-list-B1xuVT3N.js +1 -0
  274. package/dist/gateway/static/root/assets/{session-api-DdQnMwkl.js → session-api-CsCoI2im.js} +1 -1
  275. package/dist/gateway/static/root/assets/session-channel-icon-SsY70Z6t.js +1 -0
  276. package/dist/gateway/static/root/assets/session-identity-label-B7sgG1PE.js +1 -0
  277. package/dist/gateway/static/root/assets/session-manager-5l9q0cd5.js +16 -0
  278. package/dist/gateway/static/root/assets/sessions-page-DsLw2aMD.js +1 -0
  279. package/dist/gateway/static/root/assets/settings-2-D-csvaET.js +1 -0
  280. package/dist/gateway/static/root/assets/settings-advanced-gate-B5lQeVNi.js +1 -0
  281. package/dist/gateway/static/root/assets/settings-advanced-section-BqoVSko2.js +1 -0
  282. package/dist/gateway/static/root/assets/settings-form-draft-Dy10ldo8.js +1 -0
  283. package/dist/gateway/static/root/assets/settings-form-section-num14vSv.js +1 -0
  284. package/dist/gateway/static/root/assets/settings-loading-skeleton-BTqvr_Fw.js +1 -0
  285. package/dist/gateway/static/root/assets/settings-mode-store-CBsJ-Qg2.js +1 -0
  286. package/dist/gateway/static/root/assets/settings-page-DROUGyJl.js +1 -0
  287. package/dist/gateway/static/root/assets/settings-page-header-Bv-kQFTm.js +1 -0
  288. package/dist/gateway/static/root/assets/settings-page-layout-DHP6MrrL.js +1 -0
  289. package/dist/gateway/static/root/assets/settings-uiTATseT.js +1 -0
  290. package/dist/gateway/static/root/assets/setup-status-panel-MJE3B_LX.js +1 -0
  291. package/dist/gateway/static/root/assets/share-link-dialog-BJHRQVKC.js +1 -0
  292. package/dist/gateway/static/root/assets/share-preview-page-Bsrv_zOQ.js +2 -0
  293. package/dist/gateway/static/root/assets/shares-api-rtWVHA_d.js +1 -0
  294. package/dist/gateway/static/root/assets/shares-settings-CfIRv4uX.js +1 -0
  295. package/dist/gateway/static/root/assets/shield-B1sI_cxl.js +1 -0
  296. package/dist/gateway/static/root/assets/shield-check-BU58siTV.js +1 -0
  297. package/dist/gateway/static/root/assets/shield-off-2jsucUds.js +1 -0
  298. package/dist/gateway/static/root/assets/side-chat-shortcut-BIw-1TTD.js +1 -0
  299. package/dist/gateway/static/root/assets/skill-api-B_W1K3sv.js +1 -0
  300. package/dist/gateway/static/root/assets/skill-api-utils-C7V4JVXM.js +1 -0
  301. package/dist/gateway/static/root/assets/skill-list-api-BzlKXPsE.js +1 -0
  302. package/dist/gateway/static/root/assets/skill-reload-api-Cff2GgZb.js +1 -0
  303. package/dist/gateway/static/root/assets/skill-wire-pattern-BPpeIcCi.js +1 -0
  304. package/dist/gateway/static/root/assets/skills-page-DtBloYeU.js +2 -0
  305. package/dist/gateway/static/root/assets/sliders-horizontal-DqsYor6I.js +1 -0
  306. package/dist/gateway/static/root/assets/sliding-tab-list-DuQyViqe.js +1 -0
  307. package/dist/gateway/static/root/assets/smartphone-DSSsQFqA.js +1 -0
  308. package/dist/gateway/static/root/assets/{source-workspace-editor-BIvi89Zx.js → source-workspace-editor-kxosllTu.js} +1 -1
  309. package/dist/gateway/static/root/assets/sparkles-DHlfQFAF.js +1 -0
  310. package/dist/gateway/static/root/assets/specialists-xbB3xL9e.js +1 -0
  311. package/dist/gateway/static/root/assets/square-DMK_fB-3.js +1 -0
  312. package/dist/gateway/static/root/assets/square-pen-B8FsvqNu.js +1 -0
  313. package/dist/gateway/static/root/assets/square-terminal-K87bylpZ.js +1 -0
  314. package/dist/gateway/static/root/assets/star-BUWJqJ5c.js +1 -0
  315. package/dist/gateway/static/root/assets/stethoscope-DRqTAtjD.js +1 -0
  316. package/dist/gateway/static/root/assets/sticky-note-fzP7NAJq.js +1 -0
  317. package/dist/gateway/static/root/assets/store-SzD1Jvgm.js +1 -0
  318. package/dist/gateway/static/root/assets/system-settings-panel-BeQeUUMH.js +1 -0
  319. package/dist/gateway/static/root/assets/task-detail-page-Drrv-Hp0.js +2 -0
  320. package/dist/gateway/static/root/assets/task-result-evidence-D1Kyskm_.js +1 -0
  321. package/dist/gateway/static/root/assets/tasks-DRmd6sWt.js +1 -0
  322. package/dist/gateway/static/root/assets/terminal-oKqqZdiG.js +1 -0
  323. package/dist/gateway/static/root/assets/terminal-panel-store-5Fzctajw.js +1 -0
  324. package/dist/gateway/static/root/assets/theme-store-DW45fWYQ.js +1 -0
  325. package/dist/gateway/static/root/assets/timer-rCwGHjuO.js +1 -0
  326. package/dist/gateway/static/root/assets/tool-friendly-title-DGmi7rCQ.js +1 -0
  327. package/dist/gateway/static/root/assets/tracing-settings-page-B12u5D9A.js +1 -0
  328. package/dist/gateway/static/root/assets/trash-2-DusmjVPV.js +1 -0
  329. package/dist/gateway/static/root/assets/triangle-alert-2JXFNNKU.js +1 -0
  330. package/dist/gateway/static/root/assets/tunnel-api-DGO56LQU.js +1 -0
  331. package/dist/gateway/static/root/assets/understanding-activity-store-CTe6TFB0.js +1 -0
  332. package/dist/gateway/static/root/assets/understanding-refresh-store-mE9OKG6q.js +1 -0
  333. package/dist/gateway/static/root/assets/unlink-BEuthaaq.js +1 -0
  334. package/dist/gateway/static/root/assets/upload-rrb46c3c.js +1 -0
  335. package/dist/gateway/static/root/assets/usage-page-Ud2U9UG1.js +1 -0
  336. package/dist/gateway/static/root/assets/use-async-resource-BHFGZCY2.js +1 -0
  337. package/dist/gateway/static/root/assets/use-autosave-Cs2Ga_Y_.js +1 -0
  338. package/dist/gateway/static/root/assets/use-composer-attachments-BCbMj-MN.js +2 -0
  339. package/dist/gateway/static/root/assets/use-directory-picker-C4p7AgWY.js +1 -0
  340. package/dist/gateway/static/root/assets/use-file-preview-expanded-DSpCRXUW.js +2 -0
  341. package/dist/gateway/static/root/assets/use-media-query-ady-FgjK.js +1 -0
  342. package/dist/gateway/static/root/assets/use-personal-profile-BHL2AxWU.js +1 -0
  343. package/dist/gateway/static/root/assets/use-workspace-tree-CnmPZrpx.js +1 -0
  344. package/dist/gateway/static/root/assets/user-model-page-p5iPfnwl.js +2 -0
  345. package/dist/gateway/static/root/assets/user-round-C9jxPhMR.js +1 -0
  346. package/dist/gateway/static/root/assets/{vendor-codemirror-Qdcjid65.js → vendor-codemirror-aCQ0FcJT.js} +8 -8
  347. package/dist/gateway/static/root/assets/{vendor-swr-BIWyz7Rc.js → vendor-swr-CdRzEUwF.js} +1 -1
  348. package/dist/gateway/static/root/assets/video-B6V0GFss.js +1 -0
  349. package/dist/gateway/static/root/assets/voice-api-key-field-3gyc2UV3.js +1 -0
  350. package/dist/gateway/static/root/assets/voice-call-context-BM2A4bLz.js +1 -0
  351. package/dist/gateway/static/root/assets/{voice-config-api-BkUlN7GH.js → voice-config-api-Cda2uBIC.js} +1 -1
  352. package/dist/gateway/static/root/assets/voice-input-shortcut-events-DtYHsPLF.js +1 -0
  353. package/dist/gateway/static/root/assets/voice-transcribe-api-TInEfIYo.js +1 -0
  354. package/dist/gateway/static/root/assets/volume-2-BSJhAY97.js +1 -0
  355. package/dist/gateway/static/root/assets/wand-sparkles-CkSL-3Fy.js +1 -0
  356. package/dist/gateway/static/root/assets/{with-selector-aYPsXwdl.js → with-selector-xonYxPoM.js} +1 -1
  357. package/dist/gateway/static/root/assets/work-discovery-overlay-Dqu5CQCS.js +1 -0
  358. package/dist/gateway/static/root/assets/work-discovery-page-p-8ciZ0i.js +1 -0
  359. package/dist/gateway/static/root/assets/working-directory-picker-modal-DHl2cZY1.js +1 -0
  360. package/dist/gateway/static/root/assets/workspace-api-CtDbI6T7.js +2 -0
  361. package/dist/gateway/static/root/assets/workspace-editor-agent-store-B94Q2nN8.js +1 -0
  362. package/dist/gateway/static/root/assets/workspace-file-preview-dialog-CTIbUfKb.js +1 -0
  363. package/dist/gateway/static/root/assets/workspace-open-location-menu-BwxouqdZ.js +1 -0
  364. package/dist/gateway/static/root/assets/wrench-DFb4r8bH.js +1 -0
  365. package/dist/gateway/static/root/assets/x-B_N4OPjy.js +1 -0
  366. package/dist/gateway/static/root/assets/{xlsx-CKkngM-o.js → xlsx-Cl_0CZaL.js} +11 -11
  367. package/dist/gateway/static/root/assets/xml-_d7dTN2Q.js +3 -0
  368. package/dist/gateway/static/root/assets/xopc-cloud-account-card-CFb-23rS.js +1 -0
  369. package/dist/gateway/static/root/assets/zap-dximCGjy.js +1 -0
  370. package/dist/gateway/static/root/browser-setup-test.html +5 -0
  371. package/dist/gateway/static/root/browser-setup-test.js +7 -0
  372. package/dist/gateway/static/root/index.html +267 -46
  373. package/dist/package.js +1 -1
  374. package/dist/packages/gateway-contract/src/browser-setup.js +6 -0
  375. package/dist/packages/gateway-contract/src/index.js +4 -0
  376. package/dist/packages/gateway-contract/src/phone-setup.js +6 -0
  377. package/dist/packages/realtime-client/src/index.js +1 -0
  378. package/dist/packages/realtime-protocol/src/index.js +1 -0
  379. package/dist/src/activity/emitter.js +1 -2
  380. package/dist/src/activity/service.js +1 -2
  381. package/dist/src/agent/agent-manager.d.ts +5 -0
  382. package/dist/src/agent/agent-manager.js +16 -6
  383. package/dist/src/agent/background-review/run-background-review.js +2 -3
  384. package/dist/src/agent/context/execution-context.js +1 -2
  385. package/dist/src/agent/context/execution-scope.js +1 -2
  386. package/dist/src/agent/context/project-context.js +1 -2
  387. package/dist/src/agent/embedded/agent-profile-context.js +1 -2
  388. package/dist/src/agent/embedded/run-turn.js +2 -4
  389. package/dist/src/agent/embedded/sqlite-hydrating-session-manager.js +1 -2
  390. package/dist/src/agent/embedded/tool-search-extension.js +14 -1
  391. package/dist/src/agent/external-tools/cliProvider.js +3 -4
  392. package/dist/src/agent/external-tools/composio-provider.js +3 -4
  393. package/dist/src/agent/external-tools/endpoint-provider.js +2 -2
  394. package/dist/src/agent/memory/compaction-promotion.js +1 -2
  395. package/dist/src/agent/orchestration/research-checkpoint.js +26 -31
  396. package/dist/src/agent/prompt/response-language.js +1 -2
  397. package/dist/src/agent/prompt/service-prompt-builder.js +3 -6
  398. package/dist/src/agent/prompt/system-prompt.js +1 -2
  399. package/dist/src/agent/service/direct-turn-helpers.js +1 -2
  400. package/dist/src/agent/service/process-direct-streaming.js +1 -2
  401. package/dist/src/agent/service/webchat-tts.js +1 -2
  402. package/dist/src/agent/service.d.ts +1 -0
  403. package/dist/src/agent/service.js +8 -3
  404. package/dist/src/agent/service.types.d.ts +3 -0
  405. package/dist/src/agent/skills/index.js +1 -1
  406. package/dist/src/agent/skills/managed-store.js +1 -1
  407. package/dist/src/agent/skills/skill-manage-ops.js +1 -1
  408. package/dist/src/agent/tool-manuals/computer.d.ts +1 -1
  409. package/dist/src/agent/tool-manuals/computer.js +2 -0
  410. package/dist/src/agent/tool-manuals/phone.d.ts +1 -1
  411. package/dist/src/agent/tool-manuals/phone.js +14 -4
  412. package/dist/src/agent/tool-manuals/xopc-configuration.d.ts +2 -0
  413. package/dist/src/agent/tool-manuals/xopc-configuration.js +29 -0
  414. package/dist/src/agent/tools/browser/tool/browser-use-tool.d.ts +2 -0
  415. package/dist/src/agent/tools/browser/tool/browser-use-tool.js +6 -2
  416. package/dist/src/agent/tools/delegate-tool.js +2 -4
  417. package/dist/src/agent/tools/factory.d.ts +4 -0
  418. package/dist/src/agent/tools/factory.js +23 -9
  419. package/dist/src/agent/tools/personal-read-tool.js +1 -1
  420. package/dist/src/agent/tools/personal-task-tool.js +1 -2
  421. package/dist/src/agent/tools/phone-use-tool.d.ts +2 -0
  422. package/dist/src/agent/tools/phone-use-tool.js +79 -4
  423. package/dist/src/agent/tools/research-checkpoint-tool.js +1 -2
  424. package/dist/src/agent/tools/tool-manual-tool.d.ts +1 -1
  425. package/dist/src/agent/tools/tool-manual-tool.js +3 -1
  426. package/dist/src/agent/tools/toolExposure.js +3 -0
  427. package/dist/src/agent/tools/xopc-use-tool.d.ts +5 -2
  428. package/dist/src/agent/tools/xopc-use-tool.js +47 -6
  429. package/dist/src/agent-catalog/capabilities.js +2 -2
  430. package/dist/src/agent-catalog/repository.js +3 -4
  431. package/dist/src/agent-catalog/test-support.js +1 -2
  432. package/dist/src/agent-matching/selection-repository.js +1 -2
  433. package/dist/src/automations/capabilities/drafts.js +3 -5
  434. package/dist/src/bootstrap/application-state.js +1 -2
  435. package/dist/src/browser/automations/repository.js +1 -2
  436. package/dist/src/browser/drivers/browser-driver.d.ts +2 -2
  437. package/dist/src/browser/drivers/extension-driver.d.ts +2 -2
  438. package/dist/src/browser/drivers/extension-driver.js +6 -3
  439. package/dist/src/browser/native-messaging-host.js +2 -4
  440. package/dist/src/browser/providers/browser-ext-install.js +3 -2
  441. package/dist/src/browser/providers/realtime-extension.js +1 -2
  442. package/dist/src/browser/recordings/service.js +1 -2
  443. package/dist/src/browser/runtime/browser-runtime.d.ts +4 -1
  444. package/dist/src/browser/runtime/browser-runtime.js +29 -17
  445. package/dist/src/browser/setup/repository.d.ts +5 -0
  446. package/dist/src/browser/setup/repository.js +42 -0
  447. package/dist/src/browser/setup/service.d.ts +157 -0
  448. package/dist/src/browser/setup/service.js +433 -0
  449. package/dist/src/browser/setup/types.d.ts +38 -0
  450. package/dist/src/browser/setup/types.js +1 -0
  451. package/dist/src/capabilities/runtime/dispatcher.js +1 -1
  452. package/dist/src/capabilities/runtime/product.js +1 -1
  453. package/dist/src/chat-previews/store.js +1 -2
  454. package/dist/src/cli/commands/agents.js +1 -1
  455. package/dist/src/cli/commands/doctor/checks/automation-integrity.js +1 -2
  456. package/dist/src/cli/commands/doctor/checks/database-relations.js +1 -2
  457. package/dist/src/cli/commands/doctor/checks/database-schema.js +2 -3
  458. package/dist/src/cli/commands/doctor/checks/node-version.js +6 -6
  459. package/dist/src/cli/commands/doctor/checks/session-integrity.js +1 -2
  460. package/dist/src/cli/commands/gateway/lifecycle.js +1 -1
  461. package/dist/src/cli/commands/gateway/shared.js +1 -2
  462. package/dist/src/cli/commands/history.js +1 -2
  463. package/dist/src/cli/commands/models.js +1 -1
  464. package/dist/src/cli/commands/onboard/model.js +1 -1
  465. package/dist/src/cli/commands/project.js +1 -2
  466. package/dist/src/cli/utils/init-workspace-core.js +1 -1
  467. package/dist/src/computer/diagnostics.d.ts +7 -7
  468. package/dist/src/computer/diagnostics.js +8 -2
  469. package/dist/src/computer/errors.js +9 -1
  470. package/dist/src/computer/evaluation.d.ts +4 -4
  471. package/dist/src/computer/keyboard.d.ts +1 -1
  472. package/dist/src/computer/keyboard.js +10 -2
  473. package/dist/src/computer/model-adapter.js +27 -7
  474. package/dist/src/config/agent-profile.js +1 -1
  475. package/dist/src/config/gateway-bind.js +1 -2
  476. package/dist/src/config/schema.d.ts +7 -0
  477. package/dist/src/connectors/cli/lifecycle.js +1 -2
  478. package/dist/src/connectors/composio-managed-events.js +1 -2
  479. package/dist/src/connectors/connected-source-ingestion.js +1 -2
  480. package/dist/src/connectors/connected-source-understanding.js +3 -5
  481. package/dist/src/connectors/content-enrichment.js +1 -2
  482. package/dist/src/connectors/learning-coordinator.js +2 -3
  483. package/dist/src/connectors/runtime-adapter-registry.js +1 -2
  484. package/dist/src/daemon/constants.js +9 -14
  485. package/dist/src/daemon/index.js +1 -4
  486. package/dist/src/daemon/install-plan.js +1 -2
  487. package/dist/src/daemon/launchd.js +1 -2
  488. package/dist/src/daemon/schtasks.js +1 -2
  489. package/dist/src/daemon/service-audit.js +1 -2
  490. package/dist/src/daemon/service.js +1 -2
  491. package/dist/src/daemon/systemd.js +1 -2
  492. package/dist/src/discussions/analyzer.d.ts +3 -3
  493. package/dist/src/endpoint-tools/runtime.js +1 -2
  494. package/dist/src/execution-environments/local-worktree-manager.js +1 -1
  495. package/dist/src/execution-environments/subject.js +1 -2
  496. package/dist/src/extensions/agent-plugins/branding.js +2 -1
  497. package/dist/src/extensions/agent-plugins/cli-authorization.js +2 -1
  498. package/dist/src/extensions/agent-plugins/contained-path.d.ts +1 -0
  499. package/dist/src/extensions/agent-plugins/contained-path.js +29 -0
  500. package/dist/src/extensions/agent-plugins/mcp-adapter.js +2 -1
  501. package/dist/src/extensions/agent-plugins/resources.js +1 -1
  502. package/dist/src/extensions/agent-plugins/skill-catalog.js +3 -2
  503. package/dist/src/extensions/agent-plugins/source-catalog.js +1 -1
  504. package/dist/src/extensions/agent-plugins/store.js +2 -1
  505. package/dist/src/extensions/agent-plugins/validation.d.ts +1 -2
  506. package/dist/src/extensions/agent-plugins/validation.js +3 -26
  507. package/dist/src/gateway/agent-builtin-tools.d.ts +1 -1
  508. package/dist/src/gateway/agents-admin.js +2 -2
  509. package/dist/src/gateway/client-ip.js +1 -2
  510. package/dist/src/gateway/file-space-service.js +1 -2
  511. package/dist/src/gateway/global-defaults-admin.js +1 -1
  512. package/dist/src/gateway/hono/app.js +2 -4
  513. package/dist/src/gateway/hono/middleware/auth.js +3 -6
  514. package/dist/src/gateway/hono/middleware/logger.js +1 -2
  515. package/dist/src/gateway/hono/middleware/public-device-rate-limit.js +1 -2
  516. package/dist/src/gateway/hono/middleware/scopes.js +1 -2
  517. package/dist/src/gateway/hono/middleware/strict-rate-limit.js +1 -2
  518. package/dist/src/gateway/hono/oauth-async.js +1 -2
  519. package/dist/src/gateway/hono/routes/agents.js +1 -1
  520. package/dist/src/gateway/hono/routes/browser-session.js +1 -2
  521. package/dist/src/gateway/hono/routes/browser-setup.d.ts +3 -0
  522. package/dist/src/gateway/hono/routes/browser-setup.js +114 -0
  523. package/dist/src/gateway/hono/routes/browser.d.ts +2 -1
  524. package/dist/src/gateway/hono/routes/browser.js +4 -7
  525. package/dist/src/gateway/hono/routes/cli-connectors.js +1 -2
  526. package/dist/src/gateway/hono/routes/composer-history.js +1 -2
  527. package/dist/src/gateway/hono/routes/config-patch/misc.js +1 -1
  528. package/dist/src/gateway/hono/routes/config.js +1 -2
  529. package/dist/src/gateway/hono/routes/connectors.js +9 -11
  530. package/dist/src/gateway/hono/routes/context-sources.js +1 -2
  531. package/dist/src/gateway/hono/routes/device-pairing-approval.js +2 -4
  532. package/dist/src/gateway/hono/routes/device-push.js +1 -2
  533. package/dist/src/gateway/hono/routes/devices.js +4 -8
  534. package/dist/src/gateway/hono/routes/discussions.js +1 -2
  535. package/dist/src/gateway/hono/routes/endpoint-tools.js +1 -2
  536. package/dist/src/gateway/hono/routes/home.js +2 -3
  537. package/dist/src/gateway/hono/routes/interaction-state.js +1 -2
  538. package/dist/src/gateway/hono/routes/lazy-bundles.js +8 -0
  539. package/dist/src/gateway/hono/routes/memory-learning.js +1 -2
  540. package/dist/src/gateway/hono/routes/notes.js +2 -2
  541. package/dist/src/gateway/hono/routes/personal-agent.js +1 -2
  542. package/dist/src/gateway/hono/routes/phone-dependencies.js +2 -7
  543. package/dist/src/gateway/hono/routes/phone-setup.d.ts +7 -0
  544. package/dist/src/gateway/hono/routes/phone-setup.js +231 -0
  545. package/dist/src/gateway/hono/routes/phone-wireless.d.ts +4 -0
  546. package/dist/src/gateway/hono/routes/phone-wireless.js +63 -0
  547. package/dist/src/gateway/hono/routes/phone.js +119 -28
  548. package/dist/src/gateway/hono/routes/projects.js +3 -4
  549. package/dist/src/gateway/hono/routes/public-gateway.js +4 -3
  550. package/dist/src/gateway/hono/routes/session-input-handler.js +1 -1
  551. package/dist/src/gateway/hono/routes/sessions.js +2 -4
  552. package/dist/src/gateway/hono/routes/shares.js +2 -4
  553. package/dist/src/gateway/hono/routes/tasks.js +2 -3
  554. package/dist/src/gateway/hono/routes/user-model-refresh.js +1 -2
  555. package/dist/src/gateway/hono/routes/user-model.js +1 -2
  556. package/dist/src/gateway/host.js +4 -9
  557. package/dist/src/gateway/image-generation-setup.js +1 -1
  558. package/dist/src/gateway/index.js +2 -6
  559. package/dist/src/gateway/listen.js +1 -2
  560. package/dist/src/gateway/next-turn-suggestions/service.js +1 -2
  561. package/dist/src/gateway/next-turn-suggestions/snapshot.js +1 -2
  562. package/dist/src/gateway/provider-model-setup.js +1 -1
  563. package/dist/src/gateway/rate-limit/auth-policy.js +11 -7
  564. package/dist/src/gateway/rate-limit/buckets.js +220 -211
  565. package/dist/src/gateway/rate-limit/env-flags.js +1 -4
  566. package/dist/src/gateway/rate-limit/index.js +4 -13
  567. package/dist/src/gateway/runtime-config.js +2 -4
  568. package/dist/src/gateway/security/audit.js +1 -2
  569. package/dist/src/gateway/security/browser-session.js +1 -2
  570. package/dist/src/gateway/security/device-request-proof.d.ts +1 -2
  571. package/dist/src/gateway/security/device-request-proof.js +2 -4
  572. package/dist/src/gateway/security/gateway-scopes.js +2 -6
  573. package/dist/src/gateway/security/index.js +1 -4
  574. package/dist/src/gateway/security/loopback.js +6 -7
  575. package/dist/src/gateway/service/agent-runner.js +2 -4
  576. package/dist/src/gateway/service/app-context-access.js +1 -2
  577. package/dist/src/gateway/service/config-coordinator.d.ts +4 -0
  578. package/dist/src/gateway/service/run-gateway-agent.js +2 -4
  579. package/dist/src/gateway/service/session-input-coordinator.js +3 -6
  580. package/dist/src/gateway/service.d.ts +5 -0
  581. package/dist/src/gateway/service.js +64 -22
  582. package/dist/src/gateway/session-context-summary.js +2 -4
  583. package/dist/src/gateway/tailscale-auth.js +1 -2
  584. package/dist/src/gateway/ws-security.js +1 -2
  585. package/dist/src/gateway/xopc-cloud-capability-setup.js +8 -2
  586. package/dist/src/home-intelligence/host.js +2 -2
  587. package/dist/src/imports/importService.js +1 -1
  588. package/dist/src/infra/rate-limit/failure-limiter.js +90 -78
  589. package/dist/src/infra/rate-limit/index.js +3 -11
  590. package/dist/src/infra/rate-limit/keyed-store.js +47 -52
  591. package/dist/src/infra/rate-limit/rate-limiter.js +58 -55
  592. package/dist/src/infra/update-restart.js +1 -1
  593. package/dist/src/infra/update-service-refresh.js +1 -2
  594. package/dist/src/knowledge/chunks.js +1 -4
  595. package/dist/src/knowledge/connected-knowledge-pipeline.js +3 -6
  596. package/dist/src/knowledge/ingestion-service.js +1 -2
  597. package/dist/src/knowledge-memory/repository.js +1 -2
  598. package/dist/src/local-apps/service.js +1 -1
  599. package/dist/src/local-apps/store.js +1 -2
  600. package/dist/src/media/session-references.js +1 -2
  601. package/dist/src/memory-learning/forget-capture.js +1 -2
  602. package/dist/src/memory-learning/forgotten-history.js +3 -6
  603. package/dist/src/memory-learning/service.js +1 -2
  604. package/dist/src/memory-learning/source-learning.js +3 -3
  605. package/dist/src/memory-learning/task-receipts.js +1 -2
  606. package/dist/src/memory-learning/work-candidate.d.ts +29 -0
  607. package/dist/src/memory-learning/work-candidate.js +31 -0
  608. package/dist/src/memory-learning/work-capture.d.ts +2 -29
  609. package/dist/src/memory-learning/work-capture.js +2 -30
  610. package/dist/src/memory-maintenance/service.js +1 -2
  611. package/dist/src/notes/agent-context.js +1 -2
  612. package/dist/src/notes/attachment-ref.js +4 -8
  613. package/dist/src/notes/note-attachment-sync.js +1 -2
  614. package/dist/src/notes/note-index-meta.js +7 -14
  615. package/dist/src/notes/note-markdown.js +7 -13
  616. package/dist/src/notes/service.js +3 -6
  617. package/dist/src/notes/store.js +2 -4
  618. package/dist/src/notifications/clarification.js +1 -2
  619. package/dist/src/notifications/service.js +1 -2
  620. package/dist/src/personal-agent/proactivity/repository.js +1 -2
  621. package/dist/src/personal-agent/proactivity/service.js +1 -2
  622. package/dist/src/personal-agent/prompt-context.js +1 -2
  623. package/dist/src/personal-agent/reply-composer.js +4 -5
  624. package/dist/src/personal-agent/repository.js +1 -2
  625. package/dist/src/personal-agent/request-delivery.js +1 -2
  626. package/dist/src/personal-agent/result-extraction.js +71 -71
  627. package/dist/src/personal-agent/service.js +2 -3
  628. package/dist/src/phone/adb-command.d.ts +1 -0
  629. package/dist/src/phone/adb-command.js +12 -0
  630. package/dist/src/phone/adb-driver.d.ts +6 -2
  631. package/dist/src/phone/adb-driver.js +45 -21
  632. package/dist/src/phone/cloud-adb-connection.d.ts +34 -0
  633. package/dist/src/phone/cloud-adb-connection.js +324 -0
  634. package/dist/src/phone/cloud-adb-writable.d.ts +3 -0
  635. package/dist/src/phone/cloud-adb-writable.js +21 -0
  636. package/dist/src/phone/cloud-adb.d.ts +3 -32
  637. package/dist/src/phone/cloud-adb.js +3 -259
  638. package/dist/src/phone/cloud-key-permissions.d.ts +2 -0
  639. package/dist/src/phone/cloud-key-permissions.js +66 -0
  640. package/dist/src/phone/cloud-phones.js +2 -1
  641. package/dist/src/phone/cloud-scrcpy.d.ts +1 -1
  642. package/dist/src/phone/cloud-scrcpy.js +3 -2
  643. package/dist/src/phone/contracts.d.ts +197 -1
  644. package/dist/src/phone/contracts.js +55 -6
  645. package/dist/src/phone/foreground.d.ts +1 -0
  646. package/dist/src/phone/foreground.js +18 -0
  647. package/dist/src/phone/live-state.d.ts +2 -0
  648. package/dist/src/phone/live-state.js +5 -0
  649. package/dist/src/phone/model-adapter.d.ts +65 -4
  650. package/dist/src/phone/model-adapter.js +157 -48
  651. package/dist/src/phone/numeric-entry.d.ts +31 -0
  652. package/dist/src/phone/numeric-entry.js +126 -0
  653. package/dist/src/phone/planning.d.ts +27 -0
  654. package/dist/src/phone/planning.js +79 -0
  655. package/dist/src/phone/recovery.d.ts +37 -0
  656. package/dist/src/phone/recovery.js +81 -0
  657. package/dist/src/phone/reliability.d.ts +2 -2
  658. package/dist/src/phone/reliability.js +19 -6
  659. package/dist/src/phone/repository.d.ts +4 -1
  660. package/dist/src/phone/repository.js +12 -1
  661. package/dist/src/phone/runtime.d.ts +79 -3
  662. package/dist/src/phone/runtime.js +861 -93
  663. package/dist/src/phone/scrcpy.js +3 -2
  664. package/dist/src/phone/semantic-controls.d.ts +13 -0
  665. package/dist/src/phone/semantic-controls.js +76 -0
  666. package/dist/src/phone/setup/service.d.ts +101 -0
  667. package/dist/src/phone/setup/service.js +296 -0
  668. package/dist/src/phone/task-feedback.d.ts +4 -0
  669. package/dist/src/phone/task-feedback.js +47 -0
  670. package/dist/src/phone/ui-dump-binary.d.ts +1 -0
  671. package/dist/src/phone/ui-dump-binary.js +4 -0
  672. package/dist/src/phone/wireless.d.ts +80 -0
  673. package/dist/src/phone/wireless.js +244 -0
  674. package/dist/src/projects/capabilities/write.js +1 -2
  675. package/dist/src/projects/project-service.js +1 -2
  676. package/dist/src/projects/workspace.js +1 -2
  677. package/dist/src/providers/presentation.js +2 -2
  678. package/dist/src/providers/xopc-cloud-model-source.js +6 -2
  679. package/dist/src/realtime/runtime.d.ts +3 -0
  680. package/dist/src/realtime/runtime.js +16 -3
  681. package/dist/src/remote-access/exposure-guards.js +1 -2
  682. package/dist/src/runtime-tools/archive.js +1 -1
  683. package/dist/src/runtime-tools/catalog.d.ts +1 -1
  684. package/dist/src/runtime-tools/catalog.js +2 -2
  685. package/dist/src/session/config-store.js +1 -2
  686. package/dist/src/session/init-session-turn.js +1 -2
  687. package/dist/src/session/resolve-session.js +1 -2
  688. package/dist/src/session/store.js +2 -4
  689. package/dist/src/share/share-rate-limit.js +1 -2
  690. package/dist/src/share/share-url.js +1 -2
  691. package/dist/src/share/site-share-router.js +1 -2
  692. package/dist/src/storage/sqlite/activity-repository.js +2 -6
  693. package/dist/src/storage/sqlite/browser-tab-binding-repository.js +2 -6
  694. package/dist/src/storage/sqlite/clarification-wait-repository.js +9 -14
  695. package/dist/src/storage/sqlite/collaboration-rule-repository.js +3 -8
  696. package/dist/src/storage/sqlite/composer-input-history-repository.js +3 -8
  697. package/dist/src/storage/sqlite/config-repository.js +5 -9
  698. package/dist/src/storage/sqlite/connector-learning-repository.js +2 -6
  699. package/dist/src/storage/sqlite/connector-sync-policy-repository.js +2 -6
  700. package/dist/src/storage/sqlite/context-evidence-repository.js +3 -8
  701. package/dist/src/storage/sqlite/context-extraction-repository.js +3 -8
  702. package/dist/src/storage/sqlite/device-access-repository.js +16 -23
  703. package/dist/src/storage/sqlite/device-pairing-approval.js +2 -6
  704. package/dist/src/storage/sqlite/device-pairing-repository.js +5 -10
  705. package/dist/src/storage/sqlite/endpoint-principal-repository.js +2 -6
  706. package/dist/src/storage/sqlite/endpoint-session-binding-repository.js +2 -6
  707. package/dist/src/storage/sqlite/endpoint-tool-invocation-repository.js +2 -6
  708. package/dist/src/storage/sqlite/gateway-identity-repository.js +2 -6
  709. package/dist/src/storage/sqlite/home-attention-repository.js +2 -6
  710. package/dist/src/storage/sqlite/index.js +40 -72
  711. package/dist/src/storage/sqlite/interaction-state-repository.js +4 -10
  712. package/dist/src/storage/sqlite/knowledge-repository.js +3 -8
  713. package/dist/src/storage/sqlite/note-agent-context-repository.js +2 -6
  714. package/dist/src/storage/sqlite/notes-repository.js +4 -9
  715. package/dist/src/storage/sqlite/research-checkpoint-repository.js +3 -8
  716. package/dist/src/storage/sqlite/schema.d.ts +2 -2
  717. package/dist/src/storage/sqlite/schema.js +7 -7
  718. package/dist/src/storage/sqlite/schema.sql +10 -0
  719. package/dist/src/storage/sqlite/session-creation-repository.js +2 -4
  720. package/dist/src/storage/sqlite/session-task-plan-repository.js +9 -14
  721. package/dist/src/storage/sqlite/session-turn-replace-repository.js +5 -9
  722. package/dist/src/storage/sqlite/sidebar-layout-repository.js +9 -14
  723. package/dist/src/storage/sqlite/transcript-repository.js +6 -10
  724. package/dist/src/storage/sqlite/upgrades/260_browser_setup.sql +9 -0
  725. package/dist/src/storage/sqlite/user-people-repository.js +3 -8
  726. package/dist/src/storage/sqlite/user-trust-repository.js +4 -9
  727. package/dist/src/tasks/capabilities/read.js +2 -2
  728. package/dist/src/tasks/capabilities/write.js +1 -1
  729. package/dist/src/tasks/execution-context.js +1 -2
  730. package/dist/src/tasks/home-query-service.js +1 -2
  731. package/dist/src/tasks/task-allocation-repository.js +1 -2
  732. package/dist/src/tasks/task-context-assembler.js +1 -2
  733. package/dist/src/tasks/task-handoff.js +2 -4
  734. package/dist/src/tasks/task-instruction-sequence.d.ts +1 -0
  735. package/dist/src/tasks/task-instruction-sequence.js +7 -0
  736. package/dist/src/tasks/task-language.js +1 -2
  737. package/dist/src/tasks/task-research-result.d.ts +1 -2
  738. package/dist/src/tasks/task-research-result.js +1 -3
  739. package/dist/src/tasks/task-result-delivery-repository.js +1 -1
  740. package/dist/src/tasks/task-result-delivery-service.js +3 -3
  741. package/dist/src/tasks/task-run-coordinator.js +3 -3
  742. package/dist/src/tasks/task-run-dispatcher.js +1 -2
  743. package/dist/src/tasks/task-value-metrics-service.js +1 -2
  744. package/dist/src/tui/backends/embedded-backend.js +2 -3
  745. package/dist/src/tui/tui-commands.js +1 -2
  746. package/dist/src/tunnel/registration-proof.js +1 -2
  747. package/dist/src/tunnel/tunnel-rate-limit.js +1 -2
  748. package/dist/src/user-context/access-policy.js +1 -2
  749. package/dist/src/user-context/domain.js +13 -18
  750. package/dist/src/user-context/extraction/registry.js +1 -2
  751. package/dist/src/user-context/interaction-state.js +1 -4
  752. package/dist/src/user-context/relationship-continuity.js +1 -2
  753. package/dist/src/user-context/sources/consent-repository.js +1 -2
  754. package/dist/src/user-context/sources/index.js +1 -1
  755. package/dist/src/user-context/trust-policy.js +8 -13
  756. package/dist/src/user-model/action-rule-suggestions.js +1 -2
  757. package/dist/src/user-model/bootstrap.js +1 -2
  758. package/dist/src/user-model/capture/executor.js +2 -4
  759. package/dist/src/user-model/capture/semantic.d.ts +1 -1
  760. package/dist/src/user-model/capture/semantic.js +1 -1
  761. package/dist/src/user-model/domain.js +30 -35
  762. package/dist/src/user-model/goals.js +1 -2
  763. package/dist/src/user-model/index.js +1 -4
  764. package/dist/src/user-model/observation-repository.js +1 -2
  765. package/dist/src/user-model/repository.js +1 -2
  766. package/dist/src/user-model/usage-policy.js +1 -2
  767. package/dist/src/voice/realtime/memory-context.js +1 -2
  768. package/dist/src/voice/realtime/persona-context.js +1 -1
  769. package/dist/src/work-discovery/service.js +4 -6
  770. package/package.json +8 -8
  771. package/skills/tools/configure-xopc/SKILL.md +54 -0
  772. package/skills/tools/configure-xopc/references/browser/acceptance.md +32 -0
  773. package/skills/tools/configure-xopc/references/browser/chrome-extension.md +23 -0
  774. package/skills/tools/configure-xopc/references/browser/overview.md +19 -0
  775. package/skills/tools/configure-xopc/references/browser/permissions.md +23 -0
  776. package/skills/tools/configure-xopc/references/browser/troubleshooting.md +24 -0
  777. package/skills/tools/configure-xopc/references/phone/acceptance.md +27 -0
  778. package/skills/tools/configure-xopc/references/phone/aliyun.md +29 -0
  779. package/skills/tools/configure-xopc/references/phone/dependencies.md +18 -0
  780. package/skills/tools/configure-xopc/references/phone/local.md +19 -0
  781. package/skills/tools/configure-xopc/references/phone/models.md +21 -0
  782. package/skills/tools/configure-xopc/references/phone/overview.md +25 -0
  783. package/skills/tools/configure-xopc/references/phone/troubleshooting.md +27 -0
  784. package/skills/tools/configure-xopc/references/scene-index.md +12 -0
  785. package/dist/gateway/static/root/assets/agent-avatar-dicebear-CJFwitU2.js +0 -1
  786. package/dist/gateway/static/root/assets/agent-defaults-settings-panel-DclyJr1N.js +0 -1
  787. package/dist/gateway/static/root/assets/agents-jhErNtzi.js +0 -77
  788. package/dist/gateway/static/root/assets/app-management-settings-panel-DgwqNi5i.js +0 -1
  789. package/dist/gateway/static/root/assets/appearance-settings-C0wJfFyz.js +0 -1
  790. package/dist/gateway/static/root/assets/apps-page-C0LcnI4h.js +0 -1
  791. package/dist/gateway/static/root/assets/automation-display-BFN7zWBg.js +0 -2
  792. package/dist/gateway/static/root/assets/automations-workspace-CBxiV34x.js +0 -8
  793. package/dist/gateway/static/root/assets/browser-automations-page-vJIrTxdi.js +0 -3
  794. package/dist/gateway/static/root/assets/browser-settings-page-in5Roh_E.js +0 -3
  795. package/dist/gateway/static/root/assets/capabilities-BlxF36t-.js +0 -1
  796. package/dist/gateway/static/root/assets/capabilities-page-CiGx8wpQ.js +0 -2
  797. package/dist/gateway/static/root/assets/capabilities-settings-panel-a8kqjzQu.js +0 -8
  798. package/dist/gateway/static/root/assets/capability-header-actions-D4Yq35fD.js +0 -1
  799. package/dist/gateway/static/root/assets/channels-C_CxcjKT.js +0 -1
  800. package/dist/gateway/static/root/assets/chat-terminal-dock-zdMySdMm.js +0 -36
  801. package/dist/gateway/static/root/assets/chunk-KS7C4IRE-BvcCCgTW.js +0 -4
  802. package/dist/gateway/static/root/assets/cloud-credits-BMYMiiNn.js +0 -1
  803. package/dist/gateway/static/root/assets/computer-settings-page-C5Z6Jr0p.js +0 -1
  804. package/dist/gateway/static/root/assets/connector-service-page-Cxus0qrZ.js +0 -1
  805. package/dist/gateway/static/root/assets/connectors-page-DCBO2CxK.js +0 -1
  806. package/dist/gateway/static/root/assets/constants-DeXt1mV-.js +0 -1
  807. package/dist/gateway/static/root/assets/date-picker-DuyyD6jz.js +0 -1
  808. package/dist/gateway/static/root/assets/dependency-picker-BZN72rrk.js +0 -1
  809. package/dist/gateway/static/root/assets/desktop-pet-BtvTIDCi.js +0 -1
  810. package/dist/gateway/static/root/assets/desktop-pet-settings-BcyP7Z6v.js +0 -1
  811. package/dist/gateway/static/root/assets/device-pairing-wizard-Ctbgr50F.js +0 -1
  812. package/dist/gateway/static/root/assets/directory-picker-path-field-DOusKz-O.js +0 -1
  813. package/dist/gateway/static/root/assets/dist-C3DSFZCi.js +0 -1
  814. package/dist/gateway/static/root/assets/dist-CI_fqRk-.js +0 -1
  815. package/dist/gateway/static/root/assets/docx-preview-CajIk2FR.js +0 -20
  816. package/dist/gateway/static/root/assets/echarts-runtime-tcHc9TOS.js +0 -18
  817. package/dist/gateway/static/root/assets/electron-env-Dit0bHgy.js +0 -1
  818. package/dist/gateway/static/root/assets/extension-debug-page-Bt4FwsFu.js +0 -1
  819. package/dist/gateway/static/root/assets/extension-page-0vsxX3FB.js +0 -1
  820. package/dist/gateway/static/root/assets/extension-settings-page-5Pt5_ELc.js +0 -1
  821. package/dist/gateway/static/root/assets/files-Bw4SBGdM.js +0 -1
  822. package/dist/gateway/static/root/assets/floating-ui.dom-B7uQOZZW.js +0 -1
  823. package/dist/gateway/static/root/assets/gateway-realtime-DkWCHVzI.js +0 -1
  824. package/dist/gateway/static/root/assets/gateway-realtime-store-Bx9KCID-.js +0 -1
  825. package/dist/gateway/static/root/assets/gateway-settings-BsVOcmV5.js +0 -1
  826. package/dist/gateway/static/root/assets/highlight-code-C8eS9949.js +0 -1
  827. package/dist/gateway/static/root/assets/highlighted-body-KQOG7T2V-Cbk7eMlg.js +0 -1
  828. package/dist/gateway/static/root/assets/home-page-BZDZnmyc.js +0 -2
  829. package/dist/gateway/static/root/assets/image-generation-api-CAS8QVla.js +0 -1
  830. package/dist/gateway/static/root/assets/imports-page-BCLBYzV1.js +0 -1
  831. package/dist/gateway/static/root/assets/index-Bys6njTY.js +0 -710
  832. package/dist/gateway/static/root/assets/index-Vsf0bj5e.css +0 -1
  833. package/dist/gateway/static/root/assets/keyboard-shortcuts-settings-CM_kt5XN.js +0 -1
  834. package/dist/gateway/static/root/assets/languages-byq_L2Ae.js +0 -2
  835. package/dist/gateway/static/root/assets/local-app-workbench-page-Dk87jtcc.js +0 -1
  836. package/dist/gateway/static/root/assets/local-apps-page-BTSOChhk.js +0 -1
  837. package/dist/gateway/static/root/assets/local-apps-yys1VChX.js +0 -1
  838. package/dist/gateway/static/root/assets/local-session-drafts-iGX_6O0O.js +0 -1
  839. package/dist/gateway/static/root/assets/logs-page-D3gVdm8S.js +0 -2
  840. package/dist/gateway/static/root/assets/management-settings-BQNYFE4J.js +0 -1
  841. package/dist/gateway/static/root/assets/mermaid-MCJ5UELQ-ChweJKTv.js +0 -1
  842. package/dist/gateway/static/root/assets/note-detail-panel-CYKwUCte.js +0 -5
  843. package/dist/gateway/static/root/assets/note-image-lightbox-BTSZb9ZT.js +0 -1
  844. package/dist/gateway/static/root/assets/notes-page-CJ5nhWfL.js +0 -8
  845. package/dist/gateway/static/root/assets/number-input-DDeqHK-G.js +0 -1
  846. package/dist/gateway/static/root/assets/page-context-capture-button-DVn_dU83.js +0 -1
  847. package/dist/gateway/static/root/assets/pdf-runtime-DU_sMPjG.js +0 -2
  848. package/dist/gateway/static/root/assets/personal-page-DcW14lqn.js +0 -1
  849. package/dist/gateway/static/root/assets/personal-proactivity-BJcZ3Yhi.js +0 -1
  850. package/dist/gateway/static/root/assets/personal-settings-panel-C16Iqe7X.js +0 -1
  851. package/dist/gateway/static/root/assets/phone-dependencies-card-D3l9uPFM.js +0 -1
  852. package/dist/gateway/static/root/assets/phone-model-picker-DOv38vBn.js +0 -1
  853. package/dist/gateway/static/root/assets/phone-settings-page-DUHp1q_9.js +0 -1
  854. package/dist/gateway/static/root/assets/plugin-details-dialog-BpfgDlVa.js +0 -1
  855. package/dist/gateway/static/root/assets/popover-select-DGKUpVsz.js +0 -1
  856. package/dist/gateway/static/root/assets/preload-helper-zJ_50EbN.js +0 -1
  857. package/dist/gateway/static/root/assets/preview-open-alternatives-RlHk76TI.js +0 -1
  858. package/dist/gateway/static/root/assets/product-delivery-BqNm-8S5.js +0 -1
  859. package/dist/gateway/static/root/assets/product-open-page-Dh-HqLrE.js +0 -1
  860. package/dist/gateway/static/root/assets/product-preview-content-c3K-4DWc.js +0 -1
  861. package/dist/gateway/static/root/assets/project-detail-page-GD8TxKad.js +0 -7
  862. package/dist/gateway/static/root/assets/projects-page-B8HAt9sD.js +0 -1
  863. package/dist/gateway/static/root/assets/remote-access-hub-D3el7lHK.js +0 -1
  864. package/dist/gateway/static/root/assets/runtime-tools-settings-panel-Dbskk6RG.js +0 -1
  865. package/dist/gateway/static/root/assets/schema-form-CXO1B1k4.js +0 -1
  866. package/dist/gateway/static/root/assets/schemas-CObaziC7.js +0 -64
  867. package/dist/gateway/static/root/assets/session-manager-CA1NkTR_.js +0 -16
  868. package/dist/gateway/static/root/assets/sessions-page-07liaSHH.js +0 -1
  869. package/dist/gateway/static/root/assets/settings-advanced-gate-BGjU8rfN.js +0 -1
  870. package/dist/gateway/static/root/assets/settings-form-section-BQxKmbbJ.js +0 -1
  871. package/dist/gateway/static/root/assets/settings-page-DvVMpKiA.js +0 -1
  872. package/dist/gateway/static/root/assets/settings-page-header-CYpuTXUW.js +0 -1
  873. package/dist/gateway/static/root/assets/settings-page-layout-B20AfmFG.js +0 -1
  874. package/dist/gateway/static/root/assets/setup-status-panel-DKo_VTx-.js +0 -1
  875. package/dist/gateway/static/root/assets/share-preview-page-XgZk8Oa1.js +0 -2
  876. package/dist/gateway/static/root/assets/shares-settings-BODFqK8k.js +0 -1
  877. package/dist/gateway/static/root/assets/skill-api-CV-WT2hj.js +0 -1
  878. package/dist/gateway/static/root/assets/skill-reload-api-Ce6OUk2C.js +0 -1
  879. package/dist/gateway/static/root/assets/skills-page-B7ehOIML.js +0 -2
  880. package/dist/gateway/static/root/assets/specialists-4bkS5rZ4.js +0 -1
  881. package/dist/gateway/static/root/assets/system-settings-panel-CxJkZRT4.js +0 -1
  882. package/dist/gateway/static/root/assets/task-detail-page-CxRR0QuW.js +0 -2
  883. package/dist/gateway/static/root/assets/task-result-evidence-D-gGKNX9.js +0 -1
  884. package/dist/gateway/static/root/assets/tasks-TVRjEggr.js +0 -1
  885. package/dist/gateway/static/root/assets/tracing-settings-page-CQw3G-FB.js +0 -1
  886. package/dist/gateway/static/root/assets/tunnel-api-B2HnCi0U.js +0 -1
  887. package/dist/gateway/static/root/assets/usage-page-uUEkO38r.js +0 -1
  888. package/dist/gateway/static/root/assets/use-autosave-Dc0nwUpX.js +0 -1
  889. package/dist/gateway/static/root/assets/user-model-page-ICUutbKL.js +0 -2
  890. package/dist/gateway/static/root/assets/voice-api-key-field-BSWXZkGa.js +0 -1
  891. package/dist/gateway/static/root/assets/work-discovery-overlay-H3cdwq3l.js +0 -1
  892. package/dist/gateway/static/root/assets/xopc-cloud-account-card-CvT_W6YS.js +0 -1
@@ -9,12 +9,12 @@ import type { LocalAppService } from '../../local-apps/index.js';
9
9
  import type { ChatPreviewService } from '../../chat-previews/index.js';
10
10
  import { TaskApplicationService } from '../../tasks/task-application-service.js';
11
11
  declare const XopcUseToolSchema: import("@sinclair/typebox").TObject<{
12
- mode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"context">, import("@sinclair/typebox").TLiteral<"project">, import("@sinclair/typebox").TLiteral<"automation">, import("@sinclair/typebox").TLiteral<"note">, import("@sinclair/typebox").TLiteral<"task">, import("@sinclair/typebox").TLiteral<"task_run">, import("@sinclair/typebox").TLiteral<"local_app">, import("@sinclair/typebox").TLiteral<"chat_preview">, import("@sinclair/typebox").TLiteral<"agent">, import("@sinclair/typebox").TLiteral<"settings">]>;
12
+ mode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"context">, import("@sinclair/typebox").TLiteral<"project">, import("@sinclair/typebox").TLiteral<"automation">, import("@sinclair/typebox").TLiteral<"note">, import("@sinclair/typebox").TLiteral<"task">, import("@sinclair/typebox").TLiteral<"task_run">, import("@sinclair/typebox").TLiteral<"local_app">, import("@sinclair/typebox").TLiteral<"chat_preview">, import("@sinclair/typebox").TLiteral<"agent">, import("@sinclair/typebox").TLiteral<"settings">, import("@sinclair/typebox").TLiteral<"browser_setup">, import("@sinclair/typebox").TLiteral<"phone_setup">]>;
13
13
  command: import("@sinclair/typebox").TString;
14
14
  args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>>;
15
15
  dryRun: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
16
16
  }>;
17
- export type XopcUseMode = 'context' | 'project' | 'automation' | 'note' | 'task' | 'task_run' | 'chat_preview' | 'local_app' | 'agent' | 'settings';
17
+ export type XopcUseMode = 'context' | 'project' | 'automation' | 'note' | 'task' | 'task_run' | 'chat_preview' | 'local_app' | 'agent' | 'settings' | 'browser_setup' | 'phone_setup';
18
18
  export interface XopcUseToolInput {
19
19
  mode: XopcUseMode;
20
20
  command: string;
@@ -22,6 +22,9 @@ export interface XopcUseToolInput {
22
22
  dryRun?: boolean;
23
23
  }
24
24
  export interface XopcUseToolDeps {
25
+ canConfigureFromConversation?: () => boolean;
26
+ getPhoneSetupService?: () => import('../../phone/setup/service.js').PhoneSetupService | undefined;
27
+ getBrowserSetupService?: () => import('../../browser/setup/service.js').BrowserSetupService | undefined;
25
28
  authorizeCapability?: CapabilityContext['authorize'];
26
29
  getWorkspace?: () => string;
27
30
  getConfig?: () => Config | undefined;
@@ -9,15 +9,16 @@ import { init_src } from "../../../packages/gateway-contract/src/index.js";
9
9
  import { TaskRepository } from "../../tasks/task-repository.js";
10
10
  import { TaskRunRepository } from "../../tasks/task-run-repository.js";
11
11
  import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
12
- import { init_sqlite } from "../../storage/sqlite/index.js";
12
+ import "../../storage/sqlite/index.js";
13
13
  import "../../activity/index.js";
14
- import { CapabilityError } from "../../capabilities/runtime/errors.js";
15
- import "../../capabilities/runtime/dispatcher.js";
16
14
  import { getDefaultAgentId, init_resolve_route } from "../../routing/resolve-route.js";
17
15
  import { hasUnlocalizedTaskText, resolveTaskLocale } from "../../tasks/task-language.js";
18
16
  import { TaskReadModelProjector } from "../../tasks/task-read-model-projector.js";
19
17
  import { TaskOriginRepository } from "../../tasks/task-origin-repository.js";
20
18
  import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
19
+ import { getEmbeddedExecutionRunId } from "../embedded/execution-context.js";
20
+ import { CapabilityError } from "../../capabilities/runtime/errors.js";
21
+ import "../../capabilities/runtime/dispatcher.js";
21
22
  import { resolveProjectAgentId } from "../../projects/project-agent.js";
22
23
  import "../../projects/index.js";
23
24
  import { TaskCollaborationRepository } from "../../tasks/task-collaboration-repository.js";
@@ -37,7 +38,6 @@ import { Type } from "@sinclair/typebox";
37
38
  //#region src/agent/tools/xopc-use-tool.ts
38
39
  init_src();
39
40
  init_resolve_route();
40
- init_sqlite();
41
41
  init_transaction();
42
42
  const XopcUseToolSchema = Type.Object({
43
43
  mode: Type.Union([
@@ -50,7 +50,9 @@ const XopcUseToolSchema = Type.Object({
50
50
  Type.Literal("local_app"),
51
51
  Type.Literal("chat_preview"),
52
52
  Type.Literal("agent"),
53
- Type.Literal("settings")
53
+ Type.Literal("settings"),
54
+ Type.Literal("browser_setup"),
55
+ Type.Literal("phone_setup")
54
56
  ]),
55
57
  command: Type.String({ description: "Context resolve takes an explicit AppContextEnvelope; never guess a current page. Automation draft/repair_draft accept prompt/id, agentId?, language?, idempotencyKey?; simulate explains an automation without running it. Local_app record_acceptance records supplied checks and sourceHash, not proof that checks were executed. Agent profile-only changes: patch_profile {id, expectedRevision, patch:{name?,description?,style?,language?,...}, idempotencyKey?} preserves omitted fields. Agent commands: list, get {id}, create {id, profile, workspace?, models?, skills?, tools?, runtime?, idempotencyKey?}, update {id, expectedRevision, patch, idempotencyKey?}, set_default {id, expectedRevision, idempotencyKey?}, disable/delete/purge {id, expectedRevision, idempotencyKey?}. Purge also removes on-disk data. Project create accepts idempotencyKey; update/pin/unpin/delete accepts {projectId, expectedVersion?, idempotencyKey?}; stable retries require the original expectedVersion. Delete preserves workspace files and does not confirm external execution stopped. Project milestone writes support idempotencyKey; update_milestone/delete_milestone require original expectedRevision for stable retries, and create_update requires original expectedVersion. TaskRun cancel accepts idempotencyKey and expectedVersion, and does not confirm external execution stopped. Automation diagnostics: get_run/run_events {runId}, metrics {}, events {eventType?, source?, limit?}, deliveries {runId?, limit?}, product_events {eventType, source?, payloadKey?, payloadValue?, limit?}; payload filters require both key and value. Recovery commands: replay_event {eventId, reason, idempotencyKey}, retry_delivery {runId, destinationKey, reason, idempotencyKey}. Automation also supports cancel/read {runId, idempotencyKey?} and read_all {projectId?, idempotencyKey?}; omitted projectId means all projects. Cancel acceptance is not confirmation of stopping. Object command. Supports project list/get/create/update/resolve_workspace/list_milestones/create_milestone/update_milestone/list_updates/create_update, automation list/get/create/update/delete/run/rerun/pause/resume/history (rerun takes runId; run/rerun accept idempotencyKey), note list/get/project_summaries/history {noteId}/snapshot {noteId, timestamp}/create/append/update/preview_edit/delete, task list/get/create/update_dependencies/add_context/remove_context/command/delete, task_run list/get/cancel, chat_preview create/revise/get, local_app list/get/create/validate, and settings open." }),
56
58
  args: Type.Optional(Type.Record(Type.String(), Type.Any())),
@@ -1915,7 +1917,7 @@ function createXopcUseTool(deps) {
1915
1917
  return {
1916
1918
  name: "xopc_use",
1917
1919
  label: "XOPC Use",
1918
- description: "Operate first-class xopc objects through one safe entry point. To delegate work for immediate execution: mode task, command create, args {title:\"Short task name\", objective:\"One-sentence outcome\", body:\"Full Markdown task brief\", createMode:\"start\", agentId:\"researcher\"}; omitting createMode creates a backlog task only. To start an existing Task: mode task, command command, args {taskId, type:\"start\", expectedVersion, commandArgs:{executor:{kind:\"agent\",agentId:\"main\"}}}. Inspect an existing Task and its run before creating another Task for the same objective. For delegated work, task delegated_tasks lists this conversation's tasks; task collaboration reads the shared board; task collaboration_post writes {taskId, kind, body, causationId?, idempotencyKey?}. Workers report progress or questions; the main Agent writes instructions and answers. Use chat_preview for lightweight UI mockups in the current conversation; do not create a Local App unless the user asks for a durable app. Local App capabilities takes extensionId and discovers already granted bindings. Local App invoke requires extensionId, the discovered manifestDigest, capabilityId and a pinned call {majorVersion, descriptorDigest, input, idempotencyKey for writes}. Never manufacture grants or change a retry key after an uncertain write. Use for Agents, projects, automations, notes, tasks, TaskRuns, chat previews, local apps, and exact settings jump targets instead of editing storage files directly. For non-trivial object changes, load the built-in manual first with tool_manual({ tool: \"xopc_use\" }).",
1920
+ description: "Use mode browser_setup for inspect/preview/start/get/advance/recheck/request_interaction/begin_verification/verification_report/cancel of local Chrome setup. Load configure-xopc for guided setup; writes require product-owner approval. Operate first-class xopc objects through one safe entry point. To delegate work for immediate execution: mode task, command create, args {title:\"Short task name\", objective:\"One-sentence outcome\", body:\"Full Markdown task brief\", createMode:\"start\", agentId:\"researcher\"}; omitting createMode creates a backlog task only. To start an existing Task: mode task, command command, args {taskId, type:\"start\", expectedVersion, commandArgs:{executor:{kind:\"agent\",agentId:\"main\"}}}. Inspect an existing Task and its run before creating another Task for the same objective. For delegated work, task delegated_tasks lists this conversation's tasks; task collaboration reads the shared board; task collaboration_post writes {taskId, kind, body, causationId?, idempotencyKey?}. Workers report progress or questions; the main Agent writes instructions and answers. Use chat_preview for lightweight UI mockups in the current conversation; do not create a Local App unless the user asks for a durable app. Local App capabilities takes extensionId and discovers already granted bindings. Local App invoke requires extensionId, the discovered manifestDigest, capabilityId and a pinned call {majorVersion, descriptorDigest, input, idempotencyKey for writes}. Never manufacture grants or change a retry key after an uncertain write. Use for Agents, projects, automations, notes, tasks, TaskRuns, chat previews, local apps, and exact settings jump targets instead of editing storage files directly. For non-trivial object changes, load the built-in manual first with tool_manual({ tool: \"xopc_use\" }).",
1919
1921
  parameters: XopcUseToolSchema,
1920
1922
  mutatesWorkspace: true,
1921
1923
  mutationScope: "external",
@@ -1932,6 +1934,45 @@ function createXopcUseTool(deps) {
1932
1934
  dryRun
1933
1935
  };
1934
1936
  if (!command) return errorText("command is required", details);
1937
+ if (mode === "phone_setup") {
1938
+ const service = deps.getPhoneSetupService?.();
1939
+ const conversationId = deps.getCurrentConversationId?.();
1940
+ const agentId = deps.getCurrentAgentId?.();
1941
+ if (!service || !conversationId || !agentId) return errorText("Phone setup requires a Gateway conversation. Open Settings → Phone Use.", details);
1942
+ if (deps.authorizeCapability && !await deps.authorizeCapability(`xopc.phone_setup.${command}`, args)) return errorText("Phone setup access denied", details);
1943
+ try {
1944
+ return okText({
1945
+ ...details,
1946
+ result: await service.command(command, args, {
1947
+ conversationId,
1948
+ agentId,
1949
+ canConfigure: deps.canConfigureFromConversation?.() === true,
1950
+ runId: getEmbeddedExecutionRunId()
1951
+ }, dryRun)
1952
+ });
1953
+ } catch (error) {
1954
+ return errorText(error instanceof Error ? error.message : String(error), details);
1955
+ }
1956
+ }
1957
+ if (mode === "browser_setup") {
1958
+ const service = deps.getBrowserSetupService?.();
1959
+ const conversationId = deps.getCurrentConversationId?.();
1960
+ const agentId = deps.getCurrentAgentId?.();
1961
+ if (!service || !conversationId || !agentId) return errorText("Browser setup requires a Gateway conversation. Open Settings → Browser.", details);
1962
+ if (deps.authorizeCapability && !await deps.authorizeCapability(`xopc.browser_setup.${command}`, args)) return errorText("Browser setup access denied", details);
1963
+ try {
1964
+ return okText({
1965
+ ...details,
1966
+ result: await service.command(command, args, {
1967
+ conversationId,
1968
+ agentId,
1969
+ canConfigure: deps.canConfigureFromConversation?.() === true
1970
+ }, dryRun)
1971
+ });
1972
+ } catch (error) {
1973
+ return errorText(error instanceof Error ? error.message : String(error), details);
1974
+ }
1975
+ }
1935
1976
  if (mode === "local_app" && (command === "capabilities" || command === "invoke")) {
1936
1977
  const apps = deps.getLocalAppService?.();
1937
1978
  if (!apps) return errorText("Local app service is unavailable", details);
@@ -1,10 +1,10 @@
1
1
  import { AgentEntrySchema, AgentProfileSchema, EffectiveAgentConfigSchema } from "../agent-config/schema.js";
2
2
  import { resolveEffectiveAgentConfig } from "../agent-config/resolver.js";
3
3
  import { init_agent_config } from "../agent-config/index.js";
4
- import { CapabilityError } from "../capabilities/runtime/errors.js";
5
- import { defineAtomicCapability, defineReadCapability } from "../capabilities/runtime/dispatcher.js";
6
4
  import { AgentCatalogRepository, init_repository } from "./repository.js";
7
5
  import { init_agent_scope, resolveAgentWorkspaceDir } from "../agent/agent-scope.js";
6
+ import { CapabilityError } from "../capabilities/runtime/errors.js";
7
+ import { defineAtomicCapability, defineReadCapability } from "../capabilities/runtime/dispatcher.js";
8
8
  import { AgentCatalogService } from "./service.js";
9
9
  import { z } from "zod";
10
10
  //#region src/agent-catalog/capabilities.ts
@@ -1,9 +1,8 @@
1
1
  import { __esmMin } from "../../_virtual/_rolldown/runtime.js";
2
- import { getSqliteDatabase, runSqliteWriteTransaction } from "../storage/sqlite/transaction.js";
3
- import { init_sqlite } from "../storage/sqlite/index.js";
2
+ import { getSqliteDatabase, init_transaction, runSqliteWriteTransaction } from "../storage/sqlite/transaction.js";
3
+ import { DEFAULT_AGENT_ID, init_id, normalizeAgentId } from "./id.js";
4
4
  import { AgentDefaultsSchema, AgentEntrySchema, DEFAULT_AGENT_MODEL_REF, DEFAULT_SKILL_POLICY } from "../agent-config/schema.js";
5
5
  import { init_agent_config } from "../agent-config/index.js";
6
- import { DEFAULT_AGENT_ID, init_id, normalizeAgentId } from "./id.js";
7
6
  import { BindingsSchema, init_binding_schema } from "../routing/binding-schema.js";
8
7
  import { randomUUID } from "node:crypto";
9
8
  //#region src/agent-catalog/repository.ts
@@ -63,7 +62,7 @@ var init_repository = __esmMin((() => {
63
62
  init_agent_config();
64
63
  init_id();
65
64
  init_binding_schema();
66
- init_sqlite();
65
+ init_transaction();
67
66
  DEFAULT_AGENT_DEFAULTS = AgentDefaultsSchema.parse({
68
67
  models: {
69
68
  chat: {
@@ -1,8 +1,7 @@
1
1
  import { closeXopcDatabase, openXopcDatabase } from "../storage/sqlite/connection.js";
2
- import { init_sqlite } from "../storage/sqlite/index.js";
2
+ import "../storage/sqlite/index.js";
3
3
  import { AgentCatalogRepository, init_repository } from "./repository.js";
4
4
  //#region src/agent-catalog/test-support.ts
5
- init_sqlite();
6
5
  init_repository();
7
6
  /** Build an isolated, ready in-memory Agent catalog for a unit test. */
8
7
  function initializeTestAgentCatalog(seed = {}) {
@@ -2,11 +2,10 @@ import { getSqliteDatabase, init_transaction } from "../storage/sqlite/transacti
2
2
  import { init_session_instance_repository, readCurrentTranscriptId } from "../storage/sqlite/session-instance-repository.js";
3
3
  import { getSessionInputState, init_session_input_repository } from "../storage/sqlite/session-input-repository.js";
4
4
  import { getSessionMetadata } from "../storage/sqlite/session-read-repository.js";
5
- import { init_sqlite } from "../storage/sqlite/index.js";
5
+ import "../storage/sqlite/index.js";
6
6
  import { createHash, randomUUID } from "node:crypto";
7
7
  //#region src/agent-matching/selection-repository.ts
8
8
  init_transaction();
9
- init_sqlite();
10
9
  init_session_input_repository();
11
10
  init_session_instance_repository();
12
11
  function decode(row) {
@@ -1,12 +1,12 @@
1
1
  import { AutomationDraftOutputSchema, AutomationDraftRequestSchema, AutomationRepairDraftOutputSchema, AutomationSimulationSchema } from "../../../packages/gateway-contract/src/capabilities.js";
2
2
  import { init_src } from "../../../packages/gateway-contract/src/index.js";
3
- import { init_trust_policy, resolveAutomationSafetyForTrust } from "../../user-context/trust-policy.js";
3
+ import { resolveAutomationSafetyForTrust } from "../../user-context/trust-policy.js";
4
4
  import { getUserTrustPolicy } from "../../storage/sqlite/user-trust-repository.js";
5
- import { init_sqlite } from "../../storage/sqlite/index.js";
5
+ import "../../storage/sqlite/index.js";
6
+ import { init_agent_scope, resolveDefaultAgentId } from "../../agent/agent-scope.js";
6
7
  import { CapabilityError } from "../../capabilities/runtime/errors.js";
7
8
  import { ExternalEffectNotAppliedError } from "../../capabilities/runtime/external-operations.js";
8
9
  import { defineExternalCapability, defineReadCapability } from "../../capabilities/runtime/dispatcher.js";
9
- import { init_agent_scope, resolveDefaultAgentId } from "../../agent/agent-scope.js";
10
10
  import { AutomationCreateCapabilityInputSchema } from "./write.js";
11
11
  import { simulateAutomation } from "../draft/automation-draft-validator.js";
12
12
  import { AutomationDraftService } from "../draft/automation-draft-service.js";
@@ -15,8 +15,6 @@ import { z } from "zod";
15
15
  //#region src/automations/capabilities/drafts.ts
16
16
  init_src();
17
17
  init_agent_scope();
18
- init_sqlite();
19
- init_trust_policy();
20
18
  function registerAutomationDraftCapabilities(dispatcher, service, getConfig) {
21
19
  const policy = {
22
20
  majorVersion: 1,
@@ -1,11 +1,10 @@
1
1
  import { requireXopcDatabase } from "../storage/sqlite/connection.js";
2
- import { init_sqlite } from "../storage/sqlite/index.js";
2
+ import "../storage/sqlite/index.js";
3
3
  import { AgentCatalogRepository, init_repository } from "../agent-catalog/repository.js";
4
4
  import { AgentCatalogService } from "../agent-catalog/service.js";
5
5
  import { ensureStarterAgentsInitialized } from "../agent/starter-agents.js";
6
6
  //#region src/bootstrap/application-state.ts
7
7
  init_repository();
8
- init_sqlite();
9
8
  /** Initialize current application state without importing retired configuration. */
10
9
  function bootstrapApplicationStateSync() {
11
10
  requireXopcDatabase();
@@ -1,7 +1,6 @@
1
1
  import { getSqliteDatabase, runSqliteWriteTransaction } from "../../storage/sqlite/transaction.js";
2
- import { init_sqlite } from "../../storage/sqlite/index.js";
2
+ import "../../storage/sqlite/index.js";
3
3
  //#region src/browser/automations/repository.ts
4
- init_sqlite();
5
4
  const AUTOMATION_SELECT = "SELECT a.*, EXISTS(SELECT 1 FROM browser_automation_verifications v WHERE v.automation_id=a.automation_id AND v.revision=a.revision) AS verified FROM browser_automations a";
6
5
  const RUN_SELECT = "SELECT client_request_id, business_outcome, run_id, automation_id, automation_revision, definition_json, status, inputs_json, result_json, error, created_at_ms, started_at_ms, ended_at_ms, duration_ms FROM browser_automation_runs";
7
6
  const parseAutomation = (row) => ({
@@ -1,4 +1,4 @@
1
- import type { BrowserActionInput, BrowserControlResult, BrowserNavigateInput, BrowserObservation, BrowserObserveInput, BrowserTabsInput } from '@xopcai/browser-control-contract';
1
+ import type { BrowserActionInput, BrowserControlResult, BrowserNavigateInput, BrowserObservation, BrowserObserveInput, BrowserTabsInput, BrowserTarget } from '@xopcai/browser-control-contract';
2
2
  export type BrowserPrimitiveInput = Exclude<BrowserActionInput, BrowserNavigateInput | BrowserObserveInput | BrowserTabsInput | {
3
3
  action: 'sequence';
4
4
  } | {
@@ -9,7 +9,7 @@ export interface BrowserDriver {
9
9
  connect(): Promise<void>;
10
10
  disconnect(): Promise<void>;
11
11
  createSession(sessionId: string): Promise<void>;
12
- closeSession(sessionId: string): Promise<void>;
12
+ closeSession(sessionId: string, target?: BrowserTarget): Promise<void>;
13
13
  navigate(sessionId: string, input: BrowserNavigateInput, signal?: AbortSignal): Promise<BrowserControlResult>;
14
14
  observe(sessionId: string, input: BrowserObserveInput, signal?: AbortSignal): Promise<BrowserObservation>;
15
15
  perform(sessionId: string, input: BrowserPrimitiveInput, signal?: AbortSignal): Promise<BrowserControlResult>;
@@ -1,4 +1,4 @@
1
- import type { BrowserControlResult, BrowserNavigateInput, BrowserObservation, BrowserObserveInput, BrowserTabsInput } from '@xopcai/browser-control-contract';
1
+ import type { BrowserControlResult, BrowserNavigateInput, BrowserObservation, BrowserObserveInput, BrowserTabsInput, BrowserTarget } from '@xopcai/browser-control-contract';
2
2
  import type { BrowserDriver, BrowserPrimitiveInput } from './browser-driver.js';
3
3
  type ExtensionProvider = {
4
4
  start(): Promise<void>;
@@ -15,7 +15,7 @@ export declare class ExtensionDriver implements BrowserDriver {
15
15
  connect(): Promise<void>;
16
16
  disconnect(): Promise<void>;
17
17
  createSession(_sessionId: string): Promise<void>;
18
- closeSession(sessionId: string): Promise<void>;
18
+ closeSession(sessionId: string, target?: BrowserTarget): Promise<void>;
19
19
  navigate(sessionId: string, input: BrowserNavigateInput, signal?: AbortSignal): Promise<BrowserControlResult>;
20
20
  observe(sessionId: string, input: BrowserObserveInput, signal?: AbortSignal): Promise<BrowserObservation>;
21
21
  perform(sessionId: string, input: BrowserPrimitiveInput, signal?: AbortSignal): Promise<BrowserControlResult>;
@@ -17,11 +17,14 @@ var ExtensionDriver = class {
17
17
  async createSession(_sessionId) {
18
18
  await this.connect();
19
19
  }
20
- async closeSession(sessionId) {
21
- await this.send({
20
+ async closeSession(sessionId, target) {
21
+ const result = await this.send({
22
22
  action: "close",
23
- sessionId
23
+ sessionId,
24
+ ...target ? { target } : {}
24
25
  });
26
+ if ("error" in result) throw new Error(result.error.message);
27
+ if (!result.receipt.verified) throw new Error("Browser control release was not verified");
25
28
  }
26
29
  navigate(sessionId, input, signal) {
27
30
  return this.send({
@@ -1,8 +1,8 @@
1
1
  import { closeXopcDatabase, init_connection, openXopcDatabase } from "../storage/sqlite/connection.js";
2
2
  import { browserPairingInvitationPayloadSchema, formatBrowserPairingInvitation } from "../../packages/gateway-contract/src/device-pairing.js";
3
3
  import { init_src } from "../../packages/gateway-contract/src/index.js";
4
- import { getGatewayIdentityPublicKeyRaw, getOrCreateGatewayIdentity, init_gateway_identity_repository } from "../storage/sqlite/gateway-identity-repository.js";
5
- import { createDevicePairingSetup, init_device_pairing_repository } from "../storage/sqlite/device-pairing-repository.js";
4
+ import { getGatewayIdentityPublicKeyRaw, getOrCreateGatewayIdentity } from "../storage/sqlite/gateway-identity-repository.js";
5
+ import { createDevicePairingSetup } from "../storage/sqlite/device-pairing-repository.js";
6
6
  import { loadConfig } from "../config/loader.js";
7
7
  import { browserEnrollmentPublicKeyThumbprint } from "./enrollment.js";
8
8
  import { BROWSER_EXTENSION_ID, BROWSER_NATIVE_HOST_NAME } from "./extension-identity.js";
@@ -10,8 +10,6 @@ import os from "node:os";
10
10
  //#region src/browser/native-messaging-host.ts
11
11
  init_src();
12
12
  init_connection();
13
- init_device_pairing_repository();
14
- init_gateway_identity_repository();
15
13
  function gatewayLoopbackUrl(port) {
16
14
  return `http://127.0.0.1:${port}`;
17
15
  }
@@ -9,12 +9,12 @@ import { BROWSER_EXTENSION_ID, BROWSER_NATIVE_HOST_NAME } from "../extension-ide
9
9
  import "../native-messaging-host.js";
10
10
  import { resolvePackageRoot } from "../../infra/update-check.js";
11
11
  import { dirname, join } from "node:path";
12
- import { chmodSync, existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
12
+ import { accessSync, chmodSync, constants, existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
13
13
  import { fileURLToPath } from "node:url";
14
14
  import { createHash } from "node:crypto";
15
15
  import { execFileSync, spawn } from "node:child_process";
16
- import { readFile, readdir, rm } from "node:fs/promises";
17
16
  import AdmZip from "adm-zip";
17
+ import { readFile, readdir, rm } from "node:fs/promises";
18
18
  //#region src/browser/providers/browser-ext-install.ts
19
19
  /**
20
20
  * Install bundled Chrome extension artifacts into {resolveBinDir()}/browser-ext/.
@@ -384,6 +384,7 @@ function browserNativeHostDoctor(platform = process.platform, home = process.env
384
384
  const manifestPaths = (platform === "win32" ? windowsRegisteredNativeManifests() : directories.map((directory) => join(directory, `${BROWSER_NATIVE_HOST_NAME}.json`))).filter((manifestPath) => {
385
385
  try {
386
386
  const manifest = JSON.parse(readFileSync(manifestPath, "utf8"));
387
+ if (typeof manifest.path === "string" && platform !== "win32") accessSync(manifest.path, constants.X_OK);
387
388
  return manifest.name === "ai.xopc.browser" && typeof manifest.path === "string" && existsSync(manifest.path) && Array.isArray(manifest.allowed_origins) && manifest.allowed_origins.includes(`chrome-extension://gopbfhaojnnhiheiikblejnpgmfmkmgd/`);
388
389
  } catch {
389
390
  return false;
@@ -1,8 +1,7 @@
1
- import { getBrowserTabBindingById, init_browser_tab_binding_repository } from "../../storage/sqlite/browser-tab-binding-repository.js";
1
+ import { getBrowserTabBindingById } from "../../storage/sqlite/browser-tab-binding-repository.js";
2
2
  import { BROWSER_CONTROL_ENDPOINT_TOOL_NAME } from "../../../packages/browser-control-contract/src/index.js";
3
3
  import crypto from "node:crypto";
4
4
  //#region src/browser/providers/realtime-extension.ts
5
- init_browser_tab_binding_repository();
6
5
  var RealtimeExtensionBrowserProvider = class {
7
6
  name = "extension";
8
7
  connectionTimeout;
@@ -1,8 +1,7 @@
1
1
  import { getSqliteDatabase, runSqliteWriteTransaction } from "../../storage/sqlite/transaction.js";
2
- import { init_sqlite } from "../../storage/sqlite/index.js";
2
+ import "../../storage/sqlite/index.js";
3
3
  import { z } from "zod";
4
4
  //#region src/browser/recordings/service.ts
5
- init_sqlite();
6
5
  const Target = z.object({
7
6
  role: z.string().min(1),
8
7
  name: z.string().max(240).optional(),
@@ -5,6 +5,8 @@ export interface BrowserRuntimeOptions {
5
5
  getConfig: () => Config['browser'];
6
6
  createDriver: () => Promise<BrowserDriver>;
7
7
  allowedUploadRoots?: string[];
8
+ canRestoreSetupSession?: (taskKey: string, sessionId: string) => boolean;
9
+ isTrustedSetupUrl?: (taskKey: string, url: string) => boolean;
8
10
  emit?: (type: string, payload: unknown) => void;
9
11
  resolveTarget?: (taskKey: string) => BrowserTarget | undefined;
10
12
  }
@@ -14,8 +16,9 @@ export declare class BrowserRuntime {
14
16
  private sessionsByTask;
15
17
  constructor(options: BrowserRuntimeOptions);
16
18
  execute(taskKey: string, input: BrowserActionInput, signal?: AbortSignal): Promise<BrowserControlResult>;
19
+ hasSessions(): boolean;
17
20
  shutdown(): Promise<void>;
18
- closeTaskSession(taskKey: string): Promise<void>;
21
+ closeTaskSession(taskKey: string, target?: BrowserTarget): Promise<void>;
19
22
  private dispatch;
20
23
  private executeSequence;
21
24
  private actionDenied;
@@ -11,7 +11,7 @@ var BrowserRuntime = class {
11
11
  }
12
12
  async execute(taskKey, input, signal) {
13
13
  this.evictExpiredSessions();
14
- if (!this.options.getConfig().enabled) return failure("DRIVER_UNAVAILABLE", "Browser Control is disabled.");
14
+ if (!this.options.getConfig().enabled && input.action !== "close") return failure("DRIVER_UNAVAILABLE", "Browser Control is disabled.");
15
15
  if (signal?.aborted) return failure("ABORTED", "Operation was aborted.");
16
16
  const resolvedTarget = input.target ? void 0 : this.options.resolveTarget?.(taskKey);
17
17
  const effectiveInput = input.target || !resolvedTarget ? input : {
@@ -55,21 +55,24 @@ var BrowserRuntime = class {
55
55
  }
56
56
  return result;
57
57
  }
58
+ hasSessions() {
59
+ return this.sessionsByTask.size > 0;
60
+ }
58
61
  async shutdown() {
59
62
  await this.driver?.disconnect();
60
63
  this.driver = null;
61
64
  this.sessionsByTask.clear();
62
65
  }
63
- async closeTaskSession(taskKey) {
66
+ async closeTaskSession(taskKey, target) {
64
67
  const session = this.sessionsByTask.get(taskKey);
65
68
  if (!session) return;
66
- await this.driver?.closeSession(session.id);
69
+ await this.driver?.closeSession(session.id, target);
67
70
  this.sessionsByTask.delete(taskKey);
68
71
  this.options.emit?.("browser.session.closed", { sessionId: session.id });
69
72
  }
70
73
  async dispatch(driver, session, input, signal) {
71
74
  if (input.action === "close") {
72
- await this.closeTaskSession(session.taskKey);
75
+ await this.closeTaskSession(session.taskKey, input.target);
73
76
  return {
74
77
  ok: true,
75
78
  receipt: {
@@ -91,22 +94,22 @@ var BrowserRuntime = class {
91
94
  }
92
95
  };
93
96
  if (input.action === "navigate") {
94
- const blocked = this.validateUrl(input.url);
97
+ const blocked = this.validateUrl(input.url, session.taskKey);
95
98
  if (blocked) return failure("BLOCKED_URL", blocked);
96
99
  if (this.crossDomainPolicy(session.observation?.url, input.url) === "deny") return failure("BLOCKED_URL", "Cross-domain navigation is denied by policy.");
97
100
  const result = await driver.navigate(session.id, input, signal);
98
- return this.validateRedirect(input.url, result);
101
+ return this.validateRedirect(input.url, result, session.taskKey);
99
102
  }
100
103
  if (input.action === "tabs") {
101
104
  if (input.url) {
102
- const blocked = this.validateUrl(input.url);
105
+ const blocked = this.validateUrl(input.url, session.taskKey);
103
106
  if (blocked) return failure("BLOCKED_URL", blocked);
104
107
  if (this.crossDomainPolicy(session.observation?.url, input.url) === "deny") return failure("BLOCKED_URL", "Cross-domain navigation is denied by policy.");
105
108
  }
106
109
  const result = await driver.tabs(session.id, input, signal);
107
110
  if (!input.url || !result.ok) return result;
108
111
  const finalUrl = result.receipt.tabs?.find((tab) => tab.active)?.url;
109
- const blocked = finalUrl ? this.blockedRedirect(finalUrl) : "The created tab did not report its final URL.";
112
+ const blocked = finalUrl ? this.blockedRedirect(finalUrl, session.taskKey) : "The created tab did not report its final URL.";
110
113
  return blocked ? failure("BLOCKED_URL", blocked) : result;
111
114
  }
112
115
  if (input.action === "sequence") return this.executeSequence(driver, session, input, signal);
@@ -119,12 +122,12 @@ var BrowserRuntime = class {
119
122
  }
120
123
  if (this.actionDenied(input, risk)) return failure("INVALID_INPUT", `Browser action is denied by policy (${risk}).`);
121
124
  if (input.action === "click" && target?.href) {
122
- const blocked = this.validateUrl(target.href);
125
+ const blocked = this.validateUrl(target.href, session.taskKey);
123
126
  if (blocked) return failure("BLOCKED_URL", blocked);
124
127
  if (this.crossDomainPolicy(session.observation?.url, target.href) === "deny") return failure("BLOCKED_URL", "Cross-domain navigation is denied by policy.");
125
128
  }
126
129
  const result = await driver.perform(session.id, input, signal);
127
- return withRisk(this.validateRedirect(session.observation?.url ?? "", result), risk);
130
+ return withRisk(this.validateRedirect(session.observation?.url ?? "", result, session.taskKey), risk);
128
131
  }
129
132
  async executeSequence(driver, session, input, signal) {
130
133
  const config = this.options.getConfig();
@@ -171,27 +174,27 @@ var BrowserRuntime = class {
171
174
  "sensitive"
172
175
  ].includes(risk);
173
176
  }
174
- validateUrl(url) {
177
+ validateUrl(url, taskKey) {
175
178
  if (containsApiKeyPattern(url)) return "URL contains a credential-like value.";
176
179
  try {
177
180
  const host = new URL(url).hostname.toLowerCase();
178
- assertBrowserUrlAllowed(url, { privateHostAllowed: this.options.getConfig().security.allowedPrivateHosts.some((candidate) => candidate.toLowerCase() === host) });
181
+ assertBrowserUrlAllowed(url, { privateHostAllowed: this.options.getConfig().security.allowedPrivateHosts.some((candidate) => candidate.toLowerCase() === host) || this.options.isTrustedSetupUrl?.(taskKey, url) === true });
179
182
  return null;
180
183
  } catch (error) {
181
184
  return error instanceof Error ? error.message : String(error);
182
185
  }
183
186
  }
184
- validateRedirect(requestedUrl, result) {
187
+ validateRedirect(requestedUrl, result, taskKey) {
185
188
  if (!result.ok || !result.receipt.observation) return result;
186
189
  const finalUrl = result.receipt.observation.url;
187
190
  if (finalUrl === requestedUrl) return result;
188
- const blocked = this.blockedRedirect(finalUrl);
191
+ const blocked = this.blockedRedirect(finalUrl, taskKey);
189
192
  return blocked ? failure("BLOCKED_URL", blocked, result.receipt.observation) : result;
190
193
  }
191
- blockedRedirect(finalUrl) {
194
+ blockedRedirect(finalUrl, taskKey) {
192
195
  try {
193
196
  const host = new URL(finalUrl).hostname.toLowerCase();
194
- return checkPostRedirectUrl(finalUrl, { privateHostAllowed: this.options.getConfig().security.allowedPrivateHosts.some((candidate) => candidate.toLowerCase() === host) });
197
+ return checkPostRedirectUrl(finalUrl, { privateHostAllowed: this.options.getConfig().security.allowedPrivateHosts.some((candidate) => candidate.toLowerCase() === host) || this.options.isTrustedSetupUrl?.(taskKey, finalUrl) === true });
195
198
  } catch {
196
199
  return "Browser returned an invalid final URL.";
197
200
  }
@@ -222,7 +225,16 @@ var BrowserRuntime = class {
222
225
  async resolveSession(taskKey, requestedId) {
223
226
  const existing = this.sessionsByTask.get(taskKey);
224
227
  if (existing) return !requestedId || requestedId === existing.id ? existing : null;
225
- if (requestedId) return null;
228
+ if (requestedId) {
229
+ if (!this.options.canRestoreSetupSession?.(taskKey, requestedId)) return null;
230
+ const restored = {
231
+ id: requestedId,
232
+ taskKey,
233
+ lastUsedAt: Date.now()
234
+ };
235
+ this.sessionsByTask.set(taskKey, restored);
236
+ return restored;
237
+ }
226
238
  const session = {
227
239
  id: randomUUID(),
228
240
  taskKey,
@@ -0,0 +1,5 @@
1
+ import type { BrowserSetup } from './types.js';
2
+ export declare function readBrowserSetup(id: string): BrowserSetup | undefined;
3
+ export declare function findBrowserSetup(conversationId: string, agentId: string): BrowserSetup | undefined;
4
+ export declare function createBrowserSetup(conversationId: string, agentId: string, configRevision: string): BrowserSetup;
5
+ export declare function saveBrowserSetup(next: BrowserSetup, expectedRevision: number): BrowserSetup;
@@ -0,0 +1,42 @@
1
+ import { getSqliteDatabase, init_transaction, runSqliteWriteTransaction } from "../../storage/sqlite/transaction.js";
2
+ import { randomUUID } from "node:crypto";
3
+ //#region src/browser/setup/repository.ts
4
+ init_transaction();
5
+ function readBrowserSetup(id) {
6
+ const row = getSqliteDatabase().prepare("SELECT payload_json FROM browser_setup_runs WHERE id = ?").get(id);
7
+ return row ? JSON.parse(row.payload_json) : void 0;
8
+ }
9
+ function findBrowserSetup(conversationId, agentId) {
10
+ const row = getSqliteDatabase().prepare("SELECT payload_json FROM browser_setup_runs WHERE conversation_id = ? AND agent_id = ? ORDER BY updated_at DESC, rowid DESC LIMIT 1").get(conversationId, agentId);
11
+ return row ? JSON.parse(row.payload_json) : void 0;
12
+ }
13
+ function createBrowserSetup(conversationId, agentId, configRevision) {
14
+ return runSqliteWriteTransaction((db) => {
15
+ const existing = findBrowserSetup(conversationId, agentId);
16
+ if (existing && existing.state !== "cancelled" && existing.state !== "completed") return existing;
17
+ const now = Date.now();
18
+ const setup = {
19
+ id: randomUUID(),
20
+ conversationId,
21
+ agentId,
22
+ configRevision,
23
+ state: "plan_ready",
24
+ revision: 1,
25
+ createdAt: now,
26
+ updatedAt: now
27
+ };
28
+ db.prepare("INSERT INTO browser_setup_runs (id, conversation_id, agent_id, revision, updated_at, payload_json) VALUES (?, ?, ?, ?, ?, ?)").run(setup.id, conversationId, agentId, setup.revision, now, JSON.stringify(setup));
29
+ return setup;
30
+ });
31
+ }
32
+ function saveBrowserSetup(next, expectedRevision) {
33
+ next = {
34
+ ...next,
35
+ revision: expectedRevision + 1,
36
+ updatedAt: Date.now()
37
+ };
38
+ if (getSqliteDatabase().prepare("UPDATE browser_setup_runs SET revision = ?, updated_at = ?, payload_json = ? WHERE id = ? AND revision = ?").run(next.revision, next.updatedAt, JSON.stringify(next), next.id, expectedRevision).changes !== 1) throw new Error("SETUP_CONFLICT: Configuration progress changed. Read it again.");
39
+ return next;
40
+ }
41
+ //#endregion
42
+ export { createBrowserSetup, findBrowserSetup, readBrowserSetup, saveBrowserSetup };