@symerian/symi 2.6.40 → 2.6.41
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/{acp-cli-Cm65S6FL.js → acp-cli-BLUeUUA5.js} +2 -2
- package/dist/{acp-cli-CArw-nEj.js → acp-cli-CrEIx-c7.js} +2 -2
- package/dist/{agents-BUphGO8B.js → agents-B4RNdKQ3.js} +7 -7
- package/dist/{agents.config-bWQyGjxK.js → agents.config-CA31c0kN.js} +1 -1
- package/dist/{agents.config-C5FjRTiH.js → agents.config-CG2klYOg.js} +1 -1
- package/dist/{audio-preflight-DEJHmI9r.js → audio-preflight-CIiS5cfP.js} +11 -11
- package/dist/{audio-preflight-B0alOE_D.js → audio-preflight-DD18zIZd.js} +5 -5
- package/dist/{audio-preflight-BUO1aDLp.js → audio-preflight-K-s65jbB.js} +5 -5
- package/dist/{audio-preflight-EindUWk_.js → audio-preflight-XrlQA8IZ.js} +11 -11
- package/dist/{audit-ChxZ7_3y.js → audit-BjI_Yyr5.js} +5 -5
- package/dist/{audit-B_XnVSC_.js → audit-DB9YkTVX.js} +5 -5
- package/dist/{auth-choice-CScrqcEI.js → auth-choice-CCGIgXvF.js} +4 -4
- package/dist/{auth-choice-BZIJ1WP4.js → auth-choice-CiMf3Pjp.js} +4 -4
- package/dist/{banner-DdxLX10a.js → banner-BNsB_A87.js} +1 -1
- package/dist/{browser-cli-B8qCOonD.js → browser-cli-Ctn9do4z.js} +3 -3
- package/dist/{browser-cli-d3tBzuZB.js → browser-cli-kDUw45Y0.js} +3 -3
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +13 -13
- package/dist/bundled/session-memory/handler.js +13 -13
- package/dist/{call-CLKMnHOP.js → call-DKi-hnaF.js} +1 -1
- package/dist/{call-Dqx-xSZ7.js → call-DwpGquzW.js} +1 -1
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-CC5ojwB6.js → channel-options-BMQlkUDX.js} +1 -1
- package/dist/{channel-options-BAqgueJ5.js → channel-options-pAH4A-xX.js} +1 -1
- package/dist/{channel-web-_jV8VUEw.js → channel-web-Dwuj48T5.js} +7 -7
- package/dist/{channels-cli-1we8fBWm.js → channels-cli-CuExxB0U.js} +30 -30
- package/dist/{channels-cli-GldZ8ajW.js → channels-cli-rmDzxb0W.js} +29 -29
- package/dist/{chrome-D07ZncFh.js → chrome-BYOhnxTr.js} +8 -8
- package/dist/{chrome-DJn17LsI.js → chrome-BxwUEWrH.js} +1 -1
- package/dist/{chrome-Cixcv-qk.js → chrome-DAw-AWNi.js} +1 -1
- package/dist/{chrome-DtPv6OzN.js → chrome-DU2ZysN3.js} +1 -1
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-CNO5cyFx.js → cli-BPGZalMg.js} +25 -25
- package/dist/{cli-DZAotBEi.js → cli-Mcq2pPI0.js} +26 -26
- package/dist/{command-registry-DZIdLwVe.js → command-registry-BoEw2RzH.js} +11 -11
- package/dist/{completion-cli-BWw06AVN.js → completion-cli-CE9Xqlyx.js} +1 -1
- package/dist/{completion-cli-DYgPksHH.js → completion-cli-CQVZGJPg.js} +2 -2
- package/dist/{config-CyV6zkEL.js → config-B6OxYMgn.js} +6 -1
- package/dist/{config-BwQutavB.js → config-BNTB6qj8.js} +6 -1
- package/dist/{config-jVLwO6DP.js → config-BUTI-mUZ.js} +6 -1
- package/dist/{config-Bjt5P4vW.js → config-Dz95lSBW.js} +6 -1
- package/dist/{config-cli-DNHtgLYH.js → config-cli-BucNvr-c.js} +2 -2
- package/dist/{config-cli-BOS84uDD.js → config-cli-mU_ckD4l.js} +2 -2
- package/dist/{config-guard-bJv1t515.js → config-guard-B1skCv1C.js} +2 -2
- package/dist/{config-guard-BTGDJDTi.js → config-guard-CEkSg4hl.js} +3 -3
- package/dist/{config-validation-D1EjO6bG.js → config-validation-Cutpn5eO.js} +1 -1
- package/dist/{config-validation-PZAxf4DR.js → config-validation-HDVDlMSV.js} +1 -1
- package/dist/{configure-B7YGhbtM.js → configure-CDOF87Fk.js} +10 -10
- package/dist/{configure-DZQuTL_V.js → configure-CxnBcN95.js} +10 -10
- package/dist/{control-service-B0G5d40m.js → control-service-BYKXzY4f.js} +4 -4
- package/dist/{control-service-BW1BNnC1.js → control-service-rbSHSlcd.js} +4 -4
- package/dist/control-ui/js/app.js +41 -0
- package/dist/{cron-cli-B88WIOK2.js → cron-cli-DCpsXkrw.js} +3 -3
- package/dist/{cron-cli-QxHcrynL.js → cron-cli-QCTdVZuP.js} +3 -3
- package/dist/{daemon-cli-Cy45NZwV.js → daemon-cli-DSDcmWOi.js} +6 -6
- package/dist/{daemon-cli-DK3CCo49.js → daemon-cli-DhJYEAoL.js} +6 -6
- package/dist/daemon-cli.js +6 -1
- package/dist/{daemon-runtime-A-deduW3.js → daemon-runtime-CVFg-ZmT.js} +1 -1
- package/dist/{daemon-runtime-CdKAsAeg.js → daemon-runtime-mE1b-Q48.js} +1 -1
- package/dist/{deliver-BjpaKGTx.js → deliver-B4KZ6-oZ.js} +3 -3
- package/dist/{deliver-BCmoI9iE.js → deliver-Bu0iWeja.js} +3 -3
- package/dist/{deliver-Cm6Yfbzh.js → deliver-C1HRkzPJ.js} +2 -2
- package/dist/{deliver-SIVO_ZZm.js → deliver-DtuY4Wgl.js} +2 -2
- package/dist/{devices-cli-f3yJl6-G.js → devices-cli-BNG-fvdl.js} +2 -2
- package/dist/{devices-cli-D6sKbRkk.js → devices-cli-x3jIP4Ih.js} +2 -2
- package/dist/{directory-cli-DDb20Fzl.js → directory-cli-BxnSZZsW.js} +1 -1
- package/dist/{directory-cli-hohI4d8v.js → directory-cli-KgsAVTA0.js} +1 -1
- package/dist/{dns-cli-DIZyU_2d.js → dns-cli-BuVomfxS.js} +1 -1
- package/dist/{dns-cli-C1SXZIAh.js → dns-cli-Cwr92Aiq.js} +1 -1
- package/dist/{doctor-completion-UC-Jc5jn.js → doctor-completion-CHF_TwGQ.js} +1 -1
- package/dist/{doctor-completion-BayL_S0c.js → doctor-completion-CoftKlUX.js} +1 -1
- package/dist/{doctor-config-flow-DLtGtIf_.js → doctor-config-flow-DhAYwhNB.js} +2 -2
- package/dist/{doctor-config-flow-i4XYSFXR.js → doctor-config-flow-iIzSEQxb.js} +2 -2
- package/dist/entry.js +1 -1
- package/dist/{exec-approvals-cli-DpFjEahL.js → exec-approvals-cli-BSgxsdMt.js} +4 -4
- package/dist/{exec-approvals-cli-Cr-mrEfY.js → exec-approvals-cli-CmndFjEA.js} +4 -4
- package/dist/extensionAPI.js +13 -13
- package/dist/{gateway-cli-Cwh2BbPv.js → gateway-cli-G7fiXsQ6.js} +42 -42
- package/dist/{gateway-cli-BFPPqLYw.js → gateway-cli-SNaqDM7f.js} +41 -41
- package/dist/{gateway-rpc-CS_pPYyV.js → gateway-rpc-5fREQe9Q.js} +1 -1
- package/dist/{gateway-rpc-Ddqs16S-.js → gateway-rpc-BMdVa3QV.js} +1 -1
- package/dist/{glass-ui-ws-DB9p7t4H.js → glass-ui-ws-CF0__vuO.js} +34 -34
- package/dist/{glass-ui-ws-BfHJCfCz.js → glass-ui-ws-he25wGFt.js} +33 -33
- package/dist/{health-Bx6RQ4MZ.js → health-en2N_Kqc.js} +5 -5
- package/dist/{health-CLIwZbJe.js → health-q7706M36.js} +5 -5
- package/dist/{hooks-cli-BgALdxuB.js → hooks-cli-C4rVaLzZ.js} +26 -26
- package/dist/{hooks-cli-CF4fT-gm.js → hooks-cli-ChQbBpyb.js} +27 -27
- package/dist/{image-DI1dYFo0.js → image-BWmcNF8N.js} +2 -2
- package/dist/{image-KpMaj86B.js → image-C3wYkWyK.js} +2 -2
- package/dist/{image-BmIvgTV4.js → image-CbyTdMd5.js} +2 -2
- package/dist/{image-BrxGAFvc.js → image-lp19FlzF.js} +2 -2
- package/dist/index.js +34 -34
- package/dist/{lifecycle-core-BnlvcthF.js → lifecycle-core-BZ5sOcHT.js} +2 -2
- package/dist/{lifecycle-core-D8iU9ahw.js → lifecycle-core-C4HzGXA1.js} +2 -2
- package/dist/llm-slug-generator.js +13 -13
- package/dist/{login-CayZfsyE.js → login-BkbDSDPc.js} +2 -2
- package/dist/{login-bQWLSSfZ.js → login-BtBwGFrb.js} +2 -2
- package/dist/{login-DPxmcuIe.js → login-CiVdC-o_.js} +2 -2
- package/dist/{login-QU18rIZK.js → login-DODfJ3Dn.js} +2 -2
- package/dist/{login-qr-Bn4BQkWf.js → login-qr-CBRxijIg.js} +2 -2
- package/dist/{login-qr-BB2Zfn7K.js → login-qr-DPxuLEvD.js} +2 -2
- package/dist/{login-qr-CPn2Q7vV.js → login-qr-Dbw5m381.js} +2 -2
- package/dist/{login-qr-l5XwJWk9.js → login-qr-q201Ckfe.js} +2 -2
- package/dist/{logs-cli-COwO0YyZ.js → logs-cli-CfGj-dOg.js} +3 -3
- package/dist/{logs-cli-2z1YdwSX.js → logs-cli-DtlrLf7u.js} +3 -3
- package/dist/{memory-cli-B7GV_Iz_.js → memory-cli-Btzr8gfD.js} +1 -1
- package/dist/{memory-cli-9q0ppQpo.js → memory-cli-DDumUksr.js} +1 -1
- package/dist/{model-catalog-CsKgWlNp.js → model-catalog-8Son0J4O.js} +2 -2
- package/dist/{model-catalog-b9o0TtF7.js → model-catalog-DNvgFPZn.js} +2 -2
- package/dist/{model-picker-DBsP93uq.js → model-picker-CAm2Bftd.js} +2 -2
- package/dist/{model-picker-CRy3nJeT.js → model-picker-Casgrpw3.js} +2 -2
- package/dist/{models-CPIhph0W.js → models-DOTpfa7b.js} +8 -8
- package/dist/{models-cli-C01GsvW2.js → models-cli-CBl45f7R.js} +28 -28
- package/dist/{models-cli-CLqS4ENq.js → models-cli-MJAY_Wg4.js} +29 -29
- package/dist/{models-config-Bc8qKqev.js → models-config-Be8DRFkB.js} +1 -1
- package/dist/{models-config-BiIYPWCW.js → models-config-CFFjJPe7.js} +1 -1
- package/dist/{node-cli-BeZKOSYR.js → node-cli-DnfDOh1d.js} +9 -9
- package/dist/{node-cli-74pkmapS.js → node-cli-eHn9-YfJ.js} +9 -9
- package/dist/{nodes-cli-nic1q7eb.js → nodes-cli-Ci3oxw8k.js} +3 -3
- package/dist/{nodes-cli-DJHcnIfL.js → nodes-cli-Ct4M7JOe.js} +3 -3
- package/dist/{onboard-CzncEzdT.js → onboard-Bx02XPb1.js} +7 -7
- package/dist/{onboard-BrxB6sbz.js → onboard-DQdGJ1lE.js} +7 -7
- package/dist/{onboard-channels-BBUPobrz.js → onboard-channels-Bp89ZT6Q.js} +1 -1
- package/dist/{onboard-channels-H11ympjW.js → onboard-channels-Ct2eNYUC.js} +1 -1
- package/dist/{onboard-custom-BFbF4nGV.js → onboard-custom-CQOMQkfS.js} +2 -2
- package/dist/{onboard-custom-Bt-wDMSz.js → onboard-custom-XiomtQr7.js} +2 -2
- package/dist/{onboard-helpers-ChH5EhW2.js → onboard-helpers-BBtPmJEe.js} +2 -2
- package/dist/{onboard-helpers-MnxHJAaB.js → onboard-helpers-DFvWPFhU.js} +2 -2
- package/dist/{onboard-remote-57GHsVPU.js → onboard-remote-BURDxwoE.js} +1 -1
- package/dist/{onboard-remote-BRxgNeoe.js → onboard-remote-D-B4EiOE.js} +1 -1
- package/dist/{onboard-skills-DtcVRCTc.js → onboard-skills-BDCzVjxb.js} +1 -1
- package/dist/{onboard-skills-CLnJpRrp.js → onboard-skills-CbzgBT1W.js} +1 -1
- package/dist/{onboarding-D8p8ii63.js → onboarding-Dnn_0VTy.js} +10 -10
- package/dist/{onboarding-D7hzRo_I.js → onboarding-DxUcsrKV.js} +10 -10
- package/dist/{onboarding.finalize-BJUg2rlZ.js → onboarding.finalize-1kzzMLFM.js} +33 -33
- package/dist/{onboarding.finalize-C-rIKbkf.js → onboarding.finalize-Dwr-jEtL.js} +31 -31
- package/dist/{onboarding.gateway-config-CTbWQvl6.js → onboarding.gateway-config-B9zGPfCl.js} +4 -4
- package/dist/{onboarding.gateway-config-oxW0bLBK.js → onboarding.gateway-config-DKwJ5bWd.js} +4 -4
- package/dist/{outbound-BodV7hPd.js → outbound-BIOChOHt.js} +1 -1
- package/dist/{outbound-BOqx1b0e.js → outbound-Bt8rj9kO.js} +1 -1
- package/dist/{outbound-BhKz3zWF.js → outbound-DL8bdXlZ.js} +1 -1
- package/dist/{outbound-CG3KehgB.js → outbound-wnv03tb3.js} +1 -1
- package/dist/{pairing-cli-RbEs_EMc.js → pairing-cli-DSM82gJG.js} +1 -1
- package/dist/{pairing-cli-NErE7ajG.js → pairing-cli-HDWwcqjZ.js} +1 -1
- package/dist/{pi-embedded-b2yPH0UQ.js → pi-embedded-BfEg6Wwb.js} +377 -247
- package/dist/{pi-embedded-helpers-CeNTB0sV.js → pi-embedded-helpers-BgdB5kvy.js} +1 -1
- package/dist/{pi-embedded-helpers-cgZRM5cz.js → pi-embedded-helpers-DA4liAIZ.js} +1 -1
- package/dist/{pi-embedded-helpers-Bdac0DIf.js → pi-embedded-helpers-Dij3O6ox.js} +5 -5
- package/dist/{pi-embedded-helpers-BDI11Fqj.js → pi-embedded-helpers-GaCyI2oH.js} +5 -5
- package/dist/{pi-tools.policy-BYklnTNc.js → pi-tools.policy-DRWb_Cax.js} +2 -2
- package/dist/{pi-tools.policy-B4NDL7r-.js → pi-tools.policy-DxNwL7Dl.js} +2 -2
- package/dist/{plugin-registry-CzWOGG0k.js → plugin-registry-BMFEJ4FA.js} +2 -2
- package/dist/{plugin-registry-29yLAS46.js → plugin-registry-wAQeBSeD.js} +2 -2
- package/dist/plugin-sdk/agents/session-empty-prune.d.ts +37 -0
- package/dist/plugin-sdk/agents/session-transcript-repair.d.ts +8 -0
- package/dist/plugin-sdk/{audio-preflight-DSEypXnx.js → audio-preflight-BacDFPyc.js} +5 -5
- package/dist/plugin-sdk/{channel-web-DwLIjUen.js → channel-web-Ba27v-Om.js} +7 -7
- package/dist/plugin-sdk/{chrome-DC-la42T.js → chrome-BMimuhgP.js} +1 -1
- package/dist/plugin-sdk/config/model-profiles.d.ts +7 -0
- package/dist/plugin-sdk/config/zod-schema.core.d.ts +2 -0
- package/dist/plugin-sdk/config/zod-schema.d.ts +1 -0
- package/dist/plugin-sdk/{config-DgwyZd2S.js → config-DdA6JiyD.js} +6 -1
- package/dist/plugin-sdk/{deliver-7pgLdSpM.js → deliver-Bxa1-mj5.js} +2 -2
- package/dist/plugin-sdk/{image-CqMZSk6f.js → image-aq-JAobP.js} +2 -2
- package/dist/plugin-sdk/index.js +17 -17
- package/dist/plugin-sdk/{login-DJzS9QT2.js → login-CHgiUvI_.js} +2 -2
- package/dist/plugin-sdk/{login-qr-DziBjQY5.js → login-qr-D5vJo1fy.js} +2 -2
- package/dist/plugin-sdk/{outbound-DmsEc64Z.js → outbound-CD38Hxn9.js} +1 -1
- package/dist/plugin-sdk/{pi-embedded-helpers-C33OSgwG.js → pi-embedded-helpers-BPvzgLtj.js} +5 -5
- package/dist/plugin-sdk/{pw-ai-MIepjtIO.js → pw-ai-fdBOQzz5.js} +2 -2
- package/dist/plugin-sdk/{replies-Bw1Amxop.js → replies-CW_-4klO.js} +1 -1
- package/dist/plugin-sdk/{reply-BxYNpQRu.js → reply-Bok_WQGW.js} +377 -247
- package/dist/plugin-sdk/{runner-Bh4NdzRK.js → runner-BQJ7x06O.js} +2 -2
- package/dist/plugin-sdk/{send-CENVp2ol.js → send-C4t6h9-o.js} +1 -1
- package/dist/plugin-sdk/{send-Bf62p_ul.js → send-Cz_FQ8Ao.js} +1 -1
- package/dist/plugin-sdk/{send-D5_J2DiV.js → send-DG6c7BpZ.js} +1 -1
- package/dist/plugin-sdk/{send-P1G7c4FN.js → send-HKy51Hz_.js} +1 -1
- package/dist/plugin-sdk/{send-Ddy4p4LW.js → send-Xy1L54q4.js} +1 -1
- package/dist/plugin-sdk/{session-Z4-R_Top.js → session-BUzIlHr9.js} +1 -1
- package/dist/plugin-sdk/{web-DiNM_c37.js → web-BoOAa0Xn.js} +17 -17
- package/dist/plugin-sdk/{whatsapp-actions-Bg6DfWkN.js → whatsapp-actions-CZLagx0h.js} +2 -2
- package/dist/{plugins-cli-D4bGKnOF.js → plugins-cli-B36YKKla.js} +26 -26
- package/dist/{plugins-cli-DZ6arND4.js → plugins-cli-DoJbbST7.js} +27 -27
- package/dist/{program-DE9DbHYV.js → program-4f7W2RMs.js} +33 -33
- package/dist/{program-context-iI9_njQv.js → program-context-Y4KnAKNT.js} +38 -38
- package/dist/{prompt-select-styled-SHa0ZJL9.js → prompt-select-styled-D0sLJ4TD.js} +14 -14
- package/dist/{prompt-select-styled-D0ELdY0x.js → prompt-select-styled-Dql_0SI0.js} +14 -14
- package/dist/{provider-auth-helpers-EMBbfX3w.js → provider-auth-helpers-CJbHC_mv.js} +2 -2
- package/dist/{provider-auth-helpers-BI2k0jlH.js → provider-auth-helpers-GSv3namf.js} +2 -2
- package/dist/{push-apns-DyeCPAvI.js → push-apns-giplY7u-.js} +1 -1
- package/dist/{push-apns-DcbeaY5y.js → push-apns-sxB8QxSj.js} +1 -1
- package/dist/{pw-ai-LB6wkt8h.js → pw-ai-BCSFVeD5.js} +2 -2
- package/dist/{pw-ai-sY1BRRsq.js → pw-ai-BO5cSmwD.js} +2 -2
- package/dist/{pw-ai-C2z2aMEp.js → pw-ai-DQohWnzT.js} +2 -2
- package/dist/{pw-ai-C_7yEh9n.js → pw-ai-pQoxTh-a.js} +2 -2
- package/dist/{qr-cli-B-NWpxfN.js → qr-cli-CejYwqsj.js} +1 -1
- package/dist/{qr-cli-TaubpmtG.js → qr-cli-XttU2KOR.js} +1 -1
- package/dist/{register.agent-D4o7bi_u.js → register.agent-_2tVQLMK.js} +34 -34
- package/dist/{register.agent-D-1w3KOa.js → register.agent-vd2BSsyE.js} +32 -32
- package/dist/{register.configure-BIczNshG.js → register.configure-BVKwTrz8.js} +37 -37
- package/dist/{register.configure-BYCEJg1c.js → register.configure-D-XV6_Nb.js} +36 -36
- package/dist/{register.maintenance-k6z5GVrO.js → register.maintenance-BqYR2fop.js} +36 -36
- package/dist/{register.maintenance-Syt4oSuk.js → register.maintenance-XySU31jf.js} +34 -34
- package/dist/{register.message-Bi7QLNId.js → register.message-CCfWNWs3.js} +26 -26
- package/dist/{register.message-BJeeT9xQ.js → register.message-DOyREWdG.js} +27 -27
- package/dist/{register.onboard-B_FeHkL-.js → register.onboard-Dy_D_uMj.js} +33 -33
- package/dist/{register.onboard-DDbxMjmt.js → register.onboard-zmF-euog.js} +32 -32
- package/dist/{register.setup-Cpl67hQ6.js → register.setup-DiGPa1Fw.js} +32 -32
- package/dist/{register.setup-CPi3uss4.js → register.setup-cE7gPp2m.js} +33 -33
- package/dist/{register.status-health-sessions-DsY8YuEo.js → register.status-health-sessions-DWKL1rkz.js} +29 -29
- package/dist/{register.status-health-sessions-CHPN3CNt.js → register.status-health-sessions-ksv1WnIs.js} +31 -31
- package/dist/{register.subclis-D5JRuk93.js → register.subclis-Crt_IYK0.js} +28 -28
- package/dist/{replies-cMkt1-fW.js → replies-BMqtgBhh.js} +1 -1
- package/dist/{replies-CYuZN9PJ.js → replies-Bo49QlAg.js} +1 -1
- package/dist/{replies-C2sQt_cX.js → replies-CBS0567j.js} +1 -1
- package/dist/{replies-zOTZyd6v.js → replies-CfyMcfoY.js} +1 -1
- package/dist/{reply-D55iMWI5.js → reply-CjYJHt_H.js} +388 -258
- package/dist/{routes-ClhmdN8I.js → routes-BAZTZNuQ.js} +3 -3
- package/dist/{routes-DRkO6iuR.js → routes-CMvgBDOg.js} +3 -3
- package/dist/{rpc-DvA01fCj.js → rpc-Co5PQ3IJ.js} +1 -1
- package/dist/{rpc-UsQvUYIP.js → rpc-D0FiEinj.js} +1 -1
- package/dist/{run-main-BWoPODyq.js → run-main-bOlPbL7t.js} +44 -44
- package/dist/{runner-_7xOqQDP.js → runner-B0AbN8wV.js} +2 -2
- package/dist/{runner-CtF7EgsD.js → runner-Ct0suQrd.js} +2 -2
- package/dist/{runner-D3aZ5p3H.js → runner-DRv0uCK_.js} +3 -3
- package/dist/{runner-z_tSZGY5.js → runner-Dd2bbNGV.js} +3 -3
- package/dist/{sandbox-rjqN2SHD.js → sandbox-B6N8cV4d.js} +5 -5
- package/dist/{sandbox-DrIHYiE6.js → sandbox-DY75ZyJD.js} +5 -5
- package/dist/{sandbox-cli-QpZpJ6Hq.js → sandbox-cli-BDM_QM_f.js} +6 -6
- package/dist/{sandbox-cli-BiiThMpq.js → sandbox-cli-DwzaNjIJ.js} +6 -6
- package/dist/{security-cli-DxNPZzVB.js → security-cli-CG1uSlRK.js} +9 -9
- package/dist/{security-cli-s_AbIm-b.js → security-cli-D5BWzqEJ.js} +9 -9
- package/dist/{send-C1ptDV-M.js → send-9SapUCg7.js} +1 -1
- package/dist/{send-DV8npIWi.js → send-B3RdXvjC.js} +1 -1
- package/dist/{send-CVSO0ZdD.js → send-B7HhiTdx.js} +1 -1
- package/dist/{send-DryK_KEK.js → send-B986asZ7.js} +1 -1
- package/dist/{send-DNJAa7Q_.js → send-B9EinkUl.js} +1 -1
- package/dist/{send-De1p8sZA.js → send-BNnv8GtF.js} +1 -1
- package/dist/{send-B9pwTYyE.js → send-BhJZ16uV.js} +1 -1
- package/dist/{send-B62vYwo8.js → send-Bm4ULEzh.js} +1 -1
- package/dist/{send-BJNUY-9E.js → send-BzKHnf3b.js} +1 -1
- package/dist/{send-C6jy9sVB.js → send-CC9V8V81.js} +1 -1
- package/dist/{send-DK-Jat_i.js → send-CQVnyJyF.js} +1 -1
- package/dist/{send-Dx7S4jGp.js → send-CZemAajS.js} +1 -1
- package/dist/{send-BTXR3fPR.js → send-DI9Vhnmw.js} +1 -1
- package/dist/{send-BvCit35j.js → send-DLWaX69q.js} +1 -1
- package/dist/{send-qSITFlVc.js → send-DSnJ503J.js} +1 -1
- package/dist/{send-B7MtdeLq.js → send-DVm0du0_.js} +1 -1
- package/dist/{send-D8DhbDGm.js → send-DaBsat3L.js} +1 -1
- package/dist/{send-iIqnmxNc.js → send-DdLJtOjk.js} +1 -1
- package/dist/{send-4MJyhXk5.js → send-DlQtxlG_.js} +1 -1
- package/dist/{send-DiYc3Z2y.js → send-RfIXG6-I.js} +1 -1
- package/dist/{server-context-C3fvq6h5.js → server-context-CCBZN8a0.js} +5 -5
- package/dist/{server-context-CtYkBX0P.js → server-context-DK-T2rBR.js} +5 -5
- package/dist/{server-methods-DY-jApXo.js → server-methods-CiwWwj6K.js} +15 -15
- package/dist/{server-methods-C4oRmj--.js → server-methods-VimYvcpY.js} +16 -16
- package/dist/{server-node-events--9s3cGoR.js → server-node-events-CHmLiFNV.js} +27 -27
- package/dist/{server-node-events-Bw6yFsJP.js → server-node-events-DYC45lKC.js} +26 -26
- package/dist/{session-XfYb9nxX.js → session-C1cn-CxQ.js} +1 -1
- package/dist/{session-BmC1G2OF.js → session-CUeezgP1.js} +1 -1
- package/dist/{session-3P44Lx9Z.js → session-DsJGtM7g.js} +1 -1
- package/dist/{session-utils-DlQSI-Te.js → session-utils-B8Fif925.js} +3 -3
- package/dist/{session-BUTPdQjj.js → session-v_9AVJhH.js} +1 -1
- package/dist/{sessions-Dxc5UV-H.js → sessions-Cfa6JEB3.js} +1 -1
- package/dist/{sessions-9tWmT3oM.js → sessions-Cpgnq0pA.js} +1 -1
- package/dist/{sessions-BL_hivz0.js → sessions-DfbhRBHR.js} +3 -3
- package/dist/{shared-DEvSdt0I.js → shared-73T9fyuK.js} +1 -1
- package/dist/{shared-DwzDlNQn.js → shared-DdxPzyOH.js} +1 -1
- package/dist/{skills-cli-BHJAAvDv.js → skills-cli-DXkx4vNV.js} +1 -1
- package/dist/{skills-cli-CES7tX87.js → skills-cli-uEA9KXOO.js} +1 -1
- package/dist/{status-DxqgzaIz.js → status-CA5wJHMj.js} +2 -2
- package/dist/{status-CfCqG5a6.js → status-DEpM69Pd.js} +9 -9
- package/dist/{status-CPQrmN1p.js → status-Dt_MXoNa.js} +2 -2
- package/dist/{status-DZHTCKq_.js → status-DxhtJtzE.js} +10 -10
- package/dist/{status.update-BhJp4NkS.js → status.update-C2GN8s9C.js} +1 -1
- package/dist/{status.update-DqXGFKta.js → status.update-CG0ciGaf.js} +1 -1
- package/dist/{subagent-registry-BGKDFTRA.js → subagent-registry-BPwn3Qm7.js} +389 -259
- package/dist/{system-cli-BrZGQcZl.js → system-cli-DFZNGx0i.js} +3 -3
- package/dist/{system-cli-CjgIC8rh.js → system-cli-Z7uzO8qd.js} +3 -3
- package/dist/{systemd-hints-B8AHs8Nn.js → systemd-hints-DT6cDIM2.js} +1 -1
- package/dist/{systemd-hints-DUXXob94.js → systemd-hints-xYZbFny_.js} +1 -1
- package/dist/{tui-BktCSga7.js → tui-DjPsMdL6.js} +4 -4
- package/dist/{tui-CAzxJ9EP.js → tui-DrATGNms.js} +4 -4
- package/dist/{tui-cli-AXeYpVcb.js → tui-cli-D19-MCXt.js} +9 -9
- package/dist/{tui-cli-Bz3RdHqe.js → tui-cli-pWD_NrUR.js} +9 -9
- package/dist/{unified-runner-BhGMOS0G.js → unified-runner-CVkyzT1I.js} +166 -36
- package/dist/{update-cli-n_Tkv8N_.js → update-cli-Dh_dfprI.js} +39 -39
- package/dist/{update-cli-C8EpxduY.js → update-cli-Dv4c5Gup.js} +37 -37
- package/dist/{update-runner-CowTMnrt.js → update-runner-CG_kbbGR.js} +1 -1
- package/dist/{update-runner-Tk50GxTW.js → update-runner-MMFI1UZ0.js} +1 -1
- package/dist/{web-CMLJq-WC.js → web-BUc-ts5b.js} +16 -16
- package/dist/{web-Cz8o-Hc9.js → web-CJk-lv93.js} +16 -16
- package/dist/{web-ONk39lyq.js → web-CfVd3Mhp.js} +29 -29
- package/dist/{web-BIpIz8vD.js → web-DCBOD-Vj.js} +29 -29
- package/dist/{webhooks-cli-v0rfBwU8.js → webhooks-cli-BRxe4uCg.js} +1 -1
- package/dist/{webhooks-cli-Da8YhVu4.js → webhooks-cli-CsRZl0_H.js} +1 -1
- package/dist/{whatsapp-actions-Cz2qhCrD.js → whatsapp-actions-7YbV2-Fv.js} +2 -2
- package/dist/{whatsapp-actions-Ba3KBpGu.js → whatsapp-actions-BylecqEa.js} +2 -2
- package/dist/{whatsapp-actions-AEeCOVko.js → whatsapp-actions-ChO_shrk.js} +2 -2
- package/dist/{whatsapp-actions-BPn8FtPC.js → whatsapp-actions-mBarFBeS.js} +2 -2
- package/dist/{with-timeout-487M8IgO.js → with-timeout-Cgi3TwWN.js} +1 -1
- package/dist/{with-timeout-BU7MJQDD.js → with-timeout-CtVdu_1U.js} +1 -1
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/google-antigravity-auth/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/learning-loop/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +6 -0
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +6 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +6 -0
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/outlook/package.json +1 -1
- package/extensions/pipeline/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +6 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +6 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +6 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +6 -0
- package/extensions/zalouser/package.json +1 -1
- package/package.json +1 -1
|
@@ -9,14 +9,14 @@ import "./github-copilot-token-DAu1a6BX.js";
|
|
|
9
9
|
import "./boolean-BsqeuxE6.js";
|
|
10
10
|
import "./env-DPCHYPeH.js";
|
|
11
11
|
import "./message-channel-aT-I_DTX.js";
|
|
12
|
-
import "./config-
|
|
12
|
+
import "./config-Dz95lSBW.js";
|
|
13
13
|
import "./manifest-registry-C4BxOMWX.js";
|
|
14
14
|
import "./client-jI1oE0_k.js";
|
|
15
|
-
import "./call-
|
|
15
|
+
import "./call-DwpGquzW.js";
|
|
16
16
|
import "./pairing-token-CX3NN_qj.js";
|
|
17
17
|
import { t as formatDocsLink } from "./links-3i1eUga4.js";
|
|
18
18
|
import "./progress-jIePzvGA.js";
|
|
19
|
-
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-
|
|
19
|
+
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-5fREQe9Q.js";
|
|
20
20
|
|
|
21
21
|
//#region src/cli/system-cli.ts
|
|
22
22
|
const normalizeWakeMode = (raw) => {
|
|
@@ -4,14 +4,14 @@ import "./exec-CBKBIMpA.js";
|
|
|
4
4
|
import "./agent-scope-D-jRCY0d.js";
|
|
5
5
|
import "./github-copilot-token-DuFIqfeC.js";
|
|
6
6
|
import "./manifest-registry-Czr39pxG.js";
|
|
7
|
-
import "./config-
|
|
7
|
+
import "./config-BNTB6qj8.js";
|
|
8
8
|
import "./client-T3qcxXru.js";
|
|
9
|
-
import "./call-
|
|
9
|
+
import "./call-DKi-hnaF.js";
|
|
10
10
|
import "./message-channel-C9dERklz.js";
|
|
11
11
|
import "./pairing-token-Byh6drgn.js";
|
|
12
12
|
import { t as formatDocsLink } from "./links-DlWpl9Yv.js";
|
|
13
13
|
import "./progress-BAHiAaDW.js";
|
|
14
|
-
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-
|
|
14
|
+
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-BMdVa3QV.js";
|
|
15
15
|
|
|
16
16
|
//#region src/cli/system-cli.ts
|
|
17
17
|
const normalizeWakeMode = (raw) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as formatCliCommand } from "./command-format-BtYOfWxC.js";
|
|
2
|
-
import { d as isVersionManagedNodePath, h as resolveSystemNodePath, l as getMinimalServicePathPartsFromEnv, u as isSystemNodePath } from "./daemon-runtime-
|
|
2
|
+
import { d as isVersionManagedNodePath, h as resolveSystemNodePath, l as getMinimalServicePathPartsFromEnv, u as isSystemNodePath } from "./daemon-runtime-CVFg-ZmT.js";
|
|
3
3
|
import { o as resolveSystemdUserUnitPath } from "./systemd-DlMdyFDY.js";
|
|
4
4
|
import { c as resolveLaunchAgentPlistPath } from "./service-Cm9j9WzQ.js";
|
|
5
5
|
import { t as formatRuntimeStatusWithDetails } from "./runtime-status-hFVEC3wO.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as formatCliCommand } from "./command-format-COaS-S7B.js";
|
|
2
|
-
import { d as isVersionManagedNodePath, h as resolveSystemNodePath, l as getMinimalServicePathPartsFromEnv, u as isSystemNodePath } from "./daemon-runtime-
|
|
2
|
+
import { d as isVersionManagedNodePath, h as resolveSystemNodePath, l as getMinimalServicePathPartsFromEnv, u as isSystemNodePath } from "./daemon-runtime-mE1b-Q48.js";
|
|
3
3
|
import { o as resolveSystemdUserUnitPath } from "./systemd-DT6SbCim.js";
|
|
4
4
|
import { c as resolveLaunchAgentPlistPath } from "./service-osK70kTZ.js";
|
|
5
5
|
import { t as formatRuntimeStatusWithDetails } from "./runtime-status-D6c3G7my.js";
|
|
@@ -3,13 +3,13 @@ import { S as parseAgentSessionKey, c as normalizeMainKey, r as buildAgentMainSe
|
|
|
3
3
|
import { l as stripAnsi, u as visibleWidth } from "./subsystem-D9vIQve0.js";
|
|
4
4
|
import { l as resolveDefaultAgentId } from "./agent-scope-CgUHAtCo.js";
|
|
5
5
|
import { f as GATEWAY_CLIENT_CAPS, h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-aT-I_DTX.js";
|
|
6
|
-
import { H as VERSION, i as loadConfig } from "./config-
|
|
7
|
-
import { _ as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-
|
|
8
|
-
import { k as stripLeadingInboundMetadata } from "./sessions-
|
|
6
|
+
import { H as VERSION, i as loadConfig } from "./config-Dz95lSBW.js";
|
|
7
|
+
import { _ as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-BgdB5kvy.js";
|
|
8
|
+
import { k as stripLeadingInboundMetadata } from "./sessions-Cpgnq0pA.js";
|
|
9
9
|
import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-D8N3rsYt.js";
|
|
10
10
|
import { a as listChatCommandsForConfig, i as listChatCommands } from "./commands-registry-BT0-zzs3.js";
|
|
11
11
|
import { At as PROTOCOL_VERSION, t as GatewayClient } from "./client-jI1oE0_k.js";
|
|
12
|
-
import { i as ensureExplicitGatewayAuth, o as resolveExplicitGatewayAuth, t as buildGatewayConnectionDetails } from "./call-
|
|
12
|
+
import { i as ensureExplicitGatewayAuth, o as resolveExplicitGatewayAuth, t as buildGatewayConnectionDetails } from "./call-DwpGquzW.js";
|
|
13
13
|
import { n as formatTimeAgo, t as formatRelativeTimestamp } from "./format-relative-BXoxEQVN.js";
|
|
14
14
|
import { n as formatTokenCount } from "./usage-format-BgUx3Bm4.js";
|
|
15
15
|
import chalk from "chalk";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { h as visibleWidth, m as stripAnsi } from "./entry.js";
|
|
2
2
|
import { S as parseAgentSessionKey, c as normalizeMainKey, r as buildAgentMainSessionKey, s as normalizeAgentId } from "./session-key-DjZ7Z1hW.js";
|
|
3
3
|
import { l as resolveDefaultAgentId } from "./agent-scope-D-jRCY0d.js";
|
|
4
|
-
import { H as VERSION, i as loadConfig } from "./config-
|
|
4
|
+
import { H as VERSION, i as loadConfig } from "./config-BNTB6qj8.js";
|
|
5
5
|
import { At as PROTOCOL_VERSION, t as GatewayClient } from "./client-T3qcxXru.js";
|
|
6
|
-
import { i as ensureExplicitGatewayAuth, o as resolveExplicitGatewayAuth, t as buildGatewayConnectionDetails } from "./call-
|
|
6
|
+
import { i as ensureExplicitGatewayAuth, o as resolveExplicitGatewayAuth, t as buildGatewayConnectionDetails } from "./call-DKi-hnaF.js";
|
|
7
7
|
import { f as GATEWAY_CLIENT_CAPS, h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-C9dERklz.js";
|
|
8
|
-
import { C as stripLeadingInboundMetadata } from "./sessions-
|
|
9
|
-
import { _ as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-
|
|
8
|
+
import { C as stripLeadingInboundMetadata } from "./sessions-Cfa6JEB3.js";
|
|
9
|
+
import { _ as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-DA4liAIZ.js";
|
|
10
10
|
import { c as normalizeUsageDisplay, r as listThinkingLevelLabels, t as formatThinkingLevels, u as resolveResponseUsageMode } from "./thinking-8sKPnzpp.js";
|
|
11
11
|
import { a as listChatCommandsForConfig, i as listChatCommands } from "./commands-registry-D1K_inhv.js";
|
|
12
12
|
import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-CXwOC-qw.js";
|
|
@@ -6,25 +6,25 @@ import "./github-copilot-token-DuFIqfeC.js";
|
|
|
6
6
|
import "./frontmatter-B8duUx_6.js";
|
|
7
7
|
import "./skills-hAdgFdrv.js";
|
|
8
8
|
import "./manifest-registry-Czr39pxG.js";
|
|
9
|
-
import "./config-
|
|
9
|
+
import "./config-BNTB6qj8.js";
|
|
10
10
|
import "./client-T3qcxXru.js";
|
|
11
|
-
import "./call-
|
|
11
|
+
import "./call-DKi-hnaF.js";
|
|
12
12
|
import "./message-channel-C9dERklz.js";
|
|
13
13
|
import "./pairing-token-Byh6drgn.js";
|
|
14
|
-
import "./sessions-
|
|
14
|
+
import "./sessions-Cfa6JEB3.js";
|
|
15
15
|
import "./plugins-CwSlLxM8.js";
|
|
16
16
|
import "./accounts-D9ITgITj.js";
|
|
17
17
|
import "./bindings-DlWb_Kaq.js";
|
|
18
18
|
import "./logging-CFvkxgcX.js";
|
|
19
19
|
import "./accounts-D1eLj5t8.js";
|
|
20
20
|
import "./image-ops-CUkaZz2F.js";
|
|
21
|
-
import "./pi-embedded-helpers-
|
|
22
|
-
import "./sandbox-
|
|
23
|
-
import "./chrome-
|
|
21
|
+
import "./pi-embedded-helpers-DA4liAIZ.js";
|
|
22
|
+
import "./sandbox-DY75ZyJD.js";
|
|
23
|
+
import "./chrome-DAw-AWNi.js";
|
|
24
24
|
import "./tailscale-CbbvYNVw.js";
|
|
25
25
|
import "./auth-BfDMhFAj.js";
|
|
26
|
-
import "./server-context-
|
|
27
|
-
import "./routes-
|
|
26
|
+
import "./server-context-DK-T2rBR.js";
|
|
27
|
+
import "./routes-CMvgBDOg.js";
|
|
28
28
|
import "./redact-B40lik2B.js";
|
|
29
29
|
import "./errors-Ba_ROWsq.js";
|
|
30
30
|
import "./fs-safe-CERgjtot.js";
|
|
@@ -43,7 +43,7 @@ import "./commands-registry-D1K_inhv.js";
|
|
|
43
43
|
import "./tool-display-CXwOC-qw.js";
|
|
44
44
|
import { t as parseTimeoutMs } from "./parse-timeout-zNJBr1fY.js";
|
|
45
45
|
import { t as formatDocsLink } from "./links-DlWpl9Yv.js";
|
|
46
|
-
import { t as runTui } from "./tui-
|
|
46
|
+
import { t as runTui } from "./tui-DrATGNms.js";
|
|
47
47
|
|
|
48
48
|
//#region src/cli/tui-cli.ts
|
|
49
49
|
function registerTuiCli(program) {
|
|
@@ -10,17 +10,17 @@ import "./github-copilot-token-DAu1a6BX.js";
|
|
|
10
10
|
import "./boolean-BsqeuxE6.js";
|
|
11
11
|
import "./env-DPCHYPeH.js";
|
|
12
12
|
import "./message-channel-aT-I_DTX.js";
|
|
13
|
-
import "./config-
|
|
13
|
+
import "./config-Dz95lSBW.js";
|
|
14
14
|
import "./manifest-registry-C4BxOMWX.js";
|
|
15
|
-
import "./pi-embedded-helpers-
|
|
16
|
-
import "./sandbox-
|
|
17
|
-
import "./chrome-
|
|
15
|
+
import "./pi-embedded-helpers-BgdB5kvy.js";
|
|
16
|
+
import "./sandbox-B6N8cV4d.js";
|
|
17
|
+
import "./chrome-DU2ZysN3.js";
|
|
18
18
|
import "./tailscale-D5dKabOc.js";
|
|
19
19
|
import "./auth-B741uFtk.js";
|
|
20
|
-
import "./server-context-
|
|
20
|
+
import "./server-context-CCBZN8a0.js";
|
|
21
21
|
import "./frontmatter-DWQhtOo7.js";
|
|
22
22
|
import "./skills-6jdJQ5ZL.js";
|
|
23
|
-
import "./routes-
|
|
23
|
+
import "./routes-BAZTZNuQ.js";
|
|
24
24
|
import "./redact-f-Q-hFt_.js";
|
|
25
25
|
import "./errors-BF3TeRH2.js";
|
|
26
26
|
import "./fs-safe-CUjO1ca2.js";
|
|
@@ -30,7 +30,7 @@ import "./image-ops-1OJMSAUX.js";
|
|
|
30
30
|
import "./store-r1DJSDq-.js";
|
|
31
31
|
import "./ports-BOmtxoTv.js";
|
|
32
32
|
import "./trash-DcMh1i4B.js";
|
|
33
|
-
import "./sessions-
|
|
33
|
+
import "./sessions-Cpgnq0pA.js";
|
|
34
34
|
import "./dock-BhS32F6E.js";
|
|
35
35
|
import "./plugins-DKDeQZF0.js";
|
|
36
36
|
import "./accounts-DDuIpcln.js";
|
|
@@ -44,11 +44,11 @@ import "./tool-display-D8N3rsYt.js";
|
|
|
44
44
|
import "./commands-BNLCWX6e.js";
|
|
45
45
|
import "./commands-registry-BT0-zzs3.js";
|
|
46
46
|
import "./client-jI1oE0_k.js";
|
|
47
|
-
import "./call-
|
|
47
|
+
import "./call-DwpGquzW.js";
|
|
48
48
|
import "./pairing-token-CX3NN_qj.js";
|
|
49
49
|
import { t as formatDocsLink } from "./links-3i1eUga4.js";
|
|
50
50
|
import { t as parseTimeoutMs } from "./parse-timeout-2S5vp0-9.js";
|
|
51
|
-
import { t as runTui } from "./tui-
|
|
51
|
+
import { t as runTui } from "./tui-DjPsMdL6.js";
|
|
52
52
|
|
|
53
53
|
//#region src/cli/tui-cli.ts
|
|
54
54
|
function registerTuiCli(program) {
|
|
@@ -10,10 +10,10 @@ import { $ as resolveAuthProfileDisplayLabel, B as resolveApiKeyForProvider, C a
|
|
|
10
10
|
import { n as formatCliCommand, r as resolveCliName, t as isTruthyEnvValue } from "./env-BDXYbTKj.js";
|
|
11
11
|
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-cCYzSU9h.js";
|
|
12
12
|
import { t as parseBooleanValue$1 } from "./boolean-CE7i9tBR.js";
|
|
13
|
-
import { $ as normalizeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, G as updateLastRoute, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as isCacheEnabled, Jt as ensureSessionHeader, K as updateSessionStore, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as mergeDeliveryContext, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as deliveryContextFromSession, Xt as resolveBootstrapTotalMaxChars, Y as resolveCacheTtlMs$1, Yt as resolveBootstrapMaxChars, Z as deliveryContextKey, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as resolveFreshSessionTotalTokens, a as isMessagingToolDuplicateNormalized, at as extractToolCallNames, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as hasInterSessionUserProvenance, d as isAntigravityClaude, dt as evaluateSessionFreshness, et as normalizeSessionDeliveryFields, f as isGoogleModelApi, ft as resolveChannelResetConfig, g as formatBillingErrorMessage, gt as DEFAULT_RESET_TRIGGERS, h as formatAssistantErrorText, ht as resolveThreadFlag, it as countToolResults, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as normalizeInputProvenance, m as classifyFailoverReason, mt as resolveSessionResetType, n as validateGeminiTurns, nt as archiveSessionTranscripts, o as normalizeTextForComparison, ot as INPUT_PROVENANCE_KIND_VALUES, p as BILLING_ERROR_USER_MESSAGE, pt as resolveSessionResetPolicy, q as updateSessionStoreEntry, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as capArrayByJsonBytes, s as sanitizeSessionMessagesImages, st as applyInputProvenanceToUserMessage, t as validateAnthropicTurns, tt as normalizeAccountId$3, u as downgradeOpenAIReasoningBlocks, ut as resolveSessionKey, v as getApiErrorPayloadFingerprint, vt as canonicalizeMainSessionAlias, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-
|
|
14
|
-
import { A as VERSION, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, O as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, S as unsetConfigOverride, T as setConfigValueAtPath, _ as parseDurationMs, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, f as isInboundPathAllowed, g as normalizeScpRemoteHost, h as resolveIMessageRemoteAttachmentRoots, i as resolveConfigSnapshotHash, k as resolveAgentMaxConcurrent, l as normalizeTelegramCommandName, m as resolveIMessageAttachmentRoots, n as loadConfig, o as validateConfigObjectWithPlugins, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as validateJsonSchemaValue, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-
|
|
13
|
+
import { $ as normalizeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, G as updateLastRoute, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as isCacheEnabled, Jt as ensureSessionHeader, K as updateSessionStore, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as mergeDeliveryContext, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as deliveryContextFromSession, Xt as resolveBootstrapTotalMaxChars, Y as resolveCacheTtlMs$1, Yt as resolveBootstrapMaxChars, Z as deliveryContextKey, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as resolveFreshSessionTotalTokens, a as isMessagingToolDuplicateNormalized, at as extractToolCallNames, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as hasInterSessionUserProvenance, d as isAntigravityClaude, dt as evaluateSessionFreshness, et as normalizeSessionDeliveryFields, f as isGoogleModelApi, ft as resolveChannelResetConfig, g as formatBillingErrorMessage, gt as DEFAULT_RESET_TRIGGERS, h as formatAssistantErrorText, ht as resolveThreadFlag, it as countToolResults, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as normalizeInputProvenance, m as classifyFailoverReason, mt as resolveSessionResetType, n as validateGeminiTurns, nt as archiveSessionTranscripts, o as normalizeTextForComparison, ot as INPUT_PROVENANCE_KIND_VALUES, p as BILLING_ERROR_USER_MESSAGE, pt as resolveSessionResetPolicy, q as updateSessionStoreEntry, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as capArrayByJsonBytes, s as sanitizeSessionMessagesImages, st as applyInputProvenanceToUserMessage, t as validateAnthropicTurns, tt as normalizeAccountId$3, u as downgradeOpenAIReasoningBlocks, ut as resolveSessionKey, v as getApiErrorPayloadFingerprint, vt as canonicalizeMainSessionAlias, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-GaCyI2oH.js";
|
|
14
|
+
import { A as VERSION, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, O as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, S as unsetConfigOverride, T as setConfigValueAtPath, _ as parseDurationMs, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, f as isInboundPathAllowed, g as normalizeScpRemoteHost, h as resolveIMessageRemoteAttachmentRoots, i as resolveConfigSnapshotHash, k as resolveAgentMaxConcurrent, l as normalizeTelegramCommandName, m as resolveIMessageAttachmentRoots, n as loadConfig, o as validateConfigObjectWithPlugins, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as validateJsonSchemaValue, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-B6OxYMgn.js";
|
|
15
15
|
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-yb7sAlu4.js";
|
|
16
|
-
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
16
|
+
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-BYOhnxTr.js";
|
|
17
17
|
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-Bs0AW1g3.js";
|
|
18
18
|
import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-XIsvXeC-.js";
|
|
19
19
|
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-C7CauEK8.js";
|
|
@@ -27,17 +27,17 @@ import { _ as resolveDiscordAccount, a as normalizeWhatsAppTarget, c as listTele
|
|
|
27
27
|
import { a as logoutWeb, i as logWebSelfId, l as readWebSelfId, p as webAuthExists, r as getWebAuthAgeMs, t as resolveWhatsAppAccount } from "./accounts-BRw8yhIW.js";
|
|
28
28
|
import { t as resolveIMessageAccount } from "./accounts-3dCrO3oZ.js";
|
|
29
29
|
import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-BuZxOb3B.js";
|
|
30
|
-
import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-
|
|
31
|
-
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-
|
|
30
|
+
import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-DI9Vhnmw.js";
|
|
31
|
+
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-BNnv8GtF.js";
|
|
32
32
|
import { t as emitSessionTranscriptUpdate } from "./transcript-events-BBh3Gsrx.js";
|
|
33
33
|
import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-SqqWIT22.js";
|
|
34
|
-
import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-
|
|
34
|
+
import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-C1HRkzPJ.js";
|
|
35
35
|
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-CQiU0O8b.js";
|
|
36
36
|
import { r as getDiagnosticSessionState } from "./diagnostic-session-state-Zw87xFym.js";
|
|
37
|
-
import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-
|
|
37
|
+
import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-CbyTdMd5.js";
|
|
38
38
|
import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-CCaxCywz.js";
|
|
39
39
|
import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, r as SYMIPULSE_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-W0JzCJJM.js";
|
|
40
|
-
import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normalizeAllowFromWithStore$1, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as formatLocationText, H as firstDefined$1, I as resolveTelegramReplyId, J as readChannelAllowFromStore, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as listPairingChannels, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, X as upsertChannelPairingRequest, Y as removeChannelAllowFromStoreEntry, Z as getPairingAdapter, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as parseTelegramTarget, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as addChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as resolveTelegramTargetChatType, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-
|
|
40
|
+
import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normalizeAllowFromWithStore$1, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as formatLocationText, H as firstDefined$1, I as resolveTelegramReplyId, J as readChannelAllowFromStore, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as listPairingChannels, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, X as upsertChannelPairingRequest, Y as removeChannelAllowFromStoreEntry, Z as getPairingAdapter, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as parseTelegramTarget, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as addChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as resolveTelegramTargetChatType, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-DaBsat3L.js";
|
|
41
41
|
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-CuZX_Q4t.js";
|
|
42
42
|
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-CvEIl6_d.js";
|
|
43
43
|
import { i as resolveMemorySearchConfig, n as probeOllamaEmbeddingModels, r as resolveOllamaBaseUrl } from "./manager-CJ3M1Uxq.js";
|
|
@@ -50,7 +50,7 @@ import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-Cj6k
|
|
|
50
50
|
import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, t as getAgentScopedMediaLocalRoots } from "./local-roots-Se92wAN5.js";
|
|
51
51
|
import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-JAy_3A3B.js";
|
|
52
52
|
import { _ as resolveNativeCommandsEnabled, a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, g as isRestartEnabled, h as isNativeCommandsExplicitlyDisabled, i as listChatCommands, l as parseCommandArgs, m as isCommandFlagEnabled, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices, v as resolveNativeSkillsEnabled } from "./commands-registry-BSvi46KZ.js";
|
|
53
|
-
import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as registerUnhandledRejectionHandler } from "./runner-
|
|
53
|
+
import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as registerUnhandledRejectionHandler } from "./runner-B0AbN8wV.js";
|
|
54
54
|
import { c as getSkillsSnapshotVersion, d as createAsyncLock, f as readJsonFile, i as resolveSkillCommandInvocation, l as pruneExpiredPending, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as writeJsonAtomic, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as resolvePairingPaths } from "./skill-commands-BiPrghRt.js";
|
|
55
55
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-Dvqh1Tgb.js";
|
|
56
56
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-Dnti0cFs.js";
|
|
@@ -58,11 +58,11 @@ import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-po
|
|
|
58
58
|
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-D-kw83R0.js";
|
|
59
59
|
import { n as normalizePollInput } from "./polls-BKbIUHj7.js";
|
|
60
60
|
import { t as convertMarkdownTables } from "./tables-BuM4FKR3.js";
|
|
61
|
-
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-
|
|
62
|
-
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-
|
|
61
|
+
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-CZemAajS.js";
|
|
62
|
+
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-B9EinkUl.js";
|
|
63
63
|
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-DX7xcMsD.js";
|
|
64
64
|
import { t as makeProxyFetch } from "./proxy-DVy9foH0.js";
|
|
65
|
-
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-
|
|
65
|
+
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-CBS0567j.js";
|
|
66
66
|
import { t as getActiveWebListener } from "./active-listener-Br2FcRv7.js";
|
|
67
67
|
import { createRequire } from "node:module";
|
|
68
68
|
import * as path$1 from "node:path";
|
|
@@ -81,7 +81,7 @@ import AjvPkg from "ajv";
|
|
|
81
81
|
import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
|
|
82
82
|
import { createServer } from "node:http";
|
|
83
83
|
import { ProxyAgent, fetch as fetch$1 } from "undici";
|
|
84
|
-
import WebSocket, { WebSocket
|
|
84
|
+
import WebSocket$1, { WebSocket } from "ws";
|
|
85
85
|
import { Buffer as Buffer$1 } from "node:buffer";
|
|
86
86
|
import { EdgeTTS } from "node-edge-tts";
|
|
87
87
|
import { createJiti } from "jiti";
|
|
@@ -225,7 +225,8 @@ const BUILTIN_PROFILES = [
|
|
|
225
225
|
top_p: .95,
|
|
226
226
|
top_k: 20,
|
|
227
227
|
max_tokens: 16384,
|
|
228
|
-
presence_penalty: 1.5
|
|
228
|
+
presence_penalty: 1.5,
|
|
229
|
+
chatTemplateKwargs: { preserve_thinking: true }
|
|
229
230
|
},
|
|
230
231
|
streaming: {
|
|
231
232
|
deltaThrottleMs: 50,
|
|
@@ -5498,6 +5499,36 @@ function makeMissingToolResult(params) {
|
|
|
5498
5499
|
timestamp: Date.now()
|
|
5499
5500
|
};
|
|
5500
5501
|
}
|
|
5502
|
+
/**
|
|
5503
|
+
* True when an assistant message has no tool calls and only empty/whitespace
|
|
5504
|
+
* text or thinking blocks. This happens when a stream fails before any
|
|
5505
|
+
* content arrives — the blank entry is otherwise persisted and produces
|
|
5506
|
+
* consecutive same-role messages, which strict providers (vLLM) reject with
|
|
5507
|
+
* "role must alternate" errors that poison the session for every future turn.
|
|
5508
|
+
*/
|
|
5509
|
+
function isEmptyAssistantMessage(message) {
|
|
5510
|
+
if (!message || typeof message !== "object") return false;
|
|
5511
|
+
const msg = message;
|
|
5512
|
+
if (msg.role !== "assistant") return false;
|
|
5513
|
+
if (!Array.isArray(msg.content) || msg.content.length === 0) return true;
|
|
5514
|
+
for (const block of msg.content) {
|
|
5515
|
+
if (!block || typeof block !== "object") continue;
|
|
5516
|
+
const type = block.type;
|
|
5517
|
+
if (type === "toolCall" || type === "toolUse" || type === "functionCall") return false;
|
|
5518
|
+
if (type === "text") {
|
|
5519
|
+
const text = block.text;
|
|
5520
|
+
if (typeof text === "string" && text.trim().length > 0) return false;
|
|
5521
|
+
continue;
|
|
5522
|
+
}
|
|
5523
|
+
if (type === "thinking") {
|
|
5524
|
+
const thinking = block.thinking;
|
|
5525
|
+
if (typeof thinking === "string" && thinking.trim().length > 0) return false;
|
|
5526
|
+
continue;
|
|
5527
|
+
}
|
|
5528
|
+
return false;
|
|
5529
|
+
}
|
|
5530
|
+
return true;
|
|
5531
|
+
}
|
|
5501
5532
|
function stripToolResultDetails(messages) {
|
|
5502
5533
|
let touched = false;
|
|
5503
5534
|
const out = [];
|
|
@@ -8751,7 +8782,7 @@ var GatewayClient = class {
|
|
|
8751
8782
|
if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
|
|
8752
8783
|
});
|
|
8753
8784
|
}
|
|
8754
|
-
this.ws = new WebSocket
|
|
8785
|
+
this.ws = new WebSocket(url, wsOptions);
|
|
8755
8786
|
this.ws.on("open", () => {
|
|
8756
8787
|
if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
|
|
8757
8788
|
const tlsError = this.validateTlsFingerprint();
|
|
@@ -8970,7 +9001,7 @@ var GatewayClient = class {
|
|
|
8970
9001
|
return null;
|
|
8971
9002
|
}
|
|
8972
9003
|
async request(method, params, opts) {
|
|
8973
|
-
if (!this.ws || this.ws.readyState !== WebSocket
|
|
9004
|
+
if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
|
|
8974
9005
|
const id = randomUUID();
|
|
8975
9006
|
const frame = {
|
|
8976
9007
|
type: "req",
|
|
@@ -10236,7 +10267,7 @@ async function routeReply(params) {
|
|
|
10236
10267
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
10237
10268
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
10238
10269
|
try {
|
|
10239
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
10270
|
+
const { deliverOutboundPayloads } = await import("./deliver-C1HRkzPJ.js").then((n) => n.n);
|
|
10240
10271
|
return {
|
|
10241
10272
|
ok: true,
|
|
10242
10273
|
messageId: (await deliverOutboundPayloads({
|
|
@@ -43677,7 +43708,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
43677
43708
|
return;
|
|
43678
43709
|
}
|
|
43679
43710
|
try {
|
|
43680
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
43711
|
+
const { deliverOutboundPayloads } = await import("./deliver-C1HRkzPJ.js").then((n) => n.n);
|
|
43681
43712
|
await deliverOutboundPayloads({
|
|
43682
43713
|
cfg: params.cfg,
|
|
43683
43714
|
channel,
|
|
@@ -47123,7 +47154,7 @@ async function describeStickerImage(params) {
|
|
|
47123
47154
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
47124
47155
|
try {
|
|
47125
47156
|
const buffer = await fs$1.readFile(imagePath);
|
|
47126
|
-
const { describeImageWithModel } = await import("./image-
|
|
47157
|
+
const { describeImageWithModel } = await import("./image-CbyTdMd5.js").then((n) => n.n);
|
|
47127
47158
|
return (await describeImageWithModel({
|
|
47128
47159
|
buffer,
|
|
47129
47160
|
fileName: "sticker.webp",
|
|
@@ -47546,7 +47577,7 @@ function createWhatsAppLoginTool() {
|
|
|
47546
47577
|
force: Type.Optional(Type.Boolean())
|
|
47547
47578
|
}),
|
|
47548
47579
|
execute: async (_toolCallId, args) => {
|
|
47549
|
-
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-
|
|
47580
|
+
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-q201Ckfe.js");
|
|
47550
47581
|
if ((args?.action ?? "start") === "wait") {
|
|
47551
47582
|
const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
|
|
47552
47583
|
return {
|
|
@@ -49785,7 +49816,7 @@ async function preflightDiscordMessage(params) {
|
|
|
49785
49816
|
let preflightTranscript;
|
|
49786
49817
|
const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
|
|
49787
49818
|
if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
|
|
49788
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
49819
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-K-s65jbB.js");
|
|
49789
49820
|
const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
|
|
49790
49821
|
if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
|
|
49791
49822
|
ctx: {
|
|
@@ -53791,27 +53822,27 @@ function isVoiceChannelType(type) {
|
|
|
53791
53822
|
function createDefaultDeps() {
|
|
53792
53823
|
return {
|
|
53793
53824
|
sendMessageWhatsApp: async (...args) => {
|
|
53794
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
53825
|
+
const { sendMessageWhatsApp } = await import("./web-BUc-ts5b.js");
|
|
53795
53826
|
return await sendMessageWhatsApp(...args);
|
|
53796
53827
|
},
|
|
53797
53828
|
sendMessageTelegram: async (...args) => {
|
|
53798
|
-
const { sendMessageTelegram } = await import("./send-
|
|
53829
|
+
const { sendMessageTelegram } = await import("./send-DaBsat3L.js").then((n) => n.l);
|
|
53799
53830
|
return await sendMessageTelegram(...args);
|
|
53800
53831
|
},
|
|
53801
53832
|
sendMessageDiscord: async (...args) => {
|
|
53802
|
-
const { sendMessageDiscord } = await import("./send-
|
|
53833
|
+
const { sendMessageDiscord } = await import("./send-BNnv8GtF.js").then((n) => n.t);
|
|
53803
53834
|
return await sendMessageDiscord(...args);
|
|
53804
53835
|
},
|
|
53805
53836
|
sendMessageSlack: async (...args) => {
|
|
53806
|
-
const { sendMessageSlack } = await import("./send-
|
|
53837
|
+
const { sendMessageSlack } = await import("./send-DI9Vhnmw.js").then((n) => n.n);
|
|
53807
53838
|
return await sendMessageSlack(...args);
|
|
53808
53839
|
},
|
|
53809
53840
|
sendMessageSignal: async (...args) => {
|
|
53810
|
-
const { sendMessageSignal } = await import("./send-
|
|
53841
|
+
const { sendMessageSignal } = await import("./send-CZemAajS.js").then((n) => n.i);
|
|
53811
53842
|
return await sendMessageSignal(...args);
|
|
53812
53843
|
},
|
|
53813
53844
|
sendMessageIMessage: async (...args) => {
|
|
53814
|
-
const { sendMessageIMessage } = await import("./send-
|
|
53845
|
+
const { sendMessageIMessage } = await import("./send-B9EinkUl.js").then((n) => n.n);
|
|
53815
53846
|
return await sendMessageIMessage(...args);
|
|
53816
53847
|
}
|
|
53817
53848
|
};
|
|
@@ -56696,7 +56727,7 @@ function createDiscordGatewayPlugin(params) {
|
|
|
56696
56727
|
super(options);
|
|
56697
56728
|
}
|
|
56698
56729
|
createWebSocket(url) {
|
|
56699
|
-
return new WebSocket(url, { agent });
|
|
56730
|
+
return new WebSocket$1(url, { agent });
|
|
56700
56731
|
}
|
|
56701
56732
|
}
|
|
56702
56733
|
return new ProxyGatewayPlugin();
|
|
@@ -64641,7 +64672,7 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
64641
64672
|
});
|
|
64642
64673
|
const deliverSlashPayloads = async (replies) => {
|
|
64643
64674
|
const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
|
|
64644
|
-
import("./replies-
|
|
64675
|
+
import("./replies-CBS0567j.js").then((n) => n.r),
|
|
64645
64676
|
import("./chunk-BHW8Yu5A.js").then((n) => n.s),
|
|
64646
64677
|
import("./markdown-tables-Dnj2LQUc.js").then((n) => n.t)
|
|
64647
64678
|
]);
|
|
@@ -66914,7 +66945,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
|
|
|
66914
66945
|
const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
|
|
66915
66946
|
let preflightTranscript;
|
|
66916
66947
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
|
|
66917
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
66948
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-K-s65jbB.js");
|
|
66918
66949
|
preflightTranscript = await transcribeFirstAudio({
|
|
66919
66950
|
ctx: {
|
|
66920
66951
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -69059,23 +69090,23 @@ let webLoginQrPromise = null;
|
|
|
69059
69090
|
let webChannelPromise = null;
|
|
69060
69091
|
let whatsappActionsPromise = null;
|
|
69061
69092
|
function loadWebOutbound() {
|
|
69062
|
-
webOutboundPromise ??= import("./outbound-
|
|
69093
|
+
webOutboundPromise ??= import("./outbound-DL8bdXlZ.js").then((n) => n.t);
|
|
69063
69094
|
return webOutboundPromise;
|
|
69064
69095
|
}
|
|
69065
69096
|
function loadWebLogin() {
|
|
69066
|
-
webLoginPromise ??= import("./login-
|
|
69097
|
+
webLoginPromise ??= import("./login-BtBwGFrb.js").then((n) => n.n);
|
|
69067
69098
|
return webLoginPromise;
|
|
69068
69099
|
}
|
|
69069
69100
|
function loadWebLoginQr() {
|
|
69070
|
-
webLoginQrPromise ??= import("./login-qr-
|
|
69101
|
+
webLoginQrPromise ??= import("./login-qr-q201Ckfe.js");
|
|
69071
69102
|
return webLoginQrPromise;
|
|
69072
69103
|
}
|
|
69073
69104
|
function loadWebChannel() {
|
|
69074
|
-
webChannelPromise ??= import("./web-
|
|
69105
|
+
webChannelPromise ??= import("./web-BUc-ts5b.js");
|
|
69075
69106
|
return webChannelPromise;
|
|
69076
69107
|
}
|
|
69077
69108
|
function loadWhatsAppActions() {
|
|
69078
|
-
whatsappActionsPromise ??= import("./whatsapp-actions-
|
|
69109
|
+
whatsappActionsPromise ??= import("./whatsapp-actions-mBarFBeS.js");
|
|
69079
69110
|
return whatsappActionsPromise;
|
|
69080
69111
|
}
|
|
69081
69112
|
function createPluginRuntime() {
|
|
@@ -71671,6 +71702,10 @@ function installSessionToolResultGuard(sessionManager, opts) {
|
|
|
71671
71702
|
const guardedAppend = (message) => {
|
|
71672
71703
|
let nextMessage = message;
|
|
71673
71704
|
if (message.role === "assistant") {
|
|
71705
|
+
if (isEmptyAssistantMessage(message)) {
|
|
71706
|
+
if (allowSyntheticToolResults && pending.size > 0) flushPendingToolResults();
|
|
71707
|
+
return;
|
|
71708
|
+
}
|
|
71674
71709
|
const sanitized = sanitizeToolCallInputs([message]);
|
|
71675
71710
|
if (sanitized.length === 0) {
|
|
71676
71711
|
if (allowSyntheticToolResults && pending.size > 0) flushPendingToolResults();
|
|
@@ -73616,6 +73651,8 @@ function createModelAwareStreamFn(opts) {
|
|
|
73616
73651
|
if (typeof mergedParams.repeat_penalty === "number") injections.repeat_penalty = mergedParams.repeat_penalty;
|
|
73617
73652
|
if (typeof mergedParams.presence_penalty === "number") injections.presence_penalty = mergedParams.presence_penalty;
|
|
73618
73653
|
if (typeof mergedParams.frequency_penalty === "number") injections.frequency_penalty = mergedParams.frequency_penalty;
|
|
73654
|
+
const chatTemplateKwargs = mergedParams.chatTemplateKwargs ?? mergedParams.chat_template_kwargs;
|
|
73655
|
+
if (chatTemplateKwargs && typeof chatTemplateKwargs === "object" && !Array.isArray(chatTemplateKwargs)) injections.chat_template_kwargs = chatTemplateKwargs;
|
|
73619
73656
|
const isVllm = isVllmProvider(opts.provider, opts.modelId, opts.config);
|
|
73620
73657
|
const isOpenRouter = opts.provider === "openrouter";
|
|
73621
73658
|
const extraHeaders = {};
|
|
@@ -74223,7 +74260,11 @@ function handleMessageUpdate(ctx, evt) {
|
|
|
74223
74260
|
emitAgentEvent({
|
|
74224
74261
|
runId: ctx.params.runId,
|
|
74225
74262
|
stream: "thinking",
|
|
74226
|
-
data: {
|
|
74263
|
+
data: {
|
|
74264
|
+
phase: evtType,
|
|
74265
|
+
delta: thinkingDelta,
|
|
74266
|
+
content: thinkingContent
|
|
74267
|
+
}
|
|
74227
74268
|
});
|
|
74228
74269
|
if (ctx.state.streamReasoning) {
|
|
74229
74270
|
const partialThinking = extractAssistantThinking(msg);
|
|
@@ -75949,6 +75990,93 @@ Use the message tool with buttons:
|
|
|
75949
75990
|
[{"label": "✅ Proceed", "data": "/plan-proceed"}, {"label": "✏️ Modify", "data": "/plan-modify"}, {"label": "❌ Cancel", "data": "/plan-cancel"}]
|
|
75950
75991
|
</plan_mode>`;
|
|
75951
75992
|
|
|
75993
|
+
//#endregion
|
|
75994
|
+
//#region src/agents/session-empty-prune.ts
|
|
75995
|
+
/**
|
|
75996
|
+
* Pre-run prune of empty assistant entries from a session JSONL file.
|
|
75997
|
+
*
|
|
75998
|
+
* When a stream fails before any content arrives, pi-coding-agent persists
|
|
75999
|
+
* an assistant message with an empty content array. If this repeats (e.g. a
|
|
76000
|
+
* misconfigured provider fails on every retry), the session ends up with
|
|
76001
|
+
* hundreds of consecutive empty assistant entries. vLLM and other strict
|
|
76002
|
+
* providers then reject the request with a role-ordering error — once the
|
|
76003
|
+
* session is in that state, every future turn fails until the user runs /new.
|
|
76004
|
+
*
|
|
76005
|
+
* This helper runs before SessionManager opens the file, reads the JSONL
|
|
76006
|
+
* line-by-line, filters out any line whose `message` is an empty-content
|
|
76007
|
+
* assistant, and rewrites the file atomically if anything was dropped. The
|
|
76008
|
+
* in-memory SessionManager state and the on-disk file stay consistent.
|
|
76009
|
+
*
|
|
76010
|
+
* The append guard in {@link ./session-tool-result-guard.ts} prevents new
|
|
76011
|
+
* empty entries from being written; this helper retroactively cleans files
|
|
76012
|
+
* that were poisoned before the guard existed.
|
|
76013
|
+
*
|
|
76014
|
+
* @module
|
|
76015
|
+
*/
|
|
76016
|
+
async function readSessionFile(sessionFile) {
|
|
76017
|
+
try {
|
|
76018
|
+
return await fs$1.readFile(sessionFile, "utf-8");
|
|
76019
|
+
} catch {
|
|
76020
|
+
return null;
|
|
76021
|
+
}
|
|
76022
|
+
}
|
|
76023
|
+
async function writeAtomically(sessionFile, text) {
|
|
76024
|
+
const dir = path.dirname(sessionFile);
|
|
76025
|
+
const base = path.basename(sessionFile);
|
|
76026
|
+
const tmp = path.join(dir, `.${base}.prune-${process.pid}-${Date.now()}.tmp`);
|
|
76027
|
+
await fs$1.writeFile(tmp, text, "utf-8");
|
|
76028
|
+
await fs$1.rename(tmp, sessionFile);
|
|
76029
|
+
}
|
|
76030
|
+
/**
|
|
76031
|
+
* Remove empty assistant JSONL entries from the session file.
|
|
76032
|
+
*
|
|
76033
|
+
* Parses each line; lines that don't parse are preserved verbatim so we don't
|
|
76034
|
+
* lose unknown data. Only lines that parse into a `{type:"message", message:
|
|
76035
|
+
* <empty-assistant>}` entry are dropped.
|
|
76036
|
+
*/
|
|
76037
|
+
async function pruneEmptyAssistantsFromSessionFile(sessionFile) {
|
|
76038
|
+
const raw = await readSessionFile(sessionFile);
|
|
76039
|
+
if (raw === null || raw.length === 0) return {
|
|
76040
|
+
rewrote: false,
|
|
76041
|
+
pruned: 0,
|
|
76042
|
+
unparsable: 0
|
|
76043
|
+
};
|
|
76044
|
+
const lines = raw.split("\n");
|
|
76045
|
+
const kept = [];
|
|
76046
|
+
let pruned = 0;
|
|
76047
|
+
let unparsable = 0;
|
|
76048
|
+
for (const line of lines) {
|
|
76049
|
+
if (line.length === 0) {
|
|
76050
|
+
kept.push(line);
|
|
76051
|
+
continue;
|
|
76052
|
+
}
|
|
76053
|
+
let parsed = null;
|
|
76054
|
+
try {
|
|
76055
|
+
parsed = JSON.parse(line);
|
|
76056
|
+
} catch {
|
|
76057
|
+
unparsable += 1;
|
|
76058
|
+
kept.push(line);
|
|
76059
|
+
continue;
|
|
76060
|
+
}
|
|
76061
|
+
if (parsed?.type === "message" && isEmptyAssistantMessage(parsed.message)) {
|
|
76062
|
+
pruned += 1;
|
|
76063
|
+
continue;
|
|
76064
|
+
}
|
|
76065
|
+
kept.push(line);
|
|
76066
|
+
}
|
|
76067
|
+
if (pruned === 0) return {
|
|
76068
|
+
rewrote: false,
|
|
76069
|
+
pruned: 0,
|
|
76070
|
+
unparsable
|
|
76071
|
+
};
|
|
76072
|
+
await writeAtomically(sessionFile, kept.join("\n"));
|
|
76073
|
+
return {
|
|
76074
|
+
rewrote: true,
|
|
76075
|
+
pruned,
|
|
76076
|
+
unparsable
|
|
76077
|
+
};
|
|
76078
|
+
}
|
|
76079
|
+
|
|
75952
76080
|
//#endregion
|
|
75953
76081
|
//#region src/agents/session-version.ts
|
|
75954
76082
|
/**
|
|
@@ -77000,6 +77128,8 @@ async function runEmbeddedAttempt(params) {
|
|
|
77000
77128
|
});
|
|
77001
77129
|
const versionCheck = await handleSessionVersion(params.sessionFile);
|
|
77002
77130
|
if (versionCheck.archived) log$9.warn(`session archived: created by ${versionCheck.poisonVersion}, known corruption range → ${versionCheck.archivePath}`);
|
|
77131
|
+
const pruneReport = await pruneEmptyAssistantsFromSessionFile(params.sessionFile);
|
|
77132
|
+
if (pruneReport.rewrote) log$9.warn(`session prune: removed ${pruneReport.pruned} empty assistant entries from ${params.sessionFile}`);
|
|
77003
77133
|
await prewarmSessionFile(params.sessionFile);
|
|
77004
77134
|
sessionManager = guardSessionManager(SessionManager.open(params.sessionFile), {
|
|
77005
77135
|
agentId: sessionAgentId,
|