@qwen-code/qwen-code 0.21.0 → 0.21.1-nightly.20260730.1643a6c9a
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/model-providers.md +2 -0
- package/bundled/qc-helper/docs/configuration/settings.md +39 -28
- package/bundled/qc-helper/docs/features/channels/_meta.ts +2 -0
- package/bundled/qc-helper/docs/features/channels/github.md +117 -0
- package/bundled/qc-helper/docs/features/channels/gitlab.md +171 -0
- package/bundled/qc-helper/docs/features/channels/overview.md +61 -6
- package/bundled/qc-helper/docs/features/code-review.md +1 -1
- package/bundled/qc-helper/docs/features/hooks.md +70 -15
- package/bundled/qc-helper/docs/features/mcp.md +9 -1
- package/bundled/qc-helper/docs/features/scheduled-tasks.md +3 -1
- package/bundled/qc-helper/docs/features/sub-agents.md +20 -0
- package/bundled/qc-helper/docs/qwen-serve.md +11 -7
- package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +2 -2
- package/bundled/qc-helper/docs/support/troubleshooting.md +2 -1
- package/bundled/review/DESIGN.md +19 -0
- package/bundled/review/SKILL.md +120 -61
- package/chunks/MaxSizedBox-H77LGFDG.js +86 -0
- package/chunks/{StandaloneSessionPicker-BIRMPLRD.js → StandaloneSessionPicker-NGKLCYX4.js} +68 -67
- package/chunks/{acp-startup-profiler-RV3IV562.js → acp-startup-profiler-DFVPFQ6C.js} +2 -2
- package/chunks/{acpAgent-6J2U72PQ.js → acpAgent-RUN53PRW.js} +1381 -543
- package/chunks/agent-4CFRD2OG.js +82 -0
- package/chunks/agent-headless-XPUCIZLL.js +76 -0
- package/chunks/{anthropicContentGenerator-75BKLTSP.js → anthropicContentGenerator-V2QOGVYD.js} +79 -27
- package/chunks/{artifact-tool-Y5T7GG7F.js → artifact-tool-6K6U7XYJ.js} +4 -4
- package/chunks/{askUserQuestion-2H6747FR.js → askUserQuestion-GD2IJJ7I.js} +4 -4
- package/chunks/bridge-B2YJLSLT.js +92 -0
- package/chunks/{build-RV63TIRH.js → build-GDBLPA24.js} +1 -1
- package/chunks/{ca-25EDXPFZ.js → ca-6W3SK7OQ.js} +6 -1
- package/chunks/channel-management-service-RAPKQK24.js +418 -0
- package/chunks/channel-settings-store-KJQKY6NN.js +89 -0
- package/chunks/{channel-worker-group-2ZD7TVAT.js → channel-worker-group-7SZ7MR3K.js} +11 -6
- package/chunks/{channel-worker-manager-4OA4BCGB.js → channel-worker-manager-RN5KJYPF.js} +11 -6
- package/chunks/{channel-worker-supervisor-V7KCFJTS.js → channel-worker-supervisor-CABBXYHK.js} +7 -5
- package/chunks/{chunk-M5JM7OSF.js → chunk-2DN4J57Y.js} +2 -3
- package/chunks/{chunk-6GMVPFB2.js → chunk-2IIJTXYF.js} +45 -16
- package/chunks/{chunk-BPJSQIJX.js → chunk-2J3OJGTL.js} +0 -2
- package/chunks/{chunk-EPDRMGT4.js → chunk-2LKVPASC.js} +4 -28
- package/chunks/{chunk-PWTZEM3C.js → chunk-2LQTH543.js} +3 -37
- package/chunks/{chunk-CIKQ7KKO.js → chunk-2Q4CZ3V6.js} +713 -419
- package/chunks/{chunk-HIJQF5B5.js → chunk-3L2SPEBH.js} +1 -1
- package/chunks/{chunk-JXJFVC6E.js → chunk-3QDXECUB.js} +46 -11
- package/chunks/{chunk-PSOO6YXD.js → chunk-3RMX26V7.js} +9 -7
- package/chunks/{chunk-PC6JANNU.js → chunk-4755HD5V.js} +4 -4
- package/chunks/{chunk-GSN55ZRI.js → chunk-4D3MHM5F.js} +19 -7
- package/chunks/{chunk-EBJQ6AXW.js → chunk-4FQ4OKOU.js} +260 -14
- package/chunks/{chunk-BIQWWWJN.js → chunk-4G2BISNC.js} +1 -1
- package/chunks/{chunk-IKYJHJNF.js → chunk-5EHIP3GX.js} +3 -3
- package/chunks/chunk-5IDU2UGL.js +2196 -0
- package/chunks/{chunk-DHHOYAPR.js → chunk-5TBMQLGG.js} +7 -7
- package/chunks/{chunk-A4UCTEB5.js → chunk-5WV5S2GT.js} +0 -1
- package/chunks/chunk-5YKDXHUY.js +463 -0
- package/chunks/{chunk-K36B6G2O.js → chunk-5ZEFGTII.js} +5 -5
- package/chunks/{chunk-K4XWPEWB.js → chunk-64LQLPL7.js} +4 -33
- package/chunks/{chunk-TGILQ3YH.js → chunk-6CH6PHMZ.js} +141 -64
- package/chunks/chunk-6FMJLI5M.js +1591 -0
- package/chunks/chunk-6MPDY6ZG.js +76 -0
- package/chunks/{chunk-2NH6DYI4.js → chunk-6OF62NPQ.js} +12 -12
- package/chunks/{chunk-JZA3JUDJ.js → chunk-6QIGFD5W.js} +1 -1
- package/chunks/{chunk-ETSW4KLJ.js → chunk-72E7TSGG.js} +2 -2
- package/chunks/{chunk-OHNBB4XR.js → chunk-75GFAX4R.js} +1 -1
- package/chunks/{chunk-UDX5OBWR.js → chunk-77IMMLN2.js} +94 -4
- package/chunks/{chunk-TEHGS6UP.js → chunk-7A4V5CJY.js} +154 -16
- package/chunks/{chunk-QAF7NMK7.js → chunk-7BV2P4S3.js} +1 -1
- package/chunks/{chunk-RIBKPMRP.js → chunk-7RFNMXPU.js} +19 -6
- package/chunks/{chunk-KMQ33DO4.js → chunk-7UKQW4JU.js} +4 -4
- package/chunks/{chunk-A5L3JMUA.js → chunk-7XATOOE7.js} +18 -4
- package/chunks/{chunk-5I2IWRSH.js → chunk-A3NDJ5SB.js} +2 -2
- package/chunks/{chunk-JLU636DO.js → chunk-ALMR3E6Q.js} +1 -0
- package/chunks/{chunk-TPRQ7RZH.js → chunk-ANND7YTH.js} +2341 -940
- package/chunks/{chunk-PJIZUQVC.js → chunk-AZQ3DT76.js} +2 -2
- package/chunks/{chunk-KIM5GUMA.js → chunk-B47WVQ7T.js} +400 -162
- package/chunks/{chunk-UH3WSE5L.js → chunk-B4AJNNOL.js} +1 -6
- package/chunks/{chunk-BJX6ZSUK.js → chunk-BCZFQXWK.js} +2 -2
- package/chunks/{chunk-BKHWX6I2.js → chunk-CAEQL6GZ.js} +11 -3
- package/chunks/{chunk-J56UI34H.js → chunk-CI2PGI7Z.js} +4 -2
- package/chunks/{chunk-2SCDWPXI.js → chunk-CUWGNCKW.js} +5 -5
- package/chunks/{chunk-TOFQCPDC.js → chunk-CVHIL5IG.js} +4 -5
- package/chunks/{chunk-VRYUBFMC.js → chunk-CYIBLZBR.js} +1 -1
- package/chunks/{chunk-YBL3QUDD.js → chunk-CYPJYJIX.js} +1 -1
- package/chunks/{chunk-XVNQMZ2I.js → chunk-DGEIYUC3.js} +0 -1
- package/chunks/{chunk-7MVVZO4N.js → chunk-DGV27C34.js} +4 -4
- package/chunks/{chunk-BPZALHVR.js → chunk-DI35ZN7T.js} +1 -1
- package/chunks/chunk-DZLYR4U3.js +1252 -0
- package/chunks/{chunk-PHOF65IG.js → chunk-EYGWU66Z.js} +41594 -50416
- package/chunks/{chunk-7ZCNENPP.js → chunk-FANRZEAJ.js} +1 -1
- package/chunks/{chunk-WBL3FJEU.js → chunk-FC4KQFCS.js} +1 -1
- package/chunks/{chunk-5NBDS5S6.js → chunk-FCYYAB4S.js} +162 -7
- package/chunks/{chunk-L26JL52R.js → chunk-FH6SU2OG.js} +48 -61
- package/chunks/{chunk-OKY7HXPG.js → chunk-FNMZK765.js} +2 -2
- package/chunks/chunk-FYJ7W2PI.js +194 -0
- package/chunks/{chunk-BULDBTYC.js → chunk-G7XXKQYS.js} +3 -28
- package/chunks/{chunk-L5UHQJTJ.js → chunk-GATT5TKW.js} +1 -1
- package/chunks/{chunk-MVSUYZDT.js → chunk-GKWLJW7Z.js} +4 -4
- package/chunks/{chunk-VAK25FTU.js → chunk-GKX7E4CO.js} +1 -1
- package/chunks/{chunk-LS77BEZP.js → chunk-GLCZKT5V.js} +1 -5
- package/chunks/{chunk-FSITMZJH.js → chunk-GOXRFPH5.js} +18 -9
- package/chunks/{chunk-3RN6GBKS.js → chunk-HFAV3POZ.js} +1 -1
- package/chunks/{chunk-YX324OPW.js → chunk-HGQIL6NG.js} +1 -1
- package/chunks/{chunk-55DJUCI2.js → chunk-HOSENQJL.js} +53 -43
- package/chunks/{chunk-GZXCZHCT.js → chunk-I3G5JWBV.js} +1 -1
- package/chunks/{chunk-YH6G52F2.js → chunk-I3V7RKRZ.js} +4 -4
- package/chunks/{chunk-RF3EXIHJ.js → chunk-IQMYZTDI.js} +30 -19
- package/chunks/{chunk-RWTEFFPU.js → chunk-JCJ7LKNA.js} +6140 -5616
- package/chunks/{chunk-S3TWXGKA.js → chunk-JE7KQ2UP.js} +4 -2
- package/chunks/{chunk-63P4EL5V.js → chunk-JMONIXMJ.js} +1 -1
- package/chunks/{chunk-OFDOK3VM.js → chunk-JQTW5CA5.js} +8 -13
- package/chunks/chunk-JYBU6YUE.js +378 -0
- package/chunks/chunk-JZQUOT4B.js +81 -0
- package/chunks/{chunk-Q4M4MDQ4.js → chunk-K4GTOFKY.js} +1 -1
- package/chunks/{chunk-T2NCM2ET.js → chunk-K6KS3LTN.js} +2 -749
- package/chunks/{chunk-YPE6A4GC.js → chunk-KLESQCW6.js} +2 -2
- package/chunks/{chunk-JVPM2ULZ.js → chunk-KQGB3ME2.js} +6 -6
- package/chunks/{chunk-2W3OOD4W.js → chunk-L55JWS76.js} +6 -3
- package/chunks/{chunk-RHLZR4E5.js → chunk-LGAOC3ZS.js} +1 -1
- package/chunks/{chunk-LB6DUZ26.js → chunk-LI53FGDL.js} +258 -184
- package/chunks/{chunk-2X55UKQE.js → chunk-LIJID5PD.js} +3 -3
- package/chunks/{chunk-NH6KE4JX.js → chunk-LW3RFMG7.js} +3 -3
- package/chunks/{chunk-MZAXJAUM.js → chunk-LW67T6GH.js} +1 -1
- package/chunks/{chunk-RZIX2G32.js → chunk-M4O2DCE3.js} +1 -1
- package/chunks/{chunk-4WIZGAH3.js → chunk-MFW7APBA.js} +6 -58
- package/chunks/{chunk-VIA5XA4U.js → chunk-MKQOXP2O.js} +3 -1
- package/chunks/{chunk-FODK6UMO.js → chunk-MPHPFVKK.js} +0 -2
- package/chunks/{chunk-JESCGQM3.js → chunk-NAVJD2PQ.js} +8 -7
- package/chunks/{chunk-H5FFA6TH.js → chunk-NOKIVHOL.js} +16 -3
- package/chunks/{chunk-6OUGMXDC.js → chunk-NWNEANAT.js} +7 -7
- package/chunks/{chunk-LQIW3YFY.js → chunk-OAOPCTG6.js} +9 -7
- package/chunks/chunk-OCPBI7J5.js +18 -0
- package/chunks/{chunk-WCXCRJYB.js → chunk-OCUM7TJA.js} +1 -1
- package/chunks/{chunk-R5AFZNQW.js → chunk-OIG257JR.js} +14 -7
- package/chunks/{chunk-IKCX4CCL.js → chunk-OINT3ZNV.js} +118 -95
- package/chunks/{chunk-E5TUC6CA.js → chunk-OKF7JF3R.js} +3 -3
- package/chunks/chunk-PEK4ARMZ.js +319 -0
- package/chunks/chunk-PGHTM673.js +363 -0
- package/chunks/{record-artifact-RQKFYO5B.js → chunk-PMGFWLAZ.js} +22 -7
- package/chunks/{chunk-FNQ6T3CV.js → chunk-PONHVBRT.js} +10 -7
- package/chunks/{chunk-VDDGDZMA.js → chunk-QHWCP53L.js} +14 -7
- package/chunks/{chunk-ZFDTEDCF.js → chunk-RF4FA22B.js} +6 -6
- package/chunks/{chunk-6FGBXPWM.js → chunk-RPLGZJV2.js} +38 -44
- package/chunks/{chunk-NIBLUX3Y.js → chunk-RQLRERVY.js} +148 -21
- package/chunks/{chunk-LKEJ26GS.js → chunk-RWZPM2BP.js} +16 -11
- package/chunks/{chunk-6AM5D4ME.js → chunk-S6LOFUVP.js} +0 -12
- package/chunks/{chunk-IO3IX5Q4.js → chunk-S7G7Z3MP.js} +1 -1
- package/chunks/{chunk-MUP3T3AD.js → chunk-SGFT55XI.js} +1 -35
- package/chunks/{chunk-PWVFN2LF.js → chunk-SMWPUA2A.js} +1 -1
- package/chunks/{chunk-U7M2DMGW.js → chunk-SWRHIQDT.js} +130 -5
- package/chunks/{chunk-VYPFXUCB.js → chunk-SZ3KHTDR.js} +1 -1
- package/chunks/chunk-T26EAKDL.js +13 -0
- package/chunks/chunk-T3CHYWJZ.js +758 -0
- package/chunks/{chunk-SQCQ4KO2.js → chunk-TCBP4Q3K.js} +380 -317
- package/chunks/{chunk-ZNAUOR2I.js → chunk-TJHLQ45J.js} +2 -2
- package/chunks/{chunk-LK7CHLVP.js → chunk-U4VTUMMK.js} +0 -60
- package/chunks/{chunk-NL7LTRLR.js → chunk-UHUSJ6X7.js} +29 -68
- package/chunks/{chunk-LH2BYDQ5.js → chunk-UJBURGBH.js} +18 -12
- package/chunks/{chunk-ZOIFNCKL.js → chunk-UPUG4GXM.js} +3 -23
- package/chunks/{chunk-FQK6JAFG.js → chunk-URPQ5QZM.js} +4 -4
- package/chunks/{chunk-M4FMGVY4.js → chunk-V47JGII4.js} +3 -3
- package/chunks/{chunk-Y34KJKDC.js → chunk-VBX5IFEN.js} +1 -1
- package/chunks/{chunk-USTWD7QV.js → chunk-W4MIWP6M.js} +26 -16
- package/chunks/{chunk-HTR4WV6U.js → chunk-W4RQUHY3.js} +31 -1
- package/chunks/{chunk-J24WCGIN.js → chunk-W7D7QTCH.js} +4 -4
- package/chunks/{chunk-DLWL3Z7A.js → chunk-WBSMNTSV.js} +3 -3
- package/chunks/{chunk-2JZBVYTU.js → chunk-WZRWHXFE.js} +1 -8
- package/chunks/{chunk-COH43MRJ.js → chunk-XCGIMOLN.js} +27 -1
- package/chunks/{chunk-IJTOWOD7.js → chunk-XTLTBZIH.js} +83 -9
- package/chunks/{chunk-H4SBPHSA.js → chunk-XVYRMUI5.js} +3 -3
- package/chunks/{chunk-3QMGYBFN.js → chunk-XWWKIXVD.js} +1 -80
- package/chunks/{chunk-VULLI6WQ.js → chunk-XZB72HUB.js} +6 -6
- package/chunks/{chunk-3SJ43L4W.js → chunk-XZC5VLBZ.js} +2 -0
- package/chunks/{chunk-UUUTRMI2.js → chunk-Y4IHBGBP.js} +1 -1
- package/chunks/{chunk-PR75REBZ.js → chunk-Y6AXW2OG.js} +12 -82
- package/chunks/{chunk-IPUUTYMV.js → chunk-YDLJGZHL.js} +1 -1
- package/chunks/{chunk-MB4MZHMJ.js → chunk-YX4DHA6S.js} +211 -522
- package/chunks/chunk-Z4X5MTRT.js +133 -0
- package/chunks/{chunk-UW5EOVUN.js → chunk-ZBVS26BY.js} +4 -4
- package/chunks/{chunk-ZD6UTE4A.js → chunk-ZHBO7WVX.js} +1 -1
- package/chunks/{chunk-7JURR4JT.js → chunk-ZM63TFJH.js} +167 -81
- package/chunks/{chunk-HTO4JFDZ.js → chunk-ZPJWUGCS.js} +0 -1
- package/chunks/{chunk-X5XDDSSH.js → chunk-ZPZ7ZJEE.js} +28 -5
- package/chunks/{chunk-ACY3A37B.js → chunk-ZS6Q44DY.js} +23 -18
- package/chunks/{chunk-ZJHVAS7M.js → chunk-ZWUDSQBD.js} +4 -5
- package/chunks/{computer-use-SOQ4E3VX.js → computer-use-HRVGY7OB.js} +50 -49
- package/chunks/{config-utils-7V7GGIW6.js → config-utils-RUFMEUYD.js} +4 -3
- package/chunks/contextCommand-V3N7Q3UM.js +81 -0
- package/chunks/core-runtime-QGEW6WBW.js +135 -0
- package/chunks/{create-sub-session-IWW2IZ2T.js → create-sub-session-SBYUMSSS.js} +3 -3
- package/chunks/{create-sub-session-QRJLW5BV.js → create-sub-session-ZUWDNFO2.js} +47 -46
- package/chunks/{cron-create-YIID5XAW.js → cron-create-2QK6TCEC.js} +6 -6
- package/chunks/{cron-delete-ZVHYCEP2.js → cron-delete-FDCDFYMG.js} +5 -5
- package/chunks/{cron-list-XEGS463Q.js → cron-list-XN3WVBTP.js} +6 -6
- package/chunks/{daemon-YO6433NF.js → daemon-QH2G5B5E.js} +403 -17
- package/chunks/daemon-status-provider-MB54AMNV.js +91 -0
- package/chunks/daemon-trust-policy-3VFDF5LU.js +86 -0
- package/chunks/daemon-trust-policy-monitor-4KX2OK7G.js +173 -0
- package/chunks/{de-HGRCYDEJ.js → de-SY6O76BF.js} +6 -1
- package/chunks/deferred-core-runtime-UIJL6EEU.js +90 -0
- package/chunks/{dist-F6IBUDR4.js → dist-2PERFI23.js} +12 -9
- package/chunks/dist-AOOUOG5S.js +4389 -0
- package/chunks/{dist-46NQKLTW.js → dist-OAOC5OV4.js} +2 -2
- package/chunks/{dist-YFNEUWSE.js → dist-PVEAFLHY.js} +5 -4
- package/chunks/{dist-AIKFMUKK.js → dist-SL2LUMML.js} +1449 -14
- package/chunks/dist-ULIG4M5H.js +13415 -0
- package/chunks/{dist-WEAHOXDM.js → dist-WGMNT3JQ.js} +2 -1
- package/chunks/{dist-BBLXMS3N.js → dist-ZHXOBXDN.js} +3 -3
- package/chunks/earlyInputCapture-QBC4ZCV7.js +83 -0
- package/chunks/{edit-OBDSQURM.js → edit-7ABV72VV.js} +48 -47
- package/chunks/{en-MTWBNGDO.js → en-NBK3JKCE.js} +9 -1
- package/chunks/{enter-worktree-U6MRPQ2P.js → enter-worktree-4NOWT6I2.js} +48 -47
- package/chunks/{enterPlanMode-BC5QUZZ2.js → enterPlanMode-4NOQ6A56.js} +48 -47
- package/chunks/{environment-W5UFC2CH.js → environment-ABMFNOJO.js} +49 -48
- package/chunks/errors-UAX4AR5Q.js +89 -0
- package/chunks/esm-K5FARBNI.js +5548 -0
- package/chunks/{exit-worktree-DGNYMECB.js → exit-worktree-CF2O5AQM.js} +48 -47
- package/chunks/exitPlanMode-5KEF5DLM.js +74 -0
- package/chunks/{fast-path-JJZFJANL.js → fast-path-RWZGR7A6.js} +16 -6
- package/chunks/{fr-45RLL55O.js → fr-4KG5V7UT.js} +6 -1
- package/chunks/{gemini-QS36EBZV.js → gemini-A4LXWU5S.js} +103 -98
- package/chunks/{geminiContentGenerator-AG4KB6CV.js → geminiContentGenerator-VPXAS3BM.js} +40 -11
- package/chunks/{getMachineId-bsd-V7W3GODC.js → getMachineId-bsd-FG7IUY6U.js} +1 -1
- package/chunks/{getMachineId-darwin-TDO75DQP.js → getMachineId-darwin-GLCJI2RA.js} +1 -1
- package/chunks/{getMachineId-linux-TF43WQT2.js → getMachineId-linux-O6OPPAKO.js} +1 -1
- package/chunks/{getMachineId-unsupported-ZGUO3TXT.js → getMachineId-unsupported-S6CKYVGC.js} +1 -1
- package/chunks/{getMachineId-win-ECFYZZFQ.js → getMachineId-win-X5SRNEH7.js} +1 -1
- package/chunks/{glob-V7R3PSK3.js → glob-P6ZPQOPR.js} +48 -47
- package/chunks/goal-tools-H2NHZKGN.js +335 -0
- package/chunks/{grep-QYPSK7OP.js → grep-56M3IJ36.js} +50 -48
- package/chunks/handleAutoUpdate-N3IMC273.js +82 -0
- package/chunks/i18n-UFV5QINW.js +98 -0
- package/chunks/{image-gen-Z3VPGKRC.js → image-gen-GPYAKETO.js} +12 -12
- package/chunks/initializer-OXWZKLEX.js +87 -0
- package/chunks/installationInfo-V2YEC52N.js +81 -0
- package/chunks/{ja-B7DF7DFG.js → ja-F3GSQXMF.js} +6 -1
- package/chunks/{keychain-token-storage-MDTG3WRM.js → keychain-token-storage-72IYCAZV.js} +3 -3
- package/chunks/lib-RUF3WZA6.js +9 -0
- package/chunks/list-UN6EJ6WB.js +90 -0
- package/chunks/{list-agents-5KJJHR6I.js → list-agents-R6KDXQR3.js} +3 -3
- package/chunks/loadedSettingsAdapter-LZK2PMOY.js +84 -0
- package/chunks/{loggingContentGenerator-HS3S5H3Q.js → loggingContentGenerator-PSFMRX7M.js} +78 -113
- package/chunks/{loop-wakeup-FXKNNYSY.js → loop-wakeup-3IQKCYAH.js} +7 -7
- package/chunks/{ls-NTK6VOQJ.js → ls-DKZ37A7N.js} +5 -5
- package/chunks/{lsp-2JI24STP.js → lsp-QNWN7KN3.js} +3 -3
- package/chunks/{managed-npm-update-JYEMMXA3.js → managed-npm-update-D2AO3F47.js} +48 -47
- package/chunks/mcp-A2VAOKMH.js +84 -0
- package/chunks/{monitor-R3ODH5U6.js → monitor-7EJ3WBER.js} +48 -47
- package/chunks/nonInteractiveCli-43LIVN4A.js +146 -0
- package/chunks/{notebook-edit-BNOK452R.js → notebook-edit-IQD53ULF.js} +48 -47
- package/chunks/{openaiContentGenerator-WMCU3O2H.js → openaiContentGenerator-YPCMNGEZ.js} +26 -27
- package/chunks/pidfile-3SOOBWZA.js +87 -0
- package/chunks/process-registry-2CHQBXH5.js +157 -0
- package/chunks/{processUtils-RT7UNCC2.js → processUtils-FGVHFR4V.js} +2 -2
- package/chunks/{pt-22Q3FP73.js → pt-EQ33KWEN.js} +6 -1
- package/chunks/{qwenContentGenerator-HHCRK4SX.js → qwenContentGenerator-M6YW4D6A.js} +53 -52
- package/chunks/{qwenOAuth2-OWLB5AKH.js → qwenOAuth2-XSYKLMNR.js} +10 -10
- package/chunks/read-file-XOMBFIS7.js +29 -0
- package/chunks/{read-mcp-resource-4DKQWGHD.js → read-mcp-resource-GFTWYXMK.js} +4 -4
- package/chunks/record-artifact-JANPGVS4.js +21 -0
- package/chunks/resumeHistoryUtils-E4EVA4PO.js +92 -0
- package/chunks/ripGrep-M4NYA6AM.js +74 -0
- package/chunks/{ru-FZCNZHDC.js → ru-7OZAUKGG.js} +6 -1
- package/chunks/{run-qwen-serve-FU6HEM4J.js → run-qwen-serve-QLCU2BAZ.js} +953 -248
- package/chunks/{runtime-XXRRTNP6.js → runtime-T36WUYIO.js} +57 -55
- package/chunks/{scheduler-G2ZS2Z7E.js → scheduler-C3J45Z5W.js} +47 -46
- package/chunks/{sdk-exporters-grpc-AK3LGHNO.js → sdk-exporters-grpc-54L4LS5L.js} +4 -4
- package/chunks/{sdk-exporters-http-FYBSUCPD.js → sdk-exporters-http-BFOKQFRD.js} +7 -7
- package/chunks/{sdk-impl-GMVPB7NB.js → sdk-impl-6CJ3JQZL.js} +14 -14
- package/chunks/{send-message-Q6OOR6BR.js → send-message-RJ2R4PIV.js} +6 -12
- package/chunks/serve-7SWJTL3K.js +90 -0
- package/chunks/{server-4UMH7OIZ.js → server-T2B64F4O.js} +3887 -852
- package/chunks/{session-K3O3Q2SV.js → session-D546I4HT.js} +99 -94
- package/chunks/{settings-CR2EWTBA.js → settings-ZQOOTRR7.js} +51 -50
- package/chunks/shell-5OR4RAKF.js +84 -0
- package/chunks/{skill-I3SDA4MB.js → skill-X4E5JMKV.js} +20 -21
- package/chunks/skill-settings-ZS3XPDMT.js +92 -0
- package/chunks/spawnChannel-MILVKB3G.js +83 -0
- package/chunks/standalone-update-UTYCSPUO.js +93 -0
- package/chunks/{startInteractiveUI-SLZGHRPH.js → startInteractiveUI-S4R5J4EN.js} +1220 -895
- package/chunks/{syntheticOutput-I3757IWH.js → syntheticOutput-355CB6CJ.js} +4 -4
- package/chunks/{task-create-N7WQSGYA.js → task-create-KUQIS7RA.js} +10 -10
- package/chunks/{task-list-FOPULZEP.js → task-list-5XNNGTF4.js} +7 -7
- package/chunks/{task-stop-H6RHXFVQ.js → task-stop-4ROAOBXH.js} +3 -3
- package/chunks/{task-update-M57TFZJT.js → task-update-4FPFYGE3.js} +10 -10
- package/chunks/{team-create-YJALH5D2.js → team-create-MGD3Q7W4.js} +50 -49
- package/chunks/{team-delete-QE2UXJL7.js → team-delete-S2RCXA4P.js} +7 -7
- package/chunks/{team-plan-approval-34QFYKGN.js → team-plan-approval-VMVGLPDQ.js} +48 -47
- package/chunks/theme-manager-U4QE2YSY.js +78 -0
- package/chunks/{todoWrite-VQ7FKOHL.js → todoWrite-7WM3VDMY.js} +7 -7
- package/chunks/{tool-search-NF7GB6LE.js → tool-search-6T7VYTYZ.js} +19 -21
- package/chunks/total-session-admission-PLKO4EET.js +86 -0
- package/chunks/trustedFolders-QZU6BO46.js +96 -0
- package/chunks/{update-relaunch-WBUZJC5O.js → update-relaunch-NWPFNM5L.js} +5 -5
- package/chunks/updateCheck-KEOCGBZR.js +93 -0
- package/chunks/useAutoAcceptIndicator-O6XISZEA.js +94 -0
- package/chunks/{validateNonInterActiveAuth-3R223G3R.js → validateNonInterActiveAuth-WCHAHO75.js} +94 -89
- package/chunks/{version-HS7YSFHV.js → version-VP3VZ2BM.js} +1 -1
- package/chunks/{web-fetch-NKCSG7ZE.js → web-fetch-KM2FSOKS.js} +19 -21
- package/chunks/{web-search-S62WAP4S.js → web-search-WUR6PYBO.js} +13 -13
- package/chunks/{workflow-QAGU5RU4.js → workflow-S6XMX55R.js} +49 -48
- package/chunks/workspace-providers-status-JGIZRHVT.js +87 -0
- package/chunks/{workspace-registration-store-24JMHDGF.js → workspace-registration-store-JDEMOOFX.js} +1 -1
- package/chunks/workspace-registry-NIL6253M.js +94 -0
- package/chunks/workspace-service-UYB6MMWL.js +101 -0
- package/chunks/workspace-skills-status-GSJRWER4.js +87 -0
- package/chunks/workspace-trust-reconciler-V2TICK2A.js +347 -0
- package/chunks/write-file-QHD5ELJS.js +76 -0
- package/chunks/xterm-headless-NTYVIBT3.js +3475 -0
- package/chunks/{zh-LUIGBD55.js → zh-H3YDK5QW.js} +9 -1
- package/chunks/{zh-TW-F5KG2IYD.js → zh-TW-JYCP7XUA.js} +9 -1
- package/chunks/zoom-image-236QXDRH.js +224 -0
- package/cli.js +13 -13
- package/locales/ca.js +7 -2
- package/locales/de.js +7 -2
- package/locales/en.js +10 -2
- package/locales/fr.js +7 -2
- package/locales/ja.js +7 -2
- package/locales/pt.js +7 -2
- package/locales/ru.js +7 -2
- package/locales/zh-TW.js +10 -2
- package/locales/zh.js +10 -2
- package/package.json +5 -4
- package/web-shell/assets/{arc-DcbWnB9T.js → arc-DQN8gc5j.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-kMMF5sud.js → architectureDiagram-3BPJPVTR-C6Z867cc.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-Htl9vTJS.js → blockDiagram-GPEHLZMM-BkyNf4_J.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-BnZnm0mQ.js → c4Diagram-AAUBKEIU-BA7aurej.js} +1 -1
- package/web-shell/assets/channel-YzToqAUt.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-DziB7kDG.js → chunk-2J33WTMH-Dp_LERgD.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-CmkD8daw.js → chunk-4BX2VUAB-CCwcnkeW.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-CHAd9A_U.js → chunk-55IACEB6-e0ytWiup.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-Dqaam3fE.js → chunk-727SXJPM-DBoZrQ--.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-D_-saBYM.js → chunk-AQP2D5EJ-dmHU5zKq.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-B9r_veWD.js → chunk-FMBD7UC4-PP3UKzsN.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-B3EaCSpL.js → chunk-ND2GUHAM-Bjy0PNsP.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-CYq8x9mn.js → chunk-QZHKN3VN-CM0H6wrK.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-_le9LVNU.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-_le9LVNU.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-D0ng4uiB.js → cose-bilkent-S5V4N54A-B1B_Fozz.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-DCZollQv.js → dagre-BM42HDAG-DGFk7aBN.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-Dfk2pWS0.js → diagram-2AECGRRQ-VdlYGHdV.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-kX38ltWR.js → diagram-5GNKFQAL-xcEMWz6m.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-CJz2vsXh.js → diagram-KO2AKTUF-B6Dd23eT.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-BvMLZm_7.js → diagram-LMA3HP47-C3bjiNTc.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-l7kfStkO.js → diagram-OG6HWLK6-ChXfX8H6.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-BSVa8GGT.js → erDiagram-TEJ5UH35-D7RBC3FG.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-CoawKIXH.js → flowDiagram-I6XJVG4X-bNsx8Fqb.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-DFUDH0zF.js → ganttDiagram-6RSMTGT7-C_m4liOj.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-Y2pvpT4e.js → gitGraphDiagram-PVQCEYII-CzAqOmDr.js} +1 -1
- package/web-shell/assets/{index-D0GX0zZf.js → index-BArKGy43.js} +1 -1
- package/web-shell/assets/index-C2GE3DAF.js +74 -0
- package/web-shell/assets/index-_dIfJ82-.js +1625 -0
- package/web-shell/assets/index-heP6zO4t.css +5 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-CU8_zLiX.js → infoDiagram-5YYISTIA-BBw9H4RT.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-AVQiV0DU.js → ishikawaDiagram-YF4QCWOH-C8Ns7cDb.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-DQ0VSKa3.js → journeyDiagram-JHISSGLW-BkW5h5si.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-BqnWqsE_.js → kanban-definition-UN3LZRKU-IUhsF7tq.js} +1 -1
- package/web-shell/assets/{linear-BkoihsaA.js → linear-CeDsMMjT.js} +1 -1
- package/web-shell/assets/{mermaid.core-5RJs-31j.js → mermaid.core-VTPU82QL.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-D33Bxnpd.js → mindmap-definition-RKZ34NQL-DVohXDmC.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-BuEAw3BH.js → pieDiagram-4H26LBE5-SxBFaID8.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-Kox_usEq.js → quadrantDiagram-W4KKPZXB-BJt8o3Cs.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-CNjeUif0.js → requirementDiagram-4Y6WPE33-B02G8M7E.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-BCd2OL_U.js → sankeyDiagram-5OEKKPKP-CzMCGPib.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CF2ZTsz0.js → sequenceDiagram-3UESZ5HK-CzbJgSkE.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-qenSzHtm.js → stateDiagram-AJRCARHV-DhiXBOKS.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DILbnhvR.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-B5DyWdgs.js → timeline-definition-PNZ67QCA-Btj5idQV.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-DqP4I_o_.js → vennDiagram-CIIHVFJN-CJz2YZq4.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-CJe2e4mg.js → wardley-L42UT6IY-CavIou7m.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-BMDSw-Rr.js → wardleyDiagram-YWT4CUSO-BRf62x8X.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-BTVZYkxD.js → xychartDiagram-2RQKCTM6-ItOGZPM_.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/MaxSizedBox-5DPPWPGT.js +0 -85
- package/chunks/agent-6ODUANDO.js +0 -81
- package/chunks/agent-headless-7BYQTMHW.js +0 -75
- package/chunks/bridge-ZUB64FAE.js +0 -90
- package/chunks/chunk-LEH5C7FV.js +0 -232
- package/chunks/chunk-SZRN75WQ.js +0 -29
- package/chunks/chunk-UGYMA4EI.js +0 -219
- package/chunks/chunk-Z2BC6UJ5.js +0 -8575
- package/chunks/contextCommand-JLHYA34Z.js +0 -80
- package/chunks/daemon-status-provider-2233Q37D.js +0 -89
- package/chunks/earlyInputCapture-A7NDU3PF.js +0 -82
- package/chunks/errors-M7CLORXH.js +0 -88
- package/chunks/exitPlanMode-GXTBWQAR.js +0 -403
- package/chunks/handleAutoUpdate-6DBEZYPV.js +0 -81
- package/chunks/i18n-VUJJZIMU.js +0 -97
- package/chunks/initializer-UWAK5U5O.js +0 -86
- package/chunks/installationInfo-6O2YAA52.js +0 -80
- package/chunks/list-GB4ESM3T.js +0 -89
- package/chunks/loadedSettingsAdapter-OT6JVQ7U.js +0 -83
- package/chunks/mcp-6DBDJPFU.js +0 -83
- package/chunks/nonInteractiveCli-MOYCYBBU.js +0 -141
- package/chunks/pidfile-TFRZZZIO.js +0 -86
- package/chunks/read-file-APMO3PSX.js +0 -31
- package/chunks/resumeHistoryUtils-6KRYEAWZ.js +0 -91
- package/chunks/ripGrep-BEJDEDXW.js +0 -73
- package/chunks/serve-7BSTXJ4T.js +0 -89
- package/chunks/shell-HH3PF3A2.js +0 -83
- package/chunks/spawnChannel-RWNDBXGA.js +0 -82
- package/chunks/src-GE4TTTML.js +0 -3147
- package/chunks/standalone-update-Q6WFRZZQ.js +0 -92
- package/chunks/theme-manager-SWRILQHI.js +0 -77
- package/chunks/total-session-admission-DLHHHLD3.js +0 -84
- package/chunks/trustedFolders-KHXHY6PY.js +0 -93
- package/chunks/updateCheck-RKL6M5XN.js +0 -92
- package/chunks/useAutoAcceptIndicator-CFQ5BUJL.js +0 -93
- package/chunks/workspace-providers-status-QSVZUETE.js +0 -86
- package/chunks/workspace-registry-UT4RBNBM.js +0 -88
- package/chunks/workspace-service-JFWRUS4V.js +0 -98
- package/chunks/workspace-skills-status-ZBBKJOI2.js +0 -85
- package/chunks/write-file-VHIXW5M7.js +0 -73
- package/web-shell/assets/channel-Cq7YKtfC.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-CQ9aC1Tg.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CQ9aC1Tg.js +0 -1
- package/web-shell/assets/index-D9haPt0X.css +0 -5
- package/web-shell/assets/index-ckX9Pq5k.js +0 -1230
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-B7W4zlCr.js +0 -1
- package/chunks/{chunk-TARRHLLG.js → chunk-QUGAUQGJ.js} +25 -25
- package/chunks/{chunk-U7ZFW55U.js → chunk-VOQXFAY5.js} +977 -977
- /package/chunks/{chunk-LXXMOYPL.js → chunk-VXZBKKQR.js} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
preloadRuntimeFetchModule
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-WZRWHXFE.js";
|
|
6
6
|
import {
|
|
7
7
|
init_esbuild_shims
|
|
8
8
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -13,82 +13,9 @@ import {
|
|
|
13
13
|
// packages/core/src/config/models.ts
|
|
14
14
|
init_esbuild_shims();
|
|
15
15
|
var DEFAULT_QWEN_MODEL = "coder-model";
|
|
16
|
-
var DEFAULT_QWEN_FLASH_MODEL = "coder-model";
|
|
17
16
|
var DEFAULT_QWEN_EMBEDDING_MODEL = "text-embedding-v4";
|
|
18
17
|
var MAINLINE_CODER_MODEL = "qwen3.7-max";
|
|
19
18
|
|
|
20
|
-
// packages/core/src/models/constants.ts
|
|
21
|
-
init_esbuild_shims();
|
|
22
|
-
var MODEL_GENERATION_CONFIG_FIELDS = [
|
|
23
|
-
"samplingParams",
|
|
24
|
-
"timeout",
|
|
25
|
-
"maxRetries",
|
|
26
|
-
"retryErrorCodes",
|
|
27
|
-
"enableCacheControl",
|
|
28
|
-
"forceGlobalCacheScope",
|
|
29
|
-
"schemaCompliance",
|
|
30
|
-
"reasoning",
|
|
31
|
-
"contextWindowSize",
|
|
32
|
-
"customHeaders",
|
|
33
|
-
"extra_body",
|
|
34
|
-
"thinkingMandatory",
|
|
35
|
-
"modalities",
|
|
36
|
-
"splitToolMedia",
|
|
37
|
-
"toolResultContentFormat"
|
|
38
|
-
];
|
|
39
|
-
var CREDENTIAL_FIELDS = [
|
|
40
|
-
"model",
|
|
41
|
-
"apiKey",
|
|
42
|
-
"apiKeyEnvKey",
|
|
43
|
-
"baseUrl"
|
|
44
|
-
];
|
|
45
|
-
var PROVIDER_SOURCED_FIELDS = [
|
|
46
|
-
...CREDENTIAL_FIELDS,
|
|
47
|
-
...MODEL_GENERATION_CONFIG_FIELDS
|
|
48
|
-
];
|
|
49
|
-
var AUTH_ENV_MAPPINGS = {
|
|
50
|
-
openai: {
|
|
51
|
-
apiKey: ["OPENAI_API_KEY"],
|
|
52
|
-
baseUrl: ["OPENAI_BASE_URL"],
|
|
53
|
-
model: ["OPENAI_MODEL", "QWEN_MODEL"]
|
|
54
|
-
},
|
|
55
|
-
anthropic: {
|
|
56
|
-
apiKey: ["ANTHROPIC_API_KEY"],
|
|
57
|
-
baseUrl: ["ANTHROPIC_BASE_URL"],
|
|
58
|
-
model: ["ANTHROPIC_MODEL"]
|
|
59
|
-
},
|
|
60
|
-
gemini: {
|
|
61
|
-
apiKey: ["GEMINI_API_KEY"],
|
|
62
|
-
baseUrl: [],
|
|
63
|
-
model: ["GEMINI_MODEL"]
|
|
64
|
-
},
|
|
65
|
-
"vertex-ai": {
|
|
66
|
-
apiKey: ["GOOGLE_API_KEY"],
|
|
67
|
-
baseUrl: [],
|
|
68
|
-
model: ["GOOGLE_MODEL"]
|
|
69
|
-
},
|
|
70
|
-
"qwen-oauth": {
|
|
71
|
-
apiKey: [],
|
|
72
|
-
baseUrl: [],
|
|
73
|
-
model: []
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
var DEFAULT_MODELS = {
|
|
77
|
-
openai: MAINLINE_CODER_MODEL,
|
|
78
|
-
"qwen-oauth": DEFAULT_QWEN_MODEL
|
|
79
|
-
};
|
|
80
|
-
var QWEN_OAUTH_MODELS = [
|
|
81
|
-
{
|
|
82
|
-
id: "coder-model",
|
|
83
|
-
name: "coder-model",
|
|
84
|
-
description: "Qwen 3.7 Max \u2014 efficient hybrid model with leading coding performance",
|
|
85
|
-
capabilities: { vision: true }
|
|
86
|
-
}
|
|
87
|
-
];
|
|
88
|
-
var QWEN_OAUTH_ALLOWED_MODELS = QWEN_OAUTH_MODELS.map(
|
|
89
|
-
(model) => model.id
|
|
90
|
-
);
|
|
91
|
-
|
|
92
19
|
// packages/core/src/core/contentGenerator.ts
|
|
93
20
|
init_esbuild_shims();
|
|
94
21
|
|
|
@@ -201,6 +128,80 @@ var MissingAnthropicBaseUrlEnvError = class extends ModelConfigError {
|
|
|
201
128
|
}
|
|
202
129
|
};
|
|
203
130
|
|
|
131
|
+
// packages/core/src/models/constants.ts
|
|
132
|
+
init_esbuild_shims();
|
|
133
|
+
var MODEL_GENERATION_CONFIG_FIELDS = [
|
|
134
|
+
"samplingParams",
|
|
135
|
+
"timeout",
|
|
136
|
+
"maxRetries",
|
|
137
|
+
"retryInitialDelayMs",
|
|
138
|
+
"retryMaxDelayMs",
|
|
139
|
+
"retryErrorCodes",
|
|
140
|
+
"enableCacheControl",
|
|
141
|
+
"forceGlobalCacheScope",
|
|
142
|
+
"schemaCompliance",
|
|
143
|
+
"reasoning",
|
|
144
|
+
"contextWindowSize",
|
|
145
|
+
"customHeaders",
|
|
146
|
+
"extra_body",
|
|
147
|
+
"thinkingMandatory",
|
|
148
|
+
"modalities",
|
|
149
|
+
"splitToolMedia",
|
|
150
|
+
"toolResultContentFormat"
|
|
151
|
+
];
|
|
152
|
+
var CREDENTIAL_FIELDS = [
|
|
153
|
+
"model",
|
|
154
|
+
"apiKey",
|
|
155
|
+
"apiKeyEnvKey",
|
|
156
|
+
"baseUrl"
|
|
157
|
+
];
|
|
158
|
+
var PROVIDER_SOURCED_FIELDS = [
|
|
159
|
+
...CREDENTIAL_FIELDS,
|
|
160
|
+
...MODEL_GENERATION_CONFIG_FIELDS
|
|
161
|
+
];
|
|
162
|
+
var AUTH_ENV_MAPPINGS = {
|
|
163
|
+
openai: {
|
|
164
|
+
apiKey: ["OPENAI_API_KEY"],
|
|
165
|
+
baseUrl: ["OPENAI_BASE_URL"],
|
|
166
|
+
model: ["OPENAI_MODEL", "QWEN_MODEL"]
|
|
167
|
+
},
|
|
168
|
+
anthropic: {
|
|
169
|
+
apiKey: ["ANTHROPIC_API_KEY"],
|
|
170
|
+
baseUrl: ["ANTHROPIC_BASE_URL"],
|
|
171
|
+
model: ["ANTHROPIC_MODEL"]
|
|
172
|
+
},
|
|
173
|
+
gemini: {
|
|
174
|
+
apiKey: ["GEMINI_API_KEY"],
|
|
175
|
+
baseUrl: [],
|
|
176
|
+
model: ["GEMINI_MODEL"]
|
|
177
|
+
},
|
|
178
|
+
"vertex-ai": {
|
|
179
|
+
apiKey: ["GOOGLE_API_KEY"],
|
|
180
|
+
baseUrl: [],
|
|
181
|
+
model: ["GOOGLE_MODEL"]
|
|
182
|
+
},
|
|
183
|
+
"qwen-oauth": {
|
|
184
|
+
apiKey: [],
|
|
185
|
+
baseUrl: [],
|
|
186
|
+
model: []
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
var DEFAULT_MODELS = {
|
|
190
|
+
openai: MAINLINE_CODER_MODEL,
|
|
191
|
+
"qwen-oauth": DEFAULT_QWEN_MODEL
|
|
192
|
+
};
|
|
193
|
+
var QWEN_OAUTH_MODELS = [
|
|
194
|
+
{
|
|
195
|
+
id: "coder-model",
|
|
196
|
+
name: "coder-model",
|
|
197
|
+
description: "Qwen 3.7 Max \u2014 efficient hybrid model with leading coding performance",
|
|
198
|
+
capabilities: { vision: true }
|
|
199
|
+
}
|
|
200
|
+
];
|
|
201
|
+
var QWEN_OAUTH_ALLOWED_MODELS = QWEN_OAUTH_MODELS.map(
|
|
202
|
+
(model) => model.id
|
|
203
|
+
);
|
|
204
|
+
|
|
204
205
|
// packages/core/src/core/contentGenerator.ts
|
|
205
206
|
var AuthType = /* @__PURE__ */ ((AuthType2) => {
|
|
206
207
|
AuthType2["USE_OPENAI"] = "openai";
|
|
@@ -304,14 +305,6 @@ function validateModelConfig(config, isStrictModelProvider = false) {
|
|
|
304
305
|
return { valid: errors.length === 0, errors };
|
|
305
306
|
}
|
|
306
307
|
__name(validateModelConfig, "validateModelConfig");
|
|
307
|
-
function createContentGeneratorConfig(config, authType, generationConfig) {
|
|
308
|
-
return resolveContentGeneratorConfigWithSources(
|
|
309
|
-
config,
|
|
310
|
-
authType,
|
|
311
|
-
generationConfig
|
|
312
|
-
).config;
|
|
313
|
-
}
|
|
314
|
-
__name(createContentGeneratorConfig, "createContentGeneratorConfig");
|
|
315
308
|
function getModuleNotFoundError(error) {
|
|
316
309
|
let current = error;
|
|
317
310
|
while (current instanceof Error) {
|
|
@@ -344,29 +337,60 @@ var LazyContentGenerator = class {
|
|
|
344
337
|
__name(this, "LazyContentGenerator");
|
|
345
338
|
}
|
|
346
339
|
generatorPromise;
|
|
340
|
+
preloadedOnly = false;
|
|
347
341
|
getGenerator() {
|
|
348
342
|
this.generatorPromise ??= this.loader();
|
|
349
343
|
return this.generatorPromise;
|
|
350
344
|
}
|
|
345
|
+
getGeneratorForUse() {
|
|
346
|
+
this.preloadedOnly = false;
|
|
347
|
+
return this.getGenerator();
|
|
348
|
+
}
|
|
349
|
+
preload() {
|
|
350
|
+
if (!this.generatorPromise) {
|
|
351
|
+
this.preloadedOnly = true;
|
|
352
|
+
}
|
|
353
|
+
return this.getGenerator();
|
|
354
|
+
}
|
|
355
|
+
resetPreload() {
|
|
356
|
+
if (!this.preloadedOnly) return;
|
|
357
|
+
this.preloadedOnly = false;
|
|
358
|
+
this.generatorPromise = void 0;
|
|
359
|
+
}
|
|
351
360
|
async generateContent(request, userPromptId) {
|
|
352
|
-
return (await this.
|
|
361
|
+
return (await this.getGeneratorForUse()).generateContent(
|
|
362
|
+
request,
|
|
363
|
+
userPromptId
|
|
364
|
+
);
|
|
353
365
|
}
|
|
354
366
|
async generateContentStream(request, userPromptId) {
|
|
355
|
-
return (await this.
|
|
367
|
+
return (await this.getGeneratorForUse()).generateContentStream(
|
|
356
368
|
request,
|
|
357
369
|
userPromptId
|
|
358
370
|
);
|
|
359
371
|
}
|
|
360
372
|
async countTokens(request) {
|
|
361
|
-
return (await this.
|
|
373
|
+
return (await this.getGeneratorForUse()).countTokens(request);
|
|
362
374
|
}
|
|
363
375
|
async embedContent(request) {
|
|
364
|
-
return (await this.
|
|
376
|
+
return (await this.getGeneratorForUse()).embedContent(request);
|
|
365
377
|
}
|
|
366
378
|
useSummarizedThinking() {
|
|
367
379
|
return this.summarizedThinking;
|
|
368
380
|
}
|
|
369
381
|
};
|
|
382
|
+
async function preloadContentGenerator(generator) {
|
|
383
|
+
if (generator instanceof LazyContentGenerator) {
|
|
384
|
+
await generator.preload();
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
__name(preloadContentGenerator, "preloadContentGenerator");
|
|
388
|
+
function resetPreloadedContentGenerator(generator) {
|
|
389
|
+
if (generator instanceof LazyContentGenerator) {
|
|
390
|
+
generator.resetPreload();
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
__name(resetPreloadedContentGenerator, "resetPreloadedContentGenerator");
|
|
370
394
|
async function createContentGenerator(generatorConfig, config, isInitialAuth) {
|
|
371
395
|
const validation = validateModelConfig(generatorConfig, false);
|
|
372
396
|
if (!validation.valid) {
|
|
@@ -381,18 +405,18 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
|
|
|
381
405
|
try {
|
|
382
406
|
if (authType === "openai" /* USE_OPENAI */) {
|
|
383
407
|
loadBaseGenerator = /* @__PURE__ */ __name(async () => {
|
|
384
|
-
const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-
|
|
408
|
+
const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-YPCMNGEZ.js");
|
|
385
409
|
return createOpenAIContentGenerator(generatorConfig, config);
|
|
386
410
|
}, "loadBaseGenerator");
|
|
387
411
|
} else if (authType === "qwen-oauth" /* QWEN_OAUTH */) {
|
|
388
|
-
const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-
|
|
412
|
+
const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-XSYKLMNR.js");
|
|
389
413
|
try {
|
|
390
414
|
const qwenClient = await getQwenOauthClient(
|
|
391
415
|
config,
|
|
392
416
|
isInitialAuth ? { requireCachedCredentials: true } : void 0
|
|
393
417
|
);
|
|
394
418
|
loadBaseGenerator = /* @__PURE__ */ __name(async () => {
|
|
395
|
-
const { QwenContentGenerator } = await import("./qwenContentGenerator-
|
|
419
|
+
const { QwenContentGenerator } = await import("./qwenContentGenerator-M6YW4D6A.js");
|
|
396
420
|
return new QwenContentGenerator(qwenClient, generatorConfig, config);
|
|
397
421
|
}, "loadBaseGenerator");
|
|
398
422
|
} catch (error) {
|
|
@@ -403,12 +427,12 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
|
|
|
403
427
|
}
|
|
404
428
|
} else if (authType === "anthropic" /* USE_ANTHROPIC */) {
|
|
405
429
|
loadBaseGenerator = /* @__PURE__ */ __name(async () => {
|
|
406
|
-
const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-
|
|
430
|
+
const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-V2QOGVYD.js");
|
|
407
431
|
return createAnthropicContentGenerator(generatorConfig, config);
|
|
408
432
|
}, "loadBaseGenerator");
|
|
409
433
|
} else if (authType === "gemini" /* USE_GEMINI */ || authType === "vertex-ai" /* USE_VERTEX_AI */) {
|
|
410
434
|
loadBaseGenerator = /* @__PURE__ */ __name(async () => {
|
|
411
|
-
const { createGeminiContentGenerator } = await import("./geminiContentGenerator-
|
|
435
|
+
const { createGeminiContentGenerator } = await import("./geminiContentGenerator-VPXAS3BM.js");
|
|
412
436
|
return createGeminiContentGenerator(generatorConfig, config);
|
|
413
437
|
}, "loadBaseGenerator");
|
|
414
438
|
} else {
|
|
@@ -424,7 +448,7 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
|
|
|
424
448
|
try {
|
|
425
449
|
const [baseGenerator, { LoggingContentGenerator }] = await Promise.all([
|
|
426
450
|
loadBaseGenerator(),
|
|
427
|
-
import("./loggingContentGenerator-
|
|
451
|
+
import("./loggingContentGenerator-PSFMRX7M.js")
|
|
428
452
|
]);
|
|
429
453
|
return new LoggingContentGenerator(
|
|
430
454
|
baseGenerator,
|
|
@@ -442,7 +466,6 @@ __name(createContentGenerator, "createContentGenerator");
|
|
|
442
466
|
|
|
443
467
|
export {
|
|
444
468
|
DEFAULT_QWEN_MODEL,
|
|
445
|
-
DEFAULT_QWEN_FLASH_MODEL,
|
|
446
469
|
DEFAULT_QWEN_EMBEDDING_MODEL,
|
|
447
470
|
MAINLINE_CODER_MODEL,
|
|
448
471
|
MODEL_GENERATION_CONFIG_FIELDS,
|
|
@@ -453,8 +476,8 @@ export {
|
|
|
453
476
|
QWEN_OAUTH_ALLOWED_MODELS,
|
|
454
477
|
AuthType,
|
|
455
478
|
resolveContentGeneratorConfigWithSources,
|
|
456
|
-
|
|
457
|
-
|
|
479
|
+
preloadContentGenerator,
|
|
480
|
+
resetPreloadedContentGenerator,
|
|
458
481
|
createContentGenerator
|
|
459
482
|
};
|
|
460
483
|
/**
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
isPrivateHost
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-LW3RFMG7.js";
|
|
6
6
|
import {
|
|
7
7
|
loadUndici
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-WZRWHXFE.js";
|
|
9
9
|
import {
|
|
10
10
|
getErrorMessage
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-UHUSJ6X7.js";
|
|
12
12
|
import {
|
|
13
13
|
init_esbuild_shims
|
|
14
14
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
// Force strict mode and setup for ESM
|
|
2
|
+
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
getUserSettingsPath,
|
|
5
|
+
v1ToV2Migration
|
|
6
|
+
} from "./chunk-7A4V5CJY.js";
|
|
7
|
+
import {
|
|
8
|
+
getSystemDefaultsPath,
|
|
9
|
+
getSystemSettingsPath
|
|
10
|
+
} from "./chunk-IDS7MSUP.js";
|
|
11
|
+
import {
|
|
12
|
+
LoadedTrustedFolders,
|
|
13
|
+
TrustLevel,
|
|
14
|
+
getTrustedFoldersPath
|
|
15
|
+
} from "./chunk-5IDU2UGL.js";
|
|
16
|
+
import {
|
|
17
|
+
require_strip_json_comments
|
|
18
|
+
} from "./chunk-ALGGS7UH.js";
|
|
19
|
+
import {
|
|
20
|
+
arePathsEquivalent
|
|
21
|
+
} from "./chunk-MR3PXB6E.js";
|
|
22
|
+
import {
|
|
23
|
+
ideContextStore
|
|
24
|
+
} from "./chunk-EYGWU66Z.js";
|
|
25
|
+
import {
|
|
26
|
+
init_esbuild_shims
|
|
27
|
+
} from "./chunk-5O2XNYP6.js";
|
|
28
|
+
import {
|
|
29
|
+
__name,
|
|
30
|
+
__toESM
|
|
31
|
+
} from "./chunk-J2S4EL5Y.js";
|
|
32
|
+
|
|
33
|
+
// packages/cli/src/config/daemon-trust-policy.ts
|
|
34
|
+
init_esbuild_shims();
|
|
35
|
+
import { createHash } from "node:crypto";
|
|
36
|
+
import * as fs from "node:fs/promises";
|
|
37
|
+
var import_strip_json_comments = __toESM(require_strip_json_comments(), 1);
|
|
38
|
+
var MAX_TRUSTED_FOLDERS_BYTES = 1024 * 1024;
|
|
39
|
+
var MAX_SETTINGS_BYTES = 4 * 1024 * 1024;
|
|
40
|
+
function policyError(code, filePath, error) {
|
|
41
|
+
return {
|
|
42
|
+
code,
|
|
43
|
+
path: filePath,
|
|
44
|
+
message: error instanceof Error ? error.message : String(error)
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
__name(policyError, "policyError");
|
|
48
|
+
async function readJsonObject(filePath, maxBytes, requireRegularFile, retryMissing = false) {
|
|
49
|
+
const delays = [0, 50, 200];
|
|
50
|
+
let result = {};
|
|
51
|
+
for (const delay of delays) {
|
|
52
|
+
if (delay > 0) {
|
|
53
|
+
await new Promise((resolve) => setTimeout(resolve, delay));
|
|
54
|
+
}
|
|
55
|
+
result = await readJsonObjectOnce(filePath, maxBytes, requireRegularFile);
|
|
56
|
+
if (!result.error && (!result.missing || !retryMissing)) return result;
|
|
57
|
+
}
|
|
58
|
+
return result;
|
|
59
|
+
}
|
|
60
|
+
__name(readJsonObject, "readJsonObject");
|
|
61
|
+
async function readJsonObjectOnce(filePath, maxBytes, requireRegularFile) {
|
|
62
|
+
let stat2;
|
|
63
|
+
try {
|
|
64
|
+
stat2 = await fs.lstat(filePath);
|
|
65
|
+
} catch (error) {
|
|
66
|
+
if (error instanceof Error && "code" in error && error.code === "ENOENT") {
|
|
67
|
+
return { value: {}, missing: true };
|
|
68
|
+
}
|
|
69
|
+
return {
|
|
70
|
+
error: policyError("trust_policy_unreadable", filePath, error)
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
if (!requireRegularFile && stat2.isSymbolicLink()) {
|
|
74
|
+
try {
|
|
75
|
+
stat2 = await fs.stat(filePath);
|
|
76
|
+
} catch (error) {
|
|
77
|
+
return {
|
|
78
|
+
error: policyError("trust_policy_unreadable", filePath, error)
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
if (requireRegularFile && stat2.isSymbolicLink() || !stat2.isFile()) {
|
|
83
|
+
return {
|
|
84
|
+
error: policyError(
|
|
85
|
+
"trust_policy_invalid",
|
|
86
|
+
filePath,
|
|
87
|
+
new Error("Trust policy input must be a regular file.")
|
|
88
|
+
)
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
if (stat2.size > maxBytes) {
|
|
92
|
+
return {
|
|
93
|
+
error: policyError(
|
|
94
|
+
"trust_policy_invalid",
|
|
95
|
+
filePath,
|
|
96
|
+
new Error(`Trust policy input exceeds ${maxBytes} bytes.`)
|
|
97
|
+
)
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
try {
|
|
101
|
+
const raw = await fs.readFile(filePath, "utf8");
|
|
102
|
+
const parsed = JSON.parse((0, import_strip_json_comments.default)(raw));
|
|
103
|
+
if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
|
|
104
|
+
throw new Error("Trust policy input must contain a JSON object.");
|
|
105
|
+
}
|
|
106
|
+
return { value: parsed };
|
|
107
|
+
} catch (error) {
|
|
108
|
+
if (error instanceof Error && "code" in error && error.code === "ENOENT") {
|
|
109
|
+
return { value: {}, missing: true };
|
|
110
|
+
}
|
|
111
|
+
return { error: policyError("trust_policy_invalid", filePath, error) };
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
__name(readJsonObjectOnce, "readJsonObjectOnce");
|
|
115
|
+
function migrateFolderTrustSettings(value, scope) {
|
|
116
|
+
if (!value || !v1ToV2Migration.shouldMigrate(value)) return value;
|
|
117
|
+
return v1ToV2Migration.migrate(value, scope).settings;
|
|
118
|
+
}
|
|
119
|
+
__name(migrateFolderTrustSettings, "migrateFolderTrustSettings");
|
|
120
|
+
function folderTrustSetting(value, filePath) {
|
|
121
|
+
if (!value || !("security" in value)) return {};
|
|
122
|
+
const security = value?.["security"];
|
|
123
|
+
if (typeof security !== "object" || security === null || Array.isArray(security)) {
|
|
124
|
+
return {
|
|
125
|
+
error: policyError(
|
|
126
|
+
"trust_policy_invalid",
|
|
127
|
+
filePath,
|
|
128
|
+
new Error("`security` must be an object.")
|
|
129
|
+
)
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
if (!("folderTrust" in security)) return {};
|
|
133
|
+
const folderTrust = security["folderTrust"];
|
|
134
|
+
if (typeof folderTrust !== "object" || folderTrust === null || Array.isArray(folderTrust)) {
|
|
135
|
+
return {
|
|
136
|
+
error: policyError(
|
|
137
|
+
"trust_policy_invalid",
|
|
138
|
+
filePath,
|
|
139
|
+
new Error("`security.folderTrust` must be an object.")
|
|
140
|
+
)
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
if (!("enabled" in folderTrust)) return {};
|
|
144
|
+
const enabled = folderTrust["enabled"];
|
|
145
|
+
if (typeof enabled === "boolean") return { value: enabled };
|
|
146
|
+
return {
|
|
147
|
+
error: policyError(
|
|
148
|
+
"trust_policy_invalid",
|
|
149
|
+
filePath,
|
|
150
|
+
new Error("`security.folderTrust.enabled` must be a boolean.")
|
|
151
|
+
)
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
__name(folderTrustSetting, "folderTrustSetting");
|
|
155
|
+
function parseTrustedFolders(value, filePath) {
|
|
156
|
+
const config = {};
|
|
157
|
+
for (const [rulePath, rawLevel] of Object.entries(value ?? {})) {
|
|
158
|
+
if (!Object.values(TrustLevel).includes(rawLevel)) {
|
|
159
|
+
return {
|
|
160
|
+
config: {},
|
|
161
|
+
error: policyError(
|
|
162
|
+
"trust_policy_invalid",
|
|
163
|
+
filePath,
|
|
164
|
+
new Error(`Invalid trust level for ${JSON.stringify(rulePath)}.`)
|
|
165
|
+
)
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
config[rulePath] = rawLevel;
|
|
169
|
+
}
|
|
170
|
+
return { config };
|
|
171
|
+
}
|
|
172
|
+
__name(parseTrustedFolders, "parseTrustedFolders");
|
|
173
|
+
function semanticRevision(input) {
|
|
174
|
+
const sortedRules = Object.entries(input.trustedFolders).sort(
|
|
175
|
+
([a], [b]) => a.localeCompare(b)
|
|
176
|
+
);
|
|
177
|
+
return createHash("sha256").update(
|
|
178
|
+
JSON.stringify({
|
|
179
|
+
folderTrustEnabled: input.folderTrustEnabled,
|
|
180
|
+
ideTrust: input.ideTrust ?? null,
|
|
181
|
+
trustedFolders: sortedRules,
|
|
182
|
+
settingsError: input.settingsError?.code ?? null,
|
|
183
|
+
trustedFoldersError: input.trustedFoldersError?.code ?? null
|
|
184
|
+
})
|
|
185
|
+
).digest("hex");
|
|
186
|
+
}
|
|
187
|
+
__name(semanticRevision, "semanticRevision");
|
|
188
|
+
async function readDaemonTrustPolicySnapshot() {
|
|
189
|
+
const [user, system, systemDefaults] = await Promise.all([
|
|
190
|
+
readJsonObject(getUserSettingsPath(), MAX_SETTINGS_BYTES, false),
|
|
191
|
+
readJsonObject(getSystemSettingsPath(), MAX_SETTINGS_BYTES, false),
|
|
192
|
+
readJsonObject(getSystemDefaultsPath(), MAX_SETTINGS_BYTES, false)
|
|
193
|
+
]);
|
|
194
|
+
const systemFolderTrust = folderTrustSetting(
|
|
195
|
+
migrateFolderTrustSettings(system.value, "System"),
|
|
196
|
+
getSystemSettingsPath()
|
|
197
|
+
);
|
|
198
|
+
const userFolderTrust = folderTrustSetting(
|
|
199
|
+
migrateFolderTrustSettings(user.value, "User"),
|
|
200
|
+
getUserSettingsPath()
|
|
201
|
+
);
|
|
202
|
+
const defaultsFolderTrust = folderTrustSetting(
|
|
203
|
+
migrateFolderTrustSettings(systemDefaults.value, "SystemDefaults"),
|
|
204
|
+
getSystemDefaultsPath()
|
|
205
|
+
);
|
|
206
|
+
const settingsError = system.error ?? systemFolderTrust.error ?? user.error ?? userFolderTrust.error ?? systemDefaults.error ?? defaultsFolderTrust.error;
|
|
207
|
+
const folderTrustEnabled = systemFolderTrust.value ?? userFolderTrust.value ?? defaultsFolderTrust.value ?? false;
|
|
208
|
+
const trustedFoldersFile = await readJsonObject(
|
|
209
|
+
getTrustedFoldersPath(),
|
|
210
|
+
MAX_TRUSTED_FOLDERS_BYTES,
|
|
211
|
+
true,
|
|
212
|
+
folderTrustEnabled
|
|
213
|
+
);
|
|
214
|
+
const parsedTrustedFolders = parseTrustedFolders(
|
|
215
|
+
trustedFoldersFile.value,
|
|
216
|
+
getTrustedFoldersPath()
|
|
217
|
+
);
|
|
218
|
+
const trustedFoldersError = trustedFoldersFile.error ?? parsedTrustedFolders.error;
|
|
219
|
+
const ideTrust = ideContextStore.get()?.workspaceState?.isTrusted;
|
|
220
|
+
const revision = semanticRevision({
|
|
221
|
+
folderTrustEnabled,
|
|
222
|
+
ideTrust,
|
|
223
|
+
trustedFolders: parsedTrustedFolders.config,
|
|
224
|
+
...settingsError ? { settingsError } : {},
|
|
225
|
+
...trustedFoldersError ? { trustedFoldersError } : {}
|
|
226
|
+
});
|
|
227
|
+
return {
|
|
228
|
+
revision,
|
|
229
|
+
folderTrustEnabled,
|
|
230
|
+
ideTrust,
|
|
231
|
+
trustedFolders: Object.freeze({ ...parsedTrustedFolders.config }),
|
|
232
|
+
...settingsError ? { settingsError } : {},
|
|
233
|
+
...trustedFoldersError ? { trustedFoldersError } : {}
|
|
234
|
+
};
|
|
235
|
+
}
|
|
236
|
+
__name(readDaemonTrustPolicySnapshot, "readDaemonTrustPolicySnapshot");
|
|
237
|
+
function explicitTrustLevel(snapshot, workspaceCwd) {
|
|
238
|
+
const folders = new LoadedTrustedFolders(
|
|
239
|
+
{
|
|
240
|
+
path: getTrustedFoldersPath(),
|
|
241
|
+
config: { ...snapshot.trustedFolders }
|
|
242
|
+
},
|
|
243
|
+
[]
|
|
244
|
+
);
|
|
245
|
+
const effective = folders.isPathTrusted(workspaceCwd);
|
|
246
|
+
if (effective === void 0) return null;
|
|
247
|
+
for (const [rulePath, trustLevel] of Object.entries(
|
|
248
|
+
snapshot.trustedFolders
|
|
249
|
+
)) {
|
|
250
|
+
const preview = new LoadedTrustedFolders(
|
|
251
|
+
{ path: getTrustedFoldersPath(), config: { [rulePath]: trustLevel } },
|
|
252
|
+
[]
|
|
253
|
+
).isPathTrusted(workspaceCwd);
|
|
254
|
+
if (preview === effective) return trustLevel;
|
|
255
|
+
}
|
|
256
|
+
return null;
|
|
257
|
+
}
|
|
258
|
+
__name(explicitTrustLevel, "explicitTrustLevel");
|
|
259
|
+
function evaluateDaemonWorkspaceTrust(snapshot, workspaceCwd, processCwd = process.cwd()) {
|
|
260
|
+
if (snapshot.settingsError) {
|
|
261
|
+
return {
|
|
262
|
+
state: "error",
|
|
263
|
+
targetTrusted: false,
|
|
264
|
+
source: "none",
|
|
265
|
+
explicitTrustLevel: null,
|
|
266
|
+
error: snapshot.settingsError
|
|
267
|
+
};
|
|
268
|
+
}
|
|
269
|
+
if (!snapshot.folderTrustEnabled) {
|
|
270
|
+
return {
|
|
271
|
+
state: "trusted",
|
|
272
|
+
targetTrusted: true,
|
|
273
|
+
source: "disabled",
|
|
274
|
+
explicitTrustLevel: null
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
if (snapshot.ideTrust !== void 0 && arePathsEquivalent(workspaceCwd, processCwd)) {
|
|
278
|
+
return {
|
|
279
|
+
state: snapshot.ideTrust ? "trusted" : "untrusted",
|
|
280
|
+
targetTrusted: snapshot.ideTrust,
|
|
281
|
+
source: "ide",
|
|
282
|
+
explicitTrustLevel: null
|
|
283
|
+
};
|
|
284
|
+
}
|
|
285
|
+
if (snapshot.trustedFoldersError) {
|
|
286
|
+
return {
|
|
287
|
+
state: "error",
|
|
288
|
+
targetTrusted: false,
|
|
289
|
+
source: "none",
|
|
290
|
+
explicitTrustLevel: null,
|
|
291
|
+
error: snapshot.trustedFoldersError
|
|
292
|
+
};
|
|
293
|
+
}
|
|
294
|
+
const folders = new LoadedTrustedFolders(
|
|
295
|
+
{
|
|
296
|
+
path: getTrustedFoldersPath(),
|
|
297
|
+
config: { ...snapshot.trustedFolders }
|
|
298
|
+
},
|
|
299
|
+
[]
|
|
300
|
+
);
|
|
301
|
+
const trusted = folders.isPathTrusted(workspaceCwd);
|
|
302
|
+
return {
|
|
303
|
+
state: trusted === true ? "trusted" : trusted === false ? "untrusted" : "unknown",
|
|
304
|
+
targetTrusted: trusted === true,
|
|
305
|
+
source: trusted === void 0 ? "none" : "file",
|
|
306
|
+
explicitTrustLevel: explicitTrustLevel(snapshot, workspaceCwd)
|
|
307
|
+
};
|
|
308
|
+
}
|
|
309
|
+
__name(evaluateDaemonWorkspaceTrust, "evaluateDaemonWorkspaceTrust");
|
|
310
|
+
|
|
311
|
+
export {
|
|
312
|
+
readDaemonTrustPolicySnapshot,
|
|
313
|
+
evaluateDaemonWorkspaceTrust
|
|
314
|
+
};
|
|
315
|
+
/**
|
|
316
|
+
* @license
|
|
317
|
+
* Copyright 2026 Qwen Team
|
|
318
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
319
|
+
*/
|