@xopcai/xopc 0.0.235 → 0.0.239

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 (307) hide show
  1. package/dist/browser-ext/manifest.json +1 -1
  2. package/dist/extensions/feishu/src/outbound/media-load.js +1 -1
  3. package/dist/extensions/feishu/src/schema/config-schema.d.ts +8 -8
  4. package/dist/extensions/telegram/src/config-schema.d.ts +8 -8
  5. package/dist/extensions/telegram/xopc.extension.json +1 -1
  6. package/dist/extensions/weixin/src/config-schema.d.ts +3 -3
  7. package/dist/gateway/static/root/assets/{activity-store-BzswYHcj.js → activity-store-DLfkwJzZ.js} +1 -1
  8. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-dvh9aEm6.js → agent-avatar-dicebear-C1rtpjd7.js} +1 -1
  9. package/dist/gateway/static/root/assets/agent-defaults-settings-panel-oW6wFuP9.js +1 -0
  10. package/dist/gateway/static/root/assets/agents-V-nDPOk2.js +1 -0
  11. package/dist/gateway/static/root/assets/{api-7zOtMbaE.js → api-IUm57Zse.js} +1 -1
  12. package/dist/gateway/static/root/assets/app-management-settings-panel-CRDnRN4G.js +1 -0
  13. package/dist/gateway/static/root/assets/appearance-settings-BCYZIKqQ.js +1 -0
  14. package/dist/gateway/static/root/assets/apps-page-dcvQDCvy.js +1 -0
  15. package/dist/gateway/static/root/assets/{archive-plugin-DawToDU8.js → archive-plugin-Bha1jUhj.js} +1 -1
  16. package/dist/gateway/static/root/assets/{attachment-load-DmBAKvsi.js → attachment-load-Bgfh7Ag2.js} +1 -1
  17. package/dist/gateway/static/root/assets/{automations-page-BGkF6XNH.js → automations-page-BdH131M0.js} +1 -1
  18. package/dist/gateway/static/root/assets/automations-workspace-BtwzQZAR.js +6 -0
  19. package/dist/gateway/static/root/assets/{binary-plugins-B-6Ski7l.js → binary-plugins-BwXg9na-.js} +1 -1
  20. package/dist/gateway/static/root/assets/{block-editor-BgeKQN1F.js → block-editor-BngtUSNv.js} +56 -56
  21. package/dist/gateway/static/root/assets/browser-settings-page-kfNOKQ2x.js +8 -0
  22. package/dist/gateway/static/root/assets/{browser-workflow-inputs-4ooVX-Tx.js → browser-workflow-inputs-CHHw7Ula.js} +1 -1
  23. package/dist/gateway/static/root/assets/{browser-workflows-page-D92g81lS.js → browser-workflows-page-Ael9sxrp.js} +2 -2
  24. package/dist/gateway/static/root/assets/capabilities-settings-panel-DOymgkUM.js +7 -0
  25. package/dist/gateway/static/root/assets/channels-settings-YscUvFub.js +1 -0
  26. package/dist/gateway/static/root/assets/{channels-status-swr-BDJvMnA_.js → channels-status-swr-CwUSKmeY.js} +1 -1
  27. package/dist/gateway/static/root/assets/chat-terminal-dock-DI0lYVKk.js +36 -0
  28. package/dist/gateway/static/root/assets/connectors-page-BtzCRQGz.js +2 -0
  29. package/dist/gateway/static/root/assets/{cron-expression-BYmr5ZuN.js → cron-expression-CLuvPZ3b.js} +1 -1
  30. package/dist/gateway/static/root/assets/{date-picker-FKL_b_S0.js → date-picker-D4QS8Zzn.js} +1 -1
  31. package/dist/gateway/static/root/assets/dependency-picker-DZn-RhEm.js +1 -0
  32. package/dist/gateway/static/root/assets/{desktop-pet-DOXjRTqK.js → desktop-pet-C6KqTQas.js} +1 -1
  33. package/dist/gateway/static/root/assets/desktop-pet-settings-Bov3XuPO.js +1 -0
  34. package/dist/gateway/static/root/assets/{extension-debug-page-BeJ1-5ID.js → extension-debug-page-DpeeYAjX.js} +1 -1
  35. package/dist/gateway/static/root/assets/{extension-page-CncDndLS.js → extension-page-Cescx_be.js} +1 -1
  36. package/dist/gateway/static/root/assets/{extension-settings-page-BxxL0HqU.js → extension-settings-page-C_ubW61U.js} +1 -1
  37. package/dist/gateway/static/root/assets/{gateway-config-api-Dc6A6HyJ.js → gateway-config-api-BM79X1jC.js} +1 -1
  38. package/dist/gateway/static/root/assets/{gateway-config-swr-R702lNJR.js → gateway-config-swr-DfMY-MLf.js} +1 -1
  39. package/dist/gateway/static/root/assets/gateway-settings-GV5KAj-l.js +1 -0
  40. package/dist/gateway/static/root/assets/{gateway-startup-retry-2rVSUvyw.js → gateway-startup-retry-S6aB0hVI.js} +1 -1
  41. package/dist/gateway/static/root/assets/heartbeat-settings-CZ1KeXXU.js +1 -0
  42. package/dist/gateway/static/root/assets/home-page-YdVal_8I.js +1 -0
  43. package/dist/gateway/static/root/assets/{image-generation-api-B28USRCK.js → image-generation-api-DOX5uq-R.js} +1 -1
  44. package/dist/gateway/static/root/assets/index-7GLgmvAm.css +2 -0
  45. package/dist/gateway/static/root/assets/index-DKP23eMn.js +70 -0
  46. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-Cwinks_5.js → keyboard-shortcuts-settings-Tn7xSeVT.js} +1 -1
  47. package/dist/gateway/static/root/assets/local-app-workbench-page-DCt7cbvK.js +2 -0
  48. package/dist/gateway/static/root/assets/local-apps-page-Co5_qKEQ.js +1 -0
  49. package/dist/gateway/static/root/assets/{locale-store-8k4mvYGL.js → locale-store-XDFAPNNu.js} +1 -1
  50. package/dist/gateway/static/root/assets/logs-page-ChfSQQSV.js +2 -0
  51. package/dist/gateway/static/root/assets/management-settings-DE0o5c7Y.js +1 -0
  52. package/dist/gateway/static/root/assets/{markdown-split-B6wQhwLV.js → markdown-split-CADkGbQi.js} +1 -1
  53. package/dist/gateway/static/root/assets/markdown-view-Y68dCxuc.css +1 -0
  54. package/dist/gateway/static/root/assets/markdown-view-v-O3cOpk.js +201 -0
  55. package/dist/gateway/static/root/assets/{media-plugins-BSEPuO76.js → media-plugins-mHodPaFz.js} +1 -1
  56. package/dist/gateway/static/root/assets/messages-B1HDp_j8.js +3 -0
  57. package/dist/gateway/static/root/assets/mobile-pairing-wizard-43FyMswX.js +1 -0
  58. package/dist/gateway/static/root/assets/models-hub-cache-Bngs8o1m.js +1 -0
  59. package/dist/gateway/static/root/assets/{notes-api-p2Pncp2B.js → notes-api-BMhFpRmW.js} +1 -1
  60. package/dist/gateway/static/root/assets/{notes-page-CPgbeO1u.js → notes-page-BMUyJStB.js} +1 -1
  61. package/dist/gateway/static/root/assets/notes-workbench-DjHIQneE.js +4 -0
  62. package/dist/gateway/static/root/assets/{oauth-api-DpLONwfK.js → oauth-api-B_pcOUfT.js} +1 -1
  63. package/dist/gateway/static/root/assets/popover-select-DBrVS3tZ.js +1 -0
  64. package/dist/gateway/static/root/assets/{product-delivery-tRr-7IxY.js → product-delivery-dUJgmBQZ.js} +1 -1
  65. package/dist/gateway/static/root/assets/product-open-page-B8cjLdm4.js +1 -0
  66. package/dist/gateway/static/root/assets/project-detail-page-CXD2pVgQ.js +1 -0
  67. package/dist/gateway/static/root/assets/projects-page-cqKqkTwG.js +1 -0
  68. package/dist/gateway/static/root/assets/{registry-api-B7b0LJgI.js → registry-api-DeVvBsl4.js} +1 -1
  69. package/dist/gateway/static/root/assets/remote-access-hub-UEinEd7d.js +1 -0
  70. package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-D3TCJGy3.js → runtime-tools-settings-panel-ClCEmwPY.js} +1 -1
  71. package/dist/gateway/static/root/assets/{schema-form-DUAlwNoO.js → schema-form-0vcUqeqa.js} +1 -1
  72. package/dist/gateway/static/root/assets/sessions-page-Cc6ve-qc.js +1 -0
  73. package/dist/gateway/static/root/assets/settings-advanced-gate-_J5FSEYX.js +1 -0
  74. package/dist/gateway/static/root/assets/{settings-form-section-D7nQ3Lfu.js → settings-form-section-BkdLf_sS.js} +1 -1
  75. package/dist/gateway/static/root/assets/settings-loading-skeleton-CAmWMaOT.js +1 -0
  76. package/dist/gateway/static/root/assets/{settings-page-CMAkMc3I.js → settings-page-QBTaBpBn.js} +1 -1
  77. package/dist/gateway/static/root/assets/setup-status-panel-bQcSMkVr.js +1 -0
  78. package/dist/gateway/static/root/assets/share-preview-page-D_OuXnah.js +2 -0
  79. package/dist/gateway/static/root/assets/shares-settings-DJfcpok3.js +1 -0
  80. package/dist/gateway/static/root/assets/skeleton-BwbyijEw.js +1 -0
  81. package/dist/gateway/static/root/assets/skill-reload-api-Bbqp5HaH.js +1 -0
  82. package/dist/gateway/static/root/assets/{skills-page-DJRr5HFw.js → skills-page-BNcnmaTg.js} +1 -1
  83. package/dist/gateway/static/root/assets/{skills-page.utils-DcrBe39q.js → skills-page.utils-BWWcFShl.js} +1 -1
  84. package/dist/gateway/static/root/assets/system-settings-panel-BsH7b3B4.js +1 -0
  85. package/dist/gateway/static/root/assets/task-detail-page-CcAhyw2Z.js +1 -0
  86. package/dist/gateway/static/root/assets/{theme-store-CpcBI73Q.js → theme-store-5-XHH7F0.js} +1 -1
  87. package/dist/gateway/static/root/assets/tunnel-api-D5-Hggt3.js +1 -0
  88. package/dist/gateway/static/root/assets/{use-autosave-DDEypreQ.js → use-autosave-Dp1ycDa8.js} +1 -1
  89. package/dist/gateway/static/root/assets/user-context-page-Dd_oMNie.js +1 -0
  90. package/dist/gateway/static/root/assets/{voice-api-key-field-BLa_vdXE.js → voice-api-key-field-DhrQXH3c.js} +1 -1
  91. package/dist/gateway/static/root/assets/{voice-config-api-ynE-vY6I.js → voice-config-api-Bk_bVeGX.js} +1 -1
  92. package/dist/gateway/static/root/assets/{work-discovery-overlay-DS3w1Fyq.js → work-discovery-overlay-B7zKAPrb.js} +1 -1
  93. package/dist/gateway/static/root/assets/{workflow-run-setup-panel-jQl_wmYC.js → workflow-run-setup-panel-Cek9K48F.js} +2 -2
  94. package/dist/gateway/static/root/assets/workflows-page-T2q2Mx6H.js +5 -0
  95. package/dist/gateway/static/root/index.html +18 -17
  96. package/dist/package.js +1 -1
  97. package/dist/packages/gateway-contract/src/device-pairing.js +39 -0
  98. package/dist/packages/gateway-contract/src/model-selection.js +7 -0
  99. package/dist/packages/gateway-contract/src/new-session.js +9 -2
  100. package/dist/packages/gateway-contract/src/turn-outcome.js +27 -2
  101. package/dist/src/agent/agent-manager.js +4 -4
  102. package/dist/src/agent/background-review/run-background-review.js +1 -1
  103. package/dist/src/agent/embedded/model-runtime.js +1 -1
  104. package/dist/src/agent/embedded/run-for-session.js +1 -1
  105. package/dist/src/agent/embedded/run-turn.js +5 -0
  106. package/dist/src/agent/image/tool-model-config.js +1 -1
  107. package/dist/src/agent/ipc/inbox.js +1 -1
  108. package/dist/src/agent/mcp/oauth/mcp-oauth-store.js +1 -1
  109. package/dist/src/agent/models/manager.d.ts +3 -0
  110. package/dist/src/agent/models/manager.js +9 -0
  111. package/dist/src/agent/prompt/sections/tooling.js +1 -0
  112. package/dist/src/agent/service.js +2 -2
  113. package/dist/src/agent/session/session-config-service.d.ts +6 -2
  114. package/dist/src/agent/session/session-config-service.js +78 -17
  115. package/dist/src/agent/session/session-hydrator.d.ts +3 -4
  116. package/dist/src/agent/session/session-hydrator.js +19 -8
  117. package/dist/src/agent/session/session-inspector.d.ts +3 -1
  118. package/dist/src/agent/session/session-inspector.js +8 -4
  119. package/dist/src/agent/skills/hub-lock.js +1 -1
  120. package/dist/src/agent/tasks/task-judge-service.js +3 -3
  121. package/dist/src/agent/tools/exec-command.js +1 -0
  122. package/dist/src/agent/tools/publish-artifacts.d.ts +1 -0
  123. package/dist/src/agent/tools/publish-artifacts.js +15 -4
  124. package/dist/src/agent/tools/xopc-use-tool.js +4 -4
  125. package/dist/src/agent/transcript/thinking-types.d.ts +1 -1
  126. package/dist/src/agent/transcript/thinking-types.js +2 -0
  127. package/dist/src/agent-config/schema.d.ts +16 -16
  128. package/dist/src/ai-assist/text-assist.js +1 -1
  129. package/dist/src/auth/credentials.js +2 -2
  130. package/dist/src/auth/profiles/store.js +1 -1
  131. package/dist/src/auth/sync-provider-auth.js +2 -2
  132. package/dist/src/automations/domain/validation.d.ts +62 -62
  133. package/dist/src/automations/draft/automation-draft-validator.d.ts +10 -10
  134. package/dist/src/browser/providers/browser-ext-install.js +1 -1
  135. package/dist/src/chat-commands/builtins/thinking.js +1 -0
  136. package/dist/src/cli/commands/channels.js +1 -1
  137. package/dist/src/cli/commands/connectors.js +1 -1
  138. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  139. package/dist/src/cli/commands/doctor/checks/provider-auth.js +1 -1
  140. package/dist/src/cli/commands/extension-marketplace.js +2 -2
  141. package/dist/src/cli/commands/models.js +2 -2
  142. package/dist/src/cli/commands/onboard.js +1 -1
  143. package/dist/src/config/index.js +4 -4
  144. package/dist/src/config/loader.js +1 -1
  145. package/dist/src/config/models-json.d.ts +137 -11
  146. package/dist/src/config/models-json.js +29 -2
  147. package/dist/src/config/schema.d.ts +15 -15
  148. package/dist/src/execution-environments/git.d.ts +27 -0
  149. package/dist/src/execution-environments/git.js +125 -0
  150. package/dist/src/execution-environments/index.d.ts +7 -0
  151. package/dist/src/execution-environments/index.js +8 -0
  152. package/dist/src/execution-environments/local-worktree-manager.d.ts +37 -0
  153. package/dist/src/execution-environments/local-worktree-manager.js +322 -0
  154. package/dist/src/execution-environments/paths.d.ts +2 -0
  155. package/dist/src/execution-environments/paths.js +18 -0
  156. package/dist/src/execution-environments/session-environment-service.d.ts +22 -0
  157. package/dist/src/execution-environments/session-environment-service.js +73 -0
  158. package/dist/src/execution-environments/store.d.ts +13 -0
  159. package/dist/src/execution-environments/store.js +183 -0
  160. package/dist/src/execution-environments/subject.d.ts +2 -0
  161. package/dist/src/execution-environments/subject.js +12 -0
  162. package/dist/src/execution-environments/types.d.ts +74 -0
  163. package/dist/src/execution-environments/types.js +54 -0
  164. package/dist/src/extensions/lockfile.js +1 -1
  165. package/dist/src/extensions/sdk/index.js +1 -1
  166. package/dist/src/extensions/update.js +1 -1
  167. package/dist/src/gateway/agent-builtin-tools.d.ts +1 -1
  168. package/dist/src/gateway/agents-admin.js +1 -1
  169. package/dist/src/gateway/custom-image-providers.d.ts +1 -1
  170. package/dist/src/gateway/file-path-classifier.js +1 -1
  171. package/dist/src/gateway/heartbeat/service.js +1 -1
  172. package/dist/src/gateway/hono/lib/config-payload.d.ts +4 -4
  173. package/dist/src/gateway/hono/lib/config-payload.js +1 -1
  174. package/dist/src/gateway/hono/routes/auth-registry-extensions.js +1 -1
  175. package/dist/src/gateway/hono/routes/chat-model-config.d.ts +34 -0
  176. package/dist/src/gateway/hono/routes/chat-model-config.js +42 -0
  177. package/dist/src/gateway/hono/routes/device-pairing-approval.d.ts +3 -0
  178. package/dist/src/gateway/hono/routes/device-pairing-approval.js +100 -0
  179. package/dist/src/gateway/hono/routes/devices.js +15 -8
  180. package/dist/src/gateway/hono/routes/execution-environments.d.ts +3 -0
  181. package/dist/src/gateway/hono/routes/execution-environments.js +136 -0
  182. package/dist/src/gateway/hono/routes/index.js +4 -0
  183. package/dist/src/gateway/hono/routes/mobile-privacy.d.ts +3 -0
  184. package/dist/src/gateway/hono/routes/mobile-privacy.js +13 -0
  185. package/dist/src/gateway/hono/routes/models.js +10 -1
  186. package/dist/src/gateway/hono/routes/projects.js +43 -4
  187. package/dist/src/gateway/hono/routes/session-input-handler.d.ts +15 -1
  188. package/dist/src/gateway/hono/routes/session-input-handler.js +122 -52
  189. package/dist/src/gateway/hono/routes/sessions.js +105 -22
  190. package/dist/src/gateway/hono/routes/tasks.js +4 -12
  191. package/dist/src/gateway/mobile-privacy.d.ts +7 -0
  192. package/dist/src/gateway/mobile-privacy.js +102 -0
  193. package/dist/src/gateway/security/gateway-scopes.js +1 -0
  194. package/dist/src/gateway/service/agent-runner.d.ts +1 -1
  195. package/dist/src/gateway/service/config-coordinator.js +2 -2
  196. package/dist/src/gateway/service/session-input-coordinator.d.ts +2 -1
  197. package/dist/src/gateway/service/session-input-coordinator.js +14 -5
  198. package/dist/src/gateway/service/sessions-api.d.ts +4 -12
  199. package/dist/src/gateway/service/sessions-api.js +13 -0
  200. package/dist/src/gateway/service.d.ts +1 -1
  201. package/dist/src/gateway/service.js +8 -8
  202. package/dist/src/gateway/session-context-summary.d.ts +5 -0
  203. package/dist/src/gateway/session-context-summary.js +151 -0
  204. package/dist/src/heartbeat/index.js +1 -1
  205. package/dist/src/i18n/response-language.d.ts +1 -1
  206. package/dist/src/infra/update-runner.js +1 -1
  207. package/dist/src/projects/index.js +3 -3
  208. package/dist/src/projects/project-kind.d.ts +7 -0
  209. package/dist/src/projects/project-kind.js +6 -1
  210. package/dist/src/projects/project-service.js +10 -2
  211. package/dist/src/projects/project-store.d.ts +1 -0
  212. package/dist/src/projects/project-store.js +10 -7
  213. package/dist/src/projects/types.d.ts +4 -0
  214. package/dist/src/providers/auth-runtime/resolve-auth.js +1 -1
  215. package/dist/src/providers/index.js +2 -2
  216. package/dist/src/providers/model-registry.js +3 -1
  217. package/dist/src/providers/model-thinking.d.ts +4 -0
  218. package/dist/src/providers/model-thinking.js +41 -0
  219. package/dist/src/providers/register-runtime-providers.js +1 -1
  220. package/dist/src/session/config-types.d.ts +1 -0
  221. package/dist/src/session/index.js +1 -1
  222. package/dist/src/session/model-config-lock.d.ts +2 -0
  223. package/dist/src/session/model-config-lock.js +14 -0
  224. package/dist/src/session/session-workspace.d.ts +2 -1
  225. package/dist/src/session/session-workspace.js +5 -1
  226. package/dist/src/session/store.js +1 -1
  227. package/dist/src/session/turn-outcome-projector.js +9 -9
  228. package/dist/src/share/hosted-session-share.js +1 -1
  229. package/dist/src/storage/sqlite/config-repository.js +6 -5
  230. package/dist/src/storage/sqlite/device-access-repository.d.ts +2 -0
  231. package/dist/src/storage/sqlite/device-access-repository.js +12 -2
  232. package/dist/src/storage/sqlite/device-pairing-approval.d.ts +19 -0
  233. package/dist/src/storage/sqlite/device-pairing-approval.js +154 -0
  234. package/dist/src/storage/sqlite/device-pairing-repository.d.ts +1 -1
  235. package/dist/src/storage/sqlite/device-pairing-repository.js +11 -4
  236. package/dist/src/storage/sqlite/index.js +2 -2
  237. package/dist/src/storage/sqlite/migrations/141_device_pairing_approval.sql +17 -0
  238. package/dist/src/storage/sqlite/migrations/142_session_input_instance.sql +1 -0
  239. package/dist/src/storage/sqlite/migrations/143_fixed_session_model.sql +1 -0
  240. package/dist/src/storage/sqlite/migrations/144_execution_environments.sql +59 -0
  241. package/dist/src/storage/sqlite/migrations/145_project_execution_mode.sql +5 -0
  242. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  243. package/dist/src/storage/sqlite/migrations/runner.js +3 -3
  244. package/dist/src/storage/sqlite/migrations/runner.ts +1 -1
  245. package/dist/src/storage/sqlite/row-mappers.d.ts +1 -0
  246. package/dist/src/storage/sqlite/row-mappers.js +3 -2
  247. package/dist/src/storage/sqlite/schema.js +1 -1
  248. package/dist/src/storage/sqlite/session-input-repository.d.ts +5 -0
  249. package/dist/src/storage/sqlite/session-input-repository.js +15 -4
  250. package/dist/src/storage/sqlite/session-repository.js +1 -1
  251. package/dist/src/tasks/execution-context.d.ts +3 -1
  252. package/dist/src/tasks/execution-context.js +7 -2
  253. package/dist/src/tasks/home-query-service.js +2 -2
  254. package/dist/src/tui/backends/embedded-backend.js +2 -2
  255. package/dist/src/tui/components/thinking-selector.js +1 -0
  256. package/dist/src/tui/tui-settings.js +1 -1
  257. package/dist/src/tui/tui-startup-resources.js +1 -1
  258. package/dist/src/tui/tui.js +1 -1
  259. package/dist/src/user-context/config.d.ts +9 -9
  260. package/dist/src/work-discovery/service.d.ts +1 -1
  261. package/dist/src/workflows/service/workflow-run-service.js +2 -2
  262. package/package.json +3 -3
  263. package/dist/gateway/static/root/assets/agent-defaults-settings-panel-B9tkmkUj.js +0 -1
  264. package/dist/gateway/static/root/assets/agents-DTXYo-7z.js +0 -1
  265. package/dist/gateway/static/root/assets/app-management-settings-panel-DXFTk7x6.js +0 -1
  266. package/dist/gateway/static/root/assets/appearance-settings-D-FD5SOq.js +0 -1
  267. package/dist/gateway/static/root/assets/apps-page-BT102W58.js +0 -1
  268. package/dist/gateway/static/root/assets/automations-workspace-BRb45-_R.js +0 -6
  269. package/dist/gateway/static/root/assets/browser-settings-page-BkRWxC7D.js +0 -8
  270. package/dist/gateway/static/root/assets/capabilities-settings-panel-DfT-vWTA.js +0 -7
  271. package/dist/gateway/static/root/assets/channels-settings-C9oGpLR0.js +0 -1
  272. package/dist/gateway/static/root/assets/chat-terminal-dock-C_9LUs7G.js +0 -36
  273. package/dist/gateway/static/root/assets/connectors-page-SJKV6SHT.js +0 -2
  274. package/dist/gateway/static/root/assets/dependency-picker-BP68vqBI.js +0 -1
  275. package/dist/gateway/static/root/assets/desktop-pet-settings-CuG2qYoY.js +0 -1
  276. package/dist/gateway/static/root/assets/gateway-settings-C2XcazGD.js +0 -1
  277. package/dist/gateway/static/root/assets/heartbeat-settings-BjUEqkkC.js +0 -1
  278. package/dist/gateway/static/root/assets/home-page-DTSjwfAQ.js +0 -1
  279. package/dist/gateway/static/root/assets/index-BTUuTnc9.css +0 -2
  280. package/dist/gateway/static/root/assets/index-DFfvY8IN.js +0 -70
  281. package/dist/gateway/static/root/assets/local-app-workbench-page-0wntj9mK.js +0 -2
  282. package/dist/gateway/static/root/assets/local-apps-page-WeKm5vZ0.js +0 -1
  283. package/dist/gateway/static/root/assets/logs-page-DFgJr7Zx.js +0 -2
  284. package/dist/gateway/static/root/assets/management-settings-8bEvKO0R.js +0 -1
  285. package/dist/gateway/static/root/assets/markdown-view-B1bGSQqt.css +0 -1
  286. package/dist/gateway/static/root/assets/markdown-view-D02mJdoU.js +0 -201
  287. package/dist/gateway/static/root/assets/messages-CoovNoMn.js +0 -3
  288. package/dist/gateway/static/root/assets/mobile-device-api-CvjVB_TB.js +0 -1
  289. package/dist/gateway/static/root/assets/models-hub-cache-CYr6LzvY.js +0 -1
  290. package/dist/gateway/static/root/assets/notes-workbench-DIXCtwhs.js +0 -4
  291. package/dist/gateway/static/root/assets/popover-select-3E24E65N.js +0 -1
  292. package/dist/gateway/static/root/assets/product-open-page-DNHWn_26.js +0 -1
  293. package/dist/gateway/static/root/assets/project-detail-page-6jgRJg4w.js +0 -1
  294. package/dist/gateway/static/root/assets/projects-page-Bd4nXs4y.js +0 -1
  295. package/dist/gateway/static/root/assets/remote-access-hub-C_5-u9U-.js +0 -1
  296. package/dist/gateway/static/root/assets/sessions-page-BqYAR86S.js +0 -1
  297. package/dist/gateway/static/root/assets/settings-advanced-gate-a146I0uZ.js +0 -1
  298. package/dist/gateway/static/root/assets/settings-loading-skeleton-CwGM9zKH.js +0 -1
  299. package/dist/gateway/static/root/assets/setup-status-panel-rhaERxAL.js +0 -1
  300. package/dist/gateway/static/root/assets/share-preview-page-BzkXvuH6.js +0 -2
  301. package/dist/gateway/static/root/assets/shares-settings-BvsM3Im5.js +0 -1
  302. package/dist/gateway/static/root/assets/skill-reload-api-u7E0gqFo.js +0 -1
  303. package/dist/gateway/static/root/assets/system-settings-panel-BUsykmjx.js +0 -1
  304. package/dist/gateway/static/root/assets/task-detail-page-C9QgWfYG.js +0 -1
  305. package/dist/gateway/static/root/assets/user-context-page-Ch0cfQfI.js +0 -1
  306. package/dist/gateway/static/root/assets/workflows-page-DyTwkdzs.js +0 -5
  307. /package/dist/gateway/static/root/assets/{dist-DqPZM2MH2.js → dist-DqPZM2MH.js} +0 -0
@@ -30,8 +30,17 @@ export declare const OpenAICompletionsCompatSchema: z.ZodObject<{
30
30
  requiresMistralToolIds: z.ZodOptional<z.ZodBoolean>;
31
31
  thinkingFormat: z.ZodOptional<z.ZodEnum<{
32
32
  zai: "zai";
33
+ "ant-ling": "ant-ling";
33
34
  openai: "openai";
35
+ deepseek: "deepseek";
36
+ openrouter: "openrouter";
37
+ together: "together";
38
+ baseten: "baseten";
34
39
  dashscope: "dashscope";
40
+ qwen: "qwen";
41
+ "qwen-chat-template": "qwen-chat-template";
42
+ "chat-template": "chat-template";
43
+ "string-thinking": "string-thinking";
35
44
  }>>;
36
45
  openRouterRouting: z.ZodOptional<z.ZodObject<{
37
46
  only: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -59,8 +68,17 @@ export declare const OpenAICompatSchema: z.ZodUnion<readonly [z.ZodObject<{
59
68
  requiresMistralToolIds: z.ZodOptional<z.ZodBoolean>;
60
69
  thinkingFormat: z.ZodOptional<z.ZodEnum<{
61
70
  zai: "zai";
71
+ "ant-ling": "ant-ling";
62
72
  openai: "openai";
73
+ deepseek: "deepseek";
74
+ openrouter: "openrouter";
75
+ together: "together";
76
+ baseten: "baseten";
63
77
  dashscope: "dashscope";
78
+ qwen: "qwen";
79
+ "qwen-chat-template": "qwen-chat-template";
80
+ "chat-template": "chat-template";
81
+ "string-thinking": "string-thinking";
64
82
  }>>;
65
83
  openRouterRouting: z.ZodOptional<z.ZodObject<{
66
84
  only: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -98,8 +116,8 @@ export declare const ImageGenerationCapabilitiesSchema: z.ZodObject<{
98
116
  qualities: z.ZodOptional<z.ZodArray<z.ZodEnum<{
99
117
  low: "low";
100
118
  high: "high";
101
- auto: "auto";
102
119
  medium: "medium";
120
+ auto: "auto";
103
121
  }>>>;
104
122
  formats: z.ZodOptional<z.ZodArray<z.ZodEnum<{
105
123
  png: "png";
@@ -142,8 +160,8 @@ export declare const ImageGenerationModelSchema: z.ZodObject<{
142
160
  qualities: z.ZodOptional<z.ZodArray<z.ZodEnum<{
143
161
  low: "low";
144
162
  high: "high";
145
- auto: "auto";
146
163
  medium: "medium";
164
+ auto: "auto";
147
165
  }>>>;
148
166
  formats: z.ZodOptional<z.ZodArray<z.ZodEnum<{
149
167
  png: "png";
@@ -217,8 +235,8 @@ export declare const ImageGenerationProviderSchema: z.ZodObject<{
217
235
  qualities: z.ZodOptional<z.ZodArray<z.ZodEnum<{
218
236
  low: "low";
219
237
  high: "high";
220
- auto: "auto";
221
238
  medium: "medium";
239
+ auto: "auto";
222
240
  }>>>;
223
241
  formats: z.ZodOptional<z.ZodArray<z.ZodEnum<{
224
242
  png: "png";
@@ -258,9 +276,18 @@ export declare const CustomModelSchema: z.ZodObject<{
258
276
  "google-gemini-cli": "google-gemini-cli";
259
277
  }>>;
260
278
  reasoning: z.ZodOptional<z.ZodBoolean>;
279
+ thinkingLevelMap: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
280
+ low: "low";
281
+ high: "high";
282
+ off: "off";
283
+ minimal: "minimal";
284
+ medium: "medium";
285
+ xhigh: "xhigh";
286
+ max: "max";
287
+ }> & z.core.$partial, z.ZodNullable<z.ZodString>>>;
261
288
  input: z.ZodOptional<z.ZodArray<z.ZodEnum<{
262
- text: "text";
263
289
  image: "image";
290
+ text: "text";
264
291
  }>>>;
265
292
  contextWindow: z.ZodOptional<z.ZodNumber>;
266
293
  maxTokens: z.ZodOptional<z.ZodNumber>;
@@ -286,8 +313,17 @@ export declare const CustomModelSchema: z.ZodObject<{
286
313
  requiresMistralToolIds: z.ZodOptional<z.ZodBoolean>;
287
314
  thinkingFormat: z.ZodOptional<z.ZodEnum<{
288
315
  zai: "zai";
316
+ "ant-ling": "ant-ling";
289
317
  openai: "openai";
318
+ deepseek: "deepseek";
319
+ openrouter: "openrouter";
320
+ together: "together";
321
+ baseten: "baseten";
290
322
  dashscope: "dashscope";
323
+ qwen: "qwen";
324
+ "qwen-chat-template": "qwen-chat-template";
325
+ "chat-template": "chat-template";
326
+ "string-thinking": "string-thinking";
291
327
  }>>;
292
328
  openRouterRouting: z.ZodOptional<z.ZodObject<{
293
329
  only: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -303,9 +339,18 @@ export declare const CustomModelSchema: z.ZodObject<{
303
339
  export declare const ModelOverrideSchema: z.ZodObject<{
304
340
  name: z.ZodOptional<z.ZodString>;
305
341
  reasoning: z.ZodOptional<z.ZodBoolean>;
342
+ thinkingLevelMap: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
343
+ low: "low";
344
+ high: "high";
345
+ off: "off";
346
+ minimal: "minimal";
347
+ medium: "medium";
348
+ xhigh: "xhigh";
349
+ max: "max";
350
+ }> & z.core.$partial, z.ZodNullable<z.ZodString>>>;
306
351
  input: z.ZodOptional<z.ZodArray<z.ZodEnum<{
307
- text: "text";
308
352
  image: "image";
353
+ text: "text";
309
354
  }>>>;
310
355
  contextWindow: z.ZodOptional<z.ZodNumber>;
311
356
  maxTokens: z.ZodOptional<z.ZodNumber>;
@@ -331,8 +376,17 @@ export declare const ModelOverrideSchema: z.ZodObject<{
331
376
  requiresMistralToolIds: z.ZodOptional<z.ZodBoolean>;
332
377
  thinkingFormat: z.ZodOptional<z.ZodEnum<{
333
378
  zai: "zai";
379
+ "ant-ling": "ant-ling";
334
380
  openai: "openai";
381
+ deepseek: "deepseek";
382
+ openrouter: "openrouter";
383
+ together: "together";
384
+ baseten: "baseten";
335
385
  dashscope: "dashscope";
386
+ qwen: "qwen";
387
+ "qwen-chat-template": "qwen-chat-template";
388
+ "chat-template": "chat-template";
389
+ "string-thinking": "string-thinking";
336
390
  }>>;
337
391
  openRouterRouting: z.ZodOptional<z.ZodObject<{
338
392
  only: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -376,9 +430,18 @@ export declare const ProviderConfigSchema: z.ZodObject<{
376
430
  "google-gemini-cli": "google-gemini-cli";
377
431
  }>>;
378
432
  reasoning: z.ZodOptional<z.ZodBoolean>;
433
+ thinkingLevelMap: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
434
+ low: "low";
435
+ high: "high";
436
+ off: "off";
437
+ minimal: "minimal";
438
+ medium: "medium";
439
+ xhigh: "xhigh";
440
+ max: "max";
441
+ }> & z.core.$partial, z.ZodNullable<z.ZodString>>>;
379
442
  input: z.ZodOptional<z.ZodArray<z.ZodEnum<{
380
- text: "text";
381
443
  image: "image";
444
+ text: "text";
382
445
  }>>>;
383
446
  contextWindow: z.ZodOptional<z.ZodNumber>;
384
447
  maxTokens: z.ZodOptional<z.ZodNumber>;
@@ -404,8 +467,17 @@ export declare const ProviderConfigSchema: z.ZodObject<{
404
467
  requiresMistralToolIds: z.ZodOptional<z.ZodBoolean>;
405
468
  thinkingFormat: z.ZodOptional<z.ZodEnum<{
406
469
  zai: "zai";
470
+ "ant-ling": "ant-ling";
407
471
  openai: "openai";
472
+ deepseek: "deepseek";
473
+ openrouter: "openrouter";
474
+ together: "together";
475
+ baseten: "baseten";
408
476
  dashscope: "dashscope";
477
+ qwen: "qwen";
478
+ "qwen-chat-template": "qwen-chat-template";
479
+ "chat-template": "chat-template";
480
+ "string-thinking": "string-thinking";
409
481
  }>>;
410
482
  openRouterRouting: z.ZodOptional<z.ZodObject<{
411
483
  only: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -421,9 +493,18 @@ export declare const ProviderConfigSchema: z.ZodObject<{
421
493
  modelOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
422
494
  name: z.ZodOptional<z.ZodString>;
423
495
  reasoning: z.ZodOptional<z.ZodBoolean>;
496
+ thinkingLevelMap: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
497
+ low: "low";
498
+ high: "high";
499
+ off: "off";
500
+ minimal: "minimal";
501
+ medium: "medium";
502
+ xhigh: "xhigh";
503
+ max: "max";
504
+ }> & z.core.$partial, z.ZodNullable<z.ZodString>>>;
424
505
  input: z.ZodOptional<z.ZodArray<z.ZodEnum<{
425
- text: "text";
426
506
  image: "image";
507
+ text: "text";
427
508
  }>>>;
428
509
  contextWindow: z.ZodOptional<z.ZodNumber>;
429
510
  maxTokens: z.ZodOptional<z.ZodNumber>;
@@ -449,8 +530,17 @@ export declare const ProviderConfigSchema: z.ZodObject<{
449
530
  requiresMistralToolIds: z.ZodOptional<z.ZodBoolean>;
450
531
  thinkingFormat: z.ZodOptional<z.ZodEnum<{
451
532
  zai: "zai";
533
+ "ant-ling": "ant-ling";
452
534
  openai: "openai";
535
+ deepseek: "deepseek";
536
+ openrouter: "openrouter";
537
+ together: "together";
538
+ baseten: "baseten";
453
539
  dashscope: "dashscope";
540
+ qwen: "qwen";
541
+ "qwen-chat-template": "qwen-chat-template";
542
+ "chat-template": "chat-template";
543
+ "string-thinking": "string-thinking";
454
544
  }>>;
455
545
  openRouterRouting: z.ZodOptional<z.ZodObject<{
456
546
  only: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -516,8 +606,8 @@ export declare const ProviderConfigSchema: z.ZodObject<{
516
606
  qualities: z.ZodOptional<z.ZodArray<z.ZodEnum<{
517
607
  low: "low";
518
608
  high: "high";
519
- auto: "auto";
520
609
  medium: "medium";
610
+ auto: "auto";
521
611
  }>>>;
522
612
  formats: z.ZodOptional<z.ZodArray<z.ZodEnum<{
523
613
  png: "png";
@@ -575,9 +665,18 @@ export declare const ModelsJsonSchema: z.ZodObject<{
575
665
  "google-gemini-cli": "google-gemini-cli";
576
666
  }>>;
577
667
  reasoning: z.ZodOptional<z.ZodBoolean>;
668
+ thinkingLevelMap: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
669
+ low: "low";
670
+ high: "high";
671
+ off: "off";
672
+ minimal: "minimal";
673
+ medium: "medium";
674
+ xhigh: "xhigh";
675
+ max: "max";
676
+ }> & z.core.$partial, z.ZodNullable<z.ZodString>>>;
578
677
  input: z.ZodOptional<z.ZodArray<z.ZodEnum<{
579
- text: "text";
580
678
  image: "image";
679
+ text: "text";
581
680
  }>>>;
582
681
  contextWindow: z.ZodOptional<z.ZodNumber>;
583
682
  maxTokens: z.ZodOptional<z.ZodNumber>;
@@ -603,8 +702,17 @@ export declare const ModelsJsonSchema: z.ZodObject<{
603
702
  requiresMistralToolIds: z.ZodOptional<z.ZodBoolean>;
604
703
  thinkingFormat: z.ZodOptional<z.ZodEnum<{
605
704
  zai: "zai";
705
+ "ant-ling": "ant-ling";
606
706
  openai: "openai";
707
+ deepseek: "deepseek";
708
+ openrouter: "openrouter";
709
+ together: "together";
710
+ baseten: "baseten";
607
711
  dashscope: "dashscope";
712
+ qwen: "qwen";
713
+ "qwen-chat-template": "qwen-chat-template";
714
+ "chat-template": "chat-template";
715
+ "string-thinking": "string-thinking";
608
716
  }>>;
609
717
  openRouterRouting: z.ZodOptional<z.ZodObject<{
610
718
  only: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -620,9 +728,18 @@ export declare const ModelsJsonSchema: z.ZodObject<{
620
728
  modelOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
621
729
  name: z.ZodOptional<z.ZodString>;
622
730
  reasoning: z.ZodOptional<z.ZodBoolean>;
731
+ thinkingLevelMap: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
732
+ low: "low";
733
+ high: "high";
734
+ off: "off";
735
+ minimal: "minimal";
736
+ medium: "medium";
737
+ xhigh: "xhigh";
738
+ max: "max";
739
+ }> & z.core.$partial, z.ZodNullable<z.ZodString>>>;
623
740
  input: z.ZodOptional<z.ZodArray<z.ZodEnum<{
624
- text: "text";
625
741
  image: "image";
742
+ text: "text";
626
743
  }>>>;
627
744
  contextWindow: z.ZodOptional<z.ZodNumber>;
628
745
  maxTokens: z.ZodOptional<z.ZodNumber>;
@@ -648,8 +765,17 @@ export declare const ModelsJsonSchema: z.ZodObject<{
648
765
  requiresMistralToolIds: z.ZodOptional<z.ZodBoolean>;
649
766
  thinkingFormat: z.ZodOptional<z.ZodEnum<{
650
767
  zai: "zai";
768
+ "ant-ling": "ant-ling";
651
769
  openai: "openai";
770
+ deepseek: "deepseek";
771
+ openrouter: "openrouter";
772
+ together: "together";
773
+ baseten: "baseten";
652
774
  dashscope: "dashscope";
775
+ qwen: "qwen";
776
+ "qwen-chat-template": "qwen-chat-template";
777
+ "chat-template": "chat-template";
778
+ "string-thinking": "string-thinking";
653
779
  }>>;
654
780
  openRouterRouting: z.ZodOptional<z.ZodObject<{
655
781
  only: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -715,8 +841,8 @@ export declare const ModelsJsonSchema: z.ZodObject<{
715
841
  qualities: z.ZodOptional<z.ZodArray<z.ZodEnum<{
716
842
  low: "low";
717
843
  high: "high";
718
- auto: "auto";
719
844
  medium: "medium";
845
+ auto: "auto";
720
846
  }>>>;
721
847
  formats: z.ZodOptional<z.ZodArray<z.ZodEnum<{
722
848
  png: "png";
@@ -1,6 +1,6 @@
1
1
  import { __esmMin } from "../../_virtual/_rolldown/runtime.js";
2
- import { init_write_file_atomic, writeTextAtomicSync } from "../infra/write-file-atomic.js";
3
2
  import { init_paths, resolveModelsJsonPath } from "./paths.js";
3
+ import { init_write_file_atomic, writeTextAtomicSync } from "../infra/write-file-atomic.js";
4
4
  import { existsSync, readFileSync } from "fs";
5
5
  import { z } from "zod";
6
6
  //#region src/config/models-json.ts
@@ -239,7 +239,16 @@ var init_models_json = __esmMin((() => {
239
239
  thinkingFormat: z.enum([
240
240
  "openai",
241
241
  "zai",
242
- "dashscope"
242
+ "dashscope",
243
+ "qwen",
244
+ "qwen-chat-template",
245
+ "chat-template",
246
+ "deepseek",
247
+ "openrouter",
248
+ "together",
249
+ "string-thinking",
250
+ "baseten",
251
+ "ant-ling"
243
252
  ]).optional(),
244
253
  openRouterRouting: OpenRouterRoutingSchema.optional(),
245
254
  vercelGatewayRouting: VercelGatewayRoutingSchema.optional(),
@@ -338,6 +347,15 @@ var init_models_json = __esmMin((() => {
338
347
  "google-vertex"
339
348
  ]).optional(),
340
349
  reasoning: z.boolean().optional(),
350
+ thinkingLevelMap: z.partialRecord(z.enum([
351
+ "off",
352
+ "minimal",
353
+ "low",
354
+ "medium",
355
+ "high",
356
+ "xhigh",
357
+ "max"
358
+ ]), z.string().nullable()).optional(),
341
359
  input: z.array(z.enum(["text", "image"])).optional(),
342
360
  contextWindow: z.number().positive().optional(),
343
361
  maxTokens: z.number().positive().optional(),
@@ -353,6 +371,15 @@ var init_models_json = __esmMin((() => {
353
371
  ModelOverrideSchema = z.object({
354
372
  name: z.string().min(1).optional(),
355
373
  reasoning: z.boolean().optional(),
374
+ thinkingLevelMap: z.partialRecord(z.enum([
375
+ "off",
376
+ "minimal",
377
+ "low",
378
+ "medium",
379
+ "high",
380
+ "xhigh",
381
+ "max"
382
+ ]), z.string().nullable()).optional(),
356
383
  input: z.array(z.enum(["text", "image"])).optional(),
357
384
  contextWindow: z.number().positive().optional(),
358
385
  maxTokens: z.number().positive().optional(),
@@ -27,11 +27,11 @@ export declare const AgentModelsSchema: z.ZodObject<{
27
27
  fallbacks: z.ZodDefault<z.ZodArray<z.ZodString>>;
28
28
  }, z.core.$strict>>;
29
29
  intents: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
30
+ review: "review";
31
+ coding: "coding";
30
32
  understanding: "understanding";
31
33
  fast: "fast";
32
34
  reasoning: "reasoning";
33
- coding: "coding";
34
- review: "review";
35
35
  vision: "vision";
36
36
  }> & z.core.$partial, z.ZodNullable<z.ZodObject<{
37
37
  primary: z.ZodString;
@@ -58,11 +58,11 @@ export declare const AgentsConfigSchema: z.ZodDefault<z.ZodObject<{
58
58
  fallbacks: z.ZodDefault<z.ZodArray<z.ZodString>>;
59
59
  }, z.core.$strict>;
60
60
  intents: z.ZodDefault<z.ZodRecord<z.ZodEnum<{
61
+ review: "review";
62
+ coding: "coding";
61
63
  understanding: "understanding";
62
64
  fast: "fast";
63
65
  reasoning: "reasoning";
64
- coding: "coding";
65
- review: "review";
66
66
  vision: "vision";
67
67
  }> & z.core.$partial, z.ZodObject<{
68
68
  primary: z.ZodString;
@@ -129,11 +129,11 @@ export declare const AgentsConfigSchema: z.ZodDefault<z.ZodObject<{
129
129
  fallbacks: z.ZodDefault<z.ZodArray<z.ZodString>>;
130
130
  }, z.core.$strict>>;
131
131
  intents: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
132
+ review: "review";
133
+ coding: "coding";
132
134
  understanding: "understanding";
133
135
  fast: "fast";
134
136
  reasoning: "reasoning";
135
- coding: "coding";
136
- review: "review";
137
137
  vision: "vision";
138
138
  }> & z.core.$partial, z.ZodNullable<z.ZodObject<{
139
139
  primary: z.ZodString;
@@ -1379,9 +1379,9 @@ export declare const ConfigSchema: z.ZodDefault<z.ZodObject<{
1379
1379
  enabled: z.ZodDefault<z.ZodBoolean>;
1380
1380
  preferences: z.ZodDefault<z.ZodObject<{
1381
1381
  responseLanguage: z.ZodDefault<z.ZodEnum<{
1382
+ en: "en";
1382
1383
  auto: "auto";
1383
1384
  "zh-CN": "zh-CN";
1384
- en: "en";
1385
1385
  }>>;
1386
1386
  }, z.core.$strict>>;
1387
1387
  memory: z.ZodDefault<z.ZodObject<{
@@ -1400,18 +1400,18 @@ export declare const ConfigSchema: z.ZodDefault<z.ZodObject<{
1400
1400
  writePolicy: z.ZodOptional<z.ZodObject<{
1401
1401
  agentProfile: z.ZodOptional<z.ZodEnum<{
1402
1402
  allow: "allow";
1403
- deny: "deny";
1404
1403
  confirm: "confirm";
1404
+ deny: "deny";
1405
1405
  }>>;
1406
1406
  understanding: z.ZodOptional<z.ZodEnum<{
1407
1407
  allow: "allow";
1408
- deny: "deny";
1409
1408
  confirm: "confirm";
1409
+ deny: "deny";
1410
1410
  }>>;
1411
1411
  workspace: z.ZodOptional<z.ZodEnum<{
1412
1412
  allow: "allow";
1413
- deny: "deny";
1414
1413
  confirm: "confirm";
1414
+ deny: "deny";
1415
1415
  }>>;
1416
1416
  }, z.core.$strict>>;
1417
1417
  retention: z.ZodOptional<z.ZodObject<{
@@ -1452,8 +1452,8 @@ export declare const ConfigSchema: z.ZodDefault<z.ZodObject<{
1452
1452
  privacy: z.ZodDefault<z.ZodObject<{
1453
1453
  sensitiveWritePolicy: z.ZodDefault<z.ZodEnum<{
1454
1454
  allow: "allow";
1455
- deny: "deny";
1456
1455
  confirm: "confirm";
1456
+ deny: "deny";
1457
1457
  }>>;
1458
1458
  }, z.core.$strict>>;
1459
1459
  providerRouting: z.ZodDefault<z.ZodObject<{
@@ -1497,11 +1497,11 @@ export declare const ConfigSchema: z.ZodDefault<z.ZodObject<{
1497
1497
  fallbacks: z.ZodDefault<z.ZodArray<z.ZodString>>;
1498
1498
  }, z.core.$strict>;
1499
1499
  intents: z.ZodDefault<z.ZodRecord<z.ZodEnum<{
1500
+ review: "review";
1501
+ coding: "coding";
1500
1502
  understanding: "understanding";
1501
1503
  fast: "fast";
1502
1504
  reasoning: "reasoning";
1503
- coding: "coding";
1504
- review: "review";
1505
1505
  vision: "vision";
1506
1506
  }> & z.core.$partial, z.ZodObject<{
1507
1507
  primary: z.ZodString;
@@ -1568,11 +1568,11 @@ export declare const ConfigSchema: z.ZodDefault<z.ZodObject<{
1568
1568
  fallbacks: z.ZodDefault<z.ZodArray<z.ZodString>>;
1569
1569
  }, z.core.$strict>>;
1570
1570
  intents: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
1571
+ review: "review";
1572
+ coding: "coding";
1571
1573
  understanding: "understanding";
1572
1574
  fast: "fast";
1573
1575
  reasoning: "reasoning";
1574
- coding: "coding";
1575
- review: "review";
1576
1576
  vision: "vision";
1577
1577
  }> & z.core.$partial, z.ZodNullable<z.ZodObject<{
1578
1578
  primary: z.ZodString;
@@ -0,0 +1,27 @@
1
+ export interface GitRepositoryInfo {
2
+ repositoryRoot: string;
3
+ gitCommonDir: string;
4
+ headSha: string;
5
+ branchRef?: string;
6
+ dirty: boolean;
7
+ }
8
+ export interface GitWorktreeEntry {
9
+ path: string;
10
+ headSha?: string;
11
+ branchRef?: string;
12
+ bare: boolean;
13
+ detached: boolean;
14
+ locked: boolean;
15
+ prunable: boolean;
16
+ }
17
+ export declare class GitExecutionError extends Error {
18
+ constructor(message: string, options?: {
19
+ cause?: unknown;
20
+ });
21
+ }
22
+ export declare function runGit(cwd: string, args: string[]): Promise<string>;
23
+ export declare function inspectGitRepository(workspacePath: string): Promise<GitRepositoryInfo>;
24
+ export declare function resolveGitCommit(repositoryRoot: string, ref: string): Promise<string>;
25
+ export declare function parseGitWorktreeList(output: string): GitWorktreeEntry[];
26
+ export declare function listGitWorktrees(repositoryRoot: string): Promise<GitWorktreeEntry[]>;
27
+ export declare function findGitWorktree(repositoryRoot: string, worktreePath: string): Promise<GitWorktreeEntry | undefined>;
@@ -0,0 +1,125 @@
1
+ import { runExec } from "../infra/exec.js";
2
+ import { isAbsolute, resolve } from "node:path";
3
+ import { realpath } from "node:fs/promises";
4
+ //#region src/execution-environments/git.ts
5
+ const GIT_TIMEOUT_MS = 3e4;
6
+ const MAX_ERROR_OUTPUT = 2e3;
7
+ var GitExecutionError = class extends Error {
8
+ constructor(message, options) {
9
+ super(message, options);
10
+ this.name = "GitExecutionError";
11
+ }
12
+ };
13
+ function errorOutput(error) {
14
+ if (!error || typeof error !== "object") return String(error);
15
+ const value = error;
16
+ return [
17
+ value.stderr,
18
+ value.stdout,
19
+ value.message
20
+ ].filter((part) => typeof part === "string" && Boolean(part.trim())).join("\n").trim().slice(-MAX_ERROR_OUTPUT);
21
+ }
22
+ async function runGit(cwd, args) {
23
+ try {
24
+ return (await runExec("git", args, {
25
+ cwd,
26
+ timeoutMs: GIT_TIMEOUT_MS,
27
+ maxBuffer: 8 * 1024 * 1024
28
+ })).stdout;
29
+ } catch (error) {
30
+ throw new GitExecutionError(`git ${args[0] ?? "command"} failed: ${errorOutput(error)}`, { cause: error });
31
+ }
32
+ }
33
+ async function canonicalPath(path) {
34
+ return realpath(path).catch(() => resolve(path));
35
+ }
36
+ async function inspectGitRepository(workspacePath) {
37
+ const repositoryRoot = await canonicalPath((await runGit(workspacePath, ["rev-parse", "--show-toplevel"])).trim());
38
+ const rawCommonDir = (await runGit(repositoryRoot, ["rev-parse", "--git-common-dir"])).trim();
39
+ const gitCommonDir = await canonicalPath(isAbsolute(rawCommonDir) ? rawCommonDir : resolve(repositoryRoot, rawCommonDir));
40
+ const headSha = (await runGit(repositoryRoot, [
41
+ "rev-parse",
42
+ "--verify",
43
+ "HEAD^{commit}"
44
+ ])).trim();
45
+ const branchRef = (await runGit(repositoryRoot, [
46
+ "symbolic-ref",
47
+ "--quiet",
48
+ "--short",
49
+ "HEAD"
50
+ ]).catch(() => "")).trim();
51
+ const dirty = Boolean((await runGit(repositoryRoot, [
52
+ "status",
53
+ "--porcelain=v1",
54
+ "-z",
55
+ "--untracked-files=all"
56
+ ])).length);
57
+ return {
58
+ repositoryRoot,
59
+ gitCommonDir,
60
+ headSha,
61
+ ...branchRef ? { branchRef } : {},
62
+ dirty
63
+ };
64
+ }
65
+ async function resolveGitCommit(repositoryRoot, ref) {
66
+ const normalized = ref.trim();
67
+ if (!normalized) throw new Error("Git starting ref is required");
68
+ return (await runGit(repositoryRoot, [
69
+ "rev-parse",
70
+ "--verify",
71
+ `${normalized}^{commit}`
72
+ ])).trim();
73
+ }
74
+ function parseGitWorktreeList(output) {
75
+ const entries = [];
76
+ let current;
77
+ const pushCurrent = () => {
78
+ if (current) entries.push(current);
79
+ current = void 0;
80
+ };
81
+ for (const token of output.split("\0")) {
82
+ if (!token) {
83
+ pushCurrent();
84
+ continue;
85
+ }
86
+ const separator = token.indexOf(" ");
87
+ const key = separator === -1 ? token : token.slice(0, separator);
88
+ const value = separator === -1 ? "" : token.slice(separator + 1);
89
+ if (key === "worktree") {
90
+ pushCurrent();
91
+ current = {
92
+ path: value,
93
+ bare: false,
94
+ detached: false,
95
+ locked: false,
96
+ prunable: false
97
+ };
98
+ continue;
99
+ }
100
+ if (!current) continue;
101
+ if (key === "HEAD") current.headSha = value;
102
+ else if (key === "branch") current.branchRef = value;
103
+ else if (key === "bare") current.bare = true;
104
+ else if (key === "detached") current.detached = true;
105
+ else if (key === "locked") current.locked = true;
106
+ else if (key === "prunable") current.prunable = true;
107
+ }
108
+ pushCurrent();
109
+ return entries;
110
+ }
111
+ async function listGitWorktrees(repositoryRoot) {
112
+ return parseGitWorktreeList(await runGit(repositoryRoot, [
113
+ "worktree",
114
+ "list",
115
+ "--porcelain",
116
+ "-z"
117
+ ]));
118
+ }
119
+ async function findGitWorktree(repositoryRoot, worktreePath) {
120
+ const expected = await canonicalPath(worktreePath);
121
+ const entries = await listGitWorktrees(repositoryRoot);
122
+ for (const entry of entries) if (await canonicalPath(entry.path) === expected) return entry;
123
+ }
124
+ //#endregion
125
+ export { GitExecutionError, findGitWorktree, inspectGitRepository, listGitWorktrees, parseGitWorktreeList, resolveGitCommit, runGit };
@@ -0,0 +1,7 @@
1
+ export { ExecutionEnvironmentStore } from './store.js';
2
+ export { SessionEnvironmentService } from './session-environment-service.js';
3
+ export { getExecutionEnvironmentForSession } from './subject.js';
4
+ export { LocalWorktreeManager, type LocalWorktreeInspection } from './local-worktree-manager.js';
5
+ export { resolveExecutionWorktreesRoot, resolveManagedWorktreePath } from './paths.js';
6
+ export { GitExecutionError, inspectGitRepository, listGitWorktrees, parseGitWorktreeList, resolveGitCommit, type GitRepositoryInfo, type GitWorktreeEntry, } from './git.js';
7
+ export { EXECUTION_ENVIRONMENT_KINDS, EXECUTION_ENVIRONMENT_STATUSES, ExecutionEnvironmentConflictError, ExecutionEnvironmentNotFoundError, canTransitionExecutionEnvironment, type BindExecutionEnvironmentInput, type CreateExecutionEnvironmentInput, type ExecutionEnvironment, type ExecutionEnvironmentBinding, type ExecutionEnvironmentEvent, type ExecutionEnvironmentKind, type ExecutionEnvironmentListQuery, type ExecutionEnvironmentStatus, type TransitionExecutionEnvironmentInput, } from './types.js';
@@ -0,0 +1,8 @@
1
+ import { EXECUTION_ENVIRONMENT_KINDS, EXECUTION_ENVIRONMENT_STATUSES, ExecutionEnvironmentConflictError, ExecutionEnvironmentNotFoundError, canTransitionExecutionEnvironment } from "./types.js";
2
+ import { ExecutionEnvironmentStore } from "./store.js";
3
+ import { getExecutionEnvironmentForSession } from "./subject.js";
4
+ import { GitExecutionError, inspectGitRepository, listGitWorktrees, parseGitWorktreeList, resolveGitCommit } from "./git.js";
5
+ import { resolveExecutionWorktreesRoot, resolveManagedWorktreePath } from "./paths.js";
6
+ import { LocalWorktreeManager } from "./local-worktree-manager.js";
7
+ import { SessionEnvironmentService } from "./session-environment-service.js";
8
+ export { EXECUTION_ENVIRONMENT_KINDS, EXECUTION_ENVIRONMENT_STATUSES, ExecutionEnvironmentConflictError, ExecutionEnvironmentNotFoundError, ExecutionEnvironmentStore, GitExecutionError, LocalWorktreeManager, SessionEnvironmentService, canTransitionExecutionEnvironment, getExecutionEnvironmentForSession, inspectGitRepository, listGitWorktrees, parseGitWorktreeList, resolveExecutionWorktreesRoot, resolveGitCommit, resolveManagedWorktreePath };