@qwen-code/qwen-code 0.19.8 → 0.19.9-preview.0
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/SKILL.md +1 -0
- package/bundled/qc-helper/docs/configuration/auth.md +40 -55
- package/bundled/qc-helper/docs/configuration/model-providers.md +224 -218
- package/bundled/qc-helper/docs/configuration/settings.md +68 -51
- package/bundled/qc-helper/docs/features/_meta.ts +1 -0
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +12 -2
- package/bundled/qc-helper/docs/features/channels/overview.md +82 -7
- package/bundled/qc-helper/docs/features/channels/wecom.md +6 -0
- package/bundled/qc-helper/docs/features/code-review.md +109 -41
- package/bundled/qc-helper/docs/features/commands.md +45 -44
- package/bundled/qc-helper/docs/features/computer-use.md +77 -0
- package/bundled/qc-helper/docs/features/hooks.md +29 -0
- package/bundled/qc-helper/docs/features/sub-agents.md +21 -0
- package/bundled/qc-helper/docs/features/tool-use-summaries.md +19 -23
- package/bundled/qc-helper/docs/integration-vscode.md +2 -2
- package/bundled/qc-helper/docs/qwen-serve.md +66 -23
- package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +2 -2
- package/bundled/review/DESIGN.md +303 -46
- package/bundled/review/SKILL.md +670 -165
- package/chunks/MaxSizedBox-BEVSAWZ6.js +70 -0
- package/chunks/{StandaloneSessionPicker-EYRGH6PJ.js → StandaloneSessionPicker-2DA2MDDE.js} +81 -79
- package/chunks/{acpAgent-GRFTTRHW.js → acpAgent-G3WJU3PS.js} +1318 -465
- package/chunks/agent-DD3WSHXE.js +68 -0
- package/chunks/agent-headless-MHI7U2CU.js +62 -0
- package/chunks/{anthropicContentGenerator-CPF22MA7.js → anthropicContentGenerator-56U3YCP2.js} +187 -31
- package/chunks/{artifact-tool-D233YJFH.js → artifact-tool-MIZLXBLF.js} +5 -5
- package/chunks/{askUserQuestion-MKL5ZTMC.js → askUserQuestion-XMJVPNWM.js} +6 -6
- package/chunks/bridge-HKEWPNB5.js +78 -0
- package/chunks/{ca-MKD32FQL.js → ca-C2JTT2N5.js} +68 -6
- package/chunks/channel-worker-group-K7QKH6IG.js +13 -0
- package/chunks/channel-worker-manager-YSFB4HUU.js +418 -0
- package/chunks/channel-worker-supervisor-QCKIOYZD.js +20 -0
- package/chunks/chunk-2FMQQXMM.js +38 -0
- package/chunks/{chunk-CSOTA7KX.js → chunk-2FO5GFKZ.js} +2 -2
- package/chunks/{chunk-QQDPRDVW.js → chunk-2HRYPZT5.js} +1 -1
- package/chunks/{chunk-UXEW557D.js → chunk-2J4ZWME4.js} +3 -3
- package/chunks/{chunk-P3XEEI3X.js → chunk-2TQXXQMI.js} +36 -7
- package/chunks/{chunk-GSHQYYIV.js → chunk-2UW5RFRP.js} +6 -26
- package/chunks/{chunk-6IAWPIQ6.js → chunk-2W3OOD4W.js} +5 -3
- package/chunks/{chunk-2PSWA5ID.js → chunk-2X56YUSZ.js} +1 -1
- package/chunks/{chunk-NQKLOAVJ.js → chunk-2Z5UX4KI.js} +2 -2
- package/chunks/chunk-3MX7D6QN.js +516 -0
- package/chunks/{chunk-EEN2TKST.js → chunk-43RXPU5Q.js} +2 -2
- package/chunks/{chunk-55ZMG67I.js → chunk-4LD5APFL.js} +4 -4
- package/chunks/{chunk-WF4FAXDL.js → chunk-4QZ3XHWE.js} +62 -62
- package/chunks/chunk-4QZADKJS.js +34 -0
- package/chunks/{chunk-UIDXQNMV.js → chunk-4WGODMVR.js} +1 -1
- package/chunks/{chunk-E6US47KI.js → chunk-4WKAA4KS.js} +1 -1
- package/chunks/{chunk-TI3BWD4D.js → chunk-54UZQ57N.js} +39 -19
- package/chunks/{chunk-3GONHQOA.js → chunk-57OAHC2Y.js} +1 -1
- package/chunks/{chunk-JZSY4WP3.js → chunk-5DTTYNB7.js} +1 -1
- package/chunks/chunk-5HBA2Z7V.js +28 -0
- package/chunks/{chunk-SKAZWEV5.js → chunk-5M6IDOMF.js} +35 -98
- package/chunks/{chunk-A4BMJM77.js → chunk-5O2XNYP6.js} +1 -0
- package/chunks/{chunk-FQNC62B2.js → chunk-5VHASII5.js} +11 -11
- package/chunks/{chunk-GO6LNQXT.js → chunk-6AM5D4ME.js} +1 -1
- package/chunks/{chunk-BJBWRCSK.js → chunk-6H67XLET.js} +1 -1
- package/chunks/{chunk-O7FIRWJV.js → chunk-6JPDCEDB.js} +3 -3
- package/chunks/{chunk-3UP777ZS.js → chunk-6RLROE6G.js} +1 -1
- package/chunks/{chunk-GN3F6PIU.js → chunk-6WPJRYLZ.js} +5 -5
- package/chunks/{chunk-ZERZSAZL.js → chunk-75DOP5OR.js} +2 -2
- package/chunks/chunk-7DKX4A5Z.js +91 -0
- package/chunks/{chunk-M7S4GK5Z.js → chunk-7IDCQ35Q.js} +147 -30
- package/chunks/{chunk-22MNNNXE.js → chunk-7NFB7LBQ.js} +11 -3
- package/chunks/{chunk-ZL5HN75Q.js → chunk-7R4DPSRA.js} +37 -3
- package/chunks/{chunk-VZ7HY3YU.js → chunk-7STBROEV.js} +3 -3
- package/chunks/{chunk-SAIILPQ3.js → chunk-7X7TEQNX.js} +5 -3
- package/chunks/{chunk-RMLZAUWH.js → chunk-A3U2TQUL.js} +10 -12
- package/chunks/{chunk-IRJWHZWU.js → chunk-A4UCTEB5.js} +2 -2
- package/chunks/{chunk-BOBRZZKD.js → chunk-A7W4GQRW.js} +5 -5
- package/chunks/{chunk-O33TBKDC.js → chunk-AAUZBE5Y.js} +155 -19
- package/chunks/{chunk-SQ2UATK7.js → chunk-ADLYZJYZ.js} +11 -11
- package/chunks/{chunk-QYUE6W3T.js → chunk-ALGGS7UH.js} +2 -39
- package/chunks/{chunk-WMPVYQ4P.js → chunk-ARKANCNX.js} +3 -2
- package/chunks/{chunk-IBY3Q3HG.js → chunk-AU4R7ACM.js} +967 -181
- package/chunks/{channel-worker-supervisor-NZQUOEFJ.js → chunk-B7MFJBKE.js} +190 -34
- package/chunks/{chunk-HW4N45EE.js → chunk-B7NUUEXC.js} +38 -11
- package/chunks/{chunk-3B26UVCX.js → chunk-BLPMRN4B.js} +39 -10
- package/chunks/{chunk-ZN5T4BHI.js → chunk-BPZALHVR.js} +2 -2
- package/chunks/{chunk-BVYU3ZTI.js → chunk-BXT6PQ73.js} +1020 -942
- package/chunks/{chunk-OFEVLU4C.js → chunk-CARU2RR2.js} +1 -1
- package/chunks/{chunk-HDOH3QYE.js → chunk-CEGKYZDB.js} +2 -2
- package/chunks/{chunk-GLE2YUPU.js → chunk-COH43MRJ.js} +1 -1
- package/chunks/{chunk-E5A7LHNN.js → chunk-CPBF7KYF.js} +1 -1
- package/chunks/{chunk-UWCTAVOD.js → chunk-CR3C7WXL.js} +1 -1
- package/chunks/{chunk-IWKSG2AR.js → chunk-CXAOG665.js} +1 -1
- package/chunks/{chunk-64WXLC72.js → chunk-DJ2GSRLV.js} +1 -1
- package/chunks/{chunk-QN5NZ3UQ.js → chunk-DMTGGOSA.js} +2 -2
- package/chunks/{chunk-27BHARDE.js → chunk-DMVA55W5.js} +2124 -30
- package/chunks/{chunk-JPALE3PA.js → chunk-DQCCLVQK.js} +6 -6
- package/chunks/{chunk-X2XNQQJI.js → chunk-E2UVIFI2.js} +186 -399
- package/chunks/{chunk-KHDZHZMH.js → chunk-E5Z2AVNV.js} +1 -1
- package/chunks/{chunk-E7EMCSUG.js → chunk-EAHMOXLL.js} +64 -42
- package/chunks/{chunk-VGGOPZUL.js → chunk-EJ3KGYWL.js} +36 -8
- package/chunks/{chunk-DIWVZ3VM.js → chunk-ERTHKDKN.js} +5 -5
- package/chunks/{chunk-UX6OTBVD.js → chunk-EX5OULP3.js} +2 -2
- package/chunks/{chunk-5MBO76SL.js → chunk-F333XEAU.js} +3 -3
- package/chunks/{chunk-OACJLMLD.js → chunk-FBU7WRZI.js} +18 -2
- package/chunks/{chunk-5IFG2VC4.js → chunk-FCMNKVXT.js} +1 -1
- package/chunks/chunk-FEOBU3FA.js +253 -0
- package/chunks/{chunk-LAXNEOBG.js → chunk-FI2WSOWX.js} +19 -3
- package/chunks/{chunk-E7KNELIZ.js → chunk-FSA7ERJ2.js} +2 -2
- package/chunks/{chunk-44NROQYV.js → chunk-GDQQRV43.js} +4 -4
- package/chunks/{chunk-ZE6E424U.js → chunk-GN5HJJBO.js} +2 -2
- package/chunks/{chunk-O2YT7VB4.js → chunk-GOXKNSDZ.js} +2 -65
- package/chunks/{chunk-V35MD7KN.js → chunk-GRC5HGPI.js} +1 -1
- package/chunks/{chunk-ON3JA3RU.js → chunk-GTENQOEJ.js} +7 -9
- package/chunks/{chunk-S6RLAIUR.js → chunk-GYTKQYDB.js} +1 -1
- package/chunks/{chunk-A2X3KLC3.js → chunk-GZXCZHCT.js} +3 -3
- package/chunks/{chunk-K5PGHDBN.js → chunk-H6XPXXMH.js} +1 -1
- package/chunks/{chunk-PMFULMLX.js → chunk-HCJTURZD.js} +2262 -384
- package/chunks/chunk-HGG2RRXD.js +445 -0
- package/chunks/{chunk-II73RK2S.js → chunk-HGT6JR3U.js} +20 -1
- package/chunks/{chunk-DICGXFAI.js → chunk-HJCVNZLQ.js} +11 -9
- package/chunks/{chunk-3GNOQZDC.js → chunk-HJUDVNCO.js} +17663 -14877
- package/chunks/{chunk-AYNCLGTW.js → chunk-HRUGYOJN.js} +8 -51
- package/chunks/{chunk-KYMBIKIW.js → chunk-HTHUX2T5.js} +1 -1
- package/chunks/{chunk-LQ7TMOCE.js → chunk-HTO4JFDZ.js} +1 -1
- package/chunks/{chunk-BUZ6HGL4.js → chunk-HWTL6MPR.js} +357 -59
- package/chunks/chunk-IDS7MSUP.js +74 -0
- package/chunks/{chunk-4CGOWHKM.js → chunk-J4MOFEOK.js} +2 -2
- package/chunks/chunk-JCD4FM7K.js +296 -0
- package/chunks/{chunk-22IFUCVR.js → chunk-JESCGQM3.js} +1 -1
- package/chunks/{chunk-JZHIQJOE.js → chunk-JGO6RFI2.js} +6 -6
- package/chunks/{chunk-X3YGAX7V.js → chunk-JGUT3LWZ.js} +9 -2
- package/chunks/{chunk-JRQ7EVGE.js → chunk-JW7OOJC6.js} +2 -2
- package/chunks/{chunk-OQXDAMKY.js → chunk-KF5MMGG4.js} +8 -8
- package/chunks/{chunk-42XGFRJS.js → chunk-KKRTYONM.js} +8 -6
- package/chunks/{chunk-GGQQA4JW.js → chunk-KSO42X3Z.js} +15 -2
- package/chunks/{chunk-MRO43B25.js → chunk-KW7NOTN6.js} +1 -1
- package/chunks/{chunk-54YZOP7P.js → chunk-L573Z2QZ.js} +11894 -5190
- package/chunks/{chunk-TLWA7TPR.js → chunk-L5U3ELZX.js} +2 -2
- package/chunks/{chunk-YHKAK72D.js → chunk-LHEOLOXU.js} +251 -63
- package/chunks/{chunk-H6EMK6QK.js → chunk-LQIDP6K5.js} +11913 -5207
- package/chunks/{chunk-I6WGFJJ3.js → chunk-LSEJG6AM.js} +73 -19
- package/chunks/{chunk-MZ7BABX3.js → chunk-LXLTBIDP.js} +44 -7
- package/chunks/{chunk-HLKG6CZN.js → chunk-M5GB774H.js} +1 -1
- package/chunks/{chunk-JCH35JB3.js → chunk-MKK4XGLF.js} +2 -2
- package/chunks/{chunk-YKZIAK7C.js → chunk-MO7O5722.js} +424 -40
- package/chunks/chunk-MR3PXB6E.js +48 -0
- package/chunks/{chunk-A5JOJ77H.js → chunk-MRYWYBQ4.js} +38 -15
- package/chunks/{chunk-332PWN27.js → chunk-NHDKSOEY.js} +1 -1
- package/chunks/{chunk-TSPB77TG.js → chunk-NRAFASYX.js} +1016 -2967
- package/chunks/{chunk-BMFMJINR.js → chunk-OA4JVLSA.js} +28 -2
- package/chunks/{chunk-P7M4GA57.js → chunk-OCPBI7J5.js} +1 -1
- package/chunks/chunk-OJAMDVF5.js +66 -0
- package/chunks/{chunk-IJRL2S3D.js → chunk-OKAIGAYW.js} +6 -6
- package/chunks/{chunk-FBET5XZ2.js → chunk-PEJWA3QQ.js} +29 -10
- package/chunks/{chunk-L4AMBVQG.js → chunk-PMKW35AT.js} +54 -22
- package/chunks/{chunk-AGHU5VRK.js → chunk-PZL23GTM.js} +1 -1
- package/chunks/{chunk-PC4ZXHU2.js → chunk-Q6TUALBE.js} +3 -3
- package/chunks/{chunk-FXGLL2HL.js → chunk-Q7YDKOGY.js} +1 -1
- package/chunks/{chunk-XOHNA2S6.js → chunk-QAW7PIHT.js} +3 -3
- package/chunks/{chunk-XYR5RUA5.js → chunk-QE2WJ7FS.js} +10 -3
- package/chunks/{chunk-LGFAYIKX.js → chunk-QHTIBUWB.js} +1 -1
- package/chunks/{chunk-P3MYAZBY.js → chunk-QMGX2KO2.js} +1 -1
- package/chunks/{chunk-Z3I3QJK3.js → chunk-QRUIS3DN.js} +1 -1
- package/chunks/{chunk-ITOGNELQ.js → chunk-QSWDGAIC.js} +2 -2
- package/chunks/{chunk-PUVCVELY.js → chunk-QUJOI7SR.js} +70 -8
- package/chunks/{chunk-GHOTR7HL.js → chunk-QUPXZXLV.js} +1 -1
- package/chunks/{chunk-6VK6FIMQ.js → chunk-R5D5JOAM.js} +415 -379
- package/chunks/{chunk-CD6USWHZ.js → chunk-R5XLNDE2.js} +2 -2
- package/chunks/{chunk-W7EEOR7D.js → chunk-RCEEXIOO.js} +8 -6
- package/chunks/{chunk-TLRYABYP.js → chunk-RKUWKYED.js} +1 -1
- package/chunks/{chunk-RNBYOUGV.js → chunk-RXFQM6FQ.js} +1 -1
- package/chunks/{chunk-QXPI7FEC.js → chunk-S3TWXGKA.js} +4 -4
- package/chunks/{chunk-2EM7ECZD.js → chunk-SMSFWUFY.js} +309 -80
- package/chunks/{chunk-FV7425LN.js → chunk-SPJQO2CE.js} +18 -5
- package/chunks/{chunk-MLZQVCF3.js → chunk-SZRN75WQ.js} +1 -1
- package/chunks/{chunk-7RYW5LQV.js → chunk-T2NCM2ET.js} +2 -2
- package/chunks/{chunk-Z2Z3GUXZ.js → chunk-TB6UDU4T.js} +1 -1
- package/chunks/{chunk-EXPMGZZV.js → chunk-TEGEBB2I.js} +1 -1
- package/chunks/{chunk-MX2YXRER.js → chunk-TJTKSVIV.js} +1 -1
- package/chunks/{chunk-CCGOFQV3.js → chunk-TQBODCFD.js} +8 -7
- package/chunks/chunk-TV6K2FB4.js +224 -0
- package/chunks/{chunk-H6BD2ELD.js → chunk-TYAMGABM.js} +2 -2
- package/chunks/{chunk-QYNNN7BK.js → chunk-TYLOFD2U.js} +2 -2
- package/chunks/{chunk-VRDMOSQS.js → chunk-UDXSXLER.js} +2 -2
- package/chunks/{chunk-DHOLNQLC.js → chunk-UFDX27PL.js} +60 -40
- package/chunks/{chunk-WHJQ3JUS.js → chunk-UGN6CTNZ.js} +10 -10
- package/chunks/{chunk-CHB5SLZZ.js → chunk-UNLRKDMW.js} +4 -4
- package/chunks/{chunk-CJCKDMWO.js → chunk-URK542T4.js} +1 -1
- package/chunks/{chunk-AHNXYU4O.js → chunk-V6WHFGST.js} +1 -1
- package/chunks/{chunk-ZTQ26VBE.js → chunk-VDDGDZMA.js} +1 -1
- package/chunks/{chunk-BOBOCR5H.js → chunk-VEETSXYX.js} +4 -4
- package/chunks/{chunk-OMX7CUOE.js → chunk-VGC4I5JJ.js} +1 -1
- package/chunks/{chunk-43W4YSO6.js → chunk-VJNBRRZG.js} +2 -2
- package/chunks/{chunk-WQTHLB5T.js → chunk-VKS7EIOA.js} +7 -7
- package/chunks/{chunk-J7RCB6N5.js → chunk-VVDNGM6X.js} +2 -2
- package/chunks/{chunk-ER3BKOLB.js → chunk-W7FJ3N32.js} +1 -1
- package/chunks/{chunk-3HX5LZ6R.js → chunk-WBL3FJEU.js} +2 -2
- package/chunks/{chunk-7LTB54MK.js → chunk-WIEO4CWB.js} +2 -2
- package/chunks/chunk-WMC6HH7Y.js +493 -0
- package/chunks/{chunk-FEJ2FZ3U.js → chunk-WTNZ6DXB.js} +2 -2
- package/chunks/{chunk-L46XKEGM.js → chunk-X6ODDESK.js} +5 -8
- package/chunks/chunk-XDPYM5DE.js +71 -0
- package/chunks/{chunk-3RW4AZJV.js → chunk-XFSFZCM5.js} +1 -1
- package/chunks/{chunk-2MPVVENX.js → chunk-XU457J4V.js} +2 -2
- package/chunks/{chunk-SIUQ3YYX.js → chunk-XVNQMZ2I.js} +1 -1
- package/chunks/{chunk-SYCJMSIJ.js → chunk-XWRJCPHC.js} +1 -1
- package/chunks/{chunk-SUAKHHK7.js → chunk-Y66VOBRP.js} +3 -3
- package/chunks/chunk-YAF2MQZ6.js +19 -0
- package/chunks/chunk-YHN5SUIJ.js +219 -0
- package/chunks/{chunk-BR4QREVK.js → chunk-YQ3U5MUC.js} +1 -1
- package/chunks/{chunk-Y6Z2O3WR.js → chunk-YUZI3WAC.js} +1 -1
- package/chunks/{chunk-YDOXPLYL.js → chunk-ZA74ZTQU.js} +4564 -1326
- package/chunks/{chunk-DCZWC4PF.js → chunk-ZGE3222J.js} +5 -5
- package/chunks/chunk-ZP4ZZJJG.js +448 -0
- package/chunks/{chunk-AHNJGLFV.js → chunk-ZPAHLFZU.js} +3 -3
- package/chunks/cli-entry-path-4VJ3Y6T2.js +10 -0
- package/chunks/{computer-use-WMY3UOBX.js → computer-use-SHA6C3ES.js} +50 -50
- package/chunks/config-utils-XSHOMMK4.js +24 -0
- package/chunks/contextCommand-HOAF5LUC.js +68 -0
- package/chunks/create-sub-session-EAB2U5XW.js +207 -0
- package/chunks/create-sub-session-WJOWBFEP.js +375 -0
- package/chunks/{cron-create-JSXEIPVS.js → cron-create-GMVKSXZT.js} +9 -9
- package/chunks/{cron-delete-OIFVEPGU.js → cron-delete-VDZKUAVK.js} +7 -7
- package/chunks/{cron-list-D4ZX4IOE.js → cron-list-UG7C7RAR.js} +14 -10
- package/chunks/{daemon-WPAENEBW.js → daemon-MI5HF26N.js} +1074 -61
- package/chunks/daemon-status-provider-KFL3LRTP.js +76 -0
- package/chunks/{de-ZFPPQVSF.js → de-2VCDRDGU.js} +68 -6
- package/chunks/{devtools-FM6GJPYG.js → devtools-4QFYJT6U.js} +3 -3
- package/chunks/{dist-O2IRTRPP.js → dist-IEXZC5ZR.js} +10 -10
- package/chunks/{dist-SCFLLYMK.js → dist-PQK4GCKA.js} +12 -11
- package/chunks/{dist-63IS3ZMI.js → dist-PZV5RKM6.js} +4 -4
- package/chunks/{dist-E6UANPIM.js → dist-U75JK3PF.js} +1011 -197
- package/chunks/{dist-H2AEJCZ5.js → dist-VXO7QBON.js} +5 -5
- package/chunks/{dist-Z34QPAQW.js → dist-WH4TZSH3.js} +529 -79
- package/chunks/{dist-BEXOZXLQ.js → dist-X2ABIW5R.js} +36 -15
- package/chunks/earlyInputCapture-PKAQJMIP.js +69 -0
- package/chunks/{edit-OTYWAXGP.js → edit-6TXLYHJ2.js} +51 -51
- package/chunks/{en-N4EPZAQI.js → en-NJCA3TAA.js} +78 -6
- package/chunks/{enter-worktree-HNYBDVCX.js → enter-worktree-ZTILGPJX.js} +50 -50
- package/chunks/{enterPlanMode-CJCNGT63.js → enterPlanMode-62HRAMCH.js} +66 -51
- package/chunks/environment-OYA3ZVEL.js +89 -0
- package/chunks/errors-BFXOUUUR.js +75 -0
- package/chunks/{exit-worktree-DUUKOE3X.js → exit-worktree-HHJ5M6MV.js} +50 -50
- package/chunks/{exitPlanMode-AMMSXOAJ.js → exitPlanMode-M3SWHCL7.js} +51 -51
- package/chunks/{fast-path-OV6NIP3K.js → fast-path-3VMPLM74.js} +8 -8
- package/chunks/{fast-path-settings-7RIFI3PK.js → fast-path-settings-DAOVFADC.js} +8 -6
- package/chunks/{fileFromPath-IBEHA3CO.js → fileFromPath-UDALK7FM.js} +3 -3
- package/chunks/{fr-5WWMY53B.js → fr-5F3E7WKD.js} +68 -6
- package/chunks/{gemini-NQ3WWBKB.js → gemini-ZCGVYOJL.js} +181 -110
- package/chunks/{geminiContentGenerator-CDUNEJQE.js → geminiContentGenerator-XBYBAIDQ.js} +9 -9
- package/chunks/{getMachineId-bsd-4CASPIU4.js → getMachineId-bsd-EXV7SWPA.js} +3 -3
- package/chunks/{getMachineId-darwin-HPQPEMZR.js → getMachineId-darwin-IUOMFXU3.js} +3 -3
- package/chunks/{getMachineId-linux-AUARKYHL.js → getMachineId-linux-K7XJYFHL.js} +2 -2
- package/chunks/{getMachineId-unsupported-S32ZDA2T.js → getMachineId-unsupported-EA5FDRJ6.js} +2 -2
- package/chunks/{getMachineId-win-4EFLHYIJ.js → getMachineId-win-KBA6RAI5.js} +3 -3
- package/chunks/{glob-ROV3YS4R.js → glob-UOEYQNHN.js} +97 -75
- package/chunks/{grep-NRITKDCD.js → grep-OQM3CH7W.js} +50 -50
- package/chunks/handleAutoUpdate-ORBYVJHZ.js +69 -0
- package/chunks/i18n-NBP574CO.js +84 -0
- package/chunks/initializer-CWD7TCCD.js +73 -0
- package/chunks/installationInfo-CHPDUPWC.js +65 -0
- package/chunks/{ja-CUHZOLEJ.js → ja-66J6B53L.js} +69 -7
- package/chunks/{keychain-token-storage-UJV5XP4Z.js → keychain-token-storage-AU22CQI6.js} +4 -4
- package/chunks/{kittyProtocolDetector-OJRCJLIU.js → kittyProtocolDetector-HCNNKJTI.js} +2 -2
- package/chunks/list-ZTTO362W.js +76 -0
- package/chunks/loadedSettingsAdapter-V4ZTRKUO.js +70 -0
- package/chunks/{loop-wakeup-OHWEMFP5.js → loop-wakeup-C4EXLYVA.js} +10 -10
- package/chunks/{lowlight-FYAAUU5J.js → lowlight-J2OZNPCA.js} +1 -1
- package/chunks/{ls-7MFU2QYW.js → ls-2OUTG3IZ.js} +6 -6
- package/chunks/{lsp-XHDTPTGV.js → lsp-4VMNXZW6.js} +4 -4
- package/chunks/mcp-UH5PSGIK.js +70 -0
- package/chunks/{monitor-FL2ZO33W.js → monitor-F4NYEU5J.js} +50 -50
- package/chunks/{multipart-parser-AJ4WASWR.js → multipart-parser-AWZKXSQN.js} +3 -3
- package/chunks/nonInteractiveCli-7IHPXVNH.js +129 -0
- package/chunks/{notebook-edit-6PULTHL5.js → notebook-edit-HPDXNGQH.js} +51 -51
- package/chunks/openaiContentGenerator-OBDNNOE2.js +56 -0
- package/chunks/pidfile-AUMGYIOK.js +73 -0
- package/chunks/{pt-OLYN42DS.js → pt-TFZO5Y6T.js} +68 -6
- package/chunks/{qwenContentGenerator-NX2E7PB7.js → qwenContentGenerator-LH2U2YRG.js} +52 -52
- package/chunks/{qwenOAuth2-ZV7YLMND.js → qwenOAuth2-LEYOU7RU.js} +9 -9
- package/chunks/read-file-HUUFBLEO.js +30 -0
- package/chunks/{read-mcp-resource-CNQHBSJM.js → read-mcp-resource-JUFHCKSC.js} +5 -5
- package/chunks/{read-package-up-ER5OJUGP.js → read-package-up-TCM6I7S2.js} +2 -2
- package/chunks/{record-artifact-SQ2OKRJW.js → record-artifact-DWSMBXYY.js} +4 -4
- package/chunks/ripGrep-C7X33LU6.js +60 -0
- package/chunks/{ru-LDM3GWVQ.js → ru-4L4LFHIT.js} +68 -6
- package/chunks/{run-qwen-serve-JK2DL7PI.js → run-qwen-serve-DGW5AFDJ.js} +1465 -283
- package/chunks/runtime-NYUSLBEZ.js +99 -0
- package/chunks/{scheduler-O4IGVZKK.js → scheduler-5VKDXULT.js} +51 -51
- package/chunks/{send-message-76GT3JMC.js → send-message-JZ752NWD.js} +7 -7
- package/chunks/serve-UTAHSFXH.js +76 -0
- package/chunks/{server-SGNPKX2O.js → server-VUHSYSUV.js} +9088 -1817
- package/chunks/{session-5BNM25EZ.js → session-QSGSSNFB.js} +340 -135
- package/chunks/settings-X24RYEED.js +120 -0
- package/chunks/shell-4MSI2R4O.js +70 -0
- package/chunks/{skill-I22QK5XS.js → skill-JR3GTNVZ.js} +24 -24
- package/chunks/spawnChannel-RFAAO44J.js +70 -0
- package/chunks/{src-7XL4G4DC.js → src-VLI3TKEY.js} +4 -4
- package/chunks/{src-BBQSM46M.js → src-YDBNMIIM.js} +183 -53
- package/chunks/standalone-update-4CY4HKGC.js +79 -0
- package/chunks/{startInteractiveUI-JII36UGN.js → startInteractiveUI-FOD7MMVB.js} +2368 -1923
- package/chunks/stdioHelpers-UMY72QRP.js +14 -0
- package/chunks/{syntheticOutput-F7LSDCAR.js → syntheticOutput-LELY6HAI.js} +5 -5
- package/chunks/task-create-QY3BIMNM.js +23 -0
- package/chunks/{task-list-TGGJX7EA.js → task-list-D2U47WBJ.js} +11 -10
- package/chunks/{task-stop-W7NGTMYQ.js → task-stop-N6E5IYLH.js} +4 -4
- package/chunks/{task-update-XYWMHJGJ.js → task-update-HJCQILLB.js} +13 -12
- package/chunks/{team-create-A7NUU5AQ.js → team-create-ZLQSU2E3.js} +50 -50
- package/chunks/{team-delete-UHQQ2QQX.js → team-delete-RCWYDRF4.js} +11 -10
- package/chunks/{team-plan-approval-TOQRJ2KI.js → team-plan-approval-YUAYBYLS.js} +50 -50
- package/chunks/theme-manager-SKNEBMOG.js +64 -0
- package/chunks/{todoWrite-C4ZAMSR3.js → todoWrite-FKCGATPJ.js} +6 -6
- package/chunks/{tool-search-SZ4EFS2T.js → tool-search-V5J3TGWY.js} +24 -24
- package/chunks/total-session-admission-2WIH72I3.js +72 -0
- package/chunks/tree-sitter-YJVE2ZUK.js +2980 -0
- package/chunks/trustedFolders-JF265CRI.js +80 -0
- package/chunks/types-ML3TRJQ5.js +16 -0
- package/chunks/updateCheck-AMXNPBP6.js +69 -0
- package/chunks/updateEventEmitter-5MKC7BLQ.js +10 -0
- package/chunks/validateNonInterActiveAuth-6YHQO7PD.js +194 -0
- package/chunks/{version-NO2XSNNP.js → version-UEJJK7PE.js} +3 -3
- package/chunks/{web-fetch-UYGMOHW4.js → web-fetch-QGODBB6S.js} +8 -8
- package/chunks/{workflow-WO2H6NRI.js → workflow-5YFA5V4M.js} +51 -51
- package/chunks/workspace-providers-status-LMBLBNR7.js +73 -0
- package/chunks/workspace-registration-store-VV2S4MSV.js +27 -0
- package/chunks/workspace-registry-BVMPYRLN.js +76 -0
- package/chunks/workspace-service-PUYIZ3J4.js +86 -0
- package/chunks/workspace-skills-status-CJ7J2KPP.js +72 -0
- package/chunks/{write-file-PX2Z7IBE.js → write-file-OV77M6X7.js} +51 -51
- package/chunks/{yargs-B64EYTCF.js → yargs-6H2AUULL.js} +2 -2
- package/chunks/{zh-J4F6QWQV.js → zh-FSAH32JB.js} +79 -7
- package/chunks/{zh-TW-XVDWOLSW.js → zh-TW-D2YIE2LO.js} +79 -7
- package/cli.js +18 -17
- package/locales/ca.js +91 -7
- package/locales/de.js +90 -7
- package/locales/en.js +109 -7
- package/locales/fr.js +91 -7
- package/locales/ja.js +93 -7
- package/locales/pt.js +90 -7
- package/locales/ru.js +90 -7
- package/locales/zh-TW.js +106 -7
- package/locales/zh.js +106 -7
- package/package.json +3 -6
- package/web-shell/assets/{arc-BWyoJpY2.js → arc-CObt_TK9.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-BT0mGrz2.js → architectureDiagram-3BPJPVTR-B7aiJ6CK.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-BLgUWvyf.js → blockDiagram-GPEHLZMM-BSK2CrID.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-DYx9M7oU.js → c4Diagram-AAUBKEIU-Bhx2p7T_.js} +1 -1
- package/web-shell/assets/channel-BBaLq8MV.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-CfMHWbuZ.js → chunk-2J33WTMH-c3Hzv0Ni.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-B1URoqEV.js → chunk-4BX2VUAB-DNXaK7ZF.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-DAIaM4QF.js → chunk-55IACEB6-BXjvDj_i.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-B2X34knw.js → chunk-727SXJPM-B6CaKFp-.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-Cif-zLTQ.js → chunk-AQP2D5EJ-tij6Mz9B.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-H18WCXdY.js → chunk-FMBD7UC4-DdlsGk2h.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-YFtetHi0.js → chunk-ND2GUHAM-CdgGZSHE.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-By2hiH3r.js → chunk-QZHKN3VN-D8oJn1C0.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-B2ZK6sWE.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-B2ZK6sWE.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-VrcnnLZu.js → cose-bilkent-S5V4N54A-BUVmNp1Y.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-CGo-IaVV.js → dagre-BM42HDAG-CO4q310O.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-Dl4QjzIB.js → diagram-2AECGRRQ-C6gFvWkg.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-qMLmsO0u.js → diagram-5GNKFQAL-NG2I_c0h.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-CHlmuxPI.js → diagram-KO2AKTUF-DFKMS6I9.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-BUwU3GwT.js → diagram-LMA3HP47-BiElfsfP.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-HEhwPDUM.js → diagram-OG6HWLK6-zLWDYUqu.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-1n0llBmM.js → erDiagram-TEJ5UH35-DoVaazhK.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-BN74uMnt.js → flowDiagram-I6XJVG4X-0RLz-mXg.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-BoOq78i3.js → ganttDiagram-6RSMTGT7-C-eX1A39.js} +3 -3
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-CN8b00c8.js → gitGraphDiagram-PVQCEYII-BauQu1Bu.js} +1 -1
- package/web-shell/assets/index-3uAT3ehO.css +5 -0
- package/web-shell/assets/index-CVHa2QH7.js +3 -0
- package/web-shell/assets/index-D1KigWat.js +1128 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-CCurnIna.js → infoDiagram-5YYISTIA-C800cFvZ.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-AwuRqdUP.js → ishikawaDiagram-YF4QCWOH-CFK1Jk6e.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-B7IICk-E.js → journeyDiagram-JHISSGLW-Cjx0WAC4.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-BYF0OKhx.js → kanban-definition-UN3LZRKU-DWMDHbiv.js} +1 -1
- package/web-shell/assets/{linear-GWWguGfD.js → linear-vpW4FrZs.js} +1 -1
- package/web-shell/assets/{mermaid.core-JqtkxvCl.js → mermaid.core-DsHRUnDd.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-B0MmHsZ6.js → mindmap-definition-RKZ34NQL-D3Eb1cAK.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-DhImUZLQ.js → pieDiagram-4H26LBE5-Cr2-6sWt.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DGeSC3DT.js → quadrantDiagram-W4KKPZXB-Yd7yUgVp.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-DkspY6Re.js → requirementDiagram-4Y6WPE33-BE6SprL8.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-CaOofS2x.js → sankeyDiagram-5OEKKPKP-DzkuMK8d.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DFQ_kFnN.js → sequenceDiagram-3UESZ5HK-wD9A3Dhi.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-D3snw0Tz.js → stateDiagram-AJRCARHV-BOp5q1Nm.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BDsWUmPG.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-l4zH8nLM.js → timeline-definition-PNZ67QCA-Btc08sUA.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-BnRlA98M.js → vennDiagram-CIIHVFJN-Bv6upsOA.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-BS0xUdmd.js → wardley-L42UT6IY-D-XamnCK.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-DKGBUWyQ.js → wardleyDiagram-YWT4CUSO-BbP_5Wfp.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-DVb2HuOB.js → xychartDiagram-2RQKCTM6-CO5Hh28b.js} +1 -1
- package/web-shell/index.html +16 -4
- package/chunks/MaxSizedBox-5DT2SD7B.js +0 -71
- package/chunks/agent-H2DGKS77.js +0 -68
- package/chunks/agent-headless-KFMFIT6J.js +0 -62
- package/chunks/bridge-NA3ZQQKJ.js +0 -78
- package/chunks/chunk-5P5XGNYH.js +0 -93
- package/chunks/chunk-6SHO7WFF.js +0 -79
- package/chunks/chunk-IFEWJXFS.js +0 -37
- package/chunks/chunk-XNXVCNAT.js +0 -88
- package/chunks/contextCommand-LXFZRP4L.js +0 -68
- package/chunks/daemon-status-provider-GJRXY5EN.js +0 -76
- package/chunks/earlyInputCapture-KNOYZ4MJ.js +0 -69
- package/chunks/environment-ATFTYMLZ.js +0 -88
- package/chunks/errors-A54HAADA.js +0 -75
- package/chunks/handleAutoUpdate-CEZJAARW.js +0 -65
- package/chunks/initializer-BRFJKRRX.js +0 -71
- package/chunks/list-KVHF7O4X.js +0 -73
- package/chunks/loadedSettingsAdapter-LL5PSFKX.js +0 -68
- package/chunks/mcp-3GCXRTOQ.js +0 -68
- package/chunks/nonInteractiveCli-PTQI3DV6.js +0 -119
- package/chunks/openaiContentGenerator-YE42PKCY.js +0 -56
- package/chunks/pidfile-NZYSCFRK.js +0 -73
- package/chunks/read-file-33XGP5HF.js +0 -30
- package/chunks/ripGrep-QWZLGTAN.js +0 -60
- package/chunks/serve-JTMIGANH.js +0 -74
- package/chunks/settings-3MI4XXP6.js +0 -118
- package/chunks/shell-YJKBE67T.js +0 -68
- package/chunks/spawnChannel-UNV6W4DU.js +0 -70
- package/chunks/task-create-WCHTB435.js +0 -22
- package/chunks/theme-manager-WZ4RRMMB.js +0 -64
- package/chunks/total-session-admission-ULXJWXFV.js +0 -72
- package/chunks/trustedFolders-LAZZPZ3D.js +0 -79
- package/chunks/types-QX5C3CHJ.js +0 -12
- package/chunks/updateCheck-KONLM73X.js +0 -65
- package/chunks/validateNonInterActiveAuth-MPKSRCXD.js +0 -184
- package/chunks/workspace-providers-status-3W7E7DFW.js +0 -71
- package/chunks/workspace-registry-SXJZNN3O.js +0 -74
- package/chunks/workspace-service-CZRQZ4Q4.js +0 -80
- package/chunks/workspace-skills-status-K7WFREPD.js +0 -70
- package/node_modules/@qwen-code/audio-capture/dist/index.d.ts +0 -35
- package/node_modules/@qwen-code/audio-capture/dist/index.js +0 -48
- package/node_modules/@qwen-code/audio-capture/dist/index.js.map +0 -1
- package/node_modules/@qwen-code/audio-capture/dist/platform.d.ts +0 -7
- package/node_modules/@qwen-code/audio-capture/dist/platform.js +0 -18
- package/node_modules/@qwen-code/audio-capture/dist/platform.js.map +0 -1
- package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/LICENSE +0 -21
- package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/README.md +0 -58
- package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/SECURITY.md +0 -5
- package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/bin.js +0 -84
- package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/build-test.js +0 -19
- package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/index.js +0 -6
- package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/node-gyp-build.js +0 -207
- package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/optional.js +0 -7
- package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/package.json +0 -43
- package/node_modules/@qwen-code/audio-capture/package.json +0 -30
- package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
- package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
- package/node_modules/@qwen-code/audio-capture/prebuilds/linux-arm64/@qwen-code+audio-capture.node +0 -0
- package/node_modules/@qwen-code/audio-capture/prebuilds/linux-x64/@qwen-code+audio-capture.node +0 -0
- package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
- package/web-shell/assets/channel-wmPUGHtg.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-BA2ljEjW.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BA2ljEjW.js +0 -1
- package/web-shell/assets/index-CNwoO1Cn.js +0 -783
- package/web-shell/assets/index-CWQ0z6kZ.css +0 -5
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BbSm_9d0.js +0 -1
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
buildPermissionSettings
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-JW7OOJC6.js";
|
|
6
6
|
import {
|
|
7
7
|
resolveVoiceStreamConfig,
|
|
8
8
|
resolveVoiceTranscriptionConfig,
|
|
9
9
|
transcribeVoiceAudio
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-EJ3KGYWL.js";
|
|
11
11
|
import {
|
|
12
12
|
getVoiceSettingsScope,
|
|
13
13
|
isSelectableVoiceModel,
|
|
@@ -16,14 +16,16 @@ import {
|
|
|
16
16
|
readVoiceMode,
|
|
17
17
|
readVoiceModel,
|
|
18
18
|
resolveVoiceTransport
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-GN5HJJBO.js";
|
|
20
20
|
import {
|
|
21
21
|
WorkspacePermissionRulesSessionRequiredError,
|
|
22
|
-
WorkspaceSettingsPartialPersistError
|
|
23
|
-
|
|
22
|
+
WorkspaceSettingsPartialPersistError,
|
|
23
|
+
WorkspaceSkillNotFoundError,
|
|
24
|
+
WorkspaceSkillNotToggleableError
|
|
25
|
+
} from "./chunk-OA4JVLSA.js";
|
|
24
26
|
import {
|
|
25
27
|
MCP_RESTART_SERVER_DEADLINE_MS
|
|
26
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-OCPBI7J5.js";
|
|
27
29
|
import {
|
|
28
30
|
McpServerNotFoundError,
|
|
29
31
|
McpServerRestartFailedError,
|
|
@@ -32,12 +34,9 @@ import {
|
|
|
32
34
|
WorkspaceInitPathEscapeError,
|
|
33
35
|
WorkspaceInitRaceError,
|
|
34
36
|
WorkspaceInitSymlinkError
|
|
35
|
-
} from "./chunk-
|
|
36
|
-
import {
|
|
37
|
-
getPersistScopeForModelSelection,
|
|
38
|
-
loadSettings
|
|
39
|
-
} from "./chunk-M7S4GK5Z.js";
|
|
37
|
+
} from "./chunk-KSO42X3Z.js";
|
|
40
38
|
import {
|
|
39
|
+
BridgeChannelClosedError,
|
|
41
40
|
SERVE_CONTROL_EXT_METHODS,
|
|
42
41
|
SERVE_STATUS_EXT_METHODS,
|
|
43
42
|
STATUS_SCHEMA_VERSION,
|
|
@@ -49,22 +48,26 @@ import {
|
|
|
49
48
|
createIdleWorkspaceProvidersStatus,
|
|
50
49
|
createIdleWorkspaceSkillsStatus,
|
|
51
50
|
mapDomainErrorToErrorKind
|
|
52
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-FI2WSOWX.js";
|
|
52
|
+
import {
|
|
53
|
+
getPersistScopeForModelSelection,
|
|
54
|
+
loadSettings
|
|
55
|
+
} from "./chunk-7IDCQ35Q.js";
|
|
53
56
|
import {
|
|
54
57
|
getWorkspaceTrustStatus
|
|
55
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-HJCVNZLQ.js";
|
|
56
59
|
import {
|
|
57
60
|
writeStderrLine
|
|
58
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-YUZI3WAC.js";
|
|
59
62
|
import {
|
|
60
63
|
ModelsConfig
|
|
61
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-HJUDVNCO.js";
|
|
62
65
|
import {
|
|
63
66
|
createDebugLogger
|
|
64
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-7NFB7LBQ.js";
|
|
65
68
|
import {
|
|
66
69
|
init_esbuild_shims
|
|
67
|
-
} from "./chunk-
|
|
70
|
+
} from "./chunk-5O2XNYP6.js";
|
|
68
71
|
import {
|
|
69
72
|
__name
|
|
70
73
|
} from "./chunk-J2S4EL5Y.js";
|
|
@@ -96,14 +99,11 @@ function voiceSettingsScopeToWire(scope) {
|
|
|
96
99
|
}
|
|
97
100
|
__name(voiceSettingsScopeToWire, "voiceSettingsScopeToWire");
|
|
98
101
|
function buildWorkspaceVoiceSettingsWrites(settings, update, opts = {}) {
|
|
99
|
-
const voiceSettingsScope = getVoiceSettingsScope(
|
|
100
|
-
settings,
|
|
101
|
-
opts.workspaceTrusted
|
|
102
|
-
);
|
|
102
|
+
const voiceSettingsScope = opts.scopeOverride ?? getVoiceSettingsScope(settings, opts.workspaceTrusted);
|
|
103
103
|
const writes = [];
|
|
104
104
|
if (update.voiceModel !== void 0) {
|
|
105
105
|
writes.push({
|
|
106
|
-
scope: getPersistScopeForModelSelection(settings),
|
|
106
|
+
scope: opts.scopeOverride ?? getPersistScopeForModelSelection(settings),
|
|
107
107
|
key: "voiceModel",
|
|
108
108
|
value: update.voiceModel
|
|
109
109
|
});
|
|
@@ -158,13 +158,13 @@ function listAvailableVoiceModels(settings) {
|
|
|
158
158
|
);
|
|
159
159
|
}
|
|
160
160
|
__name(listAvailableVoiceModels, "listAvailableVoiceModels");
|
|
161
|
-
function hasConfiguredBatchVoiceTranscriptionModel(settings) {
|
|
161
|
+
function hasConfiguredBatchVoiceTranscriptionModel(settings, opts = {}) {
|
|
162
162
|
for (const model of listAvailableVoiceModels(settings)) {
|
|
163
163
|
if (model.transport !== "qwen-asr-chat") {
|
|
164
164
|
continue;
|
|
165
165
|
}
|
|
166
166
|
try {
|
|
167
|
-
validateWorkspaceVoiceConfig(settings, model.id);
|
|
167
|
+
validateWorkspaceVoiceConfig(settings, model.id, opts);
|
|
168
168
|
return true;
|
|
169
169
|
} catch (err) {
|
|
170
170
|
debugLogger.debug(
|
|
@@ -223,14 +223,24 @@ function validateWorkspaceVoiceModel(settings, voiceModel) {
|
|
|
223
223
|
return { id: model.id, transport };
|
|
224
224
|
}
|
|
225
225
|
__name(validateWorkspaceVoiceModel, "validateWorkspaceVoiceModel");
|
|
226
|
-
function validateWorkspaceVoiceConfig(settings, voiceModel) {
|
|
226
|
+
function validateWorkspaceVoiceConfig(settings, voiceModel, opts = {}) {
|
|
227
227
|
const descriptor = validateWorkspaceVoiceModel(settings, voiceModel);
|
|
228
228
|
try {
|
|
229
229
|
const config = createVoiceModelSource(settings);
|
|
230
230
|
if (descriptor.transport === "qwen-asr-chat") {
|
|
231
|
-
resolveVoiceTranscriptionConfig({
|
|
231
|
+
resolveVoiceTranscriptionConfig({
|
|
232
|
+
config,
|
|
233
|
+
settings,
|
|
234
|
+
voiceModel,
|
|
235
|
+
env: opts.env
|
|
236
|
+
});
|
|
232
237
|
} else {
|
|
233
|
-
resolveVoiceStreamConfig({
|
|
238
|
+
resolveVoiceStreamConfig({
|
|
239
|
+
config,
|
|
240
|
+
settings,
|
|
241
|
+
voiceModel,
|
|
242
|
+
env: opts.env
|
|
243
|
+
});
|
|
234
244
|
}
|
|
235
245
|
} catch (err) {
|
|
236
246
|
throw new WorkspaceVoiceError(
|
|
@@ -242,7 +252,7 @@ function validateWorkspaceVoiceConfig(settings, voiceModel) {
|
|
|
242
252
|
return descriptor;
|
|
243
253
|
}
|
|
244
254
|
__name(validateWorkspaceVoiceConfig, "validateWorkspaceVoiceConfig");
|
|
245
|
-
function validateWorkspaceVoiceState(settings, update) {
|
|
255
|
+
function validateWorkspaceVoiceState(settings, update, opts = {}) {
|
|
246
256
|
if (update.enabled === void 0 && update.mode === void 0 && update.language === void 0 && update.voiceModel === void 0) {
|
|
247
257
|
throw new WorkspaceVoiceError(
|
|
248
258
|
400,
|
|
@@ -265,7 +275,7 @@ function validateWorkspaceVoiceState(settings, update) {
|
|
|
265
275
|
"A valid voiceModel is required before enabling voice."
|
|
266
276
|
);
|
|
267
277
|
}
|
|
268
|
-
validateWorkspaceVoiceConfig(settings, nextVoiceModel);
|
|
278
|
+
validateWorkspaceVoiceConfig(settings, nextVoiceModel, opts);
|
|
269
279
|
}
|
|
270
280
|
__name(validateWorkspaceVoiceState, "validateWorkspaceVoiceState");
|
|
271
281
|
async function transcribeWorkspaceVoiceAudio(input) {
|
|
@@ -286,6 +296,7 @@ async function transcribeWorkspaceVoiceAudio(input) {
|
|
|
286
296
|
config: createVoiceModelSource(input.settings),
|
|
287
297
|
settings: input.settings,
|
|
288
298
|
voiceModel: input.voiceModel,
|
|
299
|
+
env: input.env,
|
|
289
300
|
abortSignal: input.abortSignal
|
|
290
301
|
}
|
|
291
302
|
);
|
|
@@ -328,6 +339,29 @@ async function verifyParentPostOpen(target, wsCanonical, _fh) {
|
|
|
328
339
|
);
|
|
329
340
|
}
|
|
330
341
|
__name(verifyParentPostOpen, "verifyParentPostOpen");
|
|
342
|
+
var TimeoutError = class extends Error {
|
|
343
|
+
static {
|
|
344
|
+
__name(this, "TimeoutError");
|
|
345
|
+
}
|
|
346
|
+
};
|
|
347
|
+
async function withTimeout(promise, timeoutMs, label) {
|
|
348
|
+
return await new Promise((resolve2, reject) => {
|
|
349
|
+
const timeout = setTimeout(() => {
|
|
350
|
+
reject(new TimeoutError(`${label} timed out after ${timeoutMs}ms`));
|
|
351
|
+
}, timeoutMs);
|
|
352
|
+
promise.then(
|
|
353
|
+
(value) => {
|
|
354
|
+
clearTimeout(timeout);
|
|
355
|
+
resolve2(value);
|
|
356
|
+
},
|
|
357
|
+
(err) => {
|
|
358
|
+
clearTimeout(timeout);
|
|
359
|
+
reject(err);
|
|
360
|
+
}
|
|
361
|
+
);
|
|
362
|
+
});
|
|
363
|
+
}
|
|
364
|
+
__name(withTimeout, "withTimeout");
|
|
331
365
|
function createDaemonWorkspaceService(deps) {
|
|
332
366
|
const {
|
|
333
367
|
boundWorkspace,
|
|
@@ -337,14 +371,48 @@ function createDaemonWorkspaceService(deps) {
|
|
|
337
371
|
workspaceSkillsStatusProvider,
|
|
338
372
|
isChannelLive,
|
|
339
373
|
persistDisabledTools,
|
|
374
|
+
persistDisabledSkills,
|
|
340
375
|
persistSetting,
|
|
341
376
|
persistSettings,
|
|
377
|
+
voiceEnv,
|
|
378
|
+
voiceSettingsScope,
|
|
379
|
+
preheatAcpChild: preheatAcpChildOnBridge,
|
|
342
380
|
queryWorkspaceStatus,
|
|
343
381
|
invokeWorkspaceCommand,
|
|
344
382
|
refreshExtensionsForAllSessions: refreshExtensionsForAllSessionsOnBridge,
|
|
345
383
|
publishWorkspaceEvent
|
|
346
384
|
} = deps;
|
|
347
385
|
let lastWorkspaceSkillsStatus;
|
|
386
|
+
let inFlightAcpPreheat;
|
|
387
|
+
const getWorkspaceSkillsStatus = /* @__PURE__ */ __name(async () => {
|
|
388
|
+
let status;
|
|
389
|
+
try {
|
|
390
|
+
status = await queryWorkspaceStatus(
|
|
391
|
+
SERVE_STATUS_EXT_METHODS.workspaceSkills,
|
|
392
|
+
() => createIdleWorkspaceSkillsStatus(boundWorkspace)
|
|
393
|
+
);
|
|
394
|
+
} catch (err) {
|
|
395
|
+
writeStderrLine(
|
|
396
|
+
`qwen serve: getWorkspaceSkillsStatus query failed: ${err instanceof Error ? err.message : String(err)}`
|
|
397
|
+
);
|
|
398
|
+
status = createIdleWorkspaceSkillsStatus(boundWorkspace);
|
|
399
|
+
}
|
|
400
|
+
if (status.initialized) {
|
|
401
|
+
lastWorkspaceSkillsStatus = status;
|
|
402
|
+
return status;
|
|
403
|
+
}
|
|
404
|
+
if (lastWorkspaceSkillsStatus) return lastWorkspaceSkillsStatus;
|
|
405
|
+
if (workspaceSkillsStatusProvider) {
|
|
406
|
+
try {
|
|
407
|
+
return await workspaceSkillsStatusProvider(boundWorkspace);
|
|
408
|
+
} catch (err) {
|
|
409
|
+
writeStderrLine(
|
|
410
|
+
`qwen serve: getWorkspaceSkillsStatus local provider failed: ${err instanceof Error ? err.message : String(err)}`
|
|
411
|
+
);
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
return status;
|
|
415
|
+
}, "getWorkspaceSkillsStatus");
|
|
348
416
|
return {
|
|
349
417
|
// -- Status queries (delegate to ACP child via queryWorkspaceStatus) --
|
|
350
418
|
async getWorkspaceMcpStatus(_ctx) {
|
|
@@ -354,35 +422,7 @@ function createDaemonWorkspaceService(deps) {
|
|
|
354
422
|
);
|
|
355
423
|
},
|
|
356
424
|
async getWorkspaceSkillsStatus(_ctx) {
|
|
357
|
-
|
|
358
|
-
try {
|
|
359
|
-
status = await queryWorkspaceStatus(
|
|
360
|
-
SERVE_STATUS_EXT_METHODS.workspaceSkills,
|
|
361
|
-
() => createIdleWorkspaceSkillsStatus(boundWorkspace)
|
|
362
|
-
);
|
|
363
|
-
} catch (err) {
|
|
364
|
-
writeStderrLine(
|
|
365
|
-
`qwen serve: getWorkspaceSkillsStatus query failed: ${err instanceof Error ? err.message : String(err)}`
|
|
366
|
-
);
|
|
367
|
-
status = createIdleWorkspaceSkillsStatus(boundWorkspace);
|
|
368
|
-
}
|
|
369
|
-
if (status.initialized) {
|
|
370
|
-
lastWorkspaceSkillsStatus = status;
|
|
371
|
-
return status;
|
|
372
|
-
}
|
|
373
|
-
if (lastWorkspaceSkillsStatus) {
|
|
374
|
-
return lastWorkspaceSkillsStatus;
|
|
375
|
-
}
|
|
376
|
-
if (workspaceSkillsStatusProvider) {
|
|
377
|
-
try {
|
|
378
|
-
return await workspaceSkillsStatusProvider(boundWorkspace);
|
|
379
|
-
} catch (err) {
|
|
380
|
-
writeStderrLine(
|
|
381
|
-
`qwen serve: getWorkspaceSkillsStatus local provider failed: ${err instanceof Error ? err.message : String(err)}`
|
|
382
|
-
);
|
|
383
|
-
}
|
|
384
|
-
}
|
|
385
|
-
return status;
|
|
425
|
+
return getWorkspaceSkillsStatus();
|
|
386
426
|
},
|
|
387
427
|
async getWorkspaceProvidersStatus(_ctx) {
|
|
388
428
|
if (workspaceProvidersStatusProvider) {
|
|
@@ -396,6 +436,62 @@ function createDaemonWorkspaceService(deps) {
|
|
|
396
436
|
() => createIdleWorkspaceProvidersStatus(boundWorkspace)
|
|
397
437
|
);
|
|
398
438
|
},
|
|
439
|
+
async preheatAcpChild(_ctx, opts) {
|
|
440
|
+
const startedAt = Date.now();
|
|
441
|
+
const channelLive = /* @__PURE__ */ __name(() => isChannelLive?.() ?? false, "channelLive");
|
|
442
|
+
const finish = /* @__PURE__ */ __name((result) => ({
|
|
443
|
+
...result,
|
|
444
|
+
durationMs: Date.now() - startedAt
|
|
445
|
+
}), "finish");
|
|
446
|
+
if (channelLive()) {
|
|
447
|
+
return finish({ ready: true, channelLive: true });
|
|
448
|
+
}
|
|
449
|
+
if (!preheatAcpChildOnBridge) {
|
|
450
|
+
return finish({
|
|
451
|
+
ready: false,
|
|
452
|
+
channelLive: false,
|
|
453
|
+
reason: "error",
|
|
454
|
+
error: "ACP preheat is not wired"
|
|
455
|
+
});
|
|
456
|
+
}
|
|
457
|
+
if (!inFlightAcpPreheat) {
|
|
458
|
+
inFlightAcpPreheat = preheatAcpChildOnBridge().finally(() => {
|
|
459
|
+
inFlightAcpPreheat = void 0;
|
|
460
|
+
});
|
|
461
|
+
void inFlightAcpPreheat.catch((err) => {
|
|
462
|
+
writeStderrLine(
|
|
463
|
+
`qwen serve: ACP preheat failed: ${err instanceof Error ? err.message : String(err)}`
|
|
464
|
+
);
|
|
465
|
+
});
|
|
466
|
+
}
|
|
467
|
+
try {
|
|
468
|
+
await withTimeout(
|
|
469
|
+
inFlightAcpPreheat,
|
|
470
|
+
opts?.timeoutMs ?? 5e3,
|
|
471
|
+
"ACP preheat"
|
|
472
|
+
);
|
|
473
|
+
} catch (err) {
|
|
474
|
+
if (err instanceof TimeoutError) {
|
|
475
|
+
inFlightAcpPreheat = void 0;
|
|
476
|
+
writeStderrLine(
|
|
477
|
+
`qwen serve: ACP preheat timed out after ${opts?.timeoutMs ?? 5e3}ms`
|
|
478
|
+
);
|
|
479
|
+
}
|
|
480
|
+
const live2 = channelLive();
|
|
481
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
482
|
+
return finish({
|
|
483
|
+
ready: live2,
|
|
484
|
+
channelLive: live2,
|
|
485
|
+
reason: err instanceof TimeoutError ? "timeout" : "error",
|
|
486
|
+
error: message
|
|
487
|
+
});
|
|
488
|
+
}
|
|
489
|
+
const live = channelLive();
|
|
490
|
+
return finish({ ready: live, channelLive: live });
|
|
491
|
+
},
|
|
492
|
+
async getWorkspaceAcpStatus(_ctx) {
|
|
493
|
+
return { channelLive: isChannelLive?.() ?? false };
|
|
494
|
+
},
|
|
399
495
|
async getWorkspaceEnvStatus(_ctx) {
|
|
400
496
|
const acpChannelLive = isChannelLive?.() ?? false;
|
|
401
497
|
if (!statusProvider) {
|
|
@@ -485,7 +581,10 @@ function createDaemonWorkspaceService(deps) {
|
|
|
485
581
|
async getWorkspaceVoiceStatus(_ctx) {
|
|
486
582
|
return buildWorkspaceVoiceStatus(
|
|
487
583
|
boundWorkspace,
|
|
488
|
-
loadSettings(
|
|
584
|
+
loadSettings(
|
|
585
|
+
boundWorkspace,
|
|
586
|
+
voiceEnv ? { skipLoadEnvironment: true } : true
|
|
587
|
+
)
|
|
489
588
|
);
|
|
490
589
|
},
|
|
491
590
|
// -- Mutations --
|
|
@@ -538,11 +637,15 @@ function createDaemonWorkspaceService(deps) {
|
|
|
538
637
|
"Workspace voice settings persistence is not available"
|
|
539
638
|
);
|
|
540
639
|
}
|
|
541
|
-
const settings = loadSettings(
|
|
542
|
-
|
|
640
|
+
const settings = loadSettings(
|
|
641
|
+
boundWorkspace,
|
|
642
|
+
voiceEnv ? { skipLoadEnvironment: true } : true
|
|
643
|
+
);
|
|
644
|
+
validateWorkspaceVoiceState(settings, request, { env: voiceEnv });
|
|
543
645
|
const workspaceTrusted = getWorkspaceTrustStatus(settings.merged, boundWorkspace).effective.state === "trusted";
|
|
544
646
|
const writes = buildWorkspaceVoiceSettingsWrites(settings, request, {
|
|
545
|
-
workspaceTrusted
|
|
647
|
+
workspaceTrusted,
|
|
648
|
+
...voiceSettingsScope ? { scopeOverride: voiceSettingsScope } : {}
|
|
546
649
|
});
|
|
547
650
|
const publishWrite = /* @__PURE__ */ __name((write) => {
|
|
548
651
|
publishWorkspaceEvent({
|
|
@@ -583,6 +686,9 @@ function createDaemonWorkspaceService(deps) {
|
|
|
583
686
|
writeStderrLine(
|
|
584
687
|
`qwen serve: workspace voice partial persist error (workspace=${boundWorkspace}, committed=${committed.length}/${writes.length}, failedKey=${write.key}, failedScope=${voiceSettingsScopeToWire(write.scope)}): ${err instanceof Error ? err.message : String(err)}`
|
|
585
688
|
);
|
|
689
|
+
for (const committedWrite of committed) {
|
|
690
|
+
publishWrite(committedWrite);
|
|
691
|
+
}
|
|
586
692
|
throw new WorkspaceSettingsPartialPersistError(
|
|
587
693
|
`Voice settings partial persist failed: committed=${committed.length}/${writes.length}`,
|
|
588
694
|
committed,
|
|
@@ -597,7 +703,10 @@ function createDaemonWorkspaceService(deps) {
|
|
|
597
703
|
}
|
|
598
704
|
return buildWorkspaceVoiceStatus(
|
|
599
705
|
boundWorkspace,
|
|
600
|
-
loadSettings(
|
|
706
|
+
loadSettings(
|
|
707
|
+
boundWorkspace,
|
|
708
|
+
voiceEnv ? { skipLoadEnvironment: true } : true
|
|
709
|
+
)
|
|
601
710
|
);
|
|
602
711
|
},
|
|
603
712
|
async setWorkspaceToolEnabled(ctx, toolName, enabled) {
|
|
@@ -609,6 +718,80 @@ function createDaemonWorkspaceService(deps) {
|
|
|
609
718
|
});
|
|
610
719
|
return { toolName, enabled };
|
|
611
720
|
},
|
|
721
|
+
async setWorkspaceSkillEnabled(ctx, requestedSkillName, enabled) {
|
|
722
|
+
const normalizedName = requestedSkillName.trim().toLowerCase();
|
|
723
|
+
const status = await getWorkspaceSkillsStatus();
|
|
724
|
+
const skill = status.skills.find(
|
|
725
|
+
(candidate) => candidate.name.trim().toLowerCase() === normalizedName
|
|
726
|
+
);
|
|
727
|
+
if (!skill) throw new WorkspaceSkillNotFoundError(requestedSkillName);
|
|
728
|
+
if (skill.userInvocable === false) {
|
|
729
|
+
throw new WorkspaceSkillNotToggleableError(
|
|
730
|
+
skill.name,
|
|
731
|
+
"not_user_invocable"
|
|
732
|
+
);
|
|
733
|
+
}
|
|
734
|
+
const disabled = loadSettings(boundWorkspace).merged.skills?.disabled;
|
|
735
|
+
const disabledNames = new Set(
|
|
736
|
+
(Array.isArray(disabled) ? disabled : []).filter((name) => typeof name === "string").map((name) => name.trim().toLowerCase()).filter(Boolean)
|
|
737
|
+
);
|
|
738
|
+
if (skill.level === "extension" && skill.status === "disabled" && !disabledNames.has(normalizedName)) {
|
|
739
|
+
throw new WorkspaceSkillNotToggleableError(
|
|
740
|
+
skill.name,
|
|
741
|
+
"inactive_extension"
|
|
742
|
+
);
|
|
743
|
+
}
|
|
744
|
+
const persisted = await persistDisabledSkills(
|
|
745
|
+
boundWorkspace,
|
|
746
|
+
skill.name,
|
|
747
|
+
enabled
|
|
748
|
+
);
|
|
749
|
+
const channelLive = isChannelLive?.() ?? false;
|
|
750
|
+
let activation = channelLive ? "applied" : "deferred";
|
|
751
|
+
let sessionsRefreshed = 0;
|
|
752
|
+
let sessionsFailed = 0;
|
|
753
|
+
if (persisted.changed) {
|
|
754
|
+
lastWorkspaceSkillsStatus = void 0;
|
|
755
|
+
if (channelLive) {
|
|
756
|
+
try {
|
|
757
|
+
const refreshed = await invokeWorkspaceCommand(
|
|
758
|
+
SERVE_CONTROL_EXT_METHODS.workspaceSkillsRefresh,
|
|
759
|
+
{ cwd: boundWorkspace }
|
|
760
|
+
);
|
|
761
|
+
sessionsRefreshed = refreshed.sessionsRefreshed;
|
|
762
|
+
sessionsFailed = refreshed.sessionsFailed;
|
|
763
|
+
if (sessionsFailed > 0) activation = "partial";
|
|
764
|
+
} catch (err) {
|
|
765
|
+
if (err instanceof SessionNotFoundError || err instanceof BridgeChannelClosedError) {
|
|
766
|
+
activation = "deferred";
|
|
767
|
+
} else {
|
|
768
|
+
activation = "partial";
|
|
769
|
+
sessionsFailed = 1;
|
|
770
|
+
writeStderrLine(
|
|
771
|
+
`qwen serve: workspace skill refresh failed: ${err instanceof Error ? err.message : String(err)}`
|
|
772
|
+
);
|
|
773
|
+
}
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
publishWorkspaceEvent({
|
|
777
|
+
type: "settings_changed",
|
|
778
|
+
data: {
|
|
779
|
+
key: "skills.disabled",
|
|
780
|
+
value: persisted.disabled.length > 0 ? persisted.disabled : void 0,
|
|
781
|
+
scope: "workspace"
|
|
782
|
+
},
|
|
783
|
+
originatorClientId: ctx.originatorClientId
|
|
784
|
+
});
|
|
785
|
+
}
|
|
786
|
+
return {
|
|
787
|
+
skillName: skill.name,
|
|
788
|
+
enabled,
|
|
789
|
+
changed: persisted.changed,
|
|
790
|
+
activation,
|
|
791
|
+
sessionsRefreshed,
|
|
792
|
+
sessionsFailed
|
|
793
|
+
};
|
|
794
|
+
},
|
|
612
795
|
async initWorkspace(ctx, opts) {
|
|
613
796
|
const filename = contextFilename;
|
|
614
797
|
const target = path.resolve(boundWorkspace, filename);
|
|
@@ -873,6 +1056,9 @@ function createDaemonWorkspaceService(deps) {
|
|
|
873
1056
|
childError
|
|
874
1057
|
};
|
|
875
1058
|
},
|
|
1059
|
+
invalidateWorkspaceSkillsStatus() {
|
|
1060
|
+
lastWorkspaceSkillsStatus = void 0;
|
|
1061
|
+
},
|
|
876
1062
|
async refreshExtensionsForAllSessions() {
|
|
877
1063
|
try {
|
|
878
1064
|
if (!refreshExtensionsForAllSessionsOnBridge) {
|
|
@@ -884,6 +1070,8 @@ function createDaemonWorkspaceService(deps) {
|
|
|
884
1070
|
`qwen serve: refreshExtensionsForAllSessions failed: ${err instanceof Error ? err.message : String(err)}`
|
|
885
1071
|
);
|
|
886
1072
|
return { refreshed: 0, failed: 1 };
|
|
1073
|
+
} finally {
|
|
1074
|
+
lastWorkspaceSkillsStatus = void 0;
|
|
887
1075
|
}
|
|
888
1076
|
}
|
|
889
1077
|
};
|