@xopcai/xopc 0.0.431 → 0.0.433

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 (186) hide show
  1. package/dist/browser-ext/manifest.json +1 -1
  2. package/dist/extensions/telegram/xopc.extension.json +1 -1
  3. package/dist/gateway/static/root/assets/{activity-store-WqnVruhY.js → activity-store-BpYGrRXw.js} +1 -1
  4. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-CSiO9c2F.js → agent-avatar-dicebear-DTgOSv6G.js} +1 -1
  5. package/dist/gateway/static/root/assets/{agent-avatar-display-D-yds6wG.js → agent-avatar-display-BUH7ljEo.js} +2 -2
  6. package/dist/gateway/static/root/assets/{agent-defaults-settings-panel-_UT9C7bg.js → agent-defaults-settings-panel-B_FAikHA.js} +1 -1
  7. package/dist/gateway/static/root/assets/{agent-plugin-dialog-DVzYXsAy.js → agent-plugin-dialog-DPabZaSE.js} +1 -1
  8. package/dist/gateway/static/root/assets/{agents-Ds7K3D7T.js → agents-BAPYP1Ka.js} +3 -3
  9. package/dist/gateway/static/root/assets/{agents-admin-api-Bgv4lJ9Y.js → agents-admin-api-CXCAHNPj.js} +1 -1
  10. package/dist/gateway/static/root/assets/{api-Dv6Cn-Rs.js → api-DMbimMEi.js} +1 -1
  11. package/dist/gateway/static/root/assets/{api-C-9J9ghT.js → api-oIK4hYkJ.js} +1 -1
  12. package/dist/gateway/static/root/assets/{app-management-settings-panel-BXJrrjH5.js → app-management-settings-panel-BZ3Fy8ZR.js} +1 -1
  13. package/dist/gateway/static/root/assets/{appearance-settings-oYjAVulT.js → appearance-settings-DsRTj1by.js} +1 -1
  14. package/dist/gateway/static/root/assets/{apps-page-D95yzj-f.js → apps-page-D-n71lO1.js} +1 -1
  15. package/dist/gateway/static/root/assets/{archive-plugin-DBPu3xCJ.js → archive-plugin-Bg1VTieK.js} +1 -1
  16. package/dist/gateway/static/root/assets/{automation-api-DAou8Kji.js → automation-api-CLPsgcQN.js} +1 -1
  17. package/dist/gateway/static/root/assets/{automation-result-state-CA7LV098.js → automation-result-state-CKVnR4KG.js} +1 -1
  18. package/dist/gateway/static/root/assets/{automation-task-card-DIjI_Y1X.js → automation-task-card-D27Mw66U.js} +1 -1
  19. package/dist/gateway/static/root/assets/{automations-page-BQwSCkmd.js → automations-page-DGNTJ8lN.js} +1 -1
  20. package/dist/gateway/static/root/assets/{automations-workspace-BUFTTjBq.js → automations-workspace-DWDWy-SG.js} +2 -2
  21. package/dist/gateway/static/root/assets/{binary-plugins-D25P9ZxQ.js → binary-plugins-CuwSdCG5.js} +1 -1
  22. package/dist/gateway/static/root/assets/{block-editor-BI105p1U.js → block-editor-Dtl2BG3t.js} +1 -1
  23. package/dist/gateway/static/root/assets/{browser-automation-inputs-DhDRvWQE.js → browser-automation-inputs-uGK086ag.js} +1 -1
  24. package/dist/gateway/static/root/assets/{browser-automations-page-CCPi1Bvy.js → browser-automations-page-Da_edNNS.js} +1 -1
  25. package/dist/gateway/static/root/assets/{browser-control-api-BN4F-bM1.js → browser-control-api-k3OOX3bS.js} +1 -1
  26. package/dist/gateway/static/root/assets/{browser-settings-page-BZXUZpjp.js → browser-settings-page-C1bSw-Jq.js} +1 -1
  27. package/dist/gateway/static/root/assets/{capabilities-LC-yEQYo.js → capabilities-CoeuLRt6.js} +1 -1
  28. package/dist/gateway/static/root/assets/{capabilities-u2z_KFRt.js → capabilities-DlHPLld_.js} +1 -1
  29. package/dist/gateway/static/root/assets/{capabilities-page-B8UgQ4dD.js → capabilities-page-IcwojmJK.js} +2 -2
  30. package/dist/gateway/static/root/assets/{capabilities-settings-panel-Bxn8HtEO.js → capabilities-settings-panel-CtY-bGIi.js} +1 -1
  31. package/dist/gateway/static/root/assets/{channels-9Uaa-IN0.js → channels-Cn1MWBL_.js} +1 -1
  32. package/dist/gateway/static/root/assets/{chat-agents-api-Cffxfzi1.js → chat-agents-api-BB0biwc7.js} +1 -1
  33. package/dist/gateway/static/root/assets/{chat-chart-block-Bbk0b3TV.js → chat-chart-block-QSvjx4w6.js} +1 -1
  34. package/dist/gateway/static/root/assets/{chat-page-e-xCsrdS.js → chat-page-CwP4OMdW.js} +16 -16
  35. package/dist/gateway/static/root/assets/{chat-terminal-dock-CQMuG-Bz.js → chat-terminal-dock-Cd51G9eG.js} +1 -1
  36. package/dist/gateway/static/root/assets/{command-palette-api-BRxfFgGA.js → command-palette-api-CEG10uE-.js} +1 -1
  37. package/dist/gateway/static/root/assets/{composer-payload-handoff-_9L2A5AZ.js → composer-payload-handoff-Bogdq9Hy.js} +1 -1
  38. package/dist/gateway/static/root/assets/{computer-settings-page-BIHbjBVt.js → computer-settings-page-DyAlOzqY.js} +1 -1
  39. package/dist/gateway/static/root/assets/{connected-providers-grid-B7ktDgqt.js → connected-providers-grid-D0lXg22c.js} +1 -1
  40. package/dist/gateway/static/root/assets/{connector-service-page-BVMEg8n-.js → connector-service-page-k2rjyjrp.js} +1 -1
  41. package/dist/gateway/static/root/assets/{connectors-api-B07yoCzk.js → connectors-api-DtvB9Cjm.js} +1 -1
  42. package/dist/gateway/static/root/assets/{connectors-page-hPKaJUWY.js → connectors-page-DI_Q0CKz.js} +1 -1
  43. package/dist/gateway/static/root/assets/{date-picker-BvEnSGZK.js → date-picker-CAankdQw.js} +1 -1
  44. package/dist/gateway/static/root/assets/{desktop-pet-C1z9YDEg.js → desktop-pet-DjM73fir.js} +1 -1
  45. package/dist/gateway/static/root/assets/{desktop-pet-settings-CbbVb8GY.js → desktop-pet-settings-Rmh-GxHl.js} +1 -1
  46. package/dist/gateway/static/root/assets/{dev-view-store-38EmUIEC.js → dev-view-store-BgW2Riyk.js} +1 -1
  47. package/dist/gateway/static/root/assets/{device-pairing-wizard-Wb1EKiXA.js → device-pairing-wizard-UdzSpNa5.js} +1 -1
  48. package/dist/gateway/static/root/assets/{directory-picker-path-field-BvKDrKc4.js → directory-picker-path-field-Rkw3f7lG.js} +1 -1
  49. package/dist/gateway/static/root/assets/{discussion-annotation-sync-BfVzIwe2.js → discussion-annotation-sync-Dudoj_Fz.js} +1 -1
  50. package/dist/gateway/static/root/assets/{extension-debug-page-CB9Lu3Sq.js → extension-debug-page-DxIGAO23.js} +1 -1
  51. package/dist/gateway/static/root/assets/{extension-iframe-host-BzjrVAUR.js → extension-iframe-host-63KpX6IP.js} +1 -1
  52. package/dist/gateway/static/root/assets/{extension-marketplace-api-DigziAgd.js → extension-marketplace-api-yXNUkQDA.js} +1 -1
  53. package/dist/gateway/static/root/assets/{extension-page-DUa9MeaZ.js → extension-page-C811A_Ww.js} +1 -1
  54. package/dist/gateway/static/root/assets/{extension-provider-301x0rh-.js → extension-provider-C4jLFIgh.js} +1 -1
  55. package/dist/gateway/static/root/assets/{extension-settings-page-CP9ciZUI.js → extension-settings-page-WJSw5MT0.js} +1 -1
  56. package/dist/gateway/static/root/assets/{file-preview-surface-BaMGmCbw.js → file-preview-surface-zE9AcaHM.js} +1 -1
  57. package/dist/gateway/static/root/assets/{gateway-config-swr-BD4Bf8uu.js → gateway-config-swr-D6cc6W6E.js} +1 -1
  58. package/dist/gateway/static/root/assets/{gateway-realtime-CSd9VB7Z.js → gateway-realtime-BSRNLciy.js} +1 -1
  59. package/dist/gateway/static/root/assets/gateway-realtime-store-BFeFfApQ.js +1 -0
  60. package/dist/gateway/static/root/assets/{gateway-restart-CIUCTKYR.js → gateway-restart-Unun5hRL.js} +1 -1
  61. package/dist/gateway/static/root/assets/{gateway-settings-CCqF1uZv.js → gateway-settings-DP-DV-e5.js} +1 -1
  62. package/dist/gateway/static/root/assets/{gateway-startup-retry-BsU5k8oi.js → gateway-startup-retry-C8g666Ja.js} +1 -1
  63. package/dist/gateway/static/root/assets/{global-defaults-api-asOZQeM8.js → global-defaults-api-BObi-1ww.js} +1 -1
  64. package/dist/gateway/static/root/assets/{home-page-Bb_RC1O9.js → home-page-CIcs7Mzy.js} +2 -2
  65. package/dist/gateway/static/root/assets/{image-generation-api-CdwYgzhU.js → image-generation-api-C2SqYNyD.js} +1 -1
  66. package/dist/gateway/static/root/assets/{imports-page-CVnoGUyp.js → imports-page-C8ezUkOJ.js} +1 -1
  67. package/dist/gateway/static/root/assets/{index-BmUSsdwn.js → index-D1_PUrJf.js} +5 -5
  68. package/dist/gateway/static/root/assets/{install-connector-dialog-DXVOHMhS.js → install-connector-dialog-Cn4nRSyt.js} +1 -1
  69. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-BCl90SrD.js → keyboard-shortcuts-settings-BRaY4-wA.js} +1 -1
  70. package/dist/gateway/static/root/assets/{local-app-workbench-page-CcJc9xLJ.js → local-app-workbench-page-BZtVcjF3.js} +1 -1
  71. package/dist/gateway/static/root/assets/{local-apps-page-CdAKoWfg.js → local-apps-page-MqP4EnJm.js} +1 -1
  72. package/dist/gateway/static/root/assets/{local-session-drafts-nRGeybku.js → local-session-drafts-DTq9776a.js} +1 -1
  73. package/dist/gateway/static/root/assets/{locale-store-B7y-RVe8.js → locale-store-B6OrWgY1.js} +1 -1
  74. package/dist/gateway/static/root/assets/{logs-page-McbSQwJI.js → logs-page-hkHBjblX.js} +1 -1
  75. package/dist/gateway/static/root/assets/{management-settings-BIR0BwNV.js → management-settings-DoX4eTM3.js} +1 -1
  76. package/dist/gateway/static/root/assets/{markdown-view-DFHa8rUg.js → markdown-view-DrhYZSmg.js} +1 -1
  77. package/dist/gateway/static/root/assets/{mcp-conversation-setup-page-Dwx4TuIr.js → mcp-conversation-setup-page-BEp5E6TD.js} +1 -1
  78. package/dist/gateway/static/root/assets/{media-plugins-BzzLV7wW.js → media-plugins-D987i9Gc.js} +1 -1
  79. package/dist/gateway/static/root/assets/messages-jwdBhfL9.js +3 -0
  80. package/dist/gateway/static/root/assets/{model-selector-YsCHu1Gn.js → model-selector-DXm4NS1_.js} +1 -1
  81. package/dist/gateway/static/root/assets/{models-hub-cache-BUapaPTN.js → models-hub-cache-BLcha5rx.js} +1 -1
  82. package/dist/gateway/static/root/assets/{note-detail-panel-CJ-dPovd.js → note-detail-panel-Cl851ivY.js} +3 -3
  83. package/dist/gateway/static/root/assets/note-image-lightbox-DGYRJS03.js +1 -0
  84. package/dist/gateway/static/root/assets/{notes-api-ulup1oFS.js → notes-api-Ddsf7FVg.js} +1 -1
  85. package/dist/gateway/static/root/assets/{notes-page-BaFNplIr.js → notes-page-DSwA1MU1.js} +1 -1
  86. package/dist/gateway/static/root/assets/{oauth-api-DINa08-z.js → oauth-api-CMmu4DzH.js} +1 -1
  87. package/dist/gateway/static/root/assets/{oauth-provider-connect-C0PVEHC2.js → oauth-provider-connect-BkhnftBq.js} +1 -1
  88. package/dist/gateway/static/root/assets/{page-context-capture-button-CGfR0dsc.js → page-context-capture-button-urhQBRaN.js} +1 -1
  89. package/dist/gateway/static/root/assets/{page-context-draft-DhRNxc0v.js → page-context-draft-BuNUerth.js} +1 -1
  90. package/dist/gateway/static/root/assets/page-header-store-CEn_kPsn.js +1 -0
  91. package/dist/gateway/static/root/assets/{personal-avatar-DiVFO2Aw.js → personal-avatar-B49ueeZO.js} +1 -1
  92. package/dist/gateway/static/root/assets/{personal-page-Cvd-v9kT.js → personal-page-f05ceuFn.js} +1 -1
  93. package/dist/gateway/static/root/assets/{personal-settings-panel-Ds4ntiqu.js → personal-settings-panel-DLQxzPYr.js} +1 -1
  94. package/dist/gateway/static/root/assets/{phone-dependencies-card-B3R6L5Qu.js → phone-dependencies-card-DjmC1Z5j.js} +1 -1
  95. package/dist/gateway/static/root/assets/{phone-model-connection-BieYnAJ5.js → phone-model-connection-BRjHSgYn.js} +1 -1
  96. package/dist/gateway/static/root/assets/{phone-model-picker-Bkex4Sre.js → phone-model-picker-DgIiWLhR.js} +1 -1
  97. package/dist/gateway/static/root/assets/{phone-settings-page-D8PuvEuJ.js → phone-settings-page-DCZGCL_z.js} +1 -1
  98. package/dist/gateway/static/root/assets/{phone-workspace-store-Cmes9gQ4.js → phone-workspace-store-DbqktZbO.js} +1 -1
  99. package/dist/gateway/static/root/assets/{plugin-details-dialog-DblFhnuC.js → plugin-details-dialog-D4tGKip4.js} +1 -1
  100. package/dist/gateway/static/root/assets/{preference-select-fields-D2-QfMN5.js → preference-select-fields-BZWqG7pu.js} +1 -1
  101. package/dist/gateway/static/root/assets/{product-automation-feedback-BzY3z8zu.js → product-automation-feedback-DDQUsag7.js} +1 -1
  102. package/dist/gateway/static/root/assets/{product-open-page-BKw6H0Mn.js → product-open-page-BkRP_HmA.js} +1 -1
  103. package/dist/gateway/static/root/assets/{product-preview-content-VcvxaO2S.js → product-preview-content-o2Y3VNE7.js} +1 -1
  104. package/dist/gateway/static/root/assets/{product-preview-modal-Ym6bomTW.js → product-preview-modal-7Ohx-7OR.js} +2 -2
  105. package/dist/gateway/static/root/assets/{project-detail-page-CFbXWvcd.js → project-detail-page-B2RsSHya.js} +1 -1
  106. package/dist/gateway/static/root/assets/{project-understanding-CrSkrJnM.js → project-understanding-BIMouiYX.js} +1 -1
  107. package/dist/gateway/static/root/assets/{projects-page-Cp91_KzA.js → projects-page-C9R5u3tF.js} +1 -1
  108. package/dist/gateway/static/root/assets/{providers-api-CBSC3jdu.js → providers-api-BOCkRZ7X.js} +1 -1
  109. package/dist/gateway/static/root/assets/{recording-upload-DBHAGKZj.js → recording-upload-C6muEHEO.js} +1 -1
  110. package/dist/gateway/static/root/assets/{registry-api-QZEjziDq.js → registry-api-Bl2guMRg.js} +1 -1
  111. package/dist/gateway/static/root/assets/{remote-access-hub-BdXxFQfH.js → remote-access-hub-BceSMbCs.js} +1 -1
  112. package/dist/gateway/static/root/assets/{resource-unavailable-BTNhcOHF.js → resource-unavailable-CUNbPkdj.js} +1 -1
  113. package/dist/gateway/static/root/assets/{route-preload-C-VRKwB1.js → route-preload-C1BKDjnu.js} +2 -2
  114. package/dist/gateway/static/root/assets/{runtime-tools-api-BDTUD8Rj.js → runtime-tools-api-LopLjgvu.js} +1 -1
  115. package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-CYEzIrDf.js → runtime-tools-settings-panel-9HIPerDP.js} +1 -1
  116. package/dist/gateway/static/root/assets/{service-recommendation-list-CfeYH6lK.js → service-recommendation-list-CoMI6MB1.js} +1 -1
  117. package/dist/gateway/static/root/assets/{session-api-DVXLCZX2.js → session-api-Bfmlmn9F.js} +1 -1
  118. package/dist/gateway/static/root/assets/session-manager-X4UHOjjO.js +25 -0
  119. package/dist/gateway/static/root/assets/{sessions-page-C2CH-55n.js → sessions-page-BT0GdXdS.js} +1 -1
  120. package/dist/gateway/static/root/assets/settings-advanced-gate-Dk9c-Z5e.js +1 -0
  121. package/dist/gateway/static/root/assets/{settings-advanced-section-BmrbHgQa.js → settings-advanced-section-CEorDLUp.js} +1 -1
  122. package/dist/gateway/static/root/assets/{settings-mode-store-Bk_hzwPK.js → settings-mode-store-C2LZqBES.js} +1 -1
  123. package/dist/gateway/static/root/assets/{settings-page-B6vrcc6f.js → settings-page-C_Np_6qZ.js} +1 -1
  124. package/dist/gateway/static/root/assets/{settings-page-header-BLKI3_9N.js → settings-page-header-BAN34UQi.js} +1 -1
  125. package/dist/gateway/static/root/assets/{settings-page-layout-BqBVrkC9.js → settings-page-layout-B5TVFBV2.js} +1 -1
  126. package/dist/gateway/static/root/assets/{setup-interaction-page-BDPte58u.js → setup-interaction-page-BYvTJW3_.js} +1 -1
  127. package/dist/gateway/static/root/assets/{setup-status-panel-DEefuWo3.js → setup-status-panel-UY2dH-sK.js} +1 -1
  128. package/dist/gateway/static/root/assets/{share-link-dialog-C2LyeNzj.js → share-link-dialog-BMcXyzr2.js} +1 -1
  129. package/dist/gateway/static/root/assets/{share-preview-page-BFwEr7Ws.js → share-preview-page-UQ6eUM2_.js} +1 -1
  130. package/dist/gateway/static/root/assets/{shares-api-CTFkLQxq.js → shares-api-DOeDN6Tm.js} +1 -1
  131. package/dist/gateway/static/root/assets/{shares-settings-CpK3yhtc.js → shares-settings-W8XhuAoL.js} +1 -1
  132. package/dist/gateway/static/root/assets/{skill-api-DpicfA6o.js → skill-api-Do_c0d9n.js} +1 -1
  133. package/dist/gateway/static/root/assets/{skill-list-api-B8fegRLZ.js → skill-list-api-DpHaXI2l.js} +1 -1
  134. package/dist/gateway/static/root/assets/{skill-reload-api-VmC8ySUy.js → skill-reload-api-DDRd9IJ2.js} +1 -1
  135. package/dist/gateway/static/root/assets/{skills-page-BIWXS6Ki.js → skills-page-CaeJVKhO.js} +1 -1
  136. package/dist/gateway/static/root/assets/{system-settings-panel-BmoA92oX.js → system-settings-panel-DYWlWPJL.js} +1 -1
  137. package/dist/gateway/static/root/assets/{task-detail-page-CC3Rzqq9.js → task-detail-page-De0qD7xw.js} +1 -1
  138. package/dist/gateway/static/root/assets/{task-result-evidence-BV-6hBVU.js → task-result-evidence-CICR5K1t.js} +1 -1
  139. package/dist/gateway/static/root/assets/{terminal-panel-store-BGdKE9hU.js → terminal-panel-store-BbWUcQe7.js} +1 -1
  140. package/dist/gateway/static/root/assets/{theme-store-Dvv79Wb2.js → theme-store-TkG5mo0p.js} +1 -1
  141. package/dist/gateway/static/root/assets/{tracing-settings-page-B4uA4Pnz.js → tracing-settings-page-CYXEy4EG.js} +1 -1
  142. package/dist/gateway/static/root/assets/{tunnel-api-BurZtvqx.js → tunnel-api-DquDm6U2.js} +1 -1
  143. package/dist/gateway/static/root/assets/{understanding-activity-store-C1cLL8zq.js → understanding-activity-store-Ot3wZ3oQ.js} +1 -1
  144. package/dist/gateway/static/root/assets/{understanding-refresh-store-C3Lr_pjY.js → understanding-refresh-store-C5KYFMaC.js} +1 -1
  145. package/dist/gateway/static/root/assets/{usage-page-C91ZzLm9.js → usage-page-1xFO4smo.js} +1 -1
  146. package/dist/gateway/static/root/assets/{use-autosave-zkzRuUtx.js → use-autosave-HL8XRNR8.js} +1 -1
  147. package/dist/gateway/static/root/assets/{use-composer-attachments-CoiQAgjo.js → use-composer-attachments-XRlQBdNF.js} +1 -1
  148. package/dist/gateway/static/root/assets/{use-file-preview-expanded-DFzy6iVy.js → use-file-preview-expanded-CW956CXS.js} +2 -2
  149. package/dist/gateway/static/root/assets/{use-personal-profile-BB10h9ED.js → use-personal-profile-202s6tJt.js} +1 -1
  150. package/dist/gateway/static/root/assets/{use-workspace-tree-sF5DcONt.js → use-workspace-tree-CjydkmH1.js} +1 -1
  151. package/dist/gateway/static/root/assets/{user-model-page-WFnD5utO.js → user-model-page-OGPXx3pe.js} +1 -1
  152. package/dist/gateway/static/root/assets/{voice-api-key-field-Bqa4PeZx.js → voice-api-key-field-CxFu4MEA.js} +1 -1
  153. package/dist/gateway/static/root/assets/{voice-config-api-LNO2xXHk.js → voice-config-api-MHe5Pn-A.js} +1 -1
  154. package/dist/gateway/static/root/assets/{voice-input-shortcut-events-AzfhxBX7.js → voice-input-shortcut-events-B9xc1oK8.js} +1 -1
  155. package/dist/gateway/static/root/assets/{voice-transcribe-api-Cb8i6dLb.js → voice-transcribe-api-CVEcB6Pe.js} +1 -1
  156. package/dist/gateway/static/root/assets/{work-discovery-overlay-CdQUiV-a.js → work-discovery-overlay-C-JoAg2D.js} +1 -1
  157. package/dist/gateway/static/root/assets/{work-discovery-page-HcUloXxf.js → work-discovery-page-B5Kx29Ru.js} +1 -1
  158. package/dist/gateway/static/root/assets/{working-directory-picker-modal-Dv1HUipe.js → working-directory-picker-modal-DGp9cNzH.js} +1 -1
  159. package/dist/gateway/static/root/assets/{workspace-api-Am2ee4R6.js → workspace-api-HBXn8pL9.js} +2 -2
  160. package/dist/gateway/static/root/assets/workspace-editor-agent-store-msZa42fU.js +1 -0
  161. package/dist/gateway/static/root/assets/{workspace-file-preview-dialog-z5Q00v92.js → workspace-file-preview-dialog-3cpwSG2w.js} +1 -1
  162. package/dist/gateway/static/root/assets/{workspace-open-location-menu-4ONYaGy0.js → workspace-open-location-menu-D0VOFvuP.js} +1 -1
  163. package/dist/gateway/static/root/assets/{xopc-cloud-account-card-DimGN59n.js → xopc-cloud-account-card-BkdW2p3v.js} +1 -1
  164. package/dist/gateway/static/root/index.html +78 -78
  165. package/dist/package.js +1 -1
  166. package/dist/src/gateway/global-defaults-admin.js +1 -1
  167. package/dist/src/gateway/service.js +4 -4
  168. package/dist/src/home-intelligence/host.js +2 -2
  169. package/dist/src/phone/adb-driver.js +2 -2
  170. package/dist/src/phone/model-adapter.d.ts +2 -0
  171. package/dist/src/phone/model-adapter.js +10 -3
  172. package/dist/src/phone/reliability.js +24 -2
  173. package/dist/src/phone/runtime.js +6 -1
  174. package/dist/src/phone/ui-dump-binary.d.ts +1 -1
  175. package/dist/src/phone/ui-dump-binary.js +1 -1
  176. package/dist/src/session/client-history.d.ts +2 -0
  177. package/dist/src/session/client-history.js +3 -0
  178. package/dist/src/session/compact-history.js +1 -0
  179. package/package.json +1 -1
  180. package/dist/gateway/static/root/assets/gateway-realtime-store-Bxkv62qs.js +0 -1
  181. package/dist/gateway/static/root/assets/messages-DYDkJvXj.js +0 -3
  182. package/dist/gateway/static/root/assets/note-image-lightbox-ClPkeHe5.js +0 -1
  183. package/dist/gateway/static/root/assets/page-header-store-CoKMiYoi.js +0 -1
  184. package/dist/gateway/static/root/assets/session-manager-DjRWxXJG.js +0 -23
  185. package/dist/gateway/static/root/assets/settings-advanced-gate-BMHe9uwy.js +0 -1
  186. package/dist/gateway/static/root/assets/workspace-editor-agent-store-CqHcVFhS.js +0 -1
@@ -1 +0,0 @@
1
- import"./notes-api-ulup1oFS.js";
@@ -1 +0,0 @@
1
- import{p as e}from"./locale-store-B7y-RVe8.js";var t={startExtra:null,main:null,end:null},n=e(e=>({...t,setPageHeader:t=>e(t),clearPageHeader:()=>e(t)}));export{n as t};
@@ -1,23 +0,0 @@
1
- import{n as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,i as n,l as r,n as i,p as a,u as o}from"./locale-store-B7y-RVe8.js";import{t as s}from"./messages-DYDkJvXj.js";import{_ as c,c as l,d as u,f as d,g as f,i as ee,m as p,n as m,u as h}from"./schemas-CCWMleym.js";import{i as g,n as _}from"./constants-DBtMsXdW.js";import{_ as te,b as v,g as y,h as b,m as x,s as S,v as C,y as w}from"./session-api-DVXLCZX2.js";import{_ as ne,a as T,b as re,c as ie,d as ae,f as oe,i as se,l as E,o as ce,p as le,r as ue,s as de,t as fe,u as pe,v as me,y as he}from"./local-session-drafts-nRGeybku.js";import{t as D}from"./tool-activity-BtJkgjFf.js";import{r as ge}from"./personal-proactivity-DaRnbB1f.js";import{t as _e}from"./gateway-startup-retry-BsU5k8oi.js";import{a as ve}from"./attachment-utils-core-BIOUBrpT.js";import{a as ye}from"./gateway-realtime-CSd9VB7Z.js";import{n as be}from"./registry-api-QZEjziDq.js";import{a as xe}from"./agents-admin-api-Bgv4lJ9Y.js";var Se=[0,500,1500],Ce=1e4;function we(e){let t=[e.content,e.thinking??null,e.attachments??null,e.contextRefs??null,e.browserContexts??null];e.appContext!==void 0&&t.push(e.appContext);let n=JSON.stringify(t),r=2166136261,i=5381;for(let e=0;e<n.length;e++){let t=n.charCodeAt(e);r^=t,r=Math.imul(r,16777619),i=Math.imul(i,33)^t}return`${n.length.toString(36)}:${(r>>>0).toString(36)}:${(i>>>0).toString(36)}`}function Te(e){return e===408||e===429||e>=500}var Ee=/^\[\d{4}-\d{2}-\d{2} \d{2}:\d{2}[^\]]*\]\s*/u,De=[`user-profile`,`active-focuses`,`collaboration-contract`,`user-context`];function Oe(e,t){let n=`<${t}>`;if(!e.startsWith(n))return null;let r=`</${t}>`,i=e.indexOf(r,n.length);return i<0?null:e.slice(i+r.length).trimStart()}function ke(e){return Ee.test(e)||e.startsWith(`<source_contexts>`)||De.some(t=>e.startsWith(`<${t}>`))}function Ae(e){if(!e.includes(`<source_contexts>`))return e;let t=e.replace(/^\s*<source_contexts>[\s\S]*?<\/source_contexts>\s*/u,``).trimStart();return t.match(/^<user_message>\r?\n([\s\S]*)\r?\n<\/user_message>\s*$/u)?.[1]??t}function je(e){let t=e,n=Oe(t.trimStart(),`xopc_task_execution`);n!==null&&ke(n)&&(t=n),t=Ae(t);let r=t,i=!1;for(t=t.trimStart();;){let e=De.find(e=>t.startsWith(`<${e}>`));if(!e)break;let n=Oe(t,e);if(n===null){t=r,i=!1;break}t=n,i=!0}return i&&!Ee.test(t)&&(t=r),t.replace(Ee,``)}function Me(e){return!e.includes(`[media attached:`)&&!e.includes(`xopc-media-uri:`)?e:e.replace(/\s*\[media attached:[^\]]+\]\s*\r?\nxopc-media-uri:[^\r\n]+\r?\n\s*xopc-media-path:[^\r\n]+(?:\r?\n\s*Use the read_media tool[^\r\n]*)?/g,``).replace(/\s*\[media attached:[^\]]+\]\s*/g,` `).replace(/\s*xopc-media-uri:[^\r\n]+/g,``).replace(/\s*xopc-media-path:[^\r\n]+/g,``).replace(/\s*Use the read_media tool[^\r\n]*/g,``).replace(/\n{3,}/g,`
2
-
3
- `).trim()}var Ne=`@xopc-ref:`,Pe=`[A-Za-z0-9_-]{1,64}`,Fe=RegExp(`${Ne}(${Pe})`,`g`);function Ie(e){if(!RegExp(`^${Pe}$`).test(e))throw Error(`Invalid context reference id`);return`${Ne}${e}`}function Le(){return new RegExp(Fe.source,`g`)}function Re(e){let t=[],n=Le(),r=0,i;for(;(i=n.exec(e))!==null;)i.index>r&&t.push({type:`text`,text:e.slice(r,i.index)}),t.push({type:`context_ref`,refId:i[1]??``}),r=i.index+i[0].length;return t.length===0?null:(r<e.length&&t.push({type:`text`,text:e.slice(r)}),{version:1,parts:t})}function ze(e){return e.parts.flatMap(e=>e.type===`context_ref`?[e.refId]:[])}function Be(e,t){return e.parts.map(e=>{if(e.type===`text`)return e.text;let n=t(e.refId)?.trim();return n?`@${n}`:``}).join(``)}function Ve(e){return e.parts.map(e=>e.type===`text`?e.text:Ie(e.refId)).join(``)}function He(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.version!==1||!Array.isArray(t.parts)?!1:t.parts.every(e=>{if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.type===`text`?typeof t.text==`string`:t.type===`context_ref`&&typeof t.refId==`string`&&RegExp(`^${Pe}$`).test(t.refId)})}var Ue=8e3,We=u({schemaVersion:f([l(1),l(2)]).optional(),questions:he.optional(),interactionMode:m([`quick`,`compose`]).optional(),choiceDetails:ee(u({id:p().min(1).max(160),label:p().trim().min(1).max(1e3),description:p().max(2e3).optional()}).strict()).min(2).max(10).optional(),recommendedChoiceId:p().min(1).max(160).optional(),approval:u({operation:p().min(1).max(1e3),target:p().max(2e3).optional(),impact:p().max(4e3).optional(),argumentsPreview:d(p(),c()).optional()}).strict().optional()}),Ge=u({schemaVersion:f([l(1),l(2)]).optional(),answers:me.optional(),response:u({choiceId:p().min(1).max(160).optional(),text:p().trim().max(Ue).optional()}).strict().optional(),decision:m([`approve`,`deny`]).optional()}).strict();Ge.extend({action:m([`answer`,`agent_decide`,`cancel`]),expectedVersion:h().int().positive(),idempotencyKey:p().trim().min(1).max(256)}).strict();function Ke(e){let t=We.safeParse(e);return t.success?t.data:{}}function qe(e,t){let n=Ge.parse(t);if(e.schemaVersion===2){if(e.kind===`approval`||n.schemaVersion!==2||n.response||n.decision||!e.questions)throw Error(`Multi-question response requires schemaVersion 2`);return{schemaVersion:2,...re(e.questions,n.answers)}}if(n.schemaVersion===2||n.answers!==void 0)throw Error(`Unexpected multi-question response`);if(e.kind===`approval`){if(n.response||!n.decision)throw Error(`An explicit approval decision is required`);return{answer:n.decision,decision:n.decision}}if(n.decision||!n.response)throw Error(`A structured response is required`);let r=n.response.choiceId?e.choiceDetails?.find(e=>e.id===n.response.choiceId):void 0;if(n.response.choiceId&&!r)throw Error(`Unknown clarification choice`);let i=n.response.text?.trim()??``;if(!r&&!i)throw Error(`Answer is required`);return{answer:r&&i?`Choice: ${r.label}\nAdditional information: ${i}`:r?.label??i,response:{...r?{choiceId:r.id}:{},...i?{text:i}:{}}}}var Je=u({version:l(1),deliveryId:p().min(1),taskId:p().min(1),taskRunId:p().min(1),taskTitle:p().min(1).max(500),conversationId:p().min(1),originTranscriptId:p().min(1),requestInputId:p().optional(),assignmentEpoch:h().int().nonnegative(),resultRevision:h().int().positive().optional(),previousResultId:p().optional(),contractVersion:h().int().positive().optional(),instructionSequence:h().int().nonnegative().optional(),adoption:ee(u({entryId:p(),sequence:h().int(),status:m([`applied`,`partially_applied`,`not_applied`,`superseded`]),verification:m([`passed`,`failed`,`unverified`]),claimIds:ee(p()),note:p()})).optional(),outcome:_,text:p().optional(),createdAt:h()});function Ye(e){let t=Je.safeParse(e);return t.success?t.data:void 0}var Xe=[`## Result for the originating conversation`,`For ordinary Tasks when publish_task_result is available, use it before completion to review the actual result. Connected Requests use their own structured result tool instead. When files were published, finalArtifactIds must select the exact final artifact IDs from publication receipts, including [] for a text-only result. Exclude intermediate, obsolete and failed files; publication history is not the final delivery manifest.`,`Provide a complete, evidence-grounded result for the originating conversation. The personal assistant may synthesize its final reply from your report. Match the user’s language and requested depth; preserve requested content, relevant sources, verified data cutoffs, uncertainty, and partial failures. Distinguish reported findings from verified facts. Do not invent a friendly opening or assume a new user request.`,`Keep internal planning, Agent names, tool logs, and task progress links out of the result unless the user specifically requested them or they are necessary to explain a blocker. Never substitute a progress page, a plan, or a promise for the requested result. Publish required files through the available artifact tools; do not repeat the same attachments or send the user to a Task page to collect them.`].join(`
4
- `),Ze=`Before finishing, call personal_request_result with the verified summary and, for mail, message items and coverage. The host composes the final explanation and preserves structured items in the main chat.`;function Qe(e){let t=e.replace(/\r\n/g,`
5
- `);return t.includes(Xe)?t.replace(Xe,``).replace(Ze,``).replace(/<task_brief>\n([\s\S]*?)\n<\/task_brief>/g,`$1`).replace(/\n{3,}/g,`
6
-
7
- `).trim():e}function $e(e,t){let n=e.replace(/\r\n/g,`
8
- `);return n.includes(Xe)?[t.trim(),Xe,...n.includes(Ze)?[Ze]:[]].filter(Boolean).join(`
9
-
10
- `):t}function et(e){return typeof e==`object`&&!!e&&`role`in e}function tt(e){if(!e||typeof e!=`object`)return!1;let t=e.type;return t===`tool_use`||t===`tool_call`||t===`toolCall`}function nt(e){return typeof e==`object`&&!!e}function rt(e){return typeof e.id==`string`&&e.id.length>0?e.id:crypto.randomUUID()}function it(e){if(typeof e!=`string`)return e;try{return JSON.parse(e)}catch{return e}}function at(e){return it(e.args??e.arguments??e.input??e.function?.arguments)??{}}function ot(e){if(typeof e==`string`){let t=Date.parse(e);return Number.isNaN(t)?Date.now():t}return Date.now()}function st(e){if(typeof e==`number`&&Number.isFinite(e))return e;if(typeof e!=`string`)return;let t=Date.parse(e);return Number.isNaN(t)?void 0:t}function ct(e){if(Array.isArray(e))return e.map(e=>lt(e))}function lt(e){if(!e||typeof e!=`object`)return{name:`file`,mimeType:`application/octet-stream`};let t=e,n=ut(t.uri),r=dt(t.name),i=ft(t.mimeType,r),a=typeof t.type==`string`?t.type:void 0,o=a===`photo`||a===`image`||i.startsWith(`image/`)?`image`:a===`voice`||a===`audio`||i.startsWith(`audio/`)?`voice`:a;return{id:typeof t.id==`string`?t.id:void 0,name:r,mimeType:i,type:o,size:typeof t.size==`number`?t.size:void 0,uri:n,bucket:typeof t.bucket==`string`?t.bucket:void 0,path:typeof t.path==`string`?t.path:void 0}}function ut(e){return typeof e==`string`&&e.trim().startsWith(`media://`)?e.trim():void 0}function dt(e){return typeof e==`string`&&e.trim().length>0?e.trim():`file`}function ft(e,t){if(typeof e==`string`&&e.trim().length>0){let t=e.trim();if(t.toLowerCase().split(`;`)[0]?.trim()!==`application/octet-stream`)return t}return ve(t)??`application/octet-stream`}function pt(e){let t=e.uri?.trim();return t?`uri:${t}`:e.id?`id:${e.id}`:`name:${e.name??`file`}|${e.mimeType??``}`}function mt(e){if(!e?.length)return;let t=[],n=new Set;for(let r of e){let e=pt(r);n.has(e)||(n.add(e),t.push(r))}return t.length?t:void 0}var ht=`[Startup context loaded by runtime]`,gt=`...[additional startup memory truncated]...`,_t=`END_QUOTED_NOTES`;function vt(...e){return e.filter(e=>e.length>0).join(`
11
-
12
- `)}function yt(e){if(!e.includes(ht))return e;let t=e.replace(/^\uFEFF/,``);if(!t.startsWith(ht))return e;let n=-1,r=t.lastIndexOf(_t);if(r>=0)n=r+16;else{let e=t.indexOf(gt);e>=0&&(n=e+43)}if(n<0){let n=t.slice(35),r=n.indexOf(`
13
-
14
- `);return r>=0?n.slice(r+2).replace(/^\s+/,``):e}return t.slice(n).replace(/^\s+/,``)}function bt(e){if(typeof e!=`string`||!e.includes(`## Skill:`))return e;let t=e.indexOf(`## Skill:`),n=e.slice(0,t).replace(/\s+$/,``),r=e.slice(t),i=r.match(/## Skill:\s*([^\s\r\n]+)/);if(!i)return e;let a=i[1]??``;if(!a)return e;let o=[...r.matchAll(/\*\*Arguments\*\*:\s*([^\r\n]+)/g)],s=o.length>0?(o[o.length-1]?.[1]??``).trim():``,c=s?`/skill:${a} ${s}`:`/skill:${a}`,l=r.length;if(o.length>0){let e=o[o.length-1];l=(e.index??0)+e[0].length}return vt(n,c,r.slice(l).replace(/^\s+/,``))}function xt(e){return e.includes(`<file path=`)?e.replace(/<file\s+path="[^"]*">\r?\n[\s\S]*?<\/file>(?:\r?\n)*/g,``).replace(/\n{3,}/g,`
15
-
16
- `).trim():e}function O(e){let t=Qe(yt(e));return t=je(t),t=xt(t),t=Me(t),t=Ct(t),bt(t)}var St=/(?:\n{2,})?\[(?:Image description:|\d+ image\(s\) attached(?:; no image-capable model is available to describe them\.| but could not be described:))[\s\S]*\]\s*$/;function Ct(e){return e.replace(St,``).trimEnd()}function wt(e){let t=new Map;return e.forEach((e,n)=>{e.role===`task`&&e.taskTrigger&&t.set(e.taskTrigger.entryId,n)}),e.filter((e,n)=>e.role!==`task`||!e.taskTrigger||t.get(e.taskTrigger.entryId)===n)}function Tt(e){return Nt(e)}function Et(e){if(e.type!==`thinking`)return``;let t=e;return typeof t.text==`string`?t.text:typeof t.thinking==`string`?t.thinking:``}function Dt(e,t){let n=[...e],r=new Map;for(let e=0;e<n.length;e++){let t=n[e];t.type===`tool_use`&&r.set(t.id,e)}for(let e of t){if(e.type===`tool_use`&&r.has(e.id)){let t=r.get(e.id);n[t]=e;continue}if(e.type===`thinking`&&n.length>0){let t=n[n.length-1];if(t.type===`thinking`&&Et(t)===Et(e))continue}e.type===`tool_use`&&r.set(e.id,n.length),n.push(e)}return n}function k(e){if(e.length<2)return e;let t=[];for(let n of e){if(n.role!==`assistant`){t.push(n);continue}let e=t[t.length-1];if(e?.role===`assistant`&&!e.taskResultDelivery&&!n.taskResultDelivery&&!e.personalProvenance&&!n.personalProvenance&&!(n.startsNewBubble&&e.turnId!==n.turnId)){let r={...e,content:Dt(e.content,n.content)};t[t.length-1]=r,n.timestamp!=null&&(r.startedAt=Math.min(e.startedAt??e.timestamp??n.timestamp,n.startedAt??n.timestamp),r.timestamp=n.timestamp),n.completedAt!=null&&(r.completedAt=n.completedAt),n.renderKey&&(r.renderKey=n.renderKey),!r.turnId&&n.turnId&&(r.turnId=n.turnId),n.progressiveRender&&(r.progressiveRender=!0),n.usage&&(r.usage=n.usage),n.outcome&&(r.outcome=n.outcome),n.attachments?.length&&(r.attachments=mt([...r.attachments??[],...n.attachments]))}else t.push(n)}return t}function Ot(e){return e.filter(e=>e.type===`text`).map(e=>e.text.trim()).filter(Boolean).join(`
17
- `)}function kt(e){return e.filter(e=>e.type===`thinking`).map(e=>(e.text??``).trim()).filter(Boolean).join(`
18
- `)}function At(e){return e.filter(e=>e.type===`tool_use`).map(e=>{let t=typeof e.result==`string`?e.result.trim():JSON.stringify(e.result??``);return`${e.name}|${e.status}|${t}`}).join(`
19
- `)}function jt(e){return e.filter(e=>e.type===`review`).map(e=>JSON.stringify(e)).join(`
20
- `)}function Mt(e,t){return e.role!==`assistant`||t.role!==`assistant`?!1:Ot(e.content)===Ot(t.content)&&kt(e.content)===kt(t.content)&&At(e.content)===At(t.content)&&jt(e.content)===jt(t.content)&&JSON.stringify(e.outcome??null)===JSON.stringify(t.outcome??null)}function Nt(e){let t=[];for(let n of e){if(!et(n))continue;let e=n,r=String(e.role??``);if(r!==`system`){if(r===`task`){let n=Pt(e.taskTrigger);n&&t.push({role:`task`,content:[],taskTrigger:n,...e.turnId?{turnId:e.turnId}:{},timestamp:typeof e.timestamp==`number`?e.timestamp:ot(e.timestamp)});continue}if(r===`toolResult`||r===`tool`){Gt(t,e);continue}if(r===`user`){t.push(Lt(e));continue}if(r===`assistant`){t.push(Vt(e));continue}}}return k(wt(t))}function Pt(e){let t=A(e);return!t||typeof t.entryId!=`string`||typeof t.taskId!=`string`||typeof t.taskTitle!=`string`||!t.taskTitle.trim()||![`progress`,`question`,`result`,`failure`].includes(String(t.kind))?null:{entryId:t.entryId,taskId:t.taskId,taskTitle:t.taskTitle,kind:t.kind}}function Ft(e){return e.filter(e=>e.type===`text`).map(e=>({...e,text:O(e.text)})).filter(e=>!!e.text?.trim())}function It(e){return mt([...ct(e.media)??[],...ct(e.attachments)??[]])}function Lt(e){let t=e.content,n=typeof t==`string`?(()=>{let e=O(t);return e.trim()?[{type:`text`,text:e}]:[]})():Ft(Yt(t));return{role:`user`,...e.turnId?{turnId:e.turnId}:{},content:n,attachments:It(e),contextRefs:zt(e.metadata),sourceDevice:Rt(e.metadata),userTurnDocument:Bt(e.metadata),timestamp:typeof e.timestamp==`number`?e.timestamp:ot(e.timestamp),usage:e.usage}}function Rt(e){let t=A(e)?.sourceContexts;if(!Array.isArray(t))return;let n=t.map(A).find(e=>e?.kind===`device_context`);return n&&typeof n.sourceId==`string`&&typeof n.title==`string`?{endpointId:n.sourceId,name:n.title}:void 0}function zt(e){let t=A(e)?.sourceContexts;if(!Array.isArray(t))return;let n=t.flatMap(e=>{let t=A(e);return!t||t.kind!==`note`&&t.kind!==`file`&&t.kind!==`session`&&t.kind!==`browser_tab`&&t.kind!==`mcp_resource`||typeof t.sourceId!=`string`||typeof t.version!=`string`||typeof t.title!=`string`?[]:[{...typeof t.refId==`string`?{refId:t.refId}:{},kind:t.kind,sourceId:t.sourceId,version:t.version,title:t.title,...typeof t.tokenEstimate==`number`?{tokenEstimate:t.tokenEstimate}:{},...t.truncated===!0?{truncated:!0}:{},...t.kind===`file`&&(t.fileKind===`file`||t.fileKind===`directory`)?{fileKind:t.fileKind}:{}}]});return n.length>0?n:void 0}function Bt(e){let t=A(e)?.userTurnDocument;if(!He(t))return;let n=!1;return{...t,parts:t.parts.map(e=>n||e.type!==`text`?{...e}:(n=!0,{...e,text:O(e.text)}))}}function Vt(e){let t=Wt(e);Ut(t,e.metadata);let n=g(A(e.metadata)?.turnOutcome),r=ge.safeParse(A(e.metadata)?.personalProvenance),i=Ye(A(e.metadata)?.taskResultDelivery);return{role:`assistant`,...e.turnId?{turnId:e.turnId}:{},...e.startsNewBubble?{startsNewBubble:!0}:{},content:t,attachments:It(e),...n?{outcome:n}:{},...i?{taskResultDelivery:i}:{},...r.success?{personalProvenance:r.data,startsNewBubble:!0}:{},timestamp:typeof e.timestamp==`number`?e.timestamp:ot(e.timestamp),usage:e.usage}}function A(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:null}function Ht(e){let t=A(e);if(!t||t.type!==`review`)return null;let n=Array.isArray(t.findings)?t.findings:[],r={type:`review`,target:typeof t.target==`string`?t.target:`working tree changes`,summary:typeof t.summary==`string`?t.summary:``,findings:n.map(e=>{let t=A(e);if(!t)return null;let n=t.priority===0||t.priority===1||t.priority===2||t.priority===3?t.priority:2,r=typeof t.title==`string`?t.title:``,i=typeof t.body==`string`?t.body:``;if(!r&&!i)return null;let a={title:r,body:i,priority:n};return typeof t.confidenceScore==`number`&&(a.confidenceScore=t.confidenceScore),typeof t.filePath==`string`&&(a.filePath=t.filePath),typeof t.lineStart==`number`&&(a.lineStart=t.lineStart),typeof t.lineEnd==`number`&&(a.lineEnd=t.lineEnd),a}).filter(e=>e!=null),overallCorrectness:t.overallCorrectness===`patch is correct`||t.overallCorrectness===`patch is incorrect`?t.overallCorrectness:`unknown`,overallExplanation:typeof t.overallExplanation==`string`?t.overallExplanation:``};return typeof t.overallConfidenceScore==`number`&&(r.overallConfidenceScore=t.overallConfidenceScore),typeof t.generatedAt==`number`&&(r.generatedAt=t.generatedAt),(t.source===`model`||t.source===`local`)&&(r.source=t.source),r}function Ut(e,t){let n=Ht(A(t)?.review);n&&(e.some(e=>e.type===`review`&&e.target===n.target)||e.push(n))}function Wt(e){let t=st(e.timestamp),n=Yt(e.rawContent,t),r=n.length>0?n:Yt(e.content,t),i=e.tool_calls;if(Array.isArray(i))for(let e of i){if(!e?.id||r.some(t=>t.type===`tool_use`&&t.id===e.id))continue;let n=e.function?.arguments;if(typeof n==`string`)try{n=JSON.parse(n)}catch{}r.push({type:`tool_use`,id:e.id,name:e.function?.name||`tool`,input:n,status:`running`,startedAt:t})}let a=e.toolCalls;if(Array.isArray(a))for(let e=0;e<a.length;e+=1){let n=a[e],i=typeof n.id==`string`&&n.id?n.id:`tool-call-${e}-${n.name||`tool`}`,o=typeof n.result==`string`,s=r.find(e=>e.type===`tool_use`&&e.id===i);if(s){s.status=o?n.isError?`error`:`done`:s.status,s.result=o?n.result:s.result,s.details=n.details??s.details,o&&(s.completedAt=t,s.durationMs=s.startedAt!=null&&t!=null?Math.max(0,t-s.startedAt):s.durationMs);continue}r.push({type:`tool_use`,id:i,name:n.name||`tool`,input:n.args,status:o?n.isError?`error`:`done`:`running`,result:o?n.result:void 0,details:n.details,startedAt:t,completedAt:o?t:void 0,durationMs:o&&t!=null?0:void 0})}for(let e of r){if(e.type!==`tool_use`)continue;let t=e.details===void 0?e.result:{details:e.details,result:e.result};e.activity=D(e.name,e.status===`running`?`running`:e.status===`error`?`failed`:`completed`,t)}let o=r.some(e=>e.type===`tool_use`)?`narration`:`answer`;for(let e of r)e.type===`text`&&!e.presentation&&(e.presentation=o);return r}function Gt(e,t){let n=Kt(e);if(!n)return;let r=String(t.tool_call_id??t.toolCallId??``),i=qt(t.content),a=!!t.isError,o=st(t.timestamp),s=t.nestedCalls;for(let e of s?.calls??[]){if(!e||typeof e!=`object`)continue;let t=e;typeof t.id!=`string`||typeof t.name!=`string`||n.content.some(e=>e.type===`tool_use`&&e.toolCallId===t.id)||n.content.push({type:`tool_use`,id:t.id,toolCallId:t.id,parentToolCallId:r,name:t.name,input:t.arguments,status:t.status===`ok`?`done`:`error`,...typeof t.durationMs==`number`?{durationMs:t.durationMs}:{},...typeof t.error==`string`?{result:t.error}:{},completedAt:o})}let c=r?n.content.find(e=>e.type===`tool_use`&&e.id===r):void 0;if(c){c.status=a?`error`:`done`,c.result=i,c.details=t.details,c.activity=D(c.name,a?`failed`:`completed`,{details:t.details,result:i}),c.completedAt=o,c.startedAt!=null&&o!=null&&(c.durationMs=Math.max(0,o-c.startedAt)),typeof t.durationMs==`number`&&(c.durationMs=t.durationMs);return}let l=n.content.filter(e=>e.type===`tool_use`&&e.status===`running`);l.length===1&&(l[0].status=a?`error`:`done`,l[0].result=i,l[0].details=t.details,l[0].activity=D(l[0].name,a?`failed`:`completed`,{details:t.details,result:i}),l[0].completedAt=o,l[0].startedAt!=null&&o!=null&&(l[0].durationMs=Math.max(0,o-l[0].startedAt)))}function Kt(e){for(let t=e.length-1;t>=0;t--)if(e[t].role===`assistant`)return e[t];return null}function qt(e){return typeof e==`string`?e:Array.isArray(e)?e.filter(e=>nt(e)&&e.type===`text`).map(e=>String(e.text??``)).join(`
21
- `):String(e??``)}function Jt(e){let t=e.source?.data;if(typeof t==`string`&&t.length>0)return{type:`image`,source:{data:t}};let n=e.data;if(typeof n!=`string`||n.length===0)return null;let r=n.trim();return r.startsWith(`data:`)?{type:`image`,source:{data:r}}:{type:`image`,source:{data:`data:${typeof e.mimeType==`string`&&e.mimeType.includes(`/`)?e.mimeType:`image/png`};base64,${r.replace(/\s/g,``)}`}}}function Yt(e,t){if(e==null)return[];if(typeof e==`string`)return e.trim()?[{type:`text`,text:e}]:[];if(!Array.isArray(e))return[{type:`text`,text:String(e)}];let n=[];for(let r of e){if(!nt(r))continue;let e=r.type;if(e===`text`&&typeof r.text==`string`){let e=r.presentation===`pending`||r.presentation===`narration`||r.presentation===`answer`?r.presentation:void 0;n.push({type:`text`,text:r.text,...e?{presentation:e}:{}})}else if(e===`thinking`){let e=typeof r.thinking==`string`?r.thinking:typeof r.text==`string`?r.text:``;n.push({type:`thinking`,text:e,streaming:!1})}else if(e===`image`){let e=Jt(r);e&&n.push(e)}else if(e===`review`){let e=Ht(r);e&&n.push(e)}else if(e===`tool_use`||e===`tool_call`){if(!tt(r))continue;let e=rt(r),i=String(r.name??r.function?.name??`tool`),a=r.input??r.function?.arguments;n.push({type:`tool_use`,id:e,toolCallId:e,name:i,input:a,status:r.status===`error`?`error`:`done`,startedAt:t,result:typeof r.result==`string`?r.result:void 0,details:r.details})}else if(e===`toolCall`){if(!tt(r))continue;let e=rt(r),i=String(r.name??r.function?.name??`tool`);n.push({type:`tool_use`,id:e,toolCallId:e,name:i,input:at(r),status:`done`,startedAt:t,result:typeof r.result==`string`?r.result:void 0,details:r.details})}}return n}async function Xt(){try{let e=await fetch(n(`/api/health`),{credentials:`same-origin`,redirect:`error`,signal:AbortSignal.timeout(3e3)});if(!e.ok)return;let t=await e.json();return Array.isArray(t.clarificationVersions)&&t.clarificationVersions.includes(2)?{clarificationVersions:[1,2]}:void 0}catch{return}}var Zt;function Qt(e){Zt=e?r.getState().conversationId:void 0}async function $t(){if(!Zt||Zt!==r.getState().conversationId)return;let e=oe.safeParse({version:1,capturedAt:Date.now(),timezone:Intl.DateTimeFormat().resolvedOptions().timeZone,locale:navigator.language});return e.success?e.data:void 0}var en=Symbol.for(`immer-nothing`),tn=Symbol.for(`immer-draftable`),j=Symbol.for(`immer-state`);function M(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var N=Object,P=N.getPrototypeOf,nn=`constructor`,rn=`prototype`,an=`configurable`,on=`enumerable`,sn=`writable`,cn=`value`,F=e=>!!e&&!!e[j];function I(e){return e?dn(e)||_n(e)||!!e[tn]||!!e[nn]?.[tn]||vn(e)||yn(e):!1}var ln=N[rn][nn].toString(),un=new WeakMap;function dn(e){if(!e||!bn(e))return!1;let t=P(e);if(t===null||t===N[rn])return!0;let n=N.hasOwnProperty.call(t,nn)&&t[nn];if(n===Object)return!0;if(!R(n))return!1;let r=un.get(n);return r===void 0&&(r=Function.toString.call(n),un.set(n,r)),r===ln}function fn(e,t,n=!0){L(e)===0?(n?Reflect.ownKeys(e):N.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function L(e){let t=e[j];return t?t.type_:_n(e)?1:vn(e)?2:yn(e)?3:0}var pn=(e,t,n=L(e))=>n===2?e.has(t):N[rn].hasOwnProperty.call(e,t),mn=(e,t,n=L(e))=>n===2?e.get(t):e[t],hn=(e,t,n,r=L(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function gn(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}var _n=Array.isArray,vn=e=>e instanceof Map,yn=e=>e instanceof Set,bn=e=>typeof e==`object`,R=e=>typeof e==`function`,xn=e=>typeof e==`boolean`;function Sn(e){let t=+e;return Number.isInteger(t)&&String(t)===e}var z=e=>e.copy_||e.base_,Cn=e=>e.modified_?e.copy_:e.base_;function wn(e,t){if(vn(e))return new Map(e);if(yn(e))return new Set(e);if(_n(e))return Array[rn].slice.call(e);let n=dn(e);if(t===!0||t===`class_only`&&!n){let t=N.getOwnPropertyDescriptors(e);delete t[j];let n=Reflect.ownKeys(t);for(let r=0;r<n.length;r++){let i=n[r],a=t[i];a[sn]===!1&&(a[sn]=!0,a[an]=!0),(a.get||a.set)&&(t[i]={[an]:!0,[sn]:!0,[on]:a[on],[cn]:e[i]})}return N.create(P(e),t)}else{let t=P(e);if(t!==null&&n)return{...e};let r=N.create(t);return N.assign(r,e)}}function Tn(e,t=!1){return On(e)||F(e)||!I(e)?e:(L(e)>1&&N.defineProperties(e,{set:Dn,add:Dn,clear:Dn,delete:Dn}),N.freeze(e),t&&fn(e,(e,t)=>{Tn(t,!0)},!1),e)}function En(){M(2)}var Dn={[cn]:En};function On(e){return e===null||!bn(e)||N.isFrozen(e)}var kn=`MapSet`,An=`Patches`,jn=`ArrayMethods`,Mn={};function B(e){let t=Mn[e];return t||M(0,e),t}var Nn=e=>!!Mn[e],Pn,Fn=()=>Pn,In=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Nn(kn)?B(kn):void 0,arrayMethodsPlugin_:Nn(jn)?B(jn):void 0});function Ln(e,t){t&&(e.patchPlugin_=B(An),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Rn(e){zn(e),e.drafts_.forEach(Vn),e.drafts_=null}function zn(e){e===Pn&&(Pn=e.parent_)}var Bn=e=>Pn=In(Pn,e);function Vn(e){let t=e[j];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Hn(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];if(e!==void 0&&e!==n){n[j].modified_&&(Rn(t),M(4)),I(e)&&(e=Un(t,e));let{patchPlugin_:r}=t;r&&r.generateReplacementPatches_(n[j].base_,e,t)}else e=Un(t,n);return Wn(t,e,!0),Rn(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===en?void 0:e}function Un(e,t){if(On(t))return t;let n=t[j];if(!n)return Qn(t,e.handledSet_,e);if(!Kn(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){let{callbacks_:t}=n;if(t)for(;t.length>0;)t.pop()(e);Xn(n,e)}return n.copy_}function Wn(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Tn(t,n)}function Gn(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Kn=(e,t)=>e.scope_===t,qn=[];function Jn(e,t,n,r){let i=z(e),a=e.type_;if(r!==void 0&&mn(i,r,a)===t){hn(i,r,n,a);return}if(!e.draftLocations_){let t=e.draftLocations_=new Map;fn(i,(e,n)=>{if(F(n)){let r=t.get(n)||[];r.push(e),t.set(n,r)}})}let o=e.draftLocations_.get(t)??qn;for(let e of o)hn(i,e,n,a)}function Yn(e,t,n){e.callbacks_.push(function(r){let i=t;if(!i||!Kn(i,r))return;r.mapSetPlugin_?.fixSetContents(i);let a=Cn(i);Jn(e,i.draft_??i,a,n),Xn(i,r)})}function Xn(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){let{patchPlugin_:n}=t;if(n){let r=n.getPath(e);r&&n.generatePatches_(e,r,t)}Gn(e)}}function Zn(e,t,n){let{scope_:r}=e;if(F(n)){let i=n[j];Kn(i,r)&&i.callbacks_.push(function(){sr(e),Jn(e,n,Cn(i),t)})}else I(n)&&e.callbacks_.push(function(){let i=z(e);e.type_===3?i.has(n)&&Qn(n,r.handledSet_,r):mn(i,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Qn(mn(e.copy_,t,e.type_),r.handledSet_,r)})}function Qn(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||F(e)||t.has(e)||!I(e)||On(e)?e:(t.add(e),fn(e,(r,i)=>{if(F(i)){let t=i[j];Kn(t,n)&&(hn(e,r,Cn(t),e.type_),Gn(t))}else I(i)&&Qn(i,t,n)}),e)}function $n(e,t){let n=_n(e),r={type_:+!!n,scope_:t?t.scope_:Fn(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0},i=r,a=er;n&&(i=[r],a=tr);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,[s,r]}var er={get(e,t){if(t===j)return e;let n=e.scope_.arrayMethodsPlugin_,r=e.type_===1&&typeof t==`string`;if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);let i=z(e);if(!pn(i,t,e.type_))return ir(e,i,t);let a=i[t];if(e.finalized_||!I(a)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&Sn(t))return a;if(a===nr(e.base_,t)||rr(e,t,a)){sr(e);let n=e.type_===1?+t:t,r=lr(e.scope_,a,e,n);return e.copy_[n]=r}return a},has(e,t){return t in z(e)},ownKeys(e){return Reflect.ownKeys(z(e))},set(e,t,n){let r=ar(z(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=nr(z(e),t),i=r?.[j];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_.delete(t),!0;if(gn(n,r)&&(n!==void 0||pn(e.base_,t,e.type_)))return!0;sr(e),or(e)}return e.copy_[t]===n&&(n!==void 0||pn(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_.set(t,!0),Zn(e,t,n),!0)},deleteProperty(e,t){return sr(e),nr(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),or(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=z(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[sn]:!0,[an]:e.type_!==1||t!==`length`,[on]:r[on],[cn]:n[t]}},defineProperty(){M(11)},getPrototypeOf(e){return P(e.base_)},setPrototypeOf(){M(12)}},tr={};for(let e in er){let t=er[e];tr[e]=function(){let e=arguments;return e[0]=e[0][0],t.apply(this,e)}}tr.deleteProperty=function(e,t){return tr.set.call(this,e,t,void 0)},tr.set=function(e,t,n){return er.set.call(this,e[0],t,n,e[0])};function nr(e,t){let n=e[j];return(n?z(n):e)[t]}function rr(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||e.assigned_?.get(t)||!I(n)||n[j]?!1:e.baseRefs_.has(n)}function ir(e,t,n){let r=ar(t,n);return r?cn in r?r[cn]:r.get?.call(e.draft_):void 0}function ar(e,t){if(!(t in e))return;let n=P(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=P(n)}}function or(e){e.modified_||(e.modified_=!0,e.parent_&&or(e.parent_))}function sr(e){e.copy_||=(e.assigned_=new Map,wn(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var cr=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,n)=>{if(R(e)&&!R(t)){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}R(t)||M(6),n!==void 0&&!R(n)&&M(7);let r;if(I(e)){let i=Bn(this),a=lr(i,e,void 0),o=!0;try{r=t(a),o=!1}finally{o?Rn(i):zn(i)}return Ln(i,n),Hn(r,i)}else if(!e||!bn(e)){if(r=t(e),r===void 0&&(r=e),r===en&&(r=void 0),this.autoFreeze_&&Tn(r,!0),n){let t=[],i=[];B(An).generateReplacementPatches_(e,r,{patches_:t,inversePatches_:i}),n(t,i)}return r}else M(1,e)},this.produceWithPatches=(e,t)=>{if(R(e))return(t,...n)=>this.produceWithPatches(t,t=>e(t,...n));let n,r;return[this.produce(e,t,(e,t)=>{n=e,r=t}),n,r]},xn(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),xn(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),xn(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){I(e)||M(8),F(e)&&(e=ur(e));let t=Bn(this),n=lr(t,e,void 0);return n[j].isManual_=!0,zn(t),n}finishDraft(e,t){let n=e&&e[j];(!n||!n.isManual_)&&M(9);let{scope_:r}=n;return Ln(r,t),Hn(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){let r=t[n];if(r.path.length===0&&r.op===`replace`){e=r.value;break}}n>-1&&(t=t.slice(n+1));let r=B(An).applyPatches_;return F(e)?r(e,t):this.produce(e,e=>r(e,t))}};function lr(e,t,n,r){let[i,a]=vn(t)?B(kn).proxyMap_(t,n):yn(t)?B(kn).proxySet_(t,n):$n(t,n);return(n?.scope_??Fn()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=r,n&&r!==void 0?Yn(n,a,r):a.callbacks_.push(function(e){e.mapSetPlugin_?.fixSetContents(a);let{patchPlugin_:t}=e;a.modified_&&t&&t.generatePatches_(a,[],e)}),i}function ur(e){return F(e)||M(10,e),dr(e)}function dr(e){if(!I(e)||On(e))return e;let t=e[j],n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=wn(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=wn(e,!0);return fn(n,(e,t)=>{hn(n,e,dr(t))},r),t&&(t.finalized_=!1),n}globalThis.Iterator?.from;var fr=new cr().produce,pr=new WeakMap,mr=0;function hr(e){return pr.get(e)}function gr(e){let t=pr.get(e);if(t)return t;let n=`chat-part:${++mr}`;return pr.set(e,n),n}function _r(e,t){pr.set(t,gr(e))}function V(e){return e===`user`}function vr(e,t){if(t<0||t>=e.length)return null;let n=e[t];if(!n||!V(n.role))return null;let r=0;for(let n=0;n<=t;n++){let t=e[n];t&&V(t.role)&&(r+=1)}return r-1}function yr(e,t){let n=1;for(let r=t+1;r<e.length;r++){let t=e[r];if(t&&V(t.role))break;n+=1}return n}function br(e,t){return e.length===t.length&&e.every((e,n)=>{let r=t[n];return!r||e.role!==r.role?!1:!e.turnId||!r.turnId||e.turnId===r.turnId})}function xr(e,t,n){let r=e=>V(e.role);if(n){let i=t.findIndex(e=>r(e)&&e.turnId===n);if(i>=0){let a=e.findLastIndex(e=>r(e)&&e.turnId===n);if(a>=0&&e.slice(a+1).some(r))return e;let o=t.slice(0,i+1);return o.length<e.length||br(e,o)?e:k(o)}}let i=e.filter(r).length;if(t.filter(r).length<=i)return e;let a=t.filter(r).slice(i);return a.length===0?e:k([...e,...a])}function Sr(e){return e.replace(/^\[\d{4}-\d{2}-\d{2} \d{2}:\d{2}[^\]]*\]\s+/,``)}function Cr(e){return(e??[]).filter(e=>e.type===`text`&&!!e.text).map(e=>O(Sr(e.text))).join(`
22
-
23
- `).trim()}function wr(e){if(e?.length)return e.map(e=>{let t=e.data??e.content;return{id:e.id,type:e.type??(e.mimeType?.startsWith(`image/`)?`image`:`document`),mimeType:e.mimeType,...t?{data:t}:{},name:e.name,size:e.size,...e.uri?{uri:e.uri}:{},...e.bucket?{bucket:e.bucket}:{},...e.path?{path:e.path}:{},durationSeconds:e.durationSeconds}})}function Tr(e){let t=typeof e.timestamp==`number`&&Number.isFinite(e.timestamp)?e.timestamp:Date.now();if(Array.isArray(e.content)||typeof e.content==`string`){let[n]=Nt([{role:`user`,turnId:typeof e.turnId==`string`?e.turnId:void 0,content:e.content,media:e.media,attachments:e.attachments,metadata:e.metadata,timestamp:t}]);return n??null}let n=typeof e.text==`string`?O(e.text.trim()):``,r=ct(e.media);return!n&&!r?.length?null:{role:`user`,turnId:typeof e.turnId==`string`?e.turnId:void 0,content:n?[{type:`text`,text:n}]:[],attachments:r,timestamp:t}}var Er=12e4;function Dr(e,t){return!!(e.userTurnDocument&&t.userTurnDocument&&Ve(e.userTurnDocument)===Ve(t.userTurnDocument))}function Or(e,t){if(!V(e.role)||!V(t.role)||e.turnId&&t.turnId&&e.turnId!==t.turnId)return!1;let n=Cr(e.content).trim(),r=Cr(t.content).trim(),i=e.attachments?.length??0,a=t.attachments?.length??0,o=i===0||a>=i;return!!(o&&Dr(e,t)||o&&n&&r&&(n===r||r.startsWith(n))||i>0&&o&&Math.abs((t.timestamp??0)-(e.timestamp??0))<=Er)}function kr(e,t){return!V(e.role)||!V(t.role)?!1:e.turnId&&t.turnId?e.turnId===t.turnId:e.timestamp===t.timestamp||Dr(e,t)?!0:Cr(e.content)===Cr(t.content)}function Ar(e,t){let n=e.length-1,r=e[n];if(!r||!V(r.role)||r.turnId)return e;let i=[...e];return i[n]={...r,turnId:t},i}var jr=`medium`;function Mr(){return{name:null,model:``,thinkingLevel:jr,reasoningLevel:`on`,modelSupportsThinking:!1,effectiveWorkspacePath:``,workspaceSource:`agent_default_root`,userContextMode:`enabled`}}var Nr=class e{static instance;senders=new Map;resumeRunIds=new Map;userAbortedSessions=new Set;static get(){return e.instance||=new e,e.instance}senderFor(e){let t=this.senders.get(e);return t||(t=new sa,this.senders.set(e,t)),t}isStreamingFor(e){return this.senders.get(e)?.isStreamingFor(e)??!1}isTrackingRun(e,t){return this.senders.get(e)?.isTrackingRun(e,t)??!1}getResumeRunId(e){return this.resumeRunIds.get(e)??null}setResumeRunId(e,t){t?this.resumeRunIds.set(e,t):this.resumeRunIds.delete(e)}setUserAborted(e,t){t?this.userAbortedSessions.add(e):this.userAbortedSessions.delete(e)}takeUserAborted(e){return this.userAbortedSessions.delete(e)}resetRunTracking(e){this.resumeRunIds.delete(e),this.userAbortedSessions.delete(e)}abort(e){this.senders.get(e)?.abort(),this.senders.delete(e),this.resetRunTracking(e)}reconcileTerminal(e,t,n){let r=this.senders.get(e)?.reconcileTerminal(e,t,n)??!1;return this.resumeRunIds.get(e)===t&&this.resumeRunIds.delete(e),r}reconcileInactive(e,t){let n=this.senders.get(e)?.reconcileInactive(e,t)??!1;return this.resumeRunIds.get(e)===t&&this.resumeRunIds.delete(e),n}releaseIdleSender(e){let t=this.senders.get(e);t&&!t.isSending&&this.senders.delete(e)}}.get();function Pr(e,t){let n=-1,r;for(let t=0;t<e.length;t++){let i=e[t];(i.type===`tool_use`||i.type===`thinking`)&&(n=t),i.type===`text`&&i.text.trim()&&(r=i)}return e.filter((e,i)=>e.type===`review`||e.type===`text`&&i>n&&(t?.includePending||e.presentation!==`pending`)&&e.presentation!==`narration`&&(!r?.segmentId||!e.segmentId||e.segmentId===r.segmentId))}function Fr(e,t){let n=new Set(Pr(e,{includePending:!0}));for(let r of e)r.type!==`text`||r.presentation!==`pending`||(n.has(r)?t&&(r.presentation=`answer`):r.presentation=`narration`)}function Ir(e){for(let t of e)t.type===`text`&&t.presentation===`pending`&&(t.presentation=`narration`)}function Lr(e){if(e.type!==`thinking`)return``;let t=e;return(typeof t.text==`string`&&t.text.length>0?t.text:typeof t.thinking==`string`?t.thinking:``).trim()}function Rr(e){if(e.role!==`assistant`)return!1;for(let t of e.content)if(t.type===`text`&&(t.text||``).trim().length>0||t.type===`thinking`&&Lr(t).length>0||t.type===`tool_use`||t.type===`review`)return!0;return!1}function zr(e,t){return e&&e.role===`assistant`?{...e,content:[...e.content]}:{role:`assistant`,content:[],timestamp:t}}function H(e){return{...e,content:e.content.map(e=>{let t={...e};return _r(e,t),t}),attachments:e.attachments?e.attachments.map(e=>({...e})):void 0,contextRefs:e.contextRefs?e.contextRefs.map(e=>({...e})):void 0,userTurnDocument:e.userTurnDocument?{...e.userTurnDocument,parts:e.userTurnDocument.parts.map(e=>({...e}))}:void 0}}function Br(e,t){return`${e??``}${t}`}function Vr(e,t){if(!t)return e;if(!e)return t;if(e.endsWith(t))return e;let n=Math.min(e.length,t.length,512);for(let r=n;r>0;r--)if(e.slice(-r)===t.slice(0,r))return e+t.slice(r);return e+t}function Hr(e,t,n){let r=e??``;return!Number.isInteger(n)||n==null||n<0?null:r.slice(n,n+t.length)===t?r:r.length===n?Br(r,t):null}function U(e){let t=e[e.length-1];t?.type===`thinking`&&t.streaming&&(t.streaming=!1)}function Ur(e){Ir(e);let t=e[e.length-1];t?.type===`thinking`&&t.streaming||e.push({type:`thinking`,text:``,streaming:!0})}function Wr(e,t,n){let r=e[e.length-1];if(r?.type===`thinking`){n?r.text=Vr(r.text||``,t):r.text=t,r.streaming=!0;return}e.push({type:`thinking`,text:t,streaming:!0})}function Gr(e){U(e);for(let t of e)t.type===`thinking`&&typeof t.text==`string`&&(t.text=t.text.trim())}function Kr(e){for(let t of e)t.type===`tool_use`&&t.status===`running`&&(t.status=`done`)}function qr(e,t){return e.trim().toLowerCase()===t.trim().toLowerCase()}function Jr(e,t,n,r){U(e);let i=e[e.length-1];if(i?.type===`text`&&i.segmentId===n){i.text=Hr(i.text,t,r?.offset)??Br(i.text,t);return}if(r?.reconcileHydratedSegment&&n&&i?.type===`text`&&!i.segmentId){let e=Hr(i.text,t,r.offset);if(e!==null){i.text=e,i.segmentId=n,i.presentation=`pending`;return}}e.push({type:`text`,text:t,...n?{segmentId:n,presentation:`pending`}:{}})}function Yr(e,t,n){for(let r=e.length-1;r>=0;r--){let i=e[r];if(i.type===`text`&&i.segmentId===t){i.presentation=n;return}}}function Xr(e){let t=W(e);if(!t||t.type!==`review`)return null;let n=Array.isArray(t.findings)?t.findings:[],r={type:`review`,target:typeof t.target==`string`?t.target:`working tree changes`,summary:typeof t.summary==`string`?t.summary:``,findings:n.map(e=>{let t=W(e);if(!t)return null;let n=t.priority===0||t.priority===1||t.priority===2||t.priority===3?t.priority:2,r=typeof t.title==`string`?t.title:``,i=typeof t.body==`string`?t.body:``;if(!r&&!i)return null;let a={title:r,body:i,priority:n};return typeof t.confidenceScore==`number`&&(a.confidenceScore=t.confidenceScore),typeof t.filePath==`string`&&(a.filePath=t.filePath),typeof t.lineStart==`number`&&(a.lineStart=t.lineStart),typeof t.lineEnd==`number`&&(a.lineEnd=t.lineEnd),a}).filter(e=>e!=null),overallCorrectness:t.overallCorrectness===`patch is correct`||t.overallCorrectness===`patch is incorrect`?t.overallCorrectness:`unknown`,overallExplanation:typeof t.overallExplanation==`string`?t.overallExplanation:``};return typeof t.overallConfidenceScore==`number`&&(r.overallConfidenceScore=t.overallConfidenceScore),typeof t.generatedAt==`number`&&(r.generatedAt=t.generatedAt),(t.source===`model`||t.source===`local`)&&(r.source=t.source),r}function Zr(e,t){U(e);let n=Xr(t);if(!n)return;let r=e.findIndex(e=>e.type===`review`&&e.target===n.target);if(r>=0){let t=e[r];if(!t||t.type!==`review`)return;e[r]={...n,reviewId:t.reviewId,status:t.status===`error`?`error`:`complete`,analysisMarkdown:t.analysisMarkdown,errorMessage:t.errorMessage};return}e.push(n)}function Qr(e){for(let t of e)t.type===`review`&&(t.status!==`preparing`&&t.status!==`reviewing`||(t.status=`error`,t.errorMessage??=`The review stream ended before a conclusion was returned.`))}function $r(e,t){U(e);let n=e.find(e=>e.type===`review`&&e.reviewId===t.reviewId);if(n){n.target=t.target||n.target,n.status=t.stage;return}e.push({type:`review`,reviewId:t.reviewId,target:t.target||`working tree changes`,summary:``,findings:[],overallCorrectness:`unknown`,overallExplanation:``,status:t.stage})}function ei(e,t,n){if(!n)return;let r=e.find(e=>e.type===`review`&&e.reviewId===t);r&&(r.status=`reviewing`,r.analysisMarkdown=Vr(r.analysisMarkdown??``,n))}function ti(e,t,n,r){let i=e.find(e=>e.type===`review`&&e.reviewId===t);i&&(i.status=n,i.errorMessage=n===`error`?r:void 0)}function ni(e,t,n,r,i,a,o){Ir(e),U(e);let s={type:`tool_use`,id:crypto.randomUUID(),toolCallId:r,...o,name:t,activity:a??D(t,`running`),input:n,status:`running`,startedAt:i};e.push(s)}function ri(e,t,n,r,i,a,o,s){for(let c=e.length-1;c>=0;c--){let l=e[c];if(!(l.type!==`tool_use`||l.status!==`running`)&&!(i&&l.toolCallId!==i&&l.id!==i)&&!(!i&&!qr(l.name,t))){l.status=n?`error`:`done`,l.result=r,l.activity=o??D(t,n?`failed`:`completed`,r),l.completedAt=a,s?.parentToolCallId&&(l.parentToolCallId=s.parentToolCallId),l.startedAt!=null&&(l.durationMs=Math.max(0,a-l.startedAt)),s?.durationMs!=null&&(l.durationMs=s.durationMs);return}}}function ii(e,t,n,r){for(let i=e.length-1;i>=0;i--){let a=e[i];if(a.type===`tool_use`&&a.status===`running`){if(n&&a.toolCallId===n){a.details=ai(a.details,r);return}if(!n&&qr(a.name,t)){a.details=ai(a.details,r);return}}}}function W(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:null}function ai(e,t){let n=W(t);if(typeof n?.textDelta==`string`){let t=W(e)??{};return{...t,text:Vr(String(t.text??``),n.textDelta)}}if(n?.kind!==`command_output_delta`)return t;let r=W(e)??{},i=n.stream===`stderr`?`stderr`:`stdout`,a=typeof n.delta==`string`?n.delta:``,o=i===`stdout`?`${String(r.stdout??``)}${a}`:String(r.stdout??``),s=i===`stderr`?`${String(r.stderr??``)}${a}`:String(r.stderr??``);return{...r,command:typeof n.command==`string`?n.command:r.command,cwd:typeof n.cwd==`string`?n.cwd:r.cwd,stdout:o,stderr:s,aggregatedOutput:`${String(r.aggregatedOutput??``)}${a}`}}function oi(e){return e!==`ready`}var G={streamingMsg:null,progress:null,taskPlan:null,sending:!1,streaming:!1};function si(e){return{...Mr(),historyStatus:e,messages:[],hasMore:!1,...G}}var ci=0;function li(e){let t=H(e);return t.renderKey??=`chat-row:${++ci}`,t}function K(e){return e.map(li)}function ui(e,t){return e===t?!0:e.role!==t.role||e.timestamp!==t.timestamp||t.renderKey!==void 0&&e.renderKey!==t.renderKey?!1:JSON.stringify({...e,renderKey:void 0})===JSON.stringify({...t,renderKey:void 0})}function di(e,t){if(e.turnId&&t.turnId&&e.turnId!==t.turnId||!kr(e,t)&&!Or(e,t))return t;let n=t.attachments?.length?t.attachments:e.attachments,r=t.contextRefs?.length?t.contextRefs:e.contextRefs,i=t.userTurnDocument??e.userTurnDocument;return{...t,attachments:n,contextRefs:r,userTurnDocument:i,renderKey:e.renderKey,clientSubmissionId:e.clientSubmissionId}}function fi(e,t){return e.role===t.role?e.turnId&&t.turnId?e.turnId===t.turnId&&e.startsNewBubble===t.startsNewBubble:e.timestamp!==void 0&&e.timestamp===t.timestamp:!1}function q(e,t){let n=e.length!==t.length,r=0,i=t.map((t,i)=>{let a=e.findIndex((e,n)=>n>=r&&fi(e,t)),o=i>=r?e[i]:void 0,s=o&&(Or(o,t)||(!o.turnId||!t.turnId||o.turnId===t.turnId)&&Mt(o,t)),c=a>=0?a:s?i:-1,l=e[c];l&&(r=c+1);let u=l&&V(l.role)&&V(t.role)?di(l,t):t;if(l&&ui(l,u))return c!==i&&(n=!0),l;n=!0;let d=li(u);return l?.renderKey&&l.role===u.role&&(fi(l,u)||u.role===`assistant`&&Mt(l,u))&&(d.renderKey=l.renderKey,d.content.forEach((e,t)=>{let n=l.content[t];!n||n.type!==e.type||e.type===`text`&&n.type===`text`&&n.segmentId&&e.segmentId&&n.segmentId!==e.segmentId||e.type===`tool_use`&&n.type===`tool_use`&&(n.toolCallId??n.id)!==(e.toolCallId??e.id)||(_r(n,e),JSON.stringify(n)===JSON.stringify(e)&&(d.content[t]=n))})),d});return n?i:e}function pi(e,t){let n=e.filter(e=>V(e.role)&&e.deliveryStatus);if(n.length===0)return t;let r=e.filter(e=>V(e.role)&&!e.deliveryStatus).length,i=t.filter(e=>V(e.role)).slice(r),a=n.filter(e=>{let t=i.findIndex(t=>Or(e,t));return t<0?!0:(i.splice(t,1),!1)});return a.length>0?[...t,...a]:t}function mi(e,t){let n=t[0];return n?e.findIndex(e=>fi(e,n)):-1}function hi(e,t,n){let r=n?mi(e,t):-1;return r>0?[...e.slice(0,r),...t]:t}function gi(e,t){let n=H(t),r=e[e.length-1];if(r?.role!==`assistant`)return[...e,li(n)];let i=k([r,n]);return[...e.slice(0,-1),...i]}function _i(e){let t=e.uri?.trim();return t?`uri:${t}`:e.id?`id:${e.id}`:`name:${e.name??`file`}|${e.mimeType??``}`}function vi(e,t){let n=[...e??[]],r=_i(t);return n.some(e=>_i(e)===r)||n.push({...t}),n}function yi(e){return{name:e.name,model:e.model,configVersion:e.configVersion,modelConfigSaving:e.modelConfigSaving,thinkingLevel:e.thinkingLevel,reasoningLevel:e.reasoningLevel,modelSupportsThinking:e.modelSupportsThinking,effectiveWorkspacePath:e.effectiveWorkspacePath,workspaceSource:e.workspaceSource,userContextMode:e.userContextMode,historyStatus:e.historyStatus,messages:K(e.messages),hasMore:e.hasMore,streamingMsg:e.streamingMsg?li(e.streamingMsg):null,progress:e.progress,taskPlan:e.taskPlan?{...e.taskPlan,items:e.taskPlan.items.map(e=>({...e}))}:null,sending:e.sending,streaming:e.streaming}}function J(e){return String(e??``).trim()}function bi(e){return e?{name:e.name,model:e.model,configVersion:e.configVersion,modelConfigSaving:e.modelConfigSaving,thinkingLevel:e.thinkingLevel,reasoningLevel:e.reasoningLevel,modelSupportsThinking:e.modelSupportsThinking,effectiveWorkspacePath:e.effectiveWorkspacePath,workspaceSource:e.workspaceSource,userContextMode:e.userContextMode}:Mr()}var Y=a((e,t)=>({focusedConversationId:null,initLoading:!0,loadingMore:!1,shellError:null,sessions:{},setFocusedConversationId:t=>e({focusedConversationId:t}),setInitLoading:t=>e({initLoading:t}),setLoadingMore:t=>e({loadingMore:t}),setShellError:t=>e({shellError:t}),setSessionHistoryStatus:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r];if(t?.historyStatus===n)return e;let i=t??si(`unknown`);return{sessions:{...e.sessions,[r]:{...i,historyStatus:n}}}})},patchSessionMeta:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r];if(t&&Object.entries(n).every(([e,n])=>t[e]===n))return e;let i=t??si(`unknown`);return{sessions:{...e.sessions,[r]:{...i,...n}}}})},initSessionSnapshot:(t,n)=>{let r=J(t);r&&e(e=>({sessions:{...e.sessions,[r]:yi(n)}}))},setCommittedSnapshot:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r],i=n.hasMore,a=bi(t);if(n.name!==void 0&&(a.name=n.name),!t){let t=K(n.messages);return{sessions:{...e.sessions,[r]:{...a,historyStatus:`ready`,messages:t,hasMore:i,...G}}}}if(xi(t)){let o=new Set(t.messages.map(e=>e.taskResultDelivery?.deliveryId)),s=n.messages.filter(e=>e.taskResultDelivery&&!o.has(e.taskResultDelivery.deliveryId));return{sessions:{...e.sessions,[r]:{...t,...a,messages:[...t.messages,...K(s)],historyStatus:`ready`,hasMore:i}}}}let o=q(t.messages,n.messages);return{sessions:{...e.sessions,[r]:{...t,...a,historyStatus:`ready`,messages:o,hasMore:i,...G}}}})},updateSessionMessages:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r];return t?{sessions:{...e.sessions,[r]:{...t,messages:q(t.messages,n(t.messages))}}}:e})},finalizeStreamingTurn:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r],i=bi(t),a=t?.hasMore??!1;return{sessions:{...e.sessions,[r]:{...i,historyStatus:`ready`,messages:gi(t?.messages??[],n),hasMore:a,...G}}}})},completeProgressiveRender:(t,n)=>{let r=J(t);!r||!n||e(e=>{let t=e.sessions[r];if(!t)return e;let i=!1,a=e=>{if(e.renderKey!==n||!e.progressiveRender)return e;i=!0;let t=H(e);return delete t.progressiveRender,t},o=t.messages.map(a),s=t.streamingMsg?a(t.streamingMsg):null;return i?{sessions:{...e.sessions,[r]:{...t,messages:o,streamingMsg:s}}}:e})},clearStreamingState:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r];return!t||n?.preservePendingResponse&&t.streamingMsg?.pendingResponseStatus?e:{sessions:{...e.sessions,[r]:{...t,...G}}}})},clearSession:t=>{let n=J(t);n&&e(e=>{if(!(n in e.sessions))return e;let{[n]:t,...r}=e.sessions;return{sessions:r}})},getSessionSnapshot:e=>{let n=J(e);if(!n)return;let r=t().sessions[n];return r?yi(r):void 0},seedSessionIfEmpty:(e,n,r,i,a=!1)=>{let o=J(e);!o||t().sessions[o]||t().initSessionSnapshot(o,{...Mr(),historyStatus:`ready`,messages:n,hasMore:a,streamingMsg:null,progress:null,taskPlan:null,sending:r,streaming:i})},setSessionFlags:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r];return!t||(n.sending===void 0||n.sending===t.sending)&&(n.streaming===void 0||n.streaming===t.streaming)?e:{sessions:{...e.sessions,[r]:{...t,...n.sending===void 0?{}:{sending:n.sending},...n.streaming===void 0?{}:{streaming:n.streaming}}}}})},setSessionProgress:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r];return t?{sessions:{...e.sessions,[r]:{...t,progress:n}}}:e})},setPendingResponseStatus:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r];return!t?.streamingMsg||t.streamingMsg.content.length>0||t.streaming?e:{sessions:{...e.sessions,[r]:{...t,streamingMsg:{...t.streamingMsg,pendingResponseStatus:n}}}}})},setSessionTaskPlan:(t,n)=>{let r=J(t);r&&e(e=>{let t=e.sessions[r];return!t||n.revision<=(t.taskPlan?.revision??0)?e:{sessions:{...e.sessions,[r]:{...t,taskPlan:{...n,items:n.items.map(e=>({...e}))}}}}})},mutateSessionStreaming:(t,n,r=Date.now())=>{let i=J(t);i&&e(e=>{let t=e.sessions[i];if(!t)return e;let a=t.streamingMsg??{role:`assistant`,content:[],timestamp:r},o=fr(a,e=>{e.renderKey??=`assistant-stream:${i}:${r}`,e.progressiveRender=!0,delete e.pendingResponseStatus,n(e)});return o===t.streamingMsg&&t.streaming?e:(o.content.forEach((e,t)=>{let n=a.content[t];n?.type===e.type?_r(n,e):gr(e)}),{sessions:{...e.sessions,[i]:{...t,streamingMsg:o,streaming:!0}}})})},appendAttachmentToCurrentAssistant:(t,n,r)=>{let i=J(t);i&&e(e=>{let t=e.sessions[i];if(!t)return e;if(t.streamingMsg?.role===`assistant`){let r={...t.streamingMsg,attachments:vi(t.streamingMsg.attachments,n)};return{sessions:{...e.sessions,[i]:{...t,streamingMsg:r}}}}let r=[...t.messages];for(let a=r.length-1;a>=0;a--){let o=r[a];if(o?.role===`assistant`)return r[a]={...o,attachments:vi(o.attachments,n)},{sessions:{...e.sessions,[i]:{...t,messages:r}}}}return e})},applyHydratedTail:(t,n,r)=>{let i=J(t);i&&e(e=>{let t=e.sessions[i];return t?{sessions:{...e.sessions,[i]:{...t,messages:K(n),streamingMsg:r?H(r):null,streaming:!0,sending:!0}}}:e})},appendUserMessageIfMissing:(t,n)=>{let r=J(t);!r||!V(n.role)||e(e=>{let t=e.sessions[r],i=bi(t);if(!t)return{sessions:{...e.sessions,[r]:{...i,historyStatus:`ready`,messages:K([n]),hasMore:!1,...G}}};let a=t.messages[t.messages.length-1];if(a&&Or(a,n)){let i=di(a,n);return{sessions:{...e.sessions,[r]:{...t,messages:K(k([...t.messages.slice(0,-1),i]))}}}}return t.messages.some(e=>kr(e,n))?e:{sessions:{...e.sessions,[r]:{...t,messages:K(k([...t.messages,n]))}}}})},mergeCommittedFromServer:(t,n,r)=>{let i=J(t);i&&e(e=>{let t=e.sessions[i],a=bi(t),o=r??t?.hasMore??!1;if(!t)return{sessions:{...e.sessions,[i]:{...a,historyStatus:`ready`,messages:K(n),hasMore:o,...G}}};let s=hi(t.messages,n,o),c=s===n?o:t.hasMore;if(!xi(t)){let n=q(t.messages,pi(t.messages,s));return{sessions:{...e.sessions,[i]:{...t,...a,historyStatus:`ready`,messages:n,hasMore:c,...G}}}}let l=xr(t.messages,s,t.streamingMsg?.turnId);return l===t.messages&&c===t.hasMore&&t.historyStatus===`ready`?e:{sessions:{...e.sessions,[i]:{...t,historyStatus:`ready`,messages:q(t.messages,l),hasMore:c}}}})},prependHistoryMessages:(t,n,r)=>{let i=J(t);i&&e(e=>{let t=e.sessions[i],a=bi(t);if(!t)return{sessions:{...e.sessions,[i]:{...a,historyStatus:`ready`,messages:K(n),hasMore:r,...G}}};let o=new Set(t.messages.map(e=>e.timestamp)),s=k([...n.filter(e=>!o.has(e.timestamp)),...t.messages]);return{sessions:{...e.sessions,[i]:{...t,messages:q(t.messages,s),hasMore:r}}}})}}));function xi(e){return e?e.streaming||e.sending||!!e.streamingMsg:!1}function Si(e){return Y.getState().getSessionSnapshot(e)}function Ci(e){return Y.getState().sessions[J(e)]?.messages??[]}function wi(e){let t=J(e);if(!t)return!1;let n=Y.getState().sessions[t];return xi(n)||Nr.isStreamingFor(t)?!0:ea(t)}var Ti=/^No API key found for (\S+)/i;function Ei(e){try{let t=JSON.parse(e);return typeof t.kind!=`string`||typeof t.message!=`string`?null:{kind:t.kind,code:typeof t.code==`string`?t.code:t.kind,provider:typeof t.provider==`string`?t.provider:void 0,modelRef:typeof t.modelRef==`string`?t.modelRef:void 0,deepLink:typeof t.deepLink==`string`?t.deepLink:void 0,message:t.message}}catch{return null}}function Di(){return{kind:`send_failed`,code:`send_failed`,message:`Send failed`}}function Oi(e){return{kind:`session_not_found`,code:`session_not_found`,message:e}}function ki(e){let t=e.trim();if(!t)return null;if(t.startsWith(`{`)){let e=Ei(t);if(e)return e}let n=Ti.exec(t);return n?{kind:`provider_setup_required`,code:`provider_setup_required`,provider:n[1].replace(/[.,]$/,``),deepLink:`/settings/capabilities/models`,message:t}:t===`Assistant turn failed`||t.startsWith(`Error: `)?{kind:`unknown`,code:`unknown`,message:t.startsWith(`Error: `)?t.slice(7):t}:{kind:`unknown`,code:`unknown`,message:t}}function Ai(e){return e.kind!==`provider_setup_required`&&e.kind!==`provider_auth_invalid`||!e.provider?null:{kind:e.kind,provider:e.provider,deepLink:e.deepLink??`/settings/capabilities/models`,message:e.message}}var ji=`xopc-pending-agent-run-changed`;function Mi(e){typeof window>`u`||window.dispatchEvent(new CustomEvent(ji,{detail:{chatId:e}}))}var Ni=1e4,X,Pi=new Set;function Fi(e,t){X={type:`endpoint`,endpointId:e,token:t};for(let e of Pi)e(X);Pi.clear()}function Ii(e){!X||e&&X.token!==e||(X=void 0)}function Li(e){return X?Promise.resolve(X):e?.aborted?Promise.reject(e.reason):new Promise((t,n)=>{let r=e=>{o(),t(e)},i=()=>{o(),n(e?.reason??new DOMException(`Aborted`,`AbortError`))},a=globalThis.setTimeout(()=>{o(),n(Error(`Endpoint connection is not ready`))},Ni),o=()=>{globalThis.clearTimeout(a),Pi.delete(r),e?.removeEventListener(`abort`,i)};Pi.add(r),e?.addEventListener(`abort`,i,{once:!0})})}function Ri(e){return`xopc:submission:${e}`}function zi(e,t){try{let n=sessionStorage.getItem(Ri(e));if(n){let e=JSON.parse(n);if(e.fingerprint===t&&typeof e.clientMessageId==`string`)return e.clientMessageId}}catch{}let n=crypto.randomUUID();try{sessionStorage.setItem(Ri(e),JSON.stringify({clientMessageId:n,fingerprint:t}))}catch{}return n}function Bi(e,t){try{let n=sessionStorage.getItem(Ri(e));if(!n)return;JSON.parse(n).clientMessageId===t&&sessionStorage.removeItem(Ri(e))}catch{}}function Vi(e){return e===`on`||e===`stream`||e===`off`?e:`on`}function Hi(e,t){let n=String(e??``).trim();if(!n)return;let r=Y.getState(),i=r.sessions[n]?.configVersion;i!==void 0&&(t.configVersion===void 0||t.configVersion<i)||r.patchSessionMeta(n,{model:t.model,configVersion:t.configVersion,localDraft:t.localDraft===!0,thinkingLevel:t.thinkingLevel||`medium`,reasoningLevel:Vi(t.activityDetail?.default??void 0),effectiveWorkspacePath:t.effectiveWorkspacePath??``,workspaceSource:t.workspaceSource??`agent_default_root`,userContextMode:t.userContextMode??`enabled`})}var Ui=40,Z=new Map,Q=new Map;function Wi(e){e.size>Ui&&e.delete(e.keys().next().value)}function Gi(e){let t=performance.now();return Z.set(e,t),Wi(Z),t}function Ki(e,t){Z.get(e)===t&&Z.delete(e)}function qi(e,t){if(Q.has(t))return;let n=Z.get(e);n!==void 0&&(Z.delete(e),Q.set(t,{runId:t,startedAt:n}),Wi(Q))}function Ji(e){let t=Q.get(e);!t||t.firstTextAt!==void 0||(t.firstTextAt=performance.now(),t.firstTextMs=t.firstTextAt-t.startedAt)}function Yi(e,t=!1){let n=e.trimStart();return!n||/^(?:```|~~~|\||#{1,6}\s|[-*+]\s|\d+[.)]\s)/u.test(n)?!1:/[。!?]/u.test(n)||/[!?](?:[”’"'))\]]|\s|$)/u.test(n)||/(?<!\b(?:Mr|Mrs|Ms|Dr|Prof|vs|etc))\.[”’"')\]]*\s/u.test(n)||t&&/(?<!\b(?:Mr|Mrs|Ms|Dr|Prof|vs|etc))\.[”’"')\]]*$/u.test(n)}function Xi(e,t){let n=Q.get(e);if(!n||n.firstTextAt===void 0||!t.trim()||t.trim()===`NO_REPLY`)return;let r=performance.now();n.firstVisibleMs===void 0&&(n.firstVisibleMs=r-n.startedAt,n.firstRenderLagMs=r-n.firstTextAt),n.firstSentenceMs===void 0&&Yi(t,n.status===`success`)&&(n.firstSentenceMs=r-n.startedAt)}function Zi(e,t){let n=Q.get(e);n&&(n.status=t)}async function Qi(e,t){if(t.aborted)throw new DOMException(`Aborted`,`AbortError`);e!==0&&await new Promise((n,r)=>{let i=()=>{clearTimeout(a),r(new DOMException(`Aborted`,`AbortError`))},a=setTimeout(()=>{t.removeEventListener(`abort`,i),n()},e);t.addEventListener(`abort`,i,{once:!0})})}async function $i(e,n,r,i){let a;for(let o of Se){await Qi(o,r);let s=new AbortController,c=setTimeout(()=>s.abort(),Ce),l=()=>s.abort();r.addEventListener(`abort`,l,{once:!0});try{let o=await t(e,{method:`POST`,headers:{"Content-Type":`application/json`,...i?{"X-Xopc-Expected-Session-Key":i}:{}},body:n,signal:s.signal});if(r.throwIfAborted(),!Te(o.status))return o;a=Error(`Session input temporarily unavailable (${o.status})`)}catch(e){if(r.aborted)throw e;a=e}finally{clearTimeout(c),r.removeEventListener(`abort`,l)}}throw a instanceof Error?a:Error(`Session input request failed`)}function $(e){return`xopc:pendingRun:${e}`}function ea(e){try{let t=globalThis.sessionStorage?.getItem($(e));if(!t)return!1;let n=JSON.parse(t);return typeof n.runId==`string`&&n.runId.trim().length>0}catch{return!1}}function ta(e){try{let t=globalThis.sessionStorage?.getItem($(e));if(!t)return null;let n=JSON.parse(t);return(typeof n.runId==`string`?n.runId.trim():``)||null}catch{return null}}function na(e,t){let n=t.trim();if(n)try{let t=$(e),r=JSON.parse(sessionStorage.getItem(t)??`{}`),i=r.runId===n&&typeof r.lastSeq==`number`?r.lastSeq:0;sessionStorage.setItem(t,JSON.stringify({runId:n,lastSeq:i})),Mi(e)}catch{}}function ra(e,t){try{let n=sessionStorage.getItem($(e));if(!n)return 0;let r=JSON.parse(n);return r.runId===t&&typeof r.lastSeq==`number`?r.lastSeq:0}catch{return 0}}function ia(e,t,n){if(!(!Number.isInteger(n)||n<1))try{let r=$(e),i=sessionStorage.getItem(r);if(!i)return;let a=JSON.parse(i);if(a.runId!==t||n<=(typeof a.lastSeq==`number`?a.lastSeq:0))return;sessionStorage.setItem(r,JSON.stringify({runId:t,lastSeq:n}))}catch{}}function aa(e,t){let n=String(e??``).trim(),r=String(t??``).trim();if(!n||!r)return!1;try{let e=$(n),t=sessionStorage.getItem(e);return!t||JSON.parse(t).runId!==r?!1:(sessionStorage.removeItem(e),Mi(n),!0)}catch{return!1}}function oa(){let e=[];try{for(let t=0;t<sessionStorage.length;t+=1){let n=sessionStorage.key(t);if(!n?.startsWith(`xopc:pendingRun:`))continue;let r=n.slice(16).trim(),i=sessionStorage.getItem(n);if(!r||!i)continue;let a=JSON.parse(i),o=typeof a.runId==`string`?a.runId.trim():``;o&&e.push({conversationId:r,runId:o})}}catch{return e}return e}var sa=class{_abort;_chatId=``;_trackedRunId;_streamCleanup;_streamFinish;_terminalCallbacks;get isSending(){return!!this._abort}get activeChatId(){return this._chatId}isStreamingFor(e){return!!this._abort&&this._chatId===e}isTrackingRun(e,t){return this.isStreamingFor(e)&&this._trackedRunId===t}reconcileTerminal(e,t,n){return!this.isTrackingRun(e,t)||!this._streamFinish?!1:(this._terminalCallbacks?.onResult({runId:t,conversationId:e,status:n}),this._streamFinish(!0),!0)}reconcileInactive(e,t){return!this.isTrackingRun(e,t)||!this._streamFinish?!1:(this._streamFinish(!1),!0)}async send(e,i,a,s,c,l,u,d,f){if(this.isSending)throw Error(`A submission is already in progress`);if(u&&f)throw Error(`Application context requires a new input`);let ee=f===void 0?void 0:ne(f);a=a===void 0?void 0:structuredClone(a),d=d?.map(({refId:e,kind:t,sourceId:n,expectedVersion:r})=>({refId:e,kind:t,sourceId:n,expectedVersion:r})),this._trackedRunId=void 0;let p=new AbortController;this._abort=p,this._chatId=i;let m=Gi(i);try{let f=a&&a.length>10?a.slice(0,10):a,m=Y.getState().sessions[i],h=r.getState().conversationId,g=()=>{if(h!==r.getState().conversationId)throw Error(`Active Gateway changed`)};if(m?.modelConfigSaving)throw Error(`Wait for model configuration to finish saving`);let _=m?.configVersion,te=await Li(p.signal),v=zi(i,`${we({content:e,attachments:f,thinking:s,contextRefs:d,appContext:ee})}:${_??``}${u?`:replace:${u}`:``}`),y={content:e,attachments:f,contextRefs:d,appContext:ee,endpointContext:void 0,interactionCapabilities:void 0},b;if(l||u)u||(y.endpointContext=await $t()),b={clientMessageId:v,configVersion:_,delivery:`next`,...y,thinking:s,origin:te};else{g();let e=await T(i);if(g(),e?.materialization){let t=new Da;await t.confirmPendingMaterialization(i,p.signal);let n=await t.loadSessionAgentConfig(i);p.signal.throwIfAborted(),g(),Hi(i,n),_=n.configVersion,e=await T(i)}let t=await ce(i);if(g(),!e&&!t&&_===void 0){let e=await new Da().loadSessionAgentConfig(i);p.signal.throwIfAborted(),g(),Hi(i,e),_=e.configVersion}if(y.interactionCapabilities=t?t.input.interactionCapabilities:e?.submission?e.submission.input.interactionCapabilities:await Xt(),t){if(y.endpointContext=t.input.endpointContext,ae(t.input)!==ae(y))throw Error(`The previous input is awaiting confirmation`);v=t.clientMessageId,b=le.parse({...t,origin:te})}else if(e){y.endpointContext=e.submission?.input.endpointContext??await $t();let t={kind:`start`,clientMessageId:v,creation:e.creation,input:y};if(e.submission&&ae(e.submission.input)!==ae(y))throw Error(`The first input is awaiting confirmation. Retry it before sending different content.`);b=le.parse({...e.submission??t,origin:te}),v=e.submission?.clientMessageId??v,e.submission??=t,await E(e)}else y.endpointContext=await $t(),b=le.parse({kind:`append`,clientMessageId:v,expectedTranscriptId:await de(i),configVersion:_,delivery:`next`,input:y,origin:te});g();let{origin:n,...r}=le.parse(b);await pe(i,r)}g();let x=await $i(n(l?`/api/tasks/${encodeURIComponent(l)}/inputs`:u?`/api/sessions/${encodeURIComponent(i)}/turns/${encodeURIComponent(u)}/replace`:`/api/sessions/${encodeURIComponent(i)}/inputs`),JSON.stringify(b),p.signal,l?i:void 0);if(!x.ok){g(),!l&&!u&&x.status>=400&&x.status<500&&![401,408,429].includes(x.status)&&await fe(i);let e=await x.json().catch(()=>({}));if(!l&&!u&&x.status===400&&e.error?.code===`BAD_REQUEST`){let e=await T(i);g(),e?.submission?.clientMessageId===v&&(delete e.submission,await E(e)),Bi(i,v)}throw e.error?.code===`CONFIG_CHANGED`&&window.dispatchEvent(new CustomEvent(`session-model-config-stale`,{detail:{conversationId:i}})),Error(o(x.status,x.statusText,e.error?.message))}let S=await x.json();if(p.signal.throwIfAborted(),g(),!l&&!u){let e=S.payload?.receipt;if(!e||e.conversationId!==i||e.clientMessageId!==v)throw Error(`Invalid input receipt`);if(S.payload?.session?.transcriptId!==e.transcriptId)throw Error(`Conversation was reset; reload before sending`);await ue(i,e.transcriptId),window.dispatchEvent(new CustomEvent(`session-input-state`,{detail:{...S.payload?.inputState,conversationId:i}})),S.payload?.agentConfig&&Hi(i,S.payload.agentConfig)}Bi(i,v),c?.onInputAccepted?.();let C=l||u?S.payload?.state:S.payload?.inputState,w=S.payload?.conversationId?.trim()||i,ne=C?.inputs?.find(e=>e.clientMessageId===v);if(C?.activeRunId&&ne?.id===C.activeInputId){await this.resume(C.activeRunId,w,c);return}if(!l&&!u){for(;ne;){if(await Qi(400,p.signal),this._abort!==p)return;let e=await t(n(`/api/sessions/${encodeURIComponent(i)}/input-state`),{signal:p.signal});if(this._abort!==p)return;if(!e.ok)continue;let r=await e.json();p.signal.throwIfAborted(),g();let a=r.payload;if(a?.activeRunId&&a.activeInputId===ne.id){await this.resume(a.activeRunId,w,c);return}if(a?.inputs&&!a.inputs.some(e=>e.id===ne.id))break}if(await c?.onReplayGap?.(),c?.onClarifyRequest)try{let e=await t(n(`/api/sessions/${encodeURIComponent(w)}/clarification`),{signal:p.signal}),r=(e?.ok?await e.json():null)?.payload?.clarification;if(g(),r?.status===`open`&&typeof r.id==`string`){c?.onClarifyRequest?.({...Ke(r),requestId:r.id,question:r.question,kind:r.kind===`approval`?`approval`:`input`,version:r.version,createdAt:r.createdAt,expiresAt:r.expiresAt}),c?.onResult({runId:``,conversationId:w,status:`suspended`});return}}catch(e){if(p.signal.aborted)throw e}c?.onResult({runId:``,conversationId:w,status:`success`});return}this._abort=void 0}finally{Ki(i,m),this._abort===p&&(this._abort=void 0)}}abort(){this._trackedRunId&&Zi(this._trackedRunId,`cancelled`),this._notifyServerAbort(),this._abort?.abort(),this._streamCleanup?.(),this._streamCleanup=void 0,this._abort=void 0,this._clearPendingRun()}_notifyServerAbort(){if(this._chatId)try{let e=sessionStorage.getItem($(this._chatId));if(!e)return;let r=JSON.parse(e);if(typeof r.runId!=`string`||!r.runId)return;t(n(`/api/agent/abort`),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({runId:r.runId})}).catch(()=>{})}catch{}}async resume(e,t,n){qi(t,e),this._trackedRunId=void 0,this._abort=new AbortController,this._chatId=t,this._trackedRunId=e,na(t,e);let r=this._wrapTerminalCallbacks(n);this._terminalCallbacks=r.wrapped;let i=await new Promise(n=>{let i=!1,a=e=>{i||(i=!0,this._streamCleanup?.(),this._streamCleanup=void 0,n(e))};this._streamFinish=a;let o=ra(t,e);this._streamCleanup=ye(`run:${e}`,{onEvent:n=>{let i=n.data&&typeof n.data==`object`?{...n.data,seq:n.seq}:{type:n.event,seq:n.seq,payload:n.data};this._dispatchStreamEvent(n.event,i,r.wrapped),ia(t,e,n.seq),(n.event===`run_end`||n.event===`error`)&&a(!0)},onGap:e=>{if(e.recoverable)return r.wrapped?.onReplayGap?.();a(!1)}},o),this._abort?.signal.addEventListener(`abort`,()=>a(!1),{once:!0})});return this._abort=void 0,this._streamFinish=void 0,this._terminalCallbacks=void 0,this._clearPendingRun(),i}_wrapTerminalCallbacks(e){if(!e)return{wrapped:void 0,sawTerminal:!1,onMissingTerminal:()=>{}};let t=!1,n=()=>{t=!0};return{get sawTerminal(){return t},wrapped:{...e,onResult:r=>{t||(n(),e.onResult(r))},onError:r=>{t||(n(),e.onError(r))}},onMissingTerminal:()=>{t||(n(),e.onError(`Agent run ended without a terminal event`))}}}_clearPendingRun(){let e=this._chatId;if(e)try{let t=$(e),n=sessionStorage.getItem(t);if(n){let e=JSON.parse(n),t=typeof e?.runId==`string`?e.runId:``;if(this._trackedRunId&&t&&t!==this._trackedRunId)return}sessionStorage.removeItem(t),Mi(e)}catch{}this._trackedRunId=void 0}_dispatchStreamEvent(e,t,n){let r=t.payload&&typeof t.payload==`object`?t.payload:{};switch((e===`run_start`||e===`assistant_message_start`||e===`assistant_delta`)&&r.textSurface===`conversation`&&n?.onTextSurface?.(`conversation`),e){case`run_start`:typeof t.runId==`string`&&this._chatId&&qi(this._chatId,t.runId),typeof t.runId==`string`&&this._chatId&&(this._trackedRunId=t.runId,na(this._chatId,t.runId)),typeof t.runId==`string`&&n?.onStreamStart(t.runId,r.startsNewBubble===!0,Pt(r.taskTrigger)??void 0);break;case`user_message`:{let e=r.message&&typeof r.message==`object`?r.message:{},i=Tr({...e,turnId:typeof e.turnId==`string`?e.turnId:t.runId});i&&n?.onUserMessage?.(i);break}case`user_transcript`:{let e=Tr({text:r.text,media:r.media,timestamp:t.timestamp,turnId:t.runId});e&&n?.onUserMessage?.(e);break}case`assistant_message_start`:typeof t.runId==`string`&&n?.onStreamStart(t.runId);break;case`assistant_delta`:typeof r.delta==`string`&&r.delta&&(typeof t.runId==`string`&&r.delta.trim()&&Ji(t.runId),n?.onToken(r.delta,typeof r.messageId==`string`?r.messageId:void 0,typeof r.offset==`number`?r.offset:void 0));break;case`thinking_delta`:typeof r.delta==`string`&&r.delta&&n?.onThinking(r.delta,!0);break;case`thinking_end`:n?.onThinkingEnd();break;case`assistant_message_end`:n?.onThinkingEnd(),typeof r.messageId==`string`&&(r.presentation===`narration`||r.presentation===`answer`)&&n?.onAssistantMessageEnd?.(r.messageId,r.presentation,r.usage);break;case`tool_start`:{let e=String(r.toolName||`unknown`),i=typeof r.toolCallId==`string`?r.toolCallId:void 0;if(e===`clarify`)break;n?.onToolStart(e,r.args,i,ua(t.timestamp),r.activity,la(r));break}case`tool_update`:{let e=typeof r.toolName==`string`&&r.toolName?r.toolName:`unknown`,t=typeof r.toolCallId==`string`?r.toolCallId:void 0;r.details!==void 0&&n?.onToolUpdate?.(e,t,r.details),typeof r.textDelta==`string`&&r.textDelta&&n?.onToolUpdate?.(e,t,{textDelta:r.textDelta});break}case`tool_end`:n?.onToolEnd(typeof r.toolName==`string`&&r.toolName?r.toolName:`unknown`,r.status===`error`||r.status===`cancelled`,ca(r.result),typeof r.toolCallId==`string`?r.toolCallId:void 0,ua(t.timestamp),r.activity,la(r));break;case`review_start`:typeof r.reviewId==`string`&&r.reviewId&&n?.onReviewStart?.({reviewId:r.reviewId,target:typeof r.target==`string`?r.target:`working tree changes`,stage:r.stage===`preparing`?`preparing`:`reviewing`});break;case`review_delta`:typeof r.reviewId==`string`&&typeof r.delta==`string`&&r.delta&&n?.onReviewDelta?.({reviewId:r.reviewId,delta:r.delta});break;case`review_end`:typeof r.reviewId==`string`&&r.reviewId&&n?.onReviewEnd?.({reviewId:r.reviewId,status:r.status===`error`?`error`:`complete`,...typeof r.message==`string`&&r.message?{message:r.message}:{}});break;case`progress`:n?.onProgress({stage:String(r.stage||`thinking`),message:String(r.message||``),detail:r.detail,toolName:r.toolName,completed:typeof r.completed==`number`?r.completed:void 0,total:typeof r.total==`number`?r.total:void 0,timestamp:Date.now()});break;case`compaction`:n?.onCompaction?.({status:r.status||`started`,tokensBefore:typeof r.tokensBefore==`number`?r.tokensBefore:void 0,tokensAfter:typeof r.tokensAfter==`number`?r.tokensAfter:void 0,summary:typeof r.summary==`string`?r.summary:void 0});break;case`turn_plan`:{let e=da(r.plan);e.length>0&&n?.onTurnPlanUpdated?.({explanation:typeof r.explanation==`string`&&r.explanation.trim()?r.explanation.trim():void 0,plan:e});break}case`task_plan_updated`:{let e=fa(r.items),t=r.source===`todo`?`todo`:`update_plan`,i=r.scope===`session`?`session`:`turn`,a=typeof r.planId==`string`?r.planId.trim():``,o=typeof r.revision==`number`&&Number.isInteger(r.revision)?r.revision:0;a&&o>0&&n?.onTaskPlanUpdated?.({planId:a,revision:o,source:t,scope:i,explanation:typeof r.explanation==`string`&&r.explanation.trim()?r.explanation.trim():void 0,items:e});break}case`turn_outcome`:{let e=g(r);e&&n?.onTurnOutcome?.(e);break}case`session_config_updated`:n?.onSessionConfigUpdated?.();break;case`tts_audio`:n?.onTtsAudio?.({uri:String(r.uri||``),mimeType:String(r.mimeType||`audio/mpeg`),name:String(r.name||`voice.mp3`),attachTo:r.attachTo===`last_assistant`?`last_assistant`:void 0,messageId:typeof r.messageId==`string`?r.messageId:void 0});break;case`clarify_request`:{let e=typeof r.requestId==`string`?r.requestId.trim():``,t=typeof r.question==`string`?r.question.trim():``;e&&t&&n?.onClarifyRequest&&n.onClarifyRequest({...Ke(r),requestId:e,kind:r.kind===`approval`?`approval`:`input`,question:t,version:typeof r.version==`number`?r.version:1,createdAt:typeof r.createdAt==`number`?r.createdAt:Date.now(),expiresAt:typeof r.expiresAt==`number`?r.expiresAt:void 0});break}case`run_end`:typeof t.runId==`string`&&typeof t.conversationId==`string`&&(r.status===`success`||r.status===`error`||r.status===`cancelled`||r.status===`suspended`)&&(Zi(t.runId,r.status),n?.onResult({runId:t.runId,conversationId:t.conversationId,status:r.status,...typeof r.summary==`string`&&r.summary?{summary:r.summary}:{}}));break;case`error`:typeof t.runId==`string`&&Zi(t.runId,`error`),n?.onError(String(r.message||JSON.stringify(Di())));break}}};function ca(e){if(typeof e==`string`||e==null)return e;try{return JSON.stringify(e)}catch{return String(e)}}function la(e){return{...typeof e.parentToolCallId==`string`?{parentToolCallId:e.parentToolCallId}:{},...typeof e.durationMs==`number`?{durationMs:e.durationMs}:{}}}function ua(e){if(typeof e!=`number`||!Number.isFinite(e))throw Error(`Chat stream event is missing a numeric timestamp`);return e}function da(e){return Array.isArray(e)?e.map(e=>{let t=e&&typeof e==`object`&&!Array.isArray(e)?e:void 0,n=typeof t?.step==`string`?t.step.trim():``,r=t?.status;if(!(!n||r!==`pending`&&r!==`in_progress`&&r!==`completed`))return{step:n,status:r}}).filter(e=>!!e):[]}function fa(e){return Array.isArray(e)?e.flatMap(e=>{let t=e&&typeof e==`object`&&!Array.isArray(e)?e:void 0,n=typeof t?.id==`string`?t.id.trim():``,r=typeof t?.title==`string`?t.title.trim():``,i=t?.status;return!n||!r||i!==`pending`&&i!==`in_progress`&&i!==`completed`&&i!==`cancelled`?[]:[{id:n,title:r,status:i}]}):[]}async function pa(e){let r=String(e??``).trim();if(!r||await T(r))return{active:!1};let i=await t(n(y(r)));if(!i.ok)throw Error(`Active run lookup failed (${i.status})`);return te(await i.json())}async function ma(e){let t=String(e??``).trim();if(!t)return null;let n=ta(t);try{let e=await pa(t);return e.active&&e.runId?(na(t,e.runId),e.runId):(n&&aa(t,n),null)}catch{}return ta(t)}var ha=e({SessionManager:()=>Da,SessionModelRequiredError:()=>_a,WEB_UI_SESSION_SOURCE_CHANNELS:()=>ga}),ga=`webchat`,_a=class extends Error{constructor(){super(s(i.getState().language).chat.modelRequiredForResources),this.name=`SessionModelRequiredError`}};function va(e){if(!e||typeof e!=`object`)throw Error(`Invalid session agent config response`);let t=e;if(t.ok!==!0||!t.payload||typeof t.payload!=`object`)throw Error(`Invalid session agent config response`);let n=t.payload,r=n.workspaceSource,i=n.activityDetail,a=i&&typeof i==`object`?i:null,o=e=>e===`off`||e===`on`||e===`stream`;if(typeof n.thinkingLevel!=`string`||typeof n.model!=`string`||!a||!o(a.default)||a.override!==null&&!o(a.override)||!o(a.effective)||a.source!==`session`&&a.source!=="default"||typeof n.effectiveWorkspacePath!=`string`||typeof n.workingDirectoryLocked!=`boolean`||n.userContextMode!==`enabled`&&n.userContextMode!==`off`&&n.userContextMode!==`temporary`||r!==`execution_environment`&&r!==`project`&&r!==`session_override`&&r!==`agent_default_root`&&r!==`agent_workspace`)throw Error(`Invalid session agent config response`);return{thinkingLevel:n.thinkingLevel,configVersion:typeof n.configVersion==`number`?n.configVersion:void 0,fixedModel:n.fixedModel===!0,model:n.model,activityDetail:{default:a.default,override:a.override,effective:a.effective,source:a.source},effectiveWorkspacePath:n.effectiveWorkspacePath,workingDirectoryLocked:n.workingDirectoryLocked,userContextMode:n.userContextMode,workspaceSource:r}}var ya=new Map,ba=new Map;function xa(){let e=r.getState().conversationId;return()=>{if(r.getState().conversationId!==e)throw Error(`Active Gateway identity changed`)}}var Sa=new Map,Ca=50,wa=500,Ta=new Map;async function Ea(e){let t=await e.json().catch(()=>({}));return typeof t.error==`string`?t.error:t.error?.message??`HTTP ${e.status}`}var Da=class{async forkSessionAtTurn(e,r){let i=await t(n(x(e)),{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({lastTurnId:r})});if(!i.ok)throw Error(await Ea(i));return C(await i.json())}async loadSessions(){let e=[],t=0;for(let n=0;n<100;n++){let n=await S({channel:ga,limit:100,offset:t});for(let t of n.items)e.push({key:t.key,agentId:t.agentId,transcriptId:t.transcriptId,name:t.name,updatedAt:t.updatedAt,messageCount:t.messageCount,sourceChannel:t.sourceChannel,sourceChatId:t.sourceChatId,projectId:t.projectId,customData:t.customData,routing:t.routing});if(!n.hasMore)break;t+=100}return e.sort((e,t)=>new Date(t.updatedAt).getTime()-new Date(e.updatedAt).getTime())}async loadSessionAgentConfig(e){let r=xa();await this.reconcileDraft(e),r();let i=await T(e);if(i){if(!i.creation.model&&!i.submission&&!i.materialization){let[t,n]=await Promise.all([be(),xe(i.creation.agentId)]);r();let a=n.config.models.chat.primary,o=t.filter(e=>e.id===a||e.id.endsWith(`/${a}`)),s=t.find(e=>e.id===a)??(o.length===1?o[0]:void 0),c=await T(e);if(r(),c&&!c.creation.model&&!c.submission&&!c.materialization&&s)return c.creation.model=s.id,c.creation.thinkingLevel=s.thinking?.initialValue??`off`,await E(c),se(c);if(c)return se(c)}return se(i)}let a=ya.get(e);if(a)return a;let o=(async()=>{let r=await t(n(`/api/sessions/${encodeURIComponent(e)}/agent-config`));if(!r.ok)throw Error(`HTTP ${r.status}`);return va(await r.json())})().finally(()=>{ya.delete(e)});return ya.set(e,o),o}async patchSessionAgentConfig(e,r){let i=await T(e);if(i){if(i.submission||i.materialization)throw Error(`Resolve the pending creation command before changing its configuration`);return r.model!==void 0&&(i.creation.model=r.model??``),r.thinkingLevel!==void 0&&(i.creation.thinkingLevel=r.thinkingLevel),r.userContextMode!==void 0&&(i.creation.temporary=r.userContextMode===`temporary`),await E(i),se(i)}let a=await t(n(`/api/sessions/${encodeURIComponent(e)}/agent-config`),{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify(r)});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(e.error??`HTTP ${a.status}`)}return va(await a.json())}async patchTaskConversationModel(e,r,i,a){let o=await t(n(`/api/tasks/${encodeURIComponent(e)}/conversation/config`),{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({model:r,thinkingLevel:i,configVersion:a})});if(!o.ok){let e=await o.json().catch(()=>({}));throw Error(e.error??`HTTP ${o.status}`)}return va(await o.json())}fetchSessionActiveRun(e){return pa(e)}async loadSession(e,t=0,r,i,a){if(i||await this.reconcileDraft(e),!i&&await T(e))return{messages:[],hasMore:!1};let o=`${i??e}\0${t}\0${r??``}`,s=Sa.get(o);if(s&&s.messagesAtRequest===a)return s.pending;let c=(async()=>{let a=async(t,r)=>{let a=await _e(n(i?`/api/tasks/${encodeURIComponent(i)}/conversation/history?${new URLSearchParams({limit:String(Ca),...r?{before:r}:{offset:String(t)}}).toString()}`:b(e,{limit:Ca,before:r,offset:r?void 0:t})));if(!a.ok)throw Error(`HTTP ${a.status}: ${a.statusText}`);return w(await a.json())},o=await a(t,r);o.session.transcriptId&&await ie(e,o.session.transcriptId);let s=o.session.messages,c=Nt(s),l=o.pagination.hasMore,u=o.pagination.nextBeforeCursor,d=typeof o.session.name==`string`&&o.session.name.trim()?o.session.name.trim():void 0;for(;t===0&&!r&&l&&u&&(s.length<wa||c.length<Ca||!c.some(e=>e.role===`user`))&&(c[0]?.role===`assistant`||c.length<Ca&&!c.some(e=>e.role===`assistant`));){let e=u;if(o=await a(0,e),o.pagination.hasMore&&(!o.pagination.nextBeforeCursor||Number(o.pagination.nextBeforeCursor)>=Number(e)))throw Error(`History pagination did not advance`);s=[...o.session.messages,...s],c=Nt(s),l=o.pagination.hasMore,u=o.pagination.nextBeforeCursor}return{messages:c,hasMore:l,name:d,nextBeforeCursor:u}})().finally(()=>{Sa.get(o)?.pending===c&&Sa.delete(o)});return Sa.set(o,{pending:c,messagesAtRequest:a}),c}async loadTimeline(e,t){if(!t&&(await this.reconcileDraft(e),await T(e)))return[];let r=t??e,i=Ta.get(r);if(i)return i;let a=(async()=>{let r=await _e(n(t?`/api/tasks/${encodeURIComponent(t)}/conversation/timeline`:`/api/sessions/${encodeURIComponent(e)}/timeline`));if(!r.ok)throw Error(`HTTP ${r.status}: ${r.statusText}`);let i=await r.json();if(i.ok!==!0||!Array.isArray(i.items))throw Error(`Invalid session timeline response`);return i.items})().finally(()=>{Ta.delete(r)});return Ta.set(r,a),a}async createSession(e){let t=crypto.randomUUID(),n=new Date().toISOString(),r={agentId:e?.agentId?.trim().toLowerCase()||`main`,projectId:e?.projectId?.trim()||null,execution:e?.executionMode?{mode:e.executionMode}:null,temporary:e?.temporary===!0,model:e?.initialAgentConfig?.model??``,thinkingLevel:e?.initialAgentConfig?.thinkingLevel??`off`};return await E({conversationId:t,creation:r,createdAt:n}),{key:t,agentId:r.agentId,projectId:r.projectId??void 0,messageCount:0,updatedAt:n,sourceChannel:`webchat`}}async resetSession(e){let r=e.trim();if(!r)throw Error(`Session key is required`);let i=await t(n(`/api/sessions/${encodeURIComponent(r)}/reset`),{method:`POST`});if(!i.ok)throw Error(await Ea(i));let a=v(await i.json());if(!a.transcriptId)throw Error(`Reset response is missing transcript identity`);return await ie(e,a.transcriptId),a}async reconcileDraft(e){let r=xa(),i=await T(e);r();let a=await ce(e);r();let o=a?.clientMessageId??i?.submission?.clientMessageId??i?.materialization?.commandId;if(!o)return;let s=await t(n(`/api/sessions/${encodeURIComponent(e)}/input-receipts/${encodeURIComponent(o)}`));if(s.status===404)return;if(!s.ok)throw Error(await Ea(s));let c=await s.json();if(r(),c.payload.receipt.conversationId!==e||c.payload.receipt.clientMessageId!==o||!c.payload.session.transcriptId)throw Error(`Invalid input receipt`);if(i?.materialization){let t=await T(e);if(r(),t?.materialization?.commandId!==o)return}await ue(e,c.payload.session.transcriptId)}async confirmPendingMaterialization(e,t){let n=xa();await this.reconcileDraft(e),t?.throwIfAborted(),n();let r=await T(e);n(),r?.materialization&&await this.submitMaterialization(r,t)}materialize(e,t){let n=JSON.stringify([r.getState().conversationId,e]),i=ba.get(n);if(i)return i;let a=this.materializeDraft(e,t).finally(()=>{ba.get(n)===a&&ba.delete(n)});return ba.set(n,a),a}async materializeDraft(e,t){let n=xa();if(!await T(e))return;n(),await this.loadSessionAgentConfig(e),n();let r=await T(e);if(n(),r){if(r.submission)throw Error(`The first input is awaiting confirmation`);if(!r.creation.model.trim())throw new _a;if(r.materialization??={commandId:crypto.randomUUID(),purpose:t},await E(r),n(),await this.submitMaterialization(r)!==`ready`)throw Error(`Conversation environment is not ready yet`)}}async submitMaterialization(e,r){let i=xa(),a=e.conversationId;if(!e.materialization)throw Error(`Missing materialization command`);let o=await t(n(`/api/sessions/${encodeURIComponent(a)}/materialize`),{method:`POST`,body:JSON.stringify({...e.materialization,creation:e.creation}),signal:r});if(!o.ok)throw Error(await Ea(o));let s=await o.json();if(r?.throwIfAborted(),i(),s.payload.receipt.conversationId!==a||s.payload.receipt.clientMessageId!==e.materialization.commandId)throw Error(`Invalid materialization receipt`);let c=await T(a);return i(),c?.materialization?.commandId===e.materialization.commandId&&await ue(a,s.payload.receipt.transcriptId),s.payload.receipt.lifecycle}async fetchSessionName(e){let t=await _e(n(`/api/sessions/${encodeURIComponent(e)}?offset=0&limit=1`));if(!t.ok)return;let r=(await t.json()).session?.name;return typeof r==`string`&&r.trim()?r.trim():void 0}updateUrl(e){let t=`#/chat/${encodeURIComponent(e)}`;if(location.hash!==t){let e=window.history.state,n=e&&typeof e==`object`&&!Array.isArray(e)?{...e}:e;history.replaceState(n,``,t)}}parseSessionFromHash(){let e=location.hash.slice(1),t=e.match(/^\/chat\/(.+)$/)||e.match(/^chat\/(.+)$/),n=t?decodeURIComponent(t[1]):null;return n&&n!==`new`?n:null}async deleteMessages(e,r){let i=await t(n(`/api/sessions/${encodeURIComponent(e)}/messages`),{method:`DELETE`,headers:{"Content-Type":`application/json`},body:JSON.stringify(r)});if(!i.ok){let e=await i.json().catch(()=>({}));throw Error(e.error??`HTTP ${i.status}`)}}};export{yr as $,ni as A,Rr as B,xi as C,ei as D,Zr as E,Qr as F,Nr as G,Ur as H,Kr as I,Ar as J,jr as K,Gr as L,ri as M,zr as N,Jr as O,Fr as P,V as Q,ti as R,wi as S,Y as T,ii as U,$r as V,Pr as W,wr as X,Cr as Y,Sr as Z,ki as _,Ve as _t,aa as a,Tt as at,Si as b,ta as c,$e as ct,Hi as d,qe as dt,vr as et,Ii as f,Ke as ft,Oi as g,Be as gt,ji as h,Re as ht,sa as i,k as it,H as j,Wr as k,na as l,Qe as lt,Li as m,Le as mt,ha as n,hr as nt,ea as o,wt as ot,Fi as p,Ie as pt,Mr as q,ma as r,Qt as rt,oa as s,O as st,Da as t,_r as tt,Xi as u,Ue as ut,Ai as v,ze as vt,oi as w,Ci as x,mi as y,Yr as z};
@@ -1 +0,0 @@
1
- import{n as e}from"./settings-mode-store-Bk_hzwPK.js";function t(t){let{children:n,fallback:r}=t,i=r===void 0?null:r;return e()?n:i}export{t};
@@ -1 +0,0 @@
1
- import{p as e}from"./locale-store-B7y-RVe8.js";var t=e(e=>({agentId:``,setAgentId:t=>e({agentId:t})}));export{t};