@symerian/symi 3.4.25 → 3.4.27
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.
- package/dist/{agent-N_J2cDO6.js → agent-CiqPWDUd.js} +18 -18
- package/dist/{agent-CQlyTNu-.js → agent-DOOj3Gzb.js} +1 -1
- package/dist/{agent-scope-DOrZjOnW.js → agent-scope-Bnsyyeci.js} +18 -18
- package/dist/{agents-1xmRO246.js → agents-BBQfFoen.js} +2 -2
- package/dist/{agents.config-BJ9RIQlb.js → agents.config-Dm3oLpYK.js} +1 -1
- package/dist/{audit-DCwHws4M.js → audit-BSX7fMfc.js} +20 -20
- package/dist/{auth-choice-Ryx7oj6G.js → auth-choice-BYbTjWcs.js} +1 -1
- package/dist/{auth-choice-DwXdS4c2.js → auth-choice-rhBmet5i.js} +11 -11
- package/dist/{auth-profiles-Ce7R_25e.js → auth-profiles-D5nYBj_Z.js} +2 -2
- package/dist/{auth-token-DgRRSbEX.js → auth-token-CAV1oLQG.js} +3 -3
- package/dist/{banner-CxMQaUgh.js → banner-C1qG5Rm9.js} +1 -1
- package/dist/{browser-cli-C3hfJNZy.js → browser-cli-De8jg4-F.js} +9 -9
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +4 -4
- package/dist/bundled/session-memory/handler.js +4 -4
- package/dist/{call-BouPakqe.js → call-CW8U1BPq.js} +9 -9
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-n9C_ovb1.js → channel-options-BsXUgCMq.js} +1 -1
- package/dist/{channel-options-WR29vfWK.js → channel-options-CJD7jwYg.js} +1 -1
- package/dist/{channels-cli-DbFGI3vF.js → channels-cli-Bao4VNbH.js} +57 -57
- package/dist/{channels-cli-Cs-Uq67O.js → channels-cli-Dxn5n9e4.js} +7 -7
- package/dist/{chrome-B7-rO4i9.js → chrome-BKUACyeO.js} +7 -7
- package/dist/{chrome-C_I81hbq.js → chrome-DPjznJQ-.js} +7 -7
- package/dist/{chrome-rzK8edU7.js → chrome-pFBxO63W.js} +2 -2
- package/dist/{cli-D55pCJ8Q.js → cli-CrhLSz3t.js} +4 -4
- package/dist/{cli-7ceDvtPc.js → cli-WP38F9C5.js} +45 -45
- package/dist/{client-BzUAFrla.js → client-T5P9umyG.js} +1 -1
- package/dist/{command-registry-DAy62yhH.js → command-registry-DoXcG7FZ.js} +10 -10
- package/dist/{commands-registry-VfAQOVZO.js → commands-registry-BjcGLk4v.js} +1 -1
- package/dist/{completion-cli-Bc1jojml.js → completion-cli-C0SXi7ya.js} +12 -12
- package/dist/{completion-cli-Bh-Y2NVp.js → completion-cli-DaWi3_ux.js} +2 -2
- package/dist/{config-D7SS4vdk.js → config-D-PYSlE8.js} +2 -2
- package/dist/{config-cli-DupKETmw.js → config-cli-DS67KtKf.js} +4 -4
- package/dist/{config-cli-BxRcn2oD.js → config-cli-DXKm0pS5.js} +1 -1
- package/dist/{config-guard-BGAQzX2K.js → config-guard-xLTTFANi.js} +6 -6
- package/dist/{config-validation-COcIIMNe.js → config-validation-C4wGq3rz.js} +1 -1
- package/dist/{configure-0XYm59w7.js → configure-B99YJJb0.js} +14 -14
- package/dist/{configure-BilM_Fgn.js → configure-CzO4_jJJ.js} +2 -2
- package/dist/{consolidate-DI20-Wtn.js → consolidate-BB4BOQIN.js} +6 -6
- package/dist/{control-service-Ry7Le68N.js → control-service-y53w3Jzy.js} +4 -4
- package/dist/{control-ui-assets-DuDhl0co.js → control-ui-assets-Dryy7mCE.js} +1 -1
- package/dist/{cron-cli-DHFgjr_X.js → cron-cli-BMblAFRK.js} +7 -7
- package/dist/{daemon-cli-fC2R9YZd.js → daemon-cli-BJGNf5qV.js} +11 -11
- package/dist/{daemon-runtime-tZgIbDPz.js → daemon-runtime-u4p9jsEF.js} +10 -10
- package/dist/{deliver-DB4v0Tyl.js → deliver-C79-Umbk.js} +2 -2
- package/dist/{deliver-oWGJwzFf.js → deliver-Cjyb6h4g.js} +4 -4
- package/dist/{deliver-DyO3QD8O.js → deliver-DTRkeYm3.js} +4 -4
- package/dist/{deps-BlmO-MfQ.js → deps-UA1UBhl7.js} +1 -1
- package/dist/{devices-cli-DtkKN4l0.js → devices-cli-wsTs-nti.js} +6 -6
- package/dist/{diagnostics-tVJR9V0_.js → diagnostics-oW0LBW-t.js} +5 -5
- package/dist/{directory-cli-Bfy_ejW2.js → directory-cli-D8As6t8Z.js} +3 -3
- package/dist/{dm-policy-shared-CBlUyDSX.js → dm-policy-shared-DRJrFKqJ.js} +1 -1
- package/dist/{dns-cli-DzKaV6NZ.js → dns-cli-BKOTBn3n.js} +3 -3
- package/dist/{docs-cli-a90_8wuN.js → docs-cli-D5j7Nmz2.js} +1 -1
- package/dist/{doctor-completion-BZJWX3Dr.js → doctor-completion-B1YCzbvi.js} +1 -1
- package/dist/{doctor-completion-B6OPl_GZ.js → doctor-completion-mev5PRjN.js} +2 -2
- package/dist/{doctor-config-flow-30ZEvATb.js → doctor-config-flow-Uv41seME.js} +9 -9
- package/dist/entry.js +1 -1
- package/dist/{exec-approvals-cli-C3gZAwV8.js → exec-approvals-cli-B4ry9s5r.js} +13 -13
- package/dist/extensionAPI.js +4 -4
- package/dist/{file-lock-BVUYnlQv.js → file-lock-2AecMjCa.js} +8 -8
- package/dist/{fs-safe-BdejYjW8.js → fs-safe-B0Is-oLk.js} +6 -6
- package/dist/{gateway-cli-CyhLb-zS.js → gateway-cli-B3JVj_dv.js} +98 -98
- package/dist/{gateway-cli-DQhYa6AL.js → gateway-cli-Chnp6icp.js} +10 -10
- package/dist/{gateway-rpc-DNq7EMhm.js → gateway-rpc-CLzM6ugo.js} +1 -1
- package/dist/{glass-ui-ws-SJVljtUx.js → glass-ui-ws--GjxFRyX.js} +67 -67
- package/dist/{glass-ui-ws-CLDbMDPk.js → glass-ui-ws-5o8dvEZO.js} +8 -8
- package/dist/{health-DZ0aipDZ.js → health-D2th0Ip6.js} +4 -4
- package/dist/{hooks-cli-BMRj13QU.js → hooks-cli-B4Nvp9AV.js} +59 -59
- package/dist/{hooks-cli-BVtdP5x7.js → hooks-cli-B_sZth4r.js} +5 -5
- package/dist/{image-ops-L70xVnpG.js → image-ops-BzCBIakN.js} +10 -10
- package/dist/index.js +52 -52
- package/dist/{inspect-CXsOujVt.js → inspect-U3g9owQ8.js} +4 -4
- package/dist/{install-safe-path-D5gi-nfu.js → install-safe-path-BwMMOh9z.js} +11 -11
- package/dist/{installs-DF_LhGX6.js → installs-vdi1BESF.js} +10 -10
- package/dist/{internal-DVCddhhN.js → internal-csqU78gW.js} +9 -9
- package/dist/{lifecycle-core-Bvdl2ShM.js → lifecycle-core-BfmNlC-k.js} +5 -5
- package/dist/llm-slug-generator.js +4 -4
- package/dist/{local-roots-CgDCgCuM.js → local-roots-2Jb79HZ8.js} +1 -1
- package/dist/{logs-cli-mdSEYBKS.js → logs-cli-COZzdFu6.js} +7 -7
- package/dist/{manager-BhIaahpm.js → manager-BfbQb9qM.js} +1 -1
- package/dist/{manager-DhHNnMyK.js → manager-Bryhc0Ip.js} +1 -1
- package/dist/{manager-BIt2_nlu.js → manager-C5FGNRjL.js} +1 -1
- package/dist/{manager-BLg6zbeA.js → manager-DyYRwHZt.js} +15 -15
- package/dist/{memory-BENbCb4f.js → memory-Cypj1lBQ.js} +2 -2
- package/dist/{memory-B4DsKRSc.js → memory-DgDnTEcB.js} +5 -5
- package/dist/{memory-cli-DotHyA76.js → memory-cli-CfJkD7mO.js} +12 -12
- package/dist/{memory-cli-BIjwqjBx.js → memory-cli-DB7UIev4.js} +2 -2
- package/dist/{model-DsMHOvMn.js → model-DbILYCfo.js} +1 -1
- package/dist/{model-auth-1EAQvYRv.js → model-auth-_C07_3Yr.js} +2 -2
- package/dist/{model-catalog-DQTmHZK7.js → model-catalog-CeqDEWGz.js} +3 -3
- package/dist/{model-picker-D4TY_tPx.js → model-picker-C_f6MALt.js} +5 -5
- package/dist/{model-selection-7wdmO-Iw.js → model-selection-CCTzD29o.js} +1 -1
- package/dist/{models-CmToZKBp.js → models-Bpqeds64.js} +2 -2
- package/dist/{models-cli-CZgkOUZB.js → models-cli-BUWfj5iJ.js} +55 -55
- package/dist/{models-cli-Di7iKhD4.js → models-cli-Bc47WFhD.js} +6 -6
- package/dist/{models-config-CRnTzdFs.js → models-config-Dp5-tBqs.js} +8 -8
- package/dist/{node-cli-BXv9SEDG.js → node-cli-BdjmGI32.js} +27 -27
- package/dist/{node-service-CrDVFWQl.js → node-service-DphkTjBV.js} +1 -1
- package/dist/{nodes-cli-Cim3ANNU.js → nodes-cli-BChJzcKY.js} +10 -10
- package/dist/{nodes-screen-De9ma6e1.js → nodes-screen-Cp5QP3ET.js} +4 -4
- package/dist/{npm-registry-spec-YMWTMnm_.js → npm-registry-spec-CqVgiBCf.js} +9 -9
- package/dist/{onboard-BXI02b3e.js → onboard-BbfERyKU.js} +1 -1
- package/dist/{onboard-CuLvp4Ds.js → onboard-C0nMMiiS.js} +15 -15
- package/dist/{onboard-channels-A6_QP7MR.js → onboard-channels-CMp9YXHC.js} +1 -1
- package/dist/{onboard-channels-E5NIYGJz.js → onboard-channels-CmsfVut5.js} +4 -4
- package/dist/{onboard-custom-BrtjWDlX.js → onboard-custom-BfHczxx0.js} +3 -3
- package/dist/{onboard-helpers---sZ9pdZ.js → onboard-helpers-OB_xKQze.js} +8 -8
- package/dist/{onboard-hooks-CtIRdncr.js → onboard-hooks-BA22KYCG.js} +1 -1
- package/dist/{onboard-remote-BUB3VPBP.js → onboard-remote-Dv2Uz8Ru.js} +1 -1
- package/dist/{onboard-skills-Cs3BZ4VJ.js → onboard-skills-BzxofI4T.js} +3 -3
- package/dist/{onboarding-BeYl1Egj.js → onboarding-DoYMfCjS.js} +3 -3
- package/dist/{onboarding-BWMBA6cP.js → onboarding-vgZFhH5N.js} +12 -12
- package/dist/{onboarding.finalize-CH8dBgA2.js → onboarding.finalize-BYHDzz2i.js} +31 -31
- package/dist/{onboarding.finalize-Bk-XW8b3.js → onboarding.finalize-Dj0xG8pk.js} +4 -4
- package/dist/{onboarding.gateway-config-arRNxrI9.js → onboarding.gateway-config-CDRLfIZM.js} +8 -8
- package/dist/{openai-model-default-XudD4Xik.js → openai-model-default-Dl21Ivjc.js} +2 -2
- package/dist/{pairing-cli-NDavTm1_.js → pairing-cli-C2_Zobhz.js} +5 -5
- package/dist/{pairing-store-BNhJOnWn.js → pairing-store-Be-ZQK87.js} +1 -1
- package/dist/{pairing-token-Dcy37-4s.js → pairing-token-B703A1U3.js} +7 -7
- package/dist/{paths-DObzwe08.js → paths-BWqg8NZT.js} +1 -1
- package/dist/{pi-auth-json-Db8XJVGL.js → pi-auth-json-D-vdh-nY.js} +6 -6
- package/dist/{pi-embedded-0I7WdtRz.js → pi-embedded-C7mJzGIf.js} +59 -13
- package/dist/{pi-embedded-helpers-B5cWV7_y.js → pi-embedded-helpers-y3vJmW6T.js} +6 -6
- package/dist/{pi-tools.policy-BdGVEMZn.js → pi-tools.policy-ji-L-Mpv.js} +3 -3
- package/dist/{plugin-auto-enable-B_lNp6yM.js → plugin-auto-enable-Ctbn2w4Q.js} +1 -1
- package/dist/{plugin-registry-DovNSdK0.js → plugin-registry-D2ZbwBU_.js} +3 -3
- package/dist/{plugin-registry-CAdIrLmG.js → plugin-registry-pKaJ4ltN.js} +1 -1
- package/dist/plugin-sdk/agents/pi-tools.types.d.ts +1 -2
- package/dist/plugin-sdk/agents/tools/availability-filter.d.ts +10 -0
- package/dist/plugin-sdk/agents/tools/common.d.ts +30 -0
- package/dist/{plugins-cli-ZG4PxNTC.js → plugins-cli-CoHiV4BX.js} +54 -54
- package/dist/{plugins-cli-JzKO-vmR.js → plugins-cli-uo8lcB7v.js} +5 -5
- package/dist/{ports-gxLM5ahL.js → ports-CB_Iu83U.js} +2 -2
- package/dist/{ports-C3ZSkRGq.js → ports-ukrEAkOP.js} +1 -1
- package/dist/{program-context-ByiEP1Lk.js → program-context-B1ZbQmLL.js} +38 -38
- package/dist/{program-BbfU4idg.js → program-rzYjZKRz.js} +10 -10
- package/dist/{prompt-select-styled-DvrG_zWV.js → prompt-select-styled-CX0v66wx.js} +38 -38
- package/dist/{prompt-select-styled-CWH2Mcrb.js → prompt-select-styled-F6P-rvFI.js} +4 -4
- package/dist/{provider-auth-helpers-CMQexdSl.js → provider-auth-helpers-Ck98bkHV.js} +1 -1
- package/dist/{provider-auth-helpers-2x7YxT5F.js → provider-auth-helpers-_jn9PngO.js} +6 -6
- package/dist/{push-apns-CtWwPxRj.js → push-apns-BtMtpzEm.js} +1 -1
- package/dist/{push-apns-eGdGU3r7.js → push-apns-CmeoBcIQ.js} +4 -4
- package/dist/{pw-ai-BOOB8qoi.js → pw-ai-BFS9ezWe.js} +1 -1
- package/dist/{pw-ai-tgngV3iZ.js → pw-ai-CQJsGI1b.js} +7 -7
- package/dist/{pw-ai-Cx-Ko_FL.js → pw-ai-D2pEVS5n.js} +1 -1
- package/dist/{qmd-manager-qV_04VKG.js → qmd-manager-DawTY2mB.js} +19 -19
- package/dist/{qr-cli-Vo1XL6B2.js → qr-cli-DKowtQcM.js} +3 -3
- package/dist/{register.agent-Dwkya1rv.js → register.agent-0hWBZXD7.js} +67 -67
- package/dist/{register.agent-DZE9NBNx.js → register.agent-_UqSBmt5.js} +9 -9
- package/dist/{register.configure-DCpbCHR0.js → register.configure-CgQ6sqtQ.js} +70 -70
- package/dist/{register.configure-CD8WkXo8.js → register.configure-KrTtvKSp.js} +8 -8
- package/dist/{register.maintenance-CxVeo_7j.js → register.maintenance-DDSfzFoo.js} +9 -9
- package/dist/{register.maintenance-Bqjj77CZ.js → register.maintenance-DjZeknO6.js} +67 -67
- package/dist/{register.message-tcJN7-E3.js → register.message-DSwwDcGi.js} +5 -5
- package/dist/{register.message-uhAmNxoO.js → register.message-DTZJ5OiL.js} +47 -47
- package/dist/{register.onboard-F6d_Wrv1.js → register.onboard-B8k5phG7.js} +25 -25
- package/dist/{register.onboard-Rm5t0yxX.js → register.onboard-BToIZTIS.js} +2 -2
- package/dist/{register.setup-CcHxpsUT.js → register.setup-1fexz2oW.js} +28 -28
- package/dist/{register.setup-C2datfZK.js → register.setup-BdUewOo1.js} +2 -2
- package/dist/{register.status-health-sessions-DIUDRMqm.js → register.status-health-sessions-0RyA2cXf.js} +41 -41
- package/dist/{register.status-health-sessions-DFVjS9Hy.js → register.status-health-sessions-eBaeXIvo.js} +3 -3
- package/dist/{register.subclis-D9uGnVGm.js → register.subclis-tX3BslaT.js} +9 -9
- package/dist/{replies-DzsYQ8Md.js → replies-D3cffD5N.js} +1 -1
- package/dist/{reply-prefix-BFNeXT65.js → reply-prefix-CtZtkTJK.js} +1 -1
- package/dist/{resolve-route-Zww0Y-HJ.js → resolve-route-B0i_o4Fo.js} +1 -1
- package/dist/{routes-C-rIjd8Z.js → routes-zpAUwtCG.js} +10 -10
- package/dist/{rpc-BkFkeuJ6.js → rpc-DhsDKVo-.js} +1 -1
- package/dist/{run-main-HkbyvIDy.js → run-main-DIl_Kl0B.js} +17 -17
- package/dist/{sandbox-Dx8IMw-E.js → sandbox-DQCaejcD.js} +18 -18
- package/dist/{sandbox-cli-BFkLKdlk.js → sandbox-cli-CbvyZs1z.js} +13 -13
- package/dist/{security-cli-BEpQ_rO1.js → security-cli-CbJxNYZx.js} +29 -29
- package/dist/{send-Cxu1tl56.js → send-QscYkkNh.js} +7 -7
- package/dist/{server-context--mmXXEkE.js → server-context-CXVq7gZ7.js} +5 -5
- package/dist/{server-methods-DJ8eiTu1.js → server-methods-CpFBGxWI.js} +6 -6
- package/dist/{server-methods-RtjWUhkv.js → server-methods-DPxjPGr0.js} +58 -58
- package/dist/{server-node-events-CT8fFtBQ.js → server-node-events-2SUW10k3.js} +6 -6
- package/dist/{server-node-events-DQ1iCUgY.js → server-node-events-B_BPbi7z.js} +48 -48
- package/dist/{service-CyEDtYLq.js → service-Cm4-5AH9.js} +15 -15
- package/dist/{session-dirs-CXErIzZq.js → session-dirs-BypCYFN3.js} +2 -2
- package/dist/{session-utils-BZnPW904.js → session-utils-lXjJoBxe.js} +14 -14
- package/dist/{sessions-optZRB57.js → sessions-aSo5jsmg.js} +10 -10
- package/dist/{shared-DJFwvlUi.js → shared-BI-gOZsD.js} +3 -3
- package/dist/{shared-Ctok0Bcs.js → shared-DDX_4ypC.js} +1 -1
- package/dist/{skill-commands-yPirQFOb.js → skill-commands-C9WuAfb2.js} +4 -4
- package/dist/{skill-scanner-BBwesm0w.js → skill-scanner-CFqMkfZW.js} +5 -5
- package/dist/{skills-BwDmcZdt.js → skills-CYcBtLGH.js} +4 -4
- package/dist/{skills-cli-gC5ETdly.js → skills-cli-BgyaAQoj.js} +7 -7
- package/dist/{skills-install-CLN_Ks5r.js → skills-install-MGsx6q5Z.js} +3 -3
- package/dist/{skills-remote-bz71Bstn.js → skills-remote-BcRQTDsZ.js} +3 -3
- package/dist/{skills-status-iltfI_bO.js → skills-status-CbSdFlvm.js} +1 -1
- package/dist/{sqlite-Cod7C5ba.js → sqlite-BpogPlQW.js} +5 -5
- package/dist/{status-Cpz64Vy_.js → status-BVYDUlnp.js} +1 -1
- package/dist/{status-CuMBp54T.js → status-C-r9JpJf.js} +23 -23
- package/dist/{status-EAjzyREy.js → status-DIJvpgEm.js} +3 -3
- package/dist/{status-CoqGtHXq.js → status-DbNNmkNB.js} +1 -1
- package/dist/{status.update-F4CbQCxF.js → status.update-EyslEZkn.js} +3 -3
- package/dist/{subagent-registry-Dkif1XYO.js → subagent-registry-DWemyjbN.js} +52 -6
- package/dist/{symi-root-BQ0IpoW2.js → symi-root-DeCVdZB4.js} +2 -2
- package/dist/{synthesis-D3fpp3Vu.js → synthesis-BdTiornP.js} +4 -4
- package/dist/{synthesis-CpsURf9J.js → synthesis-BxYzOZUA.js} +4 -4
- package/dist/{synthesis-CKKZrrYd.js → synthesis-C7RlvHEs.js} +45 -45
- package/dist/{synthesis-B0PXRiiM.js → synthesis-DQ7Y6OE0.js} +4 -4
- package/dist/{system-cli-DMKzffe3.js → system-cli-DgOvK_kU.js} +7 -7
- package/dist/{systemd-DRpQb_L1.js → systemd-B2nTr3Y2.js} +5 -5
- package/dist/{systemd-hints-DR4u43WA.js → systemd-hints-DtOWJT_2.js} +6 -6
- package/dist/{systemd-linger-BQQl5RXN.js → systemd-linger-CWi5l8Nt.js} +1 -1
- package/dist/{tui-CqrM_Fj2.js → tui-D7ms_iQ4.js} +7 -7
- package/dist/{tui-cli-BsqRmqTX.js → tui-cli-DNvAqIYN.js} +19 -19
- package/dist/{unified-runner-DZAjU6aB.js → unified-runner-BIUJm_Iv.js} +150 -104
- package/dist/{unified-runner-DkPztkL8.js → unified-runner-DPWNhQQA.js} +59 -13
- package/dist/{update-check-CxBGAP1E.js → update-check-CduiCxPo.js} +5 -5
- package/dist/{update-cli-Bgk30eoA.js → update-cli-BM-A3cIZ.js} +9 -9
- package/dist/{update-cli-t7W6vcQY.js → update-cli-GKXF83cS.js} +77 -77
- package/dist/{update-CWEjB8uS.js → update-pddgyV7i.js} +3 -3
- package/dist/{update-runner-C4Uy75eP.js → update-runner-BMYqz1dl.js} +15 -15
- package/dist/{webhooks-cli-Dp-pp0Sf.js → webhooks-cli-BPPmnDCj.js} +4 -4
- package/dist/{with-timeout-B5zAsivw.js → with-timeout-D1qzvPE0.js} +1 -1
- package/dist/{workspace-dirs-jKFQf7of.js → workspace-dirs-DCICLTHx.js} +1 -1
- package/dist/{wsl-DMA0sTvh.js → wsl-Sed675xh.js} +2 -2
- package/package.json +1 -1
|
@@ -9,12 +9,12 @@ import { _ as resolveAuthProfileDisplayLabel, a as markAuthProfileFailure, c as
|
|
|
9
9
|
import { n as resolveCliName, t as formatCliCommand } from "./command-format-BrrHNE8r.js";
|
|
10
10
|
import { _ as DEFAULT_MODEL, c as normalizeProviderId, d as resolveDefaultModelForAgent, f as resolveModelRefFromString, g as DEFAULT_CONTEXT_TOKENS, h as getProviderAdapter, i as findNormalizedProviderValue, m as resolveThinkingDefault, n as buildConfiguredAllowlistKeys, o as modelKey, p as resolveSubagentSpawnModelSelection, r as buildModelAliasIndex, s as normalizeModelRef$1, t as buildAllowedModelSet, u as resolveConfiguredModelRef, v as DEFAULT_PROVIDER } from "./model-selection-BqshlIZc.js";
|
|
11
11
|
import { n as saveJsonFile, t as loadJsonFile } from "./json-file-CZ3ssFR9.js";
|
|
12
|
-
import { $ as resolveSandboxContext, $t as resolveBrowserControlAuth, A as isGoogleModelApi, At as resolveSessionResetPolicy, B as isCompactionFailureError, Bt as resolveGroupSessionKey, C as sanitizeImageBlocks, Ct as INPUT_PROVENANCE_KIND_VALUES, D as extractToolResultId, Dt as resolveSessionKey, E as extractToolCallsFromAssistant, Et as normalizeInputProvenance, F as formatRawAssistantErrorForUi, Ft as canonicalizeMainSessionAlias, G as isRateLimitAssistantError, Gt as resolveBrowserConfig, H as isFailoverAssistantError, Ht as resolveSessionLockMaxHoldFromTimeout, I as getApiErrorPayloadFingerprint, J as isTransientHttpError, Jt as saveMediaBuffer, K as isRawApiErrorPayload, Kt as resolveProfile, L as isAuthAssistantError, M as classifyFailoverReason, Mt as resolveThreadFlag, N as formatAssistantErrorText, Nt as DEFAULT_RESET_TRIGGERS, O as downgradeOpenAIReasoningBlocks, Ot as evaluateSessionFreshness, P as formatBillingErrorMessage, Pt as resolveFreshSessionTotalTokens, Q as ensureSandboxWorkspaceForSession, Qt as ensureBrowserControlAuth, R as isBillingAssistantError, Rt as resolveMainSessionKey, S as sanitizeSessionMessagesImages, St as extractToolCallNames, T as resolveImageSanitizationLimits, Tt as hasInterSessionUserProvenance, U as isFailoverErrorMessage, Ut as createBrowserRouteContext, V as isContextOverflowError, Vt as acquireSessionWriteLock, W as isLikelyContextOverflowError, Wt as registerBrowserRoutes, X as parseImageSizeError, Xt as resolveExistingPathsWithinRoot, Y as parseImageDimensionError, Yt as DEFAULT_UPLOAD_DIR, Z as sanitizeUserFacingText, Zt as getBridgeAuthForPort, _ as validateAnthropicTurns, _t as normalizeSessionDeliveryFields, an as mergeAlsoAllowPolicy, at as loadSessionStore, b as isMessagingToolDuplicateNormalized, bt as capArrayByJsonBytes, c as normalizeChannelTargetInput, cn as stripPluginOnlyAllowlist, ct as updateLastRoute, d as parseReplyDirectives, dn as buildBootstrapContextFiles, dt as isCacheEnabled, en as applyOwnerOnlyToolPolicy, et as resolveSandboxRuntimeStatus, f as MEDIA_TOKEN_RE, fn as ensureSessionHeader, ft as resolveCacheTtlMs$1, g as initializeGlobalHookRunner, gt as normalizeDeliveryContext, h as getGlobalHookRunner, hn as sanitizeGoogleTurnOrdering, ht as mergeDeliveryContext, in as expandToolGroups, it as resolveAndPersistSessionFile, j as BILLING_ERROR_USER_MESSAGE, jt as resolveSessionResetType, k as isAntigravityClaude, kt as resolveChannelResetConfig, l as normalizeTargetForProvider, ln as compileGlobPatterns, lt as updateSessionStore, m as parseInlineDirectives$1, mn as resolveBootstrapTotalMaxChars, mt as deliveryContextKey, nn as collectExplicitAllowlist, o as normalizeReplyPayloadsForDelivery, on as normalizeToolName$1, ot as readSessionUpdatedAt, p as splitMediaFromOutput, pn as resolveBootstrapMaxChars, pt as deliveryContextFromSession, q as isTimeoutErrorMessage, qt as getMediaDir, rn as expandPolicyWithPluginGroups, rt as appendAssistantMessageToSessionTranscript, s as buildTargetResolverSignature, sn as resolveToolProfilePolicy, st as recordSessionMetaFromInbound, t as deliverOutboundPayloads, tn as buildPluginToolGroups, tt as extractDeliveryInfo, u as throwIfAborted, un as matchesAnyGlobPattern, ut as updateSessionStoreEntry, v as validateGeminiTurns, w as sanitizeToolResultImages, wt as applyInputProvenanceToUserMessage, x as normalizeTextForComparison, xt as countToolResults, y as pickFallbackThinkingLevel, yt as archiveSessionTranscripts, z as isCloudCodeAssistFormatError, zt as deriveSessionMetaPatch } from "./deliver-
|
|
12
|
+
import { $ as resolveSandboxContext, $t as resolveBrowserControlAuth, A as isGoogleModelApi, At as resolveSessionResetPolicy, B as isCompactionFailureError, Bt as resolveGroupSessionKey, C as sanitizeImageBlocks, Ct as INPUT_PROVENANCE_KIND_VALUES, D as extractToolResultId, Dt as resolveSessionKey, E as extractToolCallsFromAssistant, Et as normalizeInputProvenance, F as formatRawAssistantErrorForUi, Ft as canonicalizeMainSessionAlias, G as isRateLimitAssistantError, Gt as resolveBrowserConfig, H as isFailoverAssistantError, Ht as resolveSessionLockMaxHoldFromTimeout, I as getApiErrorPayloadFingerprint, J as isTransientHttpError, Jt as saveMediaBuffer, K as isRawApiErrorPayload, Kt as resolveProfile, L as isAuthAssistantError, M as classifyFailoverReason, Mt as resolveThreadFlag, N as formatAssistantErrorText, Nt as DEFAULT_RESET_TRIGGERS, O as downgradeOpenAIReasoningBlocks, Ot as evaluateSessionFreshness, P as formatBillingErrorMessage, Pt as resolveFreshSessionTotalTokens, Q as ensureSandboxWorkspaceForSession, Qt as ensureBrowserControlAuth, R as isBillingAssistantError, Rt as resolveMainSessionKey, S as sanitizeSessionMessagesImages, St as extractToolCallNames, T as resolveImageSanitizationLimits, Tt as hasInterSessionUserProvenance, U as isFailoverErrorMessage, Ut as createBrowserRouteContext, V as isContextOverflowError, Vt as acquireSessionWriteLock, W as isLikelyContextOverflowError, Wt as registerBrowserRoutes, X as parseImageSizeError, Xt as resolveExistingPathsWithinRoot, Y as parseImageDimensionError, Yt as DEFAULT_UPLOAD_DIR, Z as sanitizeUserFacingText, Zt as getBridgeAuthForPort, _ as validateAnthropicTurns, _t as normalizeSessionDeliveryFields, an as mergeAlsoAllowPolicy, at as loadSessionStore, b as isMessagingToolDuplicateNormalized, bt as capArrayByJsonBytes, c as normalizeChannelTargetInput, cn as stripPluginOnlyAllowlist, ct as updateLastRoute, d as parseReplyDirectives, dn as buildBootstrapContextFiles, dt as isCacheEnabled, en as applyOwnerOnlyToolPolicy, et as resolveSandboxRuntimeStatus, f as MEDIA_TOKEN_RE, fn as ensureSessionHeader, ft as resolveCacheTtlMs$1, g as initializeGlobalHookRunner, gt as normalizeDeliveryContext, h as getGlobalHookRunner, hn as sanitizeGoogleTurnOrdering, ht as mergeDeliveryContext, in as expandToolGroups, it as resolveAndPersistSessionFile, j as BILLING_ERROR_USER_MESSAGE, jt as resolveSessionResetType, k as isAntigravityClaude, kt as resolveChannelResetConfig, l as normalizeTargetForProvider, ln as compileGlobPatterns, lt as updateSessionStore, m as parseInlineDirectives$1, mn as resolveBootstrapTotalMaxChars, mt as deliveryContextKey, nn as collectExplicitAllowlist, o as normalizeReplyPayloadsForDelivery, on as normalizeToolName$1, ot as readSessionUpdatedAt, p as splitMediaFromOutput, pn as resolveBootstrapMaxChars, pt as deliveryContextFromSession, q as isTimeoutErrorMessage, qt as getMediaDir, rn as expandPolicyWithPluginGroups, rt as appendAssistantMessageToSessionTranscript, s as buildTargetResolverSignature, sn as resolveToolProfilePolicy, st as recordSessionMetaFromInbound, t as deliverOutboundPayloads, tn as buildPluginToolGroups, tt as extractDeliveryInfo, u as throwIfAborted, un as matchesAnyGlobPattern, ut as updateSessionStoreEntry, v as validateGeminiTurns, w as sanitizeToolResultImages, wt as applyInputProvenanceToUserMessage, x as normalizeTextForComparison, xt as countToolResults, y as pickFallbackThinkingLevel, yt as archiveSessionTranscripts, z as isCloudCodeAssistFormatError, zt as deriveSessionMetaPatch } from "./deliver-DTRkeYm3.js";
|
|
13
13
|
import { C as unsetConfigValueAtPath, S as setConfigValueAtPath, T as VERSION, _ as resetConfigOverrides, b as getConfigValueAtPath, c as loadConfig, d as writeConfigFile, f as validateConfigObjectWithPlugins, g as getConfigOverrides, h as validateJsonSchemaValue, i as isBlockedHostnameOrIp, l as readConfigFileSnapshot, o as normalizeHostname, p as parseDurationMs, t as SsrFBlockedError, u as resolveConfigSnapshotHash, v as setConfigOverride, w as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, x as parseConfigPath, y as unsetConfigOverride } from "./ssrf-oI58TMOb.js";
|
|
14
14
|
import { t as parseBooleanValue } from "./boolean-BsqeuxE6.js";
|
|
15
15
|
import { i as resolveShellEnvFallbackTimeoutMs, n as getShellPathFromLoginShell, s as isTruthyEnvValue } from "./shell-env-B1lDWz4t.js";
|
|
16
16
|
import { a as applyTestPluginDefaults, c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, i as safeStatSync, n as discoverSymiPlugins, o as normalizePluginsConfig, r as isPathInside, s as resolveEnableState, t as loadPluginManifestRegistry, u as isPathInsideWithRealpath } from "./manifest-registry-BGJu2aC-.js";
|
|
17
|
-
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
17
|
+
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-DPjznJQ-.js";
|
|
18
18
|
import { l as parseFrontmatterBlock } from "./frontmatter-CJEX1BrH.js";
|
|
19
19
|
import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-Dm4gX4Tl.js";
|
|
20
20
|
import { n as redactToolDetail } from "./redact-CSGZUFxa.js";
|
|
@@ -31,7 +31,7 @@ import { t as emitSessionTranscriptUpdate } from "./transcript-events-ChU6IQwp.j
|
|
|
31
31
|
import { n as isSilentReplyText, t as SILENT_REPLY_TOKEN } from "./tokens-D_vCJSzF.js";
|
|
32
32
|
import { a as logMessageProcessed, i as logLaneEnqueue, o as logMessageQueued, r as logLaneDequeue, s as logSessionStateChange, t as diag } from "./diagnostic-BALvP9wI.js";
|
|
33
33
|
import { n as getDiagnosticSessionState } from "./diagnostic-session-state-BDfanaOY.js";
|
|
34
|
-
import { a as parseGeminiAuth, c as resolveMemorySearchConfig, d as requireApiKey, f as resolveApiKeyForProvider, h as resolveModelAuthMode, i as resolveOllamaBaseUrl, l as getApiKeyForModel, m as resolveEnvApiKey, n as retryAsync, o as collectProviderApiKeysForExecution, p as resolveAwsSdkEnvVarName, r as probeOllamaEmbeddingModels, s as executeWithApiKeyRotation, u as getCustomProviderApiKey } from "./manager-
|
|
34
|
+
import { a as parseGeminiAuth, c as resolveMemorySearchConfig, d as requireApiKey, f as resolveApiKeyForProvider, h as resolveModelAuthMode, i as resolveOllamaBaseUrl, l as getApiKeyForModel, m as resolveEnvApiKey, n as retryAsync, o as collectProviderApiKeysForExecution, p as resolveAwsSdkEnvVarName, r as probeOllamaEmbeddingModels, s as executeWithApiKeyRotation, u as getCustomProviderApiKey } from "./manager-C5FGNRjL.js";
|
|
35
35
|
import { r as resolveCopilotApiToken, t as DEFAULT_COPILOT_API_BASE_URL } from "./github-copilot-token-uhEBNQfj.js";
|
|
36
36
|
import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-DCGR3yfh.js";
|
|
37
37
|
import { a as resolveEffectiveMessagesConfig, i as resolveAckReaction, o as resolveHumanDelayConfig, r as resolveResponsePrefixTemplate, t as createReplyPrefixOptions } from "./reply-prefix-D0NzzC4I.js";
|
|
@@ -58,7 +58,7 @@ import crypto, { X509Certificate, createHash, createHmac, randomBytes, randomUUI
|
|
|
58
58
|
import { complete, createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
|
|
59
59
|
import AjvPkg from "ajv";
|
|
60
60
|
import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
|
|
61
|
-
import { WebSocket
|
|
61
|
+
import { WebSocket } from "ws";
|
|
62
62
|
import { Buffer as Buffer$1 } from "node:buffer";
|
|
63
63
|
import { BedrockClient, ListFoundationModelsCommand } from "@aws-sdk/client-bedrock";
|
|
64
64
|
import { createJiti } from "jiti";
|
|
@@ -4460,7 +4460,7 @@ async function getMemorySearchManager(params) {
|
|
|
4460
4460
|
const wrapper = new FallbackMemoryManager({
|
|
4461
4461
|
primary,
|
|
4462
4462
|
fallbackFactory: async () => {
|
|
4463
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
4463
|
+
const { MemoryIndexManager } = await import("./manager-C5FGNRjL.js").then((n) => n.t);
|
|
4464
4464
|
return await MemoryIndexManager.get(params);
|
|
4465
4465
|
}
|
|
4466
4466
|
}, () => QMD_MANAGER_CACHE.delete(cacheKey));
|
|
@@ -4473,7 +4473,7 @@ async function getMemorySearchManager(params) {
|
|
|
4473
4473
|
}
|
|
4474
4474
|
}
|
|
4475
4475
|
try {
|
|
4476
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
4476
|
+
const { MemoryIndexManager } = await import("./manager-C5FGNRjL.js").then((n) => n.t);
|
|
4477
4477
|
return { manager: await MemoryIndexManager.get(params) };
|
|
4478
4478
|
} catch (err) {
|
|
4479
4479
|
return {
|
|
@@ -9619,7 +9619,7 @@ var GatewayClient = class {
|
|
|
9619
9619
|
if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
|
|
9620
9620
|
});
|
|
9621
9621
|
}
|
|
9622
|
-
this.ws = new WebSocket
|
|
9622
|
+
this.ws = new WebSocket(url, wsOptions);
|
|
9623
9623
|
this.ws.on("open", () => {
|
|
9624
9624
|
if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
|
|
9625
9625
|
const tlsError = this.validateTlsFingerprint();
|
|
@@ -9838,7 +9838,7 @@ var GatewayClient = class {
|
|
|
9838
9838
|
return null;
|
|
9839
9839
|
}
|
|
9840
9840
|
async request(method, params, opts) {
|
|
9841
|
-
if (!this.ws || this.ws.readyState !== WebSocket
|
|
9841
|
+
if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
|
|
9842
9842
|
const id = randomUUID();
|
|
9843
9843
|
const frame = {
|
|
9844
9844
|
type: "req",
|
|
@@ -10798,7 +10798,7 @@ async function routeReply(params) {
|
|
|
10798
10798
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
10799
10799
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
10800
10800
|
try {
|
|
10801
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
10801
|
+
const { deliverOutboundPayloads } = await import("./deliver-DTRkeYm3.js").then((n) => n.n);
|
|
10802
10802
|
return {
|
|
10803
10803
|
ok: true,
|
|
10804
10804
|
messageId: (await deliverOutboundPayloads({
|
|
@@ -43083,11 +43083,19 @@ function createWebSearchTool(options) {
|
|
|
43083
43083
|
const provider = resolveSearchProvider(search);
|
|
43084
43084
|
const perplexityConfig = resolvePerplexityConfig(search);
|
|
43085
43085
|
const grokConfig = resolveGrokConfig(search);
|
|
43086
|
+
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.";
|
|
43087
|
+
const resolveActiveApiKey = () => {
|
|
43088
|
+
if (provider === "perplexity") return resolvePerplexityApiKey(perplexityConfig)?.apiKey;
|
|
43089
|
+
if (provider === "grok") return resolveGrokApiKey(grokConfig);
|
|
43090
|
+
return resolveSearchApiKey(search);
|
|
43091
|
+
};
|
|
43086
43092
|
return {
|
|
43087
43093
|
label: "Web Search",
|
|
43088
43094
|
name: "web_search",
|
|
43089
|
-
description
|
|
43095
|
+
description,
|
|
43090
43096
|
parameters: WebSearchSchema,
|
|
43097
|
+
checkFn: () => Boolean(resolveActiveApiKey()),
|
|
43098
|
+
requiredEnv: provider === "perplexity" ? ["PERPLEXITY_API_KEY", "OPENROUTER_API_KEY"] : provider === "grok" ? ["XAI_API_KEY"] : ["BRAVE_API_KEY"],
|
|
43091
43099
|
execute: async (_toolCallId, args) => {
|
|
43092
43100
|
const perplexityAuth = provider === "perplexity" ? resolvePerplexityApiKey(perplexityConfig) : void 0;
|
|
43093
43101
|
const apiKey = provider === "perplexity" ? perplexityAuth?.apiKey : provider === "grok" ? resolveGrokApiKey(grokConfig) : resolveSearchApiKey(search);
|
|
@@ -43633,7 +43641,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
43633
43641
|
return;
|
|
43634
43642
|
}
|
|
43635
43643
|
try {
|
|
43636
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
43644
|
+
const { deliverOutboundPayloads } = await import("./deliver-DTRkeYm3.js").then((n) => n.n);
|
|
43637
43645
|
await deliverOutboundPayloads({
|
|
43638
43646
|
cfg: params.cfg,
|
|
43639
43647
|
channel,
|
|
@@ -53101,6 +53109,44 @@ function applyToolPolicyPipeline(params) {
|
|
|
53101
53109
|
return filtered;
|
|
53102
53110
|
}
|
|
53103
53111
|
|
|
53112
|
+
//#endregion
|
|
53113
|
+
//#region src/agents/tools/availability-filter.ts
|
|
53114
|
+
const FORCE_ALL_TOOLS_ENV = "SYMI_FORCE_ALL_TOOLS";
|
|
53115
|
+
/**
|
|
53116
|
+
* Filter the tool palette by each tool's `checkFn`. Tools without a
|
|
53117
|
+
* checkFn pass through unchanged. Throwing checkFns are treated as
|
|
53118
|
+
* available (defensive). The `SYMI_FORCE_ALL_TOOLS=1` env bypasses the
|
|
53119
|
+
* filter entirely.
|
|
53120
|
+
*
|
|
53121
|
+
* Pure function — does not mutate the input array.
|
|
53122
|
+
*/
|
|
53123
|
+
function filterToolsByAvailability(tools) {
|
|
53124
|
+
if (isTruthyEnvValue(process.env[FORCE_ALL_TOOLS_ENV])) return [...tools];
|
|
53125
|
+
const out = [];
|
|
53126
|
+
for (const tool of tools) {
|
|
53127
|
+
if (!tool.checkFn) {
|
|
53128
|
+
out.push(tool);
|
|
53129
|
+
continue;
|
|
53130
|
+
}
|
|
53131
|
+
let available;
|
|
53132
|
+
try {
|
|
53133
|
+
available = tool.checkFn();
|
|
53134
|
+
} catch (err) {
|
|
53135
|
+
logVerbose(`tool availability: checkFn for "${getToolName(tool)}" threw — including tool anyway. ${String(err)}`);
|
|
53136
|
+
out.push(tool);
|
|
53137
|
+
continue;
|
|
53138
|
+
}
|
|
53139
|
+
if (available) out.push(tool);
|
|
53140
|
+
else logVerbose(`tool availability: filtered out "${getToolName(tool)}" — checkFn returned false. Set ${FORCE_ALL_TOOLS_ENV}=1 to bypass this filter.`);
|
|
53141
|
+
}
|
|
53142
|
+
return out;
|
|
53143
|
+
}
|
|
53144
|
+
function getToolName(tool) {
|
|
53145
|
+
const definition = tool.definition;
|
|
53146
|
+
if (definition && typeof definition.name === "string") return definition.name;
|
|
53147
|
+
return "(unknown tool)";
|
|
53148
|
+
}
|
|
53149
|
+
|
|
53104
53150
|
//#endregion
|
|
53105
53151
|
//#region src/agents/pi-tools.ts
|
|
53106
53152
|
function isOpenAIProvider(provider) {
|
|
@@ -53320,7 +53366,7 @@ function createSymiCodingTools(options) {
|
|
|
53320
53366
|
root: sandboxRoot,
|
|
53321
53367
|
bridge: sandboxFsBridge
|
|
53322
53368
|
}), readEditTracker) : null;
|
|
53323
|
-
const withHooks = applyToolPolicyPipeline({
|
|
53369
|
+
const withHooks = filterToolsByAvailability(applyToolPolicyPipeline({
|
|
53324
53370
|
tools: applyOwnerOnlyToolPolicy([
|
|
53325
53371
|
...base,
|
|
53326
53372
|
...sandboxRoot ? allowWorkspaceWrites && sandboxedEditTool && sandboxedWriteTool ? [workspaceOnly ? wrapToolWorkspaceRootGuard(sandboxedEditTool, sandboxRoot) : sandboxedEditTool, workspaceOnly ? wrapToolWorkspaceRootGuard(sandboxedWriteTool, sandboxRoot) : sandboxedWriteTool] : [] : [],
|
|
@@ -53392,7 +53438,7 @@ function createSymiCodingTools(options) {
|
|
|
53392
53438
|
label: "subagent tools.allow"
|
|
53393
53439
|
}
|
|
53394
53440
|
]
|
|
53395
|
-
}).map((tool) => normalizeToolParameters(tool, { modelProvider: options?.modelProvider })).map((tool) => wrapToolWithBeforeToolCallHook(tool, {
|
|
53441
|
+
})).map((tool) => normalizeToolParameters(tool, { modelProvider: options?.modelProvider })).map((tool) => wrapToolWithBeforeToolCallHook(tool, {
|
|
53396
53442
|
agentId,
|
|
53397
53443
|
sessionKey: options?.sessionKey,
|
|
53398
53444
|
loopDetection: resolveToolLoopDetectionConfig({
|
|
@@ -2,7 +2,7 @@ import { t as runCommandWithTimeout } from "./exec-DuYbft0z.js";
|
|
|
2
2
|
import { n as fetchWithTimeout } from "./fetch-timeout-BhdrdVp5.js";
|
|
3
3
|
import { r as parseSemver } from "./runtime-guard-DfRLODeV.js";
|
|
4
4
|
import path from "node:path";
|
|
5
|
-
import
|
|
5
|
+
import fsPromises from "node:fs/promises";
|
|
6
6
|
|
|
7
7
|
//#region src/infra/update-channels.ts
|
|
8
8
|
const DEFAULT_PACKAGE_CHANNEL = "stable";
|
|
@@ -86,11 +86,11 @@ function resolveUpdateChannelDisplay(params) {
|
|
|
86
86
|
//#region src/infra/detect-package-manager.ts
|
|
87
87
|
async function detectPackageManager$1(root) {
|
|
88
88
|
try {
|
|
89
|
-
const raw = await
|
|
89
|
+
const raw = await fsPromises.readFile(path.join(root, "package.json"), "utf-8");
|
|
90
90
|
const pm = JSON.parse(raw)?.packageManager?.split("@")[0]?.trim();
|
|
91
91
|
if (pm === "pnpm" || pm === "bun" || pm === "npm") return pm;
|
|
92
92
|
} catch {}
|
|
93
|
-
const files = await
|
|
93
|
+
const files = await fsPromises.readdir(root).catch(() => []);
|
|
94
94
|
if (files.includes("pnpm-lock.yaml")) return "pnpm";
|
|
95
95
|
if (files.includes("bun.lockb")) return "bun";
|
|
96
96
|
if (files.includes("package-lock.json")) return "npm";
|
|
@@ -112,7 +112,7 @@ function formatGitInstallLabel(update) {
|
|
|
112
112
|
}
|
|
113
113
|
async function exists(p) {
|
|
114
114
|
try {
|
|
115
|
-
await
|
|
115
|
+
await fsPromises.access(p);
|
|
116
116
|
return true;
|
|
117
117
|
} catch {
|
|
118
118
|
return false;
|
|
@@ -239,7 +239,7 @@ async function checkGitUpdateStatus(params) {
|
|
|
239
239
|
}
|
|
240
240
|
async function statMtimeMs(p) {
|
|
241
241
|
try {
|
|
242
|
-
return (await
|
|
242
|
+
return (await fsPromises.stat(p)).mtimeMs;
|
|
243
243
|
} catch {
|
|
244
244
|
return null;
|
|
245
245
|
}
|
|
@@ -21,7 +21,7 @@ import "./client-BqT7xONl.js";
|
|
|
21
21
|
import "./call-GzGqMHAx.js";
|
|
22
22
|
import "./message-channel-DXToSaWK.js";
|
|
23
23
|
import "./pairing-token-B-OTYROz.js";
|
|
24
|
-
import "./subagent-registry-
|
|
24
|
+
import "./subagent-registry-DWemyjbN.js";
|
|
25
25
|
import "./sessions-DHPf5TzB.js";
|
|
26
26
|
import "./plugins-BsEhWvLn.js";
|
|
27
27
|
import "./send-BBfSp-8Q.js";
|
|
@@ -51,8 +51,8 @@ import "./model-auth-Byr7Gic_.js";
|
|
|
51
51
|
import "./github-copilot-token-B5y4__YM.js";
|
|
52
52
|
import "./models-config-Br7EjqgG.js";
|
|
53
53
|
import "./reply-prefix-DV3KhOhL.js";
|
|
54
|
-
import "./memory-
|
|
55
|
-
import "./manager-
|
|
54
|
+
import "./memory-Cypj1lBQ.js";
|
|
55
|
+
import "./manager-BfbQb9qM.js";
|
|
56
56
|
import "./sqlite-9jF_eajd.js";
|
|
57
57
|
import "./chunk-B2lBXhR0.js";
|
|
58
58
|
import "./markdown-tables-BEdkErjm.js";
|
|
@@ -84,7 +84,7 @@ import { t as formatDocsLink } from "./links-BDe4dm1J.js";
|
|
|
84
84
|
import "./cli-utils-BhfE5XS2.js";
|
|
85
85
|
import { t as formatHelpExamples } from "./help-format-CbgFRc-H.js";
|
|
86
86
|
import "./progress-CqV5lJkt.js";
|
|
87
|
-
import "./memory-cli-
|
|
87
|
+
import "./memory-cli-DB7UIev4.js";
|
|
88
88
|
import "./logging-BeW3kpQA.js";
|
|
89
89
|
import "./replies-LM-arXEE.js";
|
|
90
90
|
import "./pi-tools.policy-4gtz_Ipq.js";
|
|
@@ -98,10 +98,10 @@ import "./npm-registry-spec-B5KYXHyZ.js";
|
|
|
98
98
|
import "./skill-scanner-CH9qofCG.js";
|
|
99
99
|
import "./installs-CylGJ0W4.js";
|
|
100
100
|
import "./channels-status-issues-DGneT0fj.js";
|
|
101
|
-
import "./register.subclis-
|
|
102
|
-
import "./command-registry-
|
|
101
|
+
import "./register.subclis-tX3BslaT.js";
|
|
102
|
+
import "./command-registry-DoXcG7FZ.js";
|
|
103
103
|
import "./program-context-4vIUuzQk.js";
|
|
104
|
-
import { r as installCompletion } from "./completion-cli-
|
|
104
|
+
import { r as installCompletion } from "./completion-cli-DaWi3_ux.js";
|
|
105
105
|
import "./daemon-runtime-Cyqcsmvq.js";
|
|
106
106
|
import { r as parseSemver } from "./runtime-guard-C8jl1lEu.js";
|
|
107
107
|
import "./onboard-helpers-Cut7JJgz.js";
|
|
@@ -123,8 +123,8 @@ import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from
|
|
|
123
123
|
import "./doctor-config-flow-B0pP_wcc.js";
|
|
124
124
|
import "./systemd-linger-C6G2nDWK.js";
|
|
125
125
|
import "./health-format-y74JTiFu.js";
|
|
126
|
-
import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-
|
|
127
|
-
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
126
|
+
import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-F6P-rvFI.js";
|
|
127
|
+
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-B1YCzbvi.js";
|
|
128
128
|
import { spawn, spawnSync } from "node:child_process";
|
|
129
129
|
import os from "node:os";
|
|
130
130
|
import path from "node:path";
|
|
@@ -1,135 +1,135 @@
|
|
|
1
|
-
import "./unified-runner-
|
|
1
|
+
import "./unified-runner-BIUJm_Iv.js";
|
|
2
2
|
import { j as theme } from "./registry-Sbac4a4z.js";
|
|
3
3
|
import { _ as resolveStateDir } from "./paths-By0XjHBk.js";
|
|
4
4
|
import { f as pathExists } from "./utils-CTPsqyE_.js";
|
|
5
5
|
import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
|
|
6
|
-
import "./auth-profiles-
|
|
6
|
+
import "./auth-profiles-D5nYBj_Z.js";
|
|
7
7
|
import { n as resolveCliName, t as replaceCliName } from "./cli-name-CzMV-gJF.js";
|
|
8
8
|
import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
|
|
9
|
-
import { t as resolveSymiPackageRoot } from "./symi-root-
|
|
9
|
+
import { t as resolveSymiPackageRoot } from "./symi-root-DeCVdZB4.js";
|
|
10
10
|
import { t as runCommandWithTimeout } from "./exec-DuYbft0z.js";
|
|
11
|
-
import "./agent-scope-
|
|
12
|
-
import "./model-selection-
|
|
13
|
-
import "./file-lock-
|
|
11
|
+
import "./agent-scope-Bnsyyeci.js";
|
|
12
|
+
import "./model-selection-CCTzD29o.js";
|
|
13
|
+
import "./file-lock-2AecMjCa.js";
|
|
14
14
|
import "./agent-paths-BbZSGrUA.js";
|
|
15
|
-
import "./pi-embedded-helpers-
|
|
16
|
-
import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-
|
|
15
|
+
import "./pi-embedded-helpers-y3vJmW6T.js";
|
|
16
|
+
import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-D-PYSlE8.js";
|
|
17
17
|
import "./boolean-CbZoNRMn.js";
|
|
18
18
|
import "./env-BRnPI9sO.js";
|
|
19
19
|
import "./shell-env-Dc3iU7HK.js";
|
|
20
20
|
import "./manifest-registry-D1MLZEjS.js";
|
|
21
|
-
import "./sandbox-
|
|
22
|
-
import "./chrome-
|
|
21
|
+
import "./sandbox-DQCaejcD.js";
|
|
22
|
+
import "./chrome-pFBxO63W.js";
|
|
23
23
|
import "./tailscale-DpKBMIvx.js";
|
|
24
24
|
import "./auth-Bkx-QuRN.js";
|
|
25
|
-
import "./server-context
|
|
25
|
+
import "./server-context-CXVq7gZ7.js";
|
|
26
26
|
import "./frontmatter-B_jqcova.js";
|
|
27
|
-
import "./skills-
|
|
28
|
-
import "./routes-
|
|
27
|
+
import "./skills-CYcBtLGH.js";
|
|
28
|
+
import "./routes-zpAUwtCG.js";
|
|
29
29
|
import "./redact-B3O-RBO1.js";
|
|
30
30
|
import "./errors-bI7Tdx75.js";
|
|
31
|
-
import "./fs-safe-
|
|
32
|
-
import "./paths-
|
|
31
|
+
import "./fs-safe-B0Is-oLk.js";
|
|
32
|
+
import "./paths-BWqg8NZT.js";
|
|
33
33
|
import "./ssrf-DOZRI5XH.js";
|
|
34
|
-
import "./image-ops-
|
|
35
|
-
import "./ports-
|
|
34
|
+
import "./image-ops-BzCBIakN.js";
|
|
35
|
+
import "./ports-CB_Iu83U.js";
|
|
36
36
|
import "./trash-_YhavPQI.js";
|
|
37
|
-
import "./sessions-
|
|
37
|
+
import "./sessions-aSo5jsmg.js";
|
|
38
38
|
import "./dock-hF45sewN.js";
|
|
39
39
|
import "./message-channel-DgjXWzf-.js";
|
|
40
40
|
import "./plugins-CF5skkHh.js";
|
|
41
|
-
import "./send-
|
|
41
|
+
import "./send-QscYkkNh.js";
|
|
42
42
|
import "./paths-BtvQ7JvU.js";
|
|
43
43
|
import "./thinking-COroyVA5.js";
|
|
44
44
|
import "./tokens-0yh2UnJq.js";
|
|
45
|
-
import "./deliver-
|
|
45
|
+
import "./deliver-C79-Umbk.js";
|
|
46
46
|
import "./diagnostic-DbT9t0Sh.js";
|
|
47
47
|
import "./diagnostic-session-state-DnkpMfCl.js";
|
|
48
|
-
import "./model-auth-
|
|
48
|
+
import "./model-auth-_C07_3Yr.js";
|
|
49
49
|
import "./github-copilot-token-D-FdDfee.js";
|
|
50
|
-
import "./models-config-
|
|
51
|
-
import "./pi-auth-json-
|
|
50
|
+
import "./models-config-Dp5-tBqs.js";
|
|
51
|
+
import "./pi-auth-json-D-vdh-nY.js";
|
|
52
52
|
import "./session-cost-usage-D6Ocwmq1.js";
|
|
53
|
-
import { h as trimLogTail } from "./session-utils-
|
|
54
|
-
import "./with-timeout-
|
|
55
|
-
import "./reply-prefix-
|
|
56
|
-
import "./memory-
|
|
57
|
-
import "./manager-
|
|
58
|
-
import "./sqlite-
|
|
53
|
+
import { h as trimLogTail } from "./session-utils-lXjJoBxe.js";
|
|
54
|
+
import "./with-timeout-D1qzvPE0.js";
|
|
55
|
+
import "./reply-prefix-CtZtkTJK.js";
|
|
56
|
+
import "./memory-DgDnTEcB.js";
|
|
57
|
+
import "./manager-DyYRwHZt.js";
|
|
58
|
+
import "./sqlite-BpogPlQW.js";
|
|
59
59
|
import "./chunk-BxfKjCUx.js";
|
|
60
60
|
import "./markdown-tables-CS1Tvb3z.js";
|
|
61
61
|
import "./fetch-guard-JHxT9355.js";
|
|
62
|
-
import "./local-roots-
|
|
62
|
+
import "./local-roots-2Jb79HZ8.js";
|
|
63
63
|
import "./commands-DUzLGgEZ.js";
|
|
64
|
-
import "./commands-registry-
|
|
65
|
-
import "./client-
|
|
66
|
-
import "./call-
|
|
67
|
-
import "./pairing-token-
|
|
64
|
+
import "./commands-registry-BjcGLk4v.js";
|
|
65
|
+
import "./client-T5P9umyG.js";
|
|
66
|
+
import "./call-CW8U1BPq.js";
|
|
67
|
+
import "./pairing-token-B703A1U3.js";
|
|
68
68
|
import "./tool-display-DFOL6UQ9.js";
|
|
69
|
-
import "./skills-remote-
|
|
70
|
-
import "./workspace-dirs-
|
|
69
|
+
import "./skills-remote-BcRQTDsZ.js";
|
|
70
|
+
import "./workspace-dirs-DCICLTHx.js";
|
|
71
71
|
import "./pi-model-discovery-ClQLvlCW.js";
|
|
72
|
-
import "./model-catalog-
|
|
73
|
-
import "./skill-commands-
|
|
74
|
-
import "./pairing-store-
|
|
72
|
+
import "./model-catalog-CeqDEWGz.js";
|
|
73
|
+
import "./skill-commands-C9WuAfb2.js";
|
|
74
|
+
import "./pairing-store-Be-ZQK87.js";
|
|
75
75
|
import "./exec-approvals-DioSaIeH.js";
|
|
76
|
-
import "./nodes-screen-
|
|
76
|
+
import "./nodes-screen-Cp5QP3ET.js";
|
|
77
77
|
import { r as formatDurationPrecise } from "./format-duration-CIjmjQST.js";
|
|
78
78
|
import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName, f as resolveGatewayWindowsTaskName } from "./constants-ChnKXZKi.js";
|
|
79
|
-
import "./control-service-
|
|
79
|
+
import "./control-service-y53w3Jzy.js";
|
|
80
80
|
import "./stagger-DUVGiPYV.js";
|
|
81
81
|
import "./channel-selection-DF4bza2Q.js";
|
|
82
82
|
import "./delivery-queue-RUd4NhRw.js";
|
|
83
83
|
import "./bindings-CLS_owm_.js";
|
|
84
|
-
import "./resolve-route-
|
|
84
|
+
import "./resolve-route-B0i_o4Fo.js";
|
|
85
85
|
import { t as formatDocsLink } from "./links-TQwptN6q.js";
|
|
86
86
|
import "./cli-utils-tNdOjVQI.js";
|
|
87
87
|
import { t as formatHelpExamples } from "./help-format-CPT6NY3h.js";
|
|
88
88
|
import "./progress-HNhsbm0E.js";
|
|
89
|
-
import "./memory-cli-
|
|
89
|
+
import "./memory-cli-CfJkD7mO.js";
|
|
90
90
|
import "./logging-Czh4x_NQ.js";
|
|
91
|
-
import "./replies-
|
|
92
|
-
import "./pi-tools.policy-
|
|
93
|
-
import "./model-
|
|
91
|
+
import "./replies-D3cffD5N.js";
|
|
92
|
+
import "./pi-tools.policy-ji-L-Mpv.js";
|
|
93
|
+
import "./model-DbILYCfo.js";
|
|
94
94
|
import { r as parseSemver } from "./runtime-guard-DfRLODeV.js";
|
|
95
|
-
import "./program-context-
|
|
95
|
+
import "./program-context-B1ZbQmLL.js";
|
|
96
96
|
import "./catalog-DsC3JTw1.js";
|
|
97
|
-
import "./skills-status-
|
|
97
|
+
import "./skills-status-CbSdFlvm.js";
|
|
98
98
|
import { n as inheritOptionFromParent } from "./command-options-nJfiotBs.js";
|
|
99
99
|
import { n as stylePromptMessage } from "./prompt-style-BEDZROvQ.js";
|
|
100
100
|
import "./note-DlaPViz1.js";
|
|
101
|
-
import "./plugin-auto-enable-
|
|
102
|
-
import "./install-safe-path-
|
|
103
|
-
import "./npm-registry-spec-
|
|
104
|
-
import "./skill-scanner-
|
|
105
|
-
import "./installs-
|
|
101
|
+
import "./plugin-auto-enable-Ctbn2w4Q.js";
|
|
102
|
+
import "./install-safe-path-BwMMOh9z.js";
|
|
103
|
+
import "./npm-registry-spec-CqVgiBCf.js";
|
|
104
|
+
import "./skill-scanner-CFqMkfZW.js";
|
|
105
|
+
import "./installs-vdi1BESF.js";
|
|
106
106
|
import "./channels-status-issues-mROqdfm_.js";
|
|
107
|
-
import { r as installCompletion } from "./completion-cli-
|
|
108
|
-
import "./daemon-runtime-
|
|
109
|
-
import "./onboard-helpers
|
|
110
|
-
import "./systemd-
|
|
111
|
-
import { t as resolveGatewayService } from "./service-
|
|
112
|
-
import "./lifecycle-core-
|
|
113
|
-
import "./systemd-hints-
|
|
114
|
-
import { i as runDaemonInstall, r as runDaemonRestart } from "./daemon-cli-
|
|
115
|
-
import "./diagnostics-
|
|
107
|
+
import { r as installCompletion } from "./completion-cli-C0SXi7ya.js";
|
|
108
|
+
import "./daemon-runtime-u4p9jsEF.js";
|
|
109
|
+
import "./onboard-helpers-OB_xKQze.js";
|
|
110
|
+
import "./systemd-B2nTr3Y2.js";
|
|
111
|
+
import { t as resolveGatewayService } from "./service-Cm4-5AH9.js";
|
|
112
|
+
import "./lifecycle-core-BfmNlC-k.js";
|
|
113
|
+
import "./systemd-hints-DtOWJT_2.js";
|
|
114
|
+
import { i as runDaemonInstall, r as runDaemonRestart } from "./daemon-cli-BJGNf5qV.js";
|
|
115
|
+
import "./diagnostics-oW0LBW-t.js";
|
|
116
116
|
import { t as renderTable } from "./table-D902H0x3.js";
|
|
117
|
-
import "./health-
|
|
118
|
-
import "./control-ui-assets-
|
|
119
|
-
import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, d as formatUpdateChannelLabel, g as resolveUpdateChannelDisplay, h as resolveEffectiveUpdateChannel, m as normalizeUpdateChannel, n as compareSemverStrings, r as fetchNpmTagVersion, s as DEFAULT_GIT_CHANNEL, t as checkUpdateStatus, u as channelToNpmTag } from "./update-check-
|
|
120
|
-
import "./dm-policy-shared-
|
|
121
|
-
import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, t as formatUpdateAvailableHint } from "./status.update-
|
|
122
|
-
import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-
|
|
117
|
+
import "./health-D2th0Ip6.js";
|
|
118
|
+
import "./control-ui-assets-Dryy7mCE.js";
|
|
119
|
+
import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, d as formatUpdateChannelLabel, g as resolveUpdateChannelDisplay, h as resolveEffectiveUpdateChannel, m as normalizeUpdateChannel, n as compareSemverStrings, r as fetchNpmTagVersion, s as DEFAULT_GIT_CHANNEL, t as checkUpdateStatus, u as channelToNpmTag } from "./update-check-CduiCxPo.js";
|
|
120
|
+
import "./dm-policy-shared-DRJrFKqJ.js";
|
|
121
|
+
import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, t as formatUpdateAvailableHint } from "./status.update-EyslEZkn.js";
|
|
122
|
+
import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-BMYqz1dl.js";
|
|
123
123
|
import "./logging-CoYSc9bY.js";
|
|
124
|
-
import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from "./update-
|
|
125
|
-
import "./doctor-config-flow-
|
|
126
|
-
import "./systemd-linger-
|
|
124
|
+
import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from "./update-pddgyV7i.js";
|
|
125
|
+
import "./doctor-config-flow-Uv41seME.js";
|
|
126
|
+
import "./systemd-linger-CWi5l8Nt.js";
|
|
127
127
|
import "./health-format-CUEM0lJl.js";
|
|
128
|
-
import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-
|
|
129
|
-
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
128
|
+
import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-CX0v66wx.js";
|
|
129
|
+
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-mev5PRjN.js";
|
|
130
130
|
import path from "node:path";
|
|
131
131
|
import os from "node:os";
|
|
132
|
-
import
|
|
132
|
+
import fsPromises from "node:fs/promises";
|
|
133
133
|
import { spawn, spawnSync } from "node:child_process";
|
|
134
134
|
import { confirm, isCancel, spinner } from "@clack/prompts";
|
|
135
135
|
|
|
@@ -172,7 +172,7 @@ async function resolveTargetVersion(tag, timeoutMs) {
|
|
|
172
172
|
}
|
|
173
173
|
async function isGitCheckout(root) {
|
|
174
174
|
try {
|
|
175
|
-
await
|
|
175
|
+
await fsPromises.stat(path.join(root, ".git"));
|
|
176
176
|
return true;
|
|
177
177
|
} catch {
|
|
178
178
|
return false;
|
|
@@ -184,7 +184,7 @@ async function isCorePackage(root) {
|
|
|
184
184
|
}
|
|
185
185
|
async function isEmptyDir(targetPath) {
|
|
186
186
|
try {
|
|
187
|
-
return (await
|
|
187
|
+
return (await fsPromises.readdir(targetPath)).length === 0;
|
|
188
188
|
} catch {
|
|
189
189
|
return false;
|
|
190
190
|
}
|
|
@@ -581,7 +581,7 @@ del "%~f0"
|
|
|
581
581
|
`;
|
|
582
582
|
} else return null;
|
|
583
583
|
const scriptPath = path.join(tmpDir, filename);
|
|
584
|
-
await
|
|
584
|
+
await fsPromises.writeFile(scriptPath, scriptContent, { mode: 493 });
|
|
585
585
|
return scriptPath;
|
|
586
586
|
} catch {
|
|
587
587
|
return null;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { h as resolveUserPath } from "./utils-CTPsqyE_.js";
|
|
2
2
|
import { o as loadPluginManifest, r as discoverSymiPlugins } from "./manifest-registry-D1MLZEjS.js";
|
|
3
|
-
import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, t as recordPluginInstall } from "./installs-
|
|
4
|
-
import
|
|
3
|
+
import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, t as recordPluginInstall } from "./installs-vdi1BESF.js";
|
|
4
|
+
import fsPromises from "node:fs/promises";
|
|
5
5
|
|
|
6
6
|
//#region src/plugins/update.ts
|
|
7
7
|
async function readInstalledPackageVersion(dir) {
|
|
8
8
|
try {
|
|
9
|
-
const raw = await
|
|
9
|
+
const raw = await fsPromises.readFile(`${dir}/package.json`, "utf-8");
|
|
10
10
|
const parsed = JSON.parse(raw);
|
|
11
11
|
return typeof parsed.version === "string" ? parsed.version : void 0;
|
|
12
12
|
} catch {
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { f as pathExists } from "./utils-CTPsqyE_.js";
|
|
2
2
|
import { t as runCommandWithTimeout } from "./exec-DuYbft0z.js";
|
|
3
|
-
import { h as trimLogTail } from "./session-utils-
|
|
4
|
-
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-
|
|
5
|
-
import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-
|
|
3
|
+
import { h as trimLogTail } from "./session-utils-lXjJoBxe.js";
|
|
4
|
+
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-Dryy7mCE.js";
|
|
5
|
+
import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-CduiCxPo.js";
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
import os from "node:os";
|
|
8
|
-
import
|
|
8
|
+
import fsPromises from "node:fs/promises";
|
|
9
9
|
|
|
10
10
|
//#region src/infra/package-json.ts
|
|
11
11
|
async function readPackageVersion(root) {
|
|
12
12
|
try {
|
|
13
|
-
const raw = await
|
|
13
|
+
const raw = await fsPromises.readFile(path.join(root, "package.json"), "utf-8");
|
|
14
14
|
const parsed = JSON.parse(raw);
|
|
15
15
|
return typeof parsed?.version === "string" ? parsed.version : null;
|
|
16
16
|
} catch {
|
|
@@ -19,7 +19,7 @@ async function readPackageVersion(root) {
|
|
|
19
19
|
}
|
|
20
20
|
async function readPackageName(root) {
|
|
21
21
|
try {
|
|
22
|
-
const raw = await
|
|
22
|
+
const raw = await fsPromises.readFile(path.join(root, "package.json"), "utf-8");
|
|
23
23
|
const name = JSON.parse(raw)?.name?.trim();
|
|
24
24
|
return name ? name : null;
|
|
25
25
|
} catch {
|
|
@@ -39,7 +39,7 @@ const NPM_GLOBAL_INSTALL_QUIET_FLAGS = [
|
|
|
39
39
|
];
|
|
40
40
|
async function tryRealpath(targetPath) {
|
|
41
41
|
try {
|
|
42
|
-
return await
|
|
42
|
+
return await fsPromises.realpath(targetPath);
|
|
43
43
|
} catch {
|
|
44
44
|
return path.resolve(targetPath);
|
|
45
45
|
}
|
|
@@ -140,7 +140,7 @@ async function cleanupGlobalRenameDirs(params) {
|
|
|
140
140
|
const prefix = `${GLOBAL_RENAME_PREFIX}${name}-`;
|
|
141
141
|
let entries = [];
|
|
142
142
|
try {
|
|
143
|
-
entries = await
|
|
143
|
+
entries = await fsPromises.readdir(root);
|
|
144
144
|
} catch {
|
|
145
145
|
return { removed };
|
|
146
146
|
}
|
|
@@ -148,8 +148,8 @@ async function cleanupGlobalRenameDirs(params) {
|
|
|
148
148
|
if (!entry.startsWith(prefix)) continue;
|
|
149
149
|
const target = path.join(root, entry);
|
|
150
150
|
try {
|
|
151
|
-
if (!(await
|
|
152
|
-
await
|
|
151
|
+
if (!(await fsPromises.lstat(target)).isDirectory()) continue;
|
|
152
|
+
await fsPromises.rm(target, {
|
|
153
153
|
recursive: true,
|
|
154
154
|
force: true
|
|
155
155
|
});
|
|
@@ -261,7 +261,7 @@ async function findPackageRoot(candidates) {
|
|
|
261
261
|
for (let i = 0; i < 12; i += 1) {
|
|
262
262
|
const pkgPath = path.join(current, "package.json");
|
|
263
263
|
try {
|
|
264
|
-
const raw = await
|
|
264
|
+
const raw = await fsPromises.readFile(pkgPath, "utf-8");
|
|
265
265
|
const name = JSON.parse(raw)?.name?.trim();
|
|
266
266
|
if (name && CORE_PACKAGE_NAMES.has(name)) return current;
|
|
267
267
|
} catch {}
|
|
@@ -543,7 +543,7 @@ async function runGatewayUpdate(opts = {}) {
|
|
|
543
543
|
durationMs: Date.now() - startedAt
|
|
544
544
|
};
|
|
545
545
|
const manager = await detectPackageManager(gitRoot);
|
|
546
|
-
const preflightRoot = await
|
|
546
|
+
const preflightRoot = await fsPromises.mkdtemp(path.join(os.tmpdir(), "symi-update-preflight-"));
|
|
547
547
|
const worktreeDir = path.join(preflightRoot, "worktree");
|
|
548
548
|
const worktreeStep = await runStep(step("preflight worktree", [
|
|
549
549
|
"git",
|
|
@@ -557,7 +557,7 @@ async function runGatewayUpdate(opts = {}) {
|
|
|
557
557
|
], gitRoot));
|
|
558
558
|
steps.push(worktreeStep);
|
|
559
559
|
if (worktreeStep.exitCode !== 0) {
|
|
560
|
-
await
|
|
560
|
+
await fsPromises.rm(preflightRoot, {
|
|
561
561
|
recursive: true,
|
|
562
562
|
force: true
|
|
563
563
|
}).catch(() => {});
|
|
@@ -621,7 +621,7 @@ async function runGatewayUpdate(opts = {}) {
|
|
|
621
621
|
cwd: gitRoot,
|
|
622
622
|
timeoutMs
|
|
623
623
|
}).catch(() => null);
|
|
624
|
-
await
|
|
624
|
+
await fsPromises.rm(preflightRoot, {
|
|
625
625
|
recursive: true,
|
|
626
626
|
force: true
|
|
627
627
|
}).catch(() => {});
|
|
@@ -769,7 +769,7 @@ async function runGatewayUpdate(opts = {}) {
|
|
|
769
769
|
durationMs: Date.now() - startedAt
|
|
770
770
|
};
|
|
771
771
|
const doctorEntry = path.join(gitRoot, "symi.mjs");
|
|
772
|
-
if (!await
|
|
772
|
+
if (!await fsPromises.stat(doctorEntry).then(() => true).catch(() => false)) {
|
|
773
773
|
steps.push({
|
|
774
774
|
name: "symi doctor entry",
|
|
775
775
|
command: `verify ${doctorEntry}`,
|