@openhands/agent-canvas 1.10.0 → 1.12.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 (531) hide show
  1. package/README.md +1 -1
  2. package/README.windows.md +2 -2
  3. package/build/assets/{acp-providers-DLe_gVDY.js → acp-providers-BkL3HWa3.js} +1 -1
  4. package/build/assets/{active-backend-context-B0wI7OzM.js → active-backend-context-B_bg5h9O.js} +1 -1
  5. package/build/assets/{agent-context-settings-CaQtdNA-.js → agent-context-settings-CzWS1DgR.js} +1 -1
  6. package/build/assets/{agent-profiles-settings-CvuErjp6.js → agent-profiles-settings-hd2cAIZM.js} +1 -1
  7. package/build/assets/agent-server-conversation-service.api-BheU4HX3.js +86 -0
  8. package/build/assets/{agent-settings-UE-U4Xii.js → agent-settings-D2J1dKVd.js} +1 -1
  9. package/build/assets/agent-settings-D_SVrWhI.js +1 -0
  10. package/build/assets/{alert-banner-BMaOtTCG.js → alert-banner-lrK-2_0Y.js} +1 -1
  11. package/build/assets/{api-key-entry-screen-Cy66vT4D.js → api-key-entry-screen-D70oJj2c.js} +1 -1
  12. package/build/assets/app-settings-D0OKHB3M.js +1 -0
  13. package/build/assets/{automation-detail-fuITm6i3.js → automation-detail-C0SxWTnQ.js} +3 -3
  14. package/build/assets/{automation-export-CRq40mux.js → automation-export-BjQa_fT6.js} +1 -1
  15. package/build/assets/{automation-setup-route-EXDazOHW.js → automation-setup-route-BzCNpljP.js} +1 -1
  16. package/build/assets/{automation-templates-BArZsaxP.js → automation-templates-D9gs6ihu.js} +1 -1
  17. package/build/assets/{automations-list-CG4HKOTn.js → automations-list-dZg8zOCl.js} +1 -1
  18. package/build/assets/{back-nav-button-BZB6H7xz.js → back-nav-button-B3pYwmUJ.js} +1 -1
  19. package/build/assets/{backend-form-modal-B_lXjOGa.js → backend-form-modal-HwclKrUS.js} +1 -1
  20. package/build/assets/{backend-synced-settings-badge-B_NXJ3u1.js → backend-synced-settings-badge-YI3k09Wr.js} +1 -1
  21. package/build/assets/{badge-C64c-7PO.js → badge-Dpn3-LTV.js} +1 -1
  22. package/build/assets/{base-modal-C0RQPug5.js → base-modal-3NmIOKDm.js} +1 -1
  23. package/build/assets/{brand-button-DJmFCyMK.js → brand-button-CJcwjnfb.js} +1 -1
  24. package/build/assets/{browser-D3gd2n83.js → browser--eoQOo4M.js} +1 -1
  25. package/build/assets/{browser-tab-BicAWuJ1.js → browser-tab-4CPdj3J3.js} +1 -1
  26. package/build/assets/{chat-send-button-CCrH1E8u.js → chat-send-button-B8n6-DQA.js} +1 -1
  27. package/build/assets/{circle-plus-check-toggle-CB_sNERY.js → circle-plus-check-toggle-BVzv5EkZ.js} +1 -1
  28. package/build/assets/{cloud-funnel-analytics-XynamQGU.js → cloud-funnel-analytics-CcSez21r.js} +1 -1
  29. package/build/assets/{combobox-caret-Bwiifgjs.js → combobox-caret-BlmRwiM8.js} +1 -1
  30. package/build/assets/command-menu-BKOLj-TC.js +1 -0
  31. package/build/assets/{condenser-settings-cNGy75gq.js → condenser-settings-DLQogFnB.js} +1 -1
  32. package/build/assets/{confirmation-modal-BATFmFyP.js → confirmation-modal-DAH0XtOp.js} +1 -1
  33. package/build/assets/{context-menu-list-item-DhJCcBA0.js → context-menu-list-item-BQhmFVEK.js} +1 -1
  34. package/build/assets/{conversation-Csdxh9Xt.js → conversation-Cmyw9bFh.js} +4 -4
  35. package/build/assets/conversation-CvoGZ5vC.js +1 -0
  36. package/build/assets/conversation-panel-CvoGZ5vC.js +1 -0
  37. package/build/assets/{conversation-state-store-C2QzhPaK.js → conversation-state-store-CtgILxWF.js} +1 -1
  38. package/build/assets/{conversation-tab-empty-state-D3fb5xIA.js → conversation-tab-empty-state-C9sfDOlt.js} +1 -1
  39. package/build/assets/{copy-to-clipboard-button-c4MQwKGj.js → copy-to-clipboard-button-DatoElj8.js} +1 -1
  40. package/build/assets/{device-verify-oFpQoLgm.js → device-verify-BIjXeW9N.js} +1 -1
  41. package/build/assets/{dropdown-classes-f91ARMV1.js → dropdown-classes-zFW7qPSK.js} +1 -1
  42. package/build/assets/{entry.client-BCzY2Bf3.js → entry.client-EBn3ZtNP.js} +2 -2
  43. package/build/assets/{enum-filter-dropdown-HG3q3rkV.js → enum-filter-dropdown-CctILg5t.js} +1 -1
  44. package/build/assets/{environment-switch-overlay-CquZXolz.js → environment-switch-overlay-Cvmo6clk.js} +1 -1
  45. package/build/assets/{extensions-hub-BeweE0PW.js → extensions-hub-BZ3HYztk.js} +1 -1
  46. package/build/assets/{extensions-navigation-Dd58NlUF.js → extensions-navigation-Bnx32WAb.js} +1 -1
  47. package/build/assets/{files-tab-CLLG55-q.js → files-tab-D5zuU5TY.js} +1 -1
  48. package/build/assets/{form-control-classes-pHtZUI6K.js → form-control-classes-DLN3Qgub.js} +1 -1
  49. package/build/assets/format-model-name-BN_rx1Y3.js +1 -0
  50. package/build/assets/{format-relative-time-6-3uvOXe.js → format-relative-time-BerVamGl.js} +1 -1
  51. package/build/assets/{git-provider-icon-wg7ShB98.js → git-provider-icon-zuKz2cwo.js} +1 -1
  52. package/build/assets/{git-repo-dropdown-CWnaUyxL.js → git-repo-dropdown-B5VnMftu.js} +1 -1
  53. package/build/assets/git-repo-dropdown-Bo7ciSNX.js +1 -0
  54. package/build/assets/{highlighted-source-view-DBtI3por.js → highlighted-source-view-CgJfD5VT.js} +1 -1
  55. package/build/assets/home-DqyeeFA_.js +1 -0
  56. package/build/assets/{home-BpZQkDWM.js → home-Y0aDou-a.js} +1 -1
  57. package/build/assets/{home-store-DM4qw1lF.js → home-store-Cubdq0uP.js} +1 -1
  58. package/build/assets/index-home-DqyeeFA_.js +1 -0
  59. package/build/assets/install-server-modal-DW6dSyGr.js +1 -0
  60. package/build/assets/{kebab-menu-item-content-By16Tm_0.js → kebab-menu-item-content-CKydZrbH.js} +1 -1
  61. package/build/assets/{launch-C9uijypN.js → launch-c4GEP8oo.js} +1 -1
  62. package/build/assets/llm-not-configured-banner-DCE_0B4I.js +27 -0
  63. package/build/assets/llm-settings-8eWBF3Ij.js +1 -0
  64. package/build/assets/llm-settings-D9ko42Pi.js +1 -0
  65. package/build/assets/{llm-subscription-service-DwjJ8-_X.js → llm-subscription-service-B3K-97lP.js} +1 -1
  66. package/build/assets/{loading-spinner-6Yj-YyoS.js → loading-spinner-CN3riY7k.js} +1 -1
  67. package/build/assets/{manage-backends-modal-DrwErS0N.js → manage-backends-modal-DTCME_Pu.js} +1 -1
  68. package/build/assets/manifest-e1c3bc3b.js +1 -0
  69. package/build/assets/{manifest-subpage-layout-CtqVwIvJ.js → manifest-subpage-layout-Ds7G5GZ8.js} +1 -1
  70. package/build/assets/map-provider-7Bp2aih5.js +1 -0
  71. package/build/assets/markdown-renderer-DzvgdZey.js +8 -0
  72. package/build/assets/mcp-Da7wFU7A.js +9 -0
  73. package/build/assets/{mcp-marketplace-utils-BMnYz0Gc.js → mcp-marketplace-utils-DSLou4n7.js} +1 -1
  74. package/build/assets/messages-B2l0qLVk.js +40 -0
  75. package/build/assets/{modal-body-BHGCSAtj.js → modal-body-duRaxj_K.js} +1 -1
  76. package/build/assets/{modal-classes-DSTLuxkA.js → modal-classes-CLEXO6dj.js} +1 -1
  77. package/build/assets/{modal-close-button-dheWZ2ys.js → modal-close-button-D0aT02hs.js} +1 -1
  78. package/build/assets/npm-Cswluf6-.js +1 -0
  79. package/build/assets/{onboarding-5CZvRBbh.js → onboarding-BKbTYlW1.js} +1 -1
  80. package/build/assets/{onboarding-modal-CD2ehuxt.js → onboarding-modal-DrrGlEQq.js} +1 -1
  81. package/build/assets/{organization-service.api-Dsuoep0g.js → organization-service.api-DK8csGvK.js} +1 -1
  82. package/build/assets/{planner-tab-DeO7Thb0.js → planner-tab-D-mZ1I7n.js} +1 -1
  83. package/build/assets/{plugins-management-service-C9f75R6X.js → plugins-management-service-CywqyfLK.js} +1 -1
  84. package/build/assets/{profiles-service.api-Dl20_2IM.js → profiles-service.api-vcE_jJCe.js} +1 -1
  85. package/build/assets/{providers-CeuhK46N.js → providers-CdrPPm0z.js} +1 -1
  86. package/build/assets/{proxy-CIGI9zQC.js → proxy-b4aqL4SX.js} +1 -1
  87. package/build/assets/recommended-automations-launcher-DIYgUdMm.js +1 -0
  88. package/build/assets/{root-BQPNqNvD.js → root-CBBi6IAe.js} +2 -2
  89. package/build/assets/root-CRK9fOFd.css +1 -0
  90. package/build/assets/root-layout-BFN2rCOy.js +2 -0
  91. package/build/assets/{schema-field-z2vSLuLo.js → schema-field-Z-rMg9ti.js} +1 -1
  92. package/build/assets/{sdk-section-page-BnCXAytf.js → sdk-section-page-m_cjygxR.js} +1 -1
  93. package/build/assets/{secrets-service-DGUNlwQd.js → secrets-service-BHF4fxML.js} +1 -1
  94. package/build/assets/{secrets-settings-DUmML_dK.js → secrets-settings-aBGXtQhX.js} +1 -1
  95. package/build/assets/{segmented-toggle-eSofF7gn.js → segmented-toggle-SmvsR3jW.js} +1 -1
  96. package/build/assets/settings-CZPGNens.js +1 -0
  97. package/build/assets/{settings-dropdown-input-Cx4g7Xfl.js → settings-dropdown-input-TWIeiG02.js} +1 -1
  98. package/build/assets/{settings-index-BECdgecg.js → settings-index-Dtlegd6s.js} +1 -1
  99. package/build/assets/{settings-input-BQY115xH.js → settings-input-D61Vzp9e.js} +1 -1
  100. package/build/assets/{settings-list-classes-C9cLrrcc.js → settings-list-classes-sE0ASr1s.js} +1 -1
  101. package/build/assets/{settings-modal-ChBJNTdd.js → settings-modal-CalzJP2l.js} +1 -1
  102. package/build/assets/{settings-service.api-Dz9cZyvx.js → settings-service.api-DfPYaxZJ.js} +1 -1
  103. package/build/assets/{settings-switch-BIodMVz9.js → settings-switch-Drt-rF5s.js} +1 -1
  104. package/build/assets/{settings-utils-BL_Z9uIe.js → settings-utils-gw2ppAvw.js} +1 -1
  105. package/build/assets/{shared-conversation-CSF0aTuE.js → shared-conversation-BIAcuORk.js} +1 -1
  106. package/build/assets/{wrench-DRitTfwe.js → shield-check-D2cpEpv3.js} +1 -1
  107. package/build/assets/{sidebar-layout-DEycoFd_.js → sidebar-layout-Dxg6zc2K.js} +1 -1
  108. package/build/assets/{sidebar-mobile-menu-toggle-DeRvTupV.js → sidebar-mobile-menu-toggle-C6HpQ55l.js} +1 -1
  109. package/build/assets/{sidebar-nav-link-BjpQ-NVc.js → sidebar-nav-link-CxLoG-dG.js} +1 -1
  110. package/build/assets/sidebar-store-BJeYY-E9.js +1 -0
  111. package/build/assets/{skill-card-pill-row-BH6fPGba.js → skill-card-pill-row-B_BYBONu.js} +1 -1
  112. package/build/assets/{skill-icon-badge-D4uznfjU.js → skill-icon-badge-CN41Hy9l.js} +1 -1
  113. package/build/assets/{skill-scope-DH_AUUUP.js → skill-scope-Dt1V5X2p.js} +1 -1
  114. package/build/assets/{skills-plugins-vfvOk34h.js → skills-plugins-B-H0cCOP.js} +1 -1
  115. package/build/assets/skills-settings-DthdIDUb.js +2 -0
  116. package/build/assets/{styled-tooltip-CQ9JEFiO.js → styled-tooltip-C5C07RQC.js} +1 -1
  117. package/build/assets/{task-list-tab-DeF_uXdw.js → task-list-tab-BTde81Iu.js} +1 -1
  118. package/build/assets/{terminal-DRc4rup7.js → terminal-DRrJo-cR.js} +1 -1
  119. package/build/assets/{toggle-switch--8n8NeV_.js → toggle-switch-CIioisto.js} +1 -1
  120. package/build/assets/{typography-BSbUhJPn.js → typography-D9tiHct7.js} +1 -1
  121. package/build/assets/{use-acp-credential-form-BGKFi1VL.js → use-acp-credential-form-DGyo0QvL.js} +1 -1
  122. package/build/assets/{use-activate-agent-profile-2nvALjC-.js → use-activate-agent-profile-DrPzIKJF.js} +1 -1
  123. package/build/assets/{use-agent-profiles-BlQA67MW.js → use-agent-profiles-B37XWDLq.js} +1 -1
  124. package/build/assets/{use-can-manage-org-profiles-Clw5Dh1s.js → use-can-manage-org-profiles-BzE28H3x.js} +1 -1
  125. package/build/assets/{use-cloud-current-user-id-B8AQSQFM.js → use-cloud-current-user-id-U6HPjy50.js} +1 -1
  126. package/build/assets/{use-config-C3zGuUQI.js → use-config-DapX3pjC.js} +1 -1
  127. package/build/assets/{use-create-conversation-FaP0kUpg.js → use-create-conversation-CRf1dCm5.js} +1 -1
  128. package/build/assets/{use-create-secret-CgQ3pXd6.js → use-create-secret-DcpT3RPw.js} +1 -1
  129. package/build/assets/{use-llm-profiles-C-tDO6UB.js → use-llm-profiles-CHxqoHiN.js} +1 -1
  130. package/build/assets/{use-manifest-capabilities-DLP5wCxp.js → use-manifest-capabilities-zihHDbMW.js} +1 -1
  131. package/build/assets/{use-onboarding-completion-BiCdXvlU.js → use-onboarding-completion-6kWOW3ul.js} +1 -1
  132. package/build/assets/{use-plugins-marketplace-DRFNLBlr.js → use-plugins-marketplace-CqkR8kLE.js} +1 -1
  133. package/build/assets/{use-save-agent-profile-CaGVAudI.js → use-save-agent-profile-CH9_EXQG.js} +1 -1
  134. package/build/assets/{use-save-settings-C9B8Y-h3.js → use-save-settings-DIEurJ3D.js} +1 -1
  135. package/build/assets/{use-settings-3RcgdUuZ.js → use-settings-BmLzQjnC.js} +1 -1
  136. package/build/assets/use-settings-nav-items-DV9qgeu7.js +16 -0
  137. package/build/assets/{use-tracking-CTtkLAmx.js → use-tracking-salbPJxT.js} +1 -1
  138. package/build/assets/{use-user-conversation-Bei82QsZ.js → use-user-conversation-Dt-W6uNw.js} +1 -1
  139. package/build/assets/utils-DPQfkd-7.js +1 -0
  140. package/build/assets/{verification-settings-nD61Ijph.js → verification-settings-oi54wEc1.js} +1 -1
  141. package/build/assets/wrench-B1_H-tL1.js +1 -0
  142. package/build/index.html +4 -4
  143. package/build/locales/ar/openhands.json +39 -2
  144. package/build/locales/ca/openhands.json +39 -2
  145. package/build/locales/de/openhands.json +39 -2
  146. package/build/locales/en/openhands.json +39 -2
  147. package/build/locales/es/openhands.json +39 -2
  148. package/build/locales/fr/openhands.json +39 -2
  149. package/build/locales/it/openhands.json +39 -2
  150. package/build/locales/ja/openhands.json +39 -2
  151. package/build/locales/ko-KR/openhands.json +39 -2
  152. package/build/locales/no/openhands.json +39 -2
  153. package/build/locales/pt/openhands.json +39 -2
  154. package/build/locales/tr/openhands.json +39 -2
  155. package/build/locales/uk/openhands.json +39 -2
  156. package/build/locales/zh-CN/openhands.json +39 -2
  157. package/build/locales/zh-TW/openhands.json +39 -2
  158. package/config/defaults.json +1 -1
  159. package/dist/api/agent-server-adapter.cjs +3 -3
  160. package/dist/api/agent-server-adapter.cjs.map +1 -1
  161. package/dist/api/agent-server-adapter.d.ts +32 -5
  162. package/dist/api/agent-server-adapter.js +120 -91
  163. package/dist/api/agent-server-adapter.js.map +1 -1
  164. package/dist/api/cloud/conversation-service.api.cjs +1 -1
  165. package/dist/api/cloud/conversation-service.api.cjs.map +1 -1
  166. package/dist/api/cloud/conversation-service.api.d.ts +19 -2
  167. package/dist/api/cloud/conversation-service.api.js +51 -47
  168. package/dist/api/cloud/conversation-service.api.js.map +1 -1
  169. package/dist/api/conversation-file-upload.api.cjs +1 -1
  170. package/dist/api/conversation-file-upload.api.js +10 -10
  171. package/dist/api/conversation-service/agent-server-conversation-service.api.cjs +1 -1
  172. package/dist/api/conversation-service/agent-server-conversation-service.api.cjs.map +1 -1
  173. package/dist/api/conversation-service/agent-server-conversation-service.api.js +55 -61
  174. package/dist/api/conversation-service/agent-server-conversation-service.api.js.map +1 -1
  175. package/dist/api/event-service/event-service.api.cjs +1 -1
  176. package/dist/api/event-service/event-service.api.js +12 -12
  177. package/dist/api/launch-child-conversation-client-tool.cjs +47 -0
  178. package/dist/api/launch-child-conversation-client-tool.cjs.map +1 -0
  179. package/dist/api/launch-child-conversation-client-tool.d.ts +3 -0
  180. package/dist/api/launch-child-conversation-client-tool.js +93 -0
  181. package/dist/api/launch-child-conversation-client-tool.js.map +1 -0
  182. package/dist/api/open-hands.types.d.ts +1 -1
  183. package/dist/api/workspace-upload-path.cjs +1 -1
  184. package/dist/api/workspace-upload-path.js +8 -8
  185. package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.cjs +1 -1
  186. package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.cjs.map +1 -1
  187. package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.js +24 -18
  188. package/dist/components/conversation-events/chat/event-content-helpers/get-action-event-title.js.map +1 -1
  189. package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.cjs +1 -1
  190. package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.cjs.map +1 -1
  191. package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.js +5 -0
  192. package/dist/components/conversation-events/chat/event-content-helpers/get-event-content.js.map +1 -1
  193. package/dist/components/conversation-events/chat/event-content-helpers/should-render-event.cjs +2 -2
  194. package/dist/components/conversation-events/chat/event-content-helpers/should-render-event.cjs.map +1 -1
  195. package/dist/components/conversation-events/chat/event-content-helpers/should-render-event.js +11 -7
  196. package/dist/components/conversation-events/chat/event-content-helpers/should-render-event.js.map +1 -1
  197. package/dist/components/features/chat/components/chat-input-llm-profile-picker.cjs +1 -1
  198. package/dist/components/features/chat/components/chat-input-llm-profile-picker.cjs.map +1 -1
  199. package/dist/components/features/chat/components/chat-input-llm-profile-picker.js +61 -60
  200. package/dist/components/features/chat/components/chat-input-llm-profile-picker.js.map +1 -1
  201. package/dist/components/features/chat/model-messages.cjs +1 -1
  202. package/dist/components/features/chat/model-messages.cjs.map +1 -1
  203. package/dist/components/features/chat/model-messages.js +26 -25
  204. package/dist/components/features/chat/model-messages.js.map +1 -1
  205. package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.cjs +1 -2
  206. package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.cjs.map +1 -1
  207. package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.d.ts +2 -8
  208. package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.js +50 -53
  209. package/dist/components/features/conversation-panel/conversation-card/conversation-card-footer.js.map +1 -1
  210. package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.cjs +2 -0
  211. package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.cjs.map +1 -0
  212. package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.d.ts +12 -0
  213. package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.js +6 -0
  214. package/dist/components/features/conversation-panel/conversation-card/conversation-card-meta-chip.js.map +1 -0
  215. package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.cjs +1 -1
  216. package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.cjs.map +1 -1
  217. package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.d.ts +16 -1
  218. package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.js +95 -78
  219. package/dist/components/features/conversation-panel/conversation-card/conversation-card-preview.js.map +1 -1
  220. package/dist/components/features/conversation-panel/conversation-card/conversation-repo-link.cjs +1 -1
  221. package/dist/components/features/conversation-panel/conversation-card/conversation-repo-link.cjs.map +1 -1
  222. package/dist/components/features/conversation-panel/conversation-card/conversation-repo-link.js +40 -38
  223. package/dist/components/features/conversation-panel/conversation-card/conversation-repo-link.js.map +1 -1
  224. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.cjs +2 -0
  225. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.cjs.map +1 -0
  226. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.d.ts +14 -0
  227. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.js +167 -0
  228. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-chips.js.map +1 -0
  229. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.cjs +2 -0
  230. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.cjs.map +1 -0
  231. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.d.ts +63 -0
  232. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.js +66 -0
  233. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-display.js.map +1 -0
  234. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.cjs +2 -0
  235. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.cjs.map +1 -0
  236. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.d.ts +15 -0
  237. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.js +117 -0
  238. package/dist/components/features/conversation-panel/conversation-card/conversation-tag-icons.js.map +1 -0
  239. package/dist/components/features/conversation-panel/conversation-card/no-repository.cjs +1 -1
  240. package/dist/components/features/conversation-panel/conversation-card/no-repository.cjs.map +1 -1
  241. package/dist/components/features/conversation-panel/conversation-card/no-repository.js +30 -19
  242. package/dist/components/features/conversation-panel/conversation-card/no-repository.js.map +1 -1
  243. package/dist/components/features/conversation-panel/conversation-panel-filter-menu.cjs +1 -1
  244. package/dist/components/features/conversation-panel/conversation-panel-filter-menu.cjs.map +1 -1
  245. package/dist/components/features/conversation-panel/conversation-panel-filter-menu.d.ts +7 -2
  246. package/dist/components/features/conversation-panel/conversation-panel-filter-menu.js +146 -104
  247. package/dist/components/features/conversation-panel/conversation-panel-filter-menu.js.map +1 -1
  248. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.cjs +1 -1
  249. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.cjs.map +1 -1
  250. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.d.ts +20 -0
  251. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.js +53 -27
  252. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.js.map +1 -1
  253. package/dist/components/features/conversation-panel/conversation-panel.cjs +1 -1
  254. package/dist/components/features/conversation-panel/conversation-panel.cjs.map +1 -1
  255. package/dist/components/features/conversation-panel/conversation-panel.js +226 -213
  256. package/dist/components/features/conversation-panel/conversation-panel.js.map +1 -1
  257. package/dist/components/features/settings/agent-canvas-update-card.cjs +1 -1
  258. package/dist/components/features/settings/agent-canvas-update-card.cjs.map +1 -1
  259. package/dist/components/features/settings/agent-canvas-update-card.d.ts +10 -5
  260. package/dist/components/features/settings/agent-canvas-update-card.js +223 -149
  261. package/dist/components/features/settings/agent-canvas-update-card.js.map +1 -1
  262. package/dist/components/features/settings/agent-canvas-version-modal.cjs +2 -0
  263. package/dist/components/features/settings/agent-canvas-version-modal.cjs.map +1 -0
  264. package/dist/components/features/settings/agent-canvas-version-modal.d.ts +11 -0
  265. package/dist/components/features/settings/agent-canvas-version-modal.js +166 -0
  266. package/dist/components/features/settings/agent-canvas-version-modal.js.map +1 -0
  267. package/dist/components/features/settings/agent-canvas-version-tile.cjs +2 -0
  268. package/dist/components/features/settings/agent-canvas-version-tile.cjs.map +1 -0
  269. package/dist/components/features/settings/agent-canvas-version-tile.d.ts +13 -0
  270. package/dist/components/features/settings/agent-canvas-version-tile.js +60 -0
  271. package/dist/components/features/settings/agent-canvas-version-tile.js.map +1 -0
  272. package/dist/components/features/settings/llm-profiles/profile-row.cjs +1 -1
  273. package/dist/components/features/settings/llm-profiles/profile-row.js +1 -0
  274. package/dist/components/features/settings/settings-desktop-sidebar.cjs +1 -1
  275. package/dist/components/features/settings/settings-desktop-sidebar.cjs.map +1 -1
  276. package/dist/components/features/settings/settings-desktop-sidebar.js +1 -1
  277. package/dist/components/features/settings/settings-desktop-sidebar.js.map +1 -1
  278. package/dist/components/features/settings/settings-mobile-drawer.cjs +1 -1
  279. package/dist/components/features/settings/settings-mobile-drawer.cjs.map +1 -1
  280. package/dist/components/features/settings/settings-mobile-drawer.js +1 -1
  281. package/dist/components/features/settings/settings-mobile-drawer.js.map +1 -1
  282. package/dist/components/features/sidebar/sidebar-rail-body.cjs +1 -1
  283. package/dist/components/features/sidebar/sidebar-rail-body.cjs.map +1 -1
  284. package/dist/components/features/sidebar/sidebar-rail-body.js +109 -108
  285. package/dist/components/features/sidebar/sidebar-rail-body.js.map +1 -1
  286. package/dist/components/features/skills/extensions-navigation.cjs +1 -1
  287. package/dist/components/features/skills/extensions-navigation.cjs.map +1 -1
  288. package/dist/components/features/skills/extensions-navigation.js +9 -9
  289. package/dist/components/features/skills/extensions-navigation.js.map +1 -1
  290. package/dist/components/shared/modals/settings/model-selector.cjs +1 -1
  291. package/dist/components/shared/modals/settings/model-selector.cjs.map +1 -1
  292. package/dist/components/shared/modals/settings/model-selector.js +154 -98
  293. package/dist/components/shared/modals/settings/model-selector.js.map +1 -1
  294. package/dist/config/defaults.cjs +1 -1
  295. package/dist/config/defaults.cjs.map +1 -1
  296. package/dist/config/defaults.js +1 -1
  297. package/dist/config/defaults.js.map +1 -1
  298. package/dist/constants/child-conversation.cjs +2 -0
  299. package/dist/constants/child-conversation.cjs.map +1 -0
  300. package/dist/constants/child-conversation.d.ts +29 -0
  301. package/dist/constants/child-conversation.js +6 -0
  302. package/dist/constants/child-conversation.js.map +1 -0
  303. package/dist/contexts/conversation-websocket-context.cjs +3 -3
  304. package/dist/contexts/conversation-websocket-context.cjs.map +1 -1
  305. package/dist/contexts/conversation-websocket-context.js +189 -188
  306. package/dist/contexts/conversation-websocket-context.js.map +1 -1
  307. package/dist/hooks/chat/use-model-interceptor.cjs +1 -1
  308. package/dist/hooks/chat/use-model-interceptor.js +6 -6
  309. package/dist/hooks/chat/use-slash-command.cjs +1 -1
  310. package/dist/hooks/chat/use-slash-command.cjs.map +1 -1
  311. package/dist/hooks/chat/use-slash-command.js +61 -60
  312. package/dist/hooks/chat/use-slash-command.js.map +1 -1
  313. package/dist/hooks/mutation/use-create-conversation.cjs +1 -1
  314. package/dist/hooks/mutation/use-create-conversation.js +6 -6
  315. package/dist/i18n/declaration.cjs +1 -1
  316. package/dist/i18n/declaration.cjs.map +1 -1
  317. package/dist/i18n/declaration.d.ts +38 -1
  318. package/dist/i18n/declaration.js +1 -1
  319. package/dist/i18n/declaration.js.map +1 -1
  320. package/dist/i18n/translation.cjs +2 -2
  321. package/dist/i18n/translation.cjs.map +1 -1
  322. package/dist/i18n/translation.js +644 -15
  323. package/dist/i18n/translation.js.map +1 -1
  324. package/dist/icons/docker.cjs +2 -0
  325. package/dist/icons/docker.cjs.map +1 -0
  326. package/dist/icons/docker.js +19 -0
  327. package/dist/icons/docker.js.map +1 -0
  328. package/dist/icons/npm.cjs +2 -0
  329. package/dist/icons/npm.cjs.map +1 -0
  330. package/dist/icons/npm.js +19 -0
  331. package/dist/icons/npm.js.map +1 -0
  332. package/dist/locales/ar/openhands.json +39 -2
  333. package/dist/locales/ca/openhands.json +39 -2
  334. package/dist/locales/de/openhands.json +39 -2
  335. package/dist/locales/en/openhands.json +39 -2
  336. package/dist/locales/es/openhands.json +39 -2
  337. package/dist/locales/fr/openhands.json +39 -2
  338. package/dist/locales/it/openhands.json +39 -2
  339. package/dist/locales/ja/openhands.json +39 -2
  340. package/dist/locales/ko-KR/openhands.json +39 -2
  341. package/dist/locales/no/openhands.json +39 -2
  342. package/dist/locales/pt/openhands.json +39 -2
  343. package/dist/locales/tr/openhands.json +39 -2
  344. package/dist/locales/uk/openhands.json +39 -2
  345. package/dist/locales/zh-CN/openhands.json +39 -2
  346. package/dist/locales/zh-TW/openhands.json +39 -2
  347. package/dist/node_modules/@openhands/typescript-client/dist/index.cjs +1 -1
  348. package/dist/node_modules/@openhands/typescript-client/dist/index.js +1 -1
  349. package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.cjs +2 -0
  350. package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.cjs.map +1 -0
  351. package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.js +16 -0
  352. package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.js.map +1 -0
  353. package/dist/node_modules/lucide-react/dist/esm/icons/building-2.cjs +2 -0
  354. package/dist/node_modules/lucide-react/dist/esm/icons/building-2.cjs.map +1 -0
  355. package/dist/node_modules/lucide-react/dist/esm/icons/building-2.js +27 -0
  356. package/dist/node_modules/lucide-react/dist/esm/icons/building-2.js.map +1 -0
  357. package/dist/node_modules/lucide-react/dist/esm/icons/circle-arrow-up.cjs +2 -0
  358. package/dist/node_modules/lucide-react/dist/esm/icons/circle-arrow-up.cjs.map +1 -0
  359. package/dist/node_modules/lucide-react/dist/esm/icons/circle-arrow-up.js +21 -0
  360. package/dist/node_modules/lucide-react/dist/esm/icons/circle-arrow-up.js.map +1 -0
  361. package/dist/node_modules/lucide-react/dist/esm/icons/circle-user-round.cjs +2 -0
  362. package/dist/node_modules/lucide-react/dist/esm/icons/circle-user-round.cjs.map +1 -0
  363. package/dist/node_modules/lucide-react/dist/esm/icons/circle-user-round.js +23 -0
  364. package/dist/node_modules/lucide-react/dist/esm/icons/circle-user-round.js.map +1 -0
  365. package/dist/node_modules/lucide-react/dist/esm/icons/cloud-cog.cjs +2 -0
  366. package/dist/node_modules/lucide-react/dist/esm/icons/cloud-cog.cjs.map +1 -0
  367. package/dist/node_modules/lucide-react/dist/esm/icons/cloud-cog.js +43 -0
  368. package/dist/node_modules/lucide-react/dist/esm/icons/cloud-cog.js.map +1 -0
  369. package/dist/node_modules/lucide-react/dist/esm/icons/earth.cjs +2 -0
  370. package/dist/node_modules/lucide-react/dist/esm/icons/earth.cjs.map +1 -0
  371. package/dist/node_modules/lucide-react/dist/esm/icons/earth.js +25 -0
  372. package/dist/node_modules/lucide-react/dist/esm/icons/earth.js.map +1 -0
  373. package/dist/node_modules/lucide-react/dist/esm/icons/flag.cjs +2 -0
  374. package/dist/node_modules/lucide-react/dist/esm/icons/flag.cjs.map +1 -0
  375. package/dist/node_modules/lucide-react/dist/esm/icons/flag.js +9 -0
  376. package/dist/node_modules/lucide-react/dist/esm/icons/flag.js.map +1 -0
  377. package/dist/node_modules/lucide-react/dist/esm/icons/folder-git-2.cjs +2 -0
  378. package/dist/node_modules/lucide-react/dist/esm/icons/folder-git-2.cjs.map +1 -0
  379. package/dist/node_modules/lucide-react/dist/esm/icons/folder-git-2.js +27 -0
  380. package/dist/node_modules/lucide-react/dist/esm/icons/folder-git-2.js.map +1 -0
  381. package/dist/node_modules/lucide-react/dist/esm/icons/folder-key.cjs +2 -0
  382. package/dist/node_modules/lucide-react/dist/esm/icons/folder-key.cjs.map +1 -0
  383. package/dist/node_modules/lucide-react/dist/esm/icons/folder-key.js +25 -0
  384. package/dist/node_modules/lucide-react/dist/esm/icons/folder-key.js.map +1 -0
  385. package/dist/node_modules/lucide-react/dist/esm/icons/git-pull-request.cjs +2 -0
  386. package/dist/node_modules/lucide-react/dist/esm/icons/git-pull-request.cjs.map +1 -0
  387. package/dist/node_modules/lucide-react/dist/esm/icons/git-pull-request.js +30 -0
  388. package/dist/node_modules/lucide-react/dist/esm/icons/git-pull-request.js.map +1 -0
  389. package/dist/node_modules/lucide-react/dist/esm/icons/hash.cjs +2 -0
  390. package/dist/node_modules/lucide-react/dist/esm/icons/hash.cjs.map +1 -0
  391. package/dist/node_modules/lucide-react/dist/esm/icons/hash.js +35 -0
  392. package/dist/node_modules/lucide-react/dist/esm/icons/hash.js.map +1 -0
  393. package/dist/node_modules/lucide-react/dist/esm/icons/house.cjs +2 -0
  394. package/dist/node_modules/lucide-react/dist/esm/icons/house.cjs.map +1 -0
  395. package/dist/node_modules/lucide-react/dist/esm/icons/house.js +12 -0
  396. package/dist/node_modules/lucide-react/dist/esm/icons/house.js.map +1 -0
  397. package/dist/node_modules/lucide-react/dist/esm/icons/id-card.cjs +2 -0
  398. package/dist/node_modules/lucide-react/dist/esm/icons/id-card.cjs.map +1 -0
  399. package/dist/node_modules/lucide-react/dist/esm/icons/id-card.js +33 -0
  400. package/dist/node_modules/lucide-react/dist/esm/icons/id-card.js.map +1 -0
  401. package/dist/node_modules/lucide-react/dist/esm/icons/key-round.cjs +2 -0
  402. package/dist/node_modules/lucide-react/dist/esm/icons/key-round.cjs.map +1 -0
  403. package/dist/node_modules/lucide-react/dist/esm/icons/key-round.js +15 -0
  404. package/dist/node_modules/lucide-react/dist/esm/icons/key-round.js.map +1 -0
  405. package/dist/node_modules/lucide-react/dist/esm/icons/layers.cjs +2 -0
  406. package/dist/node_modules/lucide-react/dist/esm/icons/layers.cjs.map +1 -0
  407. package/dist/node_modules/lucide-react/dist/esm/icons/layers.js +19 -0
  408. package/dist/node_modules/lucide-react/dist/esm/icons/layers.js.map +1 -0
  409. package/dist/node_modules/lucide-react/dist/esm/icons/link-2.cjs +2 -0
  410. package/dist/node_modules/lucide-react/dist/esm/icons/link-2.cjs.map +1 -0
  411. package/dist/node_modules/lucide-react/dist/esm/icons/link-2.js +22 -0
  412. package/dist/node_modules/lucide-react/dist/esm/icons/link-2.js.map +1 -0
  413. package/dist/node_modules/lucide-react/dist/esm/icons/mails.cjs +2 -0
  414. package/dist/node_modules/lucide-react/dist/esm/icons/mails.cjs.map +1 -0
  415. package/dist/node_modules/lucide-react/dist/esm/icons/mails.js +23 -0
  416. package/dist/node_modules/lucide-react/dist/esm/icons/mails.js.map +1 -0
  417. package/dist/node_modules/lucide-react/dist/esm/icons/messages-square.cjs +2 -0
  418. package/dist/node_modules/lucide-react/dist/esm/icons/messages-square.cjs.map +1 -0
  419. package/dist/node_modules/lucide-react/dist/esm/icons/messages-square.js +12 -0
  420. package/dist/node_modules/lucide-react/dist/esm/icons/messages-square.js.map +1 -0
  421. package/dist/node_modules/lucide-react/dist/esm/icons/plug.cjs +2 -0
  422. package/dist/node_modules/lucide-react/dist/esm/icons/plug.cjs.map +1 -0
  423. package/dist/node_modules/lucide-react/dist/esm/icons/plug.js +23 -0
  424. package/dist/node_modules/lucide-react/dist/esm/icons/plug.js.map +1 -0
  425. package/dist/node_modules/lucide-react/dist/esm/icons/square-kanban.cjs +2 -0
  426. package/dist/node_modules/lucide-react/dist/esm/icons/square-kanban.cjs.map +1 -0
  427. package/dist/node_modules/lucide-react/dist/esm/icons/square-kanban.js +27 -0
  428. package/dist/node_modules/lucide-react/dist/esm/icons/square-kanban.js.map +1 -0
  429. package/dist/node_modules/lucide-react/dist/esm/icons/ticket.cjs +2 -0
  430. package/dist/node_modules/lucide-react/dist/esm/icons/ticket.cjs.map +1 -0
  431. package/dist/node_modules/lucide-react/dist/esm/icons/ticket.js +23 -0
  432. package/dist/node_modules/lucide-react/dist/esm/icons/ticket.js.map +1 -0
  433. package/dist/node_modules/lucide-react/dist/esm/icons/users-round.cjs +2 -0
  434. package/dist/node_modules/lucide-react/dist/esm/icons/users-round.cjs.map +1 -0
  435. package/dist/node_modules/lucide-react/dist/esm/icons/users-round.js +21 -0
  436. package/dist/node_modules/lucide-react/dist/esm/icons/users-round.js.map +1 -0
  437. package/dist/node_modules/lucide-react/dist/esm/icons/waypoints.cjs +2 -0
  438. package/dist/node_modules/lucide-react/dist/esm/icons/waypoints.cjs.map +1 -0
  439. package/dist/node_modules/lucide-react/dist/esm/icons/waypoints.js +43 -0
  440. package/dist/node_modules/lucide-react/dist/esm/icons/waypoints.js.map +1 -0
  441. package/dist/node_modules/lucide-react/dist/esm/icons/webhook.cjs +2 -0
  442. package/dist/node_modules/lucide-react/dist/esm/icons/webhook.cjs.map +1 -0
  443. package/dist/node_modules/lucide-react/dist/esm/icons/webhook.js +19 -0
  444. package/dist/node_modules/lucide-react/dist/esm/icons/webhook.js.map +1 -0
  445. package/dist/node_modules/lucide-react/dist/esm/icons/workflow.cjs +2 -0
  446. package/dist/node_modules/lucide-react/dist/esm/icons/workflow.cjs.map +1 -0
  447. package/dist/node_modules/lucide-react/dist/esm/icons/workflow.js +27 -0
  448. package/dist/node_modules/lucide-react/dist/esm/icons/workflow.js.map +1 -0
  449. package/dist/node_modules/lucide-react/dist/esm/icons/wrench.cjs +2 -0
  450. package/dist/node_modules/lucide-react/dist/esm/icons/wrench.cjs.map +1 -0
  451. package/dist/node_modules/lucide-react/dist/esm/icons/wrench.js +9 -0
  452. package/dist/node_modules/lucide-react/dist/esm/icons/wrench.js.map +1 -0
  453. package/dist/node_modules/lucide-react/dist/esm/icons/zap.cjs +2 -0
  454. package/dist/node_modules/lucide-react/dist/esm/icons/zap.cjs.map +1 -0
  455. package/dist/node_modules/lucide-react/dist/esm/icons/zap.js +9 -0
  456. package/dist/node_modules/lucide-react/dist/esm/icons/zap.js.map +1 -0
  457. package/dist/package.cjs +1 -1
  458. package/dist/package.cjs.map +1 -1
  459. package/dist/package.js +6 -3
  460. package/dist/package.js.map +1 -1
  461. package/dist/routes/app-settings.cjs +1 -1
  462. package/dist/routes/app-settings.cjs.map +1 -1
  463. package/dist/routes/app-settings.js +94 -93
  464. package/dist/routes/app-settings.js.map +1 -1
  465. package/dist/routes/llm-settings.cjs +1 -1
  466. package/dist/routes/llm-settings.cjs.map +1 -1
  467. package/dist/routes/llm-settings.js +131 -119
  468. package/dist/routes/llm-settings.js.map +1 -1
  469. package/dist/services/child-conversation-launch.cjs +2 -0
  470. package/dist/services/child-conversation-launch.cjs.map +1 -0
  471. package/dist/services/child-conversation-launch.d.ts +41 -0
  472. package/dist/services/child-conversation-launch.js +182 -0
  473. package/dist/services/child-conversation-launch.js.map +1 -0
  474. package/dist/stores/conversation-panel-preferences-store.cjs +1 -1
  475. package/dist/stores/conversation-panel-preferences-store.cjs.map +1 -1
  476. package/dist/stores/conversation-panel-preferences-store.d.ts +5 -1
  477. package/dist/stores/conversation-panel-preferences-store.js +8 -2
  478. package/dist/stores/conversation-panel-preferences-store.js.map +1 -1
  479. package/dist/types/agent-server/core/base/action.d.ts +17 -1
  480. package/dist/types/agent-server/core/base/base.d.ts +2 -1
  481. package/dist/types/agent-server/type-guards.cjs +1 -1
  482. package/dist/types/agent-server/type-guards.cjs.map +1 -1
  483. package/dist/types/agent-server/type-guards.d.ts +8 -1
  484. package/dist/types/agent-server/type-guards.js +4 -3
  485. package/dist/types/agent-server/type-guards.js.map +1 -1
  486. package/dist/types/automation.d.ts +14 -0
  487. package/dist/utils/custom-toast-handlers.cjs +1 -1
  488. package/dist/utils/custom-toast-handlers.cjs.map +1 -1
  489. package/dist/utils/custom-toast-handlers.js +18 -1
  490. package/dist/utils/custom-toast-handlers.js.map +1 -1
  491. package/dist/utils/format-model-name.cjs +1 -1
  492. package/dist/utils/format-model-name.cjs.map +1 -1
  493. package/dist/utils/format-model-name.d.ts +11 -0
  494. package/dist/utils/format-model-name.js +11 -3
  495. package/dist/utils/format-model-name.js.map +1 -1
  496. package/package.json +6 -3
  497. package/scripts/brand-dev-electron.mjs +244 -0
  498. package/scripts/check-translation-completeness.cjs +4 -0
  499. package/scripts/generate-icons.mjs +109 -0
  500. package/build/assets/agent-server-conversation-service.api-km_8sOVf.js +0 -41
  501. package/build/assets/agent-settings-nmO-KSXr.js +0 -1
  502. package/build/assets/app-settings-9ok42bV6.js +0 -1
  503. package/build/assets/command-menu-CA3IjGNc.js +0 -1
  504. package/build/assets/conversation-B6t6EiVp.js +0 -1
  505. package/build/assets/conversation-panel-B6t6EiVp.js +0 -1
  506. package/build/assets/copy-DaHuDtG4.js +0 -1
  507. package/build/assets/git-repo-dropdown-TzOuG5Ef.js +0 -1
  508. package/build/assets/home-OEx0XtfP.js +0 -1
  509. package/build/assets/index-home-OEx0XtfP.js +0 -1
  510. package/build/assets/install-server-modal-DnjZrJUy.js +0 -1
  511. package/build/assets/list-filter-C86CBRDE.js +0 -1
  512. package/build/assets/llm-not-configured-banner-DrBrhfN0.js +0 -27
  513. package/build/assets/llm-settings-CRsLqxgu.js +0 -1
  514. package/build/assets/llm-settings-RBm_3kNm.js +0 -1
  515. package/build/assets/manifest-c352d453.js +0 -1
  516. package/build/assets/map-provider-CXU6issd.js +0 -1
  517. package/build/assets/markdown-renderer-lsvsp7jn.js +0 -8
  518. package/build/assets/mcp-DD4hPTRE.js +0 -9
  519. package/build/assets/messages-Dt77e0qi.js +0 -40
  520. package/build/assets/recommended-automations-launcher-6xmbf7lh.js +0 -1
  521. package/build/assets/root-BeuHFY2s.css +0 -1
  522. package/build/assets/root-layout-Dl_2CDoq.js +0 -3
  523. package/build/assets/settings-Co-M5bK9.js +0 -1
  524. package/build/assets/sidebar-store-B04sX8aP.js +0 -1
  525. package/build/assets/skills-settings-DnbIu2eO.js +0 -2
  526. package/build/assets/use-settings-nav-items-y-Oyc93G.js +0 -16
  527. package/build/assets/utils-BX9XJ0IE.js +0 -1
  528. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.cjs +0 -2
  529. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.cjs.map +0 -1
  530. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.js +0 -9
  531. package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.js.map +0 -1
@@ -6,32 +6,34 @@ import { getEffectiveLocalBackend as r } from "./backend-registry/active-store.j
6
6
  import { getAgentServerClientOptions as i } from "./agent-server-client-options.js";
7
7
  import { getCachedAgentServerInfo as a, isAgentServerToolAvailable as o } from "./agent-server-compatibility.js";
8
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";
9
+ import { LAUNCH_CHILD_CONVERSATION_TOOL_NAME as ee } from "../constants/child-conversation.js";
10
+ import { getStoredConversationMetadata as l } from "./conversation-metadata-store.js";
11
+ import { ACP_SETTINGS_KEYS as u } from "../node_modules/@openhands/typescript-client/dist/models/acp.js";
10
12
  import "../node_modules/@openhands/typescript-client/dist/index.js";
11
- import { getStoredConversationMetadata as u } from "./conversation-metadata-store.js";
12
13
  import d from "../node_modules/@openhands/extensions/skills/index.js";
13
14
  import { DEFAULT_SETTINGS as f } from "../services/settings.js";
14
15
  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";
16
+ import { buildAuthHeaders as te } from "./backend-registry/auth.js";
17
+ import g from "./settings-service/settings-service.api.js";
18
+ import { LLM_AUTH_TYPE_SUBSCRIPTION as _, OPENAI_SUBSCRIPTION_VENDOR as v, isSubscriptionLlmConfig as y } from "../constants/llm-subscription.js";
19
+ import b from "./llm-subscription-service.js";
20
+ import { CANVAS_UI_CLIENT_TOOL as ne } from "./canvas-ui-client-tool.js";
21
+ import { LAUNCH_CHILD_CONVERSATION_CLIENT_TOOL as x } from "./launch-child-conversation-client-tool.js";
20
22
  //#region src/api/agent-server-adapter.ts
21
- var C = [
23
+ var S = [
22
24
  "terminal",
23
25
  "file_editor",
24
26
  "task_tracker"
25
- ], w = "browser_tool_set", T = "task_tool_set";
26
- function E() {
27
+ ], C = "browser_tool_set", w = "task_tool_set";
28
+ function T() {
27
29
  return !0;
28
30
  }
29
- function D(e) {
31
+ function E(e) {
30
32
  if (typeof e == "string") {
31
33
  let t = e.trim();
32
34
  if (!t) return null;
33
35
  try {
34
- return D(JSON.parse(t));
36
+ return E(JSON.parse(t));
35
37
  } catch {
36
38
  return null;
37
39
  }
@@ -40,23 +42,23 @@ function D(e) {
40
42
  let t = e;
41
43
  return !t.services || typeof t.services != "object" ? null : t;
42
44
  }
43
- async function O() {
45
+ async function D() {
44
46
  let e;
45
47
  try {
46
48
  e = i({ timeout: 3e3 });
47
49
  } catch {
48
50
  return null;
49
51
  }
50
- let n = D(a({ host: e.host })?.runtime_services);
52
+ let n = E(a({ host: e.host })?.runtime_services);
51
53
  if (n) return n;
52
54
  try {
53
- return D((await new t(e).getServerInfo()).runtime_services);
55
+ return E((await new t(e).getServerInfo()).runtime_services);
54
56
  } catch {
55
57
  return null;
56
58
  }
57
59
  }
58
- function k(e) {
59
- let t = D(e);
60
+ function re(e) {
61
+ let t = E(e);
60
62
  if (!t?.services) return;
61
63
  let n = [];
62
64
  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).", "");
@@ -65,15 +67,15 @@ function k(e) {
65
67
  let s = r?.url_from_agent;
66
68
  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
69
  }
68
- function ee(e) {
70
+ function ie(e) {
69
71
  let { host: t } = i();
70
72
  return `${t}/api/conversations/${e}`;
71
73
  }
72
- function A(e) {
74
+ function O(e) {
73
75
  return `Conversation ${e.slice(0, 5)}`;
74
76
  }
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;
77
+ function k(t) {
78
+ let r = l(t.id), a = t.agent?.kind === "ACPAgent", o = a ? t.tags?.acpserver ?? t.agent?.acp_server ?? null : null;
77
79
  return {
78
80
  id: t.id,
79
81
  created_by_user_id: null,
@@ -82,7 +84,7 @@ function j(t) {
82
84
  git_provider: r?.git_provider ?? null,
83
85
  selected_workspace: r?.selected_workspace ?? null,
84
86
  active_profile: r?.active_profile ?? null,
85
- title: t.title?.trim() ? t.title : A(t.id),
87
+ title: t.title?.trim() ? t.title : O(t.id),
86
88
  trigger: null,
87
89
  pr_number: [],
88
90
  agent_kind: a ? "acp" : "openhands",
@@ -111,7 +113,7 @@ function j(t) {
111
113
  updated_at: t.updated_at,
112
114
  execution_status: t.execution_status ?? e.IDLE,
113
115
  sandbox_status: t.sandbox_status ?? null,
114
- conversation_url: ee(t.id),
116
+ conversation_url: ie(t.id),
115
117
  session_api_key: i().apiKey ?? null,
116
118
  sandbox_id: null,
117
119
  workspace: { working_dir: t.workspace?.working_dir ?? n() },
@@ -119,17 +121,44 @@ function j(t) {
119
121
  sub_conversation_ids: []
120
122
  };
121
123
  }
122
- function M(e) {
124
+ function A(e) {
123
125
  return {
124
- items: e.items.map(j),
126
+ items: e.items.map(k),
125
127
  next_page_id: e.next_page_id ?? null
126
128
  };
127
129
  }
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)) : [];
130
+ var j = "acpserver", M = "automationtrigger", N = "automationid", P = "automationname", F = "automationrunid", I = [
131
+ M,
132
+ N,
133
+ P,
134
+ F
135
+ ], L = new Set([
136
+ j,
137
+ N,
138
+ F,
139
+ "title",
140
+ "git_provider",
141
+ "repo_name",
142
+ "repo",
143
+ "repository",
144
+ "selected_branch",
145
+ "branch",
146
+ "archiveworkspacepath",
147
+ "workspace",
148
+ "working_dir"
149
+ ]), R = ["origin"];
150
+ function z(e) {
151
+ if (!e) return [];
152
+ let t = (e) => {
153
+ let t = R.indexOf(e.trim().toLowerCase());
154
+ return t === -1 ? Infinity : t;
155
+ };
156
+ return Object.entries(e).filter(([e, t]) => !L.has(e.trim().toLowerCase()) && typeof t == "string" && t.trim().length > 0).sort(([e], [n]) => {
157
+ let r = t(e), i = t(n);
158
+ return r === i ? e.localeCompare(n) : r - i;
159
+ });
131
160
  }
132
- var I = "gAAAAA", L = new Set([
161
+ var B = "gAAAAA", V = new Set([
133
162
  "schema_version",
134
163
  "agent_settings",
135
164
  "workspace",
@@ -137,31 +166,31 @@ var I = "gAAAAA", L = new Set([
137
166
  "initial_message",
138
167
  "plugins"
139
168
  ]);
140
- function R(e) {
169
+ function H(e) {
141
170
  return !e || typeof e != "object" || Array.isArray(e) ? {} : structuredClone(e);
142
171
  }
143
- function z(e) {
172
+ function U(e) {
144
173
  if (typeof e != "string") return;
145
174
  let t = e.trim();
146
175
  return t.length > 0 ? t : void 0;
147
176
  }
148
- function B(e) {
177
+ function W(e) {
149
178
  return !!e && typeof e == "object" && !Array.isArray(e);
150
179
  }
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;
180
+ function G(e) {
181
+ return typeof e == "string" ? e.startsWith(B) : Array.isArray(e) ? e.some(G) : W(e) ? Object.values(e).some(G) : !1;
153
182
  }
154
- function H(e) {
155
- return B(e) ? Object.values(e).some(V) : !1;
183
+ function K(e) {
184
+ return W(e) ? Object.values(e).some(G) : !1;
156
185
  }
157
- function U(e) {
186
+ function q(e) {
158
187
  return e.confirmation_mode === !0 ? e.security_analyzer === "llm" ? {
159
188
  kind: "ConfirmRisky",
160
189
  threshold: "HIGH",
161
190
  confirm_unknown: !0
162
191
  } : { kind: "AlwaysConfirm" } : { kind: "NeverConfirm" };
163
192
  }
164
- function W(e) {
193
+ function J(e) {
165
194
  switch (e.security_analyzer) {
166
195
  case "llm": return { kind: "LLMSecurityAnalyzer" };
167
196
  case "pattern": return { kind: "PatternSecurityAnalyzer" };
@@ -169,30 +198,30 @@ function W(e) {
169
198
  default: return;
170
199
  }
171
200
  }
172
- function te(e) {
201
+ function Y(e) {
173
202
  return !!e && typeof e == "object" && !Array.isArray(e) && typeof e.name == "string";
174
203
  }
175
- function G(e, t) {
176
- return e === w ? E() && o(e) : e === T ? t.enable_sub_agents === !0 && o(e) : !0;
204
+ function X(e, t) {
205
+ return e === C ? T() && o(e) : e === w ? t.enable_sub_agents === !0 && o(e) : !0;
177
206
  }
178
- function K(e) {
207
+ function ae(e) {
179
208
  let t = /* @__PURE__ */ new Map();
180
- for (let n of C) G(n, e) && t.set(n, {
209
+ for (let n of S) X(n, e) && t.set(n, {
181
210
  name: n,
182
211
  params: {}
183
212
  });
184
- for (let n of [w, T]) G(n, e) && t.set(n, {
213
+ for (let n of [C, w]) X(n, e) && t.set(n, {
185
214
  name: n,
186
215
  params: {}
187
216
  });
188
217
  let n = e.tools;
189
- if (Array.isArray(n) && n.every((e) => te(e))) for (let r of n) G(r.name, e) && t.set(r.name, {
218
+ if (Array.isArray(n) && n.every((e) => Y(e))) for (let r of n) X(r.name, e) && t.set(r.name, {
190
219
  name: r.name,
191
- params: R(r.params)
220
+ params: H(r.params)
192
221
  });
193
222
  return Array.from(t.values());
194
223
  }
195
- function q(e, t) {
224
+ function oe(e, t) {
196
225
  let n = [e?.trim(), t?.trim()].filter(Boolean);
197
226
  return n.length === 0 ? null : {
198
227
  role: "user",
@@ -203,7 +232,7 @@ function q(e, t) {
203
232
  run: !0
204
233
  };
205
234
  }
206
- function J() {
235
+ function se() {
207
236
  return d.map((e) => {
208
237
  let t = e.triggers?.length > 0 ? {
209
238
  type: "keyword",
@@ -221,8 +250,8 @@ function J() {
221
250
  };
222
251
  });
223
252
  }
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));
253
+ function Z(e, t, n = []) {
254
+ let r = re(t), i = H(e.agent_context), a = Array.isArray(i.skills) ? i.skills : [], o = new Set(n), s = [...a, ...se()].filter((e) => typeof e.name != "string" || !o.has(e.name));
226
255
  return {
227
256
  ...i,
228
257
  skills: s,
@@ -232,30 +261,30 @@ function Y(e, t, n = []) {
232
261
  ...r ? { system_message_suffix: r } : {}
233
262
  };
234
263
  }
235
- function X(e) {
236
- return R(e.agent_settings).agent_kind === "acp";
264
+ function Q(e) {
265
+ return H(e.agent_settings).agent_kind === "acp";
237
266
  }
238
- function Z(e) {
239
- let t = R(e.agent_settings).acp_server;
267
+ function ce(e) {
268
+ let t = H(e.agent_settings).acp_server;
240
269
  return typeof t == "string" && t.length > 0 ? t : void 0;
241
270
  }
242
- function Q(e) {
271
+ function le(e) {
243
272
  let t = e.acp_command;
244
273
  if (!(Array.isArray(t) && t.length === 0) && t !== void 0) return t;
245
274
  let n = m(typeof e.acp_server == "string" ? e.acp_server : void 0);
246
275
  return n ? [...n.default_command] : t;
247
276
  }
248
- function ne(e, t) {
249
- let n = R(e.agent_settings), r = {
277
+ function ue(e, t) {
278
+ let n = H(e.agent_settings), r = {
250
279
  agent_kind: "acp",
251
- agent_context: Y(n, t, e.disabled_skills)
280
+ agent_context: Z(n, t, e.disabled_skills)
252
281
  };
253
- for (let e of l) {
282
+ for (let e of u) {
254
283
  if (e === "acp_model" || e === "acp_env") continue;
255
- let t = e === "acp_command" ? Q(n) : n[e];
284
+ let t = e === "acp_command" ? le(n) : n[e];
256
285
  t != null && (r[e] = t);
257
286
  }
258
- let i = R(n.mcp_config);
287
+ let i = H(n.mcp_config);
259
288
  Object.keys(i).length > 0 && (r.mcp_config = i);
260
289
  let a = typeof n.acp_server == "string" ? n.acp_server : void 0, o = h({
261
290
  configured: n.acp_model,
@@ -263,29 +292,29 @@ function ne(e, t) {
263
292
  });
264
293
  return o && (r.acp_model = o), r;
265
294
  }
266
- function re(e, t) {
267
- let n = R(e.agent_settings), r = R(n.llm);
295
+ function de(e, t) {
296
+ let n = H(e.agent_settings), r = H(n.llm);
268
297
  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);
298
+ let i = U(r.api_key);
270
299
  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);
300
+ let a = U(r.base_url);
301
+ a ? r.base_url = a : delete r.base_url, y(r) ? (r.auth_type = _, r.subscription_vendor = v, delete r.api_key, delete r.base_url) : (delete r.auth_type, delete r.subscription_vendor);
302
+ let o = H(n.mcp_config);
274
303
  Object.keys(o).length === 0 && delete n.mcp_config, delete n.acp_server;
275
- for (let e of l) delete n[e];
304
+ for (let e of u) delete n[e];
276
305
  return delete n.acp_env, {
277
306
  ...n,
278
307
  llm: r,
279
- agent_context: Y(n, t, e.disabled_skills),
280
- tools: K(n)
308
+ agent_context: Z(n, t, e.disabled_skills),
309
+ tools: ae(n)
281
310
  };
282
311
  }
283
- function ie(e, t) {
284
- return X(e) ? ne(e, t) : re(e, t);
312
+ function fe(e, t) {
313
+ return Q(e) ? ue(e, t) : de(e, t);
285
314
  }
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]), {
315
+ function pe(e) {
316
+ let { settings: t, query: r, conversationInstructions: i, plugins: a, workingDir: o } = e, s = H(t.conversation_settings), c = oe(r, i);
317
+ return V.forEach((e) => delete s[e]), {
289
318
  ...s,
290
319
  workspace: {
291
320
  kind: "LocalWorkspace",
@@ -299,11 +328,11 @@ function ae(e) {
299
328
  })) } : {}
300
329
  };
301
330
  }
302
- function oe(e) {
331
+ function me(e) {
303
332
  let t = e.encryptedAgentSettings ? {
304
333
  ...e.settings,
305
334
  agent_settings: e.encryptedAgentSettings
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 ? {
335
+ } : e.settings, n = Q(t), i = e.agentProfileId ? e.agentProfileKind : n ? "acp" : "openhands", a = fe(t, e.runtimeServicesInfo), o = n ? ce(t) : void 0, l = pe(e.encryptedConversationSettings ? {
307
336
  ...e,
308
337
  settings: {
309
338
  ...e.settings,
@@ -312,20 +341,20 @@ function oe(e) {
312
341
  } : e), u = {
313
342
  ...e.agentProfileId ? { agent_profile_id: e.agentProfileId } : { agent_settings: a },
314
343
  workspace: l.workspace,
315
- client_tools: i === "openhands" ? [S] : [],
316
- confirmation_policy: U(l),
344
+ client_tools: i === "openhands" ? [ne, x] : [],
345
+ confirmation_policy: q(l),
317
346
  max_iterations: typeof l.max_iterations == "number" ? l.max_iterations : 500,
318
347
  stuck_detection: !0,
319
348
  autotitle: !0,
320
349
  ...e.titleLlmProfile ? { title_llm_profile: e.titleLlmProfile } : {},
321
350
  worktree: e.worktree ?? !0
322
351
  };
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);
352
+ !e.agentProfileId && o && (u.tags = { [j]: o }), !e.agentProfileId && e.secretsEncrypted && (!n || K(a.mcp_config)) && (u.secrets_encrypted = !0), e.conversationId && (u.conversation_id = e.conversationId), e.parentConversationId && (u.parent_conversation_id = e.parentConversationId);
353
+ let d = J(l);
325
354
  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);
326
355
  let f = { ...l.tool_module_qualnames ?? {} };
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 = {};
356
+ if (delete f[c], delete f[s], delete f[ee], 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) {
357
+ let t = r(), n = t ? te(t) : {}, i = {};
329
358
  for (let t of e.customSecrets) {
330
359
  let e = {
331
360
  kind: "LookupSecret",
@@ -338,17 +367,17 @@ function oe(e) {
338
367
  }
339
368
  return u;
340
369
  }
341
- var se = "Connect your ChatGPT subscription before starting a conversation with this LLM profile.";
370
+ var he = "Connect your ChatGPT subscription before starting a conversation with this LLM profile.";
342
371
  async function $(e) {
343
- if (b(R(e.llm)) && !(await x.getOpenAIStatus()).connected) throw Error(se);
372
+ if (y(H(e.llm)) && !(await b.getOpenAIStatus()).connected) throw Error(he);
344
373
  }
345
- async function ce(e) {
374
+ async function ge(e) {
346
375
  let { SecretsService: t } = await import("./secrets-service.js"), [n, r, i] = await Promise.all([
347
- _.getSettingsForConversation(),
376
+ g.getSettingsForConversation(),
348
377
  t.getSecrets(),
349
- O()
378
+ D()
350
379
  ]), { agentSettings: a, conversationSettings: o, secretsEncrypted: s } = n;
351
- return e.agentProfileId || await $(a), oe({
380
+ return e.agentProfileId || await $(a), me({
352
381
  ...e,
353
382
  encryptedAgentSettings: a,
354
383
  encryptedConversationSettings: o,
@@ -357,10 +386,10 @@ async function ce(e) {
357
386
  runtimeServicesInfo: i
358
387
  });
359
388
  }
360
- function le() {
389
+ function _e() {
361
390
  return { hooks: [] };
362
391
  }
363
392
  //#endregion
364
- export { $ as assertSubscriptionAuthReady, ce as buildStartConversationRequestWithEncryptedSettings, le as emptyHooksResponse, A as getDefaultConversationTitle, F as getDisplayConversationTags, j as toAppConversation, M as toConversationPage };
393
+ export { P as AUTOMATION_NAME_TAG_KEY, I as AUTOMATION_TAG_KEYS, $ as assertSubscriptionAuthReady, ge as buildStartConversationRequestWithEncryptedSettings, _e as emptyHooksResponse, O as getDefaultConversationTitle, z as getDisplayConversationTags, k as toAppConversation, A as toConversationPage };
365
394
 
366
395
  //# sourceMappingURL=agent-server-adapter.js.map