@symerian/symi 3.4.27 → 3.4.29

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 (215) hide show
  1. package/dist/{agent-DOOj3Gzb.js → agent-CQlyTNu-.js} +1 -1
  2. package/dist/{agent-CiqPWDUd.js → agent-N_J2cDO6.js} +18 -18
  3. package/dist/{agent-scope-Bnsyyeci.js → agent-scope-DOrZjOnW.js} +18 -18
  4. package/dist/{agents-BBQfFoen.js → agents-1xmRO246.js} +2 -2
  5. package/dist/{agents.config-Dm3oLpYK.js → agents.config-BJ9RIQlb.js} +1 -1
  6. package/dist/{audit-BSX7fMfc.js → audit-DCwHws4M.js} +20 -20
  7. package/dist/{auth-choice-rhBmet5i.js → auth-choice-DwXdS4c2.js} +11 -11
  8. package/dist/{auth-choice-BYbTjWcs.js → auth-choice-Ryx7oj6G.js} +1 -1
  9. package/dist/{auth-profiles-D5nYBj_Z.js → auth-profiles-Ce7R_25e.js} +2 -2
  10. package/dist/{auth-token-CAV1oLQG.js → auth-token-DgRRSbEX.js} +3 -3
  11. package/dist/{banner-C1qG5Rm9.js → banner-CxMQaUgh.js} +1 -1
  12. package/dist/{browser-cli-De8jg4-F.js → browser-cli-C3hfJNZy.js} +9 -9
  13. package/dist/build-info.json +3 -3
  14. package/dist/bundled/boot-md/handler.js +2 -2
  15. package/dist/bundled/session-memory/handler.js +2 -2
  16. package/dist/{call-CW8U1BPq.js → call-BouPakqe.js} +9 -9
  17. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  18. package/dist/{channel-options-CJD7jwYg.js → channel-options-WR29vfWK.js} +1 -1
  19. package/dist/{channel-options-BsXUgCMq.js → channel-options-n9C_ovb1.js} +1 -1
  20. package/dist/{channels-cli-Dxn5n9e4.js → channels-cli-Cs-Uq67O.js} +7 -7
  21. package/dist/{channels-cli-Bao4VNbH.js → channels-cli-DbFGI3vF.js} +57 -57
  22. package/dist/{chrome-pFBxO63W.js → chrome-rzK8edU7.js} +2 -2
  23. package/dist/{cli-WP38F9C5.js → cli-7ceDvtPc.js} +45 -45
  24. package/dist/{cli-CrhLSz3t.js → cli-D55pCJ8Q.js} +4 -4
  25. package/dist/{client-T5P9umyG.js → client-BzUAFrla.js} +1 -1
  26. package/dist/{command-registry-DoXcG7FZ.js → command-registry-DAy62yhH.js} +10 -10
  27. package/dist/{commands-registry-BjcGLk4v.js → commands-registry-VfAQOVZO.js} +1 -1
  28. package/dist/{completion-cli-C0SXi7ya.js → completion-cli-Bc1jojml.js} +12 -12
  29. package/dist/{completion-cli-DaWi3_ux.js → completion-cli-Bh-Y2NVp.js} +2 -2
  30. package/dist/{config-D-PYSlE8.js → config-D7SS4vdk.js} +2 -2
  31. package/dist/{config-cli-DXKm0pS5.js → config-cli-BxRcn2oD.js} +1 -1
  32. package/dist/{config-cli-DS67KtKf.js → config-cli-DupKETmw.js} +4 -4
  33. package/dist/{config-guard-xLTTFANi.js → config-guard-BGAQzX2K.js} +6 -6
  34. package/dist/{config-validation-C4wGq3rz.js → config-validation-COcIIMNe.js} +1 -1
  35. package/dist/{configure-B99YJJb0.js → configure-0XYm59w7.js} +14 -14
  36. package/dist/{configure-CzO4_jJJ.js → configure-BilM_Fgn.js} +2 -2
  37. package/dist/{consolidate-BB4BOQIN.js → consolidate-DI20-Wtn.js} +6 -6
  38. package/dist/{control-service-y53w3Jzy.js → control-service-Ry7Le68N.js} +4 -4
  39. package/dist/{control-ui-assets-Dryy7mCE.js → control-ui-assets-DuDhl0co.js} +1 -1
  40. package/dist/{cron-cli-BMblAFRK.js → cron-cli-DHFgjr_X.js} +7 -7
  41. package/dist/{daemon-cli-BJGNf5qV.js → daemon-cli-fC2R9YZd.js} +11 -11
  42. package/dist/{daemon-runtime-u4p9jsEF.js → daemon-runtime-tZgIbDPz.js} +10 -10
  43. package/dist/{deliver-C79-Umbk.js → deliver-DB4v0Tyl.js} +2 -2
  44. package/dist/{deps-UA1UBhl7.js → deps-BlmO-MfQ.js} +1 -1
  45. package/dist/{devices-cli-wsTs-nti.js → devices-cli-DtkKN4l0.js} +6 -6
  46. package/dist/{diagnostics-oW0LBW-t.js → diagnostics-tVJR9V0_.js} +5 -5
  47. package/dist/{directory-cli-D8As6t8Z.js → directory-cli-Bfy_ejW2.js} +3 -3
  48. package/dist/{dm-policy-shared-DRJrFKqJ.js → dm-policy-shared-CBlUyDSX.js} +1 -1
  49. package/dist/{dns-cli-BKOTBn3n.js → dns-cli-DzKaV6NZ.js} +3 -3
  50. package/dist/{docs-cli-D5j7Nmz2.js → docs-cli-a90_8wuN.js} +1 -1
  51. package/dist/{doctor-completion-mev5PRjN.js → doctor-completion-B6OPl_GZ.js} +2 -2
  52. package/dist/{doctor-completion-B1YCzbvi.js → doctor-completion-BZJWX3Dr.js} +1 -1
  53. package/dist/{doctor-config-flow-Uv41seME.js → doctor-config-flow-30ZEvATb.js} +9 -9
  54. package/dist/entry.js +1 -1
  55. package/dist/{exec-approvals-cli-B4ry9s5r.js → exec-approvals-cli-C3gZAwV8.js} +13 -13
  56. package/dist/extensionAPI.js +2 -2
  57. package/dist/{file-lock-2AecMjCa.js → file-lock-BVUYnlQv.js} +8 -8
  58. package/dist/{fs-safe-B0Is-oLk.js → fs-safe-BdejYjW8.js} +6 -6
  59. package/dist/{gateway-cli-B3JVj_dv.js → gateway-cli-CyhLb-zS.js} +98 -98
  60. package/dist/{gateway-cli-Chnp6icp.js → gateway-cli-DQhYa6AL.js} +10 -10
  61. package/dist/{gateway-rpc-CLzM6ugo.js → gateway-rpc-DNq7EMhm.js} +1 -1
  62. package/dist/{glass-ui-ws-5o8dvEZO.js → glass-ui-ws-CLDbMDPk.js} +8 -8
  63. package/dist/{glass-ui-ws--GjxFRyX.js → glass-ui-ws-SJVljtUx.js} +67 -67
  64. package/dist/{health-D2th0Ip6.js → health-DZ0aipDZ.js} +4 -4
  65. package/dist/{hooks-cli-B4Nvp9AV.js → hooks-cli-BMRj13QU.js} +59 -59
  66. package/dist/{hooks-cli-B_sZth4r.js → hooks-cli-BVtdP5x7.js} +5 -5
  67. package/dist/{image-ops-BzCBIakN.js → image-ops-L70xVnpG.js} +10 -10
  68. package/dist/index.js +52 -52
  69. package/dist/{inspect-U3g9owQ8.js → inspect-CXsOujVt.js} +4 -4
  70. package/dist/{install-safe-path-BwMMOh9z.js → install-safe-path-D5gi-nfu.js} +11 -11
  71. package/dist/{installs-vdi1BESF.js → installs-DF_LhGX6.js} +10 -10
  72. package/dist/{internal-csqU78gW.js → internal-DVCddhhN.js} +9 -9
  73. package/dist/{lifecycle-core-BfmNlC-k.js → lifecycle-core-Bvdl2ShM.js} +5 -5
  74. package/dist/llm-slug-generator.js +2 -2
  75. package/dist/{local-roots-2Jb79HZ8.js → local-roots-CgDCgCuM.js} +1 -1
  76. package/dist/{logs-cli-COZzdFu6.js → logs-cli-mdSEYBKS.js} +7 -7
  77. package/dist/{manager-DyYRwHZt.js → manager-BLg6zbeA.js} +15 -15
  78. package/dist/{manager-BfbQb9qM.js → manager-BhIaahpm.js} +1 -1
  79. package/dist/{manager-Bryhc0Ip.js → manager-BsQIpjy1.js} +1 -1
  80. package/dist/{manager-C5FGNRjL.js → manager-CtDuNn2T.js} +1 -1
  81. package/dist/{memory-DgDnTEcB.js → memory-B4DsKRSc.js} +5 -5
  82. package/dist/{memory-Cypj1lBQ.js → memory-BENbCb4f.js} +2 -2
  83. package/dist/{memory-cli-DB7UIev4.js → memory-cli-BIjwqjBx.js} +2 -2
  84. package/dist/{memory-cli-CfJkD7mO.js → memory-cli-DotHyA76.js} +12 -12
  85. package/dist/{model-DbILYCfo.js → model-DsMHOvMn.js} +1 -1
  86. package/dist/{model-auth-_C07_3Yr.js → model-auth-1EAQvYRv.js} +2 -2
  87. package/dist/{model-catalog-CeqDEWGz.js → model-catalog-DQTmHZK7.js} +3 -3
  88. package/dist/{model-picker-C_f6MALt.js → model-picker-D4TY_tPx.js} +5 -5
  89. package/dist/{model-selection-CCTzD29o.js → model-selection-7wdmO-Iw.js} +1 -1
  90. package/dist/{models-Bpqeds64.js → models-CmToZKBp.js} +2 -2
  91. package/dist/{models-cli-BUWfj5iJ.js → models-cli-CZgkOUZB.js} +55 -55
  92. package/dist/{models-cli-Bc47WFhD.js → models-cli-Di7iKhD4.js} +6 -6
  93. package/dist/{models-config-Dp5-tBqs.js → models-config-CRnTzdFs.js} +8 -8
  94. package/dist/{node-cli-BdjmGI32.js → node-cli-BXv9SEDG.js} +27 -27
  95. package/dist/{node-service-DphkTjBV.js → node-service-CrDVFWQl.js} +1 -1
  96. package/dist/{nodes-cli-BChJzcKY.js → nodes-cli-Cim3ANNU.js} +10 -10
  97. package/dist/{nodes-screen-Cp5QP3ET.js → nodes-screen-De9ma6e1.js} +4 -4
  98. package/dist/{npm-registry-spec-CqVgiBCf.js → npm-registry-spec-YMWTMnm_.js} +9 -9
  99. package/dist/{onboard-BbfERyKU.js → onboard-BXI02b3e.js} +1 -1
  100. package/dist/{onboard-C0nMMiiS.js → onboard-CuLvp4Ds.js} +15 -15
  101. package/dist/{onboard-channels-CMp9YXHC.js → onboard-channels-A6_QP7MR.js} +1 -1
  102. package/dist/{onboard-channels-CmsfVut5.js → onboard-channels-E5NIYGJz.js} +4 -4
  103. package/dist/{onboard-custom-BfHczxx0.js → onboard-custom-BrtjWDlX.js} +3 -3
  104. package/dist/{onboard-helpers-OB_xKQze.js → onboard-helpers---sZ9pdZ.js} +8 -8
  105. package/dist/{onboard-hooks-BA22KYCG.js → onboard-hooks-CtIRdncr.js} +1 -1
  106. package/dist/{onboard-remote-Dv2Uz8Ru.js → onboard-remote-BUB3VPBP.js} +1 -1
  107. package/dist/{onboard-skills-BzxofI4T.js → onboard-skills-Cs3BZ4VJ.js} +3 -3
  108. package/dist/{onboarding-vgZFhH5N.js → onboarding-BWMBA6cP.js} +12 -12
  109. package/dist/{onboarding-DoYMfCjS.js → onboarding-BeYl1Egj.js} +3 -3
  110. package/dist/{onboarding.finalize-Dj0xG8pk.js → onboarding.finalize-Bk-XW8b3.js} +4 -4
  111. package/dist/{onboarding.finalize-BYHDzz2i.js → onboarding.finalize-CH8dBgA2.js} +31 -31
  112. package/dist/{onboarding.gateway-config-CDRLfIZM.js → onboarding.gateway-config-arRNxrI9.js} +8 -8
  113. package/dist/{openai-model-default-Dl21Ivjc.js → openai-model-default-XudD4Xik.js} +2 -2
  114. package/dist/{pairing-cli-C2_Zobhz.js → pairing-cli-NDavTm1_.js} +5 -5
  115. package/dist/{pairing-store-Be-ZQK87.js → pairing-store-BNhJOnWn.js} +1 -1
  116. package/dist/{pairing-token-B703A1U3.js → pairing-token-Dcy37-4s.js} +7 -7
  117. package/dist/{paths-BWqg8NZT.js → paths-DObzwe08.js} +1 -1
  118. package/dist/{pi-auth-json-D-vdh-nY.js → pi-auth-json-Db8XJVGL.js} +6 -6
  119. package/dist/{pi-embedded-C7mJzGIf.js → pi-embedded-BL3_b-H_.js} +6 -52
  120. package/dist/{pi-embedded-helpers-y3vJmW6T.js → pi-embedded-helpers-B5cWV7_y.js} +6 -6
  121. package/dist/{pi-tools.policy-ji-L-Mpv.js → pi-tools.policy-BdGVEMZn.js} +3 -3
  122. package/dist/{plugin-auto-enable-Ctbn2w4Q.js → plugin-auto-enable-B_lNp6yM.js} +1 -1
  123. package/dist/{plugin-registry-pKaJ4ltN.js → plugin-registry-CAdIrLmG.js} +1 -1
  124. package/dist/{plugin-registry-D2ZbwBU_.js → plugin-registry-DovNSdK0.js} +3 -3
  125. package/dist/plugin-sdk/agents/pi-tools.types.d.ts +2 -1
  126. package/dist/plugin-sdk/agents/tools/common.d.ts +0 -30
  127. package/dist/{plugins-cli-uo8lcB7v.js → plugins-cli-JzKO-vmR.js} +5 -5
  128. package/dist/{plugins-cli-CoHiV4BX.js → plugins-cli-ZG4PxNTC.js} +54 -54
  129. package/dist/{ports-ukrEAkOP.js → ports-C3ZSkRGq.js} +1 -1
  130. package/dist/{ports-CB_Iu83U.js → ports-gxLM5ahL.js} +2 -2
  131. package/dist/{program-rzYjZKRz.js → program-BbfU4idg.js} +10 -10
  132. package/dist/{program-context-B1ZbQmLL.js → program-context-ByiEP1Lk.js} +38 -38
  133. package/dist/{prompt-select-styled-F6P-rvFI.js → prompt-select-styled-CWH2Mcrb.js} +4 -4
  134. package/dist/{prompt-select-styled-CX0v66wx.js → prompt-select-styled-DvrG_zWV.js} +38 -38
  135. package/dist/{provider-auth-helpers-_jn9PngO.js → provider-auth-helpers-2x7YxT5F.js} +6 -6
  136. package/dist/{provider-auth-helpers-Ck98bkHV.js → provider-auth-helpers-CMQexdSl.js} +1 -1
  137. package/dist/{push-apns-BtMtpzEm.js → push-apns-CtWwPxRj.js} +1 -1
  138. package/dist/{push-apns-CmeoBcIQ.js → push-apns-eGdGU3r7.js} +4 -4
  139. package/dist/{pw-ai-CQJsGI1b.js → pw-ai-tgngV3iZ.js} +7 -7
  140. package/dist/{qmd-manager-DawTY2mB.js → qmd-manager-qV_04VKG.js} +19 -19
  141. package/dist/{qr-cli-DKowtQcM.js → qr-cli-Vo1XL6B2.js} +3 -3
  142. package/dist/{register.agent-_UqSBmt5.js → register.agent-DZE9NBNx.js} +9 -9
  143. package/dist/{register.agent-0hWBZXD7.js → register.agent-Dwkya1rv.js} +67 -67
  144. package/dist/{register.configure-KrTtvKSp.js → register.configure-CD8WkXo8.js} +8 -8
  145. package/dist/{register.configure-CgQ6sqtQ.js → register.configure-DCpbCHR0.js} +70 -70
  146. package/dist/{register.maintenance-DjZeknO6.js → register.maintenance-Bqjj77CZ.js} +67 -67
  147. package/dist/{register.maintenance-DDSfzFoo.js → register.maintenance-CxVeo_7j.js} +9 -9
  148. package/dist/{register.message-DSwwDcGi.js → register.message-tcJN7-E3.js} +5 -5
  149. package/dist/{register.message-DTZJ5OiL.js → register.message-uhAmNxoO.js} +47 -47
  150. package/dist/{register.onboard-B8k5phG7.js → register.onboard-F6d_Wrv1.js} +25 -25
  151. package/dist/{register.onboard-BToIZTIS.js → register.onboard-Rm5t0yxX.js} +2 -2
  152. package/dist/{register.setup-BdUewOo1.js → register.setup-C2datfZK.js} +2 -2
  153. package/dist/{register.setup-1fexz2oW.js → register.setup-CcHxpsUT.js} +28 -28
  154. package/dist/{register.status-health-sessions-eBaeXIvo.js → register.status-health-sessions-DFVjS9Hy.js} +3 -3
  155. package/dist/{register.status-health-sessions-0RyA2cXf.js → register.status-health-sessions-DIUDRMqm.js} +41 -41
  156. package/dist/{register.subclis-tX3BslaT.js → register.subclis-D9uGnVGm.js} +9 -9
  157. package/dist/{replies-D3cffD5N.js → replies-DzsYQ8Md.js} +1 -1
  158. package/dist/{reply-prefix-CtZtkTJK.js → reply-prefix-BFNeXT65.js} +1 -1
  159. package/dist/{resolve-route-B0i_o4Fo.js → resolve-route-Zww0Y-HJ.js} +1 -1
  160. package/dist/{routes-zpAUwtCG.js → routes-C-rIjd8Z.js} +10 -10
  161. package/dist/{rpc-DhsDKVo-.js → rpc-BkFkeuJ6.js} +1 -1
  162. package/dist/{run-main-DIl_Kl0B.js → run-main-HkbyvIDy.js} +17 -17
  163. package/dist/{sandbox-DQCaejcD.js → sandbox-Dx8IMw-E.js} +18 -18
  164. package/dist/{sandbox-cli-CbvyZs1z.js → sandbox-cli-BFkLKdlk.js} +13 -13
  165. package/dist/{security-cli-CbJxNYZx.js → security-cli-BEpQ_rO1.js} +29 -29
  166. package/dist/{send-QscYkkNh.js → send-Cxu1tl56.js} +7 -7
  167. package/dist/{server-context-CXVq7gZ7.js → server-context--mmXXEkE.js} +5 -5
  168. package/dist/{server-methods-CpFBGxWI.js → server-methods-DJ8eiTu1.js} +6 -6
  169. package/dist/{server-methods-DPxjPGr0.js → server-methods-RtjWUhkv.js} +58 -58
  170. package/dist/{server-node-events-2SUW10k3.js → server-node-events-CT8fFtBQ.js} +6 -6
  171. package/dist/{server-node-events-B_BPbi7z.js → server-node-events-DQ1iCUgY.js} +48 -48
  172. package/dist/{service-Cm4-5AH9.js → service-CyEDtYLq.js} +15 -15
  173. package/dist/{session-dirs-BypCYFN3.js → session-dirs-CXErIzZq.js} +2 -2
  174. package/dist/{session-utils-lXjJoBxe.js → session-utils-BZnPW904.js} +14 -14
  175. package/dist/{sessions-aSo5jsmg.js → sessions-optZRB57.js} +10 -10
  176. package/dist/{shared-DDX_4ypC.js → shared-Ctok0Bcs.js} +1 -1
  177. package/dist/{shared-BI-gOZsD.js → shared-DJFwvlUi.js} +3 -3
  178. package/dist/{skill-commands-C9WuAfb2.js → skill-commands-yPirQFOb.js} +4 -4
  179. package/dist/{skill-scanner-CFqMkfZW.js → skill-scanner-BBwesm0w.js} +5 -5
  180. package/dist/{skills-CYcBtLGH.js → skills-BwDmcZdt.js} +4 -4
  181. package/dist/{skills-cli-BgyaAQoj.js → skills-cli-gC5ETdly.js} +7 -7
  182. package/dist/{skills-install-MGsx6q5Z.js → skills-install-CLN_Ks5r.js} +3 -3
  183. package/dist/{skills-remote-BcRQTDsZ.js → skills-remote-bz71Bstn.js} +3 -3
  184. package/dist/{skills-status-CbSdFlvm.js → skills-status-iltfI_bO.js} +1 -1
  185. package/dist/{sqlite-BpogPlQW.js → sqlite-Cod7C5ba.js} +5 -5
  186. package/dist/{status-DbNNmkNB.js → status-CoqGtHXq.js} +1 -1
  187. package/dist/{status-BVYDUlnp.js → status-Cpz64Vy_.js} +1 -1
  188. package/dist/{status-C-r9JpJf.js → status-CuMBp54T.js} +23 -23
  189. package/dist/{status-DIJvpgEm.js → status-EAjzyREy.js} +3 -3
  190. package/dist/{status.update-EyslEZkn.js → status.update-F4CbQCxF.js} +3 -3
  191. package/dist/{subagent-registry-DWemyjbN.js → subagent-registry-Dkif1XYO.js} +6 -52
  192. package/dist/{symi-root-DeCVdZB4.js → symi-root-BQ0IpoW2.js} +2 -2
  193. package/dist/{synthesis-BdTiornP.js → synthesis-B6tq6-9G.js} +2 -2
  194. package/dist/{synthesis-C7RlvHEs.js → synthesis-CKKZrrYd.js} +45 -45
  195. package/dist/{synthesis-BxYzOZUA.js → synthesis-CpsURf9J.js} +4 -4
  196. package/dist/{synthesis-DQ7Y6OE0.js → synthesis-mgcCKSzl.js} +2 -2
  197. package/dist/{system-cli-DgOvK_kU.js → system-cli-DMKzffe3.js} +7 -7
  198. package/dist/{systemd-B2nTr3Y2.js → systemd-DRpQb_L1.js} +5 -5
  199. package/dist/{systemd-hints-DtOWJT_2.js → systemd-hints-DR4u43WA.js} +6 -6
  200. package/dist/{systemd-linger-CWi5l8Nt.js → systemd-linger-BQQl5RXN.js} +1 -1
  201. package/dist/{tui-D7ms_iQ4.js → tui-CqrM_Fj2.js} +7 -7
  202. package/dist/{tui-cli-DNvAqIYN.js → tui-cli-BsqRmqTX.js} +19 -19
  203. package/dist/{unified-runner-DPWNhQQA.js → unified-runner-DAWxqcS9.js} +6 -52
  204. package/dist/{unified-runner-BIUJm_Iv.js → unified-runner-DZAjU6aB.js} +104 -150
  205. package/dist/{update-pddgyV7i.js → update-CWEjB8uS.js} +3 -3
  206. package/dist/{update-check-CduiCxPo.js → update-check-CxBGAP1E.js} +5 -5
  207. package/dist/{update-cli-BM-A3cIZ.js → update-cli-Bgk30eoA.js} +9 -9
  208. package/dist/{update-cli-GKXF83cS.js → update-cli-t7W6vcQY.js} +77 -77
  209. package/dist/{update-runner-BMYqz1dl.js → update-runner-C4Uy75eP.js} +15 -15
  210. package/dist/{webhooks-cli-BPPmnDCj.js → webhooks-cli-Dp-pp0Sf.js} +4 -4
  211. package/dist/{with-timeout-D1qzvPE0.js → with-timeout-B5zAsivw.js} +1 -1
  212. package/dist/{workspace-dirs-DCICLTHx.js → workspace-dirs-jKFQf7of.js} +1 -1
  213. package/dist/{wsl-Sed675xh.js → wsl-DMA0sTvh.js} +2 -2
  214. package/package.json +1 -1
  215. package/dist/plugin-sdk/agents/tools/availability-filter.d.ts +0 -10
@@ -1,12 +1,12 @@
1
1
  import { h as resolveUserPath, p as resolveConfigDir, s as ensureDir } from "./utils-CTPsqyE_.js";
2
2
  import { t as runCommandWithTimeout } from "./exec-DuYbft0z.js";
3
3
  import { d as hasBinary } from "./frontmatter-B_jqcova.js";
4
- import { i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, x as resolveSkillKey } from "./skills-CYcBtLGH.js";
4
+ import { i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, x as resolveSkillKey } from "./skills-BwDmcZdt.js";
5
5
  import { t as fetchWithSsrFGuard } from "./fetch-guard-JHxT9355.js";
6
6
  import { t as resolveBrewExecutable } from "./brew-CHxBxbYV.js";
7
7
  import { t as isWithinDir } from "./path-safety-C0C4YlKw.js";
8
- import { a as extractArchive$1, d as resolveArchiveOutputPath, f as stripArchivePath, p as validateArchiveEntryPath, r as safePathSegmentHashed, u as isWindowsDrivePath } from "./install-safe-path-BwMMOh9z.js";
9
- import { t as scanDirectoryWithSummary } from "./skill-scanner-CFqMkfZW.js";
8
+ import { a as extractArchive$1, d as resolveArchiveOutputPath, f as stripArchivePath, p as validateArchiveEntryPath, r as safePathSegmentHashed, u as isWindowsDrivePath } from "./install-safe-path-D5gi-nfu.js";
9
+ import { t as scanDirectoryWithSummary } from "./skill-scanner-BBwesm0w.js";
10
10
  import path from "node:path";
11
11
  import fs from "node:fs";
12
12
  import { pipeline } from "node:stream/promises";
@@ -1,8 +1,8 @@
1
1
  import { h as resolveUserPath, t as CONFIG_DIR } from "./utils-CTPsqyE_.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
3
- import { i as loadWorkspaceSkillEntries, s as resolvePluginSkillDirs } from "./skills-CYcBtLGH.js";
4
- import { a as upsertPendingPairingRequest, c as writeJsonAtomic, i as resolvePairingPaths, n as verifyPairingToken, o as createAsyncLock, r as pruneExpiredPending, s as readJsonFile, t as generatePairingToken } from "./pairing-token-B703A1U3.js";
5
- import { t as listAgentWorkspaceDirs } from "./workspace-dirs-DCICLTHx.js";
3
+ import { i as loadWorkspaceSkillEntries, s as resolvePluginSkillDirs } from "./skills-BwDmcZdt.js";
4
+ import { a as upsertPendingPairingRequest, c as writeJsonAtomic, i as resolvePairingPaths, n as verifyPairingToken, o as createAsyncLock, r as pruneExpiredPending, s as readJsonFile, t as generatePairingToken } from "./pairing-token-Dcy37-4s.js";
5
+ import { t as listAgentWorkspaceDirs } from "./workspace-dirs-jKFQf7of.js";
6
6
  import { randomUUID } from "node:crypto";
7
7
  import path from "node:path";
8
8
  import os from "node:os";
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { t as CONFIG_DIR } from "./utils-CTPsqyE_.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
4
4
  import { d as hasBinary } from "./frontmatter-B_jqcova.js";
5
- import { _ as isBundledSkillAllowed, b as resolveSkillConfig, c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, v as isConfigPathTruthy, y as resolveBundledAllowlist } from "./skills-CYcBtLGH.js";
5
+ import { _ as isBundledSkillAllowed, b as resolveSkillConfig, c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, v as isConfigPathTruthy, y as resolveBundledAllowlist } from "./skills-BwDmcZdt.js";
6
6
  import { t as evaluateEntryMetadataRequirementsForCurrentPlatform } from "./entry-status-B63VEeeK.js";
7
7
  import path from "node:path";
8
8
  import { loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
@@ -1,17 +1,17 @@
1
1
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
2
2
  import { n as redactSensitiveText } from "./redact-B3O-RBO1.js";
3
3
  import { s as resolveSessionTranscriptsDirForAgent } from "./paths-BtvQ7JvU.js";
4
- import { a as hashText } from "./internal-csqU78gW.js";
4
+ import { a as hashText } from "./internal-DVCddhhN.js";
5
5
  import { createRequire } from "node:module";
6
6
  import path from "node:path";
7
- import fsPromises from "node:fs/promises";
7
+ import fs from "node:fs/promises";
8
8
 
9
9
  //#region src/memory/session-files.ts
10
10
  const log = createSubsystemLogger("memory");
11
11
  async function listSessionFilesForAgent(agentId) {
12
12
  const dir = resolveSessionTranscriptsDirForAgent(agentId);
13
13
  try {
14
- return (await fsPromises.readdir(dir, { withFileTypes: true })).filter((entry) => entry.isFile()).map((entry) => entry.name).filter((name) => name.endsWith(".jsonl")).map((name) => path.join(dir, name));
14
+ return (await fs.readdir(dir, { withFileTypes: true })).filter((entry) => entry.isFile()).map((entry) => entry.name).filter((name) => name.endsWith(".jsonl")).map((name) => path.join(dir, name));
15
15
  } catch {
16
16
  return [];
17
17
  }
@@ -41,8 +41,8 @@ function extractSessionText(content) {
41
41
  }
42
42
  async function buildSessionEntry(absPath) {
43
43
  try {
44
- const stat = await fsPromises.stat(absPath);
45
- const lines = (await fsPromises.readFile(absPath, "utf-8")).split("\n");
44
+ const stat = await fs.stat(absPath);
45
+ const lines = (await fs.readFile(absPath, "utf-8")).split("\n");
46
46
  const collected = [];
47
47
  const lineMap = [];
48
48
  for (let jsonlIdx = 0; jsonlIdx < lines.length; jsonlIdx++) {
@@ -1,7 +1,7 @@
1
1
  import { o as createSubsystemLogger } from "./entry.js";
2
2
  import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-C-Jte08L.js";
3
3
  import { i as loadConfig } from "./config-_DaupjQd.js";
4
- import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-DWemyjbN.js";
4
+ import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-Dkif1XYO.js";
5
5
 
6
6
  //#region src/plugins/status.ts
7
7
  const log = createSubsystemLogger("plugins");
@@ -14,7 +14,7 @@ import { n as listChannelPlugins } from "./plugins-BsEhWvLn.js";
14
14
  import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-FeJ1M0mP.js";
15
15
  import { i as formatPortDiagnostics, n as inspectPortUsage } from "./ports-uA7P2qIK.js";
16
16
  import { c as resolveStorePath } from "./paths-DtiEyjsC.js";
17
- import { t as getMemorySearchManager } from "./memory-Cypj1lBQ.js";
17
+ import { t as getMemorySearchManager } from "./memory-BENbCb4f.js";
18
18
  import { n as formatTimeAgo } from "./format-relative-CxLpEQOX.js";
19
19
  import { t as getRemoteSkillEligibility } from "./skills-remote-DSGpkPJE.js";
20
20
  import { _ as peekSystemEvents, b as formatChannelAllowFrom, d as formatUsageReportLines, n as sha256HexPrefix, o as readRestartSentinel, s as summarizeRestartSentinel, u as loadProviderUsageSummary, v as buildChannelSummary, y as buildChannelAccountSnapshot } from "./redact-identifier-CXvHJXk9.js";
@@ -2,41 +2,41 @@ import { A as isRich, j as theme, x as info } from "./registry-Sbac4a4z.js";
2
2
  import { u as resolveGatewayPort } from "./paths-By0XjHBk.js";
3
3
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
4
4
  import { x as parseAgentSessionKey } from "./session-key-DUSb7CCb.js";
5
- import { t as resolveSymiPackageRoot } from "./symi-root-DeCVdZB4.js";
5
+ import { t as resolveSymiPackageRoot } from "./symi-root-BQ0IpoW2.js";
6
6
  import { n as runExec } from "./exec-DuYbft0z.js";
7
- import { c as resolveAgentWorkspaceDir } from "./agent-scope-Bnsyyeci.js";
8
- import { C as DEFAULT_MODEL, S as DEFAULT_CONTEXT_TOKENS, m as resolveConfiguredModelRef, w as DEFAULT_PROVIDER } from "./model-selection-CCTzD29o.js";
9
- import { N as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-D-PYSlE8.js";
7
+ import { c as resolveAgentWorkspaceDir } from "./agent-scope-DOrZjOnW.js";
8
+ import { C as DEFAULT_MODEL, S as DEFAULT_CONTEXT_TOKENS, m as resolveConfiguredModelRef, w as DEFAULT_PROVIDER } from "./model-selection-7wdmO-Iw.js";
9
+ import { N as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-D7SS4vdk.js";
10
10
  import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-DpKBMIvx.js";
11
- import { a as inspectPortUsage, s as formatPortDiagnostics } from "./ports-CB_Iu83U.js";
12
- import { H as resolveMainSessionKey, R as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-aSo5jsmg.js";
11
+ import { a as inspectPortUsage, s as formatPortDiagnostics } from "./ports-gxLM5ahL.js";
12
+ import { H as resolveMainSessionKey, R as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-optZRB57.js";
13
13
  import { n as listChannelPlugins } from "./plugins-CF5skkHh.js";
14
14
  import { c as resolveStorePath } from "./paths-BtvQ7JvU.js";
15
- import { A as sha256HexPrefix, D as buildChannelAccountSnapshot, E as buildChannelSummary, O as formatChannelAllowFrom, T as peekSystemEvents, _ as loadProviderUsageSummary, l as resolveSessionModelRef, m as summarizeRestartSentinel, n as classifySessionKey, p as readRestartSentinel, r as listAgentsForGateway, v as formatUsageReportLines, x as lookupContextTokens } from "./session-utils-lXjJoBxe.js";
16
- import { t as getMemorySearchManager } from "./memory-DgDnTEcB.js";
17
- import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-CW8U1BPq.js";
15
+ import { A as sha256HexPrefix, D as buildChannelAccountSnapshot, E as buildChannelSummary, O as formatChannelAllowFrom, T as peekSystemEvents, _ as loadProviderUsageSummary, l as resolveSessionModelRef, m as summarizeRestartSentinel, n as classifySessionKey, p as readRestartSentinel, r as listAgentsForGateway, v as formatUsageReportLines, x as lookupContextTokens } from "./session-utils-BZnPW904.js";
16
+ import { t as getMemorySearchManager } from "./memory-B4DsKRSc.js";
17
+ import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BouPakqe.js";
18
18
  import { n as formatTimeAgo } from "./format-relative-D4GQsWlP.js";
19
- import { t as getRemoteSkillEligibility } from "./skills-remote-BcRQTDsZ.js";
19
+ import { t as getRemoteSkillEligibility } from "./skills-remote-bz71Bstn.js";
20
20
  import { r as formatDurationPrecise } from "./format-duration-CIjmjQST.js";
21
21
  import { n as withProgress } from "./progress-HNhsbm0E.js";
22
- import { t as buildWorkspaceSkillStatus } from "./skills-status-CbSdFlvm.js";
22
+ import { t as buildWorkspaceSkillStatus } from "./skills-status-iltfI_bO.js";
23
23
  import { t as resolveChannelDefaultAccountId } from "./helpers-DgsKk072.js";
24
24
  import { t as collectChannelStatusIssues } from "./channels-status-issues-mROqdfm_.js";
25
- import { C as normalizeControlUiBasePath, g as resolveControlUiLinks } from "./onboard-helpers-OB_xKQze.js";
26
- import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-Cm4-5AH9.js";
25
+ import { C as normalizeControlUiBasePath, g as resolveControlUiLinks } from "./onboard-helpers---sZ9pdZ.js";
26
+ import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-CyEDtYLq.js";
27
27
  import { t as formatRuntimeStatusWithDetails } from "./runtime-status-BgZqic8M.js";
28
- import { t as readLastGatewayErrorLine } from "./diagnostics-oW0LBW-t.js";
28
+ import { t as readLastGatewayErrorLine } from "./diagnostics-tVJR9V0_.js";
29
29
  import { t as renderTable } from "./table-D902H0x3.js";
30
- import { l as probeGateway, o as resolveGatewayProbeAuth$1, t as runSecurityAudit } from "./audit-BSX7fMfc.js";
31
- import { t as formatHealthChannelLines } from "./health-D2th0Ip6.js";
32
- import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-CduiCxPo.js";
33
- import { t as resolveNodeService } from "./node-service-DphkTjBV.js";
30
+ import { l as probeGateway, o as resolveGatewayProbeAuth$1, t as runSecurityAudit } from "./audit-DCwHws4M.js";
31
+ import { t as formatHealthChannelLines } from "./health-DZ0aipDZ.js";
32
+ import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-CxBGAP1E.js";
33
+ import { t as resolveNodeService } from "./node-service-CrDVFWQl.js";
34
34
  import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-Bxjkt5ce.js";
35
- import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, r as getUpdateCheckResult, t as formatUpdateAvailableHint } from "./status.update-EyslEZkn.js";
35
+ import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, r as getUpdateCheckResult, t as formatUpdateAvailableHint } from "./status.update-F4CbQCxF.js";
36
36
  import path from "node:path";
37
37
  import fs from "node:fs";
38
38
  import os from "node:os";
39
- import fsPromises from "node:fs/promises";
39
+ import fs$1 from "node:fs/promises";
40
40
  import { spawnSync } from "node:child_process";
41
41
 
42
42
  //#region src/commands/gateway-presence.ts
@@ -125,7 +125,7 @@ function resolveOsSummary() {
125
125
  //#region src/commands/status-all/agents.ts
126
126
  async function fileExists$1(p) {
127
127
  try {
128
- await fsPromises.access(p);
128
+ await fs$1.access(p);
129
129
  return true;
130
130
  } catch {
131
131
  return false;
@@ -490,7 +490,7 @@ async function buildChannelsTable(cfg, opts) {
490
490
  //#endregion
491
491
  //#region src/commands/status-all/gateway.ts
492
492
  async function readFileTailLines(filePath, maxLines) {
493
- const raw = await fsPromises.readFile(filePath, "utf8").catch(() => "");
493
+ const raw = await fs$1.readFile(filePath, "utf8").catch(() => "");
494
494
  if (!raw.trim()) return [];
495
495
  const lines = raw.replace(/\r/g, "").split("\n");
496
496
  return lines.slice(Math.max(0, lines.length - maxLines)).map((line) => line.trimEnd()).filter((line) => line.trim().length > 0);
@@ -1256,7 +1256,7 @@ function resolveGatewayProbeAuth(cfg) {
1256
1256
  //#region src/commands/status.agent-local.ts
1257
1257
  async function fileExists(p) {
1258
1258
  try {
1259
- await fsPromises.access(p);
1259
+ await fs$1.access(p);
1260
1260
  return true;
1261
1261
  } catch {
1262
1262
  return false;
@@ -1,7 +1,7 @@
1
- import { o as createPluginLoaderLogger, s as loadSymiPlugins } from "./unified-runner-BIUJm_Iv.js";
1
+ import { o as createPluginLoaderLogger, s as loadSymiPlugins } from "./unified-runner-DZAjU6aB.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
3
- import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-Bnsyyeci.js";
4
- import { i as loadConfig } from "./config-D-PYSlE8.js";
3
+ import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-DOrZjOnW.js";
4
+ import { i as loadConfig } from "./config-D7SS4vdk.js";
5
5
 
6
6
  //#region src/plugins/status.ts
7
7
  const log = createSubsystemLogger("plugins");
@@ -1,7 +1,7 @@
1
1
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
2
- import { t as resolveSymiPackageRoot } from "./symi-root-DeCVdZB4.js";
3
- import { N as VERSION } from "./config-D-PYSlE8.js";
4
- import { n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-CduiCxPo.js";
2
+ import { t as resolveSymiPackageRoot } from "./symi-root-BQ0IpoW2.js";
3
+ import { N as VERSION } from "./config-D7SS4vdk.js";
4
+ import { n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-CxBGAP1E.js";
5
5
 
6
6
  //#region src/commands/status.update.ts
7
7
  async function getUpdateCheckResult(params) {
@@ -49,8 +49,8 @@ import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsX
49
49
  import { i as resolveApiKeyForProvider, n as getCustomProviderApiKey, o as resolveEnvApiKey, r as requireApiKey, s as resolveModelAuthMode, t as getApiKeyForModel } from "./model-auth-Byr7Gic_.js";
50
50
  import { b as OLLAMA_NATIVE_BASE_URL, c as normalizeGoogleModelId, t as ensureSymiModelsJson, x as createOllamaStreamFn } from "./models-config-Br7EjqgG.js";
51
51
  import { i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-DV3KhOhL.js";
52
- import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-Cypj1lBQ.js";
53
- import { a as parseGeminiAuth, c as resolveMemorySearchConfig, n as retryAsync, o as collectProviderApiKeysForExecution, s as executeWithApiKeyRotation } from "./manager-BfbQb9qM.js";
52
+ import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-BENbCb4f.js";
53
+ import { a as parseGeminiAuth, c as resolveMemorySearchConfig, n as retryAsync, o as collectProviderApiKeysForExecution, s as executeWithApiKeyRotation } from "./manager-BhIaahpm.js";
54
54
  import { f as runTasksWithConcurrency } from "./internal-D3mEiuyB.js";
55
55
  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-B2lBXhR0.js";
56
56
  import { n as resolveMarkdownTableMode } from "./markdown-tables-BEdkErjm.js";
@@ -81,7 +81,7 @@ import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normal
81
81
  import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-BiYW5XI-.js";
82
82
  import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-CmZ7XjmB.js";
83
83
  import { t as parseTimeoutMs } from "./parse-timeout-DKY8YAUj.js";
84
- import { n as registerMemoryCli } from "./memory-cli-DB7UIev4.js";
84
+ import { n as registerMemoryCli } from "./memory-cli-BIjwqjBx.js";
85
85
  import { i as resolveSlackThreadTs, n as deliverReplies, t as createSlackReplyDeliveryPlan } from "./replies-LM-arXEE.js";
86
86
  import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-4gtz_Ipq.js";
87
87
  import { createRequire } from "node:module";
@@ -28321,19 +28321,11 @@ function createWebSearchTool(options) {
28321
28321
  const provider = resolveSearchProvider(search);
28322
28322
  const perplexityConfig = resolvePerplexityConfig(search);
28323
28323
  const grokConfig = resolveGrokConfig(search);
28324
- const description = provider === "perplexity" ? "Search the web using Perplexity Sonar (direct or via OpenRouter). Returns AI-synthesized answers with citations from real-time web search." : provider === "grok" ? "Search the web using xAI Grok. Returns AI-synthesized answers with citations from real-time web search." : "Search the web using Brave Search API. Supports region-specific and localized search via country and language parameters. Returns titles, URLs, and snippets for fast research.";
28325
- const resolveActiveApiKey = () => {
28326
- if (provider === "perplexity") return resolvePerplexityApiKey(perplexityConfig)?.apiKey;
28327
- if (provider === "grok") return resolveGrokApiKey(grokConfig);
28328
- return resolveSearchApiKey(search);
28329
- };
28330
28324
  return {
28331
28325
  label: "Web Search",
28332
28326
  name: "web_search",
28333
- description,
28327
+ description: provider === "perplexity" ? "Search the web using Perplexity Sonar (direct or via OpenRouter). Returns AI-synthesized answers with citations from real-time web search." : provider === "grok" ? "Search the web using xAI Grok. Returns AI-synthesized answers with citations from real-time web search." : "Search the web using Brave Search API. Supports region-specific and localized search via country and language parameters. Returns titles, URLs, and snippets for fast research.",
28334
28328
  parameters: WebSearchSchema,
28335
- checkFn: () => Boolean(resolveActiveApiKey()),
28336
- requiredEnv: provider === "perplexity" ? ["PERPLEXITY_API_KEY", "OPENROUTER_API_KEY"] : provider === "grok" ? ["XAI_API_KEY"] : ["BRAVE_API_KEY"],
28337
28329
  execute: async (_toolCallId, args) => {
28338
28330
  const perplexityAuth = provider === "perplexity" ? resolvePerplexityApiKey(perplexityConfig) : void 0;
28339
28331
  const apiKey = provider === "perplexity" ? perplexityAuth?.apiKey : provider === "grok" ? resolveGrokApiKey(grokConfig) : resolveSearchApiKey(search);
@@ -47329,44 +47321,6 @@ function applyToolPolicyPipeline(params) {
47329
47321
  return filtered;
47330
47322
  }
47331
47323
 
47332
- //#endregion
47333
- //#region src/agents/tools/availability-filter.ts
47334
- const FORCE_ALL_TOOLS_ENV = "SYMI_FORCE_ALL_TOOLS";
47335
- /**
47336
- * Filter the tool palette by each tool's `checkFn`. Tools without a
47337
- * checkFn pass through unchanged. Throwing checkFns are treated as
47338
- * available (defensive). The `SYMI_FORCE_ALL_TOOLS=1` env bypasses the
47339
- * filter entirely.
47340
- *
47341
- * Pure function — does not mutate the input array.
47342
- */
47343
- function filterToolsByAvailability(tools) {
47344
- if (isTruthyEnvValue(process.env[FORCE_ALL_TOOLS_ENV])) return [...tools];
47345
- const out = [];
47346
- for (const tool of tools) {
47347
- if (!tool.checkFn) {
47348
- out.push(tool);
47349
- continue;
47350
- }
47351
- let available;
47352
- try {
47353
- available = tool.checkFn();
47354
- } catch (err) {
47355
- logVerbose(`tool availability: checkFn for "${getToolName(tool)}" threw — including tool anyway. ${String(err)}`);
47356
- out.push(tool);
47357
- continue;
47358
- }
47359
- if (available) out.push(tool);
47360
- else logVerbose(`tool availability: filtered out "${getToolName(tool)}" — checkFn returned false. Set ${FORCE_ALL_TOOLS_ENV}=1 to bypass this filter.`);
47361
- }
47362
- return out;
47363
- }
47364
- function getToolName(tool) {
47365
- const definition = tool.definition;
47366
- if (definition && typeof definition.name === "string") return definition.name;
47367
- return "(unknown tool)";
47368
- }
47369
-
47370
47324
  //#endregion
47371
47325
  //#region src/agents/pi-tools.ts
47372
47326
  function isOpenAIProvider(provider) {
@@ -47586,7 +47540,7 @@ function createSymiCodingTools(options) {
47586
47540
  root: sandboxRoot,
47587
47541
  bridge: sandboxFsBridge
47588
47542
  }), readEditTracker) : null;
47589
- const withHooks = filterToolsByAvailability(applyToolPolicyPipeline({
47543
+ const withHooks = applyToolPolicyPipeline({
47590
47544
  tools: applyOwnerOnlyToolPolicy([
47591
47545
  ...base,
47592
47546
  ...sandboxRoot ? allowWorkspaceWrites && sandboxedEditTool && sandboxedWriteTool ? [workspaceOnly ? wrapToolWorkspaceRootGuard(sandboxedEditTool, sandboxRoot) : sandboxedEditTool, workspaceOnly ? wrapToolWorkspaceRootGuard(sandboxedWriteTool, sandboxRoot) : sandboxedWriteTool] : [] : [],
@@ -47658,7 +47612,7 @@ function createSymiCodingTools(options) {
47658
47612
  label: "subagent tools.allow"
47659
47613
  }
47660
47614
  ]
47661
- })).map((tool) => normalizeToolParameters(tool, { modelProvider: options?.modelProvider })).map((tool) => wrapToolWithBeforeToolCallHook(tool, {
47615
+ }).map((tool) => normalizeToolParameters(tool, { modelProvider: options?.modelProvider })).map((tool) => wrapToolWithBeforeToolCallHook(tool, {
47662
47616
  agentId,
47663
47617
  sessionKey: options?.sessionKey,
47664
47618
  loopDetection: resolveToolLoopDetectionConfig({
@@ -1,7 +1,7 @@
1
1
  import { fileURLToPath } from "node:url";
2
2
  import path from "node:path";
3
3
  import fs from "node:fs";
4
- import fsPromises from "node:fs/promises";
4
+ import fs$1 from "node:fs/promises";
5
5
 
6
6
  //#region src/agents/skills/filter.ts
7
7
  function normalizeSkillFilter(skillFilter) {
@@ -26,7 +26,7 @@ function matchesSkillFilter(cached, next) {
26
26
  const CORE_PACKAGE_NAMES = new Set(["symi", "@symerian/symi"]);
27
27
  async function readPackageName(dir) {
28
28
  try {
29
- const raw = await fsPromises.readFile(path.join(dir, "package.json"), "utf-8");
29
+ const raw = await fs$1.readFile(path.join(dir, "package.json"), "utf-8");
30
30
  const parsed = JSON.parse(raw);
31
31
  return typeof parsed.name === "string" ? parsed.name : null;
32
32
  } catch {
@@ -6,7 +6,7 @@ import "./model-selection-BisYvTBb.js";
6
6
  import "./reply-prefix-i-FPYcoQ.js";
7
7
  import "./plugins-CZ_mYwXq.js";
8
8
  import "./replies-BYF1gbJf.js";
9
- import { n as runAgentTurn } from "./pi-embedded-C7mJzGIf.js";
9
+ import { n as runAgentTurn } from "./pi-embedded-BL3_b-H_.js";
10
10
  import "./deliver-Cjyb6h4g.js";
11
11
  import "./diagnostic-BdRnGknC.js";
12
12
  import "./diagnostic-session-state-DpxCUzoM.js";
@@ -23,7 +23,7 @@ import "./errors-BEU7IHU6.js";
23
23
  import "./tokens-yWO1wD7Z.js";
24
24
  import "./thinking-DgjGxdSP.js";
25
25
  import "./paths-BsT3BvfH.js";
26
- import "./manager-Bryhc0Ip.js";
26
+ import "./manager-BsQIpjy1.js";
27
27
  import "./github-copilot-token-dYUr1mDQ.js";
28
28
  import "./sqlite-D8iYC_CU.js";
29
29
  import "./markdown-tables-jQzXAsf3.js";
@@ -1,91 +1,91 @@
1
- import { t as runAgentTurn } from "./unified-runner-BIUJm_Iv.js";
1
+ import { t as runAgentTurn } from "./unified-runner-DZAjU6aB.js";
2
2
  import "./registry-Sbac4a4z.js";
3
3
  import "./paths-By0XjHBk.js";
4
4
  import "./utils-CTPsqyE_.js";
5
5
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
6
- import "./auth-profiles-D5nYBj_Z.js";
6
+ import "./auth-profiles-Ce7R_25e.js";
7
7
  import "./exec-DuYbft0z.js";
8
- import "./agent-scope-Bnsyyeci.js";
9
- import "./model-selection-CCTzD29o.js";
10
- import "./file-lock-2AecMjCa.js";
8
+ import "./agent-scope-DOrZjOnW.js";
9
+ import "./model-selection-7wdmO-Iw.js";
10
+ import "./file-lock-BVUYnlQv.js";
11
11
  import "./agent-paths-BbZSGrUA.js";
12
- import "./pi-embedded-helpers-y3vJmW6T.js";
13
- import "./config-D-PYSlE8.js";
12
+ import "./pi-embedded-helpers-B5cWV7_y.js";
13
+ import "./config-D7SS4vdk.js";
14
14
  import "./boolean-CbZoNRMn.js";
15
15
  import "./env-BRnPI9sO.js";
16
16
  import "./shell-env-Dc3iU7HK.js";
17
17
  import "./manifest-registry-D1MLZEjS.js";
18
- import "./sandbox-DQCaejcD.js";
19
- import "./chrome-pFBxO63W.js";
18
+ import "./sandbox-Dx8IMw-E.js";
19
+ import "./chrome-rzK8edU7.js";
20
20
  import "./tailscale-DpKBMIvx.js";
21
21
  import "./auth-Bkx-QuRN.js";
22
- import "./server-context-CXVq7gZ7.js";
22
+ import "./server-context--mmXXEkE.js";
23
23
  import "./frontmatter-B_jqcova.js";
24
- import "./skills-CYcBtLGH.js";
25
- import "./routes-zpAUwtCG.js";
24
+ import "./skills-BwDmcZdt.js";
25
+ import "./routes-C-rIjd8Z.js";
26
26
  import "./redact-B3O-RBO1.js";
27
27
  import "./errors-bI7Tdx75.js";
28
- import "./fs-safe-B0Is-oLk.js";
29
- import "./paths-BWqg8NZT.js";
28
+ import "./fs-safe-BdejYjW8.js";
29
+ import "./paths-DObzwe08.js";
30
30
  import "./ssrf-DOZRI5XH.js";
31
- import "./image-ops-BzCBIakN.js";
32
- import "./ports-CB_Iu83U.js";
31
+ import "./image-ops-L70xVnpG.js";
32
+ import "./ports-gxLM5ahL.js";
33
33
  import "./trash-_YhavPQI.js";
34
- import "./sessions-aSo5jsmg.js";
34
+ import "./sessions-optZRB57.js";
35
35
  import "./dock-hF45sewN.js";
36
36
  import "./message-channel-DgjXWzf-.js";
37
37
  import "./plugins-CF5skkHh.js";
38
- import "./send-QscYkkNh.js";
38
+ import "./send-Cxu1tl56.js";
39
39
  import "./paths-BtvQ7JvU.js";
40
40
  import "./thinking-COroyVA5.js";
41
41
  import "./tokens-0yh2UnJq.js";
42
- import "./deliver-C79-Umbk.js";
42
+ import "./deliver-DB4v0Tyl.js";
43
43
  import "./diagnostic-DbT9t0Sh.js";
44
44
  import "./diagnostic-session-state-DnkpMfCl.js";
45
- import "./model-auth-_C07_3Yr.js";
45
+ import "./model-auth-1EAQvYRv.js";
46
46
  import "./github-copilot-token-D-FdDfee.js";
47
- import "./models-config-Dp5-tBqs.js";
48
- import "./pi-auth-json-D-vdh-nY.js";
47
+ import "./models-config-CRnTzdFs.js";
48
+ import "./pi-auth-json-Db8XJVGL.js";
49
49
  import "./session-cost-usage-D6Ocwmq1.js";
50
- import "./session-utils-lXjJoBxe.js";
51
- import "./with-timeout-D1qzvPE0.js";
52
- import "./reply-prefix-CtZtkTJK.js";
53
- import "./memory-DgDnTEcB.js";
54
- import "./manager-DyYRwHZt.js";
55
- import "./sqlite-BpogPlQW.js";
50
+ import "./session-utils-BZnPW904.js";
51
+ import "./with-timeout-B5zAsivw.js";
52
+ import "./reply-prefix-BFNeXT65.js";
53
+ import "./memory-B4DsKRSc.js";
54
+ import "./manager-BLg6zbeA.js";
55
+ import "./sqlite-Cod7C5ba.js";
56
56
  import "./chunk-BxfKjCUx.js";
57
57
  import "./markdown-tables-CS1Tvb3z.js";
58
58
  import "./fetch-guard-JHxT9355.js";
59
- import "./local-roots-2Jb79HZ8.js";
59
+ import "./local-roots-CgDCgCuM.js";
60
60
  import "./commands-DUzLGgEZ.js";
61
- import "./commands-registry-BjcGLk4v.js";
62
- import "./client-T5P9umyG.js";
63
- import "./call-CW8U1BPq.js";
64
- import "./pairing-token-B703A1U3.js";
61
+ import "./commands-registry-VfAQOVZO.js";
62
+ import "./client-BzUAFrla.js";
63
+ import "./call-BouPakqe.js";
64
+ import "./pairing-token-Dcy37-4s.js";
65
65
  import "./tool-display-DFOL6UQ9.js";
66
- import "./skills-remote-BcRQTDsZ.js";
67
- import "./workspace-dirs-DCICLTHx.js";
66
+ import "./skills-remote-bz71Bstn.js";
67
+ import "./workspace-dirs-jKFQf7of.js";
68
68
  import "./pi-model-discovery-ClQLvlCW.js";
69
- import "./model-catalog-CeqDEWGz.js";
70
- import "./skill-commands-C9WuAfb2.js";
71
- import "./pairing-store-Be-ZQK87.js";
69
+ import "./model-catalog-DQTmHZK7.js";
70
+ import "./skill-commands-yPirQFOb.js";
71
+ import "./pairing-store-BNhJOnWn.js";
72
72
  import "./exec-approvals-DioSaIeH.js";
73
- import "./nodes-screen-Cp5QP3ET.js";
74
- import "./control-service-y53w3Jzy.js";
73
+ import "./nodes-screen-De9ma6e1.js";
74
+ import "./control-service-Ry7Le68N.js";
75
75
  import "./stagger-DUVGiPYV.js";
76
76
  import "./channel-selection-DF4bza2Q.js";
77
77
  import "./delivery-queue-RUd4NhRw.js";
78
78
  import "./bindings-CLS_owm_.js";
79
- import "./resolve-route-B0i_o4Fo.js";
79
+ import "./resolve-route-Zww0Y-HJ.js";
80
80
  import "./links-TQwptN6q.js";
81
81
  import "./cli-utils-tNdOjVQI.js";
82
82
  import "./help-format-CPT6NY3h.js";
83
83
  import "./progress-HNhsbm0E.js";
84
- import "./memory-cli-CfJkD7mO.js";
84
+ import "./memory-cli-DotHyA76.js";
85
85
  import "./logging-Czh4x_NQ.js";
86
- import "./replies-D3cffD5N.js";
87
- import "./pi-tools.policy-ji-L-Mpv.js";
88
- import "./model-DbILYCfo.js";
86
+ import "./replies-DzsYQ8Md.js";
87
+ import "./pi-tools.policy-BdGVEMZn.js";
88
+ import "./model-DsMHOvMn.js";
89
89
 
90
90
  //#region src/memory/synthesis.ts
91
91
  const log = createSubsystemLogger("memory/synthesis");
@@ -17,7 +17,7 @@ import "./client-BqT7xONl.js";
17
17
  import "./call-GzGqMHAx.js";
18
18
  import "./message-channel-DXToSaWK.js";
19
19
  import "./pairing-token-B-OTYROz.js";
20
- import { T as runAgentTurn } from "./subagent-registry-DWemyjbN.js";
20
+ import { T as runAgentTurn } from "./subagent-registry-Dkif1XYO.js";
21
21
  import "./sessions-DHPf5TzB.js";
22
22
  import "./plugins-BsEhWvLn.js";
23
23
  import "./send-BBfSp-8Q.js";
@@ -47,8 +47,8 @@ import "./model-auth-Byr7Gic_.js";
47
47
  import "./github-copilot-token-B5y4__YM.js";
48
48
  import "./models-config-Br7EjqgG.js";
49
49
  import "./reply-prefix-DV3KhOhL.js";
50
- import "./memory-Cypj1lBQ.js";
51
- import "./manager-BfbQb9qM.js";
50
+ import "./memory-BENbCb4f.js";
51
+ import "./manager-BhIaahpm.js";
52
52
  import "./sqlite-9jF_eajd.js";
53
53
  import "./chunk-B2lBXhR0.js";
54
54
  import "./markdown-tables-BEdkErjm.js";
@@ -78,7 +78,7 @@ import "./links-BDe4dm1J.js";
78
78
  import "./cli-utils-BhfE5XS2.js";
79
79
  import "./help-format-CbgFRc-H.js";
80
80
  import "./progress-CqV5lJkt.js";
81
- import "./memory-cli-DB7UIev4.js";
81
+ import "./memory-cli-BIjwqjBx.js";
82
82
  import "./logging-BeW3kpQA.js";
83
83
  import "./replies-LM-arXEE.js";
84
84
  import "./pi-tools.policy-4gtz_Ipq.js";
@@ -3,7 +3,7 @@ import "./registry-C-JddWwo.js";
3
3
  import "./agent-scope-B1Ina6jV.js";
4
4
  import { t as createSubsystemLogger } from "./subsystem-DzRUKS9f.js";
5
5
  import "./workspace-CsaDUuDn.js";
6
- import { t as runAgentTurn } from "./unified-runner-DPWNhQQA.js";
6
+ import { t as runAgentTurn } from "./unified-runner-DAWxqcS9.js";
7
7
  import "./auth-profiles-BSw0aQND.js";
8
8
  import "./model-selection-BqshlIZc.js";
9
9
  import "./deliver-DTRkeYm3.js";
@@ -25,7 +25,7 @@ import "./paths-BsT3BvfH.js";
25
25
  import "./tokens-D_vCJSzF.js";
26
26
  import "./diagnostic-BALvP9wI.js";
27
27
  import "./diagnostic-session-state-BDfanaOY.js";
28
- import "./manager-C5FGNRjL.js";
28
+ import "./manager-CtDuNn2T.js";
29
29
  import "./github-copilot-token-uhEBNQfj.js";
30
30
  import "./pi-auth-json-DCGR3yfh.js";
31
31
  import "./reply-prefix-D0NzzC4I.js";
@@ -3,20 +3,20 @@ import "./paths-By0XjHBk.js";
3
3
  import "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import "./exec-DuYbft0z.js";
6
- import "./agent-scope-Bnsyyeci.js";
7
- import "./model-selection-CCTzD29o.js";
8
- import "./config-D-PYSlE8.js";
6
+ import "./agent-scope-DOrZjOnW.js";
7
+ import "./model-selection-7wdmO-Iw.js";
8
+ import "./config-D7SS4vdk.js";
9
9
  import "./boolean-CbZoNRMn.js";
10
10
  import "./env-BRnPI9sO.js";
11
11
  import "./shell-env-Dc3iU7HK.js";
12
12
  import "./manifest-registry-D1MLZEjS.js";
13
13
  import "./message-channel-DgjXWzf-.js";
14
- import "./client-T5P9umyG.js";
15
- import "./call-CW8U1BPq.js";
16
- import "./pairing-token-B703A1U3.js";
14
+ import "./client-BzUAFrla.js";
15
+ import "./call-BouPakqe.js";
16
+ import "./pairing-token-Dcy37-4s.js";
17
17
  import { t as formatDocsLink } from "./links-TQwptN6q.js";
18
18
  import "./progress-HNhsbm0E.js";
19
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-CLzM6ugo.js";
19
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-DNq7EMhm.js";
20
20
 
21
21
  //#region src/cli/system-cli.ts
22
22
  function registerSystemCli(program) {
@@ -3,7 +3,7 @@ import { n as runExec, t as runCommandWithTimeout } from "./exec-DuYbft0z.js";
3
3
  import { d as resolveGatewaySystemdServiceName, l as resolveGatewayProfileSuffix, u as resolveGatewayServiceDescription } from "./constants-ChnKXZKi.js";
4
4
  import path from "node:path";
5
5
  import os from "node:os";
6
- import fsPromises from "node:fs/promises";
6
+ import fs from "node:fs/promises";
7
7
  import { execFile } from "node:child_process";
8
8
 
9
9
  //#region src/daemon/exec-file.ts
@@ -289,7 +289,7 @@ function resolveSystemdUserUnitPath(env) {
289
289
  async function readSystemdServiceExecStart(env) {
290
290
  const unitPath = resolveSystemdUnitPath(env);
291
291
  try {
292
- const content = await fsPromises.readFile(unitPath, "utf8");
292
+ const content = await fs.readFile(unitPath, "utf8");
293
293
  let execStart = "";
294
294
  let workingDirectory = "";
295
295
  const environment = {};
@@ -360,7 +360,7 @@ async function assertSystemdAvailable() {
360
360
  async function installSystemdService({ env, stdout, programArguments, workingDirectory, environment, description }) {
361
361
  await assertSystemdAvailable();
362
362
  const unitPath = resolveSystemdUnitPath(env);
363
- await fsPromises.mkdir(path.dirname(unitPath), { recursive: true });
363
+ await fs.mkdir(path.dirname(unitPath), { recursive: true });
364
364
  const unit = buildSystemdUnit({
365
365
  description: resolveGatewayServiceDescription({
366
366
  env,
@@ -371,7 +371,7 @@ async function installSystemdService({ env, stdout, programArguments, workingDir
371
371
  workingDirectory,
372
372
  environment
373
373
  });
374
- await fsPromises.writeFile(unitPath, unit, "utf8");
374
+ await fs.writeFile(unitPath, unit, "utf8");
375
375
  const unitName = `${resolveGatewaySystemdServiceName(env.SYMI_PROFILE)}.service`;
376
376
  const reload = await execSystemctl(["--user", "daemon-reload"]);
377
377
  if (reload.code !== 0) throw new Error(`systemctl daemon-reload failed: ${reload.stderr || reload.stdout}`.trim());
@@ -403,7 +403,7 @@ async function uninstallSystemdService({ env, stdout }) {
403
403
  ]);
404
404
  const unitPath = resolveSystemdUnitPath(env);
405
405
  try {
406
- await fsPromises.unlink(unitPath);
406
+ await fs.unlink(unitPath);
407
407
  stdout.write(`${formatLine("Removed systemd service", unitPath)}\n`);
408
408
  } catch {
409
409
  stdout.write(`Systemd service not found at ${unitPath}\n`);