@qwen-code/qwen-code 0.22.0 → 0.22.1
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/computer-use/SKILL.md +229 -0
- package/bundled/computer-use/agents/openai.yaml +4 -0
- package/bundled/coordinate/SKILL.md +5 -5
- package/bundled/qc-helper/docs/configuration/auth.md +7 -7
- package/bundled/qc-helper/docs/configuration/model-providers.md +70 -9
- package/bundled/qc-helper/docs/configuration/settings.md +40 -40
- package/bundled/qc-helper/docs/extension/introduction.md +3 -1
- package/bundled/qc-helper/docs/features/channels/_meta.ts +1 -0
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +12 -0
- package/bundled/qc-helper/docs/features/channels/dws.md +120 -0
- package/bundled/qc-helper/docs/features/channels/overview.md +3 -3
- package/bundled/qc-helper/docs/features/code-review.md +25 -21
- package/bundled/qc-helper/docs/features/commands.md +2 -2
- package/bundled/qc-helper/docs/features/computer-use.md +57 -51
- package/bundled/qc-helper/docs/features/mcp.md +35 -12
- package/bundled/qc-helper/docs/features/sub-agents.md +1 -1
- package/bundled/qc-helper/docs/features/worktree.md +1 -1
- package/bundled/qc-helper/docs/overview.md +1 -1
- package/bundled/qc-helper/docs/quickstart.md +1 -1
- package/bundled/qc-helper/docs/qwen-serve.md +29 -6
- package/bundled/review/SKILL.md +119 -417
- package/bundled/review/references/aone.md +18 -0
- package/bundled/review/references/persistence.md +105 -0
- package/bundled/review/references/posting.md +270 -0
- package/chunks/MaxSizedBox-UUTUE42J.js +112 -0
- package/chunks/{StandaloneSessionPicker-KTHPCSR6.js → StandaloneSessionPicker-XF2TVJFK.js} +87 -86
- package/chunks/{acp-startup-profiler-T4GEAPLX.js → acp-startup-profiler-GNYAL6LI.js} +2 -2
- package/chunks/{acpAgent-CRY3JZ5O.js → acpAgent-GY53MJIW.js} +2216 -1931
- package/chunks/agent-7U6CC5KF.js +97 -0
- package/chunks/agent-headless-32O4L2CT.js +87 -0
- package/chunks/{anthropicContentGenerator-Y2OX6LS4.js → anthropicContentGenerator-U76GTVB6.js} +128 -58
- package/chunks/{artifact-tool-SBXMTVCB.js → artifact-tool-XDJCZZCF.js} +2 -2
- package/chunks/{askUserQuestion-KEQJRFD6.js → askUserQuestion-ZXXERLEV.js} +2 -2
- package/chunks/bridge-DFX2FFH4.js +119 -0
- package/chunks/{ca-D3F4S6NG.js → ca-7HPYOYSZ.js} +3 -0
- package/chunks/{channel-management-service-IRTT7RNE.js → channel-management-service-HXXS3HOZ.js} +4 -4
- package/chunks/channel-settings-store-ELLH2M4M.js +117 -0
- package/chunks/{channel-worker-group-BJNMR2MP.js → channel-worker-group-EVDC2P4K.js} +8 -7
- package/chunks/{channel-worker-manager-EMA7CQDJ.js → channel-worker-manager-IJJZHGEI.js} +8 -7
- package/chunks/{channel-worker-supervisor-F6I6WSWW.js → channel-worker-supervisor-YSKB5GVB.js} +12 -7
- package/chunks/{chunk-2TRNCJK4.js → chunk-27ONXAFY.js} +1 -1
- package/chunks/{chunk-OVH5Y7KS.js → chunk-2CRNTW2B.js} +19 -3
- package/chunks/{read-package-up-UXSW3YPB.js → chunk-2EAZ43JQ.js} +1 -0
- package/chunks/{chunk-DB2OKNTU.js → chunk-2FN2HNTI.js} +2 -2
- package/chunks/{chunk-KM73TBQ4.js → chunk-2LD5U7Q3.js} +31 -0
- package/chunks/{chunk-QJHPWLZC.js → chunk-2MHGD7EE.js} +1 -1
- package/chunks/{chunk-BMCSKS37.js → chunk-2NCVUT3C.js} +6 -6
- package/chunks/{chunk-A5F2YNO6.js → chunk-2NNTE2ED.js} +245 -10
- package/chunks/{chunk-Z3JMO2CH.js → chunk-2SERYG4T.js} +1 -1
- package/chunks/{chunk-4J7OPYNS.js → chunk-2YDYDDE2.js} +6 -6
- package/chunks/{chunk-PXOJLJ5W.js → chunk-2YEZNBSD.js} +333 -184
- package/chunks/{chunk-UU4WC7DK.js → chunk-2ZV3CZKI.js} +82 -12
- package/chunks/{chunk-SE55HQGF.js → chunk-3B5DCAQU.js} +74 -52
- package/chunks/{chunk-UIRLQ3N7.js → chunk-3BV7TZNQ.js} +3 -3
- package/chunks/{chunk-2Z6LSQMF.js → chunk-3FSBMAYD.js} +1 -1
- package/chunks/{chunk-DJEHYM4H.js → chunk-3UZCLCXR.js} +3 -3
- package/chunks/{chunk-WWUSHZ7M.js → chunk-43C2II2G.js} +5 -5
- package/chunks/{chunk-2GXYDNXP.js → chunk-47SIHHPL.js} +8 -8
- package/chunks/{chunk-PHJJ3RVO.js → chunk-4DCP3362.js} +7 -15
- package/chunks/chunk-4K7NQDCG.js +104 -0
- package/chunks/{chunk-UZPYR3EV.js → chunk-4TPAG3O7.js} +1 -1
- package/chunks/{chunk-BEGIBJAZ.js → chunk-5CI4AXDD.js} +4 -4
- package/chunks/{chunk-7KOFLDEP.js → chunk-5JTIYALA.js} +1 -1
- package/chunks/{chunk-7HFULI45.js → chunk-5MK32KJV.js} +3 -3
- package/chunks/{chunk-CXJHQVEK.js → chunk-5PA6UEYA.js} +4 -0
- package/chunks/{chunk-IBJ5S45N.js → chunk-5T4LWWNX.js} +2 -2
- package/chunks/{chunk-VUMLT7E5.js → chunk-5Y2JCJAH.js} +2 -2
- package/chunks/{chunk-YZBDKFRQ.js → chunk-5ZYZPDDF.js} +993 -895
- package/chunks/{chunk-2A4C2MEG.js → chunk-62PXFOK4.js} +35 -12
- package/chunks/{chunk-IIWGSX4L.js → chunk-6E4WHQJV.js} +1 -1
- package/chunks/{chunk-6PCOVQO2.js → chunk-6HTMIKXZ.js} +8 -8
- package/chunks/{chunk-RDG44S5I.js → chunk-6KS24S3X.js} +2 -2
- package/chunks/{chunk-GAHYKJPV.js → chunk-6US7BF3G.js} +7 -59
- package/chunks/{chunk-MHG6NDS6.js → chunk-6YAR6ZU3.js} +2 -2
- package/chunks/{chunk-3CLIDIVQ.js → chunk-73WFGVIZ.js} +3 -3
- package/chunks/{chunk-ZZUVC6RI.js → chunk-76WGY6LW.js} +3 -3
- package/chunks/{chunk-XLDFW44M.js → chunk-77TOMRBG.js} +3 -3
- package/chunks/{chunk-PDL6LKB5.js → chunk-7AS7QX72.js} +1 -1
- package/chunks/{chunk-ND7NOI4P.js → chunk-7CWEZQ6T.js} +0 -15
- package/chunks/{chunk-DWCKACFL.js → chunk-7DPKPBOQ.js} +2 -2
- package/chunks/{chunk-45NQKMYB.js → chunk-7JPW6IYH.js} +1 -1
- package/chunks/{chunk-HDKCKCYO.js → chunk-7QGEJI7M.js} +1 -1
- package/chunks/{chunk-S4C4JJKE.js → chunk-A7X32SCT.js} +5 -5
- package/chunks/{chunk-O5Z7EB6Y.js → chunk-AYHQZBJ4.js} +170 -207
- package/chunks/{chunk-7DYNJFES.js → chunk-AYVIGUUK.js} +6 -1
- package/chunks/{chunk-7DMTAQJ6.js → chunk-BDHLBR46.js} +132 -49
- package/chunks/{chunk-43T5WDQ7.js → chunk-BFSFJR3D.js} +1 -1
- package/chunks/{chunk-AP3B7LKD.js → chunk-BKDAF7ES.js} +2 -2
- package/chunks/{chunk-B6UBOIFE.js → chunk-BQBUZDDH.js} +14 -11
- package/chunks/{chunk-VLRBJ24J.js → chunk-BVE5EMIG.js} +2 -2
- package/chunks/{chunk-P47E4SJC.js → chunk-BX2BZPFJ.js} +3 -3
- package/chunks/{chunk-OARZJFZX.js → chunk-C4WBKZJT.js} +4 -4
- package/chunks/{chunk-QKBYFU2Q.js → chunk-CFKIH3D3.js} +21 -1
- package/chunks/{chunk-URN2JIAQ.js → chunk-CITGRGCM.js} +2 -1
- package/chunks/{chunk-WU5E4HMO.js → chunk-CPPYZHBN.js} +1 -1
- package/chunks/chunk-DCSAVGDJ.js +20 -0
- package/chunks/{chunk-Q54XG7IX.js → chunk-DEYPMJPD.js} +1 -1
- package/chunks/{chunk-KSPRQSB4.js → chunk-DIMEPKCW.js} +52 -12
- package/chunks/{chunk-I432KXWD.js → chunk-DP7LABIB.js} +1 -1
- package/chunks/{chunk-36OF5PRW.js → chunk-E4I5MVBR.js} +7 -3
- package/chunks/{chunk-AW27A43Y.js → chunk-E55H6BZ7.js} +93 -1
- package/chunks/{chunk-K623ENWT.js → chunk-E6FGMDFQ.js} +4 -0
- package/chunks/{chunk-5XUTPXQU.js → chunk-EAV3TENS.js} +6 -9
- package/chunks/{chunk-LI4YHTQK.js → chunk-EB4VDXNI.js} +1 -1
- package/chunks/{chunk-JOLJTKIG.js → chunk-EC5BONC3.js} +1 -1
- package/chunks/{chunk-25NESM4G.js → chunk-EEQYTWGU.js} +29 -5
- package/chunks/{chunk-4CWDWDL6.js → chunk-EKP3M4RF.js} +1 -1
- package/chunks/{chunk-W4CRPSC5.js → chunk-ELY4QVIB.js} +1 -1
- package/chunks/{chunk-BB5IMQCV.js → chunk-EMGAVCBZ.js} +2 -2
- package/chunks/chunk-FBX2SDQ4.js +48 -0
- package/chunks/{chunk-C72BXMJ5.js → chunk-FJWICLG7.js} +1 -1
- package/chunks/{chunk-6FRJEE2S.js → chunk-FK4H3V6S.js} +5 -5
- package/chunks/{chunk-LDGWX737.js → chunk-FN5C6C7G.js} +160 -59
- package/chunks/{chunk-3ZFJUBTP.js → chunk-FPH6TXD3.js} +1 -1
- package/chunks/{chunk-WRT324N6.js → chunk-FVDQ5E67.js} +3 -3
- package/chunks/{chunk-VFACN2CE.js → chunk-GNMJNDZE.js} +1 -1
- package/chunks/{chunk-FVBVJEBG.js → chunk-GNRVKN76.js} +10 -8
- package/chunks/{chunk-PZRUV52H.js → chunk-GTUKW3I6.js} +20 -2
- package/chunks/chunk-GYTKQYDB.js +23 -0
- package/chunks/{chunk-VMJL7RH6.js → chunk-GZJUCMH4.js} +4 -4
- package/chunks/{chunk-MQP3MHWN.js → chunk-HJOWQUE2.js} +21 -15
- package/chunks/{chunk-ZS5BHEPD.js → chunk-I32QCIK7.js} +1 -1
- package/chunks/{chunk-7IV52LTO.js → chunk-I6VVOZDK.js} +2 -2
- package/chunks/{chunk-X7V3N6YH.js → chunk-I6YW3T3W.js} +218 -37
- package/chunks/{chunk-2E3V7G6Y.js → chunk-ICWGPK23.js} +55 -50
- package/chunks/{chunk-SQS55KR4.js → chunk-IJVDHPKD.js} +2 -2
- package/chunks/{chunk-QS4ENGVF.js → chunk-IKN3IUJP.js} +9 -8
- package/chunks/{chunk-2UZJWSVD.js → chunk-ILPXSKGQ.js} +2 -2
- package/chunks/{chunk-ZRYQMWEP.js → chunk-IPQA4SR5.js} +2 -2
- package/chunks/{chunk-XYQHT3AW.js → chunk-IRIX323G.js} +2 -2
- package/chunks/{chunk-5HJUPACR.js → chunk-J7MLXFC5.js} +2 -2
- package/chunks/{chunk-AZF6SME3.js → chunk-JECO75XD.js} +3 -3
- package/chunks/chunk-JLGFGPZJ.js +346 -0
- package/chunks/{chunk-WZDM44SB.js → chunk-JUIJ3FXC.js} +7 -7
- package/chunks/{chunk-A6NRNRKE.js → chunk-JVPFTDBK.js} +1 -1
- package/chunks/{chunk-2J3OJGTL.js → chunk-K2OJUPOE.js} +1 -21
- package/chunks/{chunk-GHY5OIYP.js → chunk-K63NK3KL.js} +13 -13
- package/chunks/{chunk-7JBHIQS2.js → chunk-KCOXDRQL.js} +7 -13
- package/chunks/{chunk-6NFAEG54.js → chunk-KOJ6MHD5.js} +24 -13
- package/chunks/{chunk-WS7PAXXR.js → chunk-KWFP3WV6.js} +18 -13
- package/chunks/{chunk-A5F63FEW.js → chunk-L436XFLJ.js} +1 -1
- package/chunks/{chunk-KIVGVFMM.js → chunk-LI2HEMKO.js} +16 -4
- package/chunks/{chunk-GIWB5QLV.js → chunk-LJP2BBMK.js} +4 -4
- package/chunks/{create-sub-session-XBCVGNFU.js → chunk-LRKMQPMD.js} +4 -6
- package/chunks/{chunk-6UQSU7CQ.js → chunk-MDZO5V2O.js} +58 -107
- package/chunks/{chunk-AO4M6NMD.js → chunk-MW5AHWOZ.js} +60 -20
- package/chunks/{chunk-FYZMB6DB.js → chunk-MYLXL7F6.js} +11 -11
- package/chunks/{chunk-ZLCT4C5A.js → chunk-MZS7GEC7.js} +1 -1
- package/chunks/{chunk-VEND4KA4.js → chunk-NER3H7PI.js} +1 -1
- package/chunks/{chunk-AVCCKIZ6.js → chunk-NVK4HJYQ.js} +1 -1
- package/chunks/{chunk-MPHLIJYL.js → chunk-NY3IJYAV.js} +14 -8
- package/chunks/{chunk-XZJKSETB.js → chunk-O3BUXIPM.js} +3 -3
- package/chunks/{chunk-4XPSVIED.js → chunk-O5YGAEQS.js} +6 -6
- package/chunks/{chunk-NW35NVFN.js → chunk-ODXCSIH5.js} +4 -4
- package/chunks/{chunk-5XHAOUWD.js → chunk-OI2DR6QB.js} +3 -3
- package/chunks/{chunk-BUGYW6FB.js → chunk-OQ6LTSX3.js} +1 -1
- package/chunks/{chunk-J5ZDDUKM.js → chunk-OT26ITEY.js} +4 -4
- package/chunks/{chunk-EFB657PR.js → chunk-OX44MOAN.js} +3 -3
- package/chunks/{chunk-LURJYO2T.js → chunk-OZ6KS6KW.js} +4 -0
- package/chunks/{chunk-4F5WV4RF.js → chunk-PAJGKZAA.js} +281 -10
- package/chunks/{chunk-HIK2OF33.js → chunk-PVBT5QPD.js} +1 -1
- package/chunks/chunk-QHMLYMMS.js +32 -0
- package/chunks/{chunk-U2UYQMM6.js → chunk-R2ZJH3FV.js} +3 -3
- package/chunks/{chunk-K52PZNU4.js → chunk-RRKNX553.js} +2 -2
- package/chunks/chunk-RXFQM6FQ.js +42 -0
- package/chunks/{chunk-SJ4HB27T.js → chunk-SDVF6A42.js} +3 -3
- package/chunks/{chunk-TBVSALA3.js → chunk-SKNVVYIJ.js} +3 -3
- package/chunks/{chunk-JGUBDRBC.js → chunk-SLEWBQWM.js} +3 -3
- package/chunks/{chunk-ZRFUT5VV.js → chunk-SM7ZVKTF.js} +7 -7
- package/chunks/{chunk-UUQFJILB.js → chunk-SQPOJ4ZI.js} +15 -3
- package/chunks/{chunk-RPJQ3O4M.js → chunk-SRGENTPF.js} +31 -41
- package/chunks/{chunk-ISJMN3ML.js → chunk-T2CRBIDJ.js} +1 -1
- package/chunks/{chunk-MZKWFWVG.js → chunk-T2HMXHYA.js} +6 -6
- package/chunks/{chunk-FEMQ6Y7W.js → chunk-T6OODF2U.js} +47 -126
- package/chunks/{chunk-VYC7XFYV.js → chunk-TKO4TLT6.js} +5 -5
- package/chunks/{chunk-KVGR4MCF.js → chunk-TOF4UZHH.js} +3 -3
- package/chunks/{chunk-LD5VIJ7S.js → chunk-TWSKM647.js} +1 -1
- package/chunks/{chunk-7NBVNAJJ.js → chunk-UCSV2IZW.js} +3 -3
- package/chunks/{chunk-FDD2IUEL.js → chunk-UX3IFLJM.js} +229 -21
- package/chunks/{chunk-YDJRMQU4.js → chunk-V3GINY6K.js} +3 -3
- package/chunks/{chunk-XL5K4SVK.js → chunk-VL4YX3FH.js} +1 -1
- package/chunks/{chunk-62JOGZL5.js → chunk-VMDURMFY.js} +199 -87
- package/chunks/{chunk-OE52YHCZ.js → chunk-W2WRNJKX.js} +11 -11
- package/chunks/{chunk-YLFLHKDL.js → chunk-W3N5XAZ6.js} +1 -1
- package/chunks/{chunk-IWOWEENB.js → chunk-WBT3STGU.js} +385 -25
- package/chunks/{chunk-S3G6YFQC.js → chunk-WEGXPP5E.js} +1 -1
- package/chunks/{chunk-RDQ7QB4Y.js → chunk-XJS54K4A.js} +2 -2
- package/chunks/{chunk-L4HVF7LM.js → chunk-XNXWEGKB.js} +3 -3
- package/chunks/{chunk-T6XLJRQY.js → chunk-XYX474JQ.js} +36509 -5182
- package/chunks/{chunk-F6WFNA7U.js → chunk-XZA32HII.js} +3 -6
- package/chunks/{chunk-NUGZAFR2.js → chunk-ZEADBZLO.js} +147 -6
- package/chunks/chunk-ZELCTN6Y.js +29 -0
- package/chunks/{chunk-TQOF5KBL.js → chunk-ZEZKIS2K.js} +0 -31
- package/chunks/{chunk-IOSEW6KP.js → chunk-ZJG323IA.js} +5 -4
- package/chunks/{chunk-VSNPOSDN.js → chunk-ZKAZP2ZG.js} +107 -12
- package/chunks/{chunk-YMVFIYHV.js → chunk-ZLTEQYNC.js} +2 -2
- package/chunks/{chunk-O5BDEWBC.js → chunk-ZWKGZB2K.js} +3 -3
- package/chunks/{chunk-6QSA4JHL.js → chunk-ZXDM7DYV.js} +2772 -814
- package/chunks/chunk-ZYNTSXWK.js +32 -0
- package/chunks/config-utils-7M6PCTLT.js +113 -0
- package/chunks/contextCommand-G4QG3TW6.js +108 -0
- package/chunks/{core-runtime-CES6JSVV.js → core-runtime-PKNQ63VL.js} +63 -58
- package/chunks/{create-sub-session-UJTPMVOG.js → create-sub-session-PLGPY6TV.js} +60 -58
- package/chunks/create-sub-session-RVHSWVAP.js +17 -0
- package/chunks/{cron-create-IKA56DAF.js → cron-create-IJGVR5R2.js} +4 -4
- package/chunks/{cron-delete-K5Q62EGH.js → cron-delete-4N5BI6GL.js} +4 -4
- package/chunks/{cron-list-QBFGAMP7.js → cron-list-2CATIPUX.js} +4 -4
- package/chunks/{daemon-RZZUPGOJ.js → daemon-NAYK4XXU.js} +51 -24
- package/chunks/{daemon-git-worktree-guard-3QY2BQYB.js → daemon-git-worktree-guard-LDBJXH2U.js} +338 -92
- package/chunks/daemon-status-provider-F5FEHVVG.js +118 -0
- package/chunks/daemon-trust-policy-C6YTU5CQ.js +114 -0
- package/chunks/{daemon-trust-policy-monitor-TK4K7M63.js → daemon-trust-policy-monitor-IGEJPHQ4.js} +68 -66
- package/chunks/{de-RYUHH2C6.js → de-X6HLSIFE.js} +1 -0
- package/chunks/deferred-core-runtime-GHT3GDOR.js +116 -0
- package/chunks/{display-image-OEJMJV3S.js → display-image-DR55LL6M.js} +5 -5
- package/chunks/dist-4Q7NTUNB.js +2512 -0
- package/chunks/{dist-ESS34DHC.js → dist-6H6RZ5H6.js} +2 -2
- package/chunks/{dist-LZO24N3E.js → dist-7CKN54NL.js} +1 -1
- package/chunks/{dist-5EV2G6MC.js → dist-DJBNNPLN.js} +1 -1
- package/chunks/{dist-J6P3C52Z.js → dist-FVJZSIO4.js} +28 -7
- package/chunks/{dist-K7IQB53U.js → dist-SATKXKUR.js} +1 -1
- package/chunks/{dist-ES6HNUW2.js → dist-TJUDJTCB.js} +246 -17
- package/chunks/{dist-VVQBOKDH.js → dist-UQUFZDIY.js} +1 -1
- package/chunks/{dist-2OG3PGKO.js → dist-ZBVOXSKF.js} +3 -3
- package/chunks/earlyInputCapture-HOSJTLWP.js +109 -0
- package/chunks/{edit-A2633SLR.js → edit-KSPVUEAS.js} +48 -48
- package/chunks/{en-3RHLPITS.js → en-6MDBWMTG.js} +3 -0
- package/chunks/{enter-worktree-OIAHE2TB.js → enter-worktree-UOZ6ZTP7.js} +7 -8
- package/chunks/{enterPlanMode-SUGIKLR7.js → enterPlanMode-DZTABSKN.js} +47 -47
- package/chunks/environment-JXOSW25V.js +131 -0
- package/chunks/errors-IOXFDE4J.js +115 -0
- package/chunks/{exit-worktree-3UT3SSWT.js → exit-worktree-G2QATUCV.js} +7 -8
- package/chunks/exitPlanMode-PZG4FXRB.js +85 -0
- package/chunks/{fast-path-3AVP3G35.js → fast-path-EBS7NAVL.js} +28 -7
- package/chunks/{fast-path-settings-WHX3J3ZI.js → fast-path-settings-XMFBYFUH.js} +2 -2
- package/chunks/{fr-4PL5GHG4.js → fr-FTZWF462.js} +1 -0
- package/chunks/{gemini-7PVQWHTH.js → gemini-JELEKOVS.js} +129 -123
- package/chunks/{geminiContentGenerator-B2FOJJDJ.js → geminiContentGenerator-I2CKP7XI.js} +16 -13
- package/chunks/{glob-7YGXE6OV.js → glob-TDVEVPQZ.js} +47 -47
- package/chunks/{goal-tools-TLJCE7YZ.js → goal-tools-CNVXMSZD.js} +72 -28
- package/chunks/{grep-6DV6LTON.js → grep-3NLSS32D.js} +6 -6
- package/chunks/handleAutoUpdate-AWAGHKOX.js +111 -0
- package/chunks/i18n-CYA25C5F.js +126 -0
- package/chunks/{image-gen-7CSCJ73T.js → image-gen-63NN2H5N.js} +9 -11
- package/chunks/initializer-JD2FLNLO.js +115 -0
- package/chunks/installationInfo-N3DCWVWR.js +109 -0
- package/chunks/{ja-HZ7X7PQO.js → ja-2GL5FKYJ.js} +1 -0
- package/chunks/{keychain-token-storage-MTFTAESK.js → keychain-token-storage-3MGFRYGM.js} +2 -2
- package/chunks/list-XDQAUET5.js +118 -0
- package/chunks/{list-agents-43XUEXJV.js → list-agents-EXRSHIDJ.js} +2 -2
- package/chunks/loadedSettingsAdapter-IK7H5JRK.js +112 -0
- package/chunks/{loggingContentGenerator-RNE66CKK.js → loggingContentGenerator-CZWUAHAI.js} +27 -30
- package/chunks/{loop-wakeup-E54KDUXC.js → loop-wakeup-XBPB2BRO.js} +5 -5
- package/chunks/{ls-CGL2UC3H.js → ls-WFONAND2.js} +4 -4
- package/chunks/{lsp-5IKUO5DX.js → lsp-DUKPDUXN.js} +2 -2
- package/chunks/{managed-npm-update-Y3SC3GLJ.js → managed-npm-update-54W23SP5.js} +61 -59
- package/chunks/mcp-2E7ZLMEE.js +112 -0
- package/chunks/{monitor-PXYSGSUN.js → monitor-A4J5QRGJ.js} +47 -47
- package/chunks/nonInteractiveCli-ZNDXB62Y.js +185 -0
- package/chunks/{notebook-edit-ISIBJVBR.js → notebook-edit-4ANFZON5.js} +48 -48
- package/chunks/open-with-auth-4UI3KHUR.js +55 -0
- package/chunks/{openaiContentGenerator-6TBOPEGT.js → openaiContentGenerator-JCCJJQZC.js} +29 -30
- package/chunks/pidfile-DHV2Y7UD.js +113 -0
- package/chunks/{processUtils-YK2TDTTU.js → processUtils-JJAR56SO.js} +2 -2
- package/chunks/prompt-terminal-ledger-LDZ6QVYA.js +107 -0
- package/chunks/{pt-QT5N2Q6Q.js → pt-XN2YWJVM.js} +1 -0
- package/chunks/{qwenContentGenerator-CLDMA2Y4.js → qwenContentGenerator-5JM44ZSA.js} +53 -59
- package/chunks/{qwenOAuth2-DLDR6UC5.js → qwenOAuth2-JIYAWXTW.js} +8 -10
- package/chunks/{read-file-2HOD2ATO.js → read-file-N3E5DY7N.js} +13 -14
- package/chunks/{read-mcp-resource-XYES2B42.js → read-mcp-resource-7A7NFSFL.js} +2 -2
- package/chunks/read-package-up-6T6ICKR7.js +13 -0
- package/chunks/{record-artifact-W3IBTGL7.js → record-artifact-CPJ4IJSD.js} +4 -5
- package/chunks/report-findings-VFM5DENC.js +33 -0
- package/chunks/request-shutdown-AXVOFN5C.js +133 -0
- package/chunks/resumeHistoryUtils-YQRITQAG.js +120 -0
- package/chunks/ripGrep-NEIHKBKB.js +39 -0
- package/chunks/{ru-STMG5BPD.js → ru-OLTMFJEW.js} +1 -0
- package/chunks/{run-qwen-serve-XJHOW2NY.js → run-qwen-serve-IWGPZADI.js} +622 -79
- package/chunks/{runtime-J4SPTJRQ.js → runtime-I76HPFUE.js} +73 -71
- package/chunks/{scheduler-VRAEZZ4E.js → scheduler-M6YL4K4I.js} +62 -60
- package/chunks/{sdk-exporters-http-RSIOP3G2.js → sdk-exporters-http-XXSKBD2C.js} +5 -5
- package/chunks/{sdk-impl-CB3KARSK.js → sdk-impl-VPNBLV7I.js} +7 -7
- package/chunks/{send-message-J4VT46OI.js → send-message-A2GXDX3B.js} +10 -31
- package/chunks/serve-XY5S63GN.js +120 -0
- package/chunks/{server-74ONDK62.js → server-TWXRRREO.js} +965 -405
- package/chunks/{session-BO6VBWJP.js → session-IT5ZXU7A.js} +151 -140
- package/chunks/{settings-35QZNFDG.js → settings-IX5HOOCG.js} +71 -69
- package/chunks/shell-LZ55AAJB.js +95 -0
- package/chunks/{skill-DKEMQSNJ.js → skill-WSZ53D2R.js} +108 -25
- package/chunks/skill-settings-5U7FTJIK.js +120 -0
- package/chunks/spawnChannel-TMC6VXGN.js +113 -0
- package/chunks/standalone-update-CUYGWTR4.js +120 -0
- package/chunks/{startInteractiveUI-J2QSGWPU.js → startInteractiveUI-O6BI2OSA.js} +381 -293
- package/chunks/{syntheticOutput-JAXMIMZP.js → syntheticOutput-5AJ444QT.js} +3 -3
- package/chunks/{task-create-I2H322E4.js → task-create-CDJSOEQD.js} +11 -11
- package/chunks/{task-list-3OLIWFTQ.js → task-list-BELMPA75.js} +5 -5
- package/chunks/{task-stop-JAUY6MSY.js → task-stop-U3S3KZG2.js} +2 -2
- package/chunks/{task-update-B3XO4CPI.js → task-update-77VCFDDZ.js} +11 -11
- package/chunks/{team-create-W534PMGX.js → team-create-UF4TMQEH.js} +48 -48
- package/chunks/{team-delete-Q7GE7RRI.js → team-delete-YWFXX77L.js} +5 -5
- package/chunks/{team-plan-approval-WNV6P6NG.js → team-plan-approval-U57NSR6C.js} +47 -47
- package/chunks/terminal-image-renderer-DRL3BROJ.js +116 -0
- package/chunks/theme-manager-HHJPUDRN.js +104 -0
- package/chunks/{todoWrite-FJJTY2TI.js → todoWrite-435EO2CS.js} +4 -4
- package/chunks/{tool-search-Y4KL3LRE.js → tool-search-SV35UV72.js} +18 -19
- package/chunks/total-session-admission-TQI7TCTL.js +114 -0
- package/chunks/trustedFolders-YKK67IP3.js +124 -0
- package/chunks/{update-relaunch-OHVFN6KF.js → update-relaunch-DX7LVA4P.js} +6 -6
- package/chunks/updateCheck-6JRTKTUF.js +120 -0
- package/chunks/useAutoAcceptIndicator-MYXYSKSL.js +122 -0
- package/chunks/{validateNonInterActiveAuth-WJXH426F.js → validateNonInterActiveAuth-B26O4YJP.js} +113 -106
- package/chunks/{version-QMDRADXM.js → version-K5D7VJ4B.js} +2 -2
- package/chunks/{web-fetch-ROS6P4LP.js → web-fetch-VFHZLLNZ.js} +25 -242
- package/chunks/{web-search-JS3E76O6.js → web-search-AQE5A4J5.js} +11 -11
- package/chunks/{web-shell-static-3NUTRHAH.js → web-shell-static-A6QMUNNV.js} +11 -4
- package/chunks/webapi-Z5OM224P.js +4118 -0
- package/chunks/{workflow-2FCMBTBZ.js → workflow-XL6AEUZ7.js} +635 -94
- package/chunks/workspace-providers-status-H6TG34YV.js +116 -0
- package/chunks/{workspace-registration-store-SU4EJKSD.js → workspace-registration-store-I4U3V5LL.js} +1 -1
- package/chunks/workspace-registry-2PWNIYNI.js +123 -0
- package/chunks/workspace-service-4FGTUJLA.js +131 -0
- package/chunks/workspace-skills-status-7VOLUDT6.js +115 -0
- package/chunks/{workspace-trust-reconciler-4Y4F7XIX.js → workspace-trust-reconciler-GJ466KCE.js} +74 -73
- package/chunks/write-file-PWOYCT2K.js +90 -0
- package/chunks/{zh-TW-NX43Z2S2.js → zh-TW-MV4FWFB6.js} +3 -0
- package/chunks/{zh-3JQ75KFU.js → zh-X3WGU6SI.js} +3 -0
- package/chunks/{zoom-image-DNBKCGGF.js → zoom-image-NYJPC3NI.js} +13 -14
- package/cli.js +15 -15
- package/locales/ca.js +3 -0
- package/locales/de.js +1 -0
- package/locales/en.js +3 -0
- package/locales/fr.js +1 -0
- package/locales/ja.js +1 -0
- package/locales/pt.js +1 -0
- package/locales/ru.js +1 -0
- package/locales/zh-TW.js +3 -0
- package/locales/zh.js +3 -0
- package/package.json +3 -3
- package/web-shell/assets/{abnfDiagram-VCTEODGH-DWHXEVlf.js → abnfDiagram-VCTEODGH-yq7z7Anb.js} +1 -1
- package/web-shell/assets/{arc-CXKjm86V.js → arc-CbJO0xnT.js} +1 -1
- package/web-shell/assets/{architectureDiagram-5GKGNRK7-B_ynI0cX.js → architectureDiagram-5GKGNRK7-CRh89421.js} +1 -1
- package/web-shell/assets/{blockDiagram-NRAW4CY4-DMebd9X0.js → blockDiagram-NRAW4CY4-C75KAhKv.js} +1 -1
- package/web-shell/assets/{c4Diagram-UCG6FXSJ-BZ5BlxS-.js → c4Diagram-UCG6FXSJ-BzlMveFB.js} +1 -1
- package/web-shell/assets/channel-B3sGR79J.js +1 -0
- package/web-shell/assets/{chunk-2Q5K7J3B-CluJKopE.js → chunk-2Q5K7J3B-DA8QDX3a.js} +1 -1
- package/web-shell/assets/{chunk-5VM5RSS4-hzDAPFOo.js → chunk-5VM5RSS4-Bgu7gQ7Y.js} +1 -1
- package/web-shell/assets/{chunk-F27PBJKO-6vHioKJe.js → chunk-F27PBJKO-BOew7pIK.js} +1 -1
- package/web-shell/assets/{chunk-G27WJ6UU-B_5hKTGo.js → chunk-G27WJ6UU-DHx1I-hO.js} +1 -1
- package/web-shell/assets/{chunk-JWPE2WC7-CO9VoFCH.js → chunk-JWPE2WC7-SarFW0WU.js} +1 -1
- package/web-shell/assets/{chunk-LCL6LL3I-7L5JpxYu.js → chunk-LCL6LL3I-BLzP083Z.js} +1 -1
- package/web-shell/assets/{chunk-POPQ4Y6H-DHLJMAqj.js → chunk-POPQ4Y6H-Bmkv_iKm.js} +1 -1
- package/web-shell/assets/{chunk-SVP7TREG-Dt-4Cqdl.js → chunk-SVP7TREG-MPx9r1N2.js} +1 -1
- package/web-shell/assets/{chunk-XXDRQBXY-QlSQ3ssG.js → chunk-XXDRQBXY-Ck-09rKG.js} +1 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-sTGo0K3v.js +1 -0
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-sTGo0K3v.js +1 -0
- package/web-shell/assets/{cose-bilkent-JH36ORCC-DMw3EOxl.js → cose-bilkent-JH36ORCC-DWm6lfOG.js} +1 -1
- package/web-shell/assets/{cynefin-OW5HDTMX-s6vEA7RQ.js → cynefin-OW5HDTMX-DcBUyr5R.js} +1 -1
- package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-AOKsvYLt.js → cynefinDiagram-5FMLGOSQ-Df8qmd_p.js} +1 -1
- package/web-shell/assets/{dagre-3AP2YEHR-9QAZn3m7.js → dagre-3AP2YEHR-DDmGspD7.js} +1 -1
- package/web-shell/assets/{diagram-S7CK7UJ4-CWpnu4FN.js → diagram-S7CK7UJ4-BK_qFvbi.js} +1 -1
- package/web-shell/assets/{diagram-UQ7AKVKN-9l0jXD8q.js → diagram-UQ7AKVKN-Uw3AP_bi.js} +1 -1
- package/web-shell/assets/{diagram-VSXAHHWV-BMUHroj4.js → diagram-VSXAHHWV-CJOQKxY7.js} +1 -1
- package/web-shell/assets/{diagram-VX7I27RA-Co9x27vm.js → diagram-VX7I27RA-DhdvZna5.js} +1 -1
- package/web-shell/assets/{diagram-Z3DM3KII-BKnTeOER.js → diagram-Z3DM3KII-edQU0nlP.js} +1 -1
- package/web-shell/assets/{ebnfDiagram-PWID7BFC-QBZD9CKG.js → ebnfDiagram-PWID7BFC-4kugBEsO.js} +1 -1
- package/web-shell/assets/{erDiagram-SSCWMZ5O-dKWAEGun.js → erDiagram-SSCWMZ5O-BMkFivWO.js} +1 -1
- package/web-shell/assets/{flowDiagram-A5DVABFB-CR_UgVqj.js → flowDiagram-A5DVABFB-BM1ea8g-.js} +1 -1
- package/web-shell/assets/{ganttDiagram-EL5Y4UJY-DQUnjWO6.js → ganttDiagram-EL5Y4UJY-CXj_cKRf.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-C4j59wPL.js → gitGraphDiagram-WWUBYQGX-D0nEqwqu.js} +1 -1
- package/web-shell/assets/{index-tYXRIPz4.js → index-B6JN54Pd.js} +1 -1
- package/web-shell/assets/{index-BN_m_uHJ.css → index-C-XlQn24.css} +1 -1
- package/web-shell/assets/index-DLjXM0dn.js +1860 -0
- package/web-shell/assets/{infoDiagram-RXCK75RN-mzqbt50w.js → infoDiagram-RXCK75RN-DF7aGGbQ.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-5VMMS53U-ChLOqhGl.js → ishikawaDiagram-5VMMS53U-CZYNX1lL.js} +1 -1
- package/web-shell/assets/{journeyDiagram-EYS64GPL-SifZE-R8.js → journeyDiagram-EYS64GPL-CvrqMUz1.js} +1 -1
- package/web-shell/assets/{kanban-definition-3QL26DDD-Sft2qlbc.js → kanban-definition-3QL26DDD-BZNJQZBj.js} +1 -1
- package/web-shell/assets/{layout-O2uHVkPd.js → layout-Bf83x7D6.js} +1 -1
- package/web-shell/assets/{linear-BVqYgjSc.js → linear-Bkc3ES2f.js} +1 -1
- package/web-shell/assets/{mermaid.core-CZ9MQaJ6.js → mermaid.core-C6xuovwz.js} +6 -6
- package/web-shell/assets/{mindmap-definition-FBJOCRG2-BNQYjBqM.js → mindmap-definition-FBJOCRG2-DzH6gVRg.js} +1 -1
- package/web-shell/assets/{pegDiagram-XKGWAZYB-rh1J8uv6.js → pegDiagram-XKGWAZYB-DCvLh2fa.js} +1 -1
- package/web-shell/assets/{pieDiagram-E7YTZNPT-BQHR5mn9.js → pieDiagram-E7YTZNPT-BtjVlx_6.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-AXDQQJYC-CLCbP7mK.js → quadrantDiagram-AXDQQJYC-IbroqxFe.js} +1 -1
- package/web-shell/assets/{railroadDiagram-O6MQD6OU-CDQhrkbm.js → railroadDiagram-O6MQD6OU-BvMykiWW.js} +1 -1
- package/web-shell/assets/{requirementDiagram-EFPCY7ZU-BdP9uswg.js → requirementDiagram-EFPCY7ZU-D-HHMyrh.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-P5KCCOFB-CFZDFBXF.js → sankeyDiagram-P5KCCOFB-C0XXhB6d.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-BW9WOJXI.js → sequenceDiagram-WJ2MYXX4-DseAXj5d.js} +1 -1
- package/web-shell/assets/{sizeCapture-X5ZJPWSS-CPMia32z.js → sizeCapture-X5ZJPWSS-Cek2EweK.js} +1 -1
- package/web-shell/assets/{stateDiagram-HBIQ2CUA-BANp9p7F.js → stateDiagram-HBIQ2CUA-yLv8wafW.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-DeThXnol.js +1 -0
- package/web-shell/assets/{swimlanes-XN3QIQJK-JroXksK-.js → swimlanes-XN3QIQJK-Cwz-opvE.js} +1 -1
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN-GW0R1ZSv.js +8 -0
- package/web-shell/assets/{timeline-definition-24CTP7MA-DfuVIfYY.js → timeline-definition-24CTP7MA-BJuFD7OG.js} +1 -1
- package/web-shell/assets/{vennDiagram-4TSXK5OY-BZXoSjRB.js → vennDiagram-4TSXK5OY-CNAavdoV.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-VM6X3IG4-BdiY8avC.js → wardleyDiagram-VM6X3IG4-DaIjAidq.js} +1 -1
- package/web-shell/assets/{xychartDiagram-S5SC5T6Z-DcXh_U4H.js → xychartDiagram-S5SC5T6Z-DkcQXjTy.js} +1 -1
- package/web-shell/index.html +19 -4
- package/chunks/MaxSizedBox-3OZJCC3J.js +0 -110
- package/chunks/agent-BFE3DQM3.js +0 -93
- package/chunks/agent-headless-LLVKZZ4P.js +0 -87
- package/chunks/bridge-EBYO4SYM.js +0 -118
- package/chunks/channel-settings-store-5VP2Y2YM.js +0 -115
- package/chunks/chunk-AXMWHKXA.js +0 -42
- package/chunks/chunk-IO257NUD.js +0 -623
- package/chunks/chunk-YHC2EYYG.js +0 -125
- package/chunks/computer-use-EGPWFEX6.js +0 -2142
- package/chunks/config-utils-WZ43VOBS.js +0 -25
- package/chunks/contextCommand-5DSEQI6S.js +0 -106
- package/chunks/daemon-status-provider-EYMLPYJU.js +0 -116
- package/chunks/daemon-trust-policy-CQYKZ7VO.js +0 -112
- package/chunks/deferred-core-runtime-WFEPUXZR.js +0 -114
- package/chunks/earlyInputCapture-PN4PP7V5.js +0 -107
- package/chunks/environment-WUPHLPKZ.js +0 -127
- package/chunks/errors-WPMPVIAT.js +0 -113
- package/chunks/exitPlanMode-MLFHYZNB.js +0 -85
- package/chunks/handleAutoUpdate-F5OTWUT5.js +0 -109
- package/chunks/i18n-C562S6KN.js +0 -124
- package/chunks/initializer-7YPGOFP4.js +0 -113
- package/chunks/installationInfo-ARU5Q2H7.js +0 -107
- package/chunks/list-KTSK275C.js +0 -116
- package/chunks/loadedSettingsAdapter-F3T2EQ5J.js +0 -110
- package/chunks/mcp-6ONTVPAY.js +0 -110
- package/chunks/nonInteractiveCli-KZDWFAN6.js +0 -178
- package/chunks/pidfile-IO7ALSZF.js +0 -111
- package/chunks/prompt-terminal-ledger-TCE7PMCE.js +0 -105
- package/chunks/resumeHistoryUtils-DDSBAQJS.js +0 -118
- package/chunks/ripGrep-E7P6K4QR.js +0 -40
- package/chunks/serve-KEAWV4TI.js +0 -118
- package/chunks/shell-H6K63WG3.js +0 -95
- package/chunks/skill-settings-TCKLXIXM.js +0 -118
- package/chunks/spawnChannel-2K6NKWM5.js +0 -111
- package/chunks/standalone-update-LSCGOEFP.js +0 -118
- package/chunks/terminal-image-renderer-UHX3UD66.js +0 -114
- package/chunks/theme-manager-6B47ZPIF.js +0 -102
- package/chunks/total-session-admission-NSCFWGJH.js +0 -113
- package/chunks/trustedFolders-7XMJWGQ3.js +0 -122
- package/chunks/updateCheck-EOVLHD4T.js +0 -118
- package/chunks/useAutoAcceptIndicator-ZNMIGBTN.js +0 -120
- package/chunks/workspace-providers-status-GPGU5YMT.js +0 -113
- package/chunks/workspace-registry-BQISXT6Y.js +0 -122
- package/chunks/workspace-service-LLY6HCUC.js +0 -129
- package/chunks/workspace-skills-status-L5N2Y3ZP.js +0 -113
- package/chunks/write-file-EJHU2Z3E.js +0 -90
- package/web-shell/assets/channel-Zg3WHgq_.js +0 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-C16l9jQz.js +0 -1
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-C16l9jQz.js +0 -1
- package/web-shell/assets/index-DrlJu79f.js +0 -1792
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-NZYAoQLU.js +0 -1
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN-3YdVX3vj.js +0 -8
|
@@ -7,32 +7,33 @@ import {
|
|
|
7
7
|
jsonStringPayloadByteLength,
|
|
8
8
|
observeAcpToolResultProjection,
|
|
9
9
|
truncateJsonStringPayload
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-HJOWQUE2.js";
|
|
11
11
|
import {
|
|
12
12
|
normalizeSessionIdForLookup
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-ZEZKIS2K.js";
|
|
14
14
|
import {
|
|
15
15
|
isA2uiToolMeta
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-I6YW3T3W.js";
|
|
17
17
|
import {
|
|
18
18
|
ChannelDeliveryError,
|
|
19
19
|
MAX_CHANNEL_DELIVERY_TEXT_LENGTH
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-7CWEZQ6T.js";
|
|
21
21
|
import {
|
|
22
22
|
redactLogCredentials
|
|
23
23
|
} from "./chunk-M5GB774H.js";
|
|
24
24
|
import {
|
|
25
25
|
getResponseText,
|
|
26
|
+
lastHistoryContentFromRecords,
|
|
26
27
|
restorableAskUserQuestionCallIds
|
|
27
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-XYX474JQ.js";
|
|
28
29
|
import {
|
|
29
30
|
MAX_CHANNEL_DELIVERY_NAME_LENGTH,
|
|
30
31
|
MAX_CHANNEL_DELIVERY_TARGET_ID_LENGTH
|
|
31
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-JECO75XD.js";
|
|
32
33
|
import {
|
|
33
34
|
parseGoalSnapshotV2,
|
|
34
35
|
parseGoalStateCause
|
|
35
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-FN5C6C7G.js";
|
|
36
37
|
import {
|
|
37
38
|
init_esbuild_shims
|
|
38
39
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -929,22 +930,26 @@ async function collectHistoryReplayUpdates({
|
|
|
929
930
|
replayState,
|
|
930
931
|
goalBootstrap,
|
|
931
932
|
limits,
|
|
932
|
-
suppressRestoreAskUserQuestion
|
|
933
|
+
suppressRestoreAskUserQuestion,
|
|
934
|
+
finalizeDangling
|
|
933
935
|
}) {
|
|
934
936
|
const updates = [];
|
|
935
937
|
try {
|
|
936
938
|
const initial = parseTranscriptReplayState(replayState, logger);
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
replayClient.
|
|
940
|
-
|
|
939
|
+
let skipFinalizeCallIds;
|
|
940
|
+
if (suppressRestoreAskUserQuestion !== true && config?.getRestoreAskUserQuestion?.() === true) {
|
|
941
|
+
const replayClient = config.getGeminiClient?.();
|
|
942
|
+
const lastHistoryContent = replayClient?.isInitialized?.() === true ? replayClient.getChat?.()?.peekLastHistoryEntry?.() ?? lastHistoryContentFromRecords(records) : lastHistoryContentFromRecords(records);
|
|
943
|
+
skipFinalizeCallIds = restorableAskUserQuestionCallIds(lastHistoryContent);
|
|
944
|
+
}
|
|
941
945
|
await new HistoryReplayer(
|
|
942
946
|
replayContext(sessionId, updates, cumulativeUsage, config, limits)
|
|
943
947
|
).replay(records, gaps, {
|
|
944
948
|
...initial.goalState ? { initialGoalState: initial.goalState } : {},
|
|
945
949
|
...initial.goalCause ? { initialGoalCause: initial.goalCause } : {},
|
|
946
950
|
...goalBootstrap ? { goalBootstrap } : {},
|
|
947
|
-
...skipFinalizeCallIds ? { skipFinalizeCallIds } : {}
|
|
951
|
+
...skipFinalizeCallIds ? { skipFinalizeCallIds } : {},
|
|
952
|
+
...finalizeDangling === void 0 ? {} : { finalizeDangling }
|
|
948
953
|
});
|
|
949
954
|
} catch (error) {
|
|
950
955
|
if (error instanceof HistoryReplayLimitError) throw error;
|
|
@@ -2,20 +2,20 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
functionResponsePartsToString
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-2YEZNBSD.js";
|
|
6
6
|
import {
|
|
7
7
|
observeHeadlessToolResultProjection,
|
|
8
8
|
observeHeadlessToolResultWire,
|
|
9
9
|
projectJsonStringToByteBudget
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-HJOWQUE2.js";
|
|
11
11
|
import {
|
|
12
12
|
parseAndFormatApiError,
|
|
13
13
|
toolResultBoundaryArtifact
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-XYX474JQ.js";
|
|
15
15
|
import {
|
|
16
16
|
formatVisionBridgeNoticeDisplay,
|
|
17
17
|
isVisionBridgeNoticeDisplay
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-UX3IFLJM.js";
|
|
19
19
|
import {
|
|
20
20
|
init_esbuild_shims
|
|
21
21
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -959,6 +959,14 @@ function checkResponsePartsForError(responseParts) {
|
|
|
959
959
|
return void 0;
|
|
960
960
|
}
|
|
961
961
|
__name(checkResponsePartsForError, "checkResponsePartsForError");
|
|
962
|
+
function mcpAppFallbackText(display) {
|
|
963
|
+
if (!display || typeof display !== "object" || !("type" in display) || display.type !== "mcp_app" || !("fallbackText" in display) || typeof display.fallbackText !== "string") {
|
|
964
|
+
return void 0;
|
|
965
|
+
}
|
|
966
|
+
const text = display.fallbackText.trim();
|
|
967
|
+
return text.length > 0 ? display.fallbackText : void 0;
|
|
968
|
+
}
|
|
969
|
+
__name(mcpAppFallbackText, "mcpAppFallbackText");
|
|
962
970
|
function toolResultContent(response) {
|
|
963
971
|
if (response.visionBridgeNotice) {
|
|
964
972
|
const content = toolResultContent({
|
|
@@ -994,6 +1002,10 @@ ${functionResponsePartsToString(response.responseParts)}`;
|
|
|
994
1002
|
if (response.error) {
|
|
995
1003
|
return response.error.message;
|
|
996
1004
|
}
|
|
1005
|
+
const mcpAppFallback = mcpAppFallbackText(response.resultDisplay);
|
|
1006
|
+
if (mcpAppFallback) {
|
|
1007
|
+
return mcpAppFallback;
|
|
1008
|
+
}
|
|
997
1009
|
if (typeof response.resultDisplay === "string" && response.resultDisplay.trim().length > 0) {
|
|
998
1010
|
return response.resultDisplay;
|
|
999
1011
|
}
|
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
isCommandAvailable
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-T6OODF2U.js";
|
|
6
6
|
import {
|
|
7
7
|
fileExists,
|
|
8
8
|
isWithinRoot
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-WBT3STGU.js";
|
|
10
10
|
import {
|
|
11
11
|
atomicWriteJSON
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-7QGEJI7M.js";
|
|
13
13
|
import {
|
|
14
14
|
Storage,
|
|
15
15
|
createDebugLogger,
|
|
16
16
|
isNodeError
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-2NNTE2ED.js";
|
|
18
18
|
import {
|
|
19
19
|
init_esbuild_shims
|
|
20
20
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -8,9 +8,7 @@ import {
|
|
|
8
8
|
BaseToolInvocation,
|
|
9
9
|
ToolDisplayNames,
|
|
10
10
|
ToolNames
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-A5F2YNO6.js";
|
|
13
|
-
import "./chunk-TBWQLLFO.js";
|
|
11
|
+
} from "./chunk-KOJ6MHD5.js";
|
|
14
12
|
import {
|
|
15
13
|
init_esbuild_shims
|
|
16
14
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -127,7 +125,7 @@ var CreateSubSessionTool = class _CreateSubSessionTool extends BaseDeclarativeTo
|
|
|
127
125
|
super(
|
|
128
126
|
_CreateSubSessionTool.Name,
|
|
129
127
|
ToolDisplayNames.CREATE_SUB_SESSION,
|
|
130
|
-
"Spawn a fresh, independent sub-session (its own clean context and transcript) and run a prompt in it. Use to fan work out into a separate session \u2014 e.g. a self-contained sub-task you want isolated from this conversation.\n\nONLY available when running under `qwen serve` (daemon mode); it is
|
|
128
|
+
"Spawn a fresh, independent sub-session (its own clean context and transcript) and run a prompt in it. Use to fan work out into a separate session \u2014 e.g. a self-contained sub-task you want isolated from this conversation.\n\nONLY available when running under `qwen serve` (daemon mode); it is not declared at all in plain interactive or headless sessions.\n\n## Completion modes\n- `first-turn` (default): waits for the sub-session's first turn to finish and returns its result to you. Use when you need the answer back.\n- `sent`: returns immediately after dispatching the prompt, without waiting. Use for fire-and-forget launches whose output you do not need inline.\n\nThe sub-session runs the prompt with full tool access, starting from zero context \u2014 brief it completely in `prompt` (it cannot see this conversation).",
|
|
131
129
|
"other" /* Other */,
|
|
132
130
|
{
|
|
133
131
|
type: "object",
|
|
@@ -198,9 +196,9 @@ var CreateSubSessionTool = class _CreateSubSessionTool extends BaseDeclarativeTo
|
|
|
198
196
|
};
|
|
199
197
|
}
|
|
200
198
|
};
|
|
199
|
+
|
|
201
200
|
export {
|
|
202
|
-
CreateSubSessionTool
|
|
203
|
-
MAX_SUB_SESSION_PROMPT_CHARS
|
|
201
|
+
CreateSubSessionTool
|
|
204
202
|
};
|
|
205
203
|
/**
|
|
206
204
|
* @license
|
|
@@ -1,24 +1,13 @@
|
|
|
1
1
|
// Force strict mode and setup for ESM
|
|
2
2
|
"use strict";
|
|
3
|
-
import {
|
|
4
|
-
getSettingsSchema
|
|
5
|
-
} from "./chunk-7DMTAQJ6.js";
|
|
6
3
|
import {
|
|
7
4
|
DEFAULT_DARK_THEME_NAME,
|
|
8
5
|
DEFAULT_LIGHT_THEME_NAME
|
|
9
6
|
} from "./chunk-RKUWKYED.js";
|
|
10
7
|
import {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
SUPPORTED_LANGUAGES,
|
|
15
|
-
getLanguageNameFromLocale
|
|
16
|
-
} from "./chunk-5EJZE3FP.js";
|
|
17
|
-
import {
|
|
18
|
-
getHomeEnvFallbackVars,
|
|
19
|
-
loadEnvironment,
|
|
20
|
-
preResolveHomeEnvOverrides
|
|
21
|
-
} from "./chunk-OVH5Y7KS.js";
|
|
8
|
+
customDeepMerge,
|
|
9
|
+
getSettingsSchema
|
|
10
|
+
} from "./chunk-BDHLBR46.js";
|
|
22
11
|
import {
|
|
23
12
|
CONSOLIDATED_DISABLE_KEYS,
|
|
24
13
|
V1_INDICATOR_KEYS,
|
|
@@ -31,26 +20,38 @@ import {
|
|
|
31
20
|
getSystemDefaultsPath,
|
|
32
21
|
getSystemSettingsPath
|
|
33
22
|
} from "./chunk-IDS7MSUP.js";
|
|
23
|
+
import {
|
|
24
|
+
t
|
|
25
|
+
} from "./chunk-W2WRNJKX.js";
|
|
26
|
+
import {
|
|
27
|
+
SUPPORTED_LANGUAGES,
|
|
28
|
+
getLanguageNameFromLocale
|
|
29
|
+
} from "./chunk-5EJZE3FP.js";
|
|
30
|
+
import {
|
|
31
|
+
getHomeEnvFallbackVars,
|
|
32
|
+
loadEnvironment,
|
|
33
|
+
preResolveHomeEnvOverrides
|
|
34
|
+
} from "./chunk-2CRNTW2B.js";
|
|
34
35
|
import {
|
|
35
36
|
ENV_CORRUPTED_PATH,
|
|
36
37
|
ENV_WAS_RECOVERED
|
|
37
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-5PA6UEYA.js";
|
|
38
39
|
import {
|
|
39
40
|
isWorkspaceTrusted,
|
|
40
41
|
updateSettingsFilePreservingFormat
|
|
41
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-XNXWEGKB.js";
|
|
42
43
|
import {
|
|
43
44
|
require_strip_json_comments
|
|
44
45
|
} from "./chunk-NPQ5ZKRP.js";
|
|
45
46
|
import {
|
|
46
47
|
stripRuntimeSnapshotPrefix
|
|
47
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-AYVIGUUK.js";
|
|
48
49
|
import {
|
|
49
50
|
FatalConfigError,
|
|
50
51
|
Storage,
|
|
51
52
|
createDebugLogger,
|
|
52
53
|
getErrorMessage
|
|
53
|
-
} from "./chunk-
|
|
54
|
+
} from "./chunk-2NNTE2ED.js";
|
|
54
55
|
import {
|
|
55
56
|
init_esbuild_shims
|
|
56
57
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -104,11 +105,11 @@ function getOwnKeyScope(settings, key) {
|
|
|
104
105
|
}
|
|
105
106
|
__name(getOwnKeyScope, "getOwnKeyScope");
|
|
106
107
|
|
|
107
|
-
// packages/cli/src/
|
|
108
|
+
// packages/cli/src/config/settingsUtils.ts
|
|
108
109
|
init_esbuild_shims();
|
|
109
110
|
import * as fs2 from "node:fs";
|
|
110
111
|
|
|
111
|
-
// packages/cli/src/
|
|
112
|
+
// packages/cli/src/i18n/languageUtils.ts
|
|
112
113
|
init_esbuild_shims();
|
|
113
114
|
import * as fs from "node:fs";
|
|
114
115
|
import * as path from "node:path";
|
|
@@ -287,7 +288,7 @@ function initializeLlmOutputLanguage(outputLanguage) {
|
|
|
287
288
|
}
|
|
288
289
|
__name(initializeLlmOutputLanguage, "initializeLlmOutputLanguage");
|
|
289
290
|
|
|
290
|
-
// packages/cli/src/
|
|
291
|
+
// packages/cli/src/config/settingsUtils.ts
|
|
291
292
|
function flattenSchema(schema, prefix = "") {
|
|
292
293
|
let result = {};
|
|
293
294
|
for (const key in schema) {
|
|
@@ -432,8 +433,16 @@ function validateSettingValue(def, value) {
|
|
|
432
433
|
return void 0;
|
|
433
434
|
}
|
|
434
435
|
__name(validateSettingValue, "validateSettingValue");
|
|
435
|
-
|
|
436
|
-
|
|
436
|
+
var WORKSPACE_RESTRICTED_SETTINGS = [
|
|
437
|
+
{ section: "tools", key: "workflowsEnabled" },
|
|
438
|
+
{ section: "security", key: "allowPrivateNetworkHooks" },
|
|
439
|
+
{ section: "security", key: "allowedInsecureVoiceBaseUrls" }
|
|
440
|
+
];
|
|
441
|
+
var WORKSPACE_RESTRICTED_SETTING_KEYS = WORKSPACE_RESTRICTED_SETTINGS.map(({ section, key }) => `${section}.${key}`);
|
|
442
|
+
function getDialogSettingKeys(options) {
|
|
443
|
+
const dialogSettings = Object.values(getFlattenedSchema()).filter((definition) => definition.showInDialog === true).map((definition) => definition.key).filter(
|
|
444
|
+
(key) => !options?.excludeWorkspaceRestricted || !WORKSPACE_RESTRICTED_SETTING_KEYS.includes(key)
|
|
445
|
+
);
|
|
437
446
|
return dialogSettings.sort((a, b) => {
|
|
438
447
|
const indexA = SETTINGS_DIALOG_ORDER.indexOf(a);
|
|
439
448
|
const indexB = SETTINGS_DIALOG_ORDER.indexOf(b);
|
|
@@ -628,66 +637,6 @@ function cleanupSettingsBackup(filePath) {
|
|
|
628
637
|
}
|
|
629
638
|
__name(cleanupSettingsBackup, "cleanupSettingsBackup");
|
|
630
639
|
|
|
631
|
-
// packages/cli/src/utils/deepMerge.ts
|
|
632
|
-
init_esbuild_shims();
|
|
633
|
-
function isPlainObject(item) {
|
|
634
|
-
return !!item && typeof item === "object" && !Array.isArray(item);
|
|
635
|
-
}
|
|
636
|
-
__name(isPlainObject, "isPlainObject");
|
|
637
|
-
function mergeRecursively(target, source, getMergeStrategyForPath2, path3 = []) {
|
|
638
|
-
for (const key of Object.keys(source)) {
|
|
639
|
-
if (key === "__proto__" || key === "constructor" || key === "prototype") {
|
|
640
|
-
continue;
|
|
641
|
-
}
|
|
642
|
-
const newPath = [...path3, key];
|
|
643
|
-
const srcValue = source[key];
|
|
644
|
-
const objValue = target[key];
|
|
645
|
-
const mergeStrategy = getMergeStrategyForPath2(newPath);
|
|
646
|
-
if (mergeStrategy === "shallow_merge" /* SHALLOW_MERGE */ && objValue && srcValue) {
|
|
647
|
-
const obj1 = typeof objValue === "object" && objValue !== null ? objValue : {};
|
|
648
|
-
const obj2 = typeof srcValue === "object" && srcValue !== null ? srcValue : {};
|
|
649
|
-
target[key] = { ...obj1, ...obj2 };
|
|
650
|
-
continue;
|
|
651
|
-
}
|
|
652
|
-
if (Array.isArray(objValue)) {
|
|
653
|
-
const srcArray = Array.isArray(srcValue) ? srcValue : [srcValue];
|
|
654
|
-
if (mergeStrategy === "concat" /* CONCAT */) {
|
|
655
|
-
target[key] = objValue.concat(srcArray);
|
|
656
|
-
continue;
|
|
657
|
-
}
|
|
658
|
-
if (mergeStrategy === "union" /* UNION */) {
|
|
659
|
-
target[key] = [...new Set(objValue.concat(srcArray))];
|
|
660
|
-
continue;
|
|
661
|
-
}
|
|
662
|
-
}
|
|
663
|
-
if (isPlainObject(objValue) && isPlainObject(srcValue)) {
|
|
664
|
-
mergeRecursively(objValue, srcValue, getMergeStrategyForPath2, newPath);
|
|
665
|
-
} else if (isPlainObject(srcValue)) {
|
|
666
|
-
target[key] = {};
|
|
667
|
-
mergeRecursively(
|
|
668
|
-
target[key],
|
|
669
|
-
srcValue,
|
|
670
|
-
getMergeStrategyForPath2,
|
|
671
|
-
newPath
|
|
672
|
-
);
|
|
673
|
-
} else {
|
|
674
|
-
target[key] = srcValue;
|
|
675
|
-
}
|
|
676
|
-
}
|
|
677
|
-
return target;
|
|
678
|
-
}
|
|
679
|
-
__name(mergeRecursively, "mergeRecursively");
|
|
680
|
-
function customDeepMerge(getMergeStrategyForPath2, ...sources) {
|
|
681
|
-
const result = {};
|
|
682
|
-
for (const source of sources) {
|
|
683
|
-
if (source) {
|
|
684
|
-
mergeRecursively(result, source, getMergeStrategyForPath2);
|
|
685
|
-
}
|
|
686
|
-
}
|
|
687
|
-
return result;
|
|
688
|
-
}
|
|
689
|
-
__name(customDeepMerge, "customDeepMerge");
|
|
690
|
-
|
|
691
640
|
// packages/cli/src/config/migration/index.ts
|
|
692
641
|
init_esbuild_shims();
|
|
693
642
|
|
|
@@ -1337,12 +1286,12 @@ function getSettingsFileKeyWarnings(settings, settingsFilePath) {
|
|
|
1337
1286
|
return warnings;
|
|
1338
1287
|
}
|
|
1339
1288
|
__name(getSettingsFileKeyWarnings, "getSettingsFileKeyWarnings");
|
|
1340
|
-
function
|
|
1289
|
+
function isPlainObject(value) {
|
|
1341
1290
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
1342
1291
|
}
|
|
1343
|
-
__name(
|
|
1292
|
+
__name(isPlainObject, "isPlainObject");
|
|
1344
1293
|
function hasAnyProviderEntries(modelProviders) {
|
|
1345
|
-
if (!
|
|
1294
|
+
if (!isPlainObject(modelProviders)) {
|
|
1346
1295
|
return false;
|
|
1347
1296
|
}
|
|
1348
1297
|
return Object.values(modelProviders).some(
|
|
@@ -1361,7 +1310,7 @@ function getModelProvidersOverrideWarnings(loadedSettings) {
|
|
|
1361
1310
|
}
|
|
1362
1311
|
const userModelProviders = userOriginal["modelProviders"];
|
|
1363
1312
|
const workspaceModelProviders = workspaceOriginal["modelProviders"];
|
|
1364
|
-
const workspaceIsEmptyModelProviders =
|
|
1313
|
+
const workspaceIsEmptyModelProviders = isPlainObject(workspaceModelProviders) && Object.keys(workspaceModelProviders).length === 0;
|
|
1365
1314
|
if (!workspaceIsEmptyModelProviders || !hasAnyProviderEntries(userModelProviders)) {
|
|
1366
1315
|
return [];
|
|
1367
1316
|
}
|
|
@@ -1392,15 +1341,14 @@ function getSettingsWarnings(loadedSettings) {
|
|
|
1392
1341
|
warningSet.add(warning);
|
|
1393
1342
|
}
|
|
1394
1343
|
const workspaceFile = loadedSettings.forScope("Workspace" /* Workspace */);
|
|
1395
|
-
if (workspaceFile.rawJson !== void 0
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
);
|
|
1344
|
+
if (workspaceFile.rawJson !== void 0) {
|
|
1345
|
+
for (const { section, key } of WORKSPACE_RESTRICTED_SETTINGS) {
|
|
1346
|
+
const sectionValue = workspaceFile.originalSettings[section];
|
|
1347
|
+
if (sectionValue?.[key] === void 0) continue;
|
|
1348
|
+
warningSet.add(
|
|
1349
|
+
`Warning: ${section}.${key} in workspace settings (${workspaceFile.path}) is ignored. This setting is only honored from User, System, or SystemDefaults scope settings.`
|
|
1350
|
+
);
|
|
1351
|
+
}
|
|
1404
1352
|
}
|
|
1405
1353
|
return [...warningSet];
|
|
1406
1354
|
}
|
|
@@ -1417,20 +1365,22 @@ function tagMcpServerScope(settings, scope) {
|
|
|
1417
1365
|
return { ...settings, mcpServers: tagged };
|
|
1418
1366
|
}
|
|
1419
1367
|
__name(tagMcpServerScope, "tagMcpServerScope");
|
|
1420
|
-
function
|
|
1421
|
-
|
|
1422
|
-
|
|
1368
|
+
function stripWorkspaceRestrictedSettings(settings) {
|
|
1369
|
+
let stripped;
|
|
1370
|
+
for (const { section, key } of WORKSPACE_RESTRICTED_SETTINGS) {
|
|
1371
|
+
const source = (stripped ?? settings)[section];
|
|
1372
|
+
if (source?.[key] === void 0) continue;
|
|
1373
|
+
const { [key]: _restricted, ...rest } = source;
|
|
1374
|
+
stripped = { ...stripped ?? settings, [section]: rest };
|
|
1423
1375
|
}
|
|
1424
|
-
|
|
1425
|
-
allowPrivateNetworkHooks: _privateHooks,
|
|
1426
|
-
allowedInsecureVoiceBaseUrls: _insecureVoice,
|
|
1427
|
-
...restSecurity
|
|
1428
|
-
} = settings.security;
|
|
1429
|
-
return { ...settings, security: restSecurity };
|
|
1376
|
+
return stripped ?? settings;
|
|
1430
1377
|
}
|
|
1431
|
-
__name(
|
|
1378
|
+
__name(stripWorkspaceRestrictedSettings, "stripWorkspaceRestrictedSettings");
|
|
1432
1379
|
function mergeSettings(system, systemDefaults, user, workspace, isTrusted) {
|
|
1433
|
-
const safeWorkspace = isTrusted ? tagMcpServerScope(
|
|
1380
|
+
const safeWorkspace = isTrusted ? tagMcpServerScope(
|
|
1381
|
+
stripWorkspaceRestrictedSettings(workspace),
|
|
1382
|
+
"workspace"
|
|
1383
|
+
) : {};
|
|
1434
1384
|
return customDeepMerge(
|
|
1435
1385
|
getMergeStrategyForPath,
|
|
1436
1386
|
{},
|
|
@@ -1953,6 +1903,7 @@ export {
|
|
|
1953
1903
|
getEffectiveValue,
|
|
1954
1904
|
getAllSettingKeys,
|
|
1955
1905
|
validateSettingValue,
|
|
1906
|
+
WORKSPACE_RESTRICTED_SETTING_KEYS,
|
|
1956
1907
|
getDialogSettingKeys,
|
|
1957
1908
|
settingExistsInScope,
|
|
1958
1909
|
setPendingSettingValue,
|
|
@@ -2,37 +2,37 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
loadSettings
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-MDZO5V2O.js";
|
|
6
6
|
import {
|
|
7
7
|
getCurrentLanguage
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-W2WRNJKX.js";
|
|
9
9
|
import {
|
|
10
10
|
isWorkspaceTrusted
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-XNXWEGKB.js";
|
|
12
12
|
import {
|
|
13
13
|
require_strip_json_comments
|
|
14
14
|
} from "./chunk-NPQ5ZKRP.js";
|
|
15
15
|
import {
|
|
16
|
-
hashMcpServerConfig
|
|
17
|
-
|
|
18
|
-
} from "./chunk-62JOGZL5.js";
|
|
16
|
+
hashMcpServerConfig
|
|
17
|
+
} from "./chunk-VMDURMFY.js";
|
|
19
18
|
import {
|
|
20
|
-
Client,
|
|
21
19
|
Config,
|
|
22
20
|
ExtensionManager,
|
|
23
21
|
FileDiscoveryService,
|
|
24
22
|
MCPOAuthTokenStorage,
|
|
23
|
+
createMcpClient,
|
|
25
24
|
createTransport,
|
|
26
25
|
isGatedMcpScope,
|
|
27
|
-
normalizeClaudeMcpServer
|
|
28
|
-
|
|
26
|
+
normalizeClaudeMcpServer,
|
|
27
|
+
runWithTimeout
|
|
28
|
+
} from "./chunk-XYX474JQ.js";
|
|
29
29
|
import {
|
|
30
30
|
atomicWriteFile
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-7QGEJI7M.js";
|
|
32
32
|
import {
|
|
33
33
|
Storage,
|
|
34
34
|
getErrorMessage
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-2NNTE2ED.js";
|
|
36
36
|
import {
|
|
37
37
|
writeStderrLine,
|
|
38
38
|
writeStdoutLine
|
|
@@ -423,6 +423,7 @@ __name(assembleMcpServers, "assembleMcpServers");
|
|
|
423
423
|
// packages/cli/src/config/mcpApprovals.ts
|
|
424
424
|
init_esbuild_shims();
|
|
425
425
|
import * as fs2 from "node:fs";
|
|
426
|
+
import * as os from "node:os";
|
|
426
427
|
import * as path2 from "node:path";
|
|
427
428
|
var import_strip_json_comments2 = __toESM(require_strip_json_comments(), 1);
|
|
428
429
|
var MCP_APPROVALS_FILENAME = "mcpApprovals.json";
|
|
@@ -434,9 +435,50 @@ function getMcpApprovalsPath() {
|
|
|
434
435
|
}
|
|
435
436
|
__name(getMcpApprovalsPath, "getMcpApprovalsPath");
|
|
436
437
|
function normalizeProjectRoot(projectRoot) {
|
|
437
|
-
|
|
438
|
+
const resolved = path2.resolve(projectRoot);
|
|
439
|
+
return os.platform() === "win32" ? resolved.toLowerCase() : resolved;
|
|
438
440
|
}
|
|
439
441
|
__name(normalizeProjectRoot, "normalizeProjectRoot");
|
|
442
|
+
function isApprovalRecordMap(value) {
|
|
443
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
444
|
+
}
|
|
445
|
+
__name(isApprovalRecordMap, "isApprovalRecordMap");
|
|
446
|
+
function isWin32AbsolutePath(p) {
|
|
447
|
+
return /^[A-Za-z]:[\\/]/.test(p) || /^\\\\/.test(p);
|
|
448
|
+
}
|
|
449
|
+
__name(isWin32AbsolutePath, "isWin32AbsolutePath");
|
|
450
|
+
function mergeApprovalRecords(existing, incoming) {
|
|
451
|
+
const merged = Object.assign(
|
|
452
|
+
/* @__PURE__ */ Object.create(null),
|
|
453
|
+
existing
|
|
454
|
+
);
|
|
455
|
+
for (const [name, record] of Object.entries(incoming)) {
|
|
456
|
+
if (!isApprovalRecordMap(record)) {
|
|
457
|
+
continue;
|
|
458
|
+
}
|
|
459
|
+
const current = merged[name];
|
|
460
|
+
if (!current) {
|
|
461
|
+
merged[name] = record;
|
|
462
|
+
} else if (current.status !== record.status) {
|
|
463
|
+
merged[name] = current.status === "rejected" ? current : record;
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
return merged;
|
|
467
|
+
}
|
|
468
|
+
__name(mergeApprovalRecords, "mergeApprovalRecords");
|
|
469
|
+
function normalizeStoredProjectKeys(config) {
|
|
470
|
+
if (os.platform() !== "win32") {
|
|
471
|
+
return config;
|
|
472
|
+
}
|
|
473
|
+
const normalized = /* @__PURE__ */ Object.create(null);
|
|
474
|
+
for (const [key, value] of Object.entries(config)) {
|
|
475
|
+
const projectKey = isWin32AbsolutePath(key) ? key.toLowerCase() : key;
|
|
476
|
+
const existing = normalized[projectKey];
|
|
477
|
+
normalized[projectKey] = isApprovalRecordMap(existing) && isApprovalRecordMap(value) ? mergeApprovalRecords(existing, value) : isApprovalRecordMap(value) || !isApprovalRecordMap(existing) ? value : existing;
|
|
478
|
+
}
|
|
479
|
+
return normalized;
|
|
480
|
+
}
|
|
481
|
+
__name(normalizeStoredProjectKeys, "normalizeStoredProjectKeys");
|
|
440
482
|
var LoadedMcpApprovals = class {
|
|
441
483
|
constructor(file, errors) {
|
|
442
484
|
this.file = file;
|
|
@@ -465,7 +507,9 @@ var LoadedMcpApprovals = class {
|
|
|
465
507
|
async setState(projectRoot, serverName, config, status) {
|
|
466
508
|
const root = normalizeProjectRoot(projectRoot);
|
|
467
509
|
const existing = this.file.config[root];
|
|
468
|
-
const project =
|
|
510
|
+
const project = isApprovalRecordMap(
|
|
511
|
+
existing
|
|
512
|
+
) ? existing : /* @__PURE__ */ Object.create(null);
|
|
469
513
|
Object.defineProperty(project, serverName, {
|
|
470
514
|
value: { hash: hashMcpServerConfig(config), status },
|
|
471
515
|
enumerable: true,
|
|
@@ -494,7 +538,7 @@ function loadMcpApprovals() {
|
|
|
494
538
|
path: filePath
|
|
495
539
|
});
|
|
496
540
|
} else {
|
|
497
|
-
config = parsed;
|
|
541
|
+
config = normalizeStoredProjectKeys(parsed);
|
|
498
542
|
}
|
|
499
543
|
}
|
|
500
544
|
} catch (error) {
|
|
@@ -559,7 +603,7 @@ var COLOR_GREEN = "\x1B[32m";
|
|
|
559
603
|
var COLOR_YELLOW = "\x1B[33m";
|
|
560
604
|
var COLOR_RED = "\x1B[31m";
|
|
561
605
|
var RESET_COLOR = "\x1B[0m";
|
|
562
|
-
var MCP_CONNECT_TIMEOUT_MS =
|
|
606
|
+
var MCP_CONNECT_TIMEOUT_MS = 1e4;
|
|
563
607
|
async function getMcpServersFromConfig() {
|
|
564
608
|
const settings = loadSettings();
|
|
565
609
|
const extensionManager = new ExtensionManager({
|
|
@@ -592,10 +636,7 @@ async function getMcpServersFromConfig() {
|
|
|
592
636
|
}
|
|
593
637
|
__name(getMcpServersFromConfig, "getMcpServersFromConfig");
|
|
594
638
|
async function testMCPConnection(serverName, config) {
|
|
595
|
-
const client =
|
|
596
|
-
name: "mcp-test-client",
|
|
597
|
-
version: "0.0.1"
|
|
598
|
-
});
|
|
639
|
+
const client = createMcpClient("mcp-test-client", config);
|
|
599
640
|
let transport;
|
|
600
641
|
try {
|
|
601
642
|
transport = await createTransport(serverName, config, false);
|
|
@@ -609,7 +650,6 @@ async function testMCPConnection(serverName, config) {
|
|
|
609
650
|
MCP_CONNECT_TIMEOUT_MS,
|
|
610
651
|
`MCP connection for ${serverName}`
|
|
611
652
|
);
|
|
612
|
-
await client.ping();
|
|
613
653
|
await client.close();
|
|
614
654
|
return { status: "connected" /* CONNECTED */, timedOut: false };
|
|
615
655
|
} catch (error) {
|