@qwen-code/qwen-code 0.23.3 → 0.23.4-dev.codemode-responses.20260914.87437db784
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 +46 -198
- package/bundled/computer-use/references/macos.md +208 -0
- package/bundled/computer-use/references/windows-linux.md +247 -0
- package/bundled/goal-draft/SKILL.md +10 -10
- package/bundled/qc-helper/docs/configuration/settings.md +81 -71
- package/bundled/qc-helper/docs/extension/getting-started-extensions.md +2 -0
- package/bundled/qc-helper/docs/extension/introduction.md +9 -3
- package/bundled/qc-helper/docs/features/_meta.ts +1 -0
- package/bundled/qc-helper/docs/features/agent-board.md +89 -0
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +3 -21
- package/bundled/qc-helper/docs/features/channels/dws.md +5 -1
- package/bundled/qc-helper/docs/features/channels/overview.md +5 -6
- package/bundled/qc-helper/docs/features/code-review.md +18 -4
- package/bundled/qc-helper/docs/features/commands.md +9 -0
- package/bundled/qc-helper/docs/features/computer-use.md +26 -8
- package/bundled/qc-helper/docs/features/cross-session-protocol.md +23 -5
- package/bundled/qc-helper/docs/features/followup-suggestions.md +17 -5
- package/bundled/qc-helper/docs/features/goals.md +22 -18
- package/bundled/qc-helper/docs/features/hooks.md +48 -37
- package/bundled/qc-helper/docs/features/skills.md +33 -3
- package/bundled/qc-helper/docs/features/status-line.md +2 -0
- package/bundled/qc-helper/docs/features/sub-agents.md +27 -0
- package/bundled/qc-helper/docs/qwen-serve.md +7 -3
- package/bundled/review/SKILL.md +20 -10
- package/bundled/review/references/persistence.md +2 -0
- package/bundled/workflow-authoring/SKILL.md +442 -0
- package/bundled/workflow-creator/SKILL.md +1 -1
- package/chunks/{MaxSizedBox-D4LW7RZZ.js → MaxSizedBox-CSMC6NNQ.js} +59 -55
- package/chunks/{StandaloneSessionPicker-ALTTRWUP.js → StandaloneSessionPicker-5G46NROB.js} +83 -79
- package/chunks/{acp-startup-profiler-KEU6VAYR.js → acp-startup-profiler-RUQNTNU5.js} +2 -2
- package/chunks/acp-subagent-executor-4JLSF7SA.js +141 -0
- package/chunks/{acpAgent-BBSW7XZG.js → acpAgent-WJ45JV2S.js} +1026 -355
- package/chunks/{agent-SQ6OY3QD.js → agent-KWNOVXAD.js} +43 -39
- package/chunks/{agent-headless-RI2THRQ7.js → agent-headless-TU5N3GFF.js} +43 -39
- package/chunks/{anthropicContentGenerator-JSKMKS6V.js → anthropicContentGenerator-H5YPXIDE.js} +37 -15
- package/chunks/{artifact-tool-PMYZCYNH.js → artifact-tool-MFGORTWZ.js} +59 -109
- package/chunks/{askUserQuestion-4M4YYIB4.js → askUserQuestion-WS4GUT7C.js} +3 -3
- package/chunks/{bridge-DAFMI72L.js → bridge-PF7UX6MH.js} +63 -58
- package/chunks/{build-63BIOYWK.js → build-5KWQBWEQ.js} +1 -1
- package/chunks/{ca-KC2AISNS.js → ca-GZ4FDJU2.js} +3 -3
- package/chunks/{channel-management-service-OWDXVL7R.js → channel-management-service-AFVIT4VH.js} +8 -8
- package/chunks/{channel-settings-store-4I6JONT7.js → channel-settings-store-3OVAGIC2.js} +68 -64
- package/chunks/{channel-worker-group-F2ZZMLNS.js → channel-worker-group-JR6JOELM.js} +8 -8
- package/chunks/{channel-worker-manager-2SZLJJSJ.js → channel-worker-manager-AVKJEZFL.js} +8 -8
- package/chunks/{channel-worker-supervisor-ZFNWMG6D.js → channel-worker-supervisor-OOYY7BAQ.js} +5 -5
- package/chunks/{chunk-6JACAGYH.js → chunk-2S2WIGCM.js} +1 -1
- package/chunks/{chunk-NRXWJXJ4.js → chunk-2YGR3VN6.js} +15 -15
- package/chunks/{chunk-IUVIBDKU.js → chunk-2YMRRI2C.js} +9 -10
- package/chunks/{chunk-3BTSSIJO.js → chunk-3DOAKZYD.js} +99 -14
- package/chunks/{chunk-F53KKZUD.js → chunk-3LMDSCLU.js} +158 -10
- package/chunks/{chunk-2ZN3O5FT.js → chunk-457DR2MC.js} +6 -6
- package/chunks/{chunk-WG7BL3FY.js → chunk-473RJLIH.js} +1 -1
- package/chunks/{chunk-W5ZQMAEM.js → chunk-4Y2I3CI3.js} +1 -1
- package/chunks/{chunk-HGEUHUEV.js → chunk-54B2LTKP.js} +1 -1
- package/chunks/{chunk-IRH27ZC2.js → chunk-5EZRLTLQ.js} +4 -4
- package/chunks/{chunk-DLH7YIX6.js → chunk-5FK4MSHB.js} +3 -3
- package/chunks/{chunk-CUEXOHQH.js → chunk-5ODRE7E5.js} +9 -15
- package/chunks/{chunk-532WHF4F.js → chunk-5VQR2DD7.js} +2 -2
- package/chunks/{chunk-3KQBQ6FM.js → chunk-63WKMKVD.js} +190 -28
- package/chunks/{chunk-YBUMTY7B.js → chunk-66N6C4EH.js} +1 -1
- package/chunks/{chunk-MLQNSPRZ.js → chunk-6MLDTOHU.js} +15 -5
- package/chunks/{chunk-SBRX4BDI.js → chunk-6NKDU7YL.js} +2 -2
- package/chunks/{chunk-3UXUOFO6.js → chunk-6TMXX4Z4.js} +9 -10
- package/chunks/{chunk-Y2MYW47X.js → chunk-6WXVEDT2.js} +9 -2
- package/chunks/{chunk-ZHKTKHMO.js → chunk-7MIBD3LG.js} +1 -1
- package/chunks/{chunk-EVTNACMT.js → chunk-A6QMKS5S.js} +12 -12
- package/chunks/{chunk-NOAG7N22.js → chunk-A6YU6R5N.js} +2 -2
- package/chunks/{chunk-76RGWKLS.js → chunk-ABNX6E6K.js} +1 -1
- package/chunks/chunk-ACHCT36C.js +28 -0
- package/chunks/{chunk-NE624IVP.js → chunk-ADQUK6WA.js} +1 -1
- package/chunks/{chunk-PLLIWEM3.js → chunk-AEWCOE64.js} +2 -2
- package/chunks/{chunk-3FPYT6QC.js → chunk-ARDHE6MM.js} +23 -0
- package/chunks/{chunk-LILGKQ4B.js → chunk-AXZMWAJV.js} +156 -26
- package/chunks/{chunk-SYLECP23.js → chunk-B776VKDA.js} +4 -4
- package/chunks/{chunk-AC6KDLH3.js → chunk-BNYQHLPR.js} +1 -1
- package/chunks/{chunk-BZM5U74J.js → chunk-BS7ON54G.js} +724 -468
- package/chunks/{chunk-TPKQIA7G.js → chunk-BSIOCNDK.js} +1 -1
- package/chunks/{chunk-U7O65WKL.js → chunk-BW2SMO6L.js} +1 -1
- package/chunks/{chunk-POC3YMHG.js → chunk-BY6CE34S.js} +4 -4
- package/chunks/{chunk-RLLRJJDR.js → chunk-C3VNHDWJ.js} +2 -2
- package/chunks/{chunk-WBCPROWX.js → chunk-C4HBZQNH.js} +1 -1
- package/chunks/{chunk-MSNHNAQZ.js → chunk-C5ABXOC2.js} +3 -3
- package/chunks/{chunk-NOO4QFXM.js → chunk-C75BXMPM.js} +1 -3
- package/chunks/chunk-CCWWPFZJ.js +191 -0
- package/chunks/chunk-CFMZLE3L.js +75 -0
- package/chunks/{chunk-N7VWZDWW.js → chunk-CFSBWJBB.js} +4462 -3840
- package/chunks/{chunk-KOKPXIAN.js → chunk-CL7JONZN.js} +3 -3
- package/chunks/{chunk-AXTFYDXT.js → chunk-CXXAZ2LZ.js} +1 -1
- package/chunks/{chunk-JYKWOREU.js → chunk-DBUOMHLZ.js} +13 -3
- package/chunks/{chunk-R4Q2PEFV.js → chunk-DLJBYORJ.js} +1 -1
- package/chunks/{chunk-DT75RKNH.js → chunk-DNVA2MQ2.js} +3 -3
- package/chunks/{chunk-J3TJH52D.js → chunk-DOTF2PF2.js} +1 -1
- package/chunks/{chunk-HGAELO7B.js → chunk-DQMBQCTY.js} +2 -2
- package/chunks/{chunk-2ALXPGB4.js → chunk-E6IR653O.js} +1 -1
- package/chunks/{chunk-ZKYR7QS4.js → chunk-EDB556X7.js} +2 -2
- package/chunks/chunk-EKJXDLDD.js +32 -0
- package/chunks/{chunk-NUQVB25K.js → chunk-EKMJR7M3.js} +2 -2
- package/chunks/{chunk-7QYWGTHB.js → chunk-EPVEPTI3.js} +44 -151
- package/chunks/{chunk-GCDXVPFK.js → chunk-EZSSJSKR.js} +31 -7
- package/chunks/{chunk-S6Q6Q4P2.js → chunk-FBDHP23D.js} +1 -1
- package/chunks/{chunk-UKZ45TJL.js → chunk-FFBP5POK.js} +420 -219
- package/chunks/{chunk-3I7W2POO.js → chunk-FGROOEKM.js} +5 -40
- package/chunks/{chunk-HNLMYDQE.js → chunk-FMLBBXHB.js} +13 -9
- package/chunks/{chunk-SSGAAWLY.js → chunk-GCV4NOHV.js} +95 -73
- package/chunks/{chunk-ALMR3E6Q.js → chunk-GDWE23OR.js} +3 -3
- package/chunks/{chunk-XBZTAGB7.js → chunk-GMN73IMT.js} +1 -1
- package/chunks/{chunk-IAEXTMED.js → chunk-GNV2SFO7.js} +173 -7
- package/chunks/{chunk-CXTPVBFA.js → chunk-GSS4SZNG.js} +100 -17
- package/chunks/chunk-GXN7DWZZ.js +154 -0
- package/chunks/{chunk-SODMFNAR.js → chunk-H23UWPF7.js} +5 -5
- package/chunks/{chunk-6HUXPLB5.js → chunk-HEOH7JZY.js} +5 -5
- package/chunks/{chunk-DTNV6UZY.js → chunk-HFJSQ4GL.js} +10 -24
- package/chunks/{chunk-GOXQL4YH.js → chunk-HWRXJQ6B.js} +2 -2
- package/chunks/{chunk-VZUCTJ2P.js → chunk-I6YJZGHS.js} +10 -10
- package/chunks/{chunk-RZHU3K6M.js → chunk-IAS753HG.js} +2 -20
- package/chunks/{chunk-EDMXGXAK.js → chunk-IBRQG2MP.js} +10 -13
- package/chunks/chunk-INGBUYL6.js +230 -0
- package/chunks/{chunk-7BXXIQG4.js → chunk-J73WJIMT.js} +36 -72
- package/chunks/{chunk-XGYHNWL3.js → chunk-J7LBAKDH.js} +3 -3
- package/chunks/{chunk-Z3GF56ME.js → chunk-JAYWZWZF.js} +3 -3
- package/chunks/{chunk-DYFOSJHU.js → chunk-JBFC2644.js} +2756 -1153
- package/chunks/{chunk-Q5BD56BW.js → chunk-JPCYCFYG.js} +7 -7
- package/chunks/{chunk-LG5Y4OWO.js → chunk-JRHKM3YQ.js} +2 -2
- package/chunks/{chunk-NHCZJQE4.js → chunk-JZKBMADP.js} +6 -6
- package/chunks/{chunk-MF6E7FSA.js → chunk-K7CQWBLT.js} +8 -201
- package/chunks/{chunk-K2OJUPOE.js → chunk-KP2FHIFR.js} +12 -0
- package/chunks/{chunk-ZU47FBOC.js → chunk-KSIOXYVX.js} +126 -12
- package/chunks/{chunk-IV7GDNKC.js → chunk-KZCK5JUN.js} +4 -4
- package/chunks/{chunk-3XLK2QMY.js → chunk-L3S2Y2FF.js} +59 -16
- package/chunks/{chunk-ZW2EUO2A.js → chunk-L6DIANLD.js} +1 -1
- package/chunks/{chunk-6W4HBUA2.js → chunk-LATAUG2M.js} +1 -1
- package/chunks/{chunk-RWVD5RRY.js → chunk-LBDASOPR.js} +3 -3
- package/chunks/{chunk-OX7IZ2G5.js → chunk-LF5AD7PY.js} +4 -4
- package/chunks/{chunk-NMRCXKQ5.js → chunk-LKCNETDW.js} +3 -3
- package/chunks/chunk-LMJSPC55.js +260 -0
- package/chunks/{chunk-X6K77VHC.js → chunk-LWWRJRCD.js} +1 -1
- package/chunks/{chunk-UXEO7E3V.js → chunk-LYD3T3H7.js} +1 -0
- package/chunks/{chunk-KFZYGSJN.js → chunk-M3YNPR56.js} +3 -3
- package/chunks/{chunk-HBQ2NXOU.js → chunk-MDG6GKSE.js} +2 -2
- package/chunks/{chunk-E4UEO3XM.js → chunk-ME4JBHSB.js} +324 -2
- package/chunks/{chunk-BV6Q5HMY.js → chunk-MJHLKWGJ.js} +8 -7
- package/chunks/{chunk-NFYEQRLG.js → chunk-MQRLLBMQ.js} +1 -1
- package/chunks/{chunk-O4KNCAX4.js → chunk-NCPFOLM2.js} +11 -0
- package/chunks/{chunk-2SZH22YO.js → chunk-NJ2OFVUX.js} +115 -97
- package/chunks/{chunk-DAWWT2ID.js → chunk-NN4EC2WO.js} +1374 -2164
- package/chunks/{chunk-6MBXY6WM.js → chunk-NRQI3PGS.js} +1 -1
- package/chunks/{chunk-HBU7EKY4.js → chunk-NRUKL236.js} +45 -15
- package/chunks/{chunk-53GWJOLP.js → chunk-NTCFKGQF.js} +3 -1
- package/chunks/{chunk-3CZ2BQV6.js → chunk-NXUZFW3G.js} +49 -19
- package/chunks/{chunk-X7UJKOHZ.js → chunk-OMDXAHCT.js} +4 -6
- package/chunks/{chunk-5GLDOLNQ.js → chunk-OWUAZXXN.js} +4 -3
- package/chunks/{chunk-2UWQX4FP.js → chunk-OZEV3R3S.js} +1 -1
- package/chunks/{acp-subagent-executor-LEUN3N7N.js → chunk-PAPBT3WP.js} +11 -110
- package/chunks/{chunk-7ICHPMBQ.js → chunk-PHSQVB6D.js} +4 -4
- package/chunks/{chunk-FCQJLMA2.js → chunk-Q3TFRP5G.js} +178 -8
- package/chunks/{chunk-YQHLFCPU.js → chunk-Q5CCYZD3.js} +32 -24
- package/chunks/chunk-QQL5BFOL.js +1416 -0
- package/chunks/{chunk-ZKZHSB5W.js → chunk-QR4Q425T.js} +9 -9
- package/chunks/{chunk-J6MB5ZHZ.js → chunk-QZW6WRB7.js} +2 -1
- package/chunks/{chunk-TP6FYVQT.js → chunk-RSWBT7AZ.js} +33 -1
- package/chunks/{chunk-2PJRI3EH.js → chunk-RVOD66ID.js} +218 -43
- package/chunks/{chunk-W5FIP7FC.js → chunk-S3PU3CNW.js} +5 -5
- package/chunks/chunk-S7UQ3V2H.js +87 -0
- package/chunks/{chunk-N6VQ37ZZ.js → chunk-SFL6U7U7.js} +1 -1
- package/chunks/{chunk-MOS5OAOG.js → chunk-SROLVJFY.js} +6 -6
- package/chunks/{chunk-HUXPEUFL.js → chunk-SYROIHU7.js} +1 -1
- package/chunks/{chunk-E7LB57MB.js → chunk-T3LUMYFP.js} +6 -6
- package/chunks/{chunk-PSPAM24S.js → chunk-TBSCTWKF.js} +6 -0
- package/chunks/{chunk-5KI7ZDTB.js → chunk-TV5WDW7R.js} +24 -12
- package/chunks/{chunk-NMCDMLHL.js → chunk-TXUJOKVR.js} +50 -35
- package/chunks/{chunk-NHJKAR6E.js → chunk-TYWLBEL2.js} +972 -18
- package/chunks/chunk-U6H3XTFA.js +95 -0
- package/chunks/{chunk-GSILBZLN.js → chunk-U7RWQBGZ.js} +2 -2
- package/chunks/{chunk-7APZIRH3.js → chunk-V3CMBOQ6.js} +5 -5
- package/chunks/{chunk-JXNIF2O5.js → chunk-V545KI73.js} +1 -1
- package/chunks/chunk-VGY2RGXL.js +100 -0
- package/chunks/{chunk-TBEXLLAO.js → chunk-VRQZESKP.js} +1 -1
- package/chunks/{chunk-FN3JNDRU.js → chunk-VVI7MK3V.js} +3 -3
- package/chunks/{chunk-EUURTIV6.js → chunk-WBSJ6VPZ.js} +10 -2
- package/chunks/{chunk-NLNQNBZ2.js → chunk-WD6YQI5M.js} +1 -1
- package/chunks/chunk-WFNEY5G7.js +347 -0
- package/chunks/{chunk-XKBFYTCD.js → chunk-WK6DEH3Q.js} +46 -0
- package/chunks/{chunk-36HCNKDS.js → chunk-WKVZES7O.js} +65 -14
- package/chunks/{chunk-BWAMMKIS.js → chunk-WLLRNQVT.js} +135 -6
- package/chunks/{chunk-MHAADZOZ.js → chunk-WMSP3XZK.js} +3 -3
- package/chunks/{chunk-IL5M5NYD.js → chunk-WUTXSXPP.js} +11 -9
- package/chunks/{chunk-NJQTG2G3.js → chunk-XE5ZFBVD.js} +11 -11
- package/chunks/{chunk-OLTN767L.js → chunk-XO3Z27IL.js} +2 -2
- package/chunks/{chunk-VX63RJXE.js → chunk-XX5HQLCZ.js} +7 -0
- package/chunks/{chunk-2Z3T52OC.js → chunk-Y5TM7SBV.js} +7 -2
- package/chunks/{chunk-V2P3DOQR.js → chunk-YDFOHRS5.js} +1 -1
- package/chunks/{chunk-QMUYLYT5.js → chunk-YGFJ6BRT.js} +1 -1
- package/chunks/{chunk-LK2WUCDQ.js → chunk-YM6KUQ2S.js} +1 -1
- package/chunks/{chunk-F42YYSCK.js → chunk-YVF4PKCV.js} +8 -8
- package/chunks/{chunk-LDVNJZGH.js → chunk-Z2H5HQS3.js} +17 -8
- package/chunks/chunk-Z72PLR74.js +36 -0
- package/chunks/{chunk-BWQLXU37.js → chunk-ZDHXRKRG.js} +381 -86
- package/chunks/{chunk-BHTYRHJF.js → chunk-ZJ7JQUGY.js} +4 -1
- package/chunks/{chunk-4ALNJDHL.js → chunk-ZKIAGIGH.js} +87 -4
- package/chunks/{chunk-VG3Q2NC4.js → chunk-ZNI3YJHS.js} +32 -12
- package/chunks/chunk-ZRZZLM37.js +2780 -0
- package/chunks/{chunk-Q2LVVIKF.js → chunk-ZZUXUBEB.js} +29 -12
- package/chunks/codex-subagent-executor-SM3TUSBA.js +586 -0
- package/chunks/{config-utils-L6KLDYIV.js → config-utils-JHKHFOG6.js} +60 -56
- package/chunks/{contextCommand-UYEH7NIU.js → contextCommand-XE4NDYQW.js} +58 -54
- package/chunks/{core-runtime-NVHT3Z3V.js → core-runtime-PNCWH3RE.js} +58 -55
- package/chunks/{create-sub-session-TIGCFGCS.js → create-sub-session-MSGNIM37.js} +5 -2
- package/chunks/{create-sub-session-YWASE5VH.js → create-sub-session-P7E5Y3HY.js} +169 -89
- package/chunks/{cron-create-AKWX67FO.js → cron-create-U2JJ5CCF.js} +3 -3
- package/chunks/{cron-delete-XPB6IYZJ.js → cron-delete-7DM4LJWD.js} +2 -2
- package/chunks/{cron-list-XBKO4WU5.js → cron-list-VCUSZK2Y.js} +2 -2
- package/chunks/{daemon-G5TYKZD6.js → daemon-NJB4PWZ7.js} +3 -1
- package/chunks/{daemon-git-worktree-guard-FOW4RQSK.js → daemon-git-worktree-guard-JFD5VZRN.js} +58 -54
- package/chunks/{daemon-status-provider-O5KQZYMP.js → daemon-status-provider-A3VFVFWW.js} +68 -63
- package/chunks/{daemon-trust-policy-3ATXEON7.js → daemon-trust-policy-NPZ47MZH.js} +64 -60
- package/chunks/{daemon-trust-policy-monitor-7MCNDNEC.js → daemon-trust-policy-monitor-XG2CHL3Z.js} +64 -60
- package/chunks/{de-UU2YTO37.js → de-VGY3VNBU.js} +3 -3
- package/chunks/{deferred-core-runtime-JK5IXL5K.js → deferred-core-runtime-V42EMU27.js} +56 -52
- package/chunks/{discovery-XP4RMDUM.js → discovery-5KUEPR65.js} +2 -2
- package/chunks/{display-image-NAH3AZ63.js → display-image-QTHALY6N.js} +3 -3
- package/chunks/{dist-KLZ7XGEQ.js → dist-2QYIVNS6.js} +1 -4
- package/chunks/{dist-AHJYPSJL.js → dist-GUB7QRYA.js} +2 -5
- package/chunks/{dist-ZXTZTE54.js → dist-MPUZZOG5.js} +4 -17
- package/chunks/{dist-F2DVGTL3.js → dist-NIOJXMGY.js} +111 -101
- package/chunks/{dist-KJGRVIGJ.js → dist-PA7WPFVE.js} +5 -36
- package/chunks/{dist-AIKC5E5P.js → dist-SE4J6Z4O.js} +43 -669
- package/chunks/{dist-H6G3K26N.js → dist-T6DDPDLQ.js} +14 -34
- package/chunks/{dist-GWNQVPZT.js → dist-TFGETXFN.js} +10 -33
- package/chunks/{dist-ZA52JXAS.js → dist-VDLSBCLM.js} +1 -5
- package/chunks/{edit-SY35KYIE.js → edit-E2ZGJDBJ.js} +46 -42
- package/chunks/{en-CAJHTIQT.js → en-E5ZO5TZW.js} +5 -3
- package/chunks/{enter-worktree-54L5QJ3N.js → enter-worktree-CAARFWBI.js} +6 -5
- package/chunks/{enterPlanMode-HXX6KQJR.js → enterPlanMode-442YAAZB.js} +43 -39
- package/chunks/{environment-DKXHG4HB.js → environment-DCJ5FVHM.js} +59 -55
- package/chunks/{errors-ADY7LQJJ.js → errors-ZWTDW2NJ.js} +58 -54
- package/chunks/exec-RPKEY6HP.js +505 -0
- package/chunks/{exit-worktree-EORJDKDS.js → exit-worktree-JXGGUOBP.js} +6 -5
- package/chunks/{exitPlanMode-HSK2CQI6.js → exitPlanMode-4PLQOFOO.js} +43 -39
- package/chunks/{fast-path-U636VWN2.js → fast-path-DBSGDGB3.js} +10 -10
- package/chunks/{fast-path-settings-V7MI7EZJ.js → fast-path-settings-XDYX7X5Z.js} +2 -2
- package/chunks/{fr-HKNWVXRJ.js → fr-UAZJJH5N.js} +3 -3
- package/chunks/{glob-GUGGTH5L.js → glob-VWOE4W7K.js} +43 -39
- package/chunks/{goal-tools-PXYRSQGX.js → goal-tools-K6SIBXMB.js} +49 -41
- package/chunks/{grep-3PKFKLCA.js → grep-H2I33VAO.js} +8 -3
- package/chunks/{handleAutoUpdate-5KHS4HIN.js → handleAutoUpdate-NCC3XELY.js} +61 -57
- package/chunks/{i18n-KSGKMUPT.js → i18n-GO7JI4PT.js} +57 -53
- package/chunks/{image-gen-OCCR2WWU.js → image-gen-5G2TQ3DY.js} +6 -5
- package/chunks/{initializer-YYT5XEZF.js → initializer-BXKAW5A6.js} +64 -60
- package/chunks/{installationInfo-UNSBPYW2.js → installationInfo-5JONIX62.js} +57 -53
- package/chunks/{ja-GJS5RZGU.js → ja-2RITCMAJ.js} +3 -3
- package/chunks/list-QW74LCLS.js +133 -0
- package/chunks/{list-agents-QLDXS5OD.js → list-agents-EWDCEPIW.js} +3 -3
- package/chunks/{llm-XGGLBGPH.js → llm-FJHSMJTM.js} +161 -125
- package/chunks/{llm-content-generator-ZHQQT5W7.js → llm-content-generator-3VLLPQS4.js} +14 -7
- package/chunks/{loadedSettingsAdapter-3DXLASK7.js → loadedSettingsAdapter-OLMQSKVC.js} +64 -60
- package/chunks/{loggingContentGenerator-V72OCCJO.js → loggingContentGenerator-IMLIJULY.js} +47 -43
- package/chunks/{loop-wakeup-HHMYIC7Z.js → loop-wakeup-VG6CGBQA.js} +4 -4
- package/chunks/{ls-N7ABR6HI.js → ls-6ZB3BEIR.js} +1 -1
- package/chunks/{lsp-LTOFWG5P.js → lsp-M54FQARP.js} +5 -1
- package/chunks/{managed-npm-update-HV5LPZH2.js → managed-npm-update-LXLBWCNA.js} +57 -53
- package/chunks/mcp-FOXA3372.js +127 -0
- package/chunks/model-configuration-SCOI2KPF.js +140 -0
- package/chunks/modelConfigUtils-EA44S64C.js +119 -0
- package/chunks/{monitor-TLBNM4MV.js → monitor-TJAHYCCY.js} +43 -39
- package/chunks/{nonInteractiveCli-LSJSQ2W4.js → nonInteractiveCli-QH2HABWC.js} +112 -107
- package/chunks/{notebook-edit-OSPOLZP6.js → notebook-edit-WEMSBUBS.js} +45 -41
- package/chunks/{openaiContentGenerator-BE4S5TRD.js → openaiContentGenerator-WD5DWYOA.js} +24 -19
- package/chunks/{openaiResponsesContentGenerator-RTCAJ5V5.js → openaiResponsesContentGenerator-AWRYZLJU.js} +110 -19
- package/chunks/{pidfile-H32FEPWA.js → pidfile-TQL2LCEG.js} +56 -52
- package/chunks/{processUtils-SSLIPDEA.js → processUtils-6ZU56DCI.js} +2 -2
- package/chunks/{prompt-terminal-ledger-I5SLL6UF.js → prompt-terminal-ledger-3HAKHXFV.js} +57 -53
- package/chunks/{pt-FXMYXEUV.js → pt-5ZF7ZQUV.js} +3 -3
- package/chunks/{qwenContentGenerator-TMQC623Z.js → qwenContentGenerator-3OIZQZLC.js} +47 -43
- package/chunks/{qwenOAuth2-3ZRQHHTC.js → qwenOAuth2-WIEUEFEY.js} +5 -4
- package/chunks/{read-file-T2QAIZE2.js → read-file-2PWWL6J2.js} +9 -8
- package/chunks/{read-mcp-resource-B37WANAQ.js → read-mcp-resource-LPSWXVOD.js} +1 -1
- package/chunks/{record-artifact-OAXWXZ5D.js → record-artifact-PXMNP7GZ.js} +3 -3
- package/chunks/{record-source-D7R7X3GT.js → record-source-2GSY5JD5.js} +6 -6
- package/chunks/{report-findings-AR3VC6EQ.js → report-findings-W6GR7SYZ.js} +4 -4
- package/chunks/{request-shutdown-IKNWTX5M.js → request-shutdown-53SNYGVR.js} +5 -5
- package/chunks/{resumeHistoryUtils-QLKDH5GY.js → resumeHistoryUtils-S4TEUTKE.js} +63 -59
- package/chunks/{ripGrep-YGWL7KCV.js → ripGrep-5NMGLMLX.js} +13 -11
- package/chunks/{ru-RMHURE5U.js → ru-7BNZFQKG.js} +3 -3
- package/chunks/{run-qwen-serve-26KZDECC.js → run-qwen-serve-6MGYRK4V.js} +314 -127
- package/chunks/{runtime-BMEIVDDG.js → runtime-ZJYUQCPP.js} +69 -65
- package/chunks/{scheduled-tasks-NCFPP6VQ.js → scheduled-tasks-5MKF4EV3.js} +66 -60
- package/chunks/{scheduler-47TVMUVN.js → scheduler-72DZWRH5.js} +58 -54
- package/chunks/{sdk-exporters-http-VWTF4W6K.js → sdk-exporters-http-3R2TRQHE.js} +2 -1
- package/chunks/{sdk-impl-G6FVTBQZ.js → sdk-impl-4WF3VZ2F.js} +3 -3
- package/chunks/{send-message-TWOGWCBG.js → send-message-UMJKN27Q.js} +7 -7
- package/chunks/{serve-KL3G6LQQ.js → serve-7ZDMMA7I.js} +66 -62
- package/chunks/{server-LBPYXZ5G.js → server-ONK5RTEV.js} +783 -350
- package/chunks/{session-YG6742LO.js → session-XQW2LM4S.js} +117 -112
- package/chunks/{session-attachments-root-OUBQDYC4.js → session-attachments-root-Q5IUCMQV.js} +56 -52
- package/chunks/{session-pr-refresh-EKGMYNAW.js → session-pr-refresh-MVECWT3W.js} +66 -60
- package/chunks/{settings-DDNHJX2L.js → settings-DL6K2HQ3.js} +67 -63
- package/chunks/{shell-KUCXWITU.js → shell-BLP25QJU.js} +43 -39
- package/chunks/{skill-JQLKPNWZ.js → skill-7KURUNLD.js} +128 -23
- package/chunks/{skill-settings-XERQCUXZ.js → skill-settings-MY76LM46.js} +72 -60
- package/chunks/{spawnChannel-GQ45QFGB.js → spawnChannel-IJLH3Z74.js} +60 -55
- package/chunks/{standalone-update-PRF3ILGZ.js → standalone-update-YQKN7VNO.js} +58 -54
- package/chunks/{start-opentui-ui-JDSOZE3N.js → start-opentui-ui-ORNGKZTG.js} +2693 -2160
- package/chunks/{startInteractiveUI-RRW3JVHN.js → startInteractiveUI-PRLIKB4U.js} +1610 -1773
- package/chunks/{syntheticOutput-F6F27JMK.js → syntheticOutput-EX5L5GYI.js} +2 -2
- package/chunks/{task-create-Y623TBHB.js → task-create-75HVPEAH.js} +7 -7
- package/chunks/{task-list-FCPEEGWL.js → task-list-ZLJSMRFA.js} +2 -2
- package/chunks/{task-stop-QTKZXLPH.js → task-stop-MD7P6QGK.js} +1 -1
- package/chunks/{task-update-YLSXF25N.js → task-update-RI7QNVDP.js} +20 -13
- package/chunks/{team-create-5DRLOLOE.js → team-create-ANLKOQ44.js} +43 -39
- package/chunks/{team-delete-S7TLHZCF.js → team-delete-RIDINW6I.js} +1 -1
- package/chunks/{team-plan-approval-MWSGAL5T.js → team-plan-approval-EFUENI6Y.js} +43 -39
- package/chunks/{terminal-image-renderer-H7PD4FQW.js → terminal-image-renderer-CXMFIWKC.js} +58 -54
- package/chunks/{theme-manager-7AV73D6R.js → theme-manager-JUFYQDQQ.js} +56 -52
- package/chunks/{todoWrite-5QI2H2FW.js → todoWrite-XSTG2VT5.js} +6 -3
- package/chunks/{tool-search-UGYTBLUV.js → tool-search-SNCEA4VA.js} +17 -12
- package/chunks/{total-session-admission-JIHSTJ5S.js → total-session-admission-UHYNUO3L.js} +63 -58
- package/chunks/{tree-sitter-4D7QS7F6.js → tree-sitter-NZ3QACD7.js} +1 -1
- package/chunks/{tree-sitter-bash-VEJGF5XF.js → tree-sitter-bash-WXHLMORC.js} +1 -1
- package/chunks/{trustedFolders-5VCBXFOP.js → trustedFolders-YBR5URPG.js} +57 -53
- package/chunks/{update-relaunch-4LF3APCV.js → update-relaunch-L6MTSN76.js} +5 -5
- package/chunks/{updateCheck-4T3WUE5F.js → updateCheck-Z3SPZXHC.js} +60 -56
- package/chunks/{useAutoAcceptIndicator-UMGB64Z6.js → useAutoAcceptIndicator-PR5XGMO6.js} +68 -64
- package/chunks/{validateNonInterActiveAuth-GFJ72U2C.js → validateNonInterActiveAuth-KFLTWEYW.js} +109 -104
- package/chunks/{version-EAAZN4T2.js → version-NGAKFVUF.js} +1 -1
- package/chunks/{web-fetch-VRU3A2NI.js → web-fetch-WPGTHGU5.js} +15 -13
- package/chunks/web-search-JT63IJJV.js +39 -0
- package/chunks/{web-shell-static-CCN4JZEE.js → web-shell-static-T7UGLVE4.js} +2 -7
- package/chunks/{workflow-UHPFALVZ.js → workflow-EB63BAL4.js} +179 -79
- package/chunks/workspace-providers-status-NEPR67D2.js +133 -0
- package/chunks/{workspace-registration-store-A7RGKW62.js → workspace-registration-store-CFWXOMGH.js} +2 -2
- package/chunks/{workspace-registry-C2NGE6SD.js → workspace-registry-6KRZXOGB.js} +63 -58
- package/chunks/{workspace-runtime-coordinator-QKMZ24YF.js → workspace-runtime-coordinator-SP4X3UVH.js} +66 -59
- package/chunks/{workspace-service-RQTTAGGC.js → workspace-service-PRMYJTTV.js} +70 -65
- package/chunks/workspace-skills-status-VYTZJ5MB.js +130 -0
- package/chunks/{workspace-trust-reconciler-KFWATZUU.js → workspace-trust-reconciler-B4QMGDMI.js} +73 -68
- package/chunks/{write-file-DPVB2SBQ.js → write-file-EGBMW7TS.js} +45 -41
- package/chunks/{zh-TW-2K2WRFPY.js → zh-TW-7PRVUGLW.js} +5 -3
- package/chunks/{zh-S5V3Z5CR.js → zh-V2EYTYJP.js} +5 -3
- package/chunks/{zoom-image-S7AWLAPC.js → zoom-image-UR6K2LDR.js} +11 -10
- package/cli.js +18 -17
- package/codeModeHost.js +4425 -0
- package/export-transcript-document.css +1 -1
- package/export-transcript-document.js +151 -151
- package/locales/ca.js +5 -6
- package/locales/de.js +5 -6
- package/locales/en.js +7 -6
- package/locales/fr.js +6 -6
- package/locales/ja.js +5 -6
- package/locales/pt.js +5 -6
- package/locales/ru.js +6 -6
- package/locales/zh-TW.js +7 -6
- package/locales/zh.js +7 -6
- package/package.json +4 -3
- package/web-shell/assets/{abnfDiagram-VCTEODGH-nU24rpIE.js → abnfDiagram-VCTEODGH-S_JCiANq.js} +1 -1
- package/web-shell/assets/{arc-D1hTu8QI.js → arc-DP-839Xn.js} +1 -1
- package/web-shell/assets/architectureDiagram-5GKGNRK7-C8rCd2KK.js +36 -0
- package/web-shell/assets/blockDiagram-NRAW4CY4-DQR82jwr.js +129 -0
- package/web-shell/assets/{c4Diagram-UCG6FXSJ-kEFoC1ei.js → c4Diagram-UCG6FXSJ-D21PNMRP.js} +4 -4
- package/web-shell/assets/channel-BgGrpX_z.js +1 -0
- package/web-shell/assets/{chunk-2Q5K7J3B-DbT9wS7j.js → chunk-2Q5K7J3B-KdDInGLi.js} +1 -1
- package/web-shell/assets/{chunk-5VM5RSS4-CNbULt6O.js → chunk-5VM5RSS4-ltb7zRmH.js} +1 -1
- package/web-shell/assets/{chunk-F27PBJKO-CbQRy4Tb.js → chunk-F27PBJKO-DcpQA0Ng.js} +1 -1
- package/web-shell/assets/chunk-G27WJ6UU-C8NDZxcy.js +231 -0
- package/web-shell/assets/chunk-JWPE2WC7-hXhhHTs1.js +1 -0
- package/web-shell/assets/chunk-LCL6LL3I-CLaOR-Hl.js +206 -0
- package/web-shell/assets/chunk-POPQ4Y6H-Y5_qlB1N.js +1 -0
- package/web-shell/assets/{chunk-SVP7TREG-DyBb2Axj.js → chunk-SVP7TREG-BWX2Voh7.js} +4 -4
- package/web-shell/assets/{chunk-XXDRQBXY-BIA0eb5B.js → chunk-XXDRQBXY-1wmj_kXI.js} +1 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-jUH7ADYs.js +1 -0
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-jUH7ADYs.js +1 -0
- package/web-shell/assets/cose-bilkent-JH36ORCC-DpLc-cdd.js +1 -0
- package/web-shell/assets/cynefin-OW5HDTMX-DhxGiPZW.js +178 -0
- package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-LENf_IUy.js → cynefinDiagram-5FMLGOSQ-Dl3jfBry.js} +1 -1
- package/web-shell/assets/{cytoscape.esm-CUqq0XTU.js → cytoscape.esm-DJK6lGiH.js} +3 -3
- package/web-shell/assets/dagre-3AP2YEHR-C8FA8vJk.js +4 -0
- package/web-shell/assets/diagram-S7CK7UJ4-D-quIUtW.js +30 -0
- package/web-shell/assets/diagram-UQ7AKVKN-Bjo09Uts.js +41 -0
- package/web-shell/assets/diagram-VSXAHHWV-IoI3ttq4.js +3 -0
- package/web-shell/assets/diagram-VX7I27RA-BKyOZ5SO.js +24 -0
- package/web-shell/assets/diagram-Z3DM3KII-Cu_OHEhw.js +24 -0
- package/web-shell/assets/{ebnfDiagram-PWID7BFC-BGpiquRm.js → ebnfDiagram-PWID7BFC-UVB-bbPg.js} +1 -1
- package/web-shell/assets/{erDiagram-SSCWMZ5O-D0besu_U.js → erDiagram-SSCWMZ5O-l8drddto.js} +13 -13
- package/web-shell/assets/flowDiagram-A5DVABFB-DU1I_VAI.js +168 -0
- package/web-shell/assets/{ganttDiagram-EL5Y4UJY-CNlsAeNr.js → ganttDiagram-EL5Y4UJY-BLRH05uB.js} +1 -1
- package/web-shell/assets/gitGraphDiagram-WWUBYQGX-Czg_BkRE.js +106 -0
- package/web-shell/assets/index-CmMV8Jla.js +3 -0
- package/web-shell/assets/{index-CGT341lL.js → index-DohPy72Z.js} +1 -1
- package/web-shell/assets/index-DyMtNYuu.js +2207 -0
- package/web-shell/assets/index-n6N-2a3v.css +36 -0
- package/web-shell/assets/{infoDiagram-RXCK75RN-Bpai64Ll.js → infoDiagram-RXCK75RN-BpBvjkro.js} +1 -1
- package/web-shell/assets/ishikawaDiagram-5VMMS53U-phy1l3jm.js +70 -0
- package/web-shell/assets/{journeyDiagram-EYS64GPL-iz_DKgFX.js → journeyDiagram-EYS64GPL-oY-9LgVS.js} +1 -1
- package/web-shell/assets/kanban-definition-3QL26DDD-slZoy-sc.js +89 -0
- package/web-shell/assets/{layout-qEvKgnvU.js → layout-0hnn_P9l.js} +1 -1
- package/web-shell/assets/{linear-C6lklGdq.js → linear-7Wqe8DRy.js} +1 -1
- package/web-shell/assets/mermaid.core-BaK8n0bq.js +312 -0
- package/web-shell/assets/mindmap-definition-FBJOCRG2-BedUdy_E.js +96 -0
- package/web-shell/assets/{pegDiagram-XKGWAZYB-BhD0q0i6.js → pegDiagram-XKGWAZYB-DQLRdmxq.js} +1 -1
- package/web-shell/assets/pieDiagram-E7YTZNPT-UC20w9-5.js +39 -0
- package/web-shell/assets/quadrantDiagram-AXDQQJYC-CQx2Hmk3.js +7 -0
- package/web-shell/assets/qwen-code-notification-BRVagufF.png +0 -0
- package/web-shell/assets/{railroadDiagram-O6MQD6OU-E1g2KIFK.js → railroadDiagram-O6MQD6OU-2UEJe_y-.js} +1 -1
- package/web-shell/assets/{requirementDiagram-EFPCY7ZU-CuerYJOe.js → requirementDiagram-EFPCY7ZU-DOAJggB4.js} +13 -13
- package/web-shell/assets/{sankeyDiagram-P5KCCOFB-CqWyCZGA.js → sankeyDiagram-P5KCCOFB-DnQ_qJo7.js} +7 -7
- package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-B-YWb8x4.js → sequenceDiagram-WJ2MYXX4-DZrZUoCo.js} +16 -16
- package/web-shell/assets/sizeCapture-X5ZJPWSS-B5G4GDQB.js +1 -0
- package/web-shell/assets/{stateDiagram-HBIQ2CUA-C8LDpNHS.js → stateDiagram-HBIQ2CUA-Bn1cT0qF.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-BF3xtNvJ.js +1 -0
- package/web-shell/assets/swimlanes-XN3QIQJK-Bzhcdn87.js +1 -0
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN-B753mA3E.js +8 -0
- package/web-shell/assets/timeline-definition-24CTP7MA-BqZ_3D10.js +120 -0
- package/web-shell/assets/vennDiagram-4TSXK5OY-z9kw1kmm.js +34 -0
- package/web-shell/assets/wardleyDiagram-VM6X3IG4-Cydp1zJW.js +78 -0
- package/web-shell/assets/{xychartDiagram-S5SC5T6Z-ruD2Wjhg.js → xychartDiagram-S5SC5T6Z-j4X1lQKo.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-7Q2AXRDJ.js +0 -114
- package/chunks/chunk-AEY27Z35.js +0 -1411
- package/chunks/chunk-CFKIH3D3.js +0 -50
- package/chunks/chunk-HWVUSYSN.js +0 -126
- package/chunks/chunk-QHMLYMMS.js +0 -32
- package/chunks/chunk-SAH4BD2J.js +0 -92
- package/chunks/chunk-TWUKBNWM.js +0 -86
- package/chunks/chunk-ZTTC7T4X.js +0 -126
- package/chunks/list-YL6LDQKQ.js +0 -129
- package/chunks/mcp-IYVSIW6O.js +0 -123
- package/chunks/web-search-NEGYQNDJ.js +0 -912
- package/chunks/workspace-providers-status-AEYISSU2.js +0 -127
- package/chunks/workspace-skills-status-5HWZU3HX.js +0 -126
- package/web-shell/assets/architectureDiagram-5GKGNRK7-B_fgkKe7.js +0 -36
- package/web-shell/assets/blockDiagram-NRAW4CY4-C3pddUNg.js +0 -129
- package/web-shell/assets/channel-Blod4z1X.js +0 -1
- package/web-shell/assets/chunk-G27WJ6UU-CVbXTxYk.js +0 -231
- package/web-shell/assets/chunk-JWPE2WC7-D89c_BXy.js +0 -1
- package/web-shell/assets/chunk-LCL6LL3I-B7-I_9KB.js +0 -206
- package/web-shell/assets/chunk-POPQ4Y6H-DcLQFzS4.js +0 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-D6hFDMqb.js +0 -1
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-D6hFDMqb.js +0 -1
- package/web-shell/assets/cose-bilkent-JH36ORCC-Db2FYN85.js +0 -1
- package/web-shell/assets/cynefin-OW5HDTMX-i4GwmBVy.js +0 -178
- package/web-shell/assets/dagre-3AP2YEHR-CF9XVrD9.js +0 -4
- package/web-shell/assets/diagram-S7CK7UJ4-DD5PJfSm.js +0 -30
- package/web-shell/assets/diagram-UQ7AKVKN-CjD_sBMj.js +0 -41
- package/web-shell/assets/diagram-VSXAHHWV-U5WwMqyA.js +0 -3
- package/web-shell/assets/diagram-VX7I27RA-BujpHJJf.js +0 -24
- package/web-shell/assets/diagram-Z3DM3KII-3ZLtKEXo.js +0 -24
- package/web-shell/assets/flowDiagram-A5DVABFB-9DwDuIyr.js +0 -168
- package/web-shell/assets/gitGraphDiagram-WWUBYQGX-C_pPFiTR.js +0 -106
- package/web-shell/assets/index-BYWs4JWq.js +0 -3
- package/web-shell/assets/index-D3YS6KuJ.js +0 -2173
- package/web-shell/assets/index-eBxK3rs2.css +0 -36
- package/web-shell/assets/ishikawaDiagram-5VMMS53U-ktpJFq4r.js +0 -70
- package/web-shell/assets/kanban-definition-3QL26DDD-m_gG00Yt.js +0 -89
- package/web-shell/assets/mermaid.core-DSCYB_2P.js +0 -312
- package/web-shell/assets/mindmap-definition-FBJOCRG2-DRQbT8w-.js +0 -96
- package/web-shell/assets/pieDiagram-E7YTZNPT-BvIGQCSd.js +0 -39
- package/web-shell/assets/quadrantDiagram-AXDQQJYC-BDQtfpU-.js +0 -7
- package/web-shell/assets/sizeCapture-X5ZJPWSS-BB7YY4Tl.js +0 -1
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-C4CbdvGa.js +0 -1
- package/web-shell/assets/swimlanes-XN3QIQJK-D94vOoxZ.js +0 -1
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN--QNSIOC8.js +0 -8
- package/web-shell/assets/timeline-definition-24CTP7MA-C9C8uEYm.js +0 -120
- package/web-shell/assets/vennDiagram-4TSXK5OY-CYzMHbVW.js +0 -34
- package/web-shell/assets/wardleyDiagram-VM6X3IG4-G9nhtLES.js +0 -78
- package/chunks/{open-with-auth-6MVIHMXB.js → open-with-auth-XFCCJOO6.js} +3 -3
package/chunks/chunk-AEY27Z35.js
DELETED
|
@@ -1,1411 +0,0 @@
|
|
|
1
|
-
// Force strict mode and setup for ESM
|
|
2
|
-
"use strict";
|
|
3
|
-
import {
|
|
4
|
-
init_esbuild_shims
|
|
5
|
-
} from "./chunk-5O2XNYP6.js";
|
|
6
|
-
import {
|
|
7
|
-
__name
|
|
8
|
-
} from "./chunk-J2S4EL5Y.js";
|
|
9
|
-
|
|
10
|
-
// packages/core/src/providers/provider-config.ts
|
|
11
|
-
init_esbuild_shims();
|
|
12
|
-
import { createHash } from "node:crypto";
|
|
13
|
-
function resolveEnvKey(config, inputs) {
|
|
14
|
-
const protocol = inputs.protocol ?? config.protocol;
|
|
15
|
-
return typeof config.envKey === "function" ? config.envKey(protocol, inputs.baseUrl) : config.envKey;
|
|
16
|
-
}
|
|
17
|
-
__name(resolveEnvKey, "resolveEnvKey");
|
|
18
|
-
function resolveModelNamePrefix(config, baseUrl) {
|
|
19
|
-
return typeof config.modelNamePrefix === "function" ? config.modelNamePrefix(baseUrl) : config.modelNamePrefix;
|
|
20
|
-
}
|
|
21
|
-
__name(resolveModelNamePrefix, "resolveModelNamePrefix");
|
|
22
|
-
function resolveOwnsModel(config) {
|
|
23
|
-
if (config.ownsModel) return config.ownsModel;
|
|
24
|
-
if (typeof config.envKey !== "string" || typeof config.modelNamePrefix !== "string") {
|
|
25
|
-
return void 0;
|
|
26
|
-
}
|
|
27
|
-
const envKey = config.envKey;
|
|
28
|
-
const prefix = config.modelNamePrefix;
|
|
29
|
-
if (!prefix) return (model) => model.envKey === envKey;
|
|
30
|
-
const namePrefix = `[${prefix}] `;
|
|
31
|
-
return (model) => model.envKey === envKey && typeof model.name === "string" && model.name.startsWith(namePrefix);
|
|
32
|
-
}
|
|
33
|
-
__name(resolveOwnsModel, "resolveOwnsModel");
|
|
34
|
-
function buildGenerationConfig(spec) {
|
|
35
|
-
const parts = {};
|
|
36
|
-
let hasAny = false;
|
|
37
|
-
if (spec.enableThinking) {
|
|
38
|
-
parts.extra_body = { enable_thinking: true };
|
|
39
|
-
hasAny = true;
|
|
40
|
-
}
|
|
41
|
-
if (spec.thinkingMandatory) {
|
|
42
|
-
parts.thinkingMandatory = true;
|
|
43
|
-
hasAny = true;
|
|
44
|
-
}
|
|
45
|
-
if (spec.contextWindowSize) {
|
|
46
|
-
parts.contextWindowSize = spec.contextWindowSize;
|
|
47
|
-
hasAny = true;
|
|
48
|
-
}
|
|
49
|
-
if (spec.modalities && Object.values(spec.modalities).some(Boolean)) {
|
|
50
|
-
parts.modalities = spec.modalities;
|
|
51
|
-
hasAny = true;
|
|
52
|
-
}
|
|
53
|
-
return hasAny ? parts : void 0;
|
|
54
|
-
}
|
|
55
|
-
__name(buildGenerationConfig, "buildGenerationConfig");
|
|
56
|
-
function buildAdvancedGenerationConfig(advCfg, protocol) {
|
|
57
|
-
const cfg = {};
|
|
58
|
-
let hasAny = false;
|
|
59
|
-
if (advCfg?.enableThinking) {
|
|
60
|
-
if (protocol === "openai-responses" /* USE_OPENAI_RESPONSES */) {
|
|
61
|
-
cfg.reasoning = { effort: "medium" };
|
|
62
|
-
} else {
|
|
63
|
-
cfg.extra_body = { enable_thinking: true };
|
|
64
|
-
}
|
|
65
|
-
hasAny = true;
|
|
66
|
-
}
|
|
67
|
-
if (advCfg?.multimodal && Object.values(advCfg.multimodal).some(Boolean)) {
|
|
68
|
-
cfg.modalities = advCfg.multimodal;
|
|
69
|
-
hasAny = true;
|
|
70
|
-
}
|
|
71
|
-
if (advCfg?.contextWindowSize && advCfg.contextWindowSize > 0) {
|
|
72
|
-
cfg.contextWindowSize = advCfg.contextWindowSize;
|
|
73
|
-
hasAny = true;
|
|
74
|
-
}
|
|
75
|
-
if (advCfg?.maxTokens && advCfg.maxTokens > 0) {
|
|
76
|
-
cfg.samplingParams = { max_tokens: advCfg.maxTokens };
|
|
77
|
-
hasAny = true;
|
|
78
|
-
}
|
|
79
|
-
return hasAny ? cfg : void 0;
|
|
80
|
-
}
|
|
81
|
-
__name(buildAdvancedGenerationConfig, "buildAdvancedGenerationConfig");
|
|
82
|
-
function specToModelConfig(spec, prefix, baseUrl, envKey) {
|
|
83
|
-
const genConfig = buildGenerationConfig(spec);
|
|
84
|
-
return {
|
|
85
|
-
id: spec.id,
|
|
86
|
-
name: prefix ? `[${prefix}] ${spec.id}` : spec.id,
|
|
87
|
-
...spec.description ? { description: spec.description } : {},
|
|
88
|
-
...spec.capabilities ? { capabilities: spec.capabilities } : {},
|
|
89
|
-
baseUrl,
|
|
90
|
-
envKey,
|
|
91
|
-
...spec.supportsImageGeneration ? { supportsImageGeneration: true } : {},
|
|
92
|
-
...spec.imageOnly ? { imageOnly: true } : {},
|
|
93
|
-
...genConfig ? { generationConfig: genConfig } : {}
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
__name(specToModelConfig, "specToModelConfig");
|
|
97
|
-
function applyProviderCustomHeaders(models, config) {
|
|
98
|
-
if (!config.customHeaders) return models;
|
|
99
|
-
return models.map((model) => {
|
|
100
|
-
const existing = model.generationConfig ?? {};
|
|
101
|
-
return {
|
|
102
|
-
...model,
|
|
103
|
-
generationConfig: {
|
|
104
|
-
...existing,
|
|
105
|
-
customHeaders: {
|
|
106
|
-
...config.customHeaders,
|
|
107
|
-
...existing.customHeaders
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
__name(applyProviderCustomHeaders, "applyProviderCustomHeaders");
|
|
114
|
-
function buildModelConfigs(config, inputs) {
|
|
115
|
-
const envKey = resolveEnvKey(config, inputs);
|
|
116
|
-
const prefix = resolveModelNamePrefix(config, inputs.baseUrl);
|
|
117
|
-
const protocol = inputs.protocol ?? config.protocol;
|
|
118
|
-
let models;
|
|
119
|
-
if (config.models && !config.modelsEditable) {
|
|
120
|
-
models = config.models.map(
|
|
121
|
-
(spec) => specToModelConfig(spec, prefix, inputs.baseUrl, envKey)
|
|
122
|
-
);
|
|
123
|
-
} else if (config.models && config.modelsEditable) {
|
|
124
|
-
const specMap = new Map(config.models.map((s) => [s.id.toLowerCase(), s]));
|
|
125
|
-
models = inputs.modelIds.map((id) => {
|
|
126
|
-
const spec = specMap.get(id.toLowerCase());
|
|
127
|
-
if (spec) {
|
|
128
|
-
return specToModelConfig(
|
|
129
|
-
{ ...spec, id },
|
|
130
|
-
prefix,
|
|
131
|
-
inputs.baseUrl,
|
|
132
|
-
envKey
|
|
133
|
-
);
|
|
134
|
-
}
|
|
135
|
-
const genConfig = buildAdvancedGenerationConfig(
|
|
136
|
-
inputs.advancedConfig,
|
|
137
|
-
protocol
|
|
138
|
-
);
|
|
139
|
-
return {
|
|
140
|
-
id,
|
|
141
|
-
name: prefix ? `[${prefix}] ${id}` : id,
|
|
142
|
-
baseUrl: inputs.baseUrl,
|
|
143
|
-
envKey,
|
|
144
|
-
...genConfig ? { generationConfig: genConfig } : {}
|
|
145
|
-
};
|
|
146
|
-
});
|
|
147
|
-
} else {
|
|
148
|
-
const advCfg = inputs.advancedConfig;
|
|
149
|
-
const displayName = /* @__PURE__ */ __name((id) => prefix ? `[${prefix}] ${id}` : id, "displayName");
|
|
150
|
-
models = inputs.modelIds.map((id) => {
|
|
151
|
-
const genConfig = buildAdvancedGenerationConfig(advCfg, protocol);
|
|
152
|
-
return {
|
|
153
|
-
id,
|
|
154
|
-
name: displayName(id),
|
|
155
|
-
baseUrl: inputs.baseUrl,
|
|
156
|
-
envKey,
|
|
157
|
-
...genConfig ? { generationConfig: genConfig } : {}
|
|
158
|
-
};
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
return applyProviderCustomHeaders(models, config);
|
|
162
|
-
}
|
|
163
|
-
__name(buildModelConfigs, "buildModelConfigs");
|
|
164
|
-
function resolveMetadataKey(config) {
|
|
165
|
-
if (!config.models) return void 0;
|
|
166
|
-
if (config.id.includes(".")) {
|
|
167
|
-
throw new Error(
|
|
168
|
-
`Provider id must not contain '.' (would corrupt providerMetadata.${config.id} dotted writes): ${config.id}`
|
|
169
|
-
);
|
|
170
|
-
}
|
|
171
|
-
return config.id;
|
|
172
|
-
}
|
|
173
|
-
__name(resolveMetadataKey, "resolveMetadataKey");
|
|
174
|
-
var PROVIDER_METADATA_NS = "providerMetadata";
|
|
175
|
-
function resolveProviderState(config, baseUrl, models) {
|
|
176
|
-
const key = resolveMetadataKey(config);
|
|
177
|
-
if (key) {
|
|
178
|
-
return {
|
|
179
|
-
[`${PROVIDER_METADATA_NS}.${key}`]: {
|
|
180
|
-
version: computeModelListVersion(models),
|
|
181
|
-
baseUrl
|
|
182
|
-
}
|
|
183
|
-
};
|
|
184
|
-
}
|
|
185
|
-
return void 0;
|
|
186
|
-
}
|
|
187
|
-
__name(resolveProviderState, "resolveProviderState");
|
|
188
|
-
function buildInstallPlan(config, inputs) {
|
|
189
|
-
const protocol = inputs.protocol ?? config.protocol;
|
|
190
|
-
const envKey = resolveEnvKey(config, inputs);
|
|
191
|
-
const models = inputs.prebuiltModels ?? buildModelConfigs(config, inputs);
|
|
192
|
-
const ownsModel = config.mergeModelsByIdentity ? void 0 : resolveOwnsModel(config);
|
|
193
|
-
const firstModel = models[0];
|
|
194
|
-
if (models.length === 0) {
|
|
195
|
-
throw new Error(
|
|
196
|
-
`No models configured for provider "${config.id}". Check model list or provider configuration.`
|
|
197
|
-
);
|
|
198
|
-
}
|
|
199
|
-
const firstModelId = firstModel?.id;
|
|
200
|
-
const modelSelection = firstModelId === void 0 ? void 0 : {
|
|
201
|
-
modelId: firstModelId,
|
|
202
|
-
...config.mergeModelsByIdentity && firstModel.baseUrl ? { baseUrl: firstModel.baseUrl } : {}
|
|
203
|
-
};
|
|
204
|
-
return {
|
|
205
|
-
providerId: config.id,
|
|
206
|
-
authType: protocol,
|
|
207
|
-
env: { [envKey]: inputs.apiKey },
|
|
208
|
-
...modelSelection ? { modelSelection } : {},
|
|
209
|
-
modelProviders: [
|
|
210
|
-
{
|
|
211
|
-
authType: protocol,
|
|
212
|
-
models,
|
|
213
|
-
mergeStrategy: "prepend-and-remove-owned",
|
|
214
|
-
...ownsModel ? { ownsModel } : {}
|
|
215
|
-
}
|
|
216
|
-
],
|
|
217
|
-
providerState: resolveProviderState(config, inputs.baseUrl, models)
|
|
218
|
-
};
|
|
219
|
-
}
|
|
220
|
-
__name(buildInstallPlan, "buildInstallPlan");
|
|
221
|
-
function computeModelListVersion(models) {
|
|
222
|
-
return createHash("sha256").update(JSON.stringify(models)).digest("hex");
|
|
223
|
-
}
|
|
224
|
-
__name(computeModelListVersion, "computeModelListVersion");
|
|
225
|
-
var DEFAULT_BASE_URLS = {
|
|
226
|
-
["openai" /* USE_OPENAI */]: "https://api.openai.com/v1",
|
|
227
|
-
["openai-responses" /* USE_OPENAI_RESPONSES */]: "https://api.openai.com",
|
|
228
|
-
["anthropic" /* USE_ANTHROPIC */]: "https://api.anthropic.com/v1",
|
|
229
|
-
["gemini" /* USE_GEMINI */]: "https://generativelanguage.googleapis.com"
|
|
230
|
-
};
|
|
231
|
-
function getDefaultBaseUrlForProtocol(protocol) {
|
|
232
|
-
if (protocol === void 0) return "";
|
|
233
|
-
return DEFAULT_BASE_URLS[protocol] ?? "";
|
|
234
|
-
}
|
|
235
|
-
__name(getDefaultBaseUrlForProtocol, "getDefaultBaseUrlForProtocol");
|
|
236
|
-
function resolveBaseUrl(config, selectedBaseUrl) {
|
|
237
|
-
if (typeof config.baseUrl === "string") {
|
|
238
|
-
return config.baseUrl;
|
|
239
|
-
}
|
|
240
|
-
if (Array.isArray(config.baseUrl)) {
|
|
241
|
-
const normalizedSelectedBaseUrl = normalizeBaseUrlForMatching(selectedBaseUrl);
|
|
242
|
-
const match = config.baseUrl.find(
|
|
243
|
-
(opt) => normalizeBaseUrlForMatching(opt.url) === normalizedSelectedBaseUrl
|
|
244
|
-
);
|
|
245
|
-
if (match) return match.url;
|
|
246
|
-
return config.baseUrl[0]?.url ?? selectedBaseUrl ?? "";
|
|
247
|
-
}
|
|
248
|
-
return selectedBaseUrl ?? "";
|
|
249
|
-
}
|
|
250
|
-
__name(resolveBaseUrl, "resolveBaseUrl");
|
|
251
|
-
function normalizeBaseUrlForMatching(baseUrl) {
|
|
252
|
-
if (baseUrl === void 0) return "";
|
|
253
|
-
let end = baseUrl.length;
|
|
254
|
-
while (end > 0 && baseUrl.charCodeAt(end - 1) === 47) {
|
|
255
|
-
end--;
|
|
256
|
-
}
|
|
257
|
-
return end === baseUrl.length ? baseUrl : baseUrl.slice(0, end);
|
|
258
|
-
}
|
|
259
|
-
__name(normalizeBaseUrlForMatching, "normalizeBaseUrlForMatching");
|
|
260
|
-
function getDefaultModelIds(config) {
|
|
261
|
-
return config.models?.map((s) => s.id) ?? [];
|
|
262
|
-
}
|
|
263
|
-
__name(getDefaultModelIds, "getDefaultModelIds");
|
|
264
|
-
function isProviderModelConfig(value) {
|
|
265
|
-
return typeof value === "object" && value !== null && typeof value.id === "string";
|
|
266
|
-
}
|
|
267
|
-
__name(isProviderModelConfig, "isProviderModelConfig");
|
|
268
|
-
function findExistingProviderModels(config, modelProviders) {
|
|
269
|
-
const ownsModel = resolveOwnsModel(config);
|
|
270
|
-
if (!ownsModel || !modelProviders) return void 0;
|
|
271
|
-
const protocols = config.protocolOptions?.length ? config.protocolOptions : [config.protocol];
|
|
272
|
-
for (const protocol of protocols) {
|
|
273
|
-
const raw = modelProviders[protocol];
|
|
274
|
-
if (!Array.isArray(raw)) continue;
|
|
275
|
-
const models = raw.filter(
|
|
276
|
-
(m) => isProviderModelConfig(m) && ownsModel(m)
|
|
277
|
-
);
|
|
278
|
-
if (models.length > 0) return { protocol, models };
|
|
279
|
-
}
|
|
280
|
-
return void 0;
|
|
281
|
-
}
|
|
282
|
-
__name(findExistingProviderModels, "findExistingProviderModels");
|
|
283
|
-
function shouldShowStep(config, step) {
|
|
284
|
-
switch (step) {
|
|
285
|
-
case "protocol":
|
|
286
|
-
return Array.isArray(config.protocolOptions) && config.protocolOptions.length > 1;
|
|
287
|
-
case "baseUrl":
|
|
288
|
-
return config.baseUrl === void 0 || Array.isArray(config.baseUrl);
|
|
289
|
-
case "apiKey":
|
|
290
|
-
return true;
|
|
291
|
-
case "models":
|
|
292
|
-
return !config.models || config.modelsEditable === true;
|
|
293
|
-
case "advancedConfig":
|
|
294
|
-
return config.showAdvancedConfig === true;
|
|
295
|
-
default:
|
|
296
|
-
return false;
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
__name(shouldShowStep, "shouldShowStep");
|
|
300
|
-
function providerMatchesCredentials(config, baseUrl, envKey) {
|
|
301
|
-
let configEnvKey;
|
|
302
|
-
if (typeof config.envKey === "string") {
|
|
303
|
-
configEnvKey = config.envKey;
|
|
304
|
-
} else if (typeof config.envKey === "function" && baseUrl) {
|
|
305
|
-
const protocols = config.protocolOptions?.length ? config.protocolOptions : [config.protocol];
|
|
306
|
-
for (const proto of protocols) {
|
|
307
|
-
try {
|
|
308
|
-
const derived = config.envKey(proto, baseUrl);
|
|
309
|
-
if (derived === envKey) {
|
|
310
|
-
configEnvKey = derived;
|
|
311
|
-
break;
|
|
312
|
-
}
|
|
313
|
-
} catch (err) {
|
|
314
|
-
let safeHost;
|
|
315
|
-
try {
|
|
316
|
-
safeHost = new URL(baseUrl).hostname;
|
|
317
|
-
} catch {
|
|
318
|
-
safeHost = "[invalid]";
|
|
319
|
-
}
|
|
320
|
-
console.warn(
|
|
321
|
-
`[providerMatchesCredentials] envKey(${proto}, ${safeHost}) threw (${err instanceof Error ? err.constructor.name : typeof err}); skipping this protocol`
|
|
322
|
-
);
|
|
323
|
-
}
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
if (configEnvKey !== envKey) {
|
|
327
|
-
return false;
|
|
328
|
-
}
|
|
329
|
-
if (typeof config.baseUrl === "string") {
|
|
330
|
-
return config.baseUrl === baseUrl;
|
|
331
|
-
}
|
|
332
|
-
if (Array.isArray(config.baseUrl)) {
|
|
333
|
-
return config.baseUrl.some((opt) => opt.url === baseUrl);
|
|
334
|
-
}
|
|
335
|
-
if (config.baseUrl === void 0 && configEnvKey !== void 0) {
|
|
336
|
-
return Boolean(baseUrl);
|
|
337
|
-
}
|
|
338
|
-
return false;
|
|
339
|
-
}
|
|
340
|
-
__name(providerMatchesCredentials, "providerMatchesCredentials");
|
|
341
|
-
function buildProviderTemplate(config, baseUrl) {
|
|
342
|
-
const resolved = resolveBaseUrl(config, baseUrl);
|
|
343
|
-
return buildModelConfigs(config, {
|
|
344
|
-
baseUrl: resolved,
|
|
345
|
-
apiKey: "",
|
|
346
|
-
modelIds: getDefaultModelIds(config)
|
|
347
|
-
});
|
|
348
|
-
}
|
|
349
|
-
__name(buildProviderTemplate, "buildProviderTemplate");
|
|
350
|
-
|
|
351
|
-
// packages/core/src/providers/all-providers.ts
|
|
352
|
-
init_esbuild_shims();
|
|
353
|
-
|
|
354
|
-
// packages/core/src/providers/presets/alibaba-coding-plan.ts
|
|
355
|
-
init_esbuild_shims();
|
|
356
|
-
var CODING_PLAN_ENV_KEY = "BAILIAN_CODING_PLAN_API_KEY";
|
|
357
|
-
var CODING_PLAN_CHINA_BASE_URL = "https://coding.dashscope.aliyuncs.com/v1";
|
|
358
|
-
var CODING_PLAN_GLOBAL_BASE_URL = "https://coding-intl.dashscope.aliyuncs.com/v1";
|
|
359
|
-
var MODELSTUDIO_MODELS = [
|
|
360
|
-
{
|
|
361
|
-
id: "qwen3.5-plus",
|
|
362
|
-
capabilities: {
|
|
363
|
-
reasoning: {
|
|
364
|
-
thinking: true,
|
|
365
|
-
toggleOnly: true,
|
|
366
|
-
disableField: "enable_thinking"
|
|
367
|
-
}
|
|
368
|
-
},
|
|
369
|
-
contextWindowSize: 1e6,
|
|
370
|
-
enableThinking: true,
|
|
371
|
-
modalities: { image: true, video: true }
|
|
372
|
-
},
|
|
373
|
-
{
|
|
374
|
-
id: "qwen3.6-plus",
|
|
375
|
-
capabilities: {
|
|
376
|
-
reasoning: {
|
|
377
|
-
thinking: true,
|
|
378
|
-
toggleOnly: true,
|
|
379
|
-
disableField: "enable_thinking"
|
|
380
|
-
}
|
|
381
|
-
},
|
|
382
|
-
description: "Currently available to Pro subscribers only.",
|
|
383
|
-
contextWindowSize: 1e6,
|
|
384
|
-
enableThinking: true,
|
|
385
|
-
modalities: { image: true, video: true }
|
|
386
|
-
},
|
|
387
|
-
{
|
|
388
|
-
id: "qwen3.7-plus",
|
|
389
|
-
capabilities: {
|
|
390
|
-
reasoning: {
|
|
391
|
-
thinking: true,
|
|
392
|
-
toggleOnly: true,
|
|
393
|
-
disableField: "enable_thinking"
|
|
394
|
-
}
|
|
395
|
-
},
|
|
396
|
-
contextWindowSize: 1e6,
|
|
397
|
-
enableThinking: true
|
|
398
|
-
},
|
|
399
|
-
{ id: "glm-5", contextWindowSize: 202752, enableThinking: true },
|
|
400
|
-
{
|
|
401
|
-
id: "kimi-k2.5",
|
|
402
|
-
capabilities: {
|
|
403
|
-
reasoning: {
|
|
404
|
-
thinking: true,
|
|
405
|
-
toggleOnly: true,
|
|
406
|
-
disableField: "enable_thinking"
|
|
407
|
-
}
|
|
408
|
-
},
|
|
409
|
-
contextWindowSize: 262144,
|
|
410
|
-
enableThinking: true,
|
|
411
|
-
modalities: { image: true, video: true }
|
|
412
|
-
},
|
|
413
|
-
{ id: "MiniMax-M2.5", contextWindowSize: 196608, enableThinking: true },
|
|
414
|
-
{ id: "qwen3-coder-plus", contextWindowSize: 1e6 },
|
|
415
|
-
{ id: "qwen3-coder-next", contextWindowSize: 262144 },
|
|
416
|
-
{
|
|
417
|
-
id: "qwen3-max-2026-01-23",
|
|
418
|
-
capabilities: {
|
|
419
|
-
reasoning: {
|
|
420
|
-
thinking: true,
|
|
421
|
-
toggleOnly: true,
|
|
422
|
-
disableField: "enable_thinking"
|
|
423
|
-
}
|
|
424
|
-
},
|
|
425
|
-
contextWindowSize: 262144,
|
|
426
|
-
enableThinking: true
|
|
427
|
-
},
|
|
428
|
-
{ id: "glm-4.7", contextWindowSize: 202752, enableThinking: true }
|
|
429
|
-
];
|
|
430
|
-
var codingPlanProvider = {
|
|
431
|
-
id: "coding-plan",
|
|
432
|
-
label: "Coding Plan",
|
|
433
|
-
description: "For individual developers \xB7 Weekly quota included",
|
|
434
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
435
|
-
baseUrl: [
|
|
436
|
-
{
|
|
437
|
-
id: "aliyun",
|
|
438
|
-
label: "China (Beijing)",
|
|
439
|
-
url: CODING_PLAN_CHINA_BASE_URL,
|
|
440
|
-
documentationUrl: "https://help.aliyun.com/zh/model-studio/coding-plan"
|
|
441
|
-
},
|
|
442
|
-
{
|
|
443
|
-
id: "alibabacloud",
|
|
444
|
-
label: "Singapore (International)",
|
|
445
|
-
url: CODING_PLAN_GLOBAL_BASE_URL,
|
|
446
|
-
documentationUrl: "https://www.alibabacloud.com/help/en/model-studio/coding-plan"
|
|
447
|
-
}
|
|
448
|
-
],
|
|
449
|
-
envKey: CODING_PLAN_ENV_KEY,
|
|
450
|
-
models: MODELSTUDIO_MODELS,
|
|
451
|
-
modelsEditable: true,
|
|
452
|
-
supportsModelDiscovery: true,
|
|
453
|
-
modelNamePrefix: /* @__PURE__ */ __name((baseUrl) => baseUrl === CODING_PLAN_GLOBAL_BASE_URL ? "ModelStudio Coding Plan for Global/Intl" : "ModelStudio Coding Plan", "modelNamePrefix"),
|
|
454
|
-
apiKeyPlaceholder: "sk-sp-...",
|
|
455
|
-
validateApiKey: /* @__PURE__ */ __name((key) => !key.startsWith("sk-sp-") ? 'Invalid API key. Coding Plan API keys start with "sk-sp-". Please check.' : null, "validateApiKey"),
|
|
456
|
-
ownsModel: /* @__PURE__ */ __name((model) => model.envKey === CODING_PLAN_ENV_KEY && typeof model.baseUrl === "string" && (model.baseUrl === CODING_PLAN_CHINA_BASE_URL || model.baseUrl === CODING_PLAN_GLOBAL_BASE_URL), "ownsModel"),
|
|
457
|
-
uiGroup: "alibaba",
|
|
458
|
-
uiLabels: { flowTitle: "Alibaba ModelStudio", baseUrlStepTitle: "Region" }
|
|
459
|
-
};
|
|
460
|
-
|
|
461
|
-
// packages/core/src/providers/presets/alibaba-token-plan.ts
|
|
462
|
-
init_esbuild_shims();
|
|
463
|
-
var TOKEN_PLAN_ENV_KEY = "BAILIAN_TOKEN_PLAN_API_KEY";
|
|
464
|
-
var TOKEN_PLAN_CHINA_BASE_URL = "https://token-plan.cn-beijing.maas.aliyuncs.com/compatible-mode/v1";
|
|
465
|
-
var TOKEN_PLAN_GLOBAL_BASE_URL = "https://token-plan.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1";
|
|
466
|
-
var TOKEN_PLAN_MODELS = [
|
|
467
|
-
{
|
|
468
|
-
id: "qwen3.7-plus",
|
|
469
|
-
capabilities: {
|
|
470
|
-
reasoning: {
|
|
471
|
-
thinking: true,
|
|
472
|
-
toggleOnly: true,
|
|
473
|
-
disableField: "enable_thinking"
|
|
474
|
-
}
|
|
475
|
-
},
|
|
476
|
-
contextWindowSize: 1e6,
|
|
477
|
-
enableThinking: true,
|
|
478
|
-
modalities: { image: true, video: true }
|
|
479
|
-
},
|
|
480
|
-
{
|
|
481
|
-
id: "qwen3.6-plus",
|
|
482
|
-
capabilities: {
|
|
483
|
-
reasoning: {
|
|
484
|
-
thinking: true,
|
|
485
|
-
toggleOnly: true,
|
|
486
|
-
disableField: "enable_thinking"
|
|
487
|
-
}
|
|
488
|
-
},
|
|
489
|
-
contextWindowSize: 1e6,
|
|
490
|
-
enableThinking: true,
|
|
491
|
-
modalities: { image: true, video: true }
|
|
492
|
-
},
|
|
493
|
-
{
|
|
494
|
-
id: "qwen3.7-max",
|
|
495
|
-
capabilities: {
|
|
496
|
-
reasoning: {
|
|
497
|
-
thinking: true,
|
|
498
|
-
toggleOnly: true,
|
|
499
|
-
disableField: "enable_thinking"
|
|
500
|
-
}
|
|
501
|
-
},
|
|
502
|
-
contextWindowSize: 1e6,
|
|
503
|
-
enableThinking: true
|
|
504
|
-
},
|
|
505
|
-
{
|
|
506
|
-
id: "qwen3.8-max",
|
|
507
|
-
capabilities: {
|
|
508
|
-
reasoning: {
|
|
509
|
-
thinking: true,
|
|
510
|
-
efforts: ["low", "medium", "xhigh"],
|
|
511
|
-
defaultEffort: "xhigh",
|
|
512
|
-
canDisable: false,
|
|
513
|
-
disableField: "reasoning_effort"
|
|
514
|
-
}
|
|
515
|
-
},
|
|
516
|
-
contextWindowSize: 1e6,
|
|
517
|
-
enableThinking: true,
|
|
518
|
-
thinkingMandatory: true,
|
|
519
|
-
modalities: { image: true, video: true }
|
|
520
|
-
},
|
|
521
|
-
{
|
|
522
|
-
id: "qwen3.8-max-preview",
|
|
523
|
-
capabilities: {
|
|
524
|
-
reasoning: {
|
|
525
|
-
thinking: true,
|
|
526
|
-
efforts: ["low", "medium", "xhigh"],
|
|
527
|
-
defaultEffort: "xhigh",
|
|
528
|
-
canDisable: false,
|
|
529
|
-
disableField: "reasoning_effort"
|
|
530
|
-
}
|
|
531
|
-
},
|
|
532
|
-
contextWindowSize: 1e6,
|
|
533
|
-
enableThinking: true,
|
|
534
|
-
thinkingMandatory: true,
|
|
535
|
-
modalities: { image: true, video: true }
|
|
536
|
-
},
|
|
537
|
-
{
|
|
538
|
-
id: "qwen3.6-flash",
|
|
539
|
-
capabilities: {
|
|
540
|
-
reasoning: {
|
|
541
|
-
thinking: true,
|
|
542
|
-
toggleOnly: true,
|
|
543
|
-
disableField: "enable_thinking"
|
|
544
|
-
}
|
|
545
|
-
},
|
|
546
|
-
contextWindowSize: 1e6,
|
|
547
|
-
enableThinking: true
|
|
548
|
-
},
|
|
549
|
-
{
|
|
550
|
-
id: "deepseek-v4-pro",
|
|
551
|
-
capabilities: {
|
|
552
|
-
reasoning: {
|
|
553
|
-
thinking: true,
|
|
554
|
-
efforts: ["high", "max"],
|
|
555
|
-
defaultEffort: "high",
|
|
556
|
-
disableField: "enable_thinking"
|
|
557
|
-
}
|
|
558
|
-
},
|
|
559
|
-
contextWindowSize: 1e6
|
|
560
|
-
},
|
|
561
|
-
{
|
|
562
|
-
id: "deepseek-v4-flash-0731",
|
|
563
|
-
capabilities: {
|
|
564
|
-
reasoning: {
|
|
565
|
-
thinking: true,
|
|
566
|
-
efforts: ["low", "high", "max"],
|
|
567
|
-
defaultEffort: "high",
|
|
568
|
-
disableField: "enable_thinking"
|
|
569
|
-
}
|
|
570
|
-
},
|
|
571
|
-
contextWindowSize: 1e6
|
|
572
|
-
},
|
|
573
|
-
{
|
|
574
|
-
id: "deepseek-v3.2",
|
|
575
|
-
capabilities: {
|
|
576
|
-
reasoning: {
|
|
577
|
-
thinking: true,
|
|
578
|
-
toggleOnly: true,
|
|
579
|
-
disableField: "enable_thinking"
|
|
580
|
-
}
|
|
581
|
-
},
|
|
582
|
-
contextWindowSize: 131072
|
|
583
|
-
},
|
|
584
|
-
{
|
|
585
|
-
id: "kimi-k2.7-code",
|
|
586
|
-
capabilities: {
|
|
587
|
-
reasoning: {
|
|
588
|
-
thinking: true,
|
|
589
|
-
toggleOnly: true,
|
|
590
|
-
canDisable: false,
|
|
591
|
-
disableField: "enable_thinking"
|
|
592
|
-
}
|
|
593
|
-
},
|
|
594
|
-
contextWindowSize: 262144,
|
|
595
|
-
enableThinking: true,
|
|
596
|
-
modalities: { image: true, video: true },
|
|
597
|
-
thinkingMandatory: true
|
|
598
|
-
},
|
|
599
|
-
{
|
|
600
|
-
id: "kimi-k2.6",
|
|
601
|
-
capabilities: {
|
|
602
|
-
reasoning: {
|
|
603
|
-
thinking: true,
|
|
604
|
-
toggleOnly: true,
|
|
605
|
-
disableField: "enable_thinking"
|
|
606
|
-
}
|
|
607
|
-
},
|
|
608
|
-
contextWindowSize: 262144,
|
|
609
|
-
enableThinking: true
|
|
610
|
-
},
|
|
611
|
-
{
|
|
612
|
-
id: "kimi-k2.5",
|
|
613
|
-
capabilities: {
|
|
614
|
-
reasoning: {
|
|
615
|
-
thinking: true,
|
|
616
|
-
toggleOnly: true,
|
|
617
|
-
disableField: "enable_thinking"
|
|
618
|
-
}
|
|
619
|
-
},
|
|
620
|
-
contextWindowSize: 262144,
|
|
621
|
-
enableThinking: true,
|
|
622
|
-
modalities: { image: true, video: true }
|
|
623
|
-
},
|
|
624
|
-
{ id: "glm-5.2", contextWindowSize: 1e6, enableThinking: true },
|
|
625
|
-
{ id: "glm-5.1", contextWindowSize: 202752, enableThinking: true },
|
|
626
|
-
{ id: "glm-5", contextWindowSize: 202752, enableThinking: true },
|
|
627
|
-
{ id: "MiniMax-M2.5", contextWindowSize: 196608 },
|
|
628
|
-
{
|
|
629
|
-
id: "qwen3.8-flash",
|
|
630
|
-
contextWindowSize: 1e6,
|
|
631
|
-
capabilities: {
|
|
632
|
-
reasoning: {
|
|
633
|
-
thinking: true,
|
|
634
|
-
efforts: ["low", "medium", "xhigh"],
|
|
635
|
-
defaultEffort: "xhigh",
|
|
636
|
-
disableField: "reasoning_effort"
|
|
637
|
-
}
|
|
638
|
-
},
|
|
639
|
-
modalities: { image: true, video: true }
|
|
640
|
-
},
|
|
641
|
-
{
|
|
642
|
-
id: "deepseek-v4-pro-0813",
|
|
643
|
-
contextWindowSize: 1e6,
|
|
644
|
-
capabilities: {
|
|
645
|
-
reasoning: {
|
|
646
|
-
thinking: true,
|
|
647
|
-
efforts: ["low", "high", "max"],
|
|
648
|
-
defaultEffort: "high",
|
|
649
|
-
disableField: "enable_thinking"
|
|
650
|
-
}
|
|
651
|
-
}
|
|
652
|
-
}
|
|
653
|
-
];
|
|
654
|
-
var tokenPlanProvider = {
|
|
655
|
-
id: "token-plan",
|
|
656
|
-
label: "Token Plan",
|
|
657
|
-
description: "For teams and companies \xB7 Usage-based billing with dedicated endpoint",
|
|
658
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
659
|
-
baseUrl: [
|
|
660
|
-
{
|
|
661
|
-
id: "cn-beijing",
|
|
662
|
-
label: "China (Beijing)",
|
|
663
|
-
url: TOKEN_PLAN_CHINA_BASE_URL,
|
|
664
|
-
documentationUrl: "https://bailian.console.aliyun.com/cn-beijing?tab=doc#/doc/?type=model&url=3028856"
|
|
665
|
-
},
|
|
666
|
-
{
|
|
667
|
-
id: "ap-southeast-1",
|
|
668
|
-
label: "Singapore (International)",
|
|
669
|
-
url: TOKEN_PLAN_GLOBAL_BASE_URL,
|
|
670
|
-
documentationUrl: "https://modelstudio.console.alibabacloud.com/ap-southeast-1?tab=doc#/doc/?type=model"
|
|
671
|
-
}
|
|
672
|
-
],
|
|
673
|
-
envKey: TOKEN_PLAN_ENV_KEY,
|
|
674
|
-
models: TOKEN_PLAN_MODELS,
|
|
675
|
-
modelsEditable: true,
|
|
676
|
-
supportsModelDiscovery: true,
|
|
677
|
-
modelNamePrefix: /* @__PURE__ */ __name((baseUrl) => baseUrl === TOKEN_PLAN_GLOBAL_BASE_URL ? "ModelStudio Token Plan for Global/Intl" : "ModelStudio Token Plan", "modelNamePrefix"),
|
|
678
|
-
ownsModel: /* @__PURE__ */ __name((model) => model.envKey === TOKEN_PLAN_ENV_KEY && (typeof model.baseUrl === "string" && (model.baseUrl === TOKEN_PLAN_CHINA_BASE_URL || model.baseUrl === TOKEN_PLAN_GLOBAL_BASE_URL) || typeof model.name === "string" && model.name.startsWith("[ModelStudio Token Plan]")), "ownsModel"),
|
|
679
|
-
// Same server-side search tools as the Standard endpoints, billed against
|
|
680
|
-
// the plan's quota (probe 2026-09-08: `web_search` + `web_extractor` both
|
|
681
|
-
// execute and are reported under `usage.x_tools`).
|
|
682
|
-
webSearch: { backend: "dashscope" },
|
|
683
|
-
uiGroup: "alibaba",
|
|
684
|
-
uiLabels: { flowTitle: "Alibaba ModelStudio", baseUrlStepTitle: "Region" }
|
|
685
|
-
};
|
|
686
|
-
|
|
687
|
-
// packages/core/src/providers/presets/alibaba-standard.ts
|
|
688
|
-
init_esbuild_shims();
|
|
689
|
-
var alibabaStandardProvider = {
|
|
690
|
-
id: "alibabaStandard",
|
|
691
|
-
label: "Standard API Key",
|
|
692
|
-
description: "Connect with an existing ModelStudio API key",
|
|
693
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
694
|
-
baseUrl: [
|
|
695
|
-
{
|
|
696
|
-
id: "cn-beijing",
|
|
697
|
-
label: "China (Beijing)",
|
|
698
|
-
url: "https://dashscope.aliyuncs.com/compatible-mode/v1",
|
|
699
|
-
documentationUrl: "https://bailian.console.aliyun.com/cn-beijing?tab=api#/api"
|
|
700
|
-
},
|
|
701
|
-
{
|
|
702
|
-
id: "sg-singapore",
|
|
703
|
-
label: "Singapore",
|
|
704
|
-
url: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
|
|
705
|
-
documentationUrl: "https://modelstudio.console.alibabacloud.com/ap-southeast-1?tab=api#/api/?type=model&url=2712195"
|
|
706
|
-
},
|
|
707
|
-
{
|
|
708
|
-
id: "us-virginia",
|
|
709
|
-
label: "US (Virginia)",
|
|
710
|
-
url: "https://dashscope-us.aliyuncs.com/compatible-mode/v1",
|
|
711
|
-
documentationUrl: "https://modelstudio.console.alibabacloud.com/us-east-1?tab=api#/api/?type=model&url=2712195"
|
|
712
|
-
},
|
|
713
|
-
{
|
|
714
|
-
id: "cn-hongkong",
|
|
715
|
-
label: "China (Hong Kong)",
|
|
716
|
-
url: "https://cn-hongkong.dashscope.aliyuncs.com/compatible-mode/v1",
|
|
717
|
-
documentationUrl: "https://modelstudio.console.alibabacloud.com/cn-hongkong?tab=api#/api/?type=model&url=2712195"
|
|
718
|
-
}
|
|
719
|
-
],
|
|
720
|
-
envKey: "DASHSCOPE_API_KEY",
|
|
721
|
-
models: [
|
|
722
|
-
{
|
|
723
|
-
id: "qwen3.6-plus",
|
|
724
|
-
capabilities: {
|
|
725
|
-
reasoning: {
|
|
726
|
-
thinking: true,
|
|
727
|
-
toggleOnly: true,
|
|
728
|
-
disableField: "enable_thinking"
|
|
729
|
-
}
|
|
730
|
-
},
|
|
731
|
-
contextWindowSize: 1e6,
|
|
732
|
-
enableThinking: true
|
|
733
|
-
},
|
|
734
|
-
{
|
|
735
|
-
id: "qwen3.7-plus",
|
|
736
|
-
capabilities: {
|
|
737
|
-
reasoning: {
|
|
738
|
-
thinking: true,
|
|
739
|
-
toggleOnly: true,
|
|
740
|
-
disableField: "enable_thinking"
|
|
741
|
-
}
|
|
742
|
-
},
|
|
743
|
-
contextWindowSize: 1e6,
|
|
744
|
-
enableThinking: true
|
|
745
|
-
},
|
|
746
|
-
{
|
|
747
|
-
id: "qwen3.7-max",
|
|
748
|
-
capabilities: {
|
|
749
|
-
reasoning: {
|
|
750
|
-
thinking: true,
|
|
751
|
-
toggleOnly: true,
|
|
752
|
-
disableField: "enable_thinking"
|
|
753
|
-
}
|
|
754
|
-
},
|
|
755
|
-
contextWindowSize: 1e6,
|
|
756
|
-
enableThinking: true
|
|
757
|
-
},
|
|
758
|
-
{ id: "glm-5.1", contextWindowSize: 202752, enableThinking: true },
|
|
759
|
-
{
|
|
760
|
-
id: "deepseek-v4-pro",
|
|
761
|
-
capabilities: {
|
|
762
|
-
reasoning: {
|
|
763
|
-
thinking: true,
|
|
764
|
-
efforts: ["high", "max"],
|
|
765
|
-
defaultEffort: "high",
|
|
766
|
-
disableField: "enable_thinking"
|
|
767
|
-
}
|
|
768
|
-
},
|
|
769
|
-
contextWindowSize: 1e6
|
|
770
|
-
},
|
|
771
|
-
{
|
|
772
|
-
id: "deepseek-v4-flash",
|
|
773
|
-
capabilities: {
|
|
774
|
-
reasoning: {
|
|
775
|
-
thinking: true,
|
|
776
|
-
efforts: ["high", "max"],
|
|
777
|
-
defaultEffort: "high",
|
|
778
|
-
disableField: "enable_thinking"
|
|
779
|
-
}
|
|
780
|
-
},
|
|
781
|
-
contextWindowSize: 1e6
|
|
782
|
-
},
|
|
783
|
-
{
|
|
784
|
-
id: "qwen3.8-max",
|
|
785
|
-
contextWindowSize: 1e6,
|
|
786
|
-
capabilities: {
|
|
787
|
-
reasoning: {
|
|
788
|
-
thinking: true,
|
|
789
|
-
efforts: ["low", "medium", "xhigh"],
|
|
790
|
-
defaultEffort: "xhigh",
|
|
791
|
-
disableField: "reasoning_effort"
|
|
792
|
-
}
|
|
793
|
-
},
|
|
794
|
-
modalities: { image: true, video: true }
|
|
795
|
-
},
|
|
796
|
-
{
|
|
797
|
-
id: "qwen3.8-max-0902",
|
|
798
|
-
contextWindowSize: 1e6,
|
|
799
|
-
capabilities: {
|
|
800
|
-
reasoning: {
|
|
801
|
-
thinking: true,
|
|
802
|
-
efforts: ["low", "medium", "xhigh"],
|
|
803
|
-
defaultEffort: "xhigh",
|
|
804
|
-
disableField: "reasoning_effort"
|
|
805
|
-
}
|
|
806
|
-
},
|
|
807
|
-
modalities: { image: true, video: true }
|
|
808
|
-
},
|
|
809
|
-
{
|
|
810
|
-
id: "qwen3.8-flash",
|
|
811
|
-
contextWindowSize: 1e6,
|
|
812
|
-
capabilities: {
|
|
813
|
-
reasoning: {
|
|
814
|
-
thinking: true,
|
|
815
|
-
efforts: ["low", "medium", "xhigh"],
|
|
816
|
-
defaultEffort: "xhigh",
|
|
817
|
-
disableField: "reasoning_effort"
|
|
818
|
-
}
|
|
819
|
-
},
|
|
820
|
-
modalities: { image: true, video: true }
|
|
821
|
-
},
|
|
822
|
-
{
|
|
823
|
-
id: "deepseek-v4-pro-0813",
|
|
824
|
-
contextWindowSize: 1e6,
|
|
825
|
-
capabilities: {
|
|
826
|
-
reasoning: {
|
|
827
|
-
thinking: true,
|
|
828
|
-
efforts: ["low", "high", "max"],
|
|
829
|
-
defaultEffort: "high",
|
|
830
|
-
disableField: "enable_thinking"
|
|
831
|
-
}
|
|
832
|
-
}
|
|
833
|
-
},
|
|
834
|
-
{
|
|
835
|
-
id: "deepseek-v4-flash-0731",
|
|
836
|
-
contextWindowSize: 1e6,
|
|
837
|
-
capabilities: {
|
|
838
|
-
reasoning: {
|
|
839
|
-
thinking: true,
|
|
840
|
-
efforts: ["low", "high", "max"],
|
|
841
|
-
defaultEffort: "high",
|
|
842
|
-
disableField: "enable_thinking"
|
|
843
|
-
}
|
|
844
|
-
}
|
|
845
|
-
},
|
|
846
|
-
{
|
|
847
|
-
id: "kimi-k3",
|
|
848
|
-
thinkingMandatory: true,
|
|
849
|
-
contextWindowSize: 1e6,
|
|
850
|
-
capabilities: {
|
|
851
|
-
reasoning: {
|
|
852
|
-
thinking: true,
|
|
853
|
-
efforts: ["low", "high", "max"],
|
|
854
|
-
defaultEffort: "max",
|
|
855
|
-
canDisable: false,
|
|
856
|
-
disableField: "reasoning_effort"
|
|
857
|
-
}
|
|
858
|
-
},
|
|
859
|
-
modalities: { image: true }
|
|
860
|
-
},
|
|
861
|
-
{
|
|
862
|
-
id: "kimi-k2.7-code",
|
|
863
|
-
thinkingMandatory: true,
|
|
864
|
-
enableThinking: true,
|
|
865
|
-
contextWindowSize: 262144,
|
|
866
|
-
capabilities: {
|
|
867
|
-
reasoning: {
|
|
868
|
-
thinking: true,
|
|
869
|
-
toggleOnly: true,
|
|
870
|
-
canDisable: false,
|
|
871
|
-
disableField: "enable_thinking"
|
|
872
|
-
}
|
|
873
|
-
},
|
|
874
|
-
modalities: { image: true, video: true }
|
|
875
|
-
},
|
|
876
|
-
{
|
|
877
|
-
id: "kimi-k2.6",
|
|
878
|
-
enableThinking: true,
|
|
879
|
-
contextWindowSize: 262144,
|
|
880
|
-
capabilities: {
|
|
881
|
-
reasoning: {
|
|
882
|
-
thinking: true,
|
|
883
|
-
toggleOnly: true,
|
|
884
|
-
disableField: "enable_thinking"
|
|
885
|
-
}
|
|
886
|
-
},
|
|
887
|
-
modalities: { image: true, video: true }
|
|
888
|
-
}
|
|
889
|
-
],
|
|
890
|
-
modelsEditable: true,
|
|
891
|
-
modelNamePrefix: "ModelStudio Standard",
|
|
892
|
-
// The Responses API on these endpoints serves the server-side `web_search`
|
|
893
|
-
// / `web_extractor` tools with the same key, so the built-in tool needs no
|
|
894
|
-
// extra configuration.
|
|
895
|
-
webSearch: { backend: "dashscope" },
|
|
896
|
-
uiGroup: "alibaba",
|
|
897
|
-
uiLabels: { flowTitle: "Alibaba ModelStudio", baseUrlStepTitle: "Region" }
|
|
898
|
-
};
|
|
899
|
-
|
|
900
|
-
// packages/core/src/providers/presets/openrouter.ts
|
|
901
|
-
init_esbuild_shims();
|
|
902
|
-
var OPENROUTER_ENV_KEY = "OPENROUTER_API_KEY";
|
|
903
|
-
var OPENROUTER_BASE_URL = "https://openrouter.ai/api/v1";
|
|
904
|
-
var openRouterProvider = {
|
|
905
|
-
id: "openrouter",
|
|
906
|
-
label: "OpenRouter",
|
|
907
|
-
description: "Connect with an OpenRouter API key (get one from openrouter.ai/keys)",
|
|
908
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
909
|
-
baseUrl: OPENROUTER_BASE_URL,
|
|
910
|
-
envKey: OPENROUTER_ENV_KEY,
|
|
911
|
-
models: [
|
|
912
|
-
{ id: "z-ai/glm-4.5-air:free", contextWindowSize: 128e3 },
|
|
913
|
-
{ id: "openai/gpt-oss-120b:free", contextWindowSize: 131072 }
|
|
914
|
-
],
|
|
915
|
-
modelsEditable: true,
|
|
916
|
-
modelNamePrefix: "OpenRouter",
|
|
917
|
-
ownsModel: /* @__PURE__ */ __name((model) => {
|
|
918
|
-
if (model.envKey !== OPENROUTER_ENV_KEY) return false;
|
|
919
|
-
try {
|
|
920
|
-
const host = new URL(model.baseUrl ?? "").hostname;
|
|
921
|
-
return host === "openrouter.ai" || host.endsWith(".openrouter.ai");
|
|
922
|
-
} catch {
|
|
923
|
-
return false;
|
|
924
|
-
}
|
|
925
|
-
}, "ownsModel"),
|
|
926
|
-
customHeaders: {
|
|
927
|
-
"HTTP-Referer": "https://github.com/QwenLM/qwen-code.git",
|
|
928
|
-
"X-OpenRouter-Title": "Qwen Code"
|
|
929
|
-
},
|
|
930
|
-
documentationUrl: "https://openrouter.ai/docs",
|
|
931
|
-
uiGroup: "third-party"
|
|
932
|
-
};
|
|
933
|
-
|
|
934
|
-
// packages/core/src/providers/presets/requesty.ts
|
|
935
|
-
init_esbuild_shims();
|
|
936
|
-
var REQUESTY_ENV_KEY = "REQUESTY_API_KEY";
|
|
937
|
-
var REQUESTY_BASE_URL = "https://router.requesty.ai/v1";
|
|
938
|
-
var requestyProvider = {
|
|
939
|
-
id: "requesty",
|
|
940
|
-
label: "Requesty",
|
|
941
|
-
description: "Connect with a Requesty API key (get one from app.requesty.ai/api-keys)",
|
|
942
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
943
|
-
baseUrl: REQUESTY_BASE_URL,
|
|
944
|
-
envKey: REQUESTY_ENV_KEY,
|
|
945
|
-
models: [
|
|
946
|
-
{ id: "openai/gpt-4o-mini", contextWindowSize: 128e3 },
|
|
947
|
-
{ id: "openai/gpt-4o", contextWindowSize: 128e3 }
|
|
948
|
-
],
|
|
949
|
-
modelsEditable: true,
|
|
950
|
-
modelNamePrefix: "Requesty",
|
|
951
|
-
ownsModel: /* @__PURE__ */ __name((model) => {
|
|
952
|
-
if (model.envKey !== REQUESTY_ENV_KEY) return false;
|
|
953
|
-
try {
|
|
954
|
-
const host = new URL(model.baseUrl ?? "").hostname;
|
|
955
|
-
return host === "router.requesty.ai" || host.endsWith(".requesty.ai");
|
|
956
|
-
} catch {
|
|
957
|
-
return false;
|
|
958
|
-
}
|
|
959
|
-
}, "ownsModel"),
|
|
960
|
-
customHeaders: {
|
|
961
|
-
"HTTP-Referer": "https://github.com/QwenLM/qwen-code.git",
|
|
962
|
-
"X-Title": "Qwen Code"
|
|
963
|
-
},
|
|
964
|
-
documentationUrl: "https://docs.requesty.ai",
|
|
965
|
-
uiGroup: "third-party"
|
|
966
|
-
};
|
|
967
|
-
|
|
968
|
-
// packages/core/src/providers/presets/deepseek.ts
|
|
969
|
-
init_esbuild_shims();
|
|
970
|
-
var deepseekProvider = {
|
|
971
|
-
id: "deepseek",
|
|
972
|
-
label: "DeepSeek API Key",
|
|
973
|
-
description: "Quick setup for DeepSeek (deepseek-v4-flash, deepseek-v4-pro)",
|
|
974
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
975
|
-
baseUrl: "https://api.deepseek.com",
|
|
976
|
-
envKey: "DEEPSEEK_API_KEY",
|
|
977
|
-
models: [
|
|
978
|
-
{
|
|
979
|
-
id: "deepseek-v4-pro",
|
|
980
|
-
contextWindowSize: 1e6,
|
|
981
|
-
capabilities: {
|
|
982
|
-
reasoning: {
|
|
983
|
-
thinking: true,
|
|
984
|
-
efforts: ["low", "high", "max"],
|
|
985
|
-
defaultEffort: "high",
|
|
986
|
-
disableField: "thinking"
|
|
987
|
-
}
|
|
988
|
-
}
|
|
989
|
-
},
|
|
990
|
-
{
|
|
991
|
-
id: "deepseek-v4-flash",
|
|
992
|
-
capabilities: {
|
|
993
|
-
reasoning: {
|
|
994
|
-
thinking: true,
|
|
995
|
-
efforts: ["low", "high", "max"],
|
|
996
|
-
defaultEffort: "high",
|
|
997
|
-
disableField: "thinking"
|
|
998
|
-
}
|
|
999
|
-
},
|
|
1000
|
-
contextWindowSize: 1e6
|
|
1001
|
-
}
|
|
1002
|
-
],
|
|
1003
|
-
modelsEditable: true,
|
|
1004
|
-
modelNamePrefix: "DeepSeek",
|
|
1005
|
-
documentationUrl: "https://api-docs.deepseek.com/zh-cn/",
|
|
1006
|
-
uiGroup: "third-party"
|
|
1007
|
-
};
|
|
1008
|
-
|
|
1009
|
-
// packages/core/src/providers/presets/grok.ts
|
|
1010
|
-
init_esbuild_shims();
|
|
1011
|
-
var GROK_ENV_KEY = "XAI_API_KEY";
|
|
1012
|
-
var GROK_BASE_URL = "https://api.x.ai/v1";
|
|
1013
|
-
var grokProvider = {
|
|
1014
|
-
id: "grok",
|
|
1015
|
-
label: "Grok (xAI) API Key",
|
|
1016
|
-
description: "Quick setup for xAI Grok chat & code models",
|
|
1017
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
1018
|
-
baseUrl: GROK_BASE_URL,
|
|
1019
|
-
envKey: GROK_ENV_KEY,
|
|
1020
|
-
// xAI's API follows the standard OpenAI format. Grok models reason by
|
|
1021
|
-
// default (grok-4.5 exposes an optional reasoning_effort knob, default
|
|
1022
|
-
// high) and have no Qwen-style enable_thinking toggle, so the preset
|
|
1023
|
-
// carries only each model's context window.
|
|
1024
|
-
models: [
|
|
1025
|
-
{ id: "grok-4.5", contextWindowSize: 5e5 },
|
|
1026
|
-
{ id: "grok-4.3", contextWindowSize: 1e6 },
|
|
1027
|
-
{ id: "grok-4.20-0309-reasoning", contextWindowSize: 1e6 },
|
|
1028
|
-
{ id: "grok-4.20-0309-non-reasoning", contextWindowSize: 1e6 },
|
|
1029
|
-
{ id: "grok-4.20-multi-agent-0309", contextWindowSize: 1e6 },
|
|
1030
|
-
{ id: "grok-build-0.1", contextWindowSize: 262144 }
|
|
1031
|
-
],
|
|
1032
|
-
modelsEditable: true,
|
|
1033
|
-
modelNamePrefix: "Grok",
|
|
1034
|
-
documentationUrl: "https://docs.x.ai/docs",
|
|
1035
|
-
uiGroup: "third-party"
|
|
1036
|
-
};
|
|
1037
|
-
|
|
1038
|
-
// packages/core/src/providers/presets/minimax.ts
|
|
1039
|
-
init_esbuild_shims();
|
|
1040
|
-
var minimaxProvider = {
|
|
1041
|
-
id: "minimax",
|
|
1042
|
-
label: "MiniMax API Key",
|
|
1043
|
-
description: "Quick setup for MiniMax models",
|
|
1044
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
1045
|
-
baseUrl: [
|
|
1046
|
-
{
|
|
1047
|
-
id: "international",
|
|
1048
|
-
label: "International",
|
|
1049
|
-
url: "https://api.minimax.io/v1",
|
|
1050
|
-
documentationUrl: "https://www.minimax.io/platform"
|
|
1051
|
-
},
|
|
1052
|
-
{
|
|
1053
|
-
id: "china",
|
|
1054
|
-
label: "China",
|
|
1055
|
-
url: "https://api.minimaxi.com/v1",
|
|
1056
|
-
documentationUrl: "https://platform.minimaxi.com"
|
|
1057
|
-
}
|
|
1058
|
-
],
|
|
1059
|
-
envKey: "MINIMAX_API_KEY",
|
|
1060
|
-
models: [
|
|
1061
|
-
{
|
|
1062
|
-
id: "MiniMax-M3",
|
|
1063
|
-
contextWindowSize: 1e6,
|
|
1064
|
-
modalities: { image: true, video: true }
|
|
1065
|
-
},
|
|
1066
|
-
{ id: "MiniMax-M2.7", contextWindowSize: 204800 },
|
|
1067
|
-
{ id: "MiniMax-M2.7-highspeed", contextWindowSize: 204800 },
|
|
1068
|
-
{ id: "MiniMax-M2.5", contextWindowSize: 196608 },
|
|
1069
|
-
{ id: "MiniMax-M2.5-highspeed", contextWindowSize: 196608 },
|
|
1070
|
-
{ id: "image-01", imageOnly: true },
|
|
1071
|
-
{ id: "image-01-live", imageOnly: true }
|
|
1072
|
-
],
|
|
1073
|
-
modelsEditable: true,
|
|
1074
|
-
modelNamePrefix: "MiniMax",
|
|
1075
|
-
uiGroup: "third-party"
|
|
1076
|
-
};
|
|
1077
|
-
|
|
1078
|
-
// packages/core/src/providers/presets/zai.ts
|
|
1079
|
-
init_esbuild_shims();
|
|
1080
|
-
var zaiProvider = {
|
|
1081
|
-
id: "zai",
|
|
1082
|
-
label: "Z.AI API Key",
|
|
1083
|
-
description: "Quick setup for Z.AI models",
|
|
1084
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
1085
|
-
baseUrl: [
|
|
1086
|
-
{
|
|
1087
|
-
id: "standard-api-key",
|
|
1088
|
-
label: "Standard API Key",
|
|
1089
|
-
url: "https://api.z.ai/api/paas/v4",
|
|
1090
|
-
documentationUrl: "https://docs.z.ai/"
|
|
1091
|
-
},
|
|
1092
|
-
{
|
|
1093
|
-
id: "coding-plan",
|
|
1094
|
-
label: "Coding Plan",
|
|
1095
|
-
url: "https://api.z.ai/api/coding/paas/v4",
|
|
1096
|
-
documentationUrl: "https://docs.z.ai/"
|
|
1097
|
-
}
|
|
1098
|
-
],
|
|
1099
|
-
envKey: "ZAI_API_KEY",
|
|
1100
|
-
models: [
|
|
1101
|
-
{ id: "GLM-5.2", contextWindowSize: 1e6, enableThinking: true },
|
|
1102
|
-
{ id: "GLM-5.1", contextWindowSize: 204800, enableThinking: true },
|
|
1103
|
-
{ id: "GLM-5", contextWindowSize: 204800 },
|
|
1104
|
-
{ id: "GLM-5-Turbo", contextWindowSize: 204800 }
|
|
1105
|
-
],
|
|
1106
|
-
modelsEditable: true,
|
|
1107
|
-
modelNamePrefix: "Z.AI",
|
|
1108
|
-
uiGroup: "third-party"
|
|
1109
|
-
};
|
|
1110
|
-
|
|
1111
|
-
// packages/core/src/providers/presets/moonshot.ts
|
|
1112
|
-
init_esbuild_shims();
|
|
1113
|
-
var moonshotProvider = {
|
|
1114
|
-
id: "moonshot",
|
|
1115
|
-
label: "Kimi (Moonshot AI) API Key",
|
|
1116
|
-
description: "Quick setup for Kimi models",
|
|
1117
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
1118
|
-
baseUrl: [
|
|
1119
|
-
{
|
|
1120
|
-
id: "international",
|
|
1121
|
-
label: "International",
|
|
1122
|
-
url: "https://api.moonshot.ai/v1",
|
|
1123
|
-
documentationUrl: "https://platform.kimi.ai/docs"
|
|
1124
|
-
},
|
|
1125
|
-
{
|
|
1126
|
-
id: "china",
|
|
1127
|
-
label: "China",
|
|
1128
|
-
url: "https://api.moonshot.cn/v1",
|
|
1129
|
-
documentationUrl: "https://platform.moonshot.cn/docs"
|
|
1130
|
-
}
|
|
1131
|
-
],
|
|
1132
|
-
envKey: "MOONSHOT_API_KEY",
|
|
1133
|
-
models: [
|
|
1134
|
-
{
|
|
1135
|
-
id: "kimi-k3",
|
|
1136
|
-
capabilities: {
|
|
1137
|
-
reasoning: {
|
|
1138
|
-
thinking: true,
|
|
1139
|
-
efforts: ["low", "high", "max"],
|
|
1140
|
-
defaultEffort: "max",
|
|
1141
|
-
canDisable: false,
|
|
1142
|
-
disableField: "reasoning_effort"
|
|
1143
|
-
}
|
|
1144
|
-
},
|
|
1145
|
-
contextWindowSize: 1e6,
|
|
1146
|
-
// K3 always thinks: the API exposes `reasoning_effort` but no way to
|
|
1147
|
-
// turn thinking off, so never emit a disable shape on the wire.
|
|
1148
|
-
thinkingMandatory: true,
|
|
1149
|
-
modalities: { image: true, video: true }
|
|
1150
|
-
},
|
|
1151
|
-
{
|
|
1152
|
-
id: "kimi-k2.7-code",
|
|
1153
|
-
capabilities: {
|
|
1154
|
-
reasoning: {
|
|
1155
|
-
thinking: true,
|
|
1156
|
-
toggleOnly: true,
|
|
1157
|
-
canDisable: false,
|
|
1158
|
-
disableField: "thinking"
|
|
1159
|
-
}
|
|
1160
|
-
},
|
|
1161
|
-
contextWindowSize: 262144,
|
|
1162
|
-
modalities: { image: true, video: true },
|
|
1163
|
-
thinkingMandatory: true
|
|
1164
|
-
},
|
|
1165
|
-
{
|
|
1166
|
-
id: "kimi-k2.7-code-highspeed",
|
|
1167
|
-
capabilities: {
|
|
1168
|
-
reasoning: {
|
|
1169
|
-
thinking: true,
|
|
1170
|
-
toggleOnly: true,
|
|
1171
|
-
canDisable: false,
|
|
1172
|
-
disableField: "thinking"
|
|
1173
|
-
}
|
|
1174
|
-
},
|
|
1175
|
-
contextWindowSize: 262144,
|
|
1176
|
-
modalities: { image: true, video: true },
|
|
1177
|
-
thinkingMandatory: true
|
|
1178
|
-
},
|
|
1179
|
-
{
|
|
1180
|
-
id: "kimi-k2.6",
|
|
1181
|
-
capabilities: {
|
|
1182
|
-
reasoning: {
|
|
1183
|
-
thinking: true,
|
|
1184
|
-
toggleOnly: true,
|
|
1185
|
-
disableField: "thinking"
|
|
1186
|
-
}
|
|
1187
|
-
},
|
|
1188
|
-
contextWindowSize: 262144,
|
|
1189
|
-
modalities: { image: true, video: true }
|
|
1190
|
-
}
|
|
1191
|
-
],
|
|
1192
|
-
modelsEditable: true,
|
|
1193
|
-
modelNamePrefix: "Kimi",
|
|
1194
|
-
uiGroup: "third-party"
|
|
1195
|
-
};
|
|
1196
|
-
|
|
1197
|
-
// packages/core/src/providers/presets/idealab.ts
|
|
1198
|
-
init_esbuild_shims();
|
|
1199
|
-
var idealabProvider = {
|
|
1200
|
-
id: "idealab",
|
|
1201
|
-
label: "Idealab API Key",
|
|
1202
|
-
description: "Alibaba internal LLM service (Qwen3.6-Plus-DogFooding, DeepSeek V4, Kimi K2.6)",
|
|
1203
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
1204
|
-
baseUrl: "https://idealab.alibaba-inc.com/api/openai/v1",
|
|
1205
|
-
envKey: "IDEALAB_API_KEY",
|
|
1206
|
-
models: [
|
|
1207
|
-
{
|
|
1208
|
-
id: "Qwen3.6-Plus-DogFooding",
|
|
1209
|
-
contextWindowSize: 1e6,
|
|
1210
|
-
enableThinking: true,
|
|
1211
|
-
modalities: { image: true, video: true }
|
|
1212
|
-
},
|
|
1213
|
-
{
|
|
1214
|
-
id: "bailian/deepseek-v4-pro",
|
|
1215
|
-
contextWindowSize: 1e6,
|
|
1216
|
-
enableThinking: true
|
|
1217
|
-
},
|
|
1218
|
-
{
|
|
1219
|
-
id: "bailian/deepseek-v4-flash",
|
|
1220
|
-
contextWindowSize: 1e6,
|
|
1221
|
-
enableThinking: true
|
|
1222
|
-
},
|
|
1223
|
-
{
|
|
1224
|
-
id: "bailian/kimi-k2.6",
|
|
1225
|
-
contextWindowSize: 262144,
|
|
1226
|
-
enableThinking: true
|
|
1227
|
-
}
|
|
1228
|
-
],
|
|
1229
|
-
modelsEditable: true,
|
|
1230
|
-
modelNamePrefix: "Idealab",
|
|
1231
|
-
uiGroup: "third-party"
|
|
1232
|
-
};
|
|
1233
|
-
|
|
1234
|
-
// packages/core/src/providers/presets/modelscope.ts
|
|
1235
|
-
init_esbuild_shims();
|
|
1236
|
-
var modelscopeProvider = {
|
|
1237
|
-
id: "modelscope",
|
|
1238
|
-
label: "ModelScope API Key",
|
|
1239
|
-
description: "Quick setup for ModelScope API Inference",
|
|
1240
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
1241
|
-
baseUrl: "https://api-inference.modelscope.cn/v1",
|
|
1242
|
-
envKey: "MODELSCOPE_API_KEY",
|
|
1243
|
-
models: [
|
|
1244
|
-
{
|
|
1245
|
-
id: "deepseek-ai/DeepSeek-V4-Flash",
|
|
1246
|
-
contextWindowSize: 1e6,
|
|
1247
|
-
enableThinking: true
|
|
1248
|
-
},
|
|
1249
|
-
{
|
|
1250
|
-
id: "Qwen/Qwen3.5-397B-A17B",
|
|
1251
|
-
contextWindowSize: 1e6,
|
|
1252
|
-
enableThinking: true
|
|
1253
|
-
},
|
|
1254
|
-
{
|
|
1255
|
-
id: "ZhipuAI/GLM-5.1",
|
|
1256
|
-
contextWindowSize: 1e6,
|
|
1257
|
-
enableThinking: true
|
|
1258
|
-
}
|
|
1259
|
-
],
|
|
1260
|
-
modelsEditable: true,
|
|
1261
|
-
modelNamePrefix: "ModelScope",
|
|
1262
|
-
documentationUrl: "https://modelscope.cn/docs/model-service/API-Inference/intro",
|
|
1263
|
-
uiGroup: "third-party"
|
|
1264
|
-
};
|
|
1265
|
-
|
|
1266
|
-
// packages/core/src/providers/presets/custom-provider.ts
|
|
1267
|
-
init_esbuild_shims();
|
|
1268
|
-
import { createHash as createHash2 } from "node:crypto";
|
|
1269
|
-
var CUSTOM_API_KEY_ENV_PREFIX = "QWEN_CUSTOM_API_KEY_";
|
|
1270
|
-
function normalizeEnvSegment(value) {
|
|
1271
|
-
const upper = value.trim().toUpperCase();
|
|
1272
|
-
let result = "";
|
|
1273
|
-
let prevWasUnderscore = false;
|
|
1274
|
-
for (let i = 0; i < upper.length; i++) {
|
|
1275
|
-
const code = upper.charCodeAt(i);
|
|
1276
|
-
const isAlphaNum = code >= 65 && code <= 90 || code >= 48 && code <= 57;
|
|
1277
|
-
if (isAlphaNum) {
|
|
1278
|
-
result += upper[i];
|
|
1279
|
-
prevWasUnderscore = false;
|
|
1280
|
-
} else if (!prevWasUnderscore) {
|
|
1281
|
-
result += "_";
|
|
1282
|
-
prevWasUnderscore = true;
|
|
1283
|
-
}
|
|
1284
|
-
}
|
|
1285
|
-
let start = 0;
|
|
1286
|
-
let end = result.length;
|
|
1287
|
-
while (start < end && result.charCodeAt(start) === 95) start++;
|
|
1288
|
-
while (end > start && result.charCodeAt(end - 1) === 95) end--;
|
|
1289
|
-
return result.slice(start, end);
|
|
1290
|
-
}
|
|
1291
|
-
__name(normalizeEnvSegment, "normalizeEnvSegment");
|
|
1292
|
-
function stripTrailingSlashes(value) {
|
|
1293
|
-
let end = value.length;
|
|
1294
|
-
while (end > 0 && value.charCodeAt(end - 1) === 47) end--;
|
|
1295
|
-
return value.slice(0, end);
|
|
1296
|
-
}
|
|
1297
|
-
__name(stripTrailingSlashes, "stripTrailingSlashes");
|
|
1298
|
-
function generateCustomEnvKey(protocol, baseUrl) {
|
|
1299
|
-
const canonicalBaseUrl = stripTrailingSlashes(baseUrl.trim());
|
|
1300
|
-
const suffix = createHash2("sha256").update(`${protocol}\0${canonicalBaseUrl}`).digest("hex").slice(0, 12).toUpperCase();
|
|
1301
|
-
return `${CUSTOM_API_KEY_ENV_PREFIX}${normalizeEnvSegment(
|
|
1302
|
-
protocol
|
|
1303
|
-
)}_${normalizeEnvSegment(baseUrl)}_${suffix}`;
|
|
1304
|
-
}
|
|
1305
|
-
__name(generateCustomEnvKey, "generateCustomEnvKey");
|
|
1306
|
-
var customProvider = {
|
|
1307
|
-
id: "custom-openai-compatible",
|
|
1308
|
-
label: "Custom Provider",
|
|
1309
|
-
description: "Manually connect a local server, proxy, or unsupported provider",
|
|
1310
|
-
protocol: "openai" /* USE_OPENAI */,
|
|
1311
|
-
protocolOptions: [
|
|
1312
|
-
"openai" /* USE_OPENAI */,
|
|
1313
|
-
"openai-responses" /* USE_OPENAI_RESPONSES */,
|
|
1314
|
-
"anthropic" /* USE_ANTHROPIC */,
|
|
1315
|
-
"gemini" /* USE_GEMINI */
|
|
1316
|
-
],
|
|
1317
|
-
baseUrl: void 0,
|
|
1318
|
-
envKey: generateCustomEnvKey,
|
|
1319
|
-
models: void 0,
|
|
1320
|
-
modelNamePrefix: "",
|
|
1321
|
-
showAdvancedConfig: true,
|
|
1322
|
-
// Detect existing custom entries by our env-key namespace for UI/ACP flows,
|
|
1323
|
-
// but merge installs by id+baseUrl so /auth can add another custom model
|
|
1324
|
-
// without deleting models from other endpoints or different models on the
|
|
1325
|
-
// same endpoint.
|
|
1326
|
-
ownsModel: /* @__PURE__ */ __name((model) => typeof model.envKey === "string" && model.envKey.startsWith(CUSTOM_API_KEY_ENV_PREFIX), "ownsModel"),
|
|
1327
|
-
mergeModelsByIdentity: true,
|
|
1328
|
-
uiGroup: "custom"
|
|
1329
|
-
};
|
|
1330
|
-
|
|
1331
|
-
// packages/core/src/providers/all-providers.ts
|
|
1332
|
-
var ALL_PROVIDERS = [
|
|
1333
|
-
codingPlanProvider,
|
|
1334
|
-
tokenPlanProvider,
|
|
1335
|
-
alibabaStandardProvider,
|
|
1336
|
-
deepseekProvider,
|
|
1337
|
-
grokProvider,
|
|
1338
|
-
minimaxProvider,
|
|
1339
|
-
zaiProvider,
|
|
1340
|
-
moonshotProvider,
|
|
1341
|
-
idealabProvider,
|
|
1342
|
-
modelscopeProvider,
|
|
1343
|
-
openRouterProvider,
|
|
1344
|
-
requestyProvider,
|
|
1345
|
-
customProvider
|
|
1346
|
-
];
|
|
1347
|
-
var ALIBABA_PROVIDERS = ALL_PROVIDERS.filter(
|
|
1348
|
-
(p) => p.uiGroup === "alibaba"
|
|
1349
|
-
);
|
|
1350
|
-
var THIRD_PARTY_PROVIDERS = ALL_PROVIDERS.filter(
|
|
1351
|
-
(p) => p.uiGroup === "third-party"
|
|
1352
|
-
);
|
|
1353
|
-
function findProviderById(id) {
|
|
1354
|
-
return ALL_PROVIDERS.find((p) => p.id === id);
|
|
1355
|
-
}
|
|
1356
|
-
__name(findProviderById, "findProviderById");
|
|
1357
|
-
function findProviderByCredentials(baseUrl, envKey) {
|
|
1358
|
-
return ALL_PROVIDERS.find(
|
|
1359
|
-
(p) => providerMatchesCredentials(p, baseUrl, envKey)
|
|
1360
|
-
);
|
|
1361
|
-
}
|
|
1362
|
-
__name(findProviderByCredentials, "findProviderByCredentials");
|
|
1363
|
-
function getAllProviderBaseUrls() {
|
|
1364
|
-
return ALL_PROVIDERS.flatMap((p) => {
|
|
1365
|
-
if (typeof p.baseUrl === "string") return [p.baseUrl];
|
|
1366
|
-
if (Array.isArray(p.baseUrl))
|
|
1367
|
-
return p.baseUrl.map((o) => o.url);
|
|
1368
|
-
return [];
|
|
1369
|
-
});
|
|
1370
|
-
}
|
|
1371
|
-
__name(getAllProviderBaseUrls, "getAllProviderBaseUrls");
|
|
1372
|
-
|
|
1373
|
-
export {
|
|
1374
|
-
resolveOwnsModel,
|
|
1375
|
-
resolveMetadataKey,
|
|
1376
|
-
PROVIDER_METADATA_NS,
|
|
1377
|
-
buildInstallPlan,
|
|
1378
|
-
computeModelListVersion,
|
|
1379
|
-
getDefaultBaseUrlForProtocol,
|
|
1380
|
-
resolveBaseUrl,
|
|
1381
|
-
getDefaultModelIds,
|
|
1382
|
-
findExistingProviderModels,
|
|
1383
|
-
shouldShowStep,
|
|
1384
|
-
providerMatchesCredentials,
|
|
1385
|
-
buildProviderTemplate,
|
|
1386
|
-
customProvider,
|
|
1387
|
-
ALL_PROVIDERS,
|
|
1388
|
-
ALIBABA_PROVIDERS,
|
|
1389
|
-
THIRD_PARTY_PROVIDERS,
|
|
1390
|
-
findProviderById,
|
|
1391
|
-
findProviderByCredentials,
|
|
1392
|
-
getAllProviderBaseUrls
|
|
1393
|
-
};
|
|
1394
|
-
/**
|
|
1395
|
-
* @license
|
|
1396
|
-
* Copyright 2026 Qwen Team
|
|
1397
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
1398
|
-
*/
|
|
1399
|
-
/**
|
|
1400
|
-
* @license
|
|
1401
|
-
* Copyright 2025 Qwen Team
|
|
1402
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
1403
|
-
*/
|
|
1404
|
-
/**
|
|
1405
|
-
* @license
|
|
1406
|
-
* Copyright 2026 Qwen Team
|
|
1407
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
1408
|
-
*
|
|
1409
|
-
* Provider registry — imports all provider definitions and assembles the
|
|
1410
|
-
* lookup tables used by the UI and CLI commands.
|
|
1411
|
-
*/
|