@qwen-code/qwen-code 0.23.2-preview.0 → 0.23.2
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/bundled/qc-helper/docs/configuration/auth.md +1 -1
- package/bundled/qc-helper/docs/configuration/model-providers.md +19 -15
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +1 -1
- package/bundled/qc-helper/docs/features/channels/github.md +1 -9
- package/bundled/qc-helper/docs/features/channels/overview.md +26 -51
- package/bundled/qc-helper/docs/features/channels/qqbot.md +1 -2
- package/bundled/qc-helper/docs/features/commands.md +48 -9
- package/bundled/qc-helper/docs/features/goals.md +2 -0
- package/bundled/qc-helper/docs/features/sub-agents.md +8 -0
- package/bundled/qc-helper/docs/qwen-serve.md +62 -48
- package/chunks/{MaxSizedBox-ZZJT3PJF.js → MaxSizedBox-4C3BKKKY.js} +17 -16
- package/chunks/{StandaloneSessionPicker-DIOSZTMX.js → StandaloneSessionPicker-TXVF65YW.js} +32 -31
- package/chunks/{acpAgent-62JUP5A7.js → acpAgent-H5XBKGB4.js} +301 -166
- package/chunks/{agent-NLPEQQDZ.js → agent-T5LEFJIU.js} +10 -10
- package/chunks/{agent-headless-Y2GR5F2Q.js → agent-headless-VZKSRH36.js} +10 -10
- package/chunks/{anthropicContentGenerator-I7LQZH26.js → anthropicContentGenerator-PRJWWVYJ.js} +2 -2
- package/chunks/{artifact-tool-P52OKKEF.js → artifact-tool-G5LHNECG.js} +1 -1
- package/chunks/{bridge-Q66BD62H.js → bridge-AOX5IY44.js} +18 -17
- package/chunks/{channel-management-service-TRTLQTSV.js → channel-management-service-MWQGHPAS.js} +4 -4
- package/chunks/{channel-settings-store-R5STFWUW.js → channel-settings-store-XZCGDGHW.js} +26 -25
- package/chunks/{channel-worker-group-PIYPVCTF.js → channel-worker-group-SQ5FRWOH.js} +5 -5
- package/chunks/{channel-worker-manager-FQHEDTD2.js → channel-worker-manager-TU4ZNWOE.js} +5 -5
- package/chunks/{channel-worker-supervisor-XJPZZ3VK.js → channel-worker-supervisor-EMITFMCP.js} +4 -4
- package/chunks/{chunk-3SH53ANB.js → chunk-22GORRNY.js} +12 -0
- package/chunks/{chunk-7L35FKPF.js → chunk-2BMXHB6N.js} +2 -2
- package/chunks/chunk-2WC3Y7YY.js +1033 -0
- package/chunks/{chunk-WZ4YULVF.js → chunk-3OAXF3UK.js} +210 -80
- package/chunks/{chunk-W673V2H3.js → chunk-46MMBZHI.js} +3 -3
- package/chunks/{chunk-6GRDHIVI.js → chunk-4I3WFI3U.js} +4 -4
- package/chunks/{chunk-QXXBW2G4.js → chunk-4JNHNVAZ.js} +3 -3
- package/chunks/{chunk-R2266LQ5.js → chunk-4WMGYG3F.js} +2 -2
- package/chunks/{chunk-Y6ZWXM44.js → chunk-5BH2AIEY.js} +1 -1
- package/chunks/{chunk-EA4NFWVG.js → chunk-5OZUKLL7.js} +3 -3
- package/chunks/{chunk-RX3FYFCN.js → chunk-67XTVRVB.js} +1 -1
- package/chunks/{chunk-MA5OUNN6.js → chunk-6G4V7SE4.js} +1 -1
- package/chunks/{chunk-B54PFQS5.js → chunk-7CLLH5TI.js} +1 -1
- package/chunks/{chunk-7GZCCHJL.js → chunk-7LTCFO6T.js} +3 -3
- package/chunks/{chunk-33MLFMCL.js → chunk-7NDZKE2M.js} +2 -2
- package/chunks/{chunk-5WC2ECUK.js → chunk-7PD7ZMX5.js} +17 -4
- package/chunks/{chunk-ZUNWKOAP.js → chunk-7SVM3RP2.js} +4 -24
- package/chunks/{chunk-5GD7LYOH.js → chunk-A7EFXK7P.js} +1 -1
- package/chunks/{chunk-RDV4NLI3.js → chunk-AO2VMS72.js} +2 -2
- package/chunks/{chunk-XAXTQURR.js → chunk-APXIW2TF.js} +3 -3
- package/chunks/{chunk-3BTHHXXE.js → chunk-AUTUFD5X.js} +1 -1
- package/chunks/{chunk-VH764G6B.js → chunk-B25JYXZE.js} +2 -2
- package/chunks/{chunk-MMMA36MN.js → chunk-BK7D2JR6.js} +3 -3
- package/chunks/{chunk-RPFJJ33Z.js → chunk-CALTQWTZ.js} +1 -1
- package/chunks/{chunk-EUXF6URV.js → chunk-CCBTNJB4.js} +16 -18
- package/chunks/{chunk-BF3RUIVP.js → chunk-CH2YDT6X.js} +36 -38
- package/chunks/{chunk-L6ZME3W7.js → chunk-CMWU6P4D.js} +1 -1
- package/chunks/{chunk-QJAFSFYA.js → chunk-CWVZBIZJ.js} +1 -1
- package/chunks/{chunk-JDPBJIKI.js → chunk-DAI65CMX.js} +1 -1
- package/chunks/{chunk-GM44O6F7.js → chunk-DARWOZY6.js} +1 -1
- package/chunks/{chunk-J4ECGDA3.js → chunk-ELD3OBPU.js} +3 -3
- package/chunks/{chunk-ZELCTN6Y.js → chunk-F23YN37B.js} +10 -0
- package/chunks/{chunk-OIPUQE3S.js → chunk-F2NYVASI.js} +14 -1
- package/chunks/{chunk-ODBNTMZW.js → chunk-FAJPLSYF.js} +36 -29
- package/chunks/{chunk-GXIHBIHC.js → chunk-FGHPZGOP.js} +29 -24
- package/chunks/{chunk-TK4XHPKW.js → chunk-G37O7YO6.js} +2 -2
- package/chunks/{chunk-4JKLPTV6.js → chunk-G3ZUMSFS.js} +12 -5
- package/chunks/{chunk-743XE7N7.js → chunk-G5VOXCRX.js} +1 -1
- package/chunks/{chunk-BL6B2QS2.js → chunk-GOEVQADN.js} +618 -1122
- package/chunks/{chunk-XI7RST4D.js → chunk-GOKAOSCN.js} +1 -1
- package/chunks/{chunk-FDOGGKAA.js → chunk-GSFV5RQW.js} +2 -0
- package/chunks/{chunk-43CI6YWJ.js → chunk-HJ5UJQQL.js} +1384 -1245
- package/chunks/{chunk-LUVXLLMS.js → chunk-IR6JKBAP.js} +1 -1
- package/chunks/{chunk-CPJRFFPH.js → chunk-IRGDIDGJ.js} +558 -158
- package/chunks/{chunk-DCPRCDSR.js → chunk-IWABUX6T.js} +1 -1
- package/chunks/{chunk-DTB5BXRG.js → chunk-JO77FGNZ.js} +16 -15
- package/chunks/{chunk-45ROPFQY.js → chunk-JYGIJA4W.js} +1 -1
- package/chunks/{chunk-M6YLOETP.js → chunk-KCF2436G.js} +1 -1
- package/chunks/{chunk-CABDNUJ4.js → chunk-KEPC5BOL.js} +5 -5
- package/chunks/{chunk-RN6V5HKE.js → chunk-KFECPHLV.js} +3 -3
- package/chunks/{chunk-WIRYFL2L.js → chunk-LEAOJ43M.js} +17 -15
- package/chunks/{chunk-IUJLW6ZI.js → chunk-LUNC5KCL.js} +3 -3
- package/chunks/{chunk-WZS3X663.js → chunk-LWX4WDFF.js} +2 -5
- package/chunks/{chunk-ISPBBKJN.js → chunk-MV5DTLJV.js} +7 -2
- package/chunks/chunk-NFXXBWSE.js +463 -0
- package/chunks/{chunk-PQSCGZT2.js → chunk-NPKCVSXX.js} +26 -2
- package/chunks/{chunk-7RXOEUFF.js → chunk-NX7ZTXFF.js} +1 -1
- package/chunks/{chunk-G5QLLD53.js → chunk-OXR34GCD.js} +14 -2
- package/chunks/{chunk-VHPG7BH6.js → chunk-PDN7FJZV.js} +1 -1
- package/chunks/{chunk-UHUT4IDM.js → chunk-PFKGV6PO.js} +9 -9
- package/chunks/{chunk-NFIDVZND.js → chunk-QB3KS3N3.js} +2 -21
- package/chunks/{chunk-QLM7D7W3.js → chunk-QFJZAY7W.js} +7 -7
- package/chunks/{chunk-NVS4Z6GT.js → chunk-QHLHE2OT.js} +1 -1
- package/chunks/{chunk-B44JBZBB.js → chunk-QQK4L3UU.js} +1 -1
- package/chunks/{chunk-63ACHB2H.js → chunk-QTB4VP4K.js} +50 -18
- package/chunks/{chunk-4BLTSTF6.js → chunk-R3JIDRUL.js} +4 -4
- package/chunks/{chunk-VEQBVJYH.js → chunk-R457KFV7.js} +3 -3
- package/chunks/{chunk-CG2PDIGD.js → chunk-RM244SCQ.js} +1 -1
- package/chunks/{chunk-W7PXLIZJ.js → chunk-RNAJVXUG.js} +5 -5
- package/chunks/{chunk-VF6D6EGV.js → chunk-S5QR6CB5.js} +52 -6
- package/chunks/{chunk-IRKQ4YYX.js → chunk-SVWWF5TZ.js} +29 -1
- package/chunks/{chunk-5HBA2Z7V.js → chunk-TGNNLRC3.js} +2 -3
- package/chunks/{chunk-ORREXWOM.js → chunk-TODNHE76.js} +3 -3
- package/chunks/{chunk-W3ONSAYO.js → chunk-TOOOLHVS.js} +2 -2
- package/chunks/{chunk-EHTKOO6W.js → chunk-TRQNRP2H.js} +2 -2
- package/chunks/{chunk-PQWM4SX2.js → chunk-U6REWGVR.js} +2 -2
- package/chunks/{chunk-UXDVUFKU.js → chunk-ULZECEIP.js} +2 -2
- package/chunks/{chunk-6YEOCHSE.js → chunk-VBLAI2HA.js} +101 -0
- package/chunks/{chunk-M73KHGNR.js → chunk-VJJXG73H.js} +404 -226
- package/chunks/{chunk-Q2F43WTJ.js → chunk-WBU2PIZ5.js} +23 -6
- package/chunks/{chunk-UULHYZ4W.js → chunk-WDN64MVT.js} +74 -15
- package/chunks/{chunk-XVTCSVBK.js → chunk-WDVV3LRM.js} +193 -169
- package/chunks/{chunk-LBKYQ33T.js → chunk-WK7P62DV.js} +16 -10
- package/chunks/{chunk-ULY4ISY2.js → chunk-WXD7INFV.js} +19 -4
- package/chunks/{chunk-ZIPYCXQP.js → chunk-WXPPUPHM.js} +1 -1
- package/chunks/{chunk-5Z4FCEPY.js → chunk-X7LFJF5D.js} +600 -46
- package/chunks/{chunk-YHDGABDC.js → chunk-XKBFYTCD.js} +1 -1
- package/chunks/{chunk-MWEF5MUK.js → chunk-XSOXPG2L.js} +8 -8
- package/chunks/{chunk-5VZFJTL2.js → chunk-YLOHCA6I.js} +2 -2
- package/chunks/{chunk-LN3WBOKU.js → chunk-YQGW3M6Z.js} +2 -2
- package/chunks/{chunk-2OR32P5M.js → chunk-ZN5TKAVR.js} +125 -10
- package/chunks/{chunk-XBLG564H.js → chunk-ZP5XDLSA.js} +10 -10
- package/chunks/{config-utils-37FHWPTP.js → config-utils-GPLIABL2.js} +21 -20
- package/chunks/{contextCommand-R4JUBV5N.js → contextCommand-NCUQUDBY.js} +18 -17
- package/chunks/{core-runtime-6U4OXU5C.js → core-runtime-WKYKWVYU.js} +23 -21
- package/chunks/{create-sub-session-LLUYAGZN.js → create-sub-session-PPLXB3JJ.js} +17 -16
- package/chunks/{daemon-UI6SQSBV.js → daemon-2CKIAO3I.js} +2 -2
- package/chunks/{daemon-git-worktree-guard-O2UTNFJC.js → daemon-git-worktree-guard-73ZWOLKL.js} +17 -16
- package/chunks/{daemon-status-provider-7GMAKSTX.js → daemon-status-provider-OK7VONJG.js} +22 -21
- package/chunks/{daemon-trust-policy-VNP76VMO.js → daemon-trust-policy-CAUCREG2.js} +22 -21
- package/chunks/{daemon-trust-policy-monitor-TD5O3BZA.js → daemon-trust-policy-monitor-3Y36OOEQ.js} +22 -21
- package/chunks/{deferred-core-runtime-NJM63YJS.js → deferred-core-runtime-Q7WFWYD3.js} +17 -16
- package/chunks/{dist-STAGIFNB.js → dist-6YDUH3BB.js} +388 -102
- package/chunks/{dist-XJ25G6OH.js → dist-BNQVF565.js} +2 -8
- package/chunks/{dist-NQ2636VT.js → dist-F34J4FZX.js} +1 -1
- package/chunks/{dist-OR2ZQTXZ.js → dist-F6JLAJLE.js} +1 -1
- package/chunks/{dist-WZTUKIDR.js → dist-NP7QKLVG.js} +2 -2
- package/chunks/{dist-M4CBX53H.js → dist-UFTFGI6I.js} +1 -1
- package/chunks/{dist-5I4HLUTO.js → dist-XLV33CLY.js} +1 -2
- package/chunks/{dist-24TCWK5H.js → dist-Y5KC3IHW.js} +1 -2
- package/chunks/{dist-FDISN4AK.js → dist-ZDNJK74R.js} +3 -7
- package/chunks/{edit-GL7OA6RV.js → edit-YJD6IETK.js} +10 -10
- package/chunks/{enterPlanMode-VC4BCSZE.js → enterPlanMode-EFPVTWIH.js} +10 -10
- package/chunks/{environment-BI6IBAZJ.js → environment-HP3AXFTB.js} +19 -18
- package/chunks/{errors-D6G2ZM2R.js → errors-22ON46G7.js} +19 -18
- package/chunks/{exitPlanMode-DX446CA6.js → exitPlanMode-MOQUNCBH.js} +10 -10
- package/chunks/{fast-path-MAYDLJIP.js → fast-path-2X7BPMXX.js} +3 -3
- package/chunks/{glob-TVKRFY36.js → glob-Y7ACIB3P.js} +10 -10
- package/chunks/{goal-tools-CA6YANRN.js → goal-tools-DABMICUC.js} +10 -10
- package/chunks/{handleAutoUpdate-AW4ZAHON.js → handleAutoUpdate-MCAMHYDI.js} +19 -18
- package/chunks/{i18n-IH5CRAY7.js → i18n-C3GDCALP.js} +17 -16
- package/chunks/{initializer-UBR37ZNM.js → initializer-4URDQL2G.js} +22 -21
- package/chunks/{installationInfo-Y52756EC.js → installationInfo-LBOL6SBV.js} +17 -16
- package/chunks/{list-7V5JDZPO.js → list-JOGBAC2R.js} +25 -24
- package/chunks/{list-agents-I5TRH3J7.js → list-agents-2CXPGJUE.js} +3 -3
- package/chunks/{llm-QDB6JVF5.js → llm-2KPNSAVY.js} +65 -59
- package/chunks/{llm-content-generator-EO6MZCEO.js → llm-content-generator-GR3FOHLB.js} +2 -2
- package/chunks/{loadedSettingsAdapter-I3YQKMC4.js → loadedSettingsAdapter-DVKROEJD.js} +22 -21
- package/chunks/{loggingContentGenerator-MNXYUGDG.js → loggingContentGenerator-P4K6K5W4.js} +12 -12
- package/chunks/{managed-npm-update-EA3EXPTO.js → managed-npm-update-VWBKHNIN.js} +17 -16
- package/chunks/{mcp-QTAJ544Y.js → mcp-6YYNSYLK.js} +22 -21
- package/chunks/{monitor-6FQKQOTP.js → monitor-A255TNZR.js} +10 -10
- package/chunks/{nonInteractiveCli-MRCTZL5X.js → nonInteractiveCli-LXGIKQAT.js} +55 -54
- package/chunks/{notebook-edit-BQQCKI7K.js → notebook-edit-5UYHS2DM.js} +10 -10
- package/chunks/{open-with-auth-D6JD6LDS.js → open-with-auth-6MVIHMXB.js} +1 -1
- package/chunks/{openaiContentGenerator-TTSKXNVH.js → openaiContentGenerator-A6MAMEO5.js} +7 -7
- package/chunks/{pidfile-KPIS6RIT.js → pidfile-B7DZC4TP.js} +20 -17
- package/chunks/{processUtils-ZCASPKK4.js → processUtils-BPZ2MCZS.js} +2 -2
- package/chunks/{prompt-terminal-ledger-D6HM6TV7.js → prompt-terminal-ledger-FYYTAOXS.js} +18 -17
- package/chunks/{qwenContentGenerator-GGZEFLBD.js → qwenContentGenerator-4IOJFD4S.js} +13 -13
- package/chunks/{read-file-VE5GDFLP.js → read-file-A4H4O3VQ.js} +2 -2
- package/chunks/{resumeHistoryUtils-HSSGMYDC.js → resumeHistoryUtils-YQQ43E4N.js} +19 -18
- package/chunks/{ripGrep-SEJE7AA6.js → ripGrep-W32NWFTA.js} +3 -3
- package/chunks/{run-qwen-serve-OJYVH7N6.js → run-qwen-serve-WBSWWIRV.js} +216 -64
- package/chunks/{runtime-KGMQQFJD.js → runtime-VRVBX2E5.js} +29 -26
- package/chunks/{scheduled-tasks-7H5HWHYD.js → scheduled-tasks-D65KJDA3.js} +20 -19
- package/chunks/{scheduler-BE42AKDG.js → scheduler-M2YPN7Z7.js} +19 -18
- package/chunks/{send-message-AWKUDJBH.js → send-message-76BKWKFZ.js} +3 -3
- package/chunks/{serve-KZVKYMSL.js → serve-BE3H2P6P.js} +22 -21
- package/chunks/{server-PJRALPJQ.js → server-FLY5JERG.js} +84 -148
- package/chunks/{session-IHITXU2S.js → session-JVN62R5K.js} +85 -57
- package/chunks/{session-attachments-root-GQ2TUI3Y.js → session-attachments-root-7ACGLHXA.js} +17 -16
- package/chunks/{session-pr-refresh-H43LULTE.js → session-pr-refresh-TQS57SDK.js} +19 -18
- package/chunks/{settings-RKEQQDFC.js → settings-D44YMZFT.js} +21 -20
- package/chunks/{shell-6PJ444U5.js → shell-3VE6I4V5.js} +10 -10
- package/chunks/{skill-Q3UP7B5V.js → skill-FHEGRRZU.js} +2 -2
- package/chunks/{skill-settings-LZR5YRRW.js → skill-settings-VHEJMBFL.js} +21 -20
- package/chunks/{spawnChannel-WM3DT2BF.js → spawnChannel-T6MX2ZDN.js} +17 -16
- package/chunks/{standalone-update-E5474IBI.js → standalone-update-QUGHFMCS.js} +18 -17
- package/chunks/{start-opentui-ui-WLWZNQ2I.js → start-opentui-ui-IHIIZ2LE.js} +438 -203
- package/chunks/{startInteractiveUI-FBQSGWGO.js → startInteractiveUI-LR7K2ARZ.js} +1171 -1234
- package/chunks/{task-create-PMAFST2T.js → task-create-MWXJFRRM.js} +3 -3
- package/chunks/{task-list-R2HSY2NC.js → task-list-EYO3FE57.js} +2 -2
- package/chunks/{task-update-JYC57USF.js → task-update-2JJJRHMT.js} +3 -3
- package/chunks/{team-create-VIGUFUT4.js → team-create-GY3VFY47.js} +10 -10
- package/chunks/{team-delete-CBHVBTPB.js → team-delete-IQZ6XGFI.js} +2 -2
- package/chunks/{team-plan-approval-HQVZA3MD.js → team-plan-approval-BQPGZOT5.js} +10 -10
- package/chunks/{terminal-image-renderer-LUKNCOVM.js → terminal-image-renderer-YNYW5CQG.js} +17 -16
- package/chunks/{theme-manager-LOENKYLY.js → theme-manager-U6CIK3GM.js} +17 -16
- package/chunks/{tool-search-ZIFAQCE2.js → tool-search-XI3QWD5I.js} +2 -2
- package/chunks/{total-session-admission-FUUJH3QH.js → total-session-admission-3SNSJJ32.js} +18 -17
- package/chunks/{trustedFolders-C76KYROP.js → trustedFolders-OVAQKNV5.js} +18 -17
- package/chunks/{update-relaunch-4G2SRXKX.js → update-relaunch-XV5O74E3.js} +5 -5
- package/chunks/{updateCheck-EIZIO7HI.js → updateCheck-CHUYWD6L.js} +17 -16
- package/chunks/{useAutoAcceptIndicator-EAA6KSY4.js → useAutoAcceptIndicator-VKSVIXZC.js} +23 -22
- package/chunks/{validateNonInterActiveAuth-BRX22QCN.js → validateNonInterActiveAuth-ZNUTD3E5.js} +53 -52
- package/chunks/{version-E56RU7PR.js → version-EK7VAGSI.js} +3 -1
- package/chunks/{web-fetch-AAUCD7RM.js → web-fetch-24KZO763.js} +2 -2
- package/chunks/{web-search-HFUQF44Q.js → web-search-CRNXKZ2X.js} +184 -7
- package/chunks/{web-shell-static-POZHGGXE.js → web-shell-static-BFDESDD4.js} +5 -4
- package/chunks/{workflow-3MABM53N.js → workflow-HD5NYMW5.js} +201 -65
- package/chunks/{workspace-providers-status-2FRLBZ5I.js → workspace-providers-status-MAM42IZS.js} +24 -23
- package/chunks/{workspace-registration-store-YL7HLYYI.js → workspace-registration-store-HKLJEDQX.js} +1 -2
- package/chunks/{workspace-registry-BNRP2ELW.js → workspace-registry-7RDDOBLN.js} +18 -17
- package/chunks/{workspace-runtime-coordinator-WKGF7VHS.js → workspace-runtime-coordinator-LEPDPXJO.js} +18 -17
- package/chunks/{workspace-service-4MYO72MM.js → workspace-service-5IFDCNN3.js} +23 -22
- package/chunks/{workspace-skills-status-SU66TJLZ.js → workspace-skills-status-FJ3HNH4H.js} +22 -21
- package/chunks/{workspace-trust-reconciler-D5QT7WQB.js → workspace-trust-reconciler-PQFHIWLR.js} +23 -22
- package/chunks/{write-file-NVPQE2AZ.js → write-file-ERG67ZFX.js} +11 -11
- package/chunks/{zoom-image-RJHC66WG.js → zoom-image-WQYEC3SR.js} +2 -2
- package/cli.js +12 -12
- package/export-transcript-document.js +82 -82
- package/package.json +4 -4
- package/web-shell/assets/{abnfDiagram-VCTEODGH-DHc6plZn.js → abnfDiagram-VCTEODGH-BRLgQbnT.js} +1 -1
- package/web-shell/assets/{arc-BQ9m8TDV.js → arc-qAF9_XsR.js} +1 -1
- package/web-shell/assets/{architectureDiagram-5GKGNRK7-D5ap3oVB.js → architectureDiagram-5GKGNRK7-BorUttEz.js} +1 -1
- package/web-shell/assets/{blockDiagram-NRAW4CY4-BIbnyNph.js → blockDiagram-NRAW4CY4-Bj0qZVxu.js} +1 -1
- package/web-shell/assets/{c4Diagram-UCG6FXSJ-BRsdx_iG.js → c4Diagram-UCG6FXSJ-BTqJis32.js} +1 -1
- package/web-shell/assets/channel-COIuCrVH.js +1 -0
- package/web-shell/assets/{chunk-2Q5K7J3B-3lf1fNlx.js → chunk-2Q5K7J3B-RrQ5X8m-.js} +1 -1
- package/web-shell/assets/{chunk-5VM5RSS4-DP8VNRc4.js → chunk-5VM5RSS4-uUjDl8wO.js} +1 -1
- package/web-shell/assets/{chunk-F27PBJKO-DrohDmZ6.js → chunk-F27PBJKO-C3JhpyzI.js} +1 -1
- package/web-shell/assets/{chunk-G27WJ6UU-UZ2QhSx6.js → chunk-G27WJ6UU-C8ZNFs7F.js} +1 -1
- package/web-shell/assets/{chunk-JWPE2WC7-BIMHVcZK.js → chunk-JWPE2WC7-DNpXtEOs.js} +1 -1
- package/web-shell/assets/{chunk-LCL6LL3I-izRxdSDd.js → chunk-LCL6LL3I-DagA2ZLw.js} +1 -1
- package/web-shell/assets/{chunk-POPQ4Y6H-CXADD4PP.js → chunk-POPQ4Y6H-R23uH7Xm.js} +1 -1
- package/web-shell/assets/{chunk-SVP7TREG-B96d8Y_1.js → chunk-SVP7TREG-Qz9RN_BR.js} +1 -1
- package/web-shell/assets/{chunk-XXDRQBXY-CF2sVQpv.js → chunk-XXDRQBXY-jYb1_hni.js} +1 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-DoX6OYqu.js +1 -0
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-DoX6OYqu.js +1 -0
- package/web-shell/assets/{cose-bilkent-JH36ORCC-CT6tXVAS.js → cose-bilkent-JH36ORCC-Cv2OunpE.js} +1 -1
- package/web-shell/assets/{cynefin-OW5HDTMX-X1NS4vtV.js → cynefin-OW5HDTMX-LH42KFJx.js} +1 -1
- package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-DNsKNOT4.js → cynefinDiagram-5FMLGOSQ-Dha4_OoR.js} +1 -1
- package/web-shell/assets/{dagre-3AP2YEHR-9-AHKqsb.js → dagre-3AP2YEHR-Br5lnUKD.js} +1 -1
- package/web-shell/assets/{diagram-S7CK7UJ4-Bjgms7j6.js → diagram-S7CK7UJ4-dpKq2bBX.js} +1 -1
- package/web-shell/assets/{diagram-UQ7AKVKN-h6bCprbE.js → diagram-UQ7AKVKN-BAgHWpXr.js} +1 -1
- package/web-shell/assets/{diagram-VSXAHHWV-4SbQXVLt.js → diagram-VSXAHHWV-GRRzpyE2.js} +1 -1
- package/web-shell/assets/{diagram-VX7I27RA-B5gPCzzB.js → diagram-VX7I27RA-BNFiaYpG.js} +1 -1
- package/web-shell/assets/{diagram-Z3DM3KII-DFJXIA3A.js → diagram-Z3DM3KII-BisZzB_h.js} +1 -1
- package/web-shell/assets/{ebnfDiagram-PWID7BFC-FwyaU7VY.js → ebnfDiagram-PWID7BFC-B1xbwycf.js} +1 -1
- package/web-shell/assets/{erDiagram-SSCWMZ5O-8vJQh2te.js → erDiagram-SSCWMZ5O-CQMzbGE5.js} +1 -1
- package/web-shell/assets/{flowDiagram-A5DVABFB-BzA_1gMN.js → flowDiagram-A5DVABFB-CZ_Zondl.js} +1 -1
- package/web-shell/assets/{ganttDiagram-EL5Y4UJY-Co-ABbVX.js → ganttDiagram-EL5Y4UJY-BTh2ShxS.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-DW_FcyrX.js → gitGraphDiagram-WWUBYQGX-oHOB-Uxt.js} +1 -1
- package/web-shell/assets/{index-Bu-rZoJ-.js → index-CI1ysIEv.js} +478 -474
- package/web-shell/assets/index-CpxXGH-8.css +36 -0
- package/web-shell/assets/{index-BbMXfhNG.js → index-DWoFMu5x.js} +1 -1
- package/web-shell/assets/{infoDiagram-RXCK75RN-BEgfhUFN.js → infoDiagram-RXCK75RN-C0QpudbG.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-5VMMS53U-DCsMxQmc.js → ishikawaDiagram-5VMMS53U-a6B741uT.js} +1 -1
- package/web-shell/assets/{journeyDiagram-EYS64GPL-DyIEYoHz.js → journeyDiagram-EYS64GPL-Dbht9ICp.js} +1 -1
- package/web-shell/assets/{kanban-definition-3QL26DDD-CkxjqCNr.js → kanban-definition-3QL26DDD-D4OFR8-h.js} +1 -1
- package/web-shell/assets/{layout-BEWc0Al9.js → layout-Dvdh5jRH.js} +1 -1
- package/web-shell/assets/{linear-CNuNxirL.js → linear-Dvc6KIW2.js} +1 -1
- package/web-shell/assets/{mermaid.core-DZBre674.js → mermaid.core-CB36RfIb.js} +6 -6
- package/web-shell/assets/{mindmap-definition-FBJOCRG2-CpafFz_F.js → mindmap-definition-FBJOCRG2-Fmqo1CjP.js} +1 -1
- package/web-shell/assets/{pegDiagram-XKGWAZYB-DfZqk_dq.js → pegDiagram-XKGWAZYB-CCxYBoA4.js} +1 -1
- package/web-shell/assets/{pieDiagram-E7YTZNPT-S0UWXlgC.js → pieDiagram-E7YTZNPT-BVHKQFzt.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-AXDQQJYC-dd37_Ohj.js → quadrantDiagram-AXDQQJYC-l95IznwR.js} +1 -1
- package/web-shell/assets/{railroadDiagram-O6MQD6OU-CH8NJZ7u.js → railroadDiagram-O6MQD6OU-BlLdRdXp.js} +1 -1
- package/web-shell/assets/{requirementDiagram-EFPCY7ZU-CFdqWYih.js → requirementDiagram-EFPCY7ZU-BkDLBR5w.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-P5KCCOFB-CsddcEGD.js → sankeyDiagram-P5KCCOFB-jAIqRp65.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-BZ270mGw.js → sequenceDiagram-WJ2MYXX4-f-soZYPr.js} +1 -1
- package/web-shell/assets/{sizeCapture-X5ZJPWSS-CGaS4DBV.js → sizeCapture-X5ZJPWSS-BzOuAfB2.js} +1 -1
- package/web-shell/assets/{stateDiagram-HBIQ2CUA-COpIzMu6.js → stateDiagram-HBIQ2CUA-BPLSs12r.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-IRul-LaT.js +1 -0
- package/web-shell/assets/{swimlanes-XN3QIQJK-CMF889m3.js → swimlanes-XN3QIQJK-D-9E_RIR.js} +1 -1
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN-D6lgKepA.js +8 -0
- package/web-shell/assets/{timeline-definition-24CTP7MA-BelnxYz5.js → timeline-definition-24CTP7MA-CT56K-gV.js} +1 -1
- package/web-shell/assets/{vennDiagram-4TSXK5OY-CU-NRqIB.js → vennDiagram-4TSXK5OY-B-vi4IyO.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-VM6X3IG4-CDNKqWh-.js → wardleyDiagram-VM6X3IG4-C9O7Ju98.js} +1 -1
- package/web-shell/assets/{xychartDiagram-S5SC5T6Z-CLqguL5D.js → xychartDiagram-S5SC5T6Z-6d8w3jg2.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-X35VIWWJ.js +0 -276
- package/web-shell/assets/channel-uMMdTrYk.js +0 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-DcY-26Ig.js +0 -1
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-DcY-26Ig.js +0 -1
- package/web-shell/assets/index-CsPwZ1ut.css +0 -36
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-D6qEVAji.js +0 -1
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN-mem5Jj4m.js +0 -8
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
listCommand
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-46MMBZHI.js";
|
|
6
6
|
import {
|
|
7
7
|
getErrorMessage as getErrorMessage2
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-R457KFV7.js";
|
|
9
9
|
import {
|
|
10
10
|
CUSTOM_SANDBOX_IMAGE_ENV_VAR
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-RM244SCQ.js";
|
|
12
12
|
import {
|
|
13
13
|
isOwnInterfaceAddress
|
|
14
14
|
} from "./chunk-24FVUD5P.js";
|
|
15
15
|
import {
|
|
16
16
|
serveCommand
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-QFJZAY7W.js";
|
|
18
18
|
import {
|
|
19
19
|
OBSERVED_CONTACT_MAX_FRESH_WITHIN_SECONDS,
|
|
20
20
|
ObservedChannelContactStore
|
|
@@ -58,12 +58,12 @@ import {
|
|
|
58
58
|
} from "./chunk-Y53DG2HA.js";
|
|
59
59
|
import {
|
|
60
60
|
CLI_VERSION
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-4WMGYG3F.js";
|
|
62
62
|
import {
|
|
63
63
|
collectProviderModelsForProtocol,
|
|
64
64
|
getAuthTypeFromEnv,
|
|
65
65
|
resolveCliGenerationConfig
|
|
66
|
-
} from "./chunk-
|
|
66
|
+
} from "./chunk-7LTCFO6T.js";
|
|
67
67
|
import {
|
|
68
68
|
resolveSkillSettings
|
|
69
69
|
} from "./chunk-HWVUSYSN.js";
|
|
@@ -81,19 +81,20 @@ import {
|
|
|
81
81
|
registerPermissionRelay,
|
|
82
82
|
registerSessionCleanup,
|
|
83
83
|
registerToolCallDispatch,
|
|
84
|
+
resolveChannelLocale,
|
|
84
85
|
selectFirstModel,
|
|
85
86
|
sessionsPath
|
|
86
|
-
} from "./chunk-
|
|
87
|
+
} from "./chunk-G3ZUMSFS.js";
|
|
87
88
|
import {
|
|
88
89
|
getExtensionManager,
|
|
89
90
|
requestChoicePluginNonInteractive,
|
|
90
91
|
requestConsentNonInteractive,
|
|
91
92
|
requestConsentOrFail,
|
|
92
93
|
resolveExtensionCommandScope
|
|
93
|
-
} from "./chunk-
|
|
94
|
+
} from "./chunk-TODNHE76.js";
|
|
94
95
|
import {
|
|
95
96
|
parseChannelConfig
|
|
96
|
-
} from "./chunk-
|
|
97
|
+
} from "./chunk-ULZECEIP.js";
|
|
97
98
|
import {
|
|
98
99
|
findCliEntryPath
|
|
99
100
|
} from "./chunk-V6WHFGST.js";
|
|
@@ -103,7 +104,7 @@ import {
|
|
|
103
104
|
clearAccount,
|
|
104
105
|
loadAccount,
|
|
105
106
|
saveAccount
|
|
106
|
-
} from "./chunk-
|
|
107
|
+
} from "./chunk-JYGIJA4W.js";
|
|
107
108
|
import {
|
|
108
109
|
canonicalizeWorkspace
|
|
109
110
|
} from "./chunk-6PLDPT2C.js";
|
|
@@ -121,7 +122,7 @@ import {
|
|
|
121
122
|
import {
|
|
122
123
|
normalizeWorkerDiagnostic,
|
|
123
124
|
sanitizeWorkerDiagnostic
|
|
124
|
-
} from "./chunk-
|
|
125
|
+
} from "./chunk-DARWOZY6.js";
|
|
125
126
|
import {
|
|
126
127
|
CHANNEL_DAEMON_WORKER_SENTINEL,
|
|
127
128
|
CHANNEL_WORKER_HEARTBEAT_INTERVAL_MS,
|
|
@@ -145,6 +146,10 @@ import {
|
|
|
145
146
|
import {
|
|
146
147
|
EXTERNAL_TOOL_GUARD_TOKEN_ENV
|
|
147
148
|
} from "./chunk-3VUENPWF.js";
|
|
149
|
+
import {
|
|
150
|
+
CHANNEL_WORKER_KILL_GRACE_MS,
|
|
151
|
+
CHANNEL_WORKER_STOP_GRACE_MS
|
|
152
|
+
} from "./chunk-TGNNLRC3.js";
|
|
148
153
|
import {
|
|
149
154
|
AcpBridge,
|
|
150
155
|
ChannelLoopScheduler,
|
|
@@ -155,26 +160,23 @@ import {
|
|
|
155
160
|
isChannelProactiveDeliveryError,
|
|
156
161
|
sanitizeLogText,
|
|
157
162
|
sanitizePromptText
|
|
158
|
-
} from "./chunk-
|
|
159
|
-
import {
|
|
160
|
-
CHANNEL_WORKER_KILL_GRACE_MS,
|
|
161
|
-
CHANNEL_WORKER_STOP_GRACE_MS
|
|
162
|
-
} from "./chunk-5HBA2Z7V.js";
|
|
163
|
+
} from "./chunk-WDVV3LRM.js";
|
|
163
164
|
import {
|
|
165
|
+
pidFilePath,
|
|
164
166
|
readServiceInfo,
|
|
165
167
|
removeServiceInfo,
|
|
166
168
|
signalService,
|
|
167
169
|
waitForExit,
|
|
168
170
|
writeServiceInfo
|
|
169
|
-
} from "./chunk-
|
|
171
|
+
} from "./chunk-NFXXBWSE.js";
|
|
170
172
|
import {
|
|
171
173
|
assembleMcpServers,
|
|
172
174
|
getPendingGatedMcpServers,
|
|
173
175
|
mcpCommand
|
|
174
|
-
} from "./chunk-
|
|
176
|
+
} from "./chunk-RNAJVXUG.js";
|
|
175
177
|
import {
|
|
176
178
|
loadSettings
|
|
177
|
-
} from "./chunk-
|
|
179
|
+
} from "./chunk-WBU2PIZ5.js";
|
|
178
180
|
import {
|
|
179
181
|
detectSystemLanguage,
|
|
180
182
|
getCurrentLanguage,
|
|
@@ -186,7 +188,7 @@ import {
|
|
|
186
188
|
import {
|
|
187
189
|
isFileSourcedEnvKey,
|
|
188
190
|
loadEnvironment
|
|
189
|
-
} from "./chunk-
|
|
191
|
+
} from "./chunk-5BH2AIEY.js";
|
|
190
192
|
import {
|
|
191
193
|
resolveAcpChannelFallback,
|
|
192
194
|
scrubAndReportInheritedLoaderEnv
|
|
@@ -196,13 +198,13 @@ import {
|
|
|
196
198
|
} from "./chunk-2EAZ43JQ.js";
|
|
197
199
|
import {
|
|
198
200
|
getCliVersion
|
|
199
|
-
} from "./chunk-
|
|
201
|
+
} from "./chunk-MV5DTLJV.js";
|
|
200
202
|
import {
|
|
201
203
|
getPackageJson
|
|
202
204
|
} from "./chunk-W3N5XAZ6.js";
|
|
203
205
|
import {
|
|
204
206
|
isWorkspaceTrusted
|
|
205
|
-
} from "./chunk-
|
|
207
|
+
} from "./chunk-NX7ZTXFF.js";
|
|
206
208
|
import {
|
|
207
209
|
require_strip_json_comments
|
|
208
210
|
} from "./chunk-NPQ5ZKRP.js";
|
|
@@ -224,7 +226,7 @@ import {
|
|
|
224
226
|
removeChannelMemoryEntries,
|
|
225
227
|
removePeerController,
|
|
226
228
|
updateChannelMemoryEntry
|
|
227
|
-
} from "./chunk-
|
|
229
|
+
} from "./chunk-GOEVQADN.js";
|
|
228
230
|
import {
|
|
229
231
|
hideBin,
|
|
230
232
|
yargs_default
|
|
@@ -265,7 +267,7 @@ import {
|
|
|
265
267
|
sanitizeFilenameComponent,
|
|
266
268
|
unquoteCStylePath,
|
|
267
269
|
updateSetting
|
|
268
|
-
} from "./chunk-
|
|
270
|
+
} from "./chunk-HJ5UJQQL.js";
|
|
269
271
|
import {
|
|
270
272
|
parsePositiveIntegerEnv
|
|
271
273
|
} from "./chunk-6PVPNMXU.js";
|
|
@@ -278,7 +280,10 @@ import {
|
|
|
278
280
|
} from "./chunk-TRWQQBVH.js";
|
|
279
281
|
import {
|
|
280
282
|
listLiveSessions
|
|
281
|
-
} from "./chunk-
|
|
283
|
+
} from "./chunk-QQK4L3UU.js";
|
|
284
|
+
import {
|
|
285
|
+
isSameProcess
|
|
286
|
+
} from "./chunk-CH2YDT6X.js";
|
|
282
287
|
import {
|
|
283
288
|
APPROVAL_MODES
|
|
284
289
|
} from "./chunk-JX6XHPTX.js";
|
|
@@ -295,7 +300,7 @@ import {
|
|
|
295
300
|
} from "./chunk-7OCIQNKX.js";
|
|
296
301
|
import {
|
|
297
302
|
parseLineTolerant
|
|
298
|
-
} from "./chunk-
|
|
303
|
+
} from "./chunk-F2NYVASI.js";
|
|
299
304
|
import {
|
|
300
305
|
getAllMemoryFilenames,
|
|
301
306
|
setMemoryFilename
|
|
@@ -304,7 +309,7 @@ import {
|
|
|
304
309
|
DEFAULT_QWEN_EMBEDDING_MODEL,
|
|
305
310
|
VERTEX_ADC_HINT,
|
|
306
311
|
hasVertexProjectConfigured
|
|
307
|
-
} from "./chunk-
|
|
312
|
+
} from "./chunk-JO77FGNZ.js";
|
|
308
313
|
import {
|
|
309
314
|
atomicWriteFileSync
|
|
310
315
|
} from "./chunk-XFFRI3WM.js";
|
|
@@ -2969,6 +2974,10 @@ function channelMemoryOptions(getBridge, cwd) {
|
|
|
2969
2974
|
};
|
|
2970
2975
|
}
|
|
2971
2976
|
__name(channelMemoryOptions, "channelMemoryOptions");
|
|
2977
|
+
function isUnverifiablePidfileError(err) {
|
|
2978
|
+
return err instanceof Error && err.code === "channel_service_conflict";
|
|
2979
|
+
}
|
|
2980
|
+
__name(isUnverifiablePidfileError, "isUnverifiablePidfileError");
|
|
2972
2981
|
async function writeServiceInfoOrExit(channels, cleanup) {
|
|
2973
2982
|
try {
|
|
2974
2983
|
writeServiceInfo(channels);
|
|
@@ -2980,6 +2989,10 @@ async function writeServiceInfoOrExit(channels, cleanup) {
|
|
|
2980
2989
|
);
|
|
2981
2990
|
process.exit(1);
|
|
2982
2991
|
}
|
|
2992
|
+
if (isUnverifiablePidfileError(err)) {
|
|
2993
|
+
writeStderrLine(`Error: ${err.message}`);
|
|
2994
|
+
process.exit(1);
|
|
2995
|
+
}
|
|
2983
2996
|
throw err;
|
|
2984
2997
|
}
|
|
2985
2998
|
}
|
|
@@ -3163,7 +3176,7 @@ function checkDuplicateInstance() {
|
|
|
3163
3176
|
}
|
|
3164
3177
|
}
|
|
3165
3178
|
__name(checkDuplicateInstance, "checkDuplicateInstance");
|
|
3166
|
-
async function startSingle(name, proxy, cronEnabled, displayLanguage) {
|
|
3179
|
+
async function startSingle(name, proxy, cronEnabled, locale, displayLanguage) {
|
|
3167
3180
|
checkDuplicateInstance();
|
|
3168
3181
|
const channelsConfig = loadChannelsConfig();
|
|
3169
3182
|
await loadChannelsFromExtensions();
|
|
@@ -3209,6 +3222,7 @@ async function startSingle(name, proxy, cronEnabled, displayLanguage) {
|
|
|
3209
3222
|
const loopController = loopStore ? createChannelLoopController(loopStore) : void 0;
|
|
3210
3223
|
const channels = /* @__PURE__ */ new Map();
|
|
3211
3224
|
const channel = await createChannel(name, config2, bridge, {
|
|
3225
|
+
locale,
|
|
3212
3226
|
router,
|
|
3213
3227
|
proxy,
|
|
3214
3228
|
...displayLanguage ? { displayLanguage } : {},
|
|
@@ -3299,7 +3313,7 @@ async function startSingle(name, proxy, cronEnabled, displayLanguage) {
|
|
|
3299
3313
|
});
|
|
3300
3314
|
}
|
|
3301
3315
|
__name(startSingle, "startSingle");
|
|
3302
|
-
async function startAll(proxy, cronEnabled, displayLanguage) {
|
|
3316
|
+
async function startAll(proxy, cronEnabled, locale, displayLanguage) {
|
|
3303
3317
|
checkDuplicateInstance();
|
|
3304
3318
|
const channelsConfig = loadChannelsConfig();
|
|
3305
3319
|
await loadChannelsFromExtensions();
|
|
@@ -3350,6 +3364,7 @@ async function startAll(proxy, cronEnabled, displayLanguage) {
|
|
|
3350
3364
|
channels.set(
|
|
3351
3365
|
name,
|
|
3352
3366
|
await createChannel(name, config2, bridge, {
|
|
3367
|
+
locale,
|
|
3353
3368
|
router,
|
|
3354
3369
|
proxy,
|
|
3355
3370
|
...displayLanguage ? { displayLanguage } : {},
|
|
@@ -3474,21 +3489,47 @@ var startCommand = {
|
|
|
3474
3489
|
settings.merged.proxy
|
|
3475
3490
|
);
|
|
3476
3491
|
const cronEnabled = isChannelCronEnabled(settings);
|
|
3492
|
+
const locale = resolveChannelLocale(settings.merged.general?.language);
|
|
3477
3493
|
const displayLanguage = resolveLanguage(
|
|
3478
3494
|
resolveLanguageSetting(
|
|
3479
3495
|
settings.merged.general?.language
|
|
3480
3496
|
)
|
|
3481
3497
|
);
|
|
3482
3498
|
if (argv.name) {
|
|
3483
|
-
await startSingle(argv.name, proxy, cronEnabled, displayLanguage);
|
|
3499
|
+
await startSingle(argv.name, proxy, cronEnabled, locale, displayLanguage);
|
|
3484
3500
|
} else {
|
|
3485
|
-
await startAll(proxy, cronEnabled, displayLanguage);
|
|
3501
|
+
await startAll(proxy, cronEnabled, locale, displayLanguage);
|
|
3486
3502
|
}
|
|
3487
3503
|
}, "handler")
|
|
3488
3504
|
};
|
|
3489
3505
|
|
|
3490
3506
|
// packages/cli/src/commands/channel/stop.ts
|
|
3491
3507
|
init_esbuild_shims();
|
|
3508
|
+
function reportUnstoppableService(info, outcome) {
|
|
3509
|
+
const filePath = pidFilePath();
|
|
3510
|
+
if (outcome === "not-permitted") {
|
|
3511
|
+
writeStderrLine(
|
|
3512
|
+
`Permission denied signalling the service (PID ${info.pid}); it may be owned by another user sharing this home. Stop it as that user \u2014 once the process is gone, the record at ${filePath} is swept on the next read.`
|
|
3513
|
+
);
|
|
3514
|
+
return;
|
|
3515
|
+
}
|
|
3516
|
+
if (info.procStart == null) {
|
|
3517
|
+
writeStderrLine(
|
|
3518
|
+
`Could not stop PID ${info.pid}, and the record carries no process token, so this command cannot confirm it is the channel service. If no channel service is running, delete ${filePath} and start again.`
|
|
3519
|
+
);
|
|
3520
|
+
return;
|
|
3521
|
+
}
|
|
3522
|
+
if (outcome === "sent") {
|
|
3523
|
+
writeStderrLine(
|
|
3524
|
+
`Service is still running after SIGKILL; its record at ${filePath} was left in place.`
|
|
3525
|
+
);
|
|
3526
|
+
return;
|
|
3527
|
+
}
|
|
3528
|
+
writeStderrLine(
|
|
3529
|
+
`Failed to signal the service and could not re-verify its process token; its record at ${filePath} was left in place.`
|
|
3530
|
+
);
|
|
3531
|
+
}
|
|
3532
|
+
__name(reportUnstoppableService, "reportUnstoppableService");
|
|
3492
3533
|
var stopCommand = {
|
|
3493
3534
|
command: "stop",
|
|
3494
3535
|
describe: "Stop the running channel service",
|
|
@@ -3503,7 +3544,7 @@ var stopCommand = {
|
|
|
3503
3544
|
if (argv["daemon-url"]) {
|
|
3504
3545
|
const token = argv.token ?? process.env[QWEN_SERVER_TOKEN_ENV] ?? process.env[QWEN_DAEMON_TOKEN_ENV];
|
|
3505
3546
|
try {
|
|
3506
|
-
const sdk = await import("./daemon-
|
|
3547
|
+
const sdk = await import("./daemon-2CKIAO3I.js");
|
|
3507
3548
|
const client = new sdk.DaemonClient({
|
|
3508
3549
|
baseUrl: argv["daemon-url"],
|
|
3509
3550
|
...token ? { token } : {}
|
|
@@ -3535,25 +3576,34 @@ var stopCommand = {
|
|
|
3535
3576
|
process.exit(1);
|
|
3536
3577
|
}
|
|
3537
3578
|
writeStdoutLine(`Stopping channel service (PID ${info.pid})...`);
|
|
3538
|
-
|
|
3579
|
+
const outcome = signalService(info.pid, "SIGTERM", info.procStart);
|
|
3580
|
+
if (outcome !== "sent") {
|
|
3581
|
+
if (isSameProcess(info.pid, info.procStart)) {
|
|
3582
|
+
reportUnstoppableService(info, outcome);
|
|
3583
|
+
process.exit(1);
|
|
3584
|
+
}
|
|
3539
3585
|
writeStderrLine(
|
|
3540
3586
|
"Failed to send signal \u2014 process may have already exited."
|
|
3541
3587
|
);
|
|
3542
|
-
removeServiceInfo();
|
|
3588
|
+
removeServiceInfo(info);
|
|
3543
3589
|
process.exit(0);
|
|
3544
3590
|
}
|
|
3545
|
-
const exited = await waitForExit(info.pid, 5e3);
|
|
3591
|
+
const exited = await waitForExit(info.pid, 5e3, 200, info.procStart);
|
|
3546
3592
|
if (exited) {
|
|
3547
|
-
removeServiceInfo();
|
|
3593
|
+
removeServiceInfo(info);
|
|
3548
3594
|
writeStdoutLine("Service stopped.");
|
|
3549
3595
|
} else {
|
|
3550
3596
|
writeStderrLine(
|
|
3551
3597
|
"Service did not exit within 5 seconds. Sending SIGKILL..."
|
|
3552
3598
|
);
|
|
3553
|
-
signalService(info.pid, "SIGKILL");
|
|
3554
|
-
await waitForExit(info.pid, 2e3)
|
|
3555
|
-
|
|
3556
|
-
|
|
3599
|
+
const killOutcome = signalService(info.pid, "SIGKILL", info.procStart);
|
|
3600
|
+
if (await waitForExit(info.pid, 2e3, 200, info.procStart)) {
|
|
3601
|
+
removeServiceInfo(info);
|
|
3602
|
+
writeStdoutLine("Service killed.");
|
|
3603
|
+
} else {
|
|
3604
|
+
reportUnstoppableService(info, killOutcome);
|
|
3605
|
+
process.exit(1);
|
|
3606
|
+
}
|
|
3557
3607
|
}
|
|
3558
3608
|
process.exit(0);
|
|
3559
3609
|
}, "handler")
|
|
@@ -3689,7 +3739,7 @@ var statusCommand = {
|
|
|
3689
3739
|
if (argv["daemon-url"]) {
|
|
3690
3740
|
const token = argv.token ?? process.env[QWEN_SERVER_TOKEN_ENV] ?? process.env[QWEN_DAEMON_TOKEN_ENV];
|
|
3691
3741
|
try {
|
|
3692
|
-
const sdk = await import("./daemon-
|
|
3742
|
+
const sdk = await import("./daemon-2CKIAO3I.js");
|
|
3693
3743
|
const client = new sdk.DaemonClient({
|
|
3694
3744
|
baseUrl: argv["daemon-url"],
|
|
3695
3745
|
...token ? { token } : {}
|
|
@@ -3800,7 +3850,7 @@ var reloadCommand = {
|
|
|
3800
3850
|
const token = resolveToken(argv.token);
|
|
3801
3851
|
let sdk;
|
|
3802
3852
|
try {
|
|
3803
|
-
sdk = await import("./daemon-
|
|
3853
|
+
sdk = await import("./daemon-2CKIAO3I.js");
|
|
3804
3854
|
} catch (err) {
|
|
3805
3855
|
writeStderrLine(
|
|
3806
3856
|
`[Channel] Failed to load daemon SDK: ${safeChannelCommandErrorMessage(err)}`
|
|
@@ -3880,7 +3930,7 @@ var setCommand2 = {
|
|
|
3880
3930
|
const selection = names[0] === "all" ? { mode: "all" } : { mode: "names", names };
|
|
3881
3931
|
let sdk;
|
|
3882
3932
|
try {
|
|
3883
|
-
sdk = await import("./daemon-
|
|
3933
|
+
sdk = await import("./daemon-2CKIAO3I.js");
|
|
3884
3934
|
} catch (error) {
|
|
3885
3935
|
writeStderrLine(
|
|
3886
3936
|
`[Channel] Failed to load daemon SDK: ${safeChannelCommandErrorMessage(error)}`
|
|
@@ -4038,7 +4088,7 @@ function createDaemonChannelBridgeFacade(bridge, opts) {
|
|
|
4038
4088
|
}
|
|
4039
4089
|
__name(createDaemonChannelBridgeFacade, "createDaemonChannelBridgeFacade");
|
|
4040
4090
|
async function loadDaemonSdk() {
|
|
4041
|
-
return await import("./daemon-
|
|
4091
|
+
return await import("./daemon-2CKIAO3I.js");
|
|
4042
4092
|
}
|
|
4043
4093
|
__name(loadDaemonSdk, "loadDaemonSdk");
|
|
4044
4094
|
function selectedChannelNames(channelsConfig, selection) {
|
|
@@ -4195,6 +4245,7 @@ async function runChannelDaemonWorker(opts) {
|
|
|
4195
4245
|
void 0,
|
|
4196
4246
|
settings.merged.proxy
|
|
4197
4247
|
);
|
|
4248
|
+
const locale = resolveChannelLocale(settings.merged.general?.language);
|
|
4198
4249
|
const displayLanguage = resolveLanguage(
|
|
4199
4250
|
resolveLanguageSetting(
|
|
4200
4251
|
settings.merged.general?.language
|
|
@@ -4311,6 +4362,7 @@ async function runChannelDaemonWorker(opts) {
|
|
|
4311
4362
|
name,
|
|
4312
4363
|
await abortableStartup(
|
|
4313
4364
|
createChannel(name, config2, bridgeFacade, {
|
|
4365
|
+
locale,
|
|
4314
4366
|
...proxy ? { proxy } : {},
|
|
4315
4367
|
...displayLanguage ? { displayLanguage } : {},
|
|
4316
4368
|
router: createdRouter,
|
|
@@ -6704,6 +6756,7 @@ function filterCommandsIn(commonDir, gitDir) {
|
|
|
6704
6756
|
}
|
|
6705
6757
|
const filters = /* @__PURE__ */ new Set();
|
|
6706
6758
|
const unread = /* @__PURE__ */ new Set();
|
|
6759
|
+
const dangling = /* @__PURE__ */ new Set();
|
|
6707
6760
|
const visited = /* @__PURE__ */ new Set();
|
|
6708
6761
|
const read = /* @__PURE__ */ __name((file) => {
|
|
6709
6762
|
const r = spawnSync2(
|
|
@@ -6737,12 +6790,17 @@ function filterCommandsIn(commonDir, gitDir) {
|
|
|
6737
6790
|
const visit = /* @__PURE__ */ __name((file, depth, via) => {
|
|
6738
6791
|
let real;
|
|
6739
6792
|
try {
|
|
6740
|
-
real = realpathSync3(file);
|
|
6741
|
-
} catch {
|
|
6793
|
+
real = realpathSync3.native(file);
|
|
6794
|
+
} catch (e) {
|
|
6742
6795
|
if (via !== null) {
|
|
6743
|
-
|
|
6744
|
-
|
|
6745
|
-
|
|
6796
|
+
const code2 = e?.code;
|
|
6797
|
+
if (code2 === "ENOENT") {
|
|
6798
|
+
dangling.add(`${via} -> ${file} (missing \u2014 git ignores it)`);
|
|
6799
|
+
} else {
|
|
6800
|
+
unread.add(
|
|
6801
|
+
`${via} -> ${file} (could not be resolved: ${code2 ?? "unknown"} \u2014 not screened)`
|
|
6802
|
+
);
|
|
6803
|
+
}
|
|
6746
6804
|
}
|
|
6747
6805
|
return;
|
|
6748
6806
|
}
|
|
@@ -6784,20 +6842,24 @@ function filterCommandsIn(commonDir, gitDir) {
|
|
|
6784
6842
|
}
|
|
6785
6843
|
let target;
|
|
6786
6844
|
if (value.startsWith("~/")) {
|
|
6787
|
-
target =
|
|
6845
|
+
target = `${process.env["HOME"] || homedir()}${sep3}${value.slice(2)}`;
|
|
6788
6846
|
} else if (value.startsWith("~")) {
|
|
6789
6847
|
unread.add(
|
|
6790
6848
|
`${key} -> ${value} (another user's home \u2014 not resolved here)`
|
|
6791
6849
|
);
|
|
6792
6850
|
continue;
|
|
6793
6851
|
} else {
|
|
6794
|
-
target =
|
|
6852
|
+
target = isAbsolute3(value) ? value : `${dirname3(file)}${sep3}${value}`;
|
|
6795
6853
|
}
|
|
6796
6854
|
visit(target, depth + 1, `${key} (in ${file})`);
|
|
6797
6855
|
}
|
|
6798
6856
|
}, "visit");
|
|
6799
6857
|
for (const candidate of candidates) visit(candidate, 0, null);
|
|
6800
|
-
return {
|
|
6858
|
+
return {
|
|
6859
|
+
filters: [...filters],
|
|
6860
|
+
unread: [...unread],
|
|
6861
|
+
dangling: [...dangling]
|
|
6862
|
+
};
|
|
6801
6863
|
}
|
|
6802
6864
|
__name(filterCommandsIn, "filterCommandsIn");
|
|
6803
6865
|
function describeFilterScreen(hits) {
|
|
@@ -6830,7 +6892,8 @@ function filterBlankEnv(filterKeys) {
|
|
|
6830
6892
|
return env;
|
|
6831
6893
|
}
|
|
6832
6894
|
__name(filterBlankEnv, "filterBlankEnv");
|
|
6833
|
-
|
|
6895
|
+
var UNRESOLVED_REPO = "the repository's git directories could not be resolved (git rev-parse failed) \u2014 not screened";
|
|
6896
|
+
function screenForTree(worktree) {
|
|
6834
6897
|
const discover = /* @__PURE__ */ __name((flag) => {
|
|
6835
6898
|
const r = spawnSync2("git", ["rev-parse", "--path-format=absolute", flag], {
|
|
6836
6899
|
cwd: worktree,
|
|
@@ -6844,15 +6907,22 @@ function localFilterCommands(worktree) {
|
|
|
6844
6907
|
}, "discover");
|
|
6845
6908
|
const commonDir = discover("--git-common-dir");
|
|
6846
6909
|
const gitDir = discover("--git-dir");
|
|
6847
|
-
if (commonDir === null || gitDir === null)
|
|
6848
|
-
|
|
6849
|
-
|
|
6850
|
-
|
|
6851
|
-
|
|
6852
|
-
const screen =
|
|
6853
|
-
return [
|
|
6910
|
+
if (commonDir === null || gitDir === null) return null;
|
|
6911
|
+
return filterCommandsIn(commonDir, gitDir);
|
|
6912
|
+
}
|
|
6913
|
+
__name(screenForTree, "screenForTree");
|
|
6914
|
+
function localFilterCommands(worktree) {
|
|
6915
|
+
const screen = screenForTree(worktree);
|
|
6916
|
+
if (screen === null) return [UNRESOLVED_REPO];
|
|
6917
|
+
return [...screen.filters, ...screen.unread, ...screen.dangling];
|
|
6854
6918
|
}
|
|
6855
6919
|
__name(localFilterCommands, "localFilterCommands");
|
|
6920
|
+
function checkoutFilterCommands(worktree) {
|
|
6921
|
+
const screen = screenForTree(worktree);
|
|
6922
|
+
if (screen === null) return [UNRESOLVED_REPO];
|
|
6923
|
+
return [...screen.filters, ...screen.unread];
|
|
6924
|
+
}
|
|
6925
|
+
__name(checkoutFilterCommands, "checkoutFilterCommands");
|
|
6856
6926
|
function discardWorktree(cwd, tree) {
|
|
6857
6927
|
let symlink = false;
|
|
6858
6928
|
try {
|
|
@@ -7118,11 +7188,12 @@ function worktreeResidue(cwd, cap = RESIDUE_PATH_CAP, expectedHeadSha) {
|
|
|
7118
7188
|
}
|
|
7119
7189
|
}
|
|
7120
7190
|
const screen = filterCommandsIn(commonDir, realpathSync3(gitDir));
|
|
7121
|
-
|
|
7191
|
+
const notReadToTheBottom = [...screen.unread, ...screen.dangling];
|
|
7192
|
+
if (notReadToTheBottom.length > 0) {
|
|
7122
7193
|
return {
|
|
7123
7194
|
paths: [],
|
|
7124
7195
|
total: 0,
|
|
7125
|
-
unmeasured: `the residue measurement would run under repo-local config this screen could not read to the bottom: ${describeFilterScreen(
|
|
7196
|
+
unmeasured: `the residue measurement would run under repo-local config this screen could not read to the bottom: ${describeFilterScreen(notReadToTheBottom)} \u2014 a content filter reached that way would execute on the index refresh, and a filter the screen cannot see it cannot blank; remove the include, or the file it names, if it is not yours`
|
|
7126
7197
|
};
|
|
7127
7198
|
}
|
|
7128
7199
|
filterBlanks = filterBlankEnv(screen.filters);
|
|
@@ -39191,6 +39262,16 @@ function classifyProbeRun(exitCode, stdout, probes, stderr = "") {
|
|
|
39191
39262
|
});
|
|
39192
39263
|
}
|
|
39193
39264
|
__name(classifyProbeRun, "classifyProbeRun");
|
|
39265
|
+
var CHECKOUT_INERT = [
|
|
39266
|
+
"-c",
|
|
39267
|
+
"core.hooksPath=/dev/null/no-hooks",
|
|
39268
|
+
"-c",
|
|
39269
|
+
"core.fsmonitor="
|
|
39270
|
+
];
|
|
39271
|
+
function filterScreenRefusal(hits, rewrite) {
|
|
39272
|
+
return `the repository's local config defines content filter(s), or includes config this screen could not read to the bottom: ${describeFilterScreen(hits.map(inertPath))} \u2014 ${rewrite}`;
|
|
39273
|
+
}
|
|
39274
|
+
__name(filterScreenRefusal, "filterScreenRefusal");
|
|
39194
39275
|
function git4(cwd, ...args) {
|
|
39195
39276
|
const r = spawnSync10("git", args, {
|
|
39196
39277
|
cwd,
|
|
@@ -39366,14 +39447,15 @@ function restoreProbeTreeTracked(probeTree) {
|
|
|
39366
39447
|
} catch (e) {
|
|
39367
39448
|
return e instanceof Error ? e.message : String(e);
|
|
39368
39449
|
}
|
|
39369
|
-
const
|
|
39370
|
-
|
|
39371
|
-
|
|
39372
|
-
|
|
39373
|
-
|
|
39374
|
-
|
|
39450
|
+
const filters = checkoutFilterCommands(probeTree);
|
|
39451
|
+
if (filters.length > 0) {
|
|
39452
|
+
return filterScreenRefusal(
|
|
39453
|
+
filters,
|
|
39454
|
+
"this tree's restore would EXECUTE them"
|
|
39455
|
+
);
|
|
39456
|
+
}
|
|
39375
39457
|
for (const args of [
|
|
39376
|
-
[...
|
|
39458
|
+
[...CHECKOUT_INERT, "checkout", "--force", "HEAD", "--", "."],
|
|
39377
39459
|
// `-ffdx`, because `-fd` honors the ignore rules — and those belong to the
|
|
39378
39460
|
// commit under test, so a plant named to match one of them (a committed
|
|
39379
39461
|
// `.gitignore` line and a file to match it) survived every restore. The
|
|
@@ -39381,7 +39463,7 @@ function restoreProbeTreeTracked(probeTree) {
|
|
|
39381
39463
|
// rather than built, and it is the only ignored thing in this tree the
|
|
39382
39464
|
// probes cannot run without. Everything else ignored — a built `dist`, a
|
|
39383
39465
|
// planted config — goes.
|
|
39384
|
-
[...
|
|
39466
|
+
[...CHECKOUT_INERT, "clean", "-ffdx", "-e", "node_modules"]
|
|
39385
39467
|
]) {
|
|
39386
39468
|
const r = spawnSync10("git", args, {
|
|
39387
39469
|
cwd: probeTree,
|
|
@@ -39390,7 +39472,9 @@ function restoreProbeTreeTracked(probeTree) {
|
|
|
39390
39472
|
});
|
|
39391
39473
|
if (r.error) return r.error.message;
|
|
39392
39474
|
if (r.status !== 0) {
|
|
39393
|
-
return (r.stderr ?? "").toString().trim() || `
|
|
39475
|
+
return (r.stderr ?? "").toString().trim() || // The subcommand, not `args[2]`: that index is a `-c` from the inert
|
|
39476
|
+
// pair, so the message read "git -c exited 1" and named nothing.
|
|
39477
|
+
`git ${args[CHECKOUT_INERT.length]} exited ${r.status}`;
|
|
39394
39478
|
}
|
|
39395
39479
|
}
|
|
39396
39480
|
const bits = spawnSync10(
|
|
@@ -39630,6 +39714,17 @@ function runOneHunkProbe(probeTree, hunk, probes, deadlineAt, now = Date.now, de
|
|
|
39630
39714
|
detail: "the probe target was relinked through a symlink before the reverse patch applied \u2014 nothing was neutralised"
|
|
39631
39715
|
};
|
|
39632
39716
|
}
|
|
39717
|
+
const applyFilters = checkoutFilterCommands(probeTree);
|
|
39718
|
+
if (applyFilters.length > 0) {
|
|
39719
|
+
return {
|
|
39720
|
+
...meta,
|
|
39721
|
+
verdict: "inconclusive",
|
|
39722
|
+
detail: filterScreenRefusal(
|
|
39723
|
+
applyFilters,
|
|
39724
|
+
"this reverse-apply would EXECUTE them"
|
|
39725
|
+
)
|
|
39726
|
+
};
|
|
39727
|
+
}
|
|
39633
39728
|
const applied = spawnSync10("git", ["apply", "--reverse", "-"], {
|
|
39634
39729
|
cwd: probeTree,
|
|
39635
39730
|
input: hunk.patch,
|
|
@@ -39937,8 +40032,25 @@ async function runTestEfficacy(args) {
|
|
|
39937
40032
|
let created = false;
|
|
39938
40033
|
let sweep;
|
|
39939
40034
|
try {
|
|
40035
|
+
const creationFilters = checkoutFilterCommands(worktree);
|
|
40036
|
+
if (creationFilters.length > 0) {
|
|
40037
|
+
throw new Error(
|
|
40038
|
+
filterScreenRefusal(
|
|
40039
|
+
creationFilters,
|
|
40040
|
+
"creating the probe tree would EXECUTE them"
|
|
40041
|
+
)
|
|
40042
|
+
);
|
|
40043
|
+
}
|
|
39940
40044
|
sweep = discardWorktree(worktree, probeTree);
|
|
39941
|
-
git4(
|
|
40045
|
+
git4(
|
|
40046
|
+
worktree,
|
|
40047
|
+
...CHECKOUT_INERT,
|
|
40048
|
+
"worktree",
|
|
40049
|
+
"add",
|
|
40050
|
+
"--detach",
|
|
40051
|
+
probeTree,
|
|
40052
|
+
headSha
|
|
40053
|
+
);
|
|
39942
40054
|
created = true;
|
|
39943
40055
|
} catch (e) {
|
|
39944
40056
|
const detail = worktreeCreateFailureDetail(
|
|
@@ -40027,7 +40139,7 @@ async function runTestEfficacy(args) {
|
|
|
40027
40139
|
);
|
|
40028
40140
|
if (harnessValidated === null) {
|
|
40029
40141
|
noteMutants(
|
|
40030
|
-
`the positive control could not be set up (${greenProbes[0]} could not be read in
|
|
40142
|
+
`the positive control could not be set up (the probe target was relinked, the probe tree could not be restored, or ${greenProbes[0]} could not be read in it), so the harness was NOT validated this run \u2014 read every survivor below as unconfirmed by a control`
|
|
40031
40143
|
);
|
|
40032
40144
|
}
|
|
40033
40145
|
}
|
|
@@ -40133,7 +40245,23 @@ async function runTestEfficacy(args) {
|
|
|
40133
40245
|
(existsAtBase(probeTree, base, p) ? modified : added).push(p);
|
|
40134
40246
|
}
|
|
40135
40247
|
if (modified.length > 0) {
|
|
40136
|
-
|
|
40248
|
+
const revertFilters = checkoutFilterCommands(probeTree);
|
|
40249
|
+
if (revertFilters.length > 0) {
|
|
40250
|
+
throw new Error(
|
|
40251
|
+
filterScreenRefusal(
|
|
40252
|
+
revertFilters,
|
|
40253
|
+
"this revert's checkout would EXECUTE them"
|
|
40254
|
+
)
|
|
40255
|
+
);
|
|
40256
|
+
}
|
|
40257
|
+
git4(
|
|
40258
|
+
probeTree,
|
|
40259
|
+
...CHECKOUT_INERT,
|
|
40260
|
+
"checkout",
|
|
40261
|
+
base,
|
|
40262
|
+
"--",
|
|
40263
|
+
...modified
|
|
40264
|
+
);
|
|
40137
40265
|
}
|
|
40138
40266
|
for (const p of added) safeRmWithin(probeTree, p);
|
|
40139
40267
|
const collectable = probes.filter(
|
|
@@ -43565,10 +43693,10 @@ var updateCommand3 = {
|
|
|
43565
43693
|
stdioHelpers,
|
|
43566
43694
|
{ updateEventEmitter }
|
|
43567
43695
|
] = await Promise.all([
|
|
43568
|
-
import("./settings-
|
|
43569
|
-
import("./updateCheck-
|
|
43570
|
-
import("./installationInfo-
|
|
43571
|
-
import("./standalone-update-
|
|
43696
|
+
import("./settings-D44YMZFT.js"),
|
|
43697
|
+
import("./updateCheck-CHUYWD6L.js"),
|
|
43698
|
+
import("./installationInfo-LBOL6SBV.js"),
|
|
43699
|
+
import("./standalone-update-QUGHFMCS.js"),
|
|
43572
43700
|
import("./stdioHelpers-AY6XCDY2.js"),
|
|
43573
43701
|
import("./updateEventEmitter-5MKC7BLQ.js")
|
|
43574
43702
|
]);
|
|
@@ -44672,7 +44800,7 @@ async function loadCliConfig(settings, argv, cwd = process.cwd(), overrideExtens
|
|
|
44672
44800
|
disabledSkillNamesProvider: bareMode || safeMode ? void 0 : disabledSkillNamesProvider,
|
|
44673
44801
|
enabledSkillNamesProvider: bareMode || safeMode ? void 0 : enabledSkillNamesProvider,
|
|
44674
44802
|
terminalImageRenderSupportProvider: interactive ? async () => {
|
|
44675
|
-
const { getTerminalImageRenderSupport } = await import("./terminal-image-renderer-
|
|
44803
|
+
const { getTerminalImageRenderSupport } = await import("./terminal-image-renderer-YNYW5CQG.js");
|
|
44676
44804
|
return getTerminalImageRenderSupport();
|
|
44677
44805
|
} : void 0,
|
|
44678
44806
|
disabledSkillLevels: bareMode || safeMode || !Array.isArray(settings.skills?.disabledLevels) ? void 0 : settings.skills.disabledLevels.filter(isSkillLevel),
|
|
@@ -44830,7 +44958,9 @@ async function loadCliConfig(settings, argv, cwd = process.cwd(), overrideExtens
|
|
|
44830
44958
|
memoryAgentTimeoutMinutes: settings.memory?.agentTimeoutMinutes,
|
|
44831
44959
|
memoryAgentMaxTurns: settings.memory?.agentMaxTurns,
|
|
44832
44960
|
fastModel: settings.fastModel || void 0,
|
|
44833
|
-
|
|
44961
|
+
// Bare and safe mode must switch the tool off explicitly: `undefined`
|
|
44962
|
+
// means "derive it" now that WebSearch is opt-out.
|
|
44963
|
+
webSearch: bareMode || safeMode ? { enabled: false } : resolveWebSearchSettings(settings),
|
|
44834
44964
|
visionModel: settings.visionModel || void 0,
|
|
44835
44965
|
compactionModel: settings.compactionModel || void 0,
|
|
44836
44966
|
imageModel: settings.imageModel || void 0,
|