@openhands/agent-canvas 1.0.0-alpha.9 → 1.0.0-beta.2

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 (370) hide show
  1. package/README.md +2 -2
  2. package/bin/agent-canvas.mjs +22 -2
  3. package/build/assets/{QueryClientProvider-B7kl84Kj.js → QueryClientProvider-CkGuhXg-.js} +1 -1
  4. package/build/assets/{Trans-1j65oy9O.js → Trans-Cvm_-SMi.js} +1 -1
  5. package/build/assets/acp-providers-CbiRekh9.js +1 -0
  6. package/build/assets/{acp-route-guard-CQTmeJwM.js → acp-route-guard-B2yoBZ_4.js} +1 -1
  7. package/build/assets/{active-backend-context-TVbjnvmP.js → active-backend-context-cCM1vYYZ.js} +1 -1
  8. package/build/assets/add-backend-modal-DIUQzMPa.js +1 -0
  9. package/build/assets/agent-server-client-options-Bc5ZorQZ.js +1 -0
  10. package/build/assets/agent-server-compatibility-BlkUsrX2.js +1 -0
  11. package/build/assets/agent-server-conversation-service.api-DFvqqEDo.js +5 -0
  12. package/build/assets/{agent-settings-B247S9G3.js → agent-settings-CnGSCmK8.js} +1 -1
  13. package/build/assets/{alert-banner-BWoqueRw.js → alert-banner-DtzAX654.js} +1 -1
  14. package/build/assets/{analytics-consent-form-modal-C7sXfxRh.js → analytics-consent-form-modal-CHZ3I37v.js} +1 -1
  15. package/build/assets/api-key-entry-screen-B2gynaCp.js +1 -0
  16. package/build/assets/{app-settings-BVeSaty9.js → app-settings-Db9ITeJH.js} +1 -1
  17. package/build/assets/{automation-detail-R-99FUce.js → automation-detail-Di7EOIZD.js} +1 -1
  18. package/build/assets/{automations-list-Dfu2c-_D.js → automations-list-IsIWdDiw.js} +1 -1
  19. package/build/assets/{backend-form-modal-DxYjqqAK.js → backend-form-modal-Dnk33xA_.js} +1 -1
  20. package/build/assets/{backend-synced-settings-badge-nAfiUWvM.js → backend-synced-settings-badge-Dc6c7GT4.js} +1 -1
  21. package/build/assets/{base-modal-CQRvRHu1.js → base-modal-_dYTw1ri.js} +1 -1
  22. package/build/assets/{brand-button-C2nEKopC.js → brand-button-Br7f0kZJ.js} +1 -1
  23. package/build/assets/{browser-HrYc5Gce.js → browser-D810xUYt.js} +2 -2
  24. package/build/assets/browser-store-Couc4S5D.js +1 -0
  25. package/build/assets/browser-tab-B-aIqXRl.js +1 -0
  26. package/build/assets/{checkmark-BJJrZUF8.js → checkmark-DL7acQA7.js} +1 -1
  27. package/build/assets/{chevron-left-small-CSh-sE9L.js → chevron-left-small-CVWf8TI6.js} +1 -1
  28. package/build/assets/{circle-plus-check-toggle-qs8Va1cC.js → circle-plus-check-toggle-P7ZZToV4.js} +1 -1
  29. package/build/assets/{clock-ZR4Kn-_Y.js → clock-BRjCgHTc.js} +1 -1
  30. package/build/assets/{close-BdmyeRqS.js → close-B5LROHR3.js} +1 -1
  31. package/build/assets/{combobox-caret-B53O9Hsq.js → combobox-caret-to1O8irE.js} +1 -1
  32. package/build/assets/{condenser-settings-A35V3yng.js → condenser-settings-wnEKhBof.js} +1 -1
  33. package/build/assets/{confirmation-modal-C9-La0h3.js → confirmation-modal-Dau3w_sa.js} +1 -1
  34. package/build/assets/{context-menu-list-item-Buu9nc0q.js → context-menu-list-item-CWNFpuiC.js} +1 -1
  35. package/build/assets/conversation-HlncOV7n.js +19 -0
  36. package/build/assets/conversation-MtnkpqA9.js +1 -0
  37. package/build/assets/conversation-panel-DxnM6tRe.js +1 -0
  38. package/build/assets/{conversation-service.api--f8WglOC.js → conversation-service.api-nb5W1PqR.js} +1 -1
  39. package/build/assets/{conversation-tab-empty-state-D8dNvo-V.js → conversation-tab-empty-state-DyssnnWa.js} +1 -1
  40. package/build/assets/conversation-websocket-context-C8_PkGLi.js +3 -0
  41. package/build/assets/{copy-C7Ti2d8C.js → copy-DYgmUdIw.js} +1 -1
  42. package/build/assets/{custom-toast-handlers-BOc3qeQ7.js → custom-toast-handlers-C-SZFmto.js} +1 -1
  43. package/build/assets/declaration-BNMqORFE.js +1 -0
  44. package/build/assets/{device-verify-CMusn8nX.js → device-verify-DqDlphsG.js} +1 -1
  45. package/build/assets/{dist-DZHSA2e6.js → dist-C6t0EXL7.js} +1 -1
  46. package/build/assets/{edit-automation-modal-Dnjxbjn7.js → edit-automation-modal-BGzR3nfZ.js} +1 -1
  47. package/build/assets/{ellipsis-button-ugUATsNo.js → ellipsis-button-ZyLMPURn.js} +1 -1
  48. package/build/assets/{entry.client-CqqXOSvd.js → entry.client-1VMHpktY.js} +2 -2
  49. package/build/assets/{enum-filter-dropdown-1vpOGySB.js → enum-filter-dropdown-CEgCdu4A.js} +1 -1
  50. package/build/assets/{environment-switch-overlay-CTCTQikP.js → environment-switch-overlay-XL8yCGP6.js} +1 -1
  51. package/build/assets/{extensions-hub-BSUseHVF.js → extensions-hub-C651jsVh.js} +1 -1
  52. package/build/assets/{extensions-navigation-CT1kc1u_.js → extensions-navigation-BYR8Giqq.js} +1 -1
  53. package/build/assets/files-tab-BhnLgimi.js +1 -0
  54. package/build/assets/{folder-0WSMImNX.js → folder-ZZJVGgd7.js} +1 -1
  55. package/build/assets/{git-control-bar-branch-button-C8u5rzjc.js → git-control-bar-branch-button-M34A5_vX.js} +2 -2
  56. package/build/assets/{git-provider-icon-D-a-rcLm.js → git-provider-icon-D5dCNy-k.js} +1 -1
  57. package/build/assets/home-CYQv7yc_.js +1 -0
  58. package/build/assets/{i18n-DjAGhTis.js → i18n-CTohRuoO.js} +1 -1
  59. package/build/assets/install-server-modal-f31_CLrW.js +1 -0
  60. package/build/assets/{launch-B2mbfOSm.js → launch-DHEUYn2A.js} +1 -1
  61. package/build/assets/{lesson-plan-DRYG5SLI.js → lesson-plan-dH5Bj0pN.js} +1 -1
  62. package/build/assets/{link-external-C9d6Fo3x.js → link-external-D2POYx4c.js} +1 -1
  63. package/build/assets/{llm-client-ChQzg4wX.js → llm-client-DaH1TuyR.js} +1 -1
  64. package/build/assets/llm-settings-Bql-vydt.js +1 -0
  65. package/build/assets/llm-settings-C_tal6Ds.js +1 -0
  66. package/build/assets/{loading-spinner-C04FGh14.js → loading-spinner-BPtYORNK.js} +1 -1
  67. package/build/assets/{manage-backends-modal-s22zCdEW.js → manage-backends-modal-l7RkKfwX.js} +1 -1
  68. package/build/assets/{manage-workspaces-modal-C5EuW8m1.js → manage-workspaces-modal-DhKF_8z3.js} +1 -1
  69. package/build/assets/manifest-6b31008e.js +1 -0
  70. package/build/assets/{markdown-renderer-CEX4Becj.js → markdown-renderer-DMzf2i4x.js} +1 -1
  71. package/build/assets/mcp-D2onbwVk.js +9 -0
  72. package/build/assets/{messages-6aOyUu3r.js → messages-BMzyOW2V.js} +1 -1
  73. package/build/assets/{modal-backdrop-DTYGVmOR.js → modal-backdrop-BAbgYsqB.js} +1 -1
  74. package/build/assets/{modal-body-YElmM1dV.js → modal-body-BI6Ru2Qr.js} +1 -1
  75. package/build/assets/{modal-close-button-C_GpQt9F.js → modal-close-button-t1Gh3qmL.js} +1 -1
  76. package/build/assets/{model-selector-DeMmw-Xa.js → model-selector-SM9IUz-q.js} +1 -1
  77. package/build/assets/{mutation-Cz7N4XAo.js → mutation-D0OogFCz.js} +1 -1
  78. package/build/assets/{navigation-context-DeIPtGPp.js → navigation-context-D0YWpT8d.js} +1 -1
  79. package/build/assets/{navigation-link-C9JD4PYD.js → navigation-link-Cn7KP3c5.js} +1 -1
  80. package/build/assets/{openhands-logo-CI5Fhn1W.js → openhands-logo-CnrF6LKb.js} +1 -1
  81. package/build/assets/{option-service.api-DsI1UW7N.js → option-service.api-KvY_mZMY.js} +1 -1
  82. package/build/assets/{organization-service.api-COwMPFg5.js → organization-service.api-DzYTHTYC.js} +1 -1
  83. package/build/assets/{path-utils-BVbe598W.js → path-utils-YohAYyMv.js} +1 -1
  84. package/build/assets/{plan-components-DEjMuDDG.js → plan-components-atxXCF0R.js} +1 -1
  85. package/build/assets/{planner-tab-bN6r1G-1.js → planner-tab-CFc-hV07.js} +1 -1
  86. package/build/assets/{profiles-client-BGkKEV9j.js → profiles-client-D6IkTJof.js} +1 -1
  87. package/build/assets/{providers-DXvCAN_u.js → providers-Bx6EfrzZ.js} +1 -1
  88. package/build/assets/{proxy-CurRmrqf.js → proxy-CxydCnis.js} +1 -1
  89. package/build/assets/{query-client-config-Ba7qAAoO.js → query-client-config-B7u9asM0.js} +1 -1
  90. package/build/assets/{recommended-automations-launcher-mJhK6Atl.js → recommended-automations-launcher-sgvfU62c.js} +3 -3
  91. package/build/assets/root-E6pcRIYp.js +2 -0
  92. package/build/assets/{root-layout-BjVwHmta.js → root-layout-DVepR4To.js} +2 -2
  93. package/build/assets/sdk-section-page-DOIKvwSL.js +1 -0
  94. package/build/assets/{sdk-settings-schema-QBYH-ONX.js → sdk-settings-schema-DsUf9wu1.js} +1 -1
  95. package/build/assets/{search-Cq_cFrDt.js → search-27Owlc3A.js} +1 -1
  96. package/build/assets/{secrets-service-Bwd5DeUs.js → secrets-service-BsnKFc2x.js} +1 -1
  97. package/build/assets/secrets-settings-Bz_UohPJ.js +1 -0
  98. package/build/assets/{server-client-C3mC8Hl3.js → server-client-DyAQ3NZ_.js} +1 -1
  99. package/build/assets/{settings-D7E2U5tK.js → settings-BYkVX7vW.js} +1 -1
  100. package/build/assets/{settings-client-CwjfwoiB.js → settings-client-C73C7IgV.js} +1 -1
  101. package/build/assets/{settings-dropdown-input-VwAXNrOb.js → settings-dropdown-input-BJYvGdg-.js} +1 -1
  102. package/build/assets/{settings-gear-BJwWR1ej.js → settings-gear-C77PgE_O.js} +1 -1
  103. package/build/assets/{settings-index-J-3BNR0W.js → settings-index-Dz0BmdJD.js} +1 -1
  104. package/build/assets/{settings-input-DBywAnA7.js → settings-input-Bn7F5C75.js} +1 -1
  105. package/build/assets/{settings-list-classes-BOS092DR.js → settings-list-classes-Bf80tWtc.js} +1 -1
  106. package/build/assets/{settings-modal-B8vgWDTe.js → settings-modal-Brzgh5Yw.js} +1 -1
  107. package/build/assets/{settings-section-header-context-32x6WTyL.js → settings-section-header-context-BgZe5YkE.js} +1 -1
  108. package/build/assets/{settings-service.api-FvJGK45W.js → settings-service.api-CZ3uWx4v.js} +1 -1
  109. package/build/assets/{settings-switch-DTKmHC8F.js → settings-switch-BeIKrWms.js} +1 -1
  110. package/build/assets/{shared-conversation-EZV0FRIf.js → shared-conversation-DChOdb0t.js} +1 -1
  111. package/build/assets/{sidebar-mobile-menu-toggle-BnbzzpQl.js → sidebar-mobile-menu-toggle-BWuf4PRH.js} +1 -1
  112. package/build/assets/{sidebar-nav-link-CnWoZcwc.js → sidebar-nav-link-BGjiJq-4.js} +1 -1
  113. package/build/assets/{skill-card-pill-row-tZ599jli.js → skill-card-pill-row-DF1axQCG.js} +1 -1
  114. package/build/assets/{skills-ZyAO5dyK.js → skills-ChIKZPK4.js} +1 -1
  115. package/build/assets/{skills-plugins-BSRz041I.js → skills-plugins-CcI_19lM.js} +1 -1
  116. package/build/assets/{skills-settings-CG2hu34D.js → skills-settings-DlA5hlXw.js} +1 -1
  117. package/build/assets/{status-CsatcFbK.js → status-hp6M6E7E.js} +1 -1
  118. package/build/assets/{styled-tooltip-CS3mB_1X.js → styled-tooltip-CBzrri6o.js} +1 -1
  119. package/build/assets/{switch-skeleton-C-CfhYYV.js → switch-skeleton-DnC9wLp7.js} +1 -1
  120. package/build/assets/{task-list-tab-465DDju0.js → task-list-tab-DUJn1sgz.js} +1 -1
  121. package/build/assets/{terminal-CcgBEVnC.js → terminal-CRf9S0Z2.js} +1 -1
  122. package/build/assets/{terminal-LNa-iU5c.js → terminal-RmuaSdhJ.js} +1 -1
  123. package/build/assets/{toggle-switch-k-IZCDbt.js → toggle-switch-Pvyp2RAN.js} +1 -1
  124. package/build/assets/{typography-vVUMoNUg.js → typography-gpuWmrQO.js} +1 -1
  125. package/build/assets/{u-check-circle-DplbarS5.js → u-check-circle-IUIfACQQ.js} +1 -1
  126. package/build/assets/{u-check-circle-half-yDuiSZHC.js → u-check-circle-half-C1YxB6py.js} +1 -1
  127. package/build/assets/{u-circuit-C9tYkpeK.js → u-circuit-BmVikJHu.js} +1 -1
  128. package/build/assets/{u-edit-KAUlufD8.js → u-edit-CFvXHqZk.js} +1 -1
  129. package/build/assets/use-active-conversation-Db3IWSPK.js +1 -0
  130. package/build/assets/{use-agent-settings-schema-Bvp5UzV8.js → use-agent-settings-schema-33Un7UF2.js} +1 -1
  131. package/build/assets/{use-agent-state-D2C9SeGw.js → use-agent-state-Bn8vS5sY.js} +1 -1
  132. package/build/assets/{use-cloud-current-user-id-DWVar4st.js → use-cloud-current-user-id-CvkXFnTT.js} +1 -1
  133. package/build/assets/use-config-Co1O8-Ey.js +1 -0
  134. package/build/assets/{use-create-conversation-BEZg__Vv.js → use-create-conversation-CKS3EAHu.js} +1 -1
  135. package/build/assets/use-get-secrets-DuhdIA59.js +1 -0
  136. package/build/assets/{use-handle-plan-click-uOpew2LO.js → use-handle-plan-click-C9zJpK8A.js} +1 -1
  137. package/build/assets/use-is-authed-BggE5wPj.js +1 -0
  138. package/build/assets/{use-is-creating-conversation-DhDeeWfA.js → use-is-creating-conversation-BZ5hB_Bg.js} +1 -1
  139. package/build/assets/{use-launch-skill-in-chat-DVGPFrbI.js → use-launch-skill-in-chat-fNN_xGZG.js} +1 -1
  140. package/build/assets/{use-llm-profiles-O4a9V6RC.js → use-llm-profiles-DDOol3gK.js} +1 -1
  141. package/build/assets/use-runtime-is-ready-CQCE3xZC.js +1 -0
  142. package/build/assets/{use-save-settings-CEEKSTWG.js → use-save-settings-VUrj_QNG.js} +1 -1
  143. package/build/assets/{use-settings-DQ7Oo1Hj.js → use-settings-DQIZmIov.js} +1 -1
  144. package/build/assets/{use-settings-nav-items-YmrXrjn9.js → use-settings-nav-items-1ZvovKSr.js} +1 -1
  145. package/build/assets/{use-skills-BIvlWblA.js → use-skills-DAMLFjKU.js} +1 -1
  146. package/build/assets/use-unified-vscode-url-sZt29HrC.js +1 -0
  147. package/build/assets/use-user-conversation-DfgEB6RW.js +1 -0
  148. package/build/assets/{useMutation-B4OUESdw.js → useMutation-DqrumCWD.js} +1 -1
  149. package/build/assets/{useTranslation-CpIcQBq6.js → useTranslation-DCOdSSMl.js} +1 -1
  150. package/build/assets/{utils-D-HX7JCe.js → utils-i18rdUj2.js} +1 -1
  151. package/build/assets/v4-CNn21NXa.js +1 -0
  152. package/build/assets/{vendor~browser-Dr71AdrG.js → vendor~browser-BNjNhjFU.js} +1 -1
  153. package/build/assets/{vendor~browser-tab-BiVxfjJo.js → vendor~browser-tab-BgwV1mxF.js} +1 -1
  154. package/build/assets/{vendor~conversation-panel~conversation-BlCIz9XQ.js → vendor~conversation-panel~conversation-a9SyrrhV.js} +1 -1
  155. package/build/assets/{vendor~files-tab-DtLR-QD9.js → vendor~files-tab-BGKayPiK.js} +1 -1
  156. package/build/assets/{vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-Ds9quNZ9.js → vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-smY2r837.js} +1 -1
  157. package/build/assets/{vendor~home~mcp~automations-list-C5PoHCy6.js → vendor~home~mcp~automations-list-Ccy2I0KU.js} +1 -1
  158. package/build/assets/{vendor~home~mcp~automations-list-BUBGGGYz.js → vendor~home~mcp~automations-list-DoPfwaXj.js} +1 -1
  159. package/build/assets/{vendor~home~mcp~llm-settings~agent-settings~condenser-settings~verification-settings~app-se~ocm3mykx-CGlZoBKa.js → vendor~home~mcp~llm-settings~agent-settings~condenser-settings~verification-settings~app-se~ocm3mykx-DbfELDJu.js} +2 -2
  160. package/build/assets/{vendor~home~mcp~llm-settings~agent-settings~condenser-settings~verification-settings~app-se~ocm3mykx-DE11mPxp.js → vendor~home~mcp~llm-settings~agent-settings~condenser-settings~verification-settings~app-se~ocm3mykx-Z3nsiNNq.js} +1 -1
  161. package/build/assets/{vendor~launch-Dg--Ssk6.js → vendor~launch-vdeRTWFu.js} +1 -1
  162. package/build/assets/{vendor~root-layout~conversation-panel~conversation~shared-conversation-DrXgiSCq.js → vendor~root-layout~conversation-panel~conversation~shared-conversation-DW31UyBp.js} +1 -1
  163. package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~skil~iguv7bgw-8b8V5bfO.js → vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~skil~iguv7bgw-BkQGKpye.js} +1 -1
  164. package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~skil~iguv7bgw-Dy7L6fMG.js → vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~skil~iguv7bgw-DzIXV3Ui.js} +1 -1
  165. package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~skil~k776hupu-D40EXhZx.js → vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~skil~k776hupu-Bbs7UJ5U.js} +2 -2
  166. package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~dp08i1qy-CHrEOFl6.js → vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~dp08i1qy-DTwbEEcX.js} +1 -1
  167. package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~shared-conversation~alert-banner~pl~rqjteh0a-BP1SKG0F.js → vendor~root-layout~home~conversation-panel~conversation~shared-conversation~alert-banner~pl~rqjteh0a-d2oallMa.js} +1 -1
  168. package/build/assets/{vendor~root~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-s~kyz9p27j-CyUbhpbm.js → vendor~root~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-s~f2l2lr17-CDXvdvb2.js} +1 -1
  169. package/build/assets/{verification-settings-BtlTiHP8.js → verification-settings-CsbvQcYS.js} +1 -1
  170. package/build/assets/{vscode-tab-B0vdh9gU.js → vscode-tab-Zb-QbTuV.js} +1 -1
  171. package/build/assets/{waiting-for-runtime-message-DWPl_Yby.js → waiting-for-runtime-message-CntjExbU.js} +1 -1
  172. package/build/assets/{x-mark-CWI0f9yI.js → x-mark-CrpjscNc.js} +1 -1
  173. package/build/index.html +4 -4
  174. package/build/locales/ar/openhands.json +7 -0
  175. package/build/locales/ca/openhands.json +7 -0
  176. package/build/locales/de/openhands.json +7 -0
  177. package/build/locales/en/openhands.json +7 -0
  178. package/build/locales/es/openhands.json +7 -0
  179. package/build/locales/fr/openhands.json +7 -0
  180. package/build/locales/it/openhands.json +7 -0
  181. package/build/locales/ja/openhands.json +7 -0
  182. package/build/locales/ko-KR/openhands.json +7 -0
  183. package/build/locales/no/openhands.json +7 -0
  184. package/build/locales/pt/openhands.json +7 -0
  185. package/build/locales/tr/openhands.json +7 -0
  186. package/build/locales/uk/openhands.json +7 -0
  187. package/build/locales/zh-CN/openhands.json +7 -0
  188. package/build/locales/zh-TW/openhands.json +7 -0
  189. package/config/defaults.json +0 -4
  190. package/dist/api/agent-server-adapter.cjs +1 -1
  191. package/dist/api/agent-server-adapter.cjs.map +1 -1
  192. package/dist/api/agent-server-adapter.js +1 -1
  193. package/dist/api/agent-server-adapter.js.map +1 -1
  194. package/dist/api/agent-server-compatibility.cjs +1 -1
  195. package/dist/api/agent-server-compatibility.cjs.map +1 -1
  196. package/dist/api/agent-server-compatibility.d.ts +16 -0
  197. package/dist/api/agent-server-compatibility.js +31 -20
  198. package/dist/api/agent-server-compatibility.js.map +1 -1
  199. package/dist/api/agent-server-config.cjs +1 -1
  200. package/dist/api/agent-server-config.cjs.map +1 -1
  201. package/dist/api/agent-server-config.d.ts +45 -0
  202. package/dist/api/agent-server-config.js +49 -21
  203. package/dist/api/agent-server-config.js.map +1 -1
  204. package/dist/api/backend-registry/storage.cjs +1 -1
  205. package/dist/api/backend-registry/storage.cjs.map +1 -1
  206. package/dist/api/backend-registry/storage.js +34 -32
  207. package/dist/api/backend-registry/storage.js.map +1 -1
  208. package/dist/api/conversation-service/agent-server-conversation-service.api.cjs +1 -1
  209. package/dist/api/conversation-service/agent-server-conversation-service.api.cjs.map +1 -1
  210. package/dist/api/conversation-service/agent-server-conversation-service.api.d.ts +5 -4
  211. package/dist/api/conversation-service/agent-server-conversation-service.api.js +70 -76
  212. package/dist/api/conversation-service/agent-server-conversation-service.api.js.map +1 -1
  213. package/dist/components/features/backends/api-key-entry-screen.d.ts +10 -0
  214. package/dist/components/features/backends/backend-form-modal.cjs +1 -1
  215. package/dist/components/features/backends/backend-form-modal.cjs.map +1 -1
  216. package/dist/components/features/backends/backend-form-modal.d.ts +23 -2
  217. package/dist/components/features/backends/backend-form-modal.js +43 -38
  218. package/dist/components/features/backends/backend-form-modal.js.map +1 -1
  219. package/dist/components/features/browser/browser.cjs +1 -1
  220. package/dist/components/features/browser/browser.cjs.map +1 -1
  221. package/dist/components/features/browser/browser.js +10 -16
  222. package/dist/components/features/browser/browser.js.map +1 -1
  223. package/dist/components/features/mcp-page/install-server-modal.cjs +1 -1
  224. package/dist/components/features/mcp-page/install-server-modal.cjs.map +1 -1
  225. package/dist/components/features/mcp-page/install-server-modal.js +123 -116
  226. package/dist/components/features/mcp-page/install-server-modal.js.map +1 -1
  227. package/dist/components/features/mcp-page/installed-server-card.cjs +1 -1
  228. package/dist/components/features/mcp-page/installed-server-card.cjs.map +1 -1
  229. package/dist/components/features/mcp-page/installed-server-card.js +40 -40
  230. package/dist/components/features/mcp-page/installed-server-card.js.map +1 -1
  231. package/dist/components/features/mcp-page/marketplace-card.cjs +1 -1
  232. package/dist/components/features/mcp-page/marketplace-card.cjs.map +1 -1
  233. package/dist/components/features/mcp-page/marketplace-card.js +2 -3
  234. package/dist/components/features/mcp-page/marketplace-card.js.map +1 -1
  235. package/dist/components/features/mcp-page/marketplace-section.cjs +1 -1
  236. package/dist/components/features/mcp-page/marketplace-section.cjs.map +1 -1
  237. package/dist/components/features/mcp-page/marketplace-section.js +21 -21
  238. package/dist/components/features/mcp-page/marketplace-section.js.map +1 -1
  239. package/dist/components/features/onboarding/steps/setup-acp-secrets-step.d.ts +27 -0
  240. package/dist/components/features/settings/llm-profiles/llm-settings-local-view.cjs +1 -1
  241. package/dist/components/features/settings/llm-profiles/llm-settings-local-view.js +2 -0
  242. package/dist/components/features/settings/sdk-settings/sdk-section-page.cjs +1 -1
  243. package/dist/components/features/settings/sdk-settings/sdk-section-page.cjs.map +1 -1
  244. package/dist/components/features/settings/sdk-settings/sdk-section-page.d.ts +10 -1
  245. package/dist/components/features/settings/sdk-settings/sdk-section-page.js +87 -84
  246. package/dist/components/features/settings/sdk-settings/sdk-section-page.js.map +1 -1
  247. package/dist/constants/acp-providers.cjs +1 -1
  248. package/dist/constants/acp-providers.cjs.map +1 -1
  249. package/dist/constants/acp-providers.d.ts +25 -0
  250. package/dist/constants/acp-providers.js +1 -0
  251. package/dist/constants/acp-providers.js.map +1 -1
  252. package/dist/contexts/conversation-websocket-context.cjs +3 -3
  253. package/dist/contexts/conversation-websocket-context.cjs.map +1 -1
  254. package/dist/contexts/conversation-websocket-context.js +136 -132
  255. package/dist/contexts/conversation-websocket-context.js.map +1 -1
  256. package/dist/hooks/chat/use-model-interceptor.cjs.map +1 -1
  257. package/dist/hooks/chat/use-model-interceptor.js.map +1 -1
  258. package/dist/hooks/mutation/use-switch-llm-profile.cjs.map +1 -1
  259. package/dist/hooks/mutation/use-switch-llm-profile.d.ts +1 -1
  260. package/dist/hooks/mutation/use-switch-llm-profile.js.map +1 -1
  261. package/dist/hooks/query/use-config.cjs +1 -1
  262. package/dist/hooks/query/use-config.cjs.map +1 -1
  263. package/dist/hooks/query/use-config.js +10 -10
  264. package/dist/hooks/query/use-config.js.map +1 -1
  265. package/dist/hooks/query/use-local-git-info.cjs +3 -3
  266. package/dist/hooks/query/use-local-git-info.cjs.map +1 -1
  267. package/dist/hooks/query/use-local-git-info.js +24 -25
  268. package/dist/hooks/query/use-local-git-info.js.map +1 -1
  269. package/dist/i18n/declaration.cjs +1 -1
  270. package/dist/i18n/declaration.cjs.map +1 -1
  271. package/dist/i18n/declaration.d.ts +7 -0
  272. package/dist/i18n/declaration.js +1 -1
  273. package/dist/i18n/declaration.js.map +1 -1
  274. package/dist/i18n/translation.cjs +2 -2
  275. package/dist/i18n/translation.cjs.map +1 -1
  276. package/dist/i18n/translation.js +119 -0
  277. package/dist/i18n/translation.js.map +1 -1
  278. package/dist/locales/ar/openhands.json +7 -0
  279. package/dist/locales/ca/openhands.json +7 -0
  280. package/dist/locales/de/openhands.json +7 -0
  281. package/dist/locales/en/openhands.json +7 -0
  282. package/dist/locales/es/openhands.json +7 -0
  283. package/dist/locales/fr/openhands.json +7 -0
  284. package/dist/locales/it/openhands.json +7 -0
  285. package/dist/locales/ja/openhands.json +7 -0
  286. package/dist/locales/ko-KR/openhands.json +7 -0
  287. package/dist/locales/no/openhands.json +7 -0
  288. package/dist/locales/pt/openhands.json +7 -0
  289. package/dist/locales/tr/openhands.json +7 -0
  290. package/dist/locales/uk/openhands.json +7 -0
  291. package/dist/locales/zh-CN/openhands.json +7 -0
  292. package/dist/locales/zh-TW/openhands.json +7 -0
  293. package/dist/package.cjs +1 -1
  294. package/dist/package.cjs.map +1 -1
  295. package/dist/package.js +1 -1
  296. package/dist/package.js.map +1 -1
  297. package/dist/routes/mcp.cjs +1 -1
  298. package/dist/routes/mcp.cjs.map +1 -1
  299. package/dist/routes/mcp.js +64 -64
  300. package/dist/routes/mcp.js.map +1 -1
  301. package/dist/stores/browser-store.cjs +1 -1
  302. package/dist/stores/browser-store.cjs.map +1 -1
  303. package/dist/stores/browser-store.js +1 -1
  304. package/dist/stores/browser-store.js.map +1 -1
  305. package/dist/utils/mcp-marketplace-utils.cjs +1 -1
  306. package/dist/utils/mcp-marketplace-utils.cjs.map +1 -1
  307. package/dist/utils/mcp-marketplace-utils.d.ts +13 -22
  308. package/dist/utils/mcp-marketplace-utils.js +46 -28
  309. package/dist/utils/mcp-marketplace-utils.js.map +1 -1
  310. package/dist/utils/sdk-settings-schema.cjs +1 -1
  311. package/dist/utils/sdk-settings-schema.cjs.map +1 -1
  312. package/dist/utils/sdk-settings-schema.d.ts +1 -0
  313. package/dist/utils/sdk-settings-schema.js +1 -1
  314. package/dist/utils/sdk-settings-schema.js.map +1 -1
  315. package/package.json +1 -1
  316. package/scripts/dev-safe.mjs +59 -40
  317. package/scripts/dev-static.mjs +2 -3
  318. package/scripts/dev-with-automation.mjs +75 -19
  319. package/scripts/static-server.mjs +77 -35
  320. package/tools/canvas_ui_tool.py +4 -0
  321. package/build/assets/acp-providers-DauuOsW9.js +0 -1
  322. package/build/assets/add-backend-modal-FsnpTTgO.js +0 -1
  323. package/build/assets/agent-server-client-options-DT2GP6VJ.js +0 -1
  324. package/build/assets/agent-server-compatibility-2aOx5iWd.js +0 -1
  325. package/build/assets/agent-server-conversation-service.api-BZmUqtiO.js +0 -5
  326. package/build/assets/browser-store-C3AqxAO7.js +0 -1
  327. package/build/assets/browser-tab-B_BuTvrO.js +0 -1
  328. package/build/assets/conversation--ldUK72N.js +0 -19
  329. package/build/assets/conversation-eNrhH94O.js +0 -1
  330. package/build/assets/conversation-panel-B49Jpqpb.js +0 -1
  331. package/build/assets/conversation-websocket-context-BW68-J8o.js +0 -3
  332. package/build/assets/declaration-D378OjpZ.js +0 -1
  333. package/build/assets/files-tab-CQHdWpQt.js +0 -1
  334. package/build/assets/home-DD0GroCu.js +0 -1
  335. package/build/assets/install-server-modal-z5VaHeXd.js +0 -1
  336. package/build/assets/llm-settings-BEyqixPI.js +0 -1
  337. package/build/assets/llm-settings-BdiaGFbg.js +0 -1
  338. package/build/assets/manifest-9d1c34fb.js +0 -1
  339. package/build/assets/mcp-C06YssEI.js +0 -9
  340. package/build/assets/root-3t9rxEpE.js +0 -2
  341. package/build/assets/sdk-section-page-CJW0G04-.js +0 -1
  342. package/build/assets/secrets-settings-MLXqOtX2.js +0 -1
  343. package/build/assets/use-active-conversation-DS5j9R4q.js +0 -1
  344. package/build/assets/use-config-BSu_53GL.js +0 -1
  345. package/build/assets/use-conversation-id-DajhCn2A.js +0 -1
  346. package/build/assets/use-is-authed-hXC8vxgT.js +0 -1
  347. package/build/assets/use-runtime-is-ready-pGSbPddC.js +0 -1
  348. package/build/assets/use-unified-vscode-url-wAMzv8Sn.js +0 -1
  349. package/build/assets/use-user-conversation-B_zDoSeh.js +0 -1
  350. /package/build/assets/{automation-XLxhq3I8.js → automation-IdgZq6ZK.js} +0 -0
  351. /package/build/assets/{common-SMkEaBSr.js → common-DR1t-EeP.js} +0 -0
  352. /package/build/assets/{conversation-state-store-Bc0slAjL.js → conversation-state-store-u5jepov0.js} +0 -0
  353. /package/build/assets/{dist-yMQV8IUk.js → dist-BxBP7tFD.js} +0 -0
  354. /package/build/assets/{git-status-mapper-BI8FyUVp.js → git-status-mapper-DnL9OC8_.js} +0 -0
  355. /package/build/assets/{handle-capture-consent-BfZATzpI.js → handle-capture-consent-3XrjZ8wi.js} +0 -0
  356. /package/build/assets/{iconBase-C7N9pPOs.js → iconBase-DE30Zj_-.js} +0 -0
  357. /package/build/assets/{settings-D5am1n6X.js → settings-D_H-qsRm.js} +0 -0
  358. /package/build/assets/{settings-like-page-layout-classes-Bn-M9oOa.js → settings-like-page-layout-classes-I0BDBEoq.js} +0 -0
  359. /package/build/assets/{settings-utils-BsvSU3OM.js → settings-utils-B6Nl07io.js} +0 -0
  360. /package/build/assets/{sidebar-store-cOeaKmIm.js → sidebar-store-Uy3v0AOV.js} +0 -0
  361. /package/build/assets/{use-breakpoint-B86yKT9n.js → use-breakpoint-DbJ6FkQ-.js} +0 -0
  362. /package/build/assets/{use-click-outside-element-835W9pC6.js → use-click-outside-element-DffgWWoZ.js} +0 -0
  363. /package/build/assets/{use-task-list-DDeNHprj.js → use-task-list-CLJbuJgM.js} +0 -0
  364. /package/build/assets/{vendor~browser-BpdPBhgZ.js → vendor~browser-DDiZgqD3.js} +0 -0
  365. /package/build/assets/{vendor~conversation-panel~conversation~alert-banner-Df7_G0zR.js → vendor~conversation-panel~conversation~alert-banner-DbvX3OcM.js} +0 -0
  366. /package/build/assets/{vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~b4cctr4k-B7YVdv1X.js → vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~g56ukk6u-DsSvIDZQ.js} +0 -0
  367. /package/build/assets/{vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~i9dbt75i-CI82Did1.js → vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~hkqzh1hb-BZ0HXuHD.js} +0 -0
  368. /package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~pfbaerbd-zhv9fooy.js → vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~ninslayh-D9P8e98a.js} +0 -0
  369. /package/build/assets/{vendor~terminal-BUxzHKcC.js → vendor~terminal-DUrOWGFE.js} +0 -0
  370. /package/build/assets/{vscode-url-helper-jesbpos5.js → vscode-url-helper-Cwy1A62q.js} +0 -0
@@ -30,10 +30,10 @@ var g = je(void 0);
30
30
  function _(e) {
31
31
  return e.llm_message.content.filter((e) => e.type === "text").map((e) => e.text).join("");
32
32
  }
33
- function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey: y, subConversations: b, subConversationIds: x }) {
34
- let [S, C] = h("CONNECTING"), [w, T] = h("CONNECTING"), E = Ae.useRef(!1), D = Ae.useRef(!1), O = me(), k = pe(), A = l((e) => e.addEvent), Fe = l((e) => e.addEvents), Ie = l((e) => e.clearEventsForConversation), { setErrorMessage: j, removeErrorMessage: Le, clearConnectionError: M } = _e(), N = ve((e) => e.consumeMatchingPendingMessage), { setExecutionStatus: P } = ee(), { appendInput: F, appendOutput: I } = t(), [L, R] = h(!0), [z, Re] = h(null), { setPlanContent: B } = r(), { mutate: V } = we(), H = Ne(0), U = Ne(null), ze = (e) => e?.toUpperCase().endsWith("PLAN.MD") ?? !1, W = d(() => {
35
- M();
36
- }, [M]), G = d((e) => {
33
+ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey: y, subConversations: b, subConversationIds: Fe }) {
34
+ let [x, S] = h("CONNECTING"), [C, w] = h("CONNECTING"), T = Ae.useRef(!1), E = Ae.useRef(!1), D = me(), O = pe(), k = l((e) => e.addEvent), Ie = l((e) => e.addEvents), Le = l((e) => e.clearEventsForConversation), { setErrorMessage: A, removeErrorMessage: Re, clearConnectionError: j } = _e(), M = ve((e) => e.consumeMatchingPendingMessage), { setExecutionStatus: N } = ee(), { appendInput: P, appendOutput: F } = t(), ze = e((e) => e.reset), [I, L] = h(!0), [R, Be] = h(null), { setPlanContent: z } = r(), { mutate: B } = we(), V = Ne(0), H = Ne(null), Ve = (e) => e?.toUpperCase().endsWith("PLAN.MD") ?? !1, U = d(() => {
35
+ j();
36
+ }, [j]), W = d((e) => {
37
37
  if (e.value.usage_to_metrics?.agent) {
38
38
  let t = e.value.usage_to_metrics.agent, n = {
39
39
  cost: t.accumulated_cost,
@@ -49,72 +49,76 @@ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey:
49
49
  };
50
50
  Te.getState().setMetrics(n);
51
51
  }
52
- }, []), { data: K, isPending: q, isError: Be } = Ee(f), Ve = !!f && q;
52
+ }, []), { data: G, isPending: K, isError: He } = Ee(f), Ue = !!f && K;
53
53
  Me(() => {
54
54
  let e = f ?? null;
55
- l.getState().loadedConversationId !== e && Ie(e);
56
- }, [f, Ie]), Me(() => {
57
- if (!(!K || K.events.length === 0) && (Fe(K.events), f)) for (let e of K.events) c(e) && N(f, _(e));
55
+ l.getState().loadedConversationId !== e && (Le(e), ze());
58
56
  }, [
59
- K,
60
- Fe,
61
57
  f,
62
- N
58
+ Le,
59
+ ze
60
+ ]), Me(() => {
61
+ if (!(!G || G.events.length === 0) && (Ie(G.events), f)) for (let e of G.events) c(e) && M(f, _(e));
62
+ }, [
63
+ G,
64
+ Ie,
65
+ f,
66
+ M
63
67
  ]);
64
- let J = m(() => {
65
- if (q) return null;
66
- let e = K?.events ?? [], t = e[e.length - 1];
68
+ let q = m(() => {
69
+ if (K) return null;
70
+ let e = G?.events ?? [], t = e[e.length - 1];
67
71
  return !t || !("timestamp" in t) || !t.timestamp ? null : t.timestamp;
68
- }, [K, q]), Y = m(() => !f || !v || q && !Be ? null : xe(f, v), [
72
+ }, [G, K]), J = m(() => !f || !v || K && !He ? null : xe(f, v), [
69
73
  f,
70
74
  v,
71
- q,
72
- Be
73
- ]), X = m(() => {
75
+ K,
76
+ He
77
+ ]), Y = m(() => {
74
78
  if (!b?.length) return null;
75
79
  let e = b[0];
76
80
  return !e?.id || !e.conversation_url ? null : xe(e.id, e.conversation_url);
77
- }, [b]), He = m(() => X ? S === "CONNECTING" || w === "CONNECTING" ? "CONNECTING" : S === "OPEN" && w === "OPEN" ? "OPEN" : S === "CLOSED" && w === "CLOSED" ? "CLOSED" : S === "CLOSING" || w === "CLOSING" ? "CLOSING" : "CLOSED" : S, [
78
- S,
79
- w,
80
- X
81
+ }, [b]), We = m(() => Y ? x === "CONNECTING" || C === "CONNECTING" ? "CONNECTING" : x === "OPEN" && C === "OPEN" ? "OPEN" : x === "CLOSED" && C === "CLOSED" ? "CLOSED" : x === "CLOSING" || C === "CLOSING" ? "CLOSING" : "CLOSED" : x, [
82
+ x,
83
+ C,
84
+ Y
81
85
  ]);
82
86
  p(() => {
83
- z !== null && H.current >= z && L && R(!1);
87
+ R !== null && V.current >= R && I && L(!1);
84
88
  }, [
85
- z,
86
- L,
87
- H
89
+ R,
90
+ I,
91
+ V
88
92
  ]), p(() => {
89
- if (!L && U.current) {
90
- let { path: e, conversationId: t } = U.current;
91
- V({
93
+ if (!I && H.current) {
94
+ let { path: e, conversationId: t } = H.current;
95
+ B({
92
96
  conversationId: t,
93
97
  filePath: e
94
98
  }, {
95
99
  onSuccess: (e) => {
96
- B(e);
100
+ z(e);
97
101
  },
98
102
  onError: (e) => {
99
103
  console.warn("Failed to read conversation file:", e);
100
104
  }
101
- }), U.current = null;
105
+ }), H.current = null;
102
106
  }
103
107
  }, [
104
- L,
105
- V,
106
- B
108
+ I,
109
+ B,
110
+ z
107
111
  ]), p(() => {
108
- E.current = !1, R(!!x?.length), Re(null), H.current = 0, U.current = null;
109
- }, [x]), p(() => {
110
- E.current = !1, D.current = !1, U.current = null;
112
+ T.current = !1, L(!!Fe?.length), Be(null), V.current = 0, H.current = null;
113
+ }, [Fe]), p(() => {
114
+ T.current = !1, E.current = !1, H.current = null;
111
115
  }, [f]);
112
- let Ue = m(() => Ve || L, [Ve, L]), Z = d((t) => {
116
+ let X = m(() => Ue || I, [Ue, I]), Ge = d((t) => {
113
117
  try {
114
118
  let r = JSON.parse(t.data);
115
119
  if (re(r)) {
116
120
  let t = !l.getState().eventIds.has(r.id) && de(r) ? r : null;
117
- if (A(r), a(r)) {
121
+ if (k(r), a(r)) {
118
122
  let e = r;
119
123
  u({
120
124
  message: e.detail,
@@ -123,9 +127,9 @@ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey:
123
127
  eventId: e.id,
124
128
  errorCode: e.code
125
129
  },
126
- posthog: O
127
- }), j(e.detail);
128
- } else W();
130
+ posthog: D
131
+ }), A(e.detail);
132
+ } else U();
129
133
  if (ne(r) && u({
130
134
  message: r.error,
131
135
  source: "agent",
@@ -134,36 +138,36 @@ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey:
134
138
  toolName: r.tool_name,
135
139
  toolCallId: r.tool_call_id
136
140
  },
137
- posthog: O
138
- }), c(r) && f && (N(f, _(r)), n(f, { draftMessage: null })), te(r) && be(r, f || "test-conversation-id", k), i(r) && (ce(r) && P(r.value.execution_status), ie(r) && P(r.value), ue(r) && G(r)), o(r) && F(r.action.command), s(r) && I(r.observation.content.filter((e) => e.type === "text").map((e) => e.text).join("\n")), oe(r)) {
141
+ posthog: D
142
+ }), c(r) && f && (M(f, _(r)), n(f, { draftMessage: null })), te(r) && be(r, f || "test-conversation-id", O), i(r) && (ce(r) && N(r.value.execution_status), ie(r) && N(r.value), ue(r) && W(r)), o(r) && P(r.action.command), s(r) && F(r.observation.content.filter((e) => e.type === "text").map((e) => e.text).join("\n")), oe(r)) {
139
143
  let { screenshot_data: t } = r.observation;
140
144
  if (t) {
141
145
  let n = t.startsWith("data:") ? t : `data:image/png;base64,${t}`;
142
146
  e.getState().setScreenshotSrc(n);
143
147
  }
144
148
  }
145
- ae(r) && e.getState().setUrl(r.action.url), f && t && !t.observation.is_error && (De(f, t.observation.profile_name), t.observation.active_model && ke(k, f, t.observation.active_model), Oe(k, f)), se(r) && ye(r.action);
149
+ ae(r) && e.getState().setUrl(r.action.url), f && t && !t.observation.is_error && (De(f, t.observation.profile_name), t.observation.active_model && ke(O, f, t.observation.active_model), Oe(O, f)), se(r) && ye(r.action);
146
150
  }
147
151
  } catch (e) {
148
152
  console.warn("Failed to parse WebSocket message as JSON:", e);
149
153
  }
150
154
  }, [
151
- A,
152
- j,
153
- N,
154
155
  k,
156
+ A,
157
+ M,
158
+ O,
155
159
  f,
160
+ N,
156
161
  P,
157
162
  F,
158
- I,
159
- G,
160
163
  W,
161
- O
162
- ]), We = d((e) => {
164
+ U,
165
+ D
166
+ ]), Ke = d((e) => {
163
167
  try {
164
168
  let t = JSON.parse(e.data);
165
- if (L && (H.current += 1, z !== null && H.current >= z && R(!1)), re(t)) {
166
- if (A({
169
+ if (I && (V.current += 1, R !== null && V.current >= R && L(!1)), re(t)) {
170
+ if (k({
167
171
  ...t,
168
172
  isFromPlanningAgent: !0
169
173
  }), a(t)) {
@@ -175,9 +179,9 @@ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey:
175
179
  eventId: e.id,
176
180
  errorCode: e.code
177
181
  },
178
- posthog: O
179
- }), j(e.detail);
180
- } else W();
182
+ posthog: D
183
+ }), A(e.detail);
184
+ } else U();
181
185
  if (ne(t) && u({
182
186
  message: t.error,
183
187
  source: "planning_agent",
@@ -186,20 +190,20 @@ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey:
186
190
  toolName: t.tool_name,
187
191
  toolCallId: t.tool_call_id
188
192
  },
189
- posthog: O
190
- }), c(t) && f && (N(f, _(t)), n(f, { draftMessage: null })), te(t) && be(t, b?.[0]?.id || "test-conversation-id", k), i(t) && (ce(t) && P(t.value.execution_status), ie(t) && P(t.value), ue(t) && G(t)), o(t) && F(t.action.command), s(t) && I(t.observation.content.filter((e) => e.type === "text").map((e) => e.text).join("\n")), le(t)) {
193
+ posthog: D
194
+ }), c(t) && f && (M(f, _(t)), n(f, { draftMessage: null })), te(t) && be(t, b?.[0]?.id || "test-conversation-id", O), i(t) && (ce(t) && N(t.value.execution_status), ie(t) && N(t.value), ue(t) && W(t)), o(t) && P(t.action.command), s(t) && F(t.observation.content.filter((e) => e.type === "text").map((e) => e.text).join("\n")), le(t)) {
191
195
  let { path: e } = t.observation;
192
- if (ze(e)) {
196
+ if (Ve(e)) {
193
197
  let t = b?.[0]?.id;
194
- t && e && (L ? U.current = {
198
+ t && e && (I ? H.current = {
195
199
  path: e,
196
200
  conversationId: t
197
- } : V({
201
+ } : B({
198
202
  conversationId: t,
199
203
  filePath: e
200
204
  }, {
201
205
  onSuccess: (e) => {
202
- B(e);
206
+ z(e);
203
207
  },
204
208
  onError: (e) => {
205
209
  console.warn("Failed to read conversation file:", e);
@@ -212,48 +216,48 @@ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey:
212
216
  console.warn("Failed to parse WebSocket message as JSON:", e);
213
217
  }
214
218
  }, [
215
- A,
216
- L,
217
- z,
218
- j,
219
- N,
220
219
  k,
220
+ I,
221
+ R,
222
+ A,
223
+ M,
224
+ O,
221
225
  b,
222
226
  f,
227
+ N,
223
228
  P,
224
229
  F,
225
- I,
226
- V,
227
230
  B,
228
- G,
231
+ z,
229
232
  W,
230
- O
231
- ]), Ge = m(() => {
232
- let e = J ? {
233
+ U,
234
+ D
235
+ ]), qe = m(() => {
236
+ let e = q ? {
233
237
  resend_mode: "since",
234
- after_timestamp: J
238
+ after_timestamp: q
235
239
  } : { resend_mode: "all" };
236
240
  return y && (e.session_api_key = y), {
237
241
  queryParams: e,
238
242
  reconnect: { enabled: !0 },
239
243
  onOpen: () => {
240
- C("OPEN"), E.current = !0, M();
244
+ S("OPEN"), T.current = !0, j();
241
245
  },
242
246
  onClose: () => {
243
- C("CLOSED");
247
+ S("CLOSED");
244
248
  },
245
249
  onError: () => {
246
- C("CLOSED"), E.current && j(ge, "connection");
250
+ S("CLOSED"), T.current && A(ge, "connection");
247
251
  },
248
- onMessage: Z
252
+ onMessage: Ge
249
253
  };
250
254
  }, [
251
- Z,
255
+ Ge,
256
+ A,
252
257
  j,
253
- M,
254
258
  y,
255
- J
256
- ]), Ke = m(() => {
259
+ q
260
+ ]), Je = m(() => {
257
261
  let e = { resend_all: !0 };
258
262
  y && (e.session_api_key = y);
259
263
  let t = b?.[0];
@@ -261,44 +265,44 @@ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey:
261
265
  queryParams: e,
262
266
  reconnect: { enabled: !0 },
263
267
  onOpen: async () => {
264
- if (T("OPEN"), D.current = !0, M(), t?.id && t.conversation_url) try {
268
+ if (w("OPEN"), E.current = !0, j(), t?.id && t.conversation_url) try {
265
269
  let e = await Ce.getEventCount(t.id, t.conversation_url, t.session_api_key);
266
- Re(e), e === 0 && R(!1);
270
+ Be(e), e === 0 && L(!1);
267
271
  } catch {
268
- R(!1);
272
+ L(!1);
269
273
  }
270
274
  },
271
275
  onClose: () => {
272
- T("CLOSED");
276
+ w("CLOSED");
273
277
  },
274
278
  onError: () => {
275
- T("CLOSED"), D.current && j(ge, "connection");
279
+ w("CLOSED"), E.current && A(ge, "connection");
276
280
  },
277
- onMessage: We
281
+ onMessage: Ke
278
282
  };
279
283
  }, [
280
- We,
284
+ Ke,
285
+ A,
281
286
  j,
282
- M,
283
287
  y,
284
288
  b
285
- ]), { socket: Q, reconnect: qe } = he(Y || "", Ge), { socket: $, reconnect: Je } = he(X || "", Ke), Ye = d(() => {
286
- if (Le(), r.getState().conversationMode === "plan" && X) {
287
- Je();
289
+ ]), { socket: Z, reconnect: Ye } = he(J || "", qe), { socket: Q, reconnect: Xe } = he(Y || "", Je), Ze = d(() => {
290
+ if (Re(), r.getState().conversationMode === "plan" && Y) {
291
+ Xe();
288
292
  return;
289
293
  }
290
- qe();
294
+ Ye();
291
295
  }, [
292
- X,
293
- qe,
294
- Je,
295
- Le
296
- ]), Xe = d(async (e) => {
297
- let t = r.getState().conversationMode === "plan" ? $ : Q;
296
+ Y,
297
+ Ye,
298
+ Xe,
299
+ Re
300
+ ]), $ = d(async (e) => {
301
+ let t = r.getState().conversationMode === "plan" ? Q : Z;
298
302
  if (t?.readyState !== WebSocket.OPEN) {
299
303
  if (!f) {
300
304
  let e = /* @__PURE__ */ Error("No conversation ID available");
301
- throw j(e.message), e;
305
+ throw A(e.message), e;
302
306
  }
303
307
  try {
304
308
  return await new fe(Se()).sendEvent(f, {
@@ -306,7 +310,7 @@ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey:
306
310
  content: e.content
307
311
  }, { run: !0 }), { queued: !0 };
308
312
  } catch (e) {
309
- throw j(e instanceof Error ? e.message : "Failed to queue message for delivery"), e;
313
+ throw A(e instanceof Error ? e.message : "Failed to queue message for delivery"), e;
310
314
  }
311
315
  }
312
316
  try {
@@ -315,68 +319,68 @@ function v({ children: je, conversationId: f, conversationUrl: v, sessionApiKey:
315
319
  run: !0
316
320
  })), { queued: !1 };
317
321
  } catch (e) {
318
- throw j(e instanceof Error ? e.message : "Failed to send message"), e;
322
+ throw A(e instanceof Error ? e.message : "Failed to send message"), e;
319
323
  }
320
324
  }, [
325
+ Z,
321
326
  Q,
322
- $,
323
- j,
327
+ A,
324
328
  f
325
329
  ]);
326
330
  p(() => {
327
- Q && Y && (() => {
328
- switch (Q.readyState) {
331
+ Z && J && (() => {
332
+ switch (Z.readyState) {
329
333
  case WebSocket.CONNECTING:
330
- C("CONNECTING");
334
+ S("CONNECTING");
331
335
  break;
332
336
  case WebSocket.OPEN:
333
- C("OPEN");
337
+ S("OPEN");
334
338
  break;
335
339
  case WebSocket.CLOSING:
336
- C("CLOSING");
340
+ S("CLOSING");
337
341
  break;
338
342
  case WebSocket.CLOSED:
339
- C("CLOSED");
343
+ S("CLOSED");
340
344
  break;
341
345
  default:
342
- C("CLOSED");
346
+ S("CLOSED");
343
347
  break;
344
348
  }
345
349
  })();
346
- }, [Q, Y]), p(() => {
347
- $ && X && (() => {
348
- switch ($.readyState) {
350
+ }, [Z, J]), p(() => {
351
+ Q && Y && (() => {
352
+ switch (Q.readyState) {
349
353
  case WebSocket.CONNECTING:
350
- T("CONNECTING");
354
+ w("CONNECTING");
351
355
  break;
352
356
  case WebSocket.OPEN:
353
- T("OPEN");
357
+ w("OPEN");
354
358
  break;
355
359
  case WebSocket.CLOSING:
356
- T("CLOSING");
360
+ w("CLOSING");
357
361
  break;
358
362
  case WebSocket.CLOSED:
359
- T("CLOSED");
363
+ w("CLOSED");
360
364
  break;
361
365
  default:
362
- T("CLOSED");
366
+ w("CLOSED");
363
367
  break;
364
368
  }
365
369
  })();
366
- }, [$, X]);
367
- let Ze = m(() => ({
368
- connectionState: He,
369
- sendMessage: Xe,
370
- isLoadingHistory: Ue,
371
- reconnect: Ye
370
+ }, [Q, Y]);
371
+ let Qe = m(() => ({
372
+ connectionState: We,
373
+ sendMessage: $,
374
+ isLoadingHistory: X,
375
+ reconnect: Ze
372
376
  }), [
373
- He,
374
- Xe,
375
- Ue,
376
- Ye
377
+ We,
378
+ $,
379
+ X,
380
+ Ze
377
381
  ]);
378
382
  return /* @__PURE__ */ Pe(g.Provider, {
379
- value: Ze,
383
+ value: Qe,
380
384
  children: je
381
385
  });
382
386
  }