@openhands/agent-canvas 1.7.2 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (599) hide show
  1. package/README.md +1 -1
  2. package/README.windows.md +2 -2
  3. package/build/assets/{Trans-DP5rcauH.js → Trans-Bwpzk1wT.js} +1 -1
  4. package/build/assets/{acp-providers-BHKZvEm5.js → acp-providers-C921BlYB.js} +1 -1
  5. package/build/assets/active-backend-context-BiwzkzDy.js +2 -0
  6. package/build/assets/agent-context-settings-DXNT_dcw.js +1 -0
  7. package/build/assets/agent-profiles-settings-BymJf3EP.js +1 -0
  8. package/build/assets/agent-server-conversation-service.api-CYSWw-2g.js +41 -0
  9. package/build/assets/agent-settings-BjgQQe-_.js +1 -0
  10. package/build/assets/{agent-settings-BIOsUglV.js → agent-settings-WzqXk6B4.js} +2 -2
  11. package/build/assets/{alert-banner-C1nzoXBC.js → alert-banner-DR8EVyZM.js} +1 -1
  12. package/build/assets/api-error-message-e16L1kwH.js +1 -0
  13. package/build/assets/api-key-entry-screen-DI0I04O3.js +1 -0
  14. package/build/assets/app-settings-DGistSFV.js +1 -0
  15. package/build/assets/automation-C_eCrGyP.js +1 -0
  16. package/build/assets/automation-detail-DY6x2FW1.js +2 -0
  17. package/build/assets/automation-export-C09f-Lua.js +2 -0
  18. package/build/assets/automation-setup-route-CqKp0717.js +1 -0
  19. package/build/assets/automations-list-CqWJ7qXW.js +1 -0
  20. package/build/assets/{back-nav-button-Be_L157B.js → back-nav-button-D4ngzpSh.js} +1 -1
  21. package/build/assets/backend-form-modal-B8D5hBzK.js +1 -0
  22. package/build/assets/{backend-synced-settings-badge-BNpEylNP.js → backend-synced-settings-badge-BnzI8Ysj.js} +1 -1
  23. package/build/assets/{badge-DwgrwohM.js → badge-1Mf1iPcX.js} +1 -1
  24. package/build/assets/{base-modal-CSHhJTSr.js → base-modal-BBuy0WQQ.js} +1 -1
  25. package/build/assets/{brand-button-CQO8oqVo.js → brand-button-DGN6Y9o6.js} +1 -1
  26. package/build/assets/browser-D_ekTlTS.js +6 -0
  27. package/build/assets/{browser-tab-CEApjoEV.js → browser-tab-D4a4Ou_w.js} +1 -1
  28. package/build/assets/{chat-send-button-D4614wUz.js → chat-send-button-CgbcjD97.js} +1 -1
  29. package/build/assets/check-CPLXgluF.js +1 -0
  30. package/build/assets/chevron-down-CP4QHvyc.js +1 -0
  31. package/build/assets/circle-check-Dpy2_xSI.js +1 -0
  32. package/build/assets/{circle-plus-check-toggle-E3Ecb_gg.js → circle-plus-check-toggle-yTAS-nX3.js} +1 -1
  33. package/build/assets/cloud-funnel-analytics-CEOl5Gxr.js +1 -0
  34. package/build/assets/{combobox-caret-C8_eGdp2.js → combobox-caret-Bd2yySnF.js} +1 -1
  35. package/build/assets/command-menu-Bj6X4ckE.js +1 -0
  36. package/build/assets/condenser-settings-EAXQNR2E.js +1 -0
  37. package/build/assets/{confirmation-modal-gZtbojCm.js → confirmation-modal-NCUPr2-O.js} +1 -1
  38. package/build/assets/{context-menu-list-item-BTHGFhIx.js → context-menu-list-item-CrCrYuPF.js} +1 -1
  39. package/build/assets/conversation-BzyIcSwr.js +1 -0
  40. package/build/assets/conversation-CUJ0Vo8g.js +90 -0
  41. package/build/assets/conversation-panel-BzyIcSwr.js +1 -0
  42. package/build/assets/conversation-state-store-F62HvuI1.js +1 -0
  43. package/build/assets/{conversation-tab-empty-state-BCMHkGQk.js → conversation-tab-empty-state-BCZ7rUMH.js} +1 -1
  44. package/build/assets/{copy-B8Y5ufoR.js → copy-DCmZtz6n.js} +1 -1
  45. package/build/assets/{copy-to-clipboard-button-C4l3CMSd.js → copy-to-clipboard-button-D_Lp6-Fl.js} +1 -1
  46. package/build/assets/{device-verify-C_M7Z8xs.js → device-verify-DLmolX8Q.js} +1 -1
  47. package/build/assets/{dropdown-classes-DQlj-MpS.js → dropdown-classes-BB8rzqXL.js} +1 -1
  48. package/build/assets/{entry.client-DETaouwO.js → entry.client-BbIYOsIg.js} +2 -2
  49. package/build/assets/{enum-filter-dropdown-paB-lFSP.js → enum-filter-dropdown-C08-srev.js} +1 -1
  50. package/build/assets/{environment-switch-overlay-D0FgCMqs.js → environment-switch-overlay-BepBBX66.js} +1 -1
  51. package/build/assets/extensions-hub-R3KNv-5V.js +1 -0
  52. package/build/assets/extensions-navigation-CfWFmI1I.js +1 -0
  53. package/build/assets/{external-link-Cnnd6ikC.js → external-link-BdBSg8rk.js} +1 -1
  54. package/build/assets/files-tab-DEq8MbHu.js +1 -0
  55. package/build/assets/{form-control-classes-CSPevi7c.js → form-control-classes-DAfsCJTe.js} +1 -1
  56. package/build/assets/{format-time-delta-DuhE50B-.js → format-time-delta-CxfPJpzC.js} +1 -1
  57. package/build/assets/git-provider-icon-BZqqUPlm.js +1 -0
  58. package/build/assets/git-repo-dropdown-9WKINV6J.js +1 -0
  59. package/build/assets/git-repo-dropdown-DEpOwUez.js +1 -0
  60. package/build/assets/{highlighted-source-view-suUKd5if.js → highlighted-source-view-CX9oIoVT.js} +1 -1
  61. package/build/assets/home-CY0JaxiY.js +1 -0
  62. package/build/assets/home-CaNWlVvB.js +1 -0
  63. package/build/assets/home-store-Ch1ErdBc.js +1 -0
  64. package/build/assets/index-home-CaNWlVvB.js +1 -0
  65. package/build/assets/info-CmWQXtRQ.js +1 -0
  66. package/build/assets/install-server-modal-BWrudmZU.js +1 -0
  67. package/build/assets/{launch-Ccnhte5b.js → launch-B1POpHuP.js} +1 -1
  68. package/build/assets/{list-todo-_BXQzOiB.js → list-todo-DtiL3lTp.js} +1 -1
  69. package/build/assets/llm-not-configured-banner-3tMsM4K6.js +27 -0
  70. package/build/assets/llm-settings-CXo8iPNW.js +1 -0
  71. package/build/assets/llm-settings-D0W8mJDk.js +1 -0
  72. package/build/assets/{llm-subscription-service-W5BprsNA.js → llm-subscription-service-DBJbfd8Z.js} +1 -1
  73. package/build/assets/loader-circle-B4QDBARx.js +1 -0
  74. package/build/assets/{loading-spinner-CcpnCr_d.js → loading-spinner-DfZ_bhV7.js} +1 -1
  75. package/build/assets/manage-backends-modal-CwyWsiag.js +1 -0
  76. package/build/assets/manifest-39f4789d.js +1 -0
  77. package/build/assets/{markdown-renderer-CvOO0YIr.js → markdown-renderer-DgiLLhW6.js} +6 -6
  78. package/build/assets/mcp-DXG9LWrI.js +9 -0
  79. package/build/assets/mcp-marketplace-utils-DFmhKc5s.js +1 -0
  80. package/build/assets/messages-kBjKaAeA.js +40 -0
  81. package/build/assets/{modal-body-DQhiw-AR.js → modal-body-CMsDpalT.js} +1 -1
  82. package/build/assets/{modal-classes-YaEEa5eZ.js → modal-classes-B6PDrxXo.js} +1 -1
  83. package/build/assets/{modal-close-button-turIYn0t.js → modal-close-button-DyxBZaAb.js} +1 -1
  84. package/build/assets/{onboarding-BegDrOKn.js → onboarding-47hh2IHA.js} +1 -1
  85. package/build/assets/onboarding-modal-9BuvvROo.js +1 -0
  86. package/build/assets/organization-service.api-UDy63-oC.js +1 -0
  87. package/build/assets/{pencil-8_lvWDoZ.js → pencil-BjgtZmWp.js} +1 -1
  88. package/build/assets/{planner-tab-w6HT0N_A.js → planner-tab-BWk8885v.js} +1 -1
  89. package/build/assets/plugins-management-service-CjkgF2dd.js +1 -0
  90. package/build/assets/plus-DrKuuvMe.js +1 -0
  91. package/build/assets/profiles-service.api-CukSFLzz.js +1 -0
  92. package/build/assets/providers-CqUWC85T.js +1 -0
  93. package/build/assets/proxy-BBUG3sd2.js +1 -0
  94. package/build/assets/{puzzle-DXWdfaa7.js → puzzle-BoNc6zZ8.js} +1 -1
  95. package/build/assets/recommended-automations-launcher-ejxy1P27.js +1 -0
  96. package/build/assets/{refresh-cw-D7CYLy-d.js → refresh-cw-BrM5ZAZD.js} +1 -1
  97. package/build/assets/root-5S-M8SYa.js +2 -0
  98. package/build/assets/root-DZ39lS5f.css +1 -0
  99. package/build/assets/root-layout-BPqoa0gv.js +3 -0
  100. package/build/assets/schema-field-nImDoY6-.js +1 -0
  101. package/build/assets/{sdk-section-page-BW-i45yr.js → sdk-section-page-BxMrtUNV.js} +1 -1
  102. package/build/assets/search-Dc2qR4O2.js +1 -0
  103. package/build/assets/secrets-service-Dhjh3HhH.js +1 -0
  104. package/build/assets/{secrets-settings-D7U1ErCH.js → secrets-settings-CPdxceT_.js} +1 -1
  105. package/build/assets/segmented-toggle-Do6oyepX.js +1 -0
  106. package/build/assets/settings-BRbnfKEm.js +1 -0
  107. package/build/assets/{settings-dropdown-input-Dx6vlkgf.js → settings-dropdown-input-DYCULKpp.js} +1 -1
  108. package/build/assets/{settings-index-COAdxm2Q.js → settings-index-C9o2NBO0.js} +1 -1
  109. package/build/assets/settings-input-B-q2gkVy.js +1 -0
  110. package/build/assets/{settings-list-classes-gQdBahdt.js → settings-list-classes-WpQi0q1L.js} +1 -1
  111. package/build/assets/{settings-modal-CFnbQ8_4.js → settings-modal-CEK0AIx6.js} +1 -1
  112. package/build/assets/settings-service.api-CZiPD8__.js +1 -0
  113. package/build/assets/{settings-switch-UNSf8K8I.js → settings-switch-LqKdGxHL.js} +1 -1
  114. package/build/assets/shared-conversation-Bu-dQlgp.js +1 -0
  115. package/build/assets/{sidebar-layout-DXHtbEj1.js → sidebar-layout-oHBGQmLh.js} +1 -1
  116. package/build/assets/{sidebar-mobile-menu-toggle-U78hQRJ1.js → sidebar-mobile-menu-toggle-ND-hgygu.js} +1 -1
  117. package/build/assets/{sidebar-nav-link-pvUivfK2.js → sidebar-nav-link-CrujNA09.js} +1 -1
  118. package/build/assets/{sidebar-store-DwrYKwYr.js → sidebar-store-Bui-WNEr.js} +1 -1
  119. package/build/assets/{skill-card-pill-row-D7XCz5uk.js → skill-card-pill-row-CZBI7OqH.js} +1 -1
  120. package/build/assets/{skill-icon-badge-HqBWZ2Eq.js → skill-icon-badge-BOov_phZ.js} +1 -1
  121. package/build/assets/{skills-plugins-BPhaNpfx.js → skills-plugins-D0PiHWAD.js} +1 -1
  122. package/build/assets/{skills-settings-CcwMtnnJ.js → skills-settings-B43KArIz.js} +2 -2
  123. package/build/assets/{styled-tooltip-DsjDnR_W.js → styled-tooltip-C7grwnOX.js} +1 -1
  124. package/build/assets/{task-list-tab-BmaTwjaS.js → task-list-tab-R3ac6m7O.js} +1 -1
  125. package/build/assets/{terminal-BRcoba5B.js → terminal-yqkNdEAx.js} +1 -1
  126. package/build/assets/{toggle-switch-BptY3XRG.js → toggle-switch-BeSrbgCg.js} +1 -1
  127. package/build/assets/{trash-2-Bq4lHbTB.js → trash-2-wW5TWcdN.js} +1 -1
  128. package/build/assets/{typography-C6fuRTTT.js → typography-iYhzLlHO.js} +1 -1
  129. package/build/assets/{use-acp-credential-form-B0_pZ_uS.js → use-acp-credential-form-DUxbxmbq.js} +1 -1
  130. package/build/assets/use-activate-agent-profile-CDHA52tC.js +1 -0
  131. package/build/assets/use-agent-profiles-TsOdIyw5.js +1 -0
  132. package/build/assets/{use-can-manage-org-profiles-CrG1km7R.js → use-can-manage-org-profiles-Bt1M71u5.js} +1 -1
  133. package/build/assets/use-cloud-current-user-id-DWt7HCgf.js +1 -0
  134. package/build/assets/{use-config-Csy8EAP9.js → use-config-CxlEdf_v.js} +1 -1
  135. package/build/assets/{use-create-conversation-Dsa4nzU9.js → use-create-conversation-nOJ6Um5h.js} +1 -1
  136. package/build/assets/{use-create-secret-BnxuAjDt.js → use-create-secret-Dj5ang9x.js} +1 -1
  137. package/build/assets/use-is-authed-BT7Iud4U.js +1 -0
  138. package/build/assets/{use-is-creating-conversation-CIAcnd8M.js → use-is-creating-conversation-CAggrM75.js} +1 -1
  139. package/build/assets/use-llm-profiles-2Wc2db8u.js +1 -0
  140. package/build/assets/use-onboarding-completion-gxQlcEy2.js +1 -0
  141. package/build/assets/use-plugins-marketplace-CVO7sXYR.js +1 -0
  142. package/build/assets/use-save-agent-profile-D0wC5ExW.js +1 -0
  143. package/build/assets/{use-save-settings-BRh9p_fv.js → use-save-settings-L3aMaDeS.js} +1 -1
  144. package/build/assets/use-settings-8nt3DGxW.js +1 -0
  145. package/build/assets/use-settings-nav-items-DHAAD-zk.js +16 -0
  146. package/build/assets/use-skills-CE6miQ3r.js +1 -0
  147. package/build/assets/use-tracking-BGboadaZ.js +68 -0
  148. package/build/assets/{use-user-conversation-GnGhs_Ob.js → use-user-conversation-BIIpGUgM.js} +1 -1
  149. package/build/assets/useInfiniteQuery-BLRVmVPU.js +1 -0
  150. package/build/assets/{useMutation-DyQXZFEF.js → useMutation-CaSHLnX0.js} +1 -1
  151. package/build/assets/{useQueries-B3T1a7qt.js → useQueries--d_WWAzc.js} +1 -1
  152. package/build/assets/{useQuery-B38jBavx.js → useQuery-DiPh8LRJ.js} +1 -1
  153. package/build/assets/utils-BgGG1znF.js +1 -0
  154. package/build/assets/{vendor~browser-CIoZCqGs.js → vendor~browser-IVYgIgG1.js} +1 -1
  155. package/build/assets/{vendor~entry.client-Di4qO77Y.js → vendor~entry.client-BcYIVQvB.js} +1 -1
  156. package/build/assets/{vendor~entry.client-BfviqoVc.js → vendor~entry.client-CXM9oiAk.js} +1 -1
  157. package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~g4xrpilz-CJ7amdtQ.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~b0bpqexo-CbTboogo.js} +2 -2
  158. package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~f9xdmd0z-DLMP7bZx.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~d4by102p-C2f0ZhS-.js} +1 -1
  159. package/build/assets/{vendor~files-tab-vm3f67Pz.js → vendor~files-tab-C7RmQJwN.js} +1 -1
  160. package/build/assets/{vendor~index-home~home~conversation-panel~conversation-kX4LrGQC.js → vendor~index-home~home~conversation-panel~conversation-Bqp1ZqJM.js} +1 -1
  161. package/build/assets/{vendor~root-layout~conversation-panel~conversation-DpA6fir3.js → vendor~root-layout~conversation-panel~conversation-BCn8lzeG.js} +1 -1
  162. package/build/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~automation-setup-route-B_L-gcOG.js +1 -0
  163. package/build/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation-sjx0x5ac.js +1 -0
  164. package/build/assets/vendor~root-layout~index-home~home~mcp~automations-list~automation-setup-route~onboarding-modal-D7IDevqN.js +1 -0
  165. package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~bi2r7bko-Bw4AuHN1.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~dfc8ddxy-tTyxnjXT.js} +1 -1
  166. package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~hakxo2tj-ClV0p9g3.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~gy8zbn65-CGt6bWRT.js} +1 -1
  167. package/build/assets/{vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~eywn6ulz-BKxxr74w.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~dufan6ng-Dtdw8H0q.js} +17 -4
  168. package/build/assets/{verification-settings-CaCzojbc.js → verification-settings-DBsnSXC3.js} +1 -1
  169. package/build/assets/x-omAzpXkl.js +1 -0
  170. package/build/favicon-16x16.png +0 -0
  171. package/build/favicon-32x32.png +0 -0
  172. package/build/favicon.ico +0 -0
  173. package/build/index.html +4 -4
  174. package/build/locales/ar/openhands.json +39 -2
  175. package/build/locales/ca/openhands.json +39 -2
  176. package/build/locales/de/openhands.json +39 -2
  177. package/build/locales/en/openhands.json +40 -3
  178. package/build/locales/es/openhands.json +39 -2
  179. package/build/locales/fr/openhands.json +39 -2
  180. package/build/locales/it/openhands.json +39 -2
  181. package/build/locales/ja/openhands.json +39 -2
  182. package/build/locales/ko-KR/openhands.json +39 -2
  183. package/build/locales/no/openhands.json +39 -2
  184. package/build/locales/pt/openhands.json +39 -2
  185. package/build/locales/tr/openhands.json +39 -2
  186. package/build/locales/uk/openhands.json +39 -2
  187. package/build/locales/zh-CN/openhands.json +39 -2
  188. package/build/locales/zh-TW/openhands.json +39 -2
  189. package/config/defaults.json +4 -4
  190. package/dist/api/agent-server-adapter.cjs +3 -3
  191. package/dist/api/agent-server-adapter.cjs.map +1 -1
  192. package/dist/api/agent-server-adapter.d.ts +46 -6
  193. package/dist/api/agent-server-adapter.js +187 -168
  194. package/dist/api/agent-server-adapter.js.map +1 -1
  195. package/dist/api/agent-server-compatibility.cjs +1 -1
  196. package/dist/api/agent-server-compatibility.cjs.map +1 -1
  197. package/dist/api/agent-server-compatibility.d.ts +4 -0
  198. package/dist/api/agent-server-compatibility.js +41 -38
  199. package/dist/api/agent-server-compatibility.js.map +1 -1
  200. package/dist/api/automation-service/automation-service.api.cjs +1 -1
  201. package/dist/api/automation-service/automation-service.api.cjs.map +1 -1
  202. package/dist/api/automation-service/automation-service.api.d.ts +20 -0
  203. package/dist/api/automation-service/automation-service.api.js +136 -99
  204. package/dist/api/automation-service/automation-service.api.js.map +1 -1
  205. package/dist/api/backend-registry/storage.cjs +1 -1
  206. package/dist/api/backend-registry/storage.cjs.map +1 -1
  207. package/dist/api/backend-registry/storage.js +1 -1
  208. package/dist/api/backend-registry/storage.js.map +1 -1
  209. package/dist/api/backend-registry/types.d.ts +2 -0
  210. package/dist/api/cloud/conversation-service.api.cjs +1 -1
  211. package/dist/api/cloud/conversation-service.api.js +22 -22
  212. package/dist/api/mcp-service/mcp-service.api.cjs +1 -1
  213. package/dist/api/mcp-service/mcp-service.api.cjs.map +1 -1
  214. package/dist/api/mcp-service/mcp-service.api.js +19 -19
  215. package/dist/api/mcp-service/mcp-service.api.js.map +1 -1
  216. package/dist/api/settings-service/settings-service.api.cjs +1 -1
  217. package/dist/api/settings-service/settings-service.api.cjs.map +1 -1
  218. package/dist/api/settings-service/settings-service.api.js +26 -12
  219. package/dist/api/settings-service/settings-service.api.js.map +1 -1
  220. package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.cjs +2 -0
  221. package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.cjs.map +1 -0
  222. package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.d.ts +12 -0
  223. package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.js +94 -0
  224. package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.js.map +1 -0
  225. package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.cjs +1 -1
  226. package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.cjs.map +1 -1
  227. package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.js +31 -90
  228. package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.js.map +1 -1
  229. package/dist/components/features/automations/recommended-automations-launcher.d.ts +0 -7
  230. package/dist/components/features/automations/recommended-automations-section.d.ts +0 -6
  231. package/dist/components/features/backends/backend-form-modal.cjs +1 -1
  232. package/dist/components/features/backends/backend-form-modal.cjs.map +1 -1
  233. package/dist/components/features/backends/backend-form-modal.js +568 -358
  234. package/dist/components/features/backends/backend-form-modal.js.map +1 -1
  235. package/dist/components/features/backends/device-flow-auth.cjs +1 -1
  236. package/dist/components/features/backends/device-flow-auth.cjs.map +1 -1
  237. package/dist/components/features/backends/device-flow-auth.d.ts +9 -1
  238. package/dist/components/features/backends/device-flow-auth.js +56 -55
  239. package/dist/components/features/backends/device-flow-auth.js.map +1 -1
  240. package/dist/components/features/backends/manage-backends-modal.cjs +1 -1
  241. package/dist/components/features/backends/manage-backends-modal.cjs.map +1 -1
  242. package/dist/components/features/backends/manage-backends-modal.js +1 -1
  243. package/dist/components/features/backends/manage-backends-modal.js.map +1 -1
  244. package/dist/components/features/chat/chat-interface.cjs +1 -1
  245. package/dist/components/features/chat/chat-interface.cjs.map +1 -1
  246. package/dist/components/features/chat/chat-interface.js +105 -105
  247. package/dist/components/features/chat/chat-interface.js.map +1 -1
  248. package/dist/components/features/chat/chat-message.cjs +1 -1
  249. package/dist/components/features/chat/chat-message.cjs.map +1 -1
  250. package/dist/components/features/chat/chat-message.d.ts +2 -1
  251. package/dist/components/features/chat/chat-message.js +59 -49
  252. package/dist/components/features/chat/chat-message.js.map +1 -1
  253. package/dist/components/features/chat/pending-user-messages.cjs +1 -1
  254. package/dist/components/features/chat/pending-user-messages.cjs.map +1 -1
  255. package/dist/components/features/chat/pending-user-messages.js +4 -1
  256. package/dist/components/features/chat/pending-user-messages.js.map +1 -1
  257. package/dist/components/features/chat/typing-indicator.cjs +1 -1
  258. package/dist/components/features/chat/typing-indicator.cjs.map +1 -1
  259. package/dist/components/features/chat/typing-indicator.d.ts +8 -1
  260. package/dist/components/features/chat/typing-indicator.js +94 -10
  261. package/dist/components/features/chat/typing-indicator.js.map +1 -1
  262. package/dist/components/features/command-menu/command-menu-items.d.ts +5 -1
  263. package/dist/components/features/files-tab/segmented-toggle.cjs +1 -1
  264. package/dist/components/features/files-tab/segmented-toggle.cjs.map +1 -1
  265. package/dist/components/features/files-tab/segmented-toggle.d.ts +2 -0
  266. package/dist/components/features/files-tab/segmented-toggle.js +17 -14
  267. package/dist/components/features/files-tab/segmented-toggle.js.map +1 -1
  268. package/dist/components/features/manifest/manifest-form-field.d.ts +27 -0
  269. package/dist/components/features/manifest/manifest-prerequisites-step.d.ts +11 -0
  270. package/dist/components/features/manifest/manifest-review-step.d.ts +14 -0
  271. package/dist/components/features/manifest/manifest-setup-dialog.d.ts +14 -0
  272. package/dist/components/features/mcp-page/custom-server-editor.cjs +1 -1
  273. package/dist/components/features/mcp-page/custom-server-editor.js +16 -16
  274. package/dist/components/features/mcp-page/installed-server-card.cjs +1 -1
  275. package/dist/components/features/mcp-page/installed-server-card.cjs.map +1 -1
  276. package/dist/components/features/mcp-page/installed-server-card.d.ts +2 -2
  277. package/dist/components/features/mcp-page/installed-server-card.js +6 -7
  278. package/dist/components/features/mcp-page/installed-server-card.js.map +1 -1
  279. package/dist/components/features/mcp-page/installed-servers-section.cjs +1 -1
  280. package/dist/components/features/mcp-page/installed-servers-section.cjs.map +1 -1
  281. package/dist/components/features/mcp-page/installed-servers-section.d.ts +2 -2
  282. package/dist/components/features/mcp-page/installed-servers-section.js +2 -2
  283. package/dist/components/features/mcp-page/installed-servers-section.js.map +1 -1
  284. package/dist/components/features/mcp-page/mcp-server-health.cjs +1 -1
  285. package/dist/components/features/mcp-page/mcp-server-health.js +4 -4
  286. package/dist/components/features/settings/mcp-settings/mcp-server-form.cjs +1 -1
  287. package/dist/components/features/settings/mcp-settings/mcp-server-form.cjs.map +1 -1
  288. package/dist/components/features/settings/mcp-settings/mcp-server-form.js +2 -1
  289. package/dist/components/features/settings/mcp-settings/mcp-server-form.js.map +1 -1
  290. package/dist/components/features/settings/settings-input.cjs +1 -1
  291. package/dist/components/features/settings/settings-input.cjs.map +1 -1
  292. package/dist/components/features/settings/settings-input.d.ts +6 -0
  293. package/dist/components/features/settings/settings-input.js +13 -8
  294. package/dist/components/features/settings/settings-input.js.map +1 -1
  295. package/dist/components/features/sidebar/sidebar-rail-body.cjs +1 -1
  296. package/dist/components/features/sidebar/sidebar-rail-body.cjs.map +1 -1
  297. package/dist/components/features/sidebar/sidebar-rail-body.js +124 -123
  298. package/dist/components/features/sidebar/sidebar-rail-body.js.map +1 -1
  299. package/dist/config/defaults.cjs +1 -1
  300. package/dist/config/defaults.cjs.map +1 -1
  301. package/dist/config/defaults.js +3 -3
  302. package/dist/config/defaults.js.map +1 -1
  303. package/dist/contexts/active-backend-context.cjs +1 -1
  304. package/dist/contexts/active-backend-context.cjs.map +1 -1
  305. package/dist/contexts/active-backend-context.d.ts +3 -2
  306. package/dist/contexts/active-backend-context.js +55 -42
  307. package/dist/contexts/active-backend-context.js.map +1 -1
  308. package/dist/favicon-16x16.png +0 -0
  309. package/dist/favicon-32x32.png +0 -0
  310. package/dist/favicon.ico +0 -0
  311. package/dist/hooks/mutation/use-update-mcp-server.cjs +1 -1
  312. package/dist/hooks/mutation/use-update-mcp-server.js +5 -5
  313. package/dist/hooks/query/query-keys.cjs.map +1 -1
  314. package/dist/hooks/query/query-keys.d.ts +4 -0
  315. package/dist/hooks/query/query-keys.js.map +1 -1
  316. package/dist/hooks/query/use-cloud-current-user-id.cjs +1 -1
  317. package/dist/hooks/query/use-cloud-current-user-id.cjs.map +1 -1
  318. package/dist/hooks/query/use-cloud-current-user-id.js +7 -5
  319. package/dist/hooks/query/use-cloud-current-user-id.js.map +1 -1
  320. package/dist/hooks/query/use-cloud-organizations.cjs +1 -1
  321. package/dist/hooks/query/use-cloud-organizations.cjs.map +1 -1
  322. package/dist/hooks/query/use-cloud-organizations.js +5 -1
  323. package/dist/hooks/query/use-cloud-organizations.js.map +1 -1
  324. package/dist/hooks/query/use-manifest-capabilities.d.ts +21 -0
  325. package/dist/hooks/query/use-manifest-prerequisites.d.ts +24 -0
  326. package/dist/hooks/use-can-manage-org-profiles.cjs +1 -1
  327. package/dist/hooks/use-can-manage-org-profiles.cjs.map +1 -1
  328. package/dist/hooks/use-can-manage-org-profiles.js +2 -1
  329. package/dist/hooks/use-can-manage-org-profiles.js.map +1 -1
  330. package/dist/hooks/use-llm-configured.cjs +1 -1
  331. package/dist/hooks/use-llm-configured.cjs.map +1 -1
  332. package/dist/hooks/use-llm-configured.js +2 -1
  333. package/dist/hooks/use-llm-configured.js.map +1 -1
  334. package/dist/hooks/use-manifest-preflight.d.ts +18 -0
  335. package/dist/hooks/use-tracking.cjs +1 -1
  336. package/dist/hooks/use-tracking.cjs.map +1 -1
  337. package/dist/hooks/use-tracking.d.ts +14 -0
  338. package/dist/hooks/use-tracking.js +28 -10
  339. package/dist/hooks/use-tracking.js.map +1 -1
  340. package/dist/i18n/declaration.cjs +1 -1
  341. package/dist/i18n/declaration.cjs.map +1 -1
  342. package/dist/i18n/declaration.d.ts +38 -1
  343. package/dist/i18n/declaration.js +1 -1
  344. package/dist/i18n/declaration.js.map +1 -1
  345. package/dist/i18n/translation.cjs +2 -2
  346. package/dist/i18n/translation.cjs.map +1 -1
  347. package/dist/i18n/translation.js +645 -16
  348. package/dist/i18n/translation.js.map +1 -1
  349. package/dist/icons/external-link.cjs +2 -0
  350. package/dist/icons/external-link.cjs.map +1 -0
  351. package/dist/icons/external-link.js +22 -0
  352. package/dist/icons/external-link.js.map +1 -0
  353. package/dist/icons/server.cjs +2 -0
  354. package/dist/icons/server.cjs.map +1 -0
  355. package/dist/icons/server.js +17 -0
  356. package/dist/icons/server.js.map +1 -0
  357. package/dist/locales/ar/openhands.json +39 -2
  358. package/dist/locales/ca/openhands.json +39 -2
  359. package/dist/locales/de/openhands.json +39 -2
  360. package/dist/locales/en/openhands.json +40 -3
  361. package/dist/locales/es/openhands.json +39 -2
  362. package/dist/locales/fr/openhands.json +39 -2
  363. package/dist/locales/it/openhands.json +39 -2
  364. package/dist/locales/ja/openhands.json +39 -2
  365. package/dist/locales/ko-KR/openhands.json +39 -2
  366. package/dist/locales/no/openhands.json +39 -2
  367. package/dist/locales/pt/openhands.json +39 -2
  368. package/dist/locales/tr/openhands.json +39 -2
  369. package/dist/locales/uk/openhands.json +39 -2
  370. package/dist/locales/zh-CN/openhands.json +39 -2
  371. package/dist/locales/zh-TW/openhands.json +39 -2
  372. package/dist/manifests/automation-interface.cjs +2 -0
  373. package/dist/manifests/automation-interface.cjs.map +1 -0
  374. package/dist/manifests/automation-interface.d.ts +44 -0
  375. package/dist/manifests/automation-interface.js +81 -0
  376. package/dist/manifests/automation-interface.js.map +1 -0
  377. package/dist/manifests/automation-setup.cjs +2 -0
  378. package/dist/manifests/automation-setup.cjs.map +1 -0
  379. package/dist/manifests/automation-setup.d.ts +52 -0
  380. package/dist/manifests/automation-setup.js +8 -0
  381. package/dist/manifests/automation-setup.js.map +1 -0
  382. package/dist/manifests/interface-validation.cjs +2 -0
  383. package/dist/manifests/interface-validation.cjs.map +1 -0
  384. package/dist/manifests/interface-validation.d.ts +27 -0
  385. package/dist/manifests/interface-validation.js +182 -0
  386. package/dist/manifests/interface-validation.js.map +1 -0
  387. package/dist/manifests/manifest-actions.d.ts +15 -0
  388. package/dist/manifests/manifest-capabilities.d.ts +25 -0
  389. package/dist/manifests/manifest-error-map.d.ts +40 -0
  390. package/dist/manifests/manifest-local-validation.d.ts +56 -0
  391. package/dist/manifests/manifest-registry.cjs +2 -0
  392. package/dist/manifests/manifest-registry.cjs.map +1 -0
  393. package/dist/manifests/manifest-registry.d.ts +15 -0
  394. package/dist/manifests/manifest-registry.js +26 -0
  395. package/dist/manifests/manifest-registry.js.map +1 -0
  396. package/dist/manifests/manifest-sources.cjs +2 -0
  397. package/dist/manifests/manifest-sources.cjs.map +1 -0
  398. package/dist/manifests/manifest-sources.d.ts +15 -0
  399. package/dist/manifests/manifest-sources.js +8 -0
  400. package/dist/manifests/manifest-sources.js.map +1 -0
  401. package/dist/manifests/manifest-template.d.ts +18 -0
  402. package/dist/manifests/manifest-validation.cjs +2 -0
  403. package/dist/manifests/manifest-validation.cjs.map +1 -0
  404. package/dist/manifests/manifest-validation.d.ts +30 -0
  405. package/dist/manifests/manifest-validation.js +145 -0
  406. package/dist/manifests/manifest-validation.js.map +1 -0
  407. package/dist/manifests/types.cjs +2 -0
  408. package/dist/manifests/types.cjs.map +1 -0
  409. package/dist/manifests/types.d.ts +227 -0
  410. package/dist/manifests/types.js +6 -0
  411. package/dist/manifests/types.js.map +1 -0
  412. package/dist/node_modules/@openhands/extensions/automations/catalog/github-pr-reviewer/manifest.cjs +9 -0
  413. package/dist/node_modules/@openhands/extensions/automations/catalog/github-pr-reviewer/manifest.cjs.map +1 -0
  414. package/dist/node_modules/@openhands/extensions/automations/catalog/github-pr-reviewer/manifest.js +75 -0
  415. package/dist/node_modules/@openhands/extensions/automations/catalog/github-pr-reviewer/manifest.js.map +1 -0
  416. package/dist/node_modules/@openhands/extensions/automations/catalog/github-repo-monitor/manifest.cjs +9 -0
  417. package/dist/node_modules/@openhands/extensions/automations/catalog/github-repo-monitor/manifest.cjs.map +1 -0
  418. package/dist/node_modules/@openhands/extensions/automations/catalog/github-repo-monitor/manifest.js +78 -0
  419. package/dist/node_modules/@openhands/extensions/automations/catalog/github-repo-monitor/manifest.js.map +1 -0
  420. package/dist/node_modules/@openhands/extensions/automations/catalog/incident-retrospective-drafter/manifest.cjs +17 -0
  421. package/dist/node_modules/@openhands/extensions/automations/catalog/incident-retrospective-drafter/manifest.cjs.map +1 -0
  422. package/dist/node_modules/@openhands/extensions/automations/catalog/incident-retrospective-drafter/manifest.js +89 -0
  423. package/dist/node_modules/@openhands/extensions/automations/catalog/incident-retrospective-drafter/manifest.js.map +1 -0
  424. package/dist/node_modules/@openhands/extensions/automations/catalog/jira-issue-to-pr/manifest.cjs +10 -0
  425. package/dist/node_modules/@openhands/extensions/automations/catalog/jira-issue-to-pr/manifest.cjs.map +1 -0
  426. package/dist/node_modules/@openhands/extensions/automations/catalog/jira-issue-to-pr/manifest.js +17 -0
  427. package/dist/node_modules/@openhands/extensions/automations/catalog/jira-issue-to-pr/manifest.js.map +1 -0
  428. package/dist/node_modules/@openhands/extensions/automations/catalog/linear-triage-assistant/manifest.cjs +9 -0
  429. package/dist/node_modules/@openhands/extensions/automations/catalog/linear-triage-assistant/manifest.cjs.map +1 -0
  430. package/dist/node_modules/@openhands/extensions/automations/catalog/linear-triage-assistant/manifest.js +15 -0
  431. package/dist/node_modules/@openhands/extensions/automations/catalog/linear-triage-assistant/manifest.js.map +1 -0
  432. package/dist/node_modules/@openhands/extensions/automations/catalog/research-brief-writer/manifest.cjs +9 -0
  433. package/dist/node_modules/@openhands/extensions/automations/catalog/research-brief-writer/manifest.cjs.map +1 -0
  434. package/dist/node_modules/@openhands/extensions/automations/catalog/research-brief-writer/manifest.js +18 -0
  435. package/dist/node_modules/@openhands/extensions/automations/catalog/research-brief-writer/manifest.js.map +1 -0
  436. package/dist/node_modules/@openhands/extensions/automations/catalog/slack-channel-monitor/manifest.cjs +9 -0
  437. package/dist/node_modules/@openhands/extensions/automations/catalog/slack-channel-monitor/manifest.cjs.map +1 -0
  438. package/dist/node_modules/@openhands/extensions/automations/catalog/slack-channel-monitor/manifest.js +14 -0
  439. package/dist/node_modules/@openhands/extensions/automations/catalog/slack-channel-monitor/manifest.js.map +1 -0
  440. package/dist/node_modules/@openhands/extensions/automations/catalog/slack-standup-digest/manifest.cjs +9 -0
  441. package/dist/node_modules/@openhands/extensions/automations/catalog/slack-standup-digest/manifest.cjs.map +1 -0
  442. package/dist/node_modules/@openhands/extensions/automations/catalog/slack-standup-digest/manifest.js +14 -0
  443. package/dist/node_modules/@openhands/extensions/automations/catalog/slack-standup-digest/manifest.js.map +1 -0
  444. package/dist/node_modules/@openhands/extensions/automations/catalog-index.cjs +2 -0
  445. package/dist/node_modules/@openhands/extensions/automations/catalog-index.cjs.map +1 -0
  446. package/dist/node_modules/@openhands/extensions/automations/catalog-index.js +23 -0
  447. package/dist/node_modules/@openhands/extensions/automations/catalog-index.js.map +1 -0
  448. package/dist/node_modules/@openhands/extensions/automations/index.cjs +2 -0
  449. package/dist/node_modules/@openhands/extensions/automations/index.cjs.map +1 -0
  450. package/dist/node_modules/@openhands/extensions/automations/index.js +18 -0
  451. package/dist/node_modules/@openhands/extensions/automations/index.js.map +1 -0
  452. package/dist/node_modules/@openhands/extensions/automations/interface.cjs +2 -0
  453. package/dist/node_modules/@openhands/extensions/automations/interface.cjs.map +1 -0
  454. package/dist/node_modules/@openhands/extensions/automations/interface.js +89 -0
  455. package/dist/node_modules/@openhands/extensions/automations/interface.js.map +1 -0
  456. package/dist/node_modules/@openhands/extensions/integrations/catalog/datadog.cjs +1 -1
  457. package/dist/node_modules/@openhands/extensions/integrations/catalog/datadog.cjs.map +1 -1
  458. package/dist/node_modules/@openhands/extensions/integrations/catalog/datadog.js +3 -3
  459. package/dist/node_modules/@openhands/extensions/integrations/catalog/datadog.js.map +1 -1
  460. package/dist/node_modules/@openhands/extensions/skills/index.cjs +17 -4
  461. package/dist/node_modules/@openhands/extensions/skills/index.cjs.map +1 -1
  462. package/dist/node_modules/@openhands/extensions/skills/index.js +5 -5
  463. package/dist/node_modules/@openhands/extensions/skills/index.js.map +1 -1
  464. package/dist/node_modules/@openhands/typescript-client/dist/client/settings-client.cjs +1 -1
  465. package/dist/node_modules/@openhands/typescript-client/dist/client/settings-client.cjs.map +1 -1
  466. package/dist/node_modules/@openhands/typescript-client/dist/client/settings-client.js +9 -0
  467. package/dist/node_modules/@openhands/typescript-client/dist/client/settings-client.js.map +1 -1
  468. package/dist/node_modules/lucide-react/dist/esm/icons/monitor.cjs +2 -0
  469. package/dist/node_modules/lucide-react/dist/esm/icons/monitor.cjs.map +1 -0
  470. package/dist/node_modules/lucide-react/dist/esm/icons/monitor.js +29 -0
  471. package/dist/node_modules/lucide-react/dist/esm/icons/monitor.js.map +1 -0
  472. package/dist/package.cjs +1 -1
  473. package/dist/package.cjs.map +1 -1
  474. package/dist/package.js +3 -3
  475. package/dist/package.js.map +1 -1
  476. package/dist/routes/app-settings.cjs +1 -1
  477. package/dist/routes/app-settings.js +5 -5
  478. package/dist/routes/mcp.cjs +1 -1
  479. package/dist/routes/mcp.cjs.map +1 -1
  480. package/dist/routes/mcp.js +73 -82
  481. package/dist/routes/mcp.js.map +1 -1
  482. package/dist/services/telemetry.cjs +1 -1
  483. package/dist/services/telemetry.cjs.map +1 -1
  484. package/dist/services/telemetry.d.ts +8 -0
  485. package/dist/services/telemetry.js +163 -116
  486. package/dist/services/telemetry.js.map +1 -1
  487. package/dist/types/agent-server/core/events/conversation-state-event.d.ts +2 -19
  488. package/dist/types/agent-server/core/events/observation-event.d.ts +2 -18
  489. package/dist/types/automation.d.ts +7 -3
  490. package/dist/types/mcp-server.d.ts +5 -0
  491. package/dist/types/settings.d.ts +3 -0
  492. package/dist/utils/api-error-message.d.ts +6 -2
  493. package/dist/utils/automation-catalog.cjs +2 -0
  494. package/dist/utils/automation-catalog.cjs.map +1 -0
  495. package/dist/utils/automation-catalog.d.ts +28 -0
  496. package/dist/utils/automation-catalog.js +5 -0
  497. package/dist/utils/automation-catalog.js.map +1 -0
  498. package/dist/utils/automation-timeout.d.ts +3 -2
  499. package/dist/utils/mcp-config.cjs +1 -1
  500. package/dist/utils/mcp-config.cjs.map +1 -1
  501. package/dist/utils/mcp-config.d.ts +8 -0
  502. package/dist/utils/mcp-config.js +25 -20
  503. package/dist/utils/mcp-config.js.map +1 -1
  504. package/dist/utils/mcp-installed-servers.cjs +1 -1
  505. package/dist/utils/mcp-installed-servers.cjs.map +1 -1
  506. package/dist/utils/mcp-installed-servers.js +6 -3
  507. package/dist/utils/mcp-installed-servers.js.map +1 -1
  508. package/dist/utils/responder-deployment.d.ts +5 -1
  509. package/dist/utils/transcript-export/index.cjs +5 -5
  510. package/dist/utils/transcript-export/index.js +12 -12
  511. package/package.json +3 -3
  512. package/scripts/check-sdk-version-sync.mjs +6 -6
  513. package/scripts/check-translation-completeness.cjs +1 -0
  514. package/scripts/dev-safe.mjs +17 -12
  515. package/scripts/dev-static.mjs +17 -0
  516. package/scripts/dev-with-automation.mjs +12 -14
  517. package/scripts/ingress.mjs +22 -0
  518. package/scripts/proxy-utils.mjs +157 -2
  519. package/scripts/runtime-services-info.mjs +6 -6
  520. package/scripts/static-build.mjs +0 -7
  521. package/scripts/static-server.mjs +10 -0
  522. package/build/assets/active-backend-context-BlZPzZNU.js +0 -1
  523. package/build/assets/agent-context-settings-CTaN-Iw9.js +0 -1
  524. package/build/assets/agent-profiles-settings-CR4VTqv_.js +0 -1
  525. package/build/assets/agent-server-conversation-service.api-Btmi4q6d.js +0 -41
  526. package/build/assets/agent-settings-KQs-occT.js +0 -1
  527. package/build/assets/api-key-entry-screen-BhR24gkM.js +0 -1
  528. package/build/assets/app-settings-Bs4sY8WP.js +0 -1
  529. package/build/assets/automation-BGP_I1RR.js +0 -1
  530. package/build/assets/automation-detail-CwDnJbYR.js +0 -2
  531. package/build/assets/automation-export-Bu-r-EzL.js +0 -2
  532. package/build/assets/automations-list-CYw7_6FR.js +0 -1
  533. package/build/assets/backend-form-modal-Ce-KRHOJ.js +0 -1
  534. package/build/assets/browser-BUDJnBg4.js +0 -6
  535. package/build/assets/check-BMOG005H.js +0 -1
  536. package/build/assets/chevron-down-CV1zZP_K.js +0 -1
  537. package/build/assets/circle-check-lvN_jFN5.js +0 -1
  538. package/build/assets/client-source-1v-kWLNU.js +0 -1
  539. package/build/assets/cloud-funnel-analytics-CasMM7EO.js +0 -1
  540. package/build/assets/command-menu-N_BriUy8.js +0 -1
  541. package/build/assets/condenser-settings-Czi8cKxV.js +0 -1
  542. package/build/assets/conversation-C25pc2dT.js +0 -1
  543. package/build/assets/conversation-CObLYSJd.js +0 -90
  544. package/build/assets/conversation-panel-C25pc2dT.js +0 -1
  545. package/build/assets/conversation-state-store-DTq4hFoP.js +0 -1
  546. package/build/assets/extensions-hub-BKftOQ-X.js +0 -1
  547. package/build/assets/extensions-navigation-DF24q1H1.js +0 -1
  548. package/build/assets/files-tab-SAiFCnS5.js +0 -1
  549. package/build/assets/git-provider-icon-BREx-yUX.js +0 -1
  550. package/build/assets/home-EPNFgzUh.js +0 -1
  551. package/build/assets/home-sN90Xcxp.js +0 -1
  552. package/build/assets/index-home-EPNFgzUh.js +0 -1
  553. package/build/assets/install-server-modal-BI8yUfmr.js +0 -1
  554. package/build/assets/llm-not-configured-banner-DTWzISnk.js +0 -27
  555. package/build/assets/llm-settings-BXk5_Pac.js +0 -1
  556. package/build/assets/llm-settings-C1vpgWam.js +0 -1
  557. package/build/assets/loader-circle-6zlEYCJw.js +0 -1
  558. package/build/assets/manage-backends-modal-DhflyGTf.js +0 -1
  559. package/build/assets/manifest-8082e879.js +0 -1
  560. package/build/assets/mcp-CxLPda-W.js +0 -9
  561. package/build/assets/messages-DINDkPNK.js +0 -40
  562. package/build/assets/onboarding-modal-DdvE6rzw.js +0 -1
  563. package/build/assets/organization-service.api-CT2OQlLz.js +0 -1
  564. package/build/assets/plugins-management-service-DVkoM3eA.js +0 -1
  565. package/build/assets/plus-vIbGD459.js +0 -1
  566. package/build/assets/profiles-service.api-CBafmAPO.js +0 -1
  567. package/build/assets/providers-9UzRB9mT.js +0 -1
  568. package/build/assets/proxy-C79PCMjo.js +0 -1
  569. package/build/assets/recommended-automations-launcher-BF2mtAKw.js +0 -58
  570. package/build/assets/root-B5JXKp1P.css +0 -1
  571. package/build/assets/root-Sj7W28yE.js +0 -2
  572. package/build/assets/root-layout-DbhKVoc7.js +0 -3
  573. package/build/assets/schema-field-CV6bFnoL.js +0 -1
  574. package/build/assets/search-sKuYKllf.js +0 -1
  575. package/build/assets/secrets-service-BjK-bPN2.js +0 -1
  576. package/build/assets/segmented-toggle-DbbD3Tve.js +0 -1
  577. package/build/assets/settings-Bj5Oo45A.js +0 -1
  578. package/build/assets/settings-input-BjW_zyTN.js +0 -1
  579. package/build/assets/settings-service.api-DryhKdSr.js +0 -1
  580. package/build/assets/shared-conversation-CnMxy7p_.js +0 -1
  581. package/build/assets/telemetry-cmCL3o6Z.js +0 -2
  582. package/build/assets/use-activate-agent-profile-DH33MvVj.js +0 -1
  583. package/build/assets/use-agent-profiles-Dmd_4H8q.js +0 -1
  584. package/build/assets/use-cloud-current-user-id-B6DP3s47.js +0 -1
  585. package/build/assets/use-is-authed-BsS4XwSL.js +0 -1
  586. package/build/assets/use-llm-profiles-BMQoc612.js +0 -1
  587. package/build/assets/use-onboarding-completion-B-2BTS-y.js +0 -1
  588. package/build/assets/use-plugins-marketplace-PBc_XNz_.js +0 -1
  589. package/build/assets/use-save-agent-profile-2Mk9ZX37.js +0 -1
  590. package/build/assets/use-settings-DBI44RnH.js +0 -1
  591. package/build/assets/use-settings-nav-items-Cva28C-c.js +0 -16
  592. package/build/assets/use-skills-RQsCtdzN.js +0 -1
  593. package/build/assets/use-tracking-CN1nIMnY.js +0 -1
  594. package/build/assets/utils-qjs_KuS4.js +0 -1
  595. package/build/assets/vendor~root-layout~index-home~home~conversation-panel~conversation-EShpjxey.js +0 -1
  596. package/build/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation-DD_UNO02.js +0 -1
  597. package/build/assets/vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-Be63Q2Ln.js +0 -1
  598. package/build/assets/x-EjvKGawc.js +0 -1
  599. /package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~f1hl7voa-BrmgjeOw.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~emdr2jt4-BrmgjeOw.js} +0 -0
@@ -1,121 +1,135 @@
1
1
  import { ExecutionStatus as e } from "../types/agent-server/core/base/common.js";
2
- import { getAgentServerWorkingDir as t } from "./agent-server-config.js";
3
- import { getEffectiveLocalBackend as n } from "./backend-registry/active-store.js";
4
- import { getAgentServerClientOptions as r } from "./agent-server-client-options.js";
5
- import { isAgentServerToolAvailable as i } from "./agent-server-compatibility.js";
6
- import { CANVAS_UI_CLIENT_TOOL_NAME as a, LEGACY_CANVAS_UI_TOOL_NAME as o } from "../constants/canvas-ui.js";
7
- import { ACP_SETTINGS_KEYS as s } from "../node_modules/@openhands/typescript-client/dist/models/acp.js";
2
+ import { ServerClient as t } from "../node_modules/@openhands/typescript-client/dist/client/server-client.js";
3
+ import "../node_modules/@openhands/typescript-client/dist/clients.js";
4
+ import { getAgentServerWorkingDir as n } from "./agent-server-config.js";
5
+ import { getEffectiveLocalBackend as r } from "./backend-registry/active-store.js";
6
+ import { getAgentServerClientOptions as i } from "./agent-server-client-options.js";
7
+ import { getCachedAgentServerInfo as a, isAgentServerToolAvailable as o } from "./agent-server-compatibility.js";
8
+ import { CANVAS_UI_CLIENT_TOOL_NAME as s, LEGACY_CANVAS_UI_TOOL_NAME as c } from "../constants/canvas-ui.js";
9
+ import { ACP_SETTINGS_KEYS as l } from "../node_modules/@openhands/typescript-client/dist/models/acp.js";
8
10
  import "../node_modules/@openhands/typescript-client/dist/index.js";
9
- import { getStoredConversationMetadata as c } from "./conversation-metadata-store.js";
10
- import l from "../node_modules/@openhands/extensions/skills/index.js";
11
- import { DEFAULT_SETTINGS as u } from "../services/settings.js";
12
- import { getAcpPreferredDefaultModel as d, getAcpProvider as f, resolveEffectiveAcpModel as p } from "../constants/acp-providers.js";
13
- import { buildAuthHeaders as m } from "./backend-registry/auth.js";
14
- import ee from "./settings-service/settings-service.api.js";
15
- import { LLM_AUTH_TYPE_SUBSCRIPTION as h, OPENAI_SUBSCRIPTION_VENDOR as g, isSubscriptionLlmConfig as _ } from "../constants/llm-subscription.js";
16
- import v from "./llm-subscription-service.js";
17
- import { CANVAS_UI_CLIENT_TOOL as y } from "./canvas-ui-client-tool.js";
11
+ import { getStoredConversationMetadata as u } from "./conversation-metadata-store.js";
12
+ import d from "../node_modules/@openhands/extensions/skills/index.js";
13
+ import { DEFAULT_SETTINGS as f } from "../services/settings.js";
14
+ import { getAcpPreferredDefaultModel as p, getAcpProvider as m, resolveEffectiveAcpModel as h } from "../constants/acp-providers.js";
15
+ import { buildAuthHeaders as g } from "./backend-registry/auth.js";
16
+ import _ from "./settings-service/settings-service.api.js";
17
+ import { LLM_AUTH_TYPE_SUBSCRIPTION as v, OPENAI_SUBSCRIPTION_VENDOR as y, isSubscriptionLlmConfig as b } from "../constants/llm-subscription.js";
18
+ import x from "./llm-subscription-service.js";
19
+ import { CANVAS_UI_CLIENT_TOOL as S } from "./canvas-ui-client-tool.js";
18
20
  //#region src/api/agent-server-adapter.ts
19
- var b = [
21
+ var C = [
20
22
  "terminal",
21
23
  "file_editor",
22
24
  "task_tracker"
23
- ], x = "browser_tool_set", S = "task_tool_set";
24
- function C() {
25
+ ], w = "browser_tool_set", T = "task_tool_set";
26
+ function E() {
25
27
  return !0;
26
28
  }
27
- function w() {
28
- if (typeof window < "u") {
29
- let e = window.__AGENT_CANVAS_RUNTIME_SERVICES_INFO__;
30
- if (typeof e == "string") return e.trim() || null;
29
+ function D(e) {
30
+ if (typeof e == "string") {
31
+ let t = e.trim();
32
+ if (!t) return null;
33
+ try {
34
+ return D(JSON.parse(t));
35
+ } catch {
36
+ return null;
37
+ }
31
38
  }
32
- return null;
39
+ if (!e || typeof e != "object" || Array.isArray(e)) return null;
40
+ let t = e;
41
+ return !t.services || typeof t.services != "object" ? null : t;
33
42
  }
34
- function T() {
35
- let e = w();
36
- if (!e) return null;
43
+ async function O() {
44
+ let e;
37
45
  try {
38
- let t = JSON.parse(e);
39
- return !t || typeof t != "object" ? null : t;
46
+ e = i({ timeout: 3e3 });
47
+ } catch {
48
+ return null;
49
+ }
50
+ let n = D(a({ host: e.host })?.runtime_services);
51
+ if (n) return n;
52
+ try {
53
+ return D((await new t(e).getServerInfo()).runtime_services);
40
54
  } catch {
41
55
  return null;
42
56
  }
43
57
  }
44
- function E() {
45
- let e = T();
46
- if (!e?.services) return;
47
- let t = [];
48
- t.push("<RUNTIME_SERVICES>"), e.mode ? t.push(`You are running inside an agent-canvas dev stack started in '${e.mode}' mode.`) : t.push("You are running inside an agent-canvas dev stack."), t.push("The following services are reachable from your sandbox. URLs are written", "from your point of view (i.e., as you should curl/fetch them).", "");
49
- let { agent_server: n, ingress: r, automation: i } = e.services, { frontend: a } = e.services;
50
- n?.url_from_agent && t.push(`* Agent Server (you): ${n.url_from_agent}`, ` ${n.description ?? "The agent-server hosting your tool calls."}`), r?.url_from_agent && t.push(`* Ingress: ${r.url_from_agent}`, ` ${r.description ?? "Unified entry point for browser-facing traffic."}`), a?.url_from_agent && t.push(`* Frontend: ${a.url_from_agent}`, ` ${a.description ?? "Frontend dev server."}`), i?.url_from_agent ? (t.push(`* Automation backend: ${i.url_from_agent}`, ` ${i.description ?? "OpenHands Automations service."}`), i.docs_url && t.push(` Docs: ${i.docs_url}`), i.openapi_url && t.push(` OpenAPI: ${i.openapi_url}`), i.auth_env_var && t.push(` Auth: header 'X-Session-API-Key: $${i.auth_env_var}'`)) : t.push("* Automation backend: not running in this dev mode (skip /api/automation calls).");
51
- let o = n?.url_from_agent;
52
- return t.push("", "Trust this block over guessing: do not assume any other URLs are running."), o && t.push(`In particular, ${o} inside your sandbox is the Agent Server`, "you are running inside of — NOT the automation backend."), t.push("</RUNTIME_SERVICES>"), t.join("\n");
53
- }
54
- function te(e) {
55
- let { host: t } = r();
58
+ function k(e) {
59
+ let t = D(e);
60
+ if (!t?.services) return;
61
+ let n = [];
62
+ n.push("<RUNTIME_SERVICES>"), t.mode ? n.push(`You are running inside an agent-canvas dev stack started in '${t.mode}' mode.`) : n.push("You are running inside an agent-canvas dev stack."), n.push("The following services are reachable from your sandbox. URLs are written", "from your point of view (i.e., as you should curl/fetch them).", "");
63
+ let { agent_server: r, ingress: i, automation: a } = t.services, { frontend: o } = t.services;
64
+ r?.url_from_agent && n.push(`* Agent Server (you): ${r.url_from_agent}`, ` ${r.description ?? "The agent-server hosting your tool calls."}`), i?.url_from_agent && n.push(`* Ingress: ${i.url_from_agent}`, ` ${i.description ?? "Unified entry point for browser-facing traffic."}`), o?.url_from_agent && n.push(`* Frontend: ${o.url_from_agent}`, ` ${o.description ?? "Frontend dev server."}`), a?.url_from_agent ? (n.push(`* Automation backend: ${a.url_from_agent}`, ` ${a.description ?? "OpenHands Automations service."}`), a.docs_url && n.push(` Docs: ${a.docs_url}`), a.openapi_url && n.push(` OpenAPI: ${a.openapi_url}`), a.auth_env_var && n.push(` Auth: header 'X-Session-API-Key: $${a.auth_env_var}'`)) : n.push("* Automation backend: not running in this dev mode (skip /api/automation calls).");
65
+ let s = r?.url_from_agent;
66
+ return n.push("", "Trust this block over guessing: do not assume any other URLs are running."), s && n.push(`In particular, ${s} inside your sandbox is the Agent Server`, "you are running inside of — NOT the automation backend."), n.push("</RUNTIME_SERVICES>"), n.join("\n");
67
+ }
68
+ function ee(e) {
69
+ let { host: t } = i();
56
70
  return `${t}/api/conversations/${e}`;
57
71
  }
58
- function D(e) {
72
+ function A(e) {
59
73
  return `Conversation ${e.slice(0, 5)}`;
60
74
  }
61
- function O(n) {
62
- let i = c(n.id), a = n.agent?.kind === "ACPAgent", o = a ? n.tags?.acpserver ?? n.agent?.acp_server ?? null : null;
75
+ function j(t) {
76
+ let r = u(t.id), a = t.agent?.kind === "ACPAgent", o = a ? t.tags?.acpserver ?? t.agent?.acp_server ?? null : null;
63
77
  return {
64
- id: n.id,
78
+ id: t.id,
65
79
  created_by_user_id: null,
66
- selected_repository: i?.selected_repository ?? null,
67
- selected_branch: i?.selected_branch ?? null,
68
- git_provider: i?.git_provider ?? null,
69
- selected_workspace: i?.selected_workspace ?? null,
70
- active_profile: i?.active_profile ?? null,
71
- title: n.title?.trim() ? n.title : D(n.id),
80
+ selected_repository: r?.selected_repository ?? null,
81
+ selected_branch: r?.selected_branch ?? null,
82
+ git_provider: r?.git_provider ?? null,
83
+ selected_workspace: r?.selected_workspace ?? null,
84
+ active_profile: r?.active_profile ?? null,
85
+ title: t.title?.trim() ? t.title : A(t.id),
72
86
  trigger: null,
73
87
  pr_number: [],
74
88
  agent_kind: a ? "acp" : "openhands",
75
89
  acp_server: o,
76
- tags: n.tags ?? null,
77
- launched_agent_profile: n.launched_agent_profile ?? null,
78
- llm_model: a ? p({
79
- runtimeName: n.current_model_name,
80
- runtimeId: n.current_model_id,
81
- configured: n.agent?.acp_model,
82
- sdkLlm: n.agent?.llm?.model
83
- }) : n.agent?.llm?.model ?? u.llm_model,
84
- metrics: n.metrics ? {
85
- accumulated_cost: n.metrics.accumulated_cost ?? null,
86
- max_budget_per_task: n.metrics.max_budget_per_task ?? null,
87
- accumulated_token_usage: n.metrics.accumulated_token_usage ? {
88
- prompt_tokens: n.metrics.accumulated_token_usage.prompt_tokens ?? 0,
89
- completion_tokens: n.metrics.accumulated_token_usage.completion_tokens ?? 0,
90
- cache_read_tokens: n.metrics.accumulated_token_usage.cache_read_tokens ?? 0,
91
- cache_write_tokens: n.metrics.accumulated_token_usage.cache_write_tokens ?? 0,
92
- context_window: n.metrics.accumulated_token_usage.context_window ?? 0,
93
- per_turn_token: n.metrics.accumulated_token_usage.per_turn_token ?? 0
90
+ tags: t.tags ?? null,
91
+ launched_agent_profile: t.launched_agent_profile ?? null,
92
+ llm_model: a ? h({
93
+ runtimeName: t.current_model_name,
94
+ runtimeId: t.current_model_id,
95
+ configured: t.agent?.acp_model,
96
+ sdkLlm: t.agent?.llm?.model
97
+ }) : t.agent?.llm?.model ?? f.llm_model,
98
+ metrics: t.metrics ? {
99
+ accumulated_cost: t.metrics.accumulated_cost ?? null,
100
+ max_budget_per_task: t.metrics.max_budget_per_task ?? null,
101
+ accumulated_token_usage: t.metrics.accumulated_token_usage ? {
102
+ prompt_tokens: t.metrics.accumulated_token_usage.prompt_tokens ?? 0,
103
+ completion_tokens: t.metrics.accumulated_token_usage.completion_tokens ?? 0,
104
+ cache_read_tokens: t.metrics.accumulated_token_usage.cache_read_tokens ?? 0,
105
+ cache_write_tokens: t.metrics.accumulated_token_usage.cache_write_tokens ?? 0,
106
+ context_window: t.metrics.accumulated_token_usage.context_window ?? 0,
107
+ per_turn_token: t.metrics.accumulated_token_usage.per_turn_token ?? 0
94
108
  } : null
95
109
  } : null,
96
- created_at: n.created_at,
97
- updated_at: n.updated_at,
98
- execution_status: n.execution_status ?? e.IDLE,
99
- sandbox_status: n.sandbox_status ?? null,
100
- conversation_url: te(n.id),
101
- session_api_key: r().apiKey ?? null,
110
+ created_at: t.created_at,
111
+ updated_at: t.updated_at,
112
+ execution_status: t.execution_status ?? e.IDLE,
113
+ sandbox_status: t.sandbox_status ?? null,
114
+ conversation_url: ee(t.id),
115
+ session_api_key: i().apiKey ?? null,
102
116
  sandbox_id: null,
103
- workspace: { working_dir: n.workspace?.working_dir ?? t() },
117
+ workspace: { working_dir: t.workspace?.working_dir ?? n() },
104
118
  public: !1,
105
119
  sub_conversation_ids: []
106
120
  };
107
121
  }
108
- function k(e) {
122
+ function M(e) {
109
123
  return {
110
- items: e.items.map(O),
124
+ items: e.items.map(j),
111
125
  next_page_id: e.next_page_id ?? null
112
126
  };
113
127
  }
114
- var A = "acpserver", j = new Set([A]);
115
- function M(e) {
116
- return e ? Object.entries(e).filter(([e]) => !j.has(e)).sort(([e], [t]) => e.localeCompare(t)) : [];
128
+ var N = "acpserver", P = new Set([N]);
129
+ function F(e) {
130
+ return e ? Object.entries(e).filter(([e]) => !P.has(e)).sort(([e], [t]) => e.localeCompare(t)) : [];
117
131
  }
118
- var N = "gAAAAA", P = new Set([
132
+ var I = "gAAAAA", L = new Set([
119
133
  "schema_version",
120
134
  "agent_settings",
121
135
  "workspace",
@@ -123,31 +137,31 @@ var N = "gAAAAA", P = new Set([
123
137
  "initial_message",
124
138
  "plugins"
125
139
  ]);
126
- function F(e) {
140
+ function R(e) {
127
141
  return !e || typeof e != "object" || Array.isArray(e) ? {} : structuredClone(e);
128
142
  }
129
- function I(e) {
143
+ function z(e) {
130
144
  if (typeof e != "string") return;
131
145
  let t = e.trim();
132
146
  return t.length > 0 ? t : void 0;
133
147
  }
134
- function L(e) {
148
+ function B(e) {
135
149
  return !!e && typeof e == "object" && !Array.isArray(e);
136
150
  }
137
- function R(e) {
138
- return typeof e == "string" ? e.startsWith(N) : Array.isArray(e) ? e.some(R) : L(e) ? Object.values(e).some(R) : !1;
151
+ function V(e) {
152
+ return typeof e == "string" ? e.startsWith(I) : Array.isArray(e) ? e.some(V) : B(e) ? Object.values(e).some(V) : !1;
139
153
  }
140
- function z(e) {
141
- return L(e) ? Object.values(e).some(R) : !1;
154
+ function H(e) {
155
+ return B(e) ? Object.values(e).some(V) : !1;
142
156
  }
143
- function B(e) {
157
+ function U(e) {
144
158
  return e.confirmation_mode === !0 ? e.security_analyzer === "llm" ? {
145
159
  kind: "ConfirmRisky",
146
160
  threshold: "HIGH",
147
161
  confirm_unknown: !0
148
162
  } : { kind: "AlwaysConfirm" } : { kind: "NeverConfirm" };
149
163
  }
150
- function V(e) {
164
+ function W(e) {
151
165
  switch (e.security_analyzer) {
152
166
  case "llm": return { kind: "LLMSecurityAnalyzer" };
153
167
  case "pattern": return { kind: "PatternSecurityAnalyzer" };
@@ -155,30 +169,30 @@ function V(e) {
155
169
  default: return;
156
170
  }
157
171
  }
158
- function H(e) {
172
+ function te(e) {
159
173
  return !!e && typeof e == "object" && !Array.isArray(e) && typeof e.name == "string";
160
174
  }
161
- function U(e, t) {
162
- return e === x ? C() && i(e) : e === S ? t.enable_sub_agents === !0 && i(e) : !0;
175
+ function G(e, t) {
176
+ return e === w ? E() && o(e) : e === T ? t.enable_sub_agents === !0 && o(e) : !0;
163
177
  }
164
- function W(e) {
178
+ function K(e) {
165
179
  let t = /* @__PURE__ */ new Map();
166
- for (let n of b) U(n, e) && t.set(n, {
180
+ for (let n of C) G(n, e) && t.set(n, {
167
181
  name: n,
168
182
  params: {}
169
183
  });
170
- for (let n of [x, S]) U(n, e) && t.set(n, {
184
+ for (let n of [w, T]) G(n, e) && t.set(n, {
171
185
  name: n,
172
186
  params: {}
173
187
  });
174
188
  let n = e.tools;
175
- if (Array.isArray(n) && n.every((e) => H(e))) for (let r of n) U(r.name, e) && t.set(r.name, {
189
+ if (Array.isArray(n) && n.every((e) => te(e))) for (let r of n) G(r.name, e) && t.set(r.name, {
176
190
  name: r.name,
177
- params: F(r.params)
191
+ params: R(r.params)
178
192
  });
179
193
  return Array.from(t.values());
180
194
  }
181
- function G(e, t) {
195
+ function q(e, t) {
182
196
  let n = [e?.trim(), t?.trim()].filter(Boolean);
183
197
  return n.length === 0 ? null : {
184
198
  role: "user",
@@ -189,8 +203,8 @@ function G(e, t) {
189
203
  run: !0
190
204
  };
191
205
  }
192
- function K() {
193
- return l.map((e) => {
206
+ function J() {
207
+ return d.map((e) => {
194
208
  let t = e.triggers?.length > 0 ? {
195
209
  type: "keyword",
196
210
  keywords: e.triggers
@@ -207,75 +221,75 @@ function K() {
207
221
  };
208
222
  });
209
223
  }
210
- function q(e) {
211
- let t = E(), n = F(e.agent_context), r = [...Array.isArray(n.skills) ? n.skills : [], ...K()];
224
+ function Y(e, t, n = []) {
225
+ let r = k(t), i = R(e.agent_context), a = Array.isArray(i.skills) ? i.skills : [], o = new Set(n), s = [...a, ...J()].filter((e) => typeof e.name != "string" || !o.has(e.name));
212
226
  return {
213
- ...n,
214
- skills: r,
227
+ ...i,
228
+ skills: s,
215
229
  load_public_skills: !1,
216
230
  load_user_skills: !0,
217
231
  load_project_skills: !0,
218
- ...t ? { system_message_suffix: t } : {}
232
+ ...r ? { system_message_suffix: r } : {}
219
233
  };
220
234
  }
221
- function J(e) {
222
- return F(e.agent_settings).agent_kind === "acp";
235
+ function X(e) {
236
+ return R(e.agent_settings).agent_kind === "acp";
223
237
  }
224
- function Y(e) {
225
- let t = F(e.agent_settings).acp_server;
238
+ function Z(e) {
239
+ let t = R(e.agent_settings).acp_server;
226
240
  return typeof t == "string" && t.length > 0 ? t : void 0;
227
241
  }
228
- function X(e) {
242
+ function Q(e) {
229
243
  let t = e.acp_command;
230
244
  if (!(Array.isArray(t) && t.length === 0) && t !== void 0) return t;
231
- let n = f(typeof e.acp_server == "string" ? e.acp_server : void 0);
245
+ let n = m(typeof e.acp_server == "string" ? e.acp_server : void 0);
232
246
  return n ? [...n.default_command] : t;
233
247
  }
234
- function Z(e) {
235
- let t = F(e.agent_settings), n = {
248
+ function ne(e, t) {
249
+ let n = R(e.agent_settings), r = {
236
250
  agent_kind: "acp",
237
- agent_context: q(t)
251
+ agent_context: Y(n, t, e.disabled_skills)
238
252
  };
239
- for (let e of s) {
253
+ for (let e of l) {
240
254
  if (e === "acp_model" || e === "acp_env") continue;
241
- let r = e === "acp_command" ? X(t) : t[e];
242
- r != null && (n[e] = r);
255
+ let t = e === "acp_command" ? Q(n) : n[e];
256
+ t != null && (r[e] = t);
243
257
  }
244
- let r = F(t.mcp_config);
245
- Object.keys(r).length > 0 && (n.mcp_config = r);
246
- let i = typeof t.acp_server == "string" ? t.acp_server : void 0, a = p({
247
- configured: t.acp_model,
248
- providerDefault: d(i)
258
+ let i = R(n.mcp_config);
259
+ Object.keys(i).length > 0 && (r.mcp_config = i);
260
+ let a = typeof n.acp_server == "string" ? n.acp_server : void 0, o = h({
261
+ configured: n.acp_model,
262
+ providerDefault: p(a)
249
263
  });
250
- return a && (n.acp_model = a), n;
251
- }
252
- function Q(e) {
253
- let t = F(e.agent_settings), n = F(t.llm);
254
- n.model = typeof n.model == "string" && n.model.trim().length > 0 ? n.model : u.llm_model, n.stream = !0;
255
- let r = I(n.api_key);
256
- r ? n.api_key = r : delete n.api_key;
257
- let i = I(n.base_url);
258
- i ? n.base_url = i : delete n.base_url, _(n) ? (n.auth_type = h, n.subscription_vendor = g, delete n.api_key, delete n.base_url) : (delete n.auth_type, delete n.subscription_vendor);
259
- let a = F(t.mcp_config);
260
- Object.keys(a).length === 0 && delete t.mcp_config, delete t.acp_server;
261
- for (let e of s) delete t[e];
262
- return delete t.acp_env, {
263
- ...t,
264
- llm: n,
265
- agent_context: q(t),
266
- tools: W(t)
264
+ return o && (r.acp_model = o), r;
265
+ }
266
+ function re(e, t) {
267
+ let n = R(e.agent_settings), r = R(n.llm);
268
+ r.model = typeof r.model == "string" && r.model.trim().length > 0 ? r.model : f.llm_model, r.stream = !0;
269
+ let i = z(r.api_key);
270
+ i ? r.api_key = i : delete r.api_key;
271
+ let a = z(r.base_url);
272
+ a ? r.base_url = a : delete r.base_url, b(r) ? (r.auth_type = v, r.subscription_vendor = y, delete r.api_key, delete r.base_url) : (delete r.auth_type, delete r.subscription_vendor);
273
+ let o = R(n.mcp_config);
274
+ Object.keys(o).length === 0 && delete n.mcp_config, delete n.acp_server;
275
+ for (let e of l) delete n[e];
276
+ return delete n.acp_env, {
277
+ ...n,
278
+ llm: r,
279
+ agent_context: Y(n, t, e.disabled_skills),
280
+ tools: K(n)
267
281
  };
268
282
  }
269
- function ne(e) {
270
- return J(e) ? Z(e) : Q(e);
283
+ function ie(e, t) {
284
+ return X(e) ? ne(e, t) : re(e, t);
271
285
  }
272
- function re(e) {
273
- let { settings: n, query: r, conversationInstructions: i, plugins: a, workingDir: o } = e, s = F(n.conversation_settings), c = G(r, i);
274
- return P.forEach((e) => delete s[e]), {
286
+ function ae(e) {
287
+ let { settings: t, query: r, conversationInstructions: i, plugins: a, workingDir: o } = e, s = R(t.conversation_settings), c = q(r, i);
288
+ return L.forEach((e) => delete s[e]), {
275
289
  ...s,
276
290
  workspace: {
277
291
  kind: "LocalWorkspace",
278
- working_dir: o ?? t()
292
+ working_dir: o ?? n()
279
293
  },
280
294
  ...c ? { initial_message: c } : {},
281
295
  ...a?.length ? { plugins: a.map((e) => ({
@@ -285,63 +299,68 @@ function re(e) {
285
299
  })) } : {}
286
300
  };
287
301
  }
288
- function ie(e) {
302
+ function oe(e) {
289
303
  let t = e.encryptedAgentSettings ? {
290
304
  ...e.settings,
291
305
  agent_settings: e.encryptedAgentSettings
292
- } : e.settings, r = J(t), i = e.agentProfileId ? e.agentProfileKind : r ? "acp" : "openhands", s = ne(t), c = r ? Y(t) : void 0, l = re(e.encryptedConversationSettings ? {
306
+ } : e.settings, n = X(t), i = e.agentProfileId ? e.agentProfileKind : n ? "acp" : "openhands", a = ie(t, e.runtimeServicesInfo), o = n ? Z(t) : void 0, l = ae(e.encryptedConversationSettings ? {
293
307
  ...e,
294
308
  settings: {
295
309
  ...e.settings,
296
310
  conversation_settings: e.encryptedConversationSettings
297
311
  }
298
312
  } : e), u = {
299
- ...e.agentProfileId ? { agent_profile_id: e.agentProfileId } : { agent_settings: s },
313
+ ...e.agentProfileId ? { agent_profile_id: e.agentProfileId } : { agent_settings: a },
300
314
  workspace: l.workspace,
301
- client_tools: i === "openhands" ? [y] : [],
302
- confirmation_policy: B(l),
315
+ client_tools: i === "openhands" ? [S] : [],
316
+ confirmation_policy: U(l),
303
317
  max_iterations: typeof l.max_iterations == "number" ? l.max_iterations : 500,
304
318
  stuck_detection: !0,
305
319
  autotitle: !0,
306
320
  ...e.titleLlmProfile ? { title_llm_profile: e.titleLlmProfile } : {},
307
321
  worktree: e.worktree ?? !0
308
322
  };
309
- !e.agentProfileId && c && (u.tags = { [A]: c }), !e.agentProfileId && e.secretsEncrypted && (!r || z(s.mcp_config)) && (u.secrets_encrypted = !0), e.conversationId && (u.conversation_id = e.conversationId);
310
- let d = V(l);
323
+ !e.agentProfileId && o && (u.tags = { [N]: o }), !e.agentProfileId && e.secretsEncrypted && (!n || H(a.mcp_config)) && (u.secrets_encrypted = !0), e.conversationId && (u.conversation_id = e.conversationId);
324
+ let d = W(l);
311
325
  d && (u.security_analyzer = d), l.initial_message && (u.initial_message = l.initial_message), l.plugins && (u.plugins = l.plugins), l.hook_config && (u.hook_config = l.hook_config);
312
326
  let f = { ...l.tool_module_qualnames ?? {} };
313
- if (delete f[o], delete f[a], Object.keys(f).length > 0 && (u.tool_module_qualnames = f), l.agent_definitions && (u.agent_definitions = l.agent_definitions), e.customSecrets && e.customSecrets.length > 0) {
314
- let t = n(), r = t ? m(t) : {}, i = {};
327
+ if (delete f[c], delete f[s], Object.keys(f).length > 0 && (u.tool_module_qualnames = f), l.agent_definitions && (u.agent_definitions = l.agent_definitions), e.customSecrets && e.customSecrets.length > 0) {
328
+ let t = r(), n = t ? g(t) : {}, i = {};
315
329
  for (let t of e.customSecrets) {
316
330
  let e = {
317
331
  kind: "LookupSecret",
318
332
  url: `/api/settings/secrets/${encodeURIComponent(t.name)}`,
319
333
  description: t.description
320
334
  };
321
- Object.keys(r).length > 0 && (e.headers = r), i[t.name] = e;
335
+ Object.keys(n).length > 0 && (e.headers = n), i[t.name] = e;
322
336
  }
323
337
  u.secrets = i;
324
338
  }
325
339
  return u;
326
340
  }
327
- var ae = "Connect your ChatGPT subscription before starting a conversation with this LLM profile.";
341
+ var se = "Connect your ChatGPT subscription before starting a conversation with this LLM profile.";
328
342
  async function $(e) {
329
- if (_(F(e.llm)) && !(await v.getOpenAIStatus()).connected) throw Error(ae);
330
- }
331
- async function oe(e) {
332
- let { SecretsService: t } = await import("./secrets-service.js"), [n, r] = await Promise.all([ee.getSettingsForConversation(), t.getSecrets()]), { agentSettings: i, conversationSettings: a, secretsEncrypted: o } = n;
333
- return e.agentProfileId || await $(i), ie({
343
+ if (b(R(e.llm)) && !(await x.getOpenAIStatus()).connected) throw Error(se);
344
+ }
345
+ async function ce(e) {
346
+ let { SecretsService: t } = await import("./secrets-service.js"), [n, r, i] = await Promise.all([
347
+ _.getSettingsForConversation(),
348
+ t.getSecrets(),
349
+ O()
350
+ ]), { agentSettings: a, conversationSettings: o, secretsEncrypted: s } = n;
351
+ return e.agentProfileId || await $(a), oe({
334
352
  ...e,
335
- encryptedAgentSettings: i,
336
- encryptedConversationSettings: a,
337
- secretsEncrypted: o,
338
- customSecrets: r
353
+ encryptedAgentSettings: a,
354
+ encryptedConversationSettings: o,
355
+ secretsEncrypted: s,
356
+ customSecrets: r,
357
+ runtimeServicesInfo: i
339
358
  });
340
359
  }
341
- function se() {
360
+ function le() {
342
361
  return { hooks: [] };
343
362
  }
344
363
  //#endregion
345
- export { $ as assertSubscriptionAuthReady, oe as buildStartConversationRequestWithEncryptedSettings, se as emptyHooksResponse, D as getDefaultConversationTitle, M as getDisplayConversationTags, O as toAppConversation, k as toConversationPage };
364
+ export { $ as assertSubscriptionAuthReady, ce as buildStartConversationRequestWithEncryptedSettings, le as emptyHooksResponse, A as getDefaultConversationTitle, F as getDisplayConversationTags, j as toAppConversation, M as toConversationPage };
346
365
 
347
366
  //# sourceMappingURL=agent-server-adapter.js.map