@symerian/symi 3.4.27 → 3.4.28

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 (382) hide show
  1. package/dist/{agent-DOOj3Gzb.js → agent-D9g71cFB.js} +3 -3
  2. package/dist/{agent-CiqPWDUd.js → agent-DXAdKNkT.js} +19 -19
  3. package/dist/{agent-scope-Bnsyyeci.js → agent-scope-DOrZjOnW.js} +18 -18
  4. package/dist/{agents-BBQfFoen.js → agents-DxIDPR2a.js} +10 -10
  5. package/dist/{agents.config-Dm3oLpYK.js → agents.config-CxrFhtC1.js} +1 -1
  6. package/dist/{audit-BSX7fMfc.js → audit-CcxTZUi-.js} +22 -22
  7. package/dist/{audit-CXT_jhD1.js → audit-CojL8qpM.js} +9 -9
  8. package/dist/{auth-choice-BYbTjWcs.js → auth-choice-D7pXnPLh.js} +6 -6
  9. package/dist/{auth-choice-options-Cp206HkX.js → auth-choice-options-DfT-D0Cb.js} +1 -1
  10. package/dist/{auth-choice-options-DkHelws3.js → auth-choice-options-osb2GMd4.js} +1 -1
  11. package/dist/{auth-choice-prompt-BMT9i-O0.js → auth-choice-prompt-6_u7zS1M.js} +1 -1
  12. package/dist/{auth-choice-prompt-D8hErqN3.js → auth-choice-prompt-SCWccuw0.js} +1 -1
  13. package/dist/{auth-choice-rhBmet5i.js → auth-choice-wXCXR5E2.js} +12 -12
  14. package/dist/{auth-profiles-D5nYBj_Z.js → auth-profiles-Ce7R_25e.js} +2 -2
  15. package/dist/{auth-token-CAV1oLQG.js → auth-token-Dvw-1mFR.js} +3 -3
  16. package/dist/{banner-C1qG5Rm9.js → banner-C2ox6sgo.js} +1 -1
  17. package/dist/{bonjour-discovery-C44-sj_H.js → bonjour-discovery-BjSUj2V6.js} +1 -1
  18. package/dist/{bonjour-discovery-C1pYo2mP.js → bonjour-discovery-FJyieAXp.js} +1 -1
  19. package/dist/{browser-cli-De8jg4-F.js → browser-cli-BXH0KbhG.js} +15 -15
  20. package/dist/{browser-cli-BeAwhyOG.js → browser-cli-UZqxfaV_.js} +9 -9
  21. package/dist/build-info.json +3 -3
  22. package/dist/bundled/boot-md/handler.js +2 -2
  23. package/dist/bundled/session-memory/handler.js +2 -2
  24. package/dist/{call-CW8U1BPq.js → call-CKm3T_ar.js} +10 -9
  25. package/dist/{call-GzGqMHAx.js → call-DrkOiHjS.js} +2 -1
  26. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  27. package/dist/{channel-options-BsXUgCMq.js → channel-options-BzblBp9O.js} +2 -2
  28. package/dist/{channel-options-CJD7jwYg.js → channel-options-DX_AHCmW.js} +2 -2
  29. package/dist/{channels-cli-Dxn5n9e4.js → channels-cli-BD8GYuGX.js} +37 -37
  30. package/dist/{channels-cli-Bao4VNbH.js → channels-cli-BMwft2f4.js} +71 -71
  31. package/dist/{chrome-pFBxO63W.js → chrome-rzK8edU7.js} +2 -2
  32. package/dist/{clack-prompter-Dw5j2O2o.js → clack-prompter-Bc38EIYW.js} +4 -4
  33. package/dist/{clack-prompter-B-Q70teL.js → clack-prompter-CuIw5vQW.js} +4 -4
  34. package/dist/{cli-CrhLSz3t.js → cli-CKE8ng04.js} +19 -19
  35. package/dist/{cli-WP38F9C5.js → cli-qjFclNUc.js} +50 -50
  36. package/dist/{client-T5P9umyG.js → client-B9E9fdCA.js} +4 -2
  37. package/dist/{client-BqT7xONl.js → client-DhdWcgZP.js} +3 -1
  38. package/dist/{command-registry-DoXcG7FZ.js → command-registry-BQqL4Q9U.js} +11 -11
  39. package/dist/{commands-registry-BjcGLk4v.js → commands-registry-VfAQOVZO.js} +1 -1
  40. package/dist/{completion-cli-C0SXi7ya.js → completion-cli-DSp6zI3Z.js} +12 -12
  41. package/dist/{completion-cli-DaWi3_ux.js → completion-cli-JF4DUQKc.js} +3 -3
  42. package/dist/{config-D-PYSlE8.js → config-D7SS4vdk.js} +2 -2
  43. package/dist/{config-cli-DS67KtKf.js → config-cli-Cm4OpJjo.js} +5 -5
  44. package/dist/{config-cli-DXKm0pS5.js → config-cli-X1KZubYA.js} +2 -2
  45. package/dist/{config-guard-xLTTFANi.js → config-guard-CN1qhDyB.js} +10 -10
  46. package/dist/{config-guard-DtNhA37g.js → config-guard-SNMCV6sc.js} +1 -1
  47. package/dist/{config-validation-C4wGq3rz.js → config-validation-DS5Jr_iO.js} +1 -1
  48. package/dist/{configure-B99YJJb0.js → configure-C3S_eQA1.js} +23 -23
  49. package/dist/{configure-CzO4_jJJ.js → configure-fY313TO1.js} +21 -21
  50. package/dist/{consolidate-BB4BOQIN.js → consolidate-CF6vEjPe.js} +6 -6
  51. package/dist/{control-service-y53w3Jzy.js → control-service-CJWzOFkK.js} +4 -4
  52. package/dist/{control-service-CrY0sEKJ.js → control-service-DvK2HPC2.js} +2 -2
  53. package/dist/control-ui/index.html +7 -0
  54. package/dist/control-ui/js/menu.js +2 -0
  55. package/dist/control-ui/js/settings.js +1 -0
  56. package/dist/{control-ui-assets-Dryy7mCE.js → control-ui-assets-CkPR0Fz2.js} +1 -1
  57. package/dist/{cron-cli-BMblAFRK.js → cron-cli-BIIzbF-W.js} +10 -10
  58. package/dist/{cron-cli-COY_Fz9R.js → cron-cli-BNx0V18_.js} +6 -6
  59. package/dist/{daemon-cli-Bw8s6rpR.js → daemon-cli-CGfWQN7c.js} +13 -13
  60. package/dist/{daemon-cli-BJGNf5qV.js → daemon-cli-DCbqVfyu.js} +15 -15
  61. package/dist/daemon-cli.js +3 -0
  62. package/dist/{daemon-runtime-u4p9jsEF.js → daemon-runtime-BD_EkuZP.js} +11 -11
  63. package/dist/{daemon-runtime-Cyqcsmvq.js → daemon-runtime-CAdn50ea.js} +1 -1
  64. package/dist/{deliver-C79-Umbk.js → deliver-DB4v0Tyl.js} +2 -2
  65. package/dist/{deps-UA1UBhl7.js → deps-Bt6gnwqB.js} +1 -1
  66. package/dist/{devices-cli-D7V9UfDs.js → devices-cli-CK5iNr60.js} +4 -4
  67. package/dist/{devices-cli-wsTs-nti.js → devices-cli-Dg4sVTTI.js} +8 -8
  68. package/dist/{diagnostics-BVt0GQrB.js → diagnostics-4PsqURzT.js} +1 -1
  69. package/dist/{diagnostics-oW0LBW-t.js → diagnostics-Ee2qfR9V.js} +5 -5
  70. package/dist/{directory-cli-D8As6t8Z.js → directory-cli-CIX9qXWA.js} +7 -7
  71. package/dist/{directory-cli-CyY2DN__.js → directory-cli-CR-4DW4i.js} +4 -4
  72. package/dist/{dm-policy-shared-DRJrFKqJ.js → dm-policy-shared-DmpXsl2K.js} +1 -1
  73. package/dist/{dns-cli-BKOTBn3n.js → dns-cli-Cd3EpJKL.js} +6 -6
  74. package/dist/{dns-cli-BKAlICNV.js → dns-cli-DzE58v7c.js} +3 -3
  75. package/dist/{docs-cli-AvMHsZ3L.js → docs-cli-BcqjkjOA.js} +2 -2
  76. package/dist/{docs-cli-D5j7Nmz2.js → docs-cli-DD59E5fQ.js} +3 -3
  77. package/dist/{doctor-completion-B1YCzbvi.js → doctor-completion-0ROoVWx0.js} +2 -2
  78. package/dist/{doctor-completion-mev5PRjN.js → doctor-completion-BYv8-KM8.js} +3 -3
  79. package/dist/{doctor-config-flow-B0pP_wcc.js → doctor-config-flow-BOfsrB_o.js} +3 -3
  80. package/dist/{doctor-config-flow-Uv41seME.js → doctor-config-flow-dUAjyD2W.js} +11 -11
  81. package/dist/{enable-CwLPpoEb.js → enable-B5wvwTYB.js} +1 -1
  82. package/dist/{enable-0trJ7bnB.js → enable-avpl_Lwo.js} +1 -1
  83. package/dist/entry.js +1 -1
  84. package/dist/{exec-approvals-cli-AOUcxa3t.js → exec-approvals-cli-CLD1HXqE.js} +10 -10
  85. package/dist/{exec-approvals-cli-B4ry9s5r.js → exec-approvals-cli-Cv9lE0Ov.js} +16 -16
  86. package/dist/extensionAPI.js +2 -2
  87. package/dist/{file-lock-2AecMjCa.js → file-lock-BVUYnlQv.js} +8 -8
  88. package/dist/{fs-safe-B0Is-oLk.js → fs-safe-BdejYjW8.js} +6 -6
  89. package/dist/{gateway-cli-Chnp6icp.js → gateway-cli-CegyVUQC.js} +65 -64
  90. package/dist/{gateway-cli-B3JVj_dv.js → gateway-cli-DsWTC2Nn.js} +118 -117
  91. package/dist/{gateway-rpc-conZO9va.js → gateway-rpc-CBb3_pT9.js} +2 -2
  92. package/dist/{gateway-rpc-CLzM6ugo.js → gateway-rpc-DrcgCoEA.js} +2 -2
  93. package/dist/{glass-ui-ws-5o8dvEZO.js → glass-ui-ws-BzjmueMF.js} +45 -45
  94. package/dist/{glass-ui-ws--GjxFRyX.js → glass-ui-ws-DyY5R2Ze.js} +77 -77
  95. package/dist/{health-CXUnVb6i.js → health-BJl_ZtRW.js} +3 -3
  96. package/dist/{health-D2th0Ip6.js → health-B__mwl7J.js} +6 -6
  97. package/dist/{hooks-cli-B_sZth4r.js → hooks-cli-9wVZvnCx.js} +25 -25
  98. package/dist/{hooks-cli-B4Nvp9AV.js → hooks-cli-DTaiN3Ce.js} +67 -67
  99. package/dist/{hooks-status-S76rKAPs.js → hooks-status-CRdYwf7p.js} +1 -1
  100. package/dist/{hooks-status-C7TAcBYj.js → hooks-status-i4MgV8tU.js} +2 -2
  101. package/dist/{image-ops-BzCBIakN.js → image-ops-L70xVnpG.js} +10 -10
  102. package/dist/index.js +61 -61
  103. package/dist/{inspect-C8l_ltw3.js → inspect-BZEGJ1Wu.js} +1 -1
  104. package/dist/{inspect-U3g9owQ8.js → inspect-ChCXJY8c.js} +4 -4
  105. package/dist/{install-safe-path-tUtnFnYm.js → install-safe-path-INk2Z_kc.js} +1 -1
  106. package/dist/{install-safe-path-BwMMOh9z.js → install-safe-path-PVqsVjI9.js} +12 -12
  107. package/dist/{installs-vdi1BESF.js → installs-b6XWplET.js} +10 -10
  108. package/dist/{installs-CylGJ0W4.js → installs-lGgvyXAJ.js} +3 -3
  109. package/dist/{internal-csqU78gW.js → internal-DVCddhhN.js} +9 -9
  110. package/dist/{lifecycle-core-Bc5_0u07.js → lifecycle-core-SWNKAc8k.js} +5 -5
  111. package/dist/{lifecycle-core-BfmNlC-k.js → lifecycle-core-iiq9e4fE.js} +6 -6
  112. package/dist/llm-slug-generator.js +2 -2
  113. package/dist/{local-roots-2Jb79HZ8.js → local-roots-CgDCgCuM.js} +1 -1
  114. package/dist/{logs-cli-COZzdFu6.js → logs-cli-BEWpB_ac.js} +10 -10
  115. package/dist/{logs-cli-Bs3tAiaq.js → logs-cli-BGjeoamB.js} +6 -6
  116. package/dist/{manager-DyYRwHZt.js → manager-BVHfEFaI.js} +15 -15
  117. package/dist/{manager-BfbQb9qM.js → manager-CkrYAqnq.js} +1 -1
  118. package/dist/{manager-Bryhc0Ip.js → manager-D8CA0MvH.js} +1 -1
  119. package/dist/{manager-C5FGNRjL.js → manager-DC3OSZcb.js} +1 -1
  120. package/dist/{memory-DgDnTEcB.js → memory-BAhmymrP.js} +5 -5
  121. package/dist/{memory-Cypj1lBQ.js → memory-J23whuaE.js} +3 -3
  122. package/dist/{memory-cli-DB7UIev4.js → memory-cli-CC2-qDiT.js} +6 -6
  123. package/dist/{memory-cli-CfJkD7mO.js → memory-cli-D4w22HxZ.js} +16 -16
  124. package/dist/{model-DbILYCfo.js → model-D50Lt_sm.js} +1 -1
  125. package/dist/{model-auth-_C07_3Yr.js → model-auth-1EAQvYRv.js} +2 -2
  126. package/dist/{model-catalog-CeqDEWGz.js → model-catalog-DQTmHZK7.js} +3 -3
  127. package/dist/{model-picker-BAKALONd.js → model-picker-BVNI6Imm.js} +1 -1
  128. package/dist/{model-picker-C_f6MALt.js → model-picker-DHLA0BEe.js} +5 -5
  129. package/dist/{model-selection-CCTzD29o.js → model-selection-7wdmO-Iw.js} +1 -1
  130. package/dist/{models-Bpqeds64.js → models-DKFO8lzG.js} +12 -12
  131. package/dist/{models-cli-BUWfj5iJ.js → models-cli-D1ZvipJ8.js} +67 -67
  132. package/dist/{models-cli-Bc47WFhD.js → models-cli-DAdL1XB_.js} +29 -29
  133. package/dist/{models-config-Dp5-tBqs.js → models-config-CRnTzdFs.js} +8 -8
  134. package/dist/{node-cli-W9CY_8dK.js → node-cli-DnwByBU2.js} +18 -18
  135. package/dist/{node-cli-BdjmGI32.js → node-cli-Yqf38Nio.js} +34 -34
  136. package/dist/{node-service-DphkTjBV.js → node-service-CRSkbk2b.js} +1 -1
  137. package/dist/{node-service-t7V5EmEq.js → node-service-E8k7BOQV.js} +1 -1
  138. package/dist/{nodes-cli-BChJzcKY.js → nodes-cli-BY6HrZlh.js} +15 -15
  139. package/dist/{nodes-cli-DU7g9x5A.js → nodes-cli-OTk4gEj-.js} +8 -8
  140. package/dist/{nodes-screen-Cp5QP3ET.js → nodes-screen-De9ma6e1.js} +4 -4
  141. package/dist/{note--x67NNhv.js → note-Bn5K9itM.js} +1 -1
  142. package/dist/{note-DlaPViz1.js → note-DtkOgLxt.js} +1 -1
  143. package/dist/{npm-registry-spec-B5KYXHyZ.js → npm-registry-spec-CZCkONwR.js} +1 -1
  144. package/dist/{npm-registry-spec-CqVgiBCf.js → npm-registry-spec-L8BUQ0nu.js} +9 -9
  145. package/dist/{onboard-BbfERyKU.js → onboard-BUXhXTvo.js} +17 -17
  146. package/dist/{onboard-C0nMMiiS.js → onboard-D6gii9NE.js} +21 -21
  147. package/dist/{onboard-channels-CmsfVut5.js → onboard-channels-CPEw_fGa.js} +8 -8
  148. package/dist/{onboard-channels-CMp9YXHC.js → onboard-channels-X_6Mru0N.js} +7 -7
  149. package/dist/{onboard-custom-BcR121kZ.js → onboard-custom-TvRg0dYq.js} +2 -2
  150. package/dist/{onboard-custom-BfHczxx0.js → onboard-custom-y7PsUrmE.js} +3 -3
  151. package/dist/{onboard-helpers-OB_xKQze.js → onboard-helpers-CtpOchu0.js} +9 -9
  152. package/dist/{onboard-helpers-Cut7JJgz.js → onboard-helpers-HjgAKoSl.js} +3 -3
  153. package/dist/{onboard-hooks-BQZHzOjV.js → onboard-hooks-BU0EsBMH.js} +2 -2
  154. package/dist/{onboard-hooks-BA22KYCG.js → onboard-hooks-Cmy0Qz0F.js} +3 -3
  155. package/dist/{onboard-remote-Dv2Uz8Ru.js → onboard-remote-B5kHPh_e.js} +3 -3
  156. package/dist/{onboard-remote-DkBefpqh.js → onboard-remote-B7bM-1-l.js} +3 -3
  157. package/dist/{onboard-skills-C3PlCA9W.js → onboard-skills-BsPcuuer.js} +2 -2
  158. package/dist/{onboard-skills-BzxofI4T.js → onboard-skills-V7pX2pkl.js} +3 -3
  159. package/dist/{onboarding-DoYMfCjS.js → onboarding-BRGBmixw.js} +15 -15
  160. package/dist/{onboarding-vgZFhH5N.js → onboarding-CLd3IKVw.js} +17 -17
  161. package/dist/{onboarding.finalize-Dj0xG8pk.js → onboarding.finalize-DMbn9D6-.js} +24 -24
  162. package/dist/{onboarding.finalize-BYHDzz2i.js → onboarding.finalize-SWmODPKQ.js} +36 -36
  163. package/dist/{onboarding.gateway-config-DxaAacmJ.js → onboarding.gateway-config-9dgVRLeb.js} +5 -5
  164. package/dist/{onboarding.gateway-config-CDRLfIZM.js → onboarding.gateway-config-DXQhxsQS.js} +10 -10
  165. package/dist/{openai-model-default-CROL7CWb.js → openai-model-default-BkGyzajy.js} +1 -1
  166. package/dist/{openai-model-default-Dl21Ivjc.js → openai-model-default-D_rz8Pew.js} +2 -2
  167. package/dist/{pairing-cli-C2_Zobhz.js → pairing-cli-D2zvrKTM.js} +7 -7
  168. package/dist/{pairing-cli-AsreSKeE.js → pairing-cli-WQ1MKO2B.js} +2 -2
  169. package/dist/{pairing-store-Be-ZQK87.js → pairing-store-BNhJOnWn.js} +1 -1
  170. package/dist/{pairing-token-B703A1U3.js → pairing-token-Dcy37-4s.js} +7 -7
  171. package/dist/{path-env-DV7jtyFi.js → path-env-BHRjFlqO.js} +1 -1
  172. package/dist/{path-env-BbA98xsH.js → path-env-i-ZjtVbs.js} +1 -1
  173. package/dist/{paths-BWqg8NZT.js → paths-DObzwe08.js} +1 -1
  174. package/dist/{pi-auth-json-D-vdh-nY.js → pi-auth-json-Db8XJVGL.js} +6 -6
  175. package/dist/{pi-embedded-C7mJzGIf.js → pi-embedded-V_-m7KaX.js} +6 -3
  176. package/dist/{pi-embedded-helpers-y3vJmW6T.js → pi-embedded-helpers-DVolpQ34.js} +6 -6
  177. package/dist/{pi-embedded-helpers-j8QCV6pY.js → pi-embedded-helpers-nFK_hP2q.js} +1 -1
  178. package/dist/{pi-tools.policy-ji-L-Mpv.js → pi-tools.policy-CTzYYKRt.js} +3 -3
  179. package/dist/{pi-tools.policy-4gtz_Ipq.js → pi-tools.policy-uHgu_nx0.js} +1 -1
  180. package/dist/{plugin-auto-enable-C3-mgy6s.js → plugin-auto-enable-BkhVwtbW.js} +2 -2
  181. package/dist/{plugin-auto-enable-Ctbn2w4Q.js → plugin-auto-enable-C4b23B35.js} +3 -3
  182. package/dist/{plugin-registry-pKaJ4ltN.js → plugin-registry-4-CuULhH.js} +1 -1
  183. package/dist/{plugin-registry-D2ZbwBU_.js → plugin-registry-DXV9NsTS.js} +3 -3
  184. package/dist/plugin-sdk/gateway/protocol/index.d.ts +5 -2
  185. package/dist/plugin-sdk/gateway/protocol/schema/logs-chat.d.ts +1 -0
  186. package/dist/{plugins-cli-CoHiV4BX.js → plugins-cli-BYS6o66e.js} +60 -60
  187. package/dist/{plugins-cli-uo8lcB7v.js → plugins-cli-DNRfyaba.js} +26 -26
  188. package/dist/{ports-ukrEAkOP.js → ports-CqKpyZSl.js} +1 -1
  189. package/dist/{ports-CB_Iu83U.js → ports-gxLM5ahL.js} +2 -2
  190. package/dist/{program-rzYjZKRz.js → program-S5VHoZek.js} +29 -29
  191. package/dist/{program-context-B1ZbQmLL.js → program-context-DcVaa1lI.js} +40 -40
  192. package/dist/{prompt-select-styled-F6P-rvFI.js → prompt-select-styled-BXz6ofdT.js} +27 -27
  193. package/dist/{prompt-select-styled-CX0v66wx.js → prompt-select-styled-_iQ3XIKF.js} +44 -44
  194. package/dist/{provider-auth-helpers-_jn9PngO.js → provider-auth-helpers-DUimFIMQ.js} +8 -8
  195. package/dist/{provider-auth-helpers-Ck98bkHV.js → provider-auth-helpers-DxzoMuRt.js} +6 -6
  196. package/dist/{push-apns-BtMtpzEm.js → push-apns-B0rCgozR.js} +1 -1
  197. package/dist/{push-apns-CmeoBcIQ.js → push-apns-rB2dtkMY.js} +4 -4
  198. package/dist/{pw-ai-CQJsGI1b.js → pw-ai-_prsAw5O.js} +7 -7
  199. package/dist/{qmd-manager-DawTY2mB.js → qmd-manager-BbWeOOTD.js} +19 -19
  200. package/dist/{qr-cli-DKowtQcM.js → qr-cli-KmGkQDBF.js} +3 -3
  201. package/dist/{register.agent-0hWBZXD7.js → register.agent-DA2XHVBw.js} +82 -82
  202. package/dist/{register.agent-_UqSBmt5.js → register.agent-Dpw6yuGS.js} +44 -44
  203. package/dist/register.configure-DmOI2ccM.js +134 -0
  204. package/dist/{register.configure-KrTtvKSp.js → register.configure-h8flfdgW.js} +52 -52
  205. package/dist/{register.maintenance-DjZeknO6.js → register.maintenance-CKfn4GzH.js} +80 -80
  206. package/dist/{register.maintenance-DDSfzFoo.js → register.maintenance-D99Kay4u.js} +47 -47
  207. package/dist/{register.message-DSwwDcGi.js → register.message-CHIX979C.js} +23 -23
  208. package/dist/{register.message-DTZJ5OiL.js → register.message-DXq0F9ry.js} +55 -55
  209. package/dist/{register.onboard-BToIZTIS.js → register.onboard-B6BM2IRA.js} +24 -24
  210. package/dist/{register.onboard-B8k5phG7.js → register.onboard-DTsZZvLQ.js} +34 -34
  211. package/dist/{register.setup-BdUewOo1.js → register.setup-CfX9Touh.js} +24 -24
  212. package/dist/{register.setup-1fexz2oW.js → register.setup-DrjcrBpl.js} +37 -37
  213. package/dist/{register.status-health-sessions-0RyA2cXf.js → register.status-health-sessions-BdTot-iF.js} +50 -50
  214. package/dist/{register.status-health-sessions-eBaeXIvo.js → register.status-health-sessions-FQdDNcRl.js} +30 -30
  215. package/dist/{register.subclis-tX3BslaT.js → register.subclis-BWgJlszt.js} +28 -28
  216. package/dist/{replies-D3cffD5N.js → replies-B91-OngF.js} +1 -1
  217. package/dist/{reply-prefix-CtZtkTJK.js → reply-prefix-BFNeXT65.js} +1 -1
  218. package/dist/{resolve-route-B0i_o4Fo.js → resolve-route-Zww0Y-HJ.js} +1 -1
  219. package/dist/{routes-5AKY1jFp.js → routes-BfeVDhod.js} +1 -1
  220. package/dist/{routes-zpAUwtCG.js → routes-y2Ww0pum.js} +10 -10
  221. package/dist/{rpc-CPy6Ks0K.js → rpc-DZCrGGH5.js} +2 -2
  222. package/dist/{rpc-DhsDKVo-.js → rpc-RIkh5F9v.js} +2 -2
  223. package/dist/{run-main-DIl_Kl0B.js → run-main-CbC-EYND.js} +43 -43
  224. package/dist/{sandbox-DBY8ri7U.js → sandbox-BjQ6n3zl.js} +2 -2
  225. package/dist/{sandbox-DQCaejcD.js → sandbox-DQdjlC-w.js} +18 -18
  226. package/dist/{sandbox-cli-Bi4IABaL.js → sandbox-cli-C0IVf8AS.js} +5 -5
  227. package/dist/{sandbox-cli-CbvyZs1z.js → sandbox-cli-CTYAHFyM.js} +15 -15
  228. package/dist/{security-cli-CbJxNYZx.js → security-cli-B8VyQJcl.js} +31 -31
  229. package/dist/{security-cli-BTytANc3.js → security-cli-D0oErb9f.js} +11 -11
  230. package/dist/{send-QscYkkNh.js → send-Cxu1tl56.js} +7 -7
  231. package/dist/{server-context-CHqhgQgU.js → server-context-BFCh7pUb.js} +3 -3
  232. package/dist/{server-context-CXVq7gZ7.js → server-context-YlgRz1wC.js} +5 -5
  233. package/dist/{server-methods-CpFBGxWI.js → server-methods-CMexFbR1.js} +51 -22
  234. package/dist/{server-methods-DPxjPGr0.js → server-methods-Dp6Bzi3H.js} +92 -63
  235. package/dist/{server-node-events-B_BPbi7z.js → server-node-events-C3br52Ev.js} +54 -54
  236. package/dist/{server-node-events-2SUW10k3.js → server-node-events-Ct-qT_KH.js} +22 -22
  237. package/dist/{service-Bhr6wh5u.js → service-BBw78ATM.js} +1 -1
  238. package/dist/{service-Cm4-5AH9.js → service-vsb7_8MA.js} +15 -15
  239. package/dist/{session-dirs-BypCYFN3.js → session-dirs-DJ4qiP3r.js} +2 -2
  240. package/dist/{session-utils-lXjJoBxe.js → session-utils-BZnPW904.js} +14 -14
  241. package/dist/{sessions-aSo5jsmg.js → sessions-optZRB57.js} +10 -10
  242. package/dist/{shared-BI-gOZsD.js → shared-BucaCyaw.js} +3 -3
  243. package/dist/{shared-DDX_4ypC.js → shared-CVXZtpIq.js} +1 -1
  244. package/dist/{shared-CpsMsILL.js → shared-CfBMF1VB.js} +1 -1
  245. package/dist/{skill-commands-C9WuAfb2.js → skill-commands-yPirQFOb.js} +4 -4
  246. package/dist/{skill-scanner-CFqMkfZW.js → skill-scanner-zh2dJM3x.js} +5 -5
  247. package/dist/{skills-CYcBtLGH.js → skills-BwDmcZdt.js} +4 -4
  248. package/dist/{skills-cli-BgyaAQoj.js → skills-cli-CcWFIcOR.js} +9 -9
  249. package/dist/{skills-cli-DYXzd3nX.js → skills-cli-DcJBgk5R.js} +2 -2
  250. package/dist/{skills-install-MGsx6q5Z.js → skills-install-CbRsCzAG.js} +5 -5
  251. package/dist/{skills-install-BmZ-1p6t.js → skills-install-CcW780Kq.js} +4 -4
  252. package/dist/{skills-remote-BcRQTDsZ.js → skills-remote-bz71Bstn.js} +3 -3
  253. package/dist/{skills-status-CbSdFlvm.js → skills-status-CLzaY4r2.js} +2 -2
  254. package/dist/{sqlite-BpogPlQW.js → sqlite-Cod7C5ba.js} +5 -5
  255. package/dist/{status-C-r9JpJf.js → status-Bs0FcIH9.js} +29 -29
  256. package/dist/{status-BVYDUlnp.js → status-CeI4Ju5u.js} +16 -16
  257. package/dist/{status-DbNNmkNB.js → status-DWKk0B2Z.js} +1 -1
  258. package/dist/{status-DIJvpgEm.js → status-xoNRQH61.js} +3 -3
  259. package/dist/{status.update-EyslEZkn.js → status.update-B52bM2Tg.js} +3 -3
  260. package/dist/{status.update-DZ45tdyq.js → status.update-Bl_ewksT.js} +1 -1
  261. package/dist/{subagent-registry-DWemyjbN.js → subagent-registry-li_hXXbq.js} +18 -17
  262. package/dist/{symi-root-DeCVdZB4.js → symi-root-BQ0IpoW2.js} +2 -2
  263. package/dist/{synthesis-BxYzOZUA.js → synthesis-CgMiTo14.js} +19 -19
  264. package/dist/{synthesis-BdTiornP.js → synthesis-Cp6okb8G.js} +2 -2
  265. package/dist/{synthesis-C7RlvHEs.js → synthesis-DGwxPIQU.js} +50 -50
  266. package/dist/{synthesis-DQ7Y6OE0.js → synthesis-mBz9x2Gz.js} +2 -2
  267. package/dist/{system-cli-DgOvK_kU.js → system-cli-BAn07VkE.js} +9 -9
  268. package/dist/{system-cli-D7jMpaOw.js → system-cli-BTZ8T0-Z.js} +5 -5
  269. package/dist/{systemd-B2nTr3Y2.js → systemd-DCzA-V_E.js} +5 -5
  270. package/dist/{systemd-hints-DtOWJT_2.js → systemd-hints-BlGehfA3.js} +7 -7
  271. package/dist/{systemd-hints-CfjRhSCF.js → systemd-hints-CvIqgg9d.js} +4 -4
  272. package/dist/{systemd-linger-C6G2nDWK.js → systemd-linger-BUWYteOW.js} +2 -2
  273. package/dist/{systemd-linger-CWi5l8Nt.js → systemd-linger-Bj4nK9ZB.js} +2 -2
  274. package/dist/{tui-KP3CPTV4.js → tui-B6mIUNPO.js} +3 -3
  275. package/dist/{tui-D7ms_iQ4.js → tui-XLWiN8Hm.js} +7 -7
  276. package/dist/{tui-cli-DNvAqIYN.js → tui-cli-CTK5_3rU.js} +20 -20
  277. package/dist/{tui-cli-BG3OTBNU.js → tui-cli-byFYgg3c.js} +8 -8
  278. package/dist/{unified-runner-BIUJm_Iv.js → unified-runner-BXHNiofY.js} +105 -104
  279. package/dist/{unified-runner-DPWNhQQA.js → unified-runner-BknJsCw0.js} +6 -3
  280. package/dist/{update-BhFBDs4W.js → update-DxY1UB0k.js} +1 -1
  281. package/dist/{update-pddgyV7i.js → update-EhDcBqN1.js} +3 -3
  282. package/dist/{update-check-CduiCxPo.js → update-check-H0DwvuqN.js} +6 -6
  283. package/dist/{update-check-BVu0zSCT.js → update-check-pFwV6W-z.js} +1 -1
  284. package/dist/{update-cli-GKXF83cS.js → update-cli-CV3u08i6.js} +91 -91
  285. package/dist/{update-cli-BM-A3cIZ.js → update-cli-CxydnTxB.js} +56 -56
  286. package/dist/{update-runner-BMYqz1dl.js → update-runner-7oHPAIND.js} +15 -15
  287. package/dist/{update-runner-C5g0azyg.js → update-runner-CERd2XdT.js} +2 -2
  288. package/dist/{webhooks-cli-BPPmnDCj.js → webhooks-cli-3UJupWMP.js} +6 -6
  289. package/dist/{webhooks-cli-gY4ZCBXI.js → webhooks-cli-BFpGMNrf.js} +2 -2
  290. package/dist/{with-timeout-CaEWDssR.js → with-timeout-Bn-ltLg1.js} +1 -1
  291. package/dist/{with-timeout-D1qzvPE0.js → with-timeout-EXM-FP4_.js} +1 -1
  292. package/dist/{workspace-dirs-DCICLTHx.js → workspace-dirs-jKFQf7of.js} +1 -1
  293. package/dist/{wsl-Sed675xh.js → wsl-hSA0zCrh.js} +2 -2
  294. package/package.json +1 -1
  295. package/dist/register.configure-CgQ6sqtQ.js +0 -134
  296. /package/dist/{agents.config-DJ6HOh-6.js → agents.config-BG9fpad0.js} +0 -0
  297. /package/dist/{argv-BH07Qj4L.js → argv-oa_KBmv1.js} +0 -0
  298. /package/dist/{auth-choice-legacy-Ay7AiVPU.js → auth-choice-legacy-DwMt7oDR.js} +0 -0
  299. /package/dist/{auth-choice-legacy-GGnDhlyD.js → auth-choice-legacy-ZsU_kwPI.js} +0 -0
  300. /package/dist/{auth-token-DUIqGPhx.js → auth-token-t_CY5BPB.js} +0 -0
  301. /package/dist/{brew-7GLuXTcQ.js → brew-B3VMQVQk.js} +0 -0
  302. /package/dist/{brew-CHxBxbYV.js → brew-BsE_w2tW.js} +0 -0
  303. /package/dist/{catalog-DsC3JTw1.js → catalog-BXxi5-YC.js} +0 -0
  304. /package/dist/{catalog-CPv67Mhc.js → catalog-CriSxQMH.js} +0 -0
  305. /package/dist/{channels-status-issues-mROqdfm_.js → channels-status-issues-C2AVfv0-.js} +0 -0
  306. /package/dist/{channels-status-issues-DGneT0fj.js → channels-status-issues-DuRF3XF3.js} +0 -0
  307. /package/dist/{cli-utils-BhfE5XS2.js → cli-utils-Ca0KE-dW.js} +0 -0
  308. /package/dist/{clipboard-zhZhAHCD.js → clipboard-B1jgJ11s.js} +0 -0
  309. /package/dist/{clipboard-DCY3rzzp.js → clipboard-Sks8Qw-6.js} +0 -0
  310. /package/dist/{command-options-D2nN4AXX.js → command-options-C2yg82U0.js} +0 -0
  311. /package/dist/{command-options-nJfiotBs.js → command-options-D_KEIae-.js} +0 -0
  312. /package/dist/{config-validation-HXl5srHm.js → config-validation-DGWvkKov.js} +0 -0
  313. /package/dist/{consolidate-ONc01jKh.js → consolidate-DPAffHCg.js} +0 -0
  314. /package/dist/{control-ui-assets-C_5Ba0OA.js → control-ui-assets-BVCcPRi3.js} +0 -0
  315. /package/dist/{dm-policy-shared-CES9K2AU.js → dm-policy-shared-ZfPtrTeh.js} +0 -0
  316. /package/dist/{entry-status-B63VEeeK.js → entry-status-BqhxPFzK.js} +0 -0
  317. /package/dist/{format-Bxjkt5ce.js → format-BFJAwjeA.js} +0 -0
  318. /package/dist/{format-DL779yrP.js → format-BskCnX0I.js} +0 -0
  319. /package/dist/{gmail-setup-utils-D91ZFrEZ.js → gmail-setup-utils-BlGvgPlF.js} +0 -0
  320. /package/dist/{gmail-setup-utils-B7WinJkq.js → gmail-setup-utils-DsRU2ywQ.js} +0 -0
  321. /package/dist/{health-format-y74JTiFu.js → health-format-C0DWlpEn.js} +0 -0
  322. /package/dist/{health-format-CUEM0lJl.js → health-format-CzrMGubG.js} +0 -0
  323. /package/dist/{help-format-CbgFRc-H.js → help-format-BjEVi4c_.js} +0 -0
  324. /package/dist/{help-format-CPT6NY3h.js → help-format-DhRyo3Pj.js} +0 -0
  325. /package/dist/{helpers-DgsKk072.js → helpers-CcArejFh.js} +0 -0
  326. /package/dist/{helpers-B0WawhZc.js → helpers-DJRLZbrj.js} +0 -0
  327. /package/dist/{helpers-B454yiz9.js → helpers-DUclfUl-.js} +0 -0
  328. /package/dist/{helpers-Cv2yCxAb.js → helpers-Dm_utoC3.js} +0 -0
  329. /package/dist/{ipv4-Coaw2jro.js → ipv4--8f4a_51.js} +0 -0
  330. /package/dist/{ipv4-DT0eS3F4.js → ipv4-Cy7l-phR.js} +0 -0
  331. /package/dist/{links-TQwptN6q.js → links-BkFDs4sT.js} +0 -0
  332. /package/dist/{links-BDe4dm1J.js → links-D6ASL_as.js} +0 -0
  333. /package/dist/{logging-BqCc-3Ld.js → logging-4WqMHwAZ.js} +0 -0
  334. /package/dist/{logging-CoYSc9bY.js → logging-iIX8duxv.js} +0 -0
  335. /package/dist/{logging-BeW3kpQA.js → logging-uD67RPtO.js} +0 -0
  336. /package/dist/{model-param-b-7eOskmw9.js → model-param-b-CfiuLqZG.js} +0 -0
  337. /package/dist/{model-param-b-BXLeXwsL.js → model-param-b-DieX_ZxM.js} +0 -0
  338. /package/dist/{onboard-config-Bi_rwJxu.js → onboard-config-BKb2QQqE.js} +0 -0
  339. /package/dist/{onboard-config-DtYWshyH.js → onboard-config-DZIbmz6s.js} +0 -0
  340. /package/dist/{outbound-send-deps-CocVWWDn.js → outbound-send-deps-BR6jeE9h.js} +0 -0
  341. /package/dist/{outbound-send-deps-Bms6Lw6N.js → outbound-send-deps-PNzbuoSX.js} +0 -0
  342. /package/dist/{parse-log-line-BX_3CQNJ.js → parse-log-line-CeJ1RDHv.js} +0 -0
  343. /package/dist/{parse-log-line-kWIsKiHh.js → parse-log-line-DxFrnzNo.js} +0 -0
  344. /package/dist/{parse-port-BCZfNBii.js → parse-port-DdAxyRwV.js} +0 -0
  345. /package/dist/{parse-port-Bi7Gqqv0.js → parse-port-W56FnCN_.js} +0 -0
  346. /package/dist/{path-safety-C0C4YlKw.js → path-safety-LPRW6mO-.js} +0 -0
  347. /package/dist/{path-safety-D7wDjTGr.js → path-safety-grmMl9nR.js} +0 -0
  348. /package/dist/{plugins-allowlist-C20oaESO.js → plugins-allowlist-BuJjTWyS.js} +0 -0
  349. /package/dist/{plugins-allowlist-CWCQC08H.js → plugins-allowlist-BvQZxkGy.js} +0 -0
  350. /package/dist/{ports-m6zWAy9E.js → ports-BDzMH5Eu.js} +0 -0
  351. /package/dist/{program-context-4vIUuzQk.js → program-context-C5Y6Svzj.js} +0 -0
  352. /package/dist/{progress-HNhsbm0E.js → progress-B3K1UFtC.js} +0 -0
  353. /package/dist/{progress-CqV5lJkt.js → progress-deSwGz9x.js} +0 -0
  354. /package/dist/{prompt-style-BEDZROvQ.js → prompt-style-DS51QPPi.js} +0 -0
  355. /package/dist/{prompt-style-BIa9VCNS.js → prompt-style-DeaIm7_1.js} +0 -0
  356. /package/dist/{prompts-C1Vmrk7-.js → prompts-LvxbwPs6.js} +0 -0
  357. /package/dist/{prompts-GoDC3iAV.js → prompts-l_pUOv42.js} +0 -0
  358. /package/dist/{pw-ai-J9lss2w3.js → pw-ai-kkF0QaDF.js} +0 -0
  359. /package/dist/{qmd-manager-sDAxAbyX.js → qmd-manager-CYKlEJ2U.js} +0 -0
  360. /package/dist/{qr-cli-DZnZP79P.js → qr-cli-CcAzgz_N.js} +0 -0
  361. /package/dist/{replies-LM-arXEE.js → replies-UP2sglaR.js} +0 -0
  362. /package/dist/{runtime-guard-C8jl1lEu.js → runtime-guard-DWXoHW1Q.js} +0 -0
  363. /package/dist/{runtime-guard-DfRLODeV.js → runtime-guard-GWXNB3ke.js} +0 -0
  364. /package/dist/{runtime-status-B5agj-Qk.js → runtime-status-BqrK6ivx.js} +0 -0
  365. /package/dist/{runtime-status-BgZqic8M.js → runtime-status-D4pjzLyv.js} +0 -0
  366. /package/dist/{session-dirs-Buy7H26D.js → session-dirs-CXErIzZq.js} +0 -0
  367. /package/dist/{sessions-BceutrR2.js → sessions-uS7rV-lI.js} +0 -0
  368. /package/dist/{shared-DJ_GXCp1.js → shared-k1QjV3ys.js} +0 -0
  369. /package/dist/{skill-scanner-CH9qofCG.js → skill-scanner-Ur9nMoo4.js} +0 -0
  370. /package/dist/{status-BvbsaoNZ.js → status-Bz_-dDs6.js} +0 -0
  371. /package/dist/{status-QSx6bfFf.js → status-CExNNC5N.js} +0 -0
  372. /package/dist/{system-run-command-fjiicRnc.js → system-run-command-CeR1OLFk.js} +0 -0
  373. /package/dist/{systemd-krdArbOb.js → systemd-Cmn7zMqD.js} +0 -0
  374. /package/dist/{table-D902H0x3.js → table-jBELNhV1.js} +0 -0
  375. /package/dist/{table-DTXkjZUY.js → table-xKEHbVsK.js} +0 -0
  376. /package/dist/{tool-loop-detection-DfBe53Zo.js → tool-loop-detection-D3y39HsT.js} +0 -0
  377. /package/dist/{tool-loop-detection-DGW6psAc.js → tool-loop-detection-DljhV89j.js} +0 -0
  378. /package/dist/{widearea-dns-CK7KqIOE.js → widearea-dns-BSrnDwJD.js} +0 -0
  379. /package/dist/{widearea-dns-BtlROnju.js → widearea-dns-C8Rsixsi.js} +0 -0
  380. /package/dist/{workspace-YJl3L-5e.js → workspace-BkWAKK8O.js} +0 -0
  381. /package/dist/{workspace-ZEf44zTR.js → workspace-DKEYzTNc.js} +0 -0
  382. /package/dist/{wsl-CAxwzmL8.js → wsl-cy5jpbkx.js} +0 -0
@@ -3,91 +3,91 @@ import { D as shouldLogVerbose, H as createInternalHookEvent, M as getChildLogge
3
3
  import { _ as resolveStateDir, u as resolveGatewayPort } from "./paths-By0XjHBk.js";
4
4
  import { S as isPlainObject, _ as shortenHomeInString, b as sliceUtf16Safe, c as escapeRegExp, h as resolveUserPath, r as clampInt, t as CONFIG_DIR, u as isRecord, v as shortenHomePath, x as truncateUtf16Safe, y as sleep } from "./utils-CTPsqyE_.js";
5
5
  import { d as createNonExitingRuntime, f as defaultRuntime, t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
6
- import { T as resolveAuthProfileDisplayLabel, a as markAuthProfileFailure, b as ensureAuthProfileStore, g as markAuthProfileGood, h as listProfilesForProvider, i as isProfileInCooldown, n as resolveAuthProfileOrder, o as markAuthProfileUsed, r as getSoonestCooldownExpiry, w as resolveAuthStorePathForDisplay } from "./auth-profiles-D5nYBj_Z.js";
6
+ import { T as resolveAuthProfileDisplayLabel, a as markAuthProfileFailure, b as ensureAuthProfileStore, g as markAuthProfileGood, h as listProfilesForProvider, i as isProfileInCooldown, n as resolveAuthProfileOrder, o as markAuthProfileUsed, r as getSoonestCooldownExpiry, w as resolveAuthStorePathForDisplay } from "./auth-profiles-Ce7R_25e.js";
7
7
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
8
8
  import { S as resolveThreadParentSessionKey, _ as isAcpSessionKey, a as classifySessionKeyShape, b as isSubagentSessionKey, c as resolveAgentIdFromSessionKey, g as getSubagentDepth, l as resolveThreadSessionKeys, m as normalizeAccountId, o as normalizeAgentId, p as DEFAULT_ACCOUNT_ID, r as buildAgentMainSessionKey, s as normalizeMainKey, t as DEFAULT_AGENT_ID, u as sanitizeAgentId, x as parseAgentSessionKey, y as isCronSessionKey } from "./session-key-DUSb7CCb.js";
9
- import { n as resolveSymiPackageRootSync, t as resolveSymiPackageRoot } from "./symi-root-DeCVdZB4.js";
9
+ import { n as resolveSymiPackageRootSync, t as resolveSymiPackageRoot } from "./symi-root-BQ0IpoW2.js";
10
10
  import { a as logError, i as logDebug, n as runExec, o as logInfo, r as spawnWithFallback, s as logWarn, t as runCommandWithTimeout } from "./exec-DuYbft0z.js";
11
- import { C as ensureAgentWorkspace, E as loadWorkspaceBootstrapFiles, c as resolveAgentWorkspaceDir, d as resolveSessionAgentId, f as resolveSessionAgentIds, h as DEFAULT_BOOTSTRAP_FILENAME, i as resolveAgentDir, l as resolveDefaultAgentId, m as DEFAULT_AGENT_WORKSPACE_DIR, r as resolveAgentConfig, s as resolveAgentSkillsFilter, w as filterBootstrapFilesForSession } from "./agent-scope-Bnsyyeci.js";
12
- import { C as DEFAULT_MODEL, S as DEFAULT_CONTEXT_TOKENS, _ as resolveModelRefFromString, a as findNormalizedProviderValue, b as resolveThinkingDefault, c as modelKey, h as resolveDefaultModelForAgent, l as normalizeModelRef$1, m as resolveConfiguredModelRef, n as buildConfiguredAllowlistKeys, r as buildModelAliasIndex, t as buildAllowedModelSet, u as normalizeProviderId, w as DEFAULT_PROVIDER, x as getProviderAdapter, y as resolveSubagentSpawnModelSelection } from "./model-selection-CCTzD29o.js";
11
+ import { C as ensureAgentWorkspace, E as loadWorkspaceBootstrapFiles, c as resolveAgentWorkspaceDir, d as resolveSessionAgentId, f as resolveSessionAgentIds, h as DEFAULT_BOOTSTRAP_FILENAME, i as resolveAgentDir, l as resolveDefaultAgentId, m as DEFAULT_AGENT_WORKSPACE_DIR, r as resolveAgentConfig, s as resolveAgentSkillsFilter, w as filterBootstrapFilesForSession } from "./agent-scope-DOrZjOnW.js";
12
+ import { C as DEFAULT_MODEL, S as DEFAULT_CONTEXT_TOKENS, _ as resolveModelRefFromString, a as findNormalizedProviderValue, b as resolveThinkingDefault, c as modelKey, h as resolveDefaultModelForAgent, l as normalizeModelRef$1, m as resolveConfiguredModelRef, n as buildConfiguredAllowlistKeys, r as buildModelAliasIndex, t as buildAllowedModelSet, u as normalizeProviderId, w as DEFAULT_PROVIDER, x as getProviderAdapter, y as resolveSubagentSpawnModelSelection } from "./model-selection-7wdmO-Iw.js";
13
13
  import { n as normalizeSecretInput } from "./normalize-secret-input-DjGU5EXe.js";
14
14
  import { n as saveJsonFile, t as loadJsonFile } from "./json-file-CNp4GTiH.js";
15
15
  import { t as resolveSymiAgentDir } from "./agent-paths-BbZSGrUA.js";
16
- import { A as isRawApiErrorPayload, B as sanitizeGoogleTurnOrdering, C as isCloudCodeAssistFormatError, D as isFailoverErrorMessage, E as isFailoverAssistantError, F as sanitizeUserFacingText, I as buildBootstrapContextFiles, L as ensureSessionHeader, M as isTransientHttpError, N as parseImageDimensionError, O as isLikelyContextOverflowError, P as parseImageSizeError, R as resolveBootstrapMaxChars, S as isBillingAssistantError, T as isContextOverflowError, _ as formatAssistantErrorText, a as normalizeTextForComparison, b as getApiErrorPayloadFingerprint, c as sanitizeToolResultImages, d as extractToolResultId, f as downgradeOpenAIReasoningBlocks, g as classifyFailoverReason, h as BILLING_ERROR_USER_MESSAGE, i as isMessagingToolDuplicateNormalized, j as isTimeoutErrorMessage, k as isRateLimitAssistantError, l as resolveImageSanitizationLimits, m as isGoogleModelApi, n as validateGeminiTurns, o as sanitizeSessionMessagesImages, p as isAntigravityClaude, r as pickFallbackThinkingLevel, s as sanitizeImageBlocks, t as validateAnthropicTurns, u as extractToolCallsFromAssistant, v as formatBillingErrorMessage, w as isCompactionFailureError, x as isAuthAssistantError, y as formatRawAssistantErrorForUi, z as resolveBootstrapTotalMaxChars } from "./pi-embedded-helpers-y3vJmW6T.js";
17
- import { A as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, C as unsetConfigValueAtPath, N as VERSION, S as setConfigValueAtPath, _ as resetConfigOverrides, b as getConfigValueAtPath, c as resolveConfigSnapshotHash, f as parseDurationMs, g as getConfigOverrides, h as validateJsonSchemaValue, i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot, u as validateConfigObjectWithPlugins, v as setConfigOverride, x as parseConfigPath, y as unsetConfigOverride } from "./config-D-PYSlE8.js";
16
+ import { A as isRawApiErrorPayload, B as sanitizeGoogleTurnOrdering, C as isCloudCodeAssistFormatError, D as isFailoverErrorMessage, E as isFailoverAssistantError, F as sanitizeUserFacingText, I as buildBootstrapContextFiles, L as ensureSessionHeader, M as isTransientHttpError, N as parseImageDimensionError, O as isLikelyContextOverflowError, P as parseImageSizeError, R as resolveBootstrapMaxChars, S as isBillingAssistantError, T as isContextOverflowError, _ as formatAssistantErrorText, a as normalizeTextForComparison, b as getApiErrorPayloadFingerprint, c as sanitizeToolResultImages, d as extractToolResultId, f as downgradeOpenAIReasoningBlocks, g as classifyFailoverReason, h as BILLING_ERROR_USER_MESSAGE, i as isMessagingToolDuplicateNormalized, j as isTimeoutErrorMessage, k as isRateLimitAssistantError, l as resolveImageSanitizationLimits, m as isGoogleModelApi, n as validateGeminiTurns, o as sanitizeSessionMessagesImages, p as isAntigravityClaude, r as pickFallbackThinkingLevel, s as sanitizeImageBlocks, t as validateAnthropicTurns, u as extractToolCallsFromAssistant, v as formatBillingErrorMessage, w as isCompactionFailureError, x as isAuthAssistantError, y as formatRawAssistantErrorForUi, z as resolveBootstrapTotalMaxChars } from "./pi-embedded-helpers-DVolpQ34.js";
17
+ import { A as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, C as unsetConfigValueAtPath, N as VERSION, S as setConfigValueAtPath, _ as resetConfigOverrides, b as getConfigValueAtPath, c as resolveConfigSnapshotHash, f as parseDurationMs, g as getConfigOverrides, h as validateJsonSchemaValue, i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot, u as validateConfigObjectWithPlugins, v as setConfigOverride, x as parseConfigPath, y as unsetConfigOverride } from "./config-D7SS4vdk.js";
18
18
  import { t as parseBooleanValue } from "./boolean-CbZoNRMn.js";
19
19
  import { t as isTruthyEnvValue } from "./env-BRnPI9sO.js";
20
20
  import { i as resolveShellEnvFallbackTimeoutMs, n as getShellPathFromLoginShell } from "./shell-env-Dc3iU7HK.js";
21
21
  import { a as safeStatSync, c as applyTestPluginDefaults, d as resolveEnableState, f as resolveMemorySlotDecision, h as isDangerousHostEnvVarName, i as isPathInside, n as loadPluginManifestRegistry, r as discoverSymiPlugins, u as normalizePluginsConfig } from "./manifest-registry-D1MLZEjS.js";
22
22
  import { a as isPathInsideWithRealpath } from "./legacy-names-BQ9vKISY.js";
23
- import { C as stripPluginOnlyAllowlist, S as resolveToolProfilePolicy, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as mergeAlsoAllowPolicy, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, x as normalizeToolName } from "./sandbox-DQCaejcD.js";
24
- import { T as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-pFBxO63W.js";
25
- import { i as resolveBrowserConfig, m as resolveBrowserControlAuth } from "./server-context-CXVq7gZ7.js";
23
+ import { C as stripPluginOnlyAllowlist, S as resolveToolProfilePolicy, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as mergeAlsoAllowPolicy, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, x as normalizeToolName } from "./sandbox-DQdjlC-w.js";
24
+ import { T as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-rzK8edU7.js";
25
+ import { i as resolveBrowserConfig, m as resolveBrowserControlAuth } from "./server-context-YlgRz1wC.js";
26
26
  import { l as parseFrontmatterBlock } from "./frontmatter-B_jqcova.js";
27
- import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-CYcBtLGH.js";
28
- import { n as getMediaDir, r as saveMediaBuffer } from "./routes-zpAUwtCG.js";
27
+ import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-BwDmcZdt.js";
28
+ import { n as getMediaDir, r as saveMediaBuffer } from "./routes-y2Ww0pum.js";
29
29
  import { n as formatErrorMessage, r as formatUncaughtError, t as extractErrorCode } from "./errors-bI7Tdx75.js";
30
- import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-BWqg8NZT.js";
30
+ import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-DObzwe08.js";
31
31
  import { i as isBlockedHostnameOrIp, o as normalizeHostname, t as SsrFBlockedError } from "./ssrf-DOZRI5XH.js";
32
- import { _ as mediaKindFromMime, c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, h as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as normalizeMimeType$1, p as kindFromMime, s as resizeToJpeg, u as getFileExtension } from "./image-ops-BzCBIakN.js";
33
- import { C as capArrayByJsonBytes, F as resolveSessionResetType, H as resolveMainSessionKey, I as resolveThreadFlag, J as acquireSessionWriteLock, L as DEFAULT_RESET_TRIGGERS, M as evaluateSessionFreshness, N as resolveChannelResetConfig, P as resolveSessionResetPolicy, R as resolveFreshSessionTotalTokens, S as archiveSessionTranscripts, W as deriveSessionMetaPatch, X as resolveSessionLockMaxHoldFromTimeout, _ as mergeDeliveryContext, a as resolveAndPersistSessionFile, c as recordSessionMetaFromInbound, d as updateSessionStore, f as updateSessionStoreEntry, g as deliveryContextKey, h as deliveryContextFromSession, j as resolveSessionKey, m as resolveCacheTtlMs$1, o as loadSessionStore, p as isCacheEnabled, q as resolveGroupSessionKey, r as appendAssistantMessageToSessionTranscript, s as readSessionUpdatedAt, t as extractDeliveryInfo, u as updateLastRoute, v as normalizeDeliveryContext, y as normalizeSessionDeliveryFields } from "./sessions-aSo5jsmg.js";
32
+ import { _ as mediaKindFromMime, c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, h as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as normalizeMimeType$1, p as kindFromMime, s as resizeToJpeg, u as getFileExtension } from "./image-ops-L70xVnpG.js";
33
+ import { C as capArrayByJsonBytes, F as resolveSessionResetType, H as resolveMainSessionKey, I as resolveThreadFlag, J as acquireSessionWriteLock, L as DEFAULT_RESET_TRIGGERS, M as evaluateSessionFreshness, N as resolveChannelResetConfig, P as resolveSessionResetPolicy, R as resolveFreshSessionTotalTokens, S as archiveSessionTranscripts, W as deriveSessionMetaPatch, X as resolveSessionLockMaxHoldFromTimeout, _ as mergeDeliveryContext, a as resolveAndPersistSessionFile, c as recordSessionMetaFromInbound, d as updateSessionStore, f as updateSessionStoreEntry, g as deliveryContextKey, h as deliveryContextFromSession, j as resolveSessionKey, m as resolveCacheTtlMs$1, o as loadSessionStore, p as isCacheEnabled, q as resolveGroupSessionKey, r as appendAssistantMessageToSessionTranscript, s as readSessionUpdatedAt, t as extractDeliveryInfo, u as updateLastRoute, v as normalizeDeliveryContext, y as normalizeSessionDeliveryFields } from "./sessions-optZRB57.js";
34
34
  import { c as normalizeStringEntries, i as resolveChannelGroupRequireMention, l as normalizeStringEntriesLower, n as listChannelDocks, o as normalizeAtHashSlug, r as resolveChannelGroupPolicy, s as normalizeHyphenSlug, t as getChannelDock } from "./dock-hF45sewN.js";
35
35
  import { a as isInternalMessageChannel, c as listDeliverableMessageChannels, h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as isMarkdownCapableMessageChannel, p as GATEWAY_CLIENT_IDS, t as INTERNAL_MESSAGE_CHANNEL, u as resolveGatewayMessageChannel } from "./message-channel-DgjXWzf-.js";
36
36
  import { t as normalizeChatType } from "./chat-type-CUJqUqwu.js";
37
37
  import { n as resolveConversationLabel } from "./conversation-label-CffvEjpp.js";
38
38
  import { a as resolveSlackAccount, c as resolveSlackBotToken, n as listChannelPlugins, r as normalizeChannelId$1, s as resolveSlackAppToken, t as getChannelPlugin } from "./plugins-CF5skkHh.js";
39
- import { _ as resolveSlackChannelId, a as markdownToIRWithMeta, c as MediaFetchError, d as createSlackWebClient, f as resolveSlackWebClientOptions, g as parseSlackTarget, h as buildSlackBlocksFallbackText, i as renderMarkdownWithMarkers, l as fetchRemoteMedia, m as validateSlackBlocksArray, o as getDefaultLocalRoots, p as parseSlackBlocksInput, s as loadWebMedia, t as sendMessageSlack, u as readResponseWithLimit } from "./send-QscYkkNh.js";
39
+ import { _ as resolveSlackChannelId, a as markdownToIRWithMeta, c as MediaFetchError, d as createSlackWebClient, f as resolveSlackWebClientOptions, g as parseSlackTarget, h as buildSlackBlocksFallbackText, i as renderMarkdownWithMarkers, l as fetchRemoteMedia, m as validateSlackBlocksArray, o as getDefaultLocalRoots, p as parseSlackBlocksInput, s as loadWebMedia, t as sendMessageSlack, u as readResponseWithLimit } from "./send-Cxu1tl56.js";
40
40
  import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, t as resolveDefaultSessionStorePath } from "./paths-BtvQ7JvU.js";
41
41
  import { i as normalizeInputProvenance, n as applyInputProvenanceToUserMessage, r as hasInterSessionUserProvenance } from "./input-provenance-Dfn-vEsu.js";
42
42
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-x1D4Vniz.js";
43
43
  import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels, u as resolveResponseUsageMode } from "./thinking-COroyVA5.js";
44
44
  import { n as isSilentReplyText, t as SILENT_REPLY_TOKEN } from "./tokens-0yh2UnJq.js";
45
- import { c as normalizeChannelTargetInput, d as parseReplyDirectives, f as MEDIA_TOKEN_RE, g as initializeGlobalHookRunner, h as getGlobalHookRunner, l as normalizeTargetForProvider, m as parseInlineDirectives$1, o as normalizeReplyPayloadsForDelivery, p as splitMediaFromOutput, s as buildTargetResolverSignature, t as deliverOutboundPayloads, u as throwIfAborted } from "./deliver-C79-Umbk.js";
45
+ import { c as normalizeChannelTargetInput, d as parseReplyDirectives, f as MEDIA_TOKEN_RE, g as initializeGlobalHookRunner, h as getGlobalHookRunner, l as normalizeTargetForProvider, m as parseInlineDirectives$1, o as normalizeReplyPayloadsForDelivery, p as splitMediaFromOutput, s as buildTargetResolverSignature, t as deliverOutboundPayloads, u as throwIfAborted } from "./deliver-DB4v0Tyl.js";
46
46
  import { a as logMessageProcessed, i as logLaneEnqueue, o as logMessageQueued, r as logLaneDequeue, s as logSessionStateChange, t as diag } from "./diagnostic-DbT9t0Sh.js";
47
47
  import { r as getDiagnosticSessionState } from "./diagnostic-session-state-DnkpMfCl.js";
48
- import { i as resolveApiKeyForProvider, n as getCustomProviderApiKey, o as resolveEnvApiKey, r as requireApiKey, s as resolveModelAuthMode, t as getApiKeyForModel } from "./model-auth-_C07_3Yr.js";
49
- import { b as OLLAMA_NATIVE_BASE_URL, c as normalizeGoogleModelId, t as ensureSymiModelsJson, x as createOllamaStreamFn } from "./models-config-Dp5-tBqs.js";
50
- import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-D-vdh-nY.js";
48
+ import { i as resolveApiKeyForProvider, n as getCustomProviderApiKey, o as resolveEnvApiKey, r as requireApiKey, s as resolveModelAuthMode, t as getApiKeyForModel } from "./model-auth-1EAQvYRv.js";
49
+ import { b as OLLAMA_NATIVE_BASE_URL, c as normalizeGoogleModelId, t as ensureSymiModelsJson, x as createOllamaStreamFn } from "./models-config-CRnTzdFs.js";
50
+ import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-Db8XJVGL.js";
51
51
  import { c as hasNonzeroUsage, l as normalizeUsage, n as loadCostUsageSummary, o as derivePromptTokens, r as loadSessionCostSummary } from "./session-cost-usage-D6Ocwmq1.js";
52
- import { C as enqueueSystemEvent, E as buildChannelSummary, S as drainSystemEventEntries, _ as loadProviderUsageSummary, a as loadCombinedSessionStoreForGateway, b as resolveUsageProviderId, d as formatDoctorNonInteractiveHint, g as writeRestartSentinel, k as redactIdentifier, x as lookupContextTokens, y as formatUsageWindowSummary } from "./session-utils-lXjJoBxe.js";
53
- import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout$2 } from "./with-timeout-D1qzvPE0.js";
54
- import { i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-CtZtkTJK.js";
55
- import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-DgDnTEcB.js";
56
- import { a as parseGeminiAuth, c as resolveMemorySearchConfig, n as retryAsync, o as collectProviderApiKeysForExecution, s as executeWithApiKeyRotation } from "./manager-DyYRwHZt.js";
57
- import { f as runTasksWithConcurrency } from "./internal-csqU78gW.js";
52
+ import { C as enqueueSystemEvent, E as buildChannelSummary, S as drainSystemEventEntries, _ as loadProviderUsageSummary, a as loadCombinedSessionStoreForGateway, b as resolveUsageProviderId, d as formatDoctorNonInteractiveHint, g as writeRestartSentinel, k as redactIdentifier, x as lookupContextTokens, y as formatUsageWindowSummary } from "./session-utils-BZnPW904.js";
53
+ import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout$2 } from "./with-timeout-EXM-FP4_.js";
54
+ import { i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-BFNeXT65.js";
55
+ import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-BAhmymrP.js";
56
+ import { a as parseGeminiAuth, c as resolveMemorySearchConfig, n as retryAsync, o as collectProviderApiKeysForExecution, s as executeWithApiKeyRotation } from "./manager-BVHfEFaI.js";
57
+ import { f as runTasksWithConcurrency } from "./internal-DVCddhhN.js";
58
58
  import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-BxfKjCUx.js";
59
59
  import { n as resolveMarkdownTableMode } from "./markdown-tables-CS1Tvb3z.js";
60
60
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-BhdrdVp5.js";
61
61
  import { t as fetchWithSsrFGuard } from "./fetch-guard-JHxT9355.js";
62
- import { n as getDefaultMediaLocalRoots } from "./local-roots-2Jb79HZ8.js";
62
+ import { n as getDefaultMediaLocalRoots } from "./local-roots-CgDCgCuM.js";
63
63
  import { i as resolveNativeSkillsEnabled, n as isRestartEnabled, r as resolveNativeCommandsEnabled, t as isCommandFlagEnabled } from "./commands-DUzLGgEZ.js";
64
- import { a as shouldHandleTextCommands, i as normalizeCommandBody, n as listChatCommands, r as listChatCommandsForConfig } from "./commands-registry-BjcGLk4v.js";
65
- import { zt as SESSION_LABEL_MAX_LENGTH } from "./client-T5P9umyG.js";
66
- import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege } from "./call-CW8U1BPq.js";
64
+ import { a as shouldHandleTextCommands, i as normalizeCommandBody, n as listChatCommands, r as listChatCommandsForConfig } from "./commands-registry-VfAQOVZO.js";
65
+ import { Bt as SESSION_LABEL_MAX_LENGTH } from "./client-B9E9fdCA.js";
66
+ import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege } from "./call-CKm3T_ar.js";
67
67
  import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-DFOL6UQ9.js";
68
68
  import { n as formatTimeAgo } from "./format-relative-D4GQsWlP.js";
69
69
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-B7Rvs8pK.js";
70
- import { g as getSkillsSnapshotVersion, h as ensureSkillsWatcher, t as getRemoteSkillEligibility } from "./skills-remote-BcRQTDsZ.js";
70
+ import { g as getSkillsSnapshotVersion, h as ensureSkillsWatcher, t as getRemoteSkillEligibility } from "./skills-remote-bz71Bstn.js";
71
71
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-ClQLvlCW.js";
72
- import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-CeqDEWGz.js";
73
- import { i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames } from "./skill-commands-C9WuAfb2.js";
74
- import { a as removeChannelAllowFromStoreEntry, c as listPairingChannels, i as readChannelAllowFromStore, o as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-Be-ZQK87.js";
72
+ import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-DQTmHZK7.js";
73
+ import { i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames } from "./skill-commands-yPirQFOb.js";
74
+ import { a as removeChannelAllowFromStoreEntry, c as listPairingChannels, i as readChannelAllowFromStore, o as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-BNhJOnWn.js";
75
75
  import { _ as getTrustedSafeBinDirs, b as buildSafeShellCommand, d as resolveExecApprovals, f as resolveExecApprovalsFromFile, g as resolveSafeBins, h as evaluateShellAllowlist, i as maxAsk, l as recordAllowlistUse, n as addAllowlistEntry, o as minSecurity, u as requiresExecApproval, y as buildSafeBinsShellCommand } from "./exec-approvals-DioSaIeH.js";
76
- import { a as canvasSnapshotTempPath, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeUrlToFile, g as normalizePathPrepend, h as mergePathPrepend, i as parseEnvPairs, l as parseCameraSnapPayload, m as applyPathPrepend, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as buildNodeShellCommand, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile } from "./nodes-screen-Cp5QP3ET.js";
76
+ import { a as canvasSnapshotTempPath, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeUrlToFile, g as normalizePathPrepend, h as mergePathPrepend, i as parseEnvPairs, l as parseCameraSnapPayload, m as applyPathPrepend, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as buildNodeShellCommand, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile } from "./nodes-screen-De9ma6e1.js";
77
77
  import { n as parseNodeList, r as parsePairingList, t as resolveNodeIdFromCandidates } from "./node-match-N7nsmfM6.js";
78
78
  import { t as formatDurationCompact$1 } from "./format-duration-CIjmjQST.js";
79
79
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-9ygk6nTV.js";
80
80
  import { i as resolveModelCostConfig, n as formatTokenCount$2, r as formatUsd, t as estimateUsageCost } from "./usage-format-_37Bn-Jb.js";
81
81
  import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName } from "./constants-ChnKXZKi.js";
82
- import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-y53w3Jzy.js";
82
+ import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-CJWzOFkK.js";
83
83
  import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-DUVGiPYV.js";
84
84
  import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-DF4bza2Q.js";
85
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-B0i_o4Fo.js";
85
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-Zww0Y-HJ.js";
86
86
  import { t as parseTimeoutMs } from "./parse-timeout-DUdeaMqF.js";
87
- import { n as registerMemoryCli } from "./memory-cli-CfJkD7mO.js";
88
- import { i as resolveSlackThreadTs, n as deliverReplies, t as createSlackReplyDeliveryPlan } from "./replies-D3cffD5N.js";
89
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-ji-L-Mpv.js";
90
- import { a as buildModelAliasLines, n as resolveModel$2 } from "./model-DbILYCfo.js";
87
+ import { n as registerMemoryCli } from "./memory-cli-D4w22HxZ.js";
88
+ import { i as resolveSlackThreadTs, n as deliverReplies, t as createSlackReplyDeliveryPlan } from "./replies-B91-OngF.js";
89
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-CTzYYKRt.js";
90
+ import { a as buildModelAliasLines, n as resolveModel$2 } from "./model-D50Lt_sm.js";
91
91
  import { createRequire } from "node:module";
92
92
  import process$1 from "node:process";
93
93
  import { fileURLToPath } from "node:url";
@@ -96,7 +96,7 @@ import path from "node:path";
96
96
  import fs, { constants, existsSync, statSync } from "node:fs";
97
97
  import os, { homedir } from "node:os";
98
98
  import JSON5 from "json5";
99
- import fsPromises from "node:fs/promises";
99
+ import fs$1 from "node:fs/promises";
100
100
  import { execFileSync, spawn, spawnSync } from "node:child_process";
101
101
  import { complete, createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
102
102
  import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
@@ -1846,7 +1846,7 @@ async function imageResult(params) {
1846
1846
  }, params.label, params.imageSanitization);
1847
1847
  }
1848
1848
  async function imageResultFromFile(params) {
1849
- const buf = await fsPromises.readFile(params.path);
1849
+ const buf = await fs$1.readFile(params.path);
1850
1850
  const mimeType = await detectMime({ buffer: buf.slice(0, 256) }) ?? "image/png";
1851
1851
  return await imageResult({
1852
1852
  label: params.label,
@@ -4921,7 +4921,7 @@ async function recordLoopOutcome(args) {
4921
4921
  if (!args.ctx?.sessionKey) return;
4922
4922
  try {
4923
4923
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-DnkpMfCl.js").then((n) => n.n);
4924
- const { recordToolCallOutcome } = await import("./tool-loop-detection-DfBe53Zo.js");
4924
+ const { recordToolCallOutcome } = await import("./tool-loop-detection-D3y39HsT.js");
4925
4925
  recordToolCallOutcome(getDiagnosticSessionState({
4926
4926
  sessionKey: args.ctx.sessionKey,
4927
4927
  sessionId: args.ctx?.agentId
@@ -4943,7 +4943,7 @@ async function runBeforeToolCallHook(args) {
4943
4943
  if (args.ctx?.sessionKey) {
4944
4944
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-DnkpMfCl.js").then((n) => n.n);
4945
4945
  const { logToolLoopAction } = await import("./diagnostic-DbT9t0Sh.js").then((n) => n.n);
4946
- const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-DfBe53Zo.js");
4946
+ const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-D3y39HsT.js");
4947
4947
  const sessionState = getDiagnosticSessionState({
4948
4948
  sessionKey: args.ctx.sessionKey,
4949
4949
  sessionId: args.ctx?.agentId
@@ -5807,7 +5807,7 @@ async function routeReply(params) {
5807
5807
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
5808
5808
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
5809
5809
  try {
5810
- const { deliverOutboundPayloads } = await import("./deliver-C79-Umbk.js").then((n) => n.n);
5810
+ const { deliverOutboundPayloads } = await import("./deliver-DB4v0Tyl.js").then((n) => n.n);
5811
5811
  return {
5812
5812
  ok: true,
5813
5813
  messageId: (await deliverOutboundPayloads({
@@ -11648,7 +11648,7 @@ var MediaAttachmentCache = class {
11648
11648
  const size = await this.ensureLocalStat(entry);
11649
11649
  if (entry.resolvedPath) {
11650
11650
  if (size !== void 0 && size > params.maxBytes) throw new MediaUnderstandingSkipError("maxBytes", `Attachment ${params.attachmentIndex + 1} exceeds maxBytes ${params.maxBytes}`);
11651
- const buffer = await fsPromises.readFile(entry.resolvedPath);
11651
+ const buffer = await fs$1.readFile(entry.resolvedPath);
11652
11652
  entry.buffer = buffer;
11653
11653
  entry.bufferMime = entry.bufferMime ?? entry.attachment.mime ?? await detectMime({
11654
11654
  buffer,
@@ -11718,10 +11718,10 @@ var MediaAttachmentCache = class {
11718
11718
  prefix: "symi-media",
11719
11719
  extension: path.extname(bufferResult.fileName || "") || ""
11720
11720
  });
11721
- await fsPromises.writeFile(tmpPath, bufferResult.buffer);
11721
+ await fs$1.writeFile(tmpPath, bufferResult.buffer);
11722
11722
  entry.tempPath = tmpPath;
11723
11723
  entry.tempCleanup = async () => {
11724
- await fsPromises.unlink(tmpPath).catch(() => {});
11724
+ await fs$1.unlink(tmpPath).catch(() => {});
11725
11725
  };
11726
11726
  return {
11727
11727
  path: tmpPath,
@@ -11768,12 +11768,12 @@ var MediaAttachmentCache = class {
11768
11768
  if (entry.statSize !== void 0) return entry.statSize;
11769
11769
  try {
11770
11770
  const currentPath = entry.resolvedPath;
11771
- const stat = await fsPromises.stat(currentPath);
11771
+ const stat = await fs$1.stat(currentPath);
11772
11772
  if (!stat.isFile()) {
11773
11773
  entry.resolvedPath = void 0;
11774
11774
  return;
11775
11775
  }
11776
- const canonicalPath = await fsPromises.realpath(currentPath).catch(() => currentPath);
11776
+ const canonicalPath = await fs$1.realpath(currentPath).catch(() => currentPath);
11777
11777
  if (!isInboundPathAllowed({
11778
11778
  filePath: canonicalPath,
11779
11779
  roots: await this.getCanonicalLocalPathRoots()
@@ -11795,7 +11795,7 @@ var MediaAttachmentCache = class {
11795
11795
  if (this.canonicalLocalPathRoots) return await this.canonicalLocalPathRoots;
11796
11796
  this.canonicalLocalPathRoots = (async () => mergeInboundPathRoots(this.localPathRoots, await Promise.all(this.localPathRoots.map(async (root) => {
11797
11797
  if (root.includes("*")) return root;
11798
- return await fsPromises.realpath(root).catch(() => root);
11798
+ return await fs$1.realpath(root).catch(() => root);
11799
11799
  }))))();
11800
11800
  return await this.canonicalLocalPathRoots;
11801
11801
  }
@@ -11866,7 +11866,7 @@ function formatAudioTranscripts(outputs) {
11866
11866
  async function fileExists(filePath) {
11867
11867
  if (!filePath) return false;
11868
11868
  try {
11869
- await fsPromises.stat(filePath);
11869
+ await fs$1.stat(filePath);
11870
11870
  return true;
11871
11871
  } catch {
11872
11872
  return false;
@@ -11966,7 +11966,7 @@ async function resolveCliOutput(params) {
11966
11966
  const commandId = commandBase(params.command);
11967
11967
  const fileOutput = commandId === "whisper-cli" ? resolveWhisperCppOutputPath(params.args) : commandId === "whisper" ? resolveWhisperOutputPath(params.args, params.mediaPath) : null;
11968
11968
  if (fileOutput && await fileExists(fileOutput)) try {
11969
- const content = await fsPromises.readFile(fileOutput, "utf8");
11969
+ const content = await fs$1.readFile(fileOutput, "utf8");
11970
11970
  if (content.trim()) return content.trim();
11971
11971
  } catch {}
11972
11972
  if (commandId === "gemini") {
@@ -12257,7 +12257,7 @@ async function runCliEntry(params) {
12257
12257
  maxBytes,
12258
12258
  timeoutMs
12259
12259
  });
12260
- const outputDir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "symi-media-cli-"));
12260
+ const outputDir = await fs$1.mkdtemp(path.join(os.tmpdir(), "symi-media-cli-"));
12261
12261
  const mediaPath = pathResult.path;
12262
12262
  const outputBase = path.join(outputDir, path.parse(mediaPath).name);
12263
12263
  const templCtx = {
@@ -12291,7 +12291,7 @@ async function runCliEntry(params) {
12291
12291
  model: command
12292
12292
  };
12293
12293
  } finally {
12294
- await fsPromises.rm(outputDir, {
12294
+ await fs$1.rm(outputDir, {
12295
12295
  recursive: true,
12296
12296
  force: true
12297
12297
  }).catch(() => {});
@@ -12335,9 +12335,9 @@ function candidateBinaryNames(name) {
12335
12335
  }
12336
12336
  async function isExecutable$1(filePath) {
12337
12337
  try {
12338
- if (!(await fsPromises.stat(filePath)).isFile()) return false;
12338
+ if (!(await fs$1.stat(filePath)).isFile()) return false;
12339
12339
  if (process.platform === "win32") return true;
12340
- await fsPromises.access(filePath, constants.X_OK);
12340
+ await fs$1.access(filePath, constants.X_OK);
12341
12341
  return true;
12342
12342
  } catch {
12343
12343
  return false;
@@ -14041,7 +14041,7 @@ async function createModelSelectionState(params) {
14041
14041
  }
14042
14042
  }
14043
14043
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
14044
- const { ensureAuthProfileStore } = await import("./auth-profiles-D5nYBj_Z.js").then((n) => n.t);
14044
+ const { ensureAuthProfileStore } = await import("./auth-profiles-Ce7R_25e.js").then((n) => n.t);
14045
14045
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
14046
14046
  const providerKey = normalizeProviderId(provider);
14047
14047
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -17185,7 +17185,7 @@ async function resolveSandboxWorkdir(params) {
17185
17185
  cwd: process.cwd(),
17186
17186
  root: params.sandbox.workspaceDir
17187
17187
  });
17188
- if (!(await fsPromises.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
17188
+ if (!(await fs$1.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
17189
17189
  const relative = resolved.relative ? resolved.relative.split(path.sep).join(path.posix.sep) : "";
17190
17190
  const containerWorkdir = relative ? path.posix.join(params.sandbox.containerWorkdir, relative) : params.sandbox.containerWorkdir;
17191
17191
  return {
@@ -18199,13 +18199,13 @@ async function validateScriptFileForShellBleed(params) {
18199
18199
  cwd: params.workdir,
18200
18200
  root: params.workdir
18201
18201
  });
18202
- stat = await fsPromises.stat(absPath);
18202
+ stat = await fs$1.stat(absPath);
18203
18203
  } catch {
18204
18204
  return;
18205
18205
  }
18206
18206
  if (!stat.isFile()) return;
18207
18207
  if (stat.size > 512 * 1024) return;
18208
- const content = await fsPromises.readFile(absPath, "utf-8");
18208
+ const content = await fs$1.readFile(absPath, "utf-8");
18209
18209
  const first = /\$[A-Z_][A-Z0-9_]{1,}/g.exec(content);
18210
18210
  if (first) {
18211
18211
  const idx = first.index;
@@ -22881,7 +22881,7 @@ async function handleCommands(params) {
22881
22881
  try {
22882
22882
  const messages = [];
22883
22883
  if (sessionFile) {
22884
- const content = await fsPromises.readFile(sessionFile, "utf-8");
22884
+ const content = await fs$1.readFile(sessionFile, "utf-8");
22885
22885
  for (const line of content.split("\n")) {
22886
22886
  if (!line.trim()) continue;
22887
22887
  try {
@@ -25068,7 +25068,7 @@ async function readJsonlFromPath(jsonlPath) {
25068
25068
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${resolved}`);
25069
25069
  throw new Error("jsonlPath outside allowed roots");
25070
25070
  }
25071
- const canonical = await fsPromises.realpath(resolved).catch(() => resolved);
25071
+ const canonical = await fs$1.realpath(resolved).catch(() => resolved);
25072
25072
  if (!isInboundPathAllowed({
25073
25073
  filePath: canonical,
25074
25074
  roots
@@ -25076,7 +25076,7 @@ async function readJsonlFromPath(jsonlPath) {
25076
25076
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${canonical}`);
25077
25077
  throw new Error("jsonlPath outside allowed roots");
25078
25078
  }
25079
- return await fsPromises.readFile(canonical, "utf8");
25079
+ return await fs$1.readFile(canonical, "utf8");
25080
25080
  }
25081
25081
  const CanvasToolSchema = Type.Object({
25082
25082
  action: stringEnum(CANVAS_ACTIONS),
@@ -26607,7 +26607,7 @@ async function hydrateAttachmentPayload(params) {
26607
26607
  accountId: params.accountId
26608
26608
  }),
26609
26609
  sandboxValidated: true,
26610
- readFile: (filePath) => fsPromises.readFile(filePath)
26610
+ readFile: (filePath) => fs$1.readFile(filePath)
26611
26611
  });
26612
26612
  params.args.buffer = media.buffer.toString("base64");
26613
26613
  if (!contentTypeParam && media.contentType) params.args.contentType = media.contentType;
@@ -32608,6 +32608,7 @@ function createWebSearchTool(options) {
32608
32608
 
32609
32609
  //#endregion
32610
32610
  //#region src/agents/symi-tools.ts
32611
+ var symi_tools_exports = /* @__PURE__ */ __exportAll({ createSymiTools: () => createSymiTools });
32611
32612
  function createSymiTools(options) {
32612
32613
  const workspaceDir = resolveWorkspaceRoot(options?.workspaceDir);
32613
32614
  const imageTool = options?.agentDir?.trim() ? createImageTool({
@@ -33109,7 +33110,7 @@ async function deliverSessionMaintenanceWarning(params) {
33109
33110
  return;
33110
33111
  }
33111
33112
  try {
33112
- const { deliverOutboundPayloads } = await import("./deliver-C79-Umbk.js").then((n) => n.n);
33113
+ const { deliverOutboundPayloads } = await import("./deliver-DB4v0Tyl.js").then((n) => n.n);
33113
33114
  await deliverOutboundPayloads({
33114
33115
  cfg: params.cfg,
33115
33116
  channel,
@@ -33514,7 +33515,7 @@ async function stageSandboxMedia(params) {
33514
33515
  };
33515
33516
  try {
33516
33517
  const destDir = sandbox ? path.join(effectiveWorkspaceDir, "media", "inbound") : effectiveWorkspaceDir;
33517
- await fsPromises.mkdir(destDir, { recursive: true });
33518
+ await fs$1.mkdir(destDir, { recursive: true });
33518
33519
  const remoteAttachmentRoots = resolveIMessageRemoteAttachmentRoots({
33519
33520
  cfg,
33520
33521
  accountId: ctx.AccountId
@@ -33564,7 +33565,7 @@ async function stageSandboxMedia(params) {
33564
33565
  usedNames.add(fileName);
33565
33566
  const dest = path.join(destDir, fileName);
33566
33567
  if (ctx.MediaRemoteHost) await scpFile(ctx.MediaRemoteHost, source, dest);
33567
- else await fsPromises.copyFile(source, dest);
33568
+ else await fs$1.copyFile(source, dest);
33568
33569
  const stagedPath = sandbox ? path.posix.join("media", "inbound", fileName) : dest;
33569
33570
  staged.set(source, stagedPath);
33570
33571
  }
@@ -38875,7 +38876,7 @@ function readSlackExternalArgMenuToken(raw) {
38875
38876
  }
38876
38877
  let commandsRegistry;
38877
38878
  async function getCommandsRegistry() {
38878
- if (!commandsRegistry) commandsRegistry = await import("./commands-registry-BjcGLk4v.js").then((n) => n.t);
38879
+ if (!commandsRegistry) commandsRegistry = await import("./commands-registry-VfAQOVZO.js").then((n) => n.t);
38879
38880
  return commandsRegistry;
38880
38881
  }
38881
38882
  function encodeSlackCommandArgValue(parts) {
@@ -39217,11 +39218,11 @@ async function registerSlackMonitorSlashCommands(params) {
39217
39218
  const channelName = channelInfo?.name;
39218
39219
  const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
39219
39220
  const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
39220
- import("./resolve-route-B0i_o4Fo.js").then((n) => n.r),
39221
+ import("./resolve-route-Zww0Y-HJ.js").then((n) => n.r),
39221
39222
  import("./inbound-context-B7Rvs8pK.js").then((n) => n.n),
39222
39223
  Promise.resolve().then(() => provider_dispatcher_exports)
39223
39224
  ]);
39224
- const [{ resolveConversationLabel }, { createReplyPrefixOptions }] = await Promise.all([import("./conversation-label-CffvEjpp.js").then((n) => n.t), import("./reply-prefix-CtZtkTJK.js").then((n) => n.n)]);
39225
+ const [{ resolveConversationLabel }, { createReplyPrefixOptions }] = await Promise.all([import("./conversation-label-CffvEjpp.js").then((n) => n.t), import("./reply-prefix-BFNeXT65.js").then((n) => n.n)]);
39225
39226
  const route = resolveAgentRoute({
39226
39227
  cfg,
39227
39228
  channel: "slack",
@@ -39278,7 +39279,7 @@ async function registerSlackMonitorSlashCommands(params) {
39278
39279
  });
39279
39280
  const deliverSlashPayloads = async (replies) => {
39280
39281
  const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
39281
- import("./replies-D3cffD5N.js").then((n) => n.r),
39282
+ import("./replies-B91-OngF.js").then((n) => n.r),
39282
39283
  import("./chunk-BxfKjCUx.js").then((n) => n.s),
39283
39284
  import("./markdown-tables-CS1Tvb3z.js").then((n) => n.t)
39284
39285
  ]);
@@ -39333,7 +39334,7 @@ async function registerSlackMonitorSlashCommands(params) {
39333
39334
  let nativeCommands = [];
39334
39335
  if (nativeEnabled) {
39335
39336
  reg = await getCommandsRegistry();
39336
- const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-C9WuAfb2.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
39337
+ const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-yPirQFOb.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
39337
39338
  nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
39338
39339
  skillCommands,
39339
39340
  provider: "slack"
@@ -40466,7 +40467,7 @@ function resolvePluginTools(params) {
40466
40467
  //#endregion
40467
40468
  //#region src/agents/apply-patch-update.ts
40468
40469
  async function defaultReadFile(filePath) {
40469
- return fsPromises.readFile(filePath, "utf8");
40470
+ return fs$1.readFile(filePath, "utf8");
40470
40471
  }
40471
40472
  async function applyUpdateHunk(filePath, chunks, options) {
40472
40473
  const originalLines = (await (options?.readFile ?? defaultReadFile)(filePath).catch((err) => {
@@ -40710,10 +40711,10 @@ function resolvePatchFileOps(options) {
40710
40711
  };
40711
40712
  }
40712
40713
  return {
40713
- readFile: (filePath) => fsPromises.readFile(filePath, "utf8"),
40714
- writeFile: (filePath, content) => fsPromises.writeFile(filePath, content, "utf8"),
40715
- remove: (filePath) => fsPromises.rm(filePath),
40716
- mkdirp: (dir) => fsPromises.mkdir(dir, { recursive: true }).then(() => {})
40714
+ readFile: (filePath) => fs$1.readFile(filePath, "utf8"),
40715
+ writeFile: (filePath, content) => fs$1.writeFile(filePath, content, "utf8"),
40716
+ remove: (filePath) => fs$1.rm(filePath),
40717
+ mkdirp: (dir) => fs$1.mkdir(dir, { recursive: true }).then(() => {})
40717
40718
  };
40718
40719
  }
40719
40720
  async function ensureDir(filePath, ops) {
@@ -41918,7 +41919,7 @@ async function repairSessionFileIfNeeded(params) {
41918
41919
  };
41919
41920
  let content;
41920
41921
  try {
41921
- content = await fsPromises.readFile(sessionFile, "utf-8");
41922
+ content = await fs$1.readFile(sessionFile, "utf-8");
41922
41923
  } catch (err) {
41923
41924
  if (err?.code === "ENOENT") return {
41924
41925
  repaired: false,
@@ -41966,15 +41967,15 @@ async function repairSessionFileIfNeeded(params) {
41966
41967
  const backupPath = `${sessionFile}.bak-${process.pid}-${Date.now()}`;
41967
41968
  const tmpPath = `${sessionFile}.repair-${process.pid}-${Date.now()}.tmp`;
41968
41969
  try {
41969
- const stat = await fsPromises.stat(sessionFile).catch(() => null);
41970
- await fsPromises.writeFile(backupPath, content, "utf-8");
41971
- if (stat) await fsPromises.chmod(backupPath, stat.mode);
41972
- await fsPromises.writeFile(tmpPath, cleaned, "utf-8");
41973
- if (stat) await fsPromises.chmod(tmpPath, stat.mode);
41974
- await fsPromises.rename(tmpPath, sessionFile);
41970
+ const stat = await fs$1.stat(sessionFile).catch(() => null);
41971
+ await fs$1.writeFile(backupPath, content, "utf-8");
41972
+ if (stat) await fs$1.chmod(backupPath, stat.mode);
41973
+ await fs$1.writeFile(tmpPath, cleaned, "utf-8");
41974
+ if (stat) await fs$1.chmod(tmpPath, stat.mode);
41975
+ await fs$1.rename(tmpPath, sessionFile);
41975
41976
  } catch (err) {
41976
41977
  try {
41977
- await fsPromises.unlink(tmpPath);
41978
+ await fs$1.unlink(tmpPath);
41978
41979
  } catch (cleanupErr) {
41979
41980
  params.warn?.(`session file repair cleanup failed: ${cleanupErr instanceof Error ? cleanupErr.message : "unknown error"} (${path.basename(tmpPath)})`);
41980
41981
  }
@@ -43247,7 +43248,7 @@ async function prewarmSessionFile(sessionFile) {
43247
43248
  if (!isSessionManagerCacheEnabled()) return;
43248
43249
  if (isSessionManagerCached(sessionFile)) return;
43249
43250
  try {
43250
- const handle = await fsPromises.open(sessionFile, "r");
43251
+ const handle = await fs$1.open(sessionFile, "r");
43251
43252
  try {
43252
43253
  const buffer = Buffer$1.alloc(4096);
43253
43254
  await handle.read(buffer, 0, buffer.length, 0);
@@ -43387,7 +43388,7 @@ async function compactEmbeddedPiSessionDirect(params) {
43387
43388
  } catch (err) {
43388
43389
  return fail(describeUnknownError(err));
43389
43390
  }
43390
- await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
43391
+ await fs$1.mkdir(resolvedWorkspace, { recursive: true });
43391
43392
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
43392
43393
  const sandbox = await resolveSandboxContext({
43393
43394
  config: params.config,
@@ -43395,7 +43396,7 @@ async function compactEmbeddedPiSessionDirect(params) {
43395
43396
  workspaceDir: resolvedWorkspace
43396
43397
  });
43397
43398
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
43398
- await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
43399
+ await fs$1.mkdir(effectiveWorkspace, { recursive: true });
43399
43400
  await ensureSessionHeader({
43400
43401
  sessionFile: params.sessionFile,
43401
43402
  sessionId: params.sessionId,
@@ -43720,12 +43721,12 @@ function getQueuedFileWriter(writers, filePath) {
43720
43721
  const existing = writers.get(filePath);
43721
43722
  if (existing) return existing;
43722
43723
  const dir = path.dirname(filePath);
43723
- const ready = fsPromises.mkdir(dir, { recursive: true }).catch(() => void 0);
43724
+ const ready = fs$1.mkdir(dir, { recursive: true }).catch(() => void 0);
43724
43725
  let queue = Promise.resolve();
43725
43726
  const writer = {
43726
43727
  filePath,
43727
43728
  write: (line) => {
43728
- queue = queue.then(() => ready).then(() => fsPromises.appendFile(filePath, line, "utf8")).catch(() => void 0);
43729
+ queue = queue.then(() => ready).then(() => fs$1.appendFile(filePath, line, "utf8")).catch(() => void 0);
43729
43730
  }
43730
43731
  };
43731
43732
  writers.set(filePath, writer);
@@ -46905,7 +46906,7 @@ Use the message tool with buttons:
46905
46906
  */
46906
46907
  async function readSessionFile(sessionFile) {
46907
46908
  try {
46908
- return await fsPromises.readFile(sessionFile, "utf-8");
46909
+ return await fs$1.readFile(sessionFile, "utf-8");
46909
46910
  } catch {
46910
46911
  return null;
46911
46912
  }
@@ -46914,8 +46915,8 @@ async function writeAtomically(sessionFile, text) {
46914
46915
  const dir = path.dirname(sessionFile);
46915
46916
  const base = path.basename(sessionFile);
46916
46917
  const tmp = path.join(dir, `.${base}.prune-${process.pid}-${Date.now()}.tmp`);
46917
- await fsPromises.writeFile(tmp, text, "utf-8");
46918
- await fsPromises.rename(tmp, sessionFile);
46918
+ await fs$1.writeFile(tmp, text, "utf-8");
46919
+ await fs$1.rename(tmp, sessionFile);
46919
46920
  }
46920
46921
  /**
46921
46922
  * Remove empty assistant JSONL entries from the session file.
@@ -47017,7 +47018,7 @@ function isInPoisonRange(version) {
47017
47018
  */
47018
47019
  async function checkSessionPoison(sessionFile) {
47019
47020
  try {
47020
- const firstLine = (await fsPromises.readFile(sessionFile, "utf-8")).split("\n")[0];
47021
+ const firstLine = (await fs$1.readFile(sessionFile, "utf-8")).split("\n")[0];
47021
47022
  if (!firstLine) return null;
47022
47023
  const header = JSON.parse(firstLine);
47023
47024
  if (header.type !== "session") return null;
@@ -47035,7 +47036,7 @@ async function checkSessionPoison(sessionFile) {
47035
47036
  */
47036
47037
  async function archivePoisonedSession(sessionFile) {
47037
47038
  const archiveName = `${sessionFile}.archived-poison.${(/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-")}`;
47038
- await fsPromises.rename(sessionFile, archiveName);
47039
+ await fs$1.rename(sessionFile, archiveName);
47039
47040
  return archiveName;
47040
47041
  }
47041
47042
  /**
@@ -47044,14 +47045,14 @@ async function archivePoisonedSession(sessionFile) {
47044
47045
  */
47045
47046
  async function stampSessionVersion(sessionFile) {
47046
47047
  try {
47047
- const lines = (await fsPromises.readFile(sessionFile, "utf-8")).split("\n");
47048
+ const lines = (await fs$1.readFile(sessionFile, "utf-8")).split("\n");
47048
47049
  if (lines.length === 0) return;
47049
47050
  const header = JSON.parse(lines[0]);
47050
47051
  if (header.type !== "session") return;
47051
47052
  if (header.symiVersion === VERSION) return;
47052
47053
  header.symiVersion = VERSION;
47053
47054
  lines[0] = JSON.stringify(header);
47054
- await fsPromises.writeFile(sessionFile, lines.join("\n"), "utf-8");
47055
+ await fs$1.writeFile(sessionFile, lines.join("\n"), "utf-8");
47055
47056
  } catch {}
47056
47057
  }
47057
47058
  /**
@@ -47280,7 +47281,7 @@ async function prepareSessionManagerForRun(params) {
47280
47281
  return;
47281
47282
  }
47282
47283
  if (params.hadSessionFile && header && !hasAssistant) {
47283
- await fsPromises.writeFile(params.sessionFile, "", "utf-8");
47284
+ await fs$1.writeFile(params.sessionFile, "", "utf-8");
47284
47285
  sm.fileEntries = [header];
47285
47286
  sm.byId?.clear?.();
47286
47287
  sm.labelsById?.clear?.();
@@ -47838,7 +47839,7 @@ async function runEmbeddedAttempt(params) {
47838
47839
  const prevCwd = process.cwd();
47839
47840
  const runAbortController = new AbortController();
47840
47841
  log$7.debug(`embedded run start: runId=${params.runId} sessionId=${params.sessionId} provider=${params.provider} model=${params.modelId} thinking=${params.thinkLevel} messageChannel=${params.messageChannel ?? params.messageProvider ?? "unknown"}`);
47841
- await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
47842
+ await fs$1.mkdir(resolvedWorkspace, { recursive: true });
47842
47843
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
47843
47844
  const sandbox = await resolveSandboxContext({
47844
47845
  config: params.config,
@@ -47846,7 +47847,7 @@ async function runEmbeddedAttempt(params) {
47846
47847
  workspaceDir: resolvedWorkspace
47847
47848
  });
47848
47849
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
47849
- await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
47850
+ await fs$1.mkdir(effectiveWorkspace, { recursive: true });
47850
47851
  let restoreSkillEnv;
47851
47852
  process.chdir(effectiveWorkspace);
47852
47853
  try {
@@ -48055,7 +48056,7 @@ async function runEmbeddedAttempt(params) {
48055
48056
  sessionFile: params.sessionFile,
48056
48057
  warn: (message) => log$7.warn(message)
48057
48058
  });
48058
- const hadSessionFile = await fsPromises.stat(params.sessionFile).then(() => true).catch(() => false);
48059
+ const hadSessionFile = await fs$1.stat(params.sessionFile).then(() => true).catch(() => false);
48059
48060
  const transcriptPolicy = resolveTranscriptPolicy({
48060
48061
  modelApi: params.model?.api,
48061
48062
  provider: params.provider,
@@ -49147,7 +49148,7 @@ async function runEmbeddedPiAgent(params) {
49147
49148
  }
49148
49149
  runLoopIterations += 1;
49149
49150
  attemptedThinking.add(thinkLevel);
49150
- await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
49151
+ await fs$1.mkdir(resolvedWorkspace, { recursive: true });
49151
49152
  const prompt = provider === "anthropic" ? scrubAnthropicRefusalMagic(params.prompt) : params.prompt;
49152
49153
  const attempt = await runEmbeddedAttempt({
49153
49154
  sessionId: params.sessionId,
@@ -49866,4 +49867,4 @@ async function runAgentTurn(params) {
49866
49867
  }
49867
49868
 
49868
49869
  //#endregion
49869
- export { applyBrowserProxyPaths as $, getAgentRunContext as $t, normalizePollInput as A, estimateBase64DecodedBytes as At, normalizeOptionalText as B, countActiveRunsForSession as Bt, listTasksInWorkdir as C, classifyOutboundMessage as Cn, DEFAULT_INPUT_IMAGE_MIMES as Ct, resolveOutboundSessionRoute as D, FailoverError as Dn, extractImageContentFromSource as Dt, ensureOutboundSessionEntry as E, runWithModelFallback as En, extractFileContentFromSource as Et, normalizeCronJobCreate as F, clearSessionAuthProfileOverride as Ft, hasLegacyDeliveryHints as G, resolveAgentTimeoutMs as Gt, normalizeRequiredName as H, listDescendantRunsForRequester as Ht, normalizeCronJobPatch as I, formatZonedTimestamp as It, CHANNEL_TARGET_DESCRIPTION as J, AGENT_LANE_NESTED as Jt, stripLegacyDeliveryFields as K, runSubagentAnnounceFlow as Kt, inferLegacyName as L, isAbortTrigger as Lt, resetDirectoryCache as M, prepareAgentRun as Mt, CHANNEL_MESSAGE_ACTION_NAMES as N, BARE_SESSION_RESET_PROMPT as Nt, resolveOutboundTarget as O, describeFailoverError as On, normalizeMimeList as Ot, normalizeHttpWebhookUrl as P, normalizeGroupActivation as Pt, isExternalHookSession as Q, emitAgentEvent as Qt, normalizeOptionalAgentId as R, stopSubagentsForRequester as Rt, createSymiTools as S, CommandLane as Sn, DEFAULT_INPUT_IMAGE_MAX_BYTES as St, runMessageAction as T, composeTurnMiddleware as Tn, DEFAULT_INPUT_TIMEOUT_MS as Tt, migrateLegacyCronPayload as U, listSubagentRunsForRequester as Ut, normalizePayloadToSystemText as V, initSubagentRegistry as Vt, buildDeliveryFromLegacyPayload as W, subagent_registry_exports as Wt, detectSuspiciousPatterns as X, clearSessionQueues as Xt, buildSafeExternalPrompt as Y, AGENT_LANE_SUBAGENT as Yt, getHookType as Z, clearAgentRunContext as Zt, withContextUsageWarning as _, getActiveTaskCount as _n, buildAuthHealthSummary as _t, getPluginToolMeta as a, waitForEmbeddedPiRunEnd as an, markGatewaySigusr1RestartHandled as at, buildAgentTurnParams as b, setCommandLaneConcurrency as bn, applyVerboseOverride as bt, handleSlackHttpRequest as c, ToolInputError as cn, setPreRestartDeferralCheck as ct, buildHistoryContextFromEntries as d, resolveUserTimeFormat as dn, getProcessSupervisor as dt, onAgentEvent as en, persistBrowserProxyFiles as et, getChannelActivity as f, resolveUserTimezone as fn, detectRuntimeShell as ft, buildGlassUiProfile as g, resolveRunWorkspaceDir as gn, DEFAULT_OAUTH_WARN_MS as gt, getTotalPendingReplies as h, redactRunIdentifier as hn, maskApiKey as ht, sniffMimeFromBase64 as i, getActiveEmbeddedRunCount as in, isGatewaySigusr1RestartExternallyAllowed as it, formatTargetDisplay as j, applyTemplate as jt, resolveSessionDeliveryTarget as k, resolveFailoverStatus as kn, resolveInputFileLimits as kt, readJsonBodyWithLimit as l, resolveSymiDocsPath as ln, buildSystemPromptParams as lt, createReplyDispatcher as m, resolveBootstrapContextForRun as mn, resolveSendPolicy as mt, applyToolPolicyPipeline as n, buildAgentSystemPrompt as nn, deferGatewayRestartUntilIdle as nt, createPluginLoaderLogger as o, installUnhandledRejectionHandler as on, scheduleGatewaySigusr1Restart as ot, provider_dispatcher_exports as p, makeBootstrapWarn as pn, normalizeSendPolicy as pt, CHANNEL_TARGETS_DESCRIPTION as q, readLatestAssistantReply as qt, buildDefaultToolPolicyPipelineSteps as r, abortEmbeddedPiRun as rn, emitGatewayRestart as rt, loadSymiPlugins as s, registerUnhandledRejectionHandler as sn, setGatewaySigusr1RestartPolicy as st, runAgentTurn as t, registerAgentRunContext as tn, consumeGatewaySigusr1RestartAuthorization as tt, requestBodyErrorToText as u, formatUserTime as un, resolveCommitHash as ut, withContextOverflowRecovery as v, getTotalQueueSize as vn, formatRemainingShort as vt, resolveAnnounceTargetFromKey as w, resolveModelProfile as wn, DEFAULT_INPUT_MAX_REDIRECTS as wt, prepareReplyTurn as x, waitForActiveTasks as xn, parseVerboseOverride as xt, runUnifiedTurn as y, resetAllLanes as yn, applyModelOverrideToSessionEntry as yt, normalizeOptionalSessionKey as z, countActiveDescendantRuns as zt };
49870
+ export { isExternalHookSession as $, emitAgentEvent as $t, resolveSessionDeliveryTarget as A, resolveFailoverStatus as An, resolveInputFileLimits as At, normalizeOptionalSessionKey as B, countActiveDescendantRuns as Bt, symi_tools_exports as C, CommandLane as Cn, DEFAULT_INPUT_IMAGE_MAX_BYTES as Ct, ensureOutboundSessionEntry as D, runWithModelFallback as Dn, extractFileContentFromSource as Dt, runMessageAction as E, composeTurnMiddleware as En, DEFAULT_INPUT_TIMEOUT_MS as Et, normalizeHttpWebhookUrl as F, normalizeGroupActivation as Ft, buildDeliveryFromLegacyPayload as G, subagent_registry_exports as Gt, normalizePayloadToSystemText as H, initSubagentRegistry as Ht, normalizeCronJobCreate as I, clearSessionAuthProfileOverride as It, CHANNEL_TARGETS_DESCRIPTION as J, readLatestAssistantReply as Jt, hasLegacyDeliveryHints as K, resolveAgentTimeoutMs as Kt, normalizeCronJobPatch as L, formatZonedTimestamp as Lt, formatTargetDisplay as M, applyTemplate as Mt, resetDirectoryCache as N, prepareAgentRun as Nt, resolveOutboundSessionRoute as O, FailoverError as On, extractImageContentFromSource as Ot, CHANNEL_MESSAGE_ACTION_NAMES as P, BARE_SESSION_RESET_PROMPT as Pt, getHookType as Q, clearAgentRunContext as Qt, inferLegacyName as R, isAbortTrigger as Rt, createSymiTools as S, waitForActiveTasks as Sn, parseVerboseOverride as St, resolveAnnounceTargetFromKey as T, resolveModelProfile as Tn, DEFAULT_INPUT_MAX_REDIRECTS as Tt, normalizeRequiredName as U, listDescendantRunsForRequester as Ut, normalizeOptionalText as V, countActiveRunsForSession as Vt, migrateLegacyCronPayload as W, listSubagentRunsForRequester as Wt, buildSafeExternalPrompt as X, AGENT_LANE_SUBAGENT as Xt, CHANNEL_TARGET_DESCRIPTION as Y, AGENT_LANE_NESTED as Yt, detectSuspiciousPatterns as Z, clearSessionQueues as Zt, withContextUsageWarning as _, resolveRunWorkspaceDir as _n, DEFAULT_OAUTH_WARN_MS as _t, getPluginToolMeta as a, getActiveEmbeddedRunCount as an, isGatewaySigusr1RestartExternallyAllowed as at, buildAgentTurnParams as b, resetAllLanes as bn, applyModelOverrideToSessionEntry as bt, handleSlackHttpRequest as c, registerUnhandledRejectionHandler as cn, setGatewaySigusr1RestartPolicy as ct, buildHistoryContextFromEntries as d, formatUserTime as dn, resolveCommitHash as dt, getAgentRunContext as en, applyBrowserProxyPaths as et, getChannelActivity as f, resolveUserTimeFormat as fn, getProcessSupervisor as ft, buildGlassUiProfile as g, redactRunIdentifier as gn, maskApiKey as gt, getTotalPendingReplies as h, resolveBootstrapContextForRun as hn, resolveSendPolicy as ht, sniffMimeFromBase64 as i, abortEmbeddedPiRun as in, emitGatewayRestart as it, normalizePollInput as j, estimateBase64DecodedBytes as jt, resolveOutboundTarget as k, describeFailoverError as kn, normalizeMimeList as kt, readJsonBodyWithLimit as l, ToolInputError as ln, setPreRestartDeferralCheck as lt, createReplyDispatcher as m, makeBootstrapWarn as mn, normalizeSendPolicy as mt, applyToolPolicyPipeline as n, registerAgentRunContext as nn, consumeGatewaySigusr1RestartAuthorization as nt, createPluginLoaderLogger as o, waitForEmbeddedPiRunEnd as on, markGatewaySigusr1RestartHandled as ot, provider_dispatcher_exports as p, resolveUserTimezone as pn, detectRuntimeShell as pt, stripLegacyDeliveryFields as q, runSubagentAnnounceFlow as qt, buildDefaultToolPolicyPipelineSteps as r, buildAgentSystemPrompt as rn, deferGatewayRestartUntilIdle as rt, loadSymiPlugins as s, installUnhandledRejectionHandler as sn, scheduleGatewaySigusr1Restart as st, runAgentTurn as t, onAgentEvent as tn, persistBrowserProxyFiles as tt, requestBodyErrorToText as u, resolveSymiDocsPath as un, buildSystemPromptParams as ut, withContextOverflowRecovery as v, getActiveTaskCount as vn, buildAuthHealthSummary as vt, listTasksInWorkdir as w, classifyOutboundMessage as wn, DEFAULT_INPUT_IMAGE_MIMES as wt, prepareReplyTurn as x, setCommandLaneConcurrency as xn, applyVerboseOverride as xt, runUnifiedTurn as y, getTotalQueueSize as yn, formatRemainingShort as yt, normalizeOptionalAgentId as z, stopSubagentsForRequester as zt };