@qwen-code/qwen-code 0.19.9-nightly.20260714.9dd8389eb → 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/docs/configuration/settings.md +7 -0
- package/bundled/qc-helper/docs/features/sub-agents.md +21 -0
- package/bundled/qc-helper/docs/qwen-serve.md +7 -2
- package/bundled/review/SKILL.md +23 -11
- package/chunks/{MaxSizedBox-QAYHOC4F.js → MaxSizedBox-BEVSAWZ6.js} +10 -11
- package/chunks/{StandaloneSessionPicker-D3R6YYX3.js → StandaloneSessionPicker-2DA2MDDE.js} +22 -23
- package/chunks/{acpAgent-ENHBW72A.js → acpAgent-G3WJU3PS.js} +189 -93
- package/chunks/{agent-57LX4KMG.js → agent-DD3WSHXE.js} +7 -8
- package/chunks/{agent-headless-AC6EVNAP.js → agent-headless-MHI7U2CU.js} +7 -8
- package/chunks/{artifact-tool-BWZZJ42H.js → artifact-tool-MIZLXBLF.js} +1 -1
- package/chunks/{askUserQuestion-WU3S5A5T.js → askUserQuestion-XMJVPNWM.js} +1 -1
- package/chunks/{bridge-4OZH44MK.js → bridge-HKEWPNB5.js} +10 -11
- package/chunks/{channel-worker-manager-5RWKSGEU.js → channel-worker-manager-YSFB4HUU.js} +2 -2
- package/chunks/{channel-worker-supervisor-PCDAZN4D.js → channel-worker-supervisor-QCKIOYZD.js} +2 -2
- package/chunks/{chunk-DKXW66XA.js → chunk-2FMQQXMM.js} +1 -1
- package/chunks/{chunk-UI3W56WF.js → chunk-2J4ZWME4.js} +1 -1
- package/chunks/{chunk-QABSSDQH.js → chunk-2TQXXQMI.js} +1 -1
- package/chunks/{chunk-DNKX35GS.js → chunk-2UW5RFRP.js} +4 -4
- package/chunks/{chunk-DPSWJWZI.js → chunk-2W3OOD4W.js} +1 -0
- package/chunks/{chunk-MBJ3D6SF.js → chunk-43RXPU5Q.js} +1 -1
- package/chunks/{chunk-AAS2Q2TV.js → chunk-4QZ3XHWE.js} +2 -2
- package/chunks/{chunk-ZRKBI3DP.js → chunk-4QZADKJS.js} +1 -1
- package/chunks/{chunk-G6QTKQN4.js → chunk-54UZQ57N.js} +3 -3
- package/chunks/{chunk-YH4J5XI3.js → chunk-5VHASII5.js} +4 -4
- package/chunks/{chunk-AAWKZ5R7.js → chunk-6JPDCEDB.js} +1 -1
- package/chunks/{chunk-7NAWTFVY.js → chunk-6WPJRYLZ.js} +2 -2
- package/chunks/{chunk-JR63TOV4.js → chunk-7DKX4A5Z.js} +1 -1
- package/chunks/{chunk-T2L6SGQY.js → chunk-7IDCQ35Q.js} +37 -6
- package/chunks/{chunk-6OATMEYN.js → chunk-7STBROEV.js} +1 -1
- package/chunks/{chunk-7BIZARI2.js → chunk-A3U2TQUL.js} +4 -4
- package/chunks/{chunk-WN4D7YCI.js → chunk-A7W4GQRW.js} +1 -1
- package/chunks/{chunk-SE74CIZD.js → chunk-AAUZBE5Y.js} +1 -1
- package/chunks/{chunk-CLTWL6HD.js → chunk-ADLYZJYZ.js} +6 -6
- package/chunks/{chunk-SXU3KKNI.js → chunk-AU4R7ACM.js} +4 -0
- package/chunks/{chunk-URU5UEK6.js → chunk-B7MFJBKE.js} +1 -1
- package/chunks/{chunk-E67NFMF4.js → chunk-BLPMRN4B.js} +1 -1
- package/chunks/{chunk-7U7UIO5W.js → chunk-BXT6PQ73.js} +20 -5
- package/chunks/{chunk-ASVORVFT.js → chunk-CEGKYZDB.js} +1 -1
- package/chunks/{chunk-Z56JO4JZ.js → chunk-DMVA55W5.js} +7 -7
- package/chunks/{chunk-T5C2OUCI.js → chunk-DQCCLVQK.js} +3 -3
- package/chunks/{chunk-HE54PGVI.js → chunk-EAHMOXLL.js} +2 -2
- package/chunks/{chunk-C4CXFRKY.js → chunk-EJ3KGYWL.js} +25 -4
- package/chunks/{chunk-CSACSGAW.js → chunk-ERTHKDKN.js} +2 -2
- package/chunks/{chunk-OCC3UTWA.js → chunk-EX5OULP3.js} +1 -1
- package/chunks/{chunk-TXY2C3D2.js → chunk-F333XEAU.js} +1 -1
- package/chunks/{chunk-GYGGUR4Q.js → chunk-FEOBU3FA.js} +5 -5
- package/chunks/{chunk-PMRH4YYW.js → chunk-FI2WSOWX.js} +2 -1
- package/chunks/{chunk-N7FCSERB.js → chunk-GN5HJJBO.js} +1 -1
- package/chunks/{chunk-EU3U7USF.js → chunk-GTENQOEJ.js} +2 -2
- package/chunks/{chunk-MBP3K324.js → chunk-HCJTURZD.js} +32 -11
- package/chunks/{chunk-K3PPUB46.js → chunk-HGG2RRXD.js} +1 -1
- package/chunks/{chunk-YVEDCAUE.js → chunk-HGT6JR3U.js} +19 -0
- package/chunks/{chunk-X7EBAABW.js → chunk-HJCVNZLQ.js} +1 -1
- package/chunks/{chunk-SSFDPGFN.js → chunk-HJUDVNCO.js} +7959 -5497
- package/chunks/{chunk-6HHAADP2.js → chunk-HRUGYOJN.js} +4 -4
- package/chunks/{chunk-T7FSRWQ5.js → chunk-HWTL6MPR.js} +114 -9
- package/chunks/{chunk-HZYUNZDQ.js → chunk-JCD4FM7K.js} +1 -1
- package/chunks/{chunk-DMTQY5GY.js → chunk-JGO6RFI2.js} +3 -3
- package/chunks/{chunk-2UUAIFQO.js → chunk-JGUT3LWZ.js} +5 -0
- package/chunks/{chunk-S2QXYLUB.js → chunk-JW7OOJC6.js} +1 -1
- package/chunks/{chunk-4FPUAYTT.js → chunk-KF5MMGG4.js} +4 -4
- package/chunks/{chunk-XHW5VUIQ.js → chunk-LHEOLOXU.js} +157 -55
- package/chunks/{chunk-2MF6ICOL.js → chunk-LSEJG6AM.js} +36 -8
- package/chunks/{chunk-AGBFWLA5.js → chunk-MKK4XGLF.js} +1 -1
- package/chunks/{chunk-4LJNI7MU.js → chunk-MO7O5722.js} +262 -7
- package/chunks/{chunk-FDL4PB5H.js → chunk-MRYWYBQ4.js} +8 -8
- package/chunks/{chunk-ZLM3KXBT.js → chunk-NRAFASYX.js} +15 -14
- package/chunks/{chunk-WL4L7EZH.js → chunk-OA4JVLSA.js} +27 -1
- package/chunks/{chunk-B6KHOCU7.js → chunk-PMKW35AT.js} +14 -10
- package/chunks/{chunk-YWUK7OS7.js → chunk-QE2WJ7FS.js} +1 -1
- package/chunks/{chunk-B6ABUBYY.js → chunk-QUJOI7SR.js} +67 -5
- package/chunks/{chunk-WM5HY72H.js → chunk-R5D5JOAM.js} +2 -2
- package/chunks/{chunk-BBNVFRGD.js → chunk-R5XLNDE2.js} +1 -1
- package/chunks/{chunk-RJL5T4WJ.js → chunk-SMSFWUFY.js} +53 -40
- package/chunks/{chunk-WWQ3QIJS.js → chunk-UFDX27PL.js} +11 -11
- package/chunks/{chunk-LAM6CGP5.js → chunk-UGN6CTNZ.js} +3 -3
- package/chunks/{chunk-AUGSSJX3.js → chunk-UNLRKDMW.js} +3 -3
- package/chunks/{chunk-4QOPEEL2.js → chunk-VEETSXYX.js} +1 -1
- package/chunks/{chunk-P3S67A5R.js → chunk-VKS7EIOA.js} +4 -4
- package/chunks/{chunk-PHYCWSDG.js → chunk-VVDNGM6X.js} +1 -1
- package/chunks/{chunk-J2TDDOSM.js → chunk-WMC6HH7Y.js} +1 -1
- package/chunks/{chunk-WX6SD4IQ.js → chunk-WTNZ6DXB.js} +1 -1
- package/chunks/{chunk-EUNRLYJG.js → chunk-X6ODDESK.js} +4 -4
- package/chunks/{chunk-V75IOTWF.js → chunk-XDPYM5DE.js} +4 -4
- package/chunks/{chunk-4DYYRLIE.js → chunk-ZA74ZTQU.js} +644 -321
- package/chunks/{chunk-SUWGUGAD.js → chunk-ZGE3222J.js} +2 -2
- package/chunks/{chunk-OATTJGPJ.js → chunk-ZP4ZZJJG.js} +7 -7
- package/chunks/{computer-use-DIP5BWXP.js → computer-use-SHA6C3ES.js} +7 -8
- package/chunks/{config-utils-CFT33LTP.js → config-utils-XSHOMMK4.js} +3 -3
- package/chunks/{contextCommand-QU4GJWWD.js → contextCommand-HOAF5LUC.js} +9 -10
- package/chunks/{create-sub-session-WNX2OQVX.js → create-sub-session-EAB2U5XW.js} +1 -1
- package/chunks/{create-sub-session-TCLIYVGR.js → create-sub-session-WJOWBFEP.js} +7 -8
- package/chunks/{cron-create-36TIFKRT.js → cron-create-GMVKSXZT.js} +1 -1
- package/chunks/{cron-delete-OQD3WULU.js → cron-delete-VDZKUAVK.js} +1 -1
- package/chunks/{cron-list-4533T2FH.js → cron-list-UG7C7RAR.js} +1 -1
- package/chunks/{daemon-CEZ27OH4.js → daemon-MI5HF26N.js} +343 -40
- package/chunks/{daemon-status-provider-SIBFMLBQ.js → daemon-status-provider-KFL3LRTP.js} +14 -15
- package/chunks/{dist-JZE7F6YR.js → dist-IEXZC5ZR.js} +1 -1
- package/chunks/{dist-ERCPDVA6.js → dist-PQK4GCKA.js} +1 -1
- package/chunks/{dist-3V3ZV6ML.js → dist-U75JK3PF.js} +1 -1
- package/chunks/{dist-PHEPJLXD.js → dist-VXO7QBON.js} +2 -2
- package/chunks/{dist-HNN7DR2L.js → dist-WH4TZSH3.js} +1 -1
- package/chunks/{dist-MOEC47TR.js → dist-X2ABIW5R.js} +1 -1
- package/chunks/{earlyInputCapture-L66BEG2C.js → earlyInputCapture-PKAQJMIP.js} +7 -8
- package/chunks/{edit-Y5LAJSST.js → edit-6TXLYHJ2.js} +7 -8
- package/chunks/{enter-worktree-X5LML7T4.js → enter-worktree-ZTILGPJX.js} +7 -8
- package/chunks/{enterPlanMode-XWF32QOW.js → enterPlanMode-62HRAMCH.js} +7 -8
- package/chunks/{environment-YVMA5F4I.js → environment-OYA3ZVEL.js} +9 -10
- package/chunks/{errors-4Y5SUAOC.js → errors-BFXOUUUR.js} +9 -10
- package/chunks/{exit-worktree-SFHU7XYC.js → exit-worktree-HHJ5M6MV.js} +7 -8
- package/chunks/{exitPlanMode-FP3NAN6E.js → exitPlanMode-M3SWHCL7.js} +7 -8
- package/chunks/{fast-path-ZJNFFCBM.js → fast-path-3VMPLM74.js} +2 -2
- package/chunks/{gemini-5CAB22BI.js → gemini-ZCGVYOJL.js} +100 -42
- package/chunks/{geminiContentGenerator-GE3HPIFB.js → geminiContentGenerator-XBYBAIDQ.js} +1 -1
- package/chunks/{glob-YPACZAEL.js → glob-UOEYQNHN.js} +7 -8
- package/chunks/{grep-IPR4XW37.js → grep-OQM3CH7W.js} +7 -8
- package/chunks/{handleAutoUpdate-P2KEP56V.js → handleAutoUpdate-ORBYVJHZ.js} +11 -12
- package/chunks/{i18n-BRCT66AA.js → i18n-NBP574CO.js} +8 -9
- package/chunks/{initializer-34HXSK3A.js → initializer-CWD7TCCD.js} +12 -13
- package/chunks/{installationInfo-WOTDQMSC.js → installationInfo-CHPDUPWC.js} +8 -9
- package/chunks/{list-XOGP7UPP.js → list-ZTTO362W.js} +15 -16
- package/chunks/{loadedSettingsAdapter-L4YKGU6F.js → loadedSettingsAdapter-V4ZTRKUO.js} +12 -13
- package/chunks/{loop-wakeup-MVUKDVCP.js → loop-wakeup-C4EXLYVA.js} +2 -2
- package/chunks/{ls-RXNIAQDE.js → ls-2OUTG3IZ.js} +1 -1
- package/chunks/{lsp-HB5LM5IL.js → lsp-4VMNXZW6.js} +1 -1
- package/chunks/{mcp-HH7DIP7Y.js → mcp-UH5PSGIK.js} +12 -13
- package/chunks/{monitor-25DEBT6U.js → monitor-F4NYEU5J.js} +7 -8
- package/chunks/{nonInteractiveCli-CT3VSSLK.js → nonInteractiveCli-7IHPXVNH.js} +43 -44
- package/chunks/{notebook-edit-TAVXSWQ6.js → notebook-edit-HPDXNGQH.js} +7 -8
- package/chunks/{openaiContentGenerator-6I7DKUAN.js → openaiContentGenerator-OBDNNOE2.js} +4 -4
- package/chunks/{pidfile-SIQGCFLZ.js → pidfile-AUMGYIOK.js} +7 -8
- package/chunks/{qwenContentGenerator-5DDIXI2N.js → qwenContentGenerator-LH2U2YRG.js} +8 -9
- package/chunks/{read-file-WDOAYRFU.js → read-file-HUUFBLEO.js} +3 -3
- package/chunks/{read-mcp-resource-6LRTZKXI.js → read-mcp-resource-JUFHCKSC.js} +1 -1
- package/chunks/{record-artifact-PMDTY4OS.js → record-artifact-DWSMBXYY.js} +1 -1
- package/chunks/{ripGrep-MI7PHN3Q.js → ripGrep-C7X33LU6.js} +7 -8
- package/chunks/{run-qwen-serve-PNTYF3RE.js → run-qwen-serve-DGW5AFDJ.js} +229 -80
- package/chunks/{runtime-V3FBMUTG.js → runtime-NYUSLBEZ.js} +16 -17
- package/chunks/{scheduler-4TAUIJBM.js → scheduler-5VKDXULT.js} +7 -8
- package/chunks/{send-message-SR4WSXP2.js → send-message-JZ752NWD.js} +2 -2
- package/chunks/{serve-WB2TR7XM.js → serve-UTAHSFXH.js} +12 -13
- package/chunks/{server-AF6LNFPK.js → server-VUHSYSUV.js} +2751 -774
- package/chunks/{session-BIGK4NRW.js → session-QSGSSNFB.js} +44 -45
- package/chunks/{settings-IXF5FIQO.js → settings-X24RYEED.js} +11 -12
- package/chunks/{shell-5VWJ2PPG.js → shell-4MSI2R4O.js} +9 -8
- package/chunks/{skill-SI667Y3B.js → skill-JR3GTNVZ.js} +3 -3
- package/chunks/{spawnChannel-IKX6DD7J.js → spawnChannel-RFAAO44J.js} +9 -10
- package/chunks/{src-55DZWDAK.js → src-YDBNMIIM.js} +40 -9
- package/chunks/{standalone-update-MHLSFHE6.js → standalone-update-4CY4HKGC.js} +9 -10
- package/chunks/{startInteractiveUI-V2EDWLAX.js → startInteractiveUI-FOD7MMVB.js} +183 -131
- package/chunks/{syntheticOutput-YKFNUQZD.js → syntheticOutput-LELY6HAI.js} +2 -2
- package/chunks/{task-create-NUFOHU53.js → task-create-QY3BIMNM.js} +3 -3
- package/chunks/{task-list-Z2IKQY3S.js → task-list-D2U47WBJ.js} +1 -1
- package/chunks/{task-stop-KQFIVQTJ.js → task-stop-N6E5IYLH.js} +1 -1
- package/chunks/{task-update-HKADXSTD.js → task-update-HJCQILLB.js} +3 -3
- package/chunks/{team-create-IZAMLBJS.js → team-create-ZLQSU2E3.js} +7 -8
- package/chunks/{team-delete-SDNTGZLG.js → team-delete-RCWYDRF4.js} +1 -1
- package/chunks/{team-plan-approval-3R4RCKCP.js → team-plan-approval-YUAYBYLS.js} +7 -8
- package/chunks/{theme-manager-LCOXZ5DO.js → theme-manager-SKNEBMOG.js} +7 -8
- package/chunks/{todoWrite-YNXB27GB.js → todoWrite-FKCGATPJ.js} +1 -1
- package/chunks/{tool-search-NYNCD5LF.js → tool-search-V5J3TGWY.js} +4 -4
- package/chunks/{total-session-admission-PJWGOMQE.js → total-session-admission-2WIH72I3.js} +10 -11
- package/chunks/{trustedFolders-DOJDHNYP.js → trustedFolders-JF265CRI.js} +8 -9
- package/chunks/types-ML3TRJQ5.js +16 -0
- package/chunks/{updateCheck-ZXL66KIG.js → updateCheck-AMXNPBP6.js} +9 -10
- package/chunks/{validateNonInterActiveAuth-JSNJZCYY.js → validateNonInterActiveAuth-6YHQO7PD.js} +39 -40
- package/chunks/{version-3NLBENG5.js → version-UEJJK7PE.js} +1 -1
- package/chunks/{web-fetch-ZSPR3PRR.js → web-fetch-QGODBB6S.js} +2 -2
- package/chunks/{workflow-BQYLF7XP.js → workflow-5YFA5V4M.js} +8 -9
- package/chunks/{workspace-providers-status-FA2DGEZW.js → workspace-providers-status-LMBLBNR7.js} +15 -16
- package/chunks/{workspace-registration-store-TARTAGMI.js → workspace-registration-store-VV2S4MSV.js} +1 -1
- package/chunks/{workspace-registry-AGE7WAXX.js → workspace-registry-BVMPYRLN.js} +10 -11
- package/chunks/{workspace-service-ERC5VR2B.js → workspace-service-PUYIZ3J4.js} +22 -19
- package/chunks/{workspace-skills-status-FKYWGNCN.js → workspace-skills-status-CJ7J2KPP.js} +14 -15
- package/chunks/{write-file-S47KSK7Z.js → write-file-OV77M6X7.js} +7 -8
- package/cli.js +11 -11
- package/package.json +3 -3
- package/web-shell/assets/{arc-Zj4EkBUY.js → arc-CObt_TK9.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-DAk1Ua3Y.js → architectureDiagram-3BPJPVTR-B7aiJ6CK.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-DBNqUthM.js → blockDiagram-GPEHLZMM-BSK2CrID.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-Dq5QGJ53.js → c4Diagram-AAUBKEIU-Bhx2p7T_.js} +1 -1
- package/web-shell/assets/channel-BBaLq8MV.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-DY0AeGru.js → chunk-2J33WTMH-c3Hzv0Ni.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-COX3OyIi.js → chunk-4BX2VUAB-DNXaK7ZF.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-Csoyddbh.js → chunk-55IACEB6-BXjvDj_i.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-BJPONdxX.js → chunk-727SXJPM-B6CaKFp-.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-syLVH6fg.js → chunk-AQP2D5EJ-tij6Mz9B.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-Cfm59Nhw.js → chunk-FMBD7UC4-DdlsGk2h.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-DZf6tAqS.js → chunk-ND2GUHAM-CdgGZSHE.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-DKBp_v5q.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-DUU3mMQ5.js → cose-bilkent-S5V4N54A-BUVmNp1Y.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-BUgNfbh-.js → dagre-BM42HDAG-CO4q310O.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-DT7MVfAg.js → diagram-2AECGRRQ-C6gFvWkg.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-Cv4YG-ec.js → diagram-5GNKFQAL-NG2I_c0h.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-BAe9LLkn.js → diagram-KO2AKTUF-DFKMS6I9.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-DW8wqTIP.js → diagram-LMA3HP47-BiElfsfP.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-CmkuWbaK.js → diagram-OG6HWLK6-zLWDYUqu.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-DwvdHjZ9.js → erDiagram-TEJ5UH35-DoVaazhK.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-CSsXrhW_.js → flowDiagram-I6XJVG4X-0RLz-mXg.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-BtuznCdi.js → ganttDiagram-6RSMTGT7-C-eX1A39.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-DGmAm06g.js → gitGraphDiagram-PVQCEYII-BauQu1Bu.js} +1 -1
- package/web-shell/assets/index-3uAT3ehO.css +5 -0
- package/web-shell/assets/{index-BEtz1cvN.js → index-CVHa2QH7.js} +1 -1
- package/web-shell/assets/index-D1KigWat.js +1128 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-OAiZ1q0K.js → infoDiagram-5YYISTIA-C800cFvZ.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-DyK0KTIT.js → ishikawaDiagram-YF4QCWOH-CFK1Jk6e.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-DzYJlwfO.js → journeyDiagram-JHISSGLW-Cjx0WAC4.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-CU_tcDwi.js → kanban-definition-UN3LZRKU-DWMDHbiv.js} +1 -1
- package/web-shell/assets/{linear-DvZXjF17.js → linear-vpW4FrZs.js} +1 -1
- package/web-shell/assets/{mermaid.core-_ZFEQlOl.js → mermaid.core-DsHRUnDd.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-Or4p64HB.js → mindmap-definition-RKZ34NQL-D3Eb1cAK.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-lXE-zZ6b.js → pieDiagram-4H26LBE5-Cr2-6sWt.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DUXb9mUV.js → quadrantDiagram-W4KKPZXB-Yd7yUgVp.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-D_10uHfo.js → requirementDiagram-4Y6WPE33-BE6SprL8.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-E8c0fPqe.js → sankeyDiagram-5OEKKPKP-DzkuMK8d.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CJMtFttK.js → sequenceDiagram-3UESZ5HK-wD9A3Dhi.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-DhbviRbB.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-CM5yMkFK.js → timeline-definition-PNZ67QCA-Btc08sUA.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-BCi-zWNN.js → vennDiagram-CIIHVFJN-Bv6upsOA.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-BJ_yJNjJ.js → wardley-L42UT6IY-D-XamnCK.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-TjtLk-qN.js → wardleyDiagram-YWT4CUSO-BbP_5Wfp.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-D1TjyoQ3.js → xychartDiagram-2RQKCTM6-CO5Hh28b.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-CU3L64TP.js +0 -93
- package/chunks/types-JNKGKUJT.js +0 -12
- package/web-shell/assets/channel-DWfYijFS.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-DDht-78J.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-DDht-78J.js +0 -1
- package/web-shell/assets/index-B9Xwf4OS.css +0 -5
- package/web-shell/assets/index-BUkM4ZXX.js +0 -1088
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CntljfwW.js +0 -1
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
isTranscribableVoiceModel,
|
|
6
6
|
readVoiceLanguage,
|
|
7
7
|
resolveVoiceTransport
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-GN5HJJBO.js";
|
|
9
9
|
import {
|
|
10
10
|
resolvePath
|
|
11
11
|
} from "./chunk-FSA7ERJ2.js";
|
|
@@ -339,7 +339,7 @@ async function defaultLookupHost(hostname) {
|
|
|
339
339
|
return dnsLookup(hostname, { all: true });
|
|
340
340
|
}
|
|
341
341
|
__name(defaultLookupHost, "defaultLookupHost");
|
|
342
|
-
async function assertVoiceBaseUrlNetworkAllowed(voiceConfig, lookupHost) {
|
|
342
|
+
async function assertVoiceBaseUrlNetworkAllowed(voiceConfig, lookupHost, abortSignal) {
|
|
343
343
|
const hostname = normalizeHostname(new URL(voiceConfig.baseUrl).hostname);
|
|
344
344
|
if (isLoopbackHost(hostname)) {
|
|
345
345
|
return;
|
|
@@ -353,12 +353,29 @@ async function assertVoiceBaseUrlNetworkAllowed(voiceConfig, lookupHost) {
|
|
|
353
353
|
return;
|
|
354
354
|
}
|
|
355
355
|
let result;
|
|
356
|
+
let onAbort;
|
|
356
357
|
try {
|
|
357
|
-
|
|
358
|
+
if (abortSignal?.aborted) {
|
|
359
|
+
throw abortSignal.reason;
|
|
360
|
+
}
|
|
361
|
+
const lookup = (lookupHost ?? defaultLookupHost)(hostname);
|
|
362
|
+
result = abortSignal ? await Promise.race([
|
|
363
|
+
lookup,
|
|
364
|
+
new Promise((_resolve, reject) => {
|
|
365
|
+
onAbort = /* @__PURE__ */ __name(() => reject(abortSignal.reason), "onAbort");
|
|
366
|
+
if (abortSignal.aborted) onAbort();
|
|
367
|
+
else abortSignal.addEventListener("abort", onAbort, { once: true });
|
|
368
|
+
})
|
|
369
|
+
]) : await lookup;
|
|
358
370
|
} catch {
|
|
371
|
+
if (abortSignal?.aborted) {
|
|
372
|
+
throw abortSignal.reason instanceof Error ? abortSignal.reason : new Error("Voice request was aborted.");
|
|
373
|
+
}
|
|
359
374
|
throw new Error(
|
|
360
375
|
`Voice model '${voiceConfig.model}': DNS lookup failed for ${hostname}. Cannot verify network safety.`
|
|
361
376
|
);
|
|
377
|
+
} finally {
|
|
378
|
+
if (onAbort) abortSignal?.removeEventListener("abort", onAbort);
|
|
362
379
|
}
|
|
363
380
|
const records = Array.isArray(result) ? result : [result];
|
|
364
381
|
if (records.some((record) => isPrivateNetworkIp(record.address))) {
|
|
@@ -649,7 +666,11 @@ async function transcribeViaQwenAsr(audio, voiceConfig, options, fetchFn) {
|
|
|
649
666
|
__name(transcribeViaQwenAsr, "transcribeViaQwenAsr");
|
|
650
667
|
async function transcribeVoiceAudio(audio, args) {
|
|
651
668
|
const voiceConfig = resolveVoiceTranscriptionConfig(args);
|
|
652
|
-
await assertVoiceBaseUrlNetworkAllowed(
|
|
669
|
+
await assertVoiceBaseUrlNetworkAllowed(
|
|
670
|
+
voiceConfig,
|
|
671
|
+
args.lookupHost,
|
|
672
|
+
args.abortSignal
|
|
673
|
+
);
|
|
653
674
|
const fetchFn = args.fetchFn ?? fetch;
|
|
654
675
|
const language = resolveLanguageCode(readVoiceLanguage(args.settings));
|
|
655
676
|
const keytermsContext = buildKeytermsContext(args.settings);
|
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
resolveModelConfig,
|
|
5
5
|
resolveProviderProtocol,
|
|
6
6
|
stripRuntimeSnapshotPrefix
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-HJUDVNCO.js";
|
|
8
8
|
import {
|
|
9
9
|
external_exports
|
|
10
10
|
} from "./chunk-H6XPXXMH.js";
|
|
11
11
|
import {
|
|
12
12
|
AuthType,
|
|
13
13
|
MODEL_GENERATION_CONFIG_FIELDS
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-HWTL6MPR.js";
|
|
15
15
|
import {
|
|
16
16
|
REASONING_EFFORT_TIERS,
|
|
17
17
|
normalizeReasoningEffort
|
|
@@ -2,25 +2,25 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
getExtensionManager
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-HRUGYOJN.js";
|
|
6
6
|
import {
|
|
7
7
|
getPlugin,
|
|
8
8
|
parseChannelConfig,
|
|
9
9
|
registerPlugin
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ZP4ZZJJG.js";
|
|
11
11
|
import {
|
|
12
12
|
sanitizeLogText
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-AU4R7ACM.js";
|
|
14
14
|
import {
|
|
15
15
|
loadSettings
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-7IDCQ35Q.js";
|
|
17
17
|
import {
|
|
18
18
|
writeStderrLine,
|
|
19
19
|
writeStdoutLine
|
|
20
20
|
} from "./chunk-YUZI3WAC.js";
|
|
21
21
|
import {
|
|
22
22
|
hashDaemonWorkspace
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-HWTL6MPR.js";
|
|
24
24
|
import {
|
|
25
25
|
Storage
|
|
26
26
|
} from "./chunk-7NFB7LBQ.js";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
SkillError
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-HJUDVNCO.js";
|
|
6
6
|
import {
|
|
7
7
|
init_esbuild_shims
|
|
8
8
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -100,6 +100,7 @@ var SERVE_CONTROL_EXT_METHODS = {
|
|
|
100
100
|
workspaceMcpRuntimeAdd: "qwen/control/workspace/mcp/runtime-add",
|
|
101
101
|
workspaceMcpRuntimeRemove: "qwen/control/workspace/mcp/runtime-remove",
|
|
102
102
|
workspaceReload: "qwen/control/workspace/reload",
|
|
103
|
+
workspaceSkillsRefresh: "qwen/control/workspace/skills/refresh",
|
|
103
104
|
workspaceExtensionsRefresh: "qwen/control/workspace/extensions/refresh",
|
|
104
105
|
/**
|
|
105
106
|
* Reverse tool channel (issue #5626, Phase 2). Unlike every other entry
|
|
@@ -5,14 +5,14 @@ import {
|
|
|
5
5
|
Text,
|
|
6
6
|
require_jsx_runtime,
|
|
7
7
|
theme
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-2TQXXQMI.js";
|
|
9
9
|
import {
|
|
10
10
|
require_react
|
|
11
11
|
} from "./chunk-HTHUX2T5.js";
|
|
12
12
|
import {
|
|
13
13
|
stringWidth,
|
|
14
14
|
toCodePoints
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-QE2WJ7FS.js";
|
|
16
16
|
import {
|
|
17
17
|
createDebugLogger
|
|
18
18
|
} from "./chunk-7NFB7LBQ.js";
|
|
@@ -41,7 +41,7 @@ import {
|
|
|
41
41
|
} from "./chunk-KSO42X3Z.js";
|
|
42
42
|
import {
|
|
43
43
|
defaultSpawnChannelFactory
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-VEETSXYX.js";
|
|
45
45
|
import {
|
|
46
46
|
BridgeChannelClosedError,
|
|
47
47
|
BridgeTimeoutError,
|
|
@@ -50,7 +50,7 @@ import {
|
|
|
50
50
|
STATUS_SCHEMA_VERSION,
|
|
51
51
|
createIdleWorkspaceExtensionsStatus,
|
|
52
52
|
createIdleWorkspaceHooksStatus
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-FI2WSOWX.js";
|
|
54
54
|
import {
|
|
55
55
|
canonicalizeWorkspace
|
|
56
56
|
} from "./chunk-W7FJ3N32.js";
|
|
@@ -70,11 +70,11 @@ import {
|
|
|
70
70
|
metadataBudgetBytes,
|
|
71
71
|
normalizeSnapshotPayload,
|
|
72
72
|
stableSessionArtifactId
|
|
73
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-HJUDVNCO.js";
|
|
74
74
|
import {
|
|
75
75
|
DAEMON_TRACEPARENT_META_KEY,
|
|
76
76
|
DAEMON_TRACESTATE_META_KEY
|
|
77
|
-
} from "./chunk-
|
|
77
|
+
} from "./chunk-HWTL6MPR.js";
|
|
78
78
|
import {
|
|
79
79
|
init_esbuild_shims
|
|
80
80
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -1588,10 +1588,14 @@ var BridgeClient = class {
|
|
|
1588
1588
|
return;
|
|
1589
1589
|
}
|
|
1590
1590
|
const durationMs = updateMeta?.["durationMs"];
|
|
1591
|
+
const apiErrors = updateMeta?.["apiErrors"];
|
|
1592
|
+
const apiRetries = updateMeta?.["apiRetries"];
|
|
1591
1593
|
this.onTokenUsage(
|
|
1592
1594
|
typeof inputTokens === "number" ? inputTokens : 0,
|
|
1593
1595
|
typeof outputTokens === "number" ? outputTokens : 0,
|
|
1594
|
-
typeof durationMs === "number" ? durationMs : void 0
|
|
1596
|
+
typeof durationMs === "number" ? durationMs : void 0,
|
|
1597
|
+
typeof apiErrors === "number" ? apiErrors : 0,
|
|
1598
|
+
typeof apiRetries === "number" ? apiRetries : 0
|
|
1595
1599
|
);
|
|
1596
1600
|
}
|
|
1597
1601
|
/**
|
|
@@ -5258,6 +5262,7 @@ function createAcpSessionBridge(opts) {
|
|
|
5258
5262
|
const aliveChannels = /* @__PURE__ */ new Set();
|
|
5259
5263
|
let inFlightChannelSpawn;
|
|
5260
5264
|
const byId = /* @__PURE__ */ new Map();
|
|
5265
|
+
const inFlightExtensionRefreshes = /* @__PURE__ */ new Map();
|
|
5261
5266
|
const toSessionSummary = /* @__PURE__ */ __name((entry) => {
|
|
5262
5267
|
let isWaitingForPermission = false;
|
|
5263
5268
|
let isWaitingForUserQuestion = false;
|
|
@@ -5435,10 +5440,12 @@ function createAcpSessionBridge(opts) {
|
|
|
5435
5440
|
// at the session/update fan-in to the daemon host's metrics ring via
|
|
5436
5441
|
// the telemetry seam. Optional-chained so non-daemon callers (tests,
|
|
5437
5442
|
// Mode A) that wire no `tokenUsage` metric are a silent no-op.
|
|
5438
|
-
(inputTokens, outputTokens, durationMs) => telemetry.metrics?.tokenUsage?.(
|
|
5443
|
+
(inputTokens, outputTokens, durationMs, apiErrors, apiRetries) => telemetry.metrics?.tokenUsage?.(
|
|
5439
5444
|
inputTokens,
|
|
5440
5445
|
outputTokens,
|
|
5441
|
-
durationMs
|
|
5446
|
+
durationMs,
|
|
5447
|
+
apiErrors,
|
|
5448
|
+
apiRetries
|
|
5442
5449
|
),
|
|
5443
5450
|
// `create_sub_session` tool: forward the request/response hook so a child
|
|
5444
5451
|
// tool can ask the daemon to spawn a sub-session and (for 'first-turn')
|
|
@@ -8030,12 +8037,26 @@ function createAcpSessionBridge(opts) {
|
|
|
8030
8037
|
return { refreshed: 0, failed: 0 };
|
|
8031
8038
|
}
|
|
8032
8039
|
try {
|
|
8033
|
-
|
|
8034
|
-
|
|
8035
|
-
|
|
8040
|
+
let inFlight = inFlightExtensionRefreshes.get(entry.sessionId);
|
|
8041
|
+
if (!inFlight || inFlight.connection !== entry.connection) {
|
|
8042
|
+
const promise = (async () => {
|
|
8043
|
+
await entry.connection.extMethod(
|
|
8036
8044
|
SERVE_CONTROL_EXT_METHODS.workspaceExtensionsRefresh,
|
|
8037
8045
|
{ sessionId: entry.sessionId }
|
|
8038
|
-
)
|
|
8046
|
+
);
|
|
8047
|
+
})();
|
|
8048
|
+
inFlight = { connection: entry.connection, promise };
|
|
8049
|
+
inFlightExtensionRefreshes.set(entry.sessionId, inFlight);
|
|
8050
|
+
const clear = /* @__PURE__ */ __name(() => {
|
|
8051
|
+
if (inFlightExtensionRefreshes.get(entry.sessionId) === inFlight) {
|
|
8052
|
+
inFlightExtensionRefreshes.delete(entry.sessionId);
|
|
8053
|
+
}
|
|
8054
|
+
}, "clear");
|
|
8055
|
+
void promise.then(clear, clear);
|
|
8056
|
+
}
|
|
8057
|
+
await Promise.race([
|
|
8058
|
+
withTimeout(
|
|
8059
|
+
inFlight.promise,
|
|
8039
8060
|
3e4,
|
|
8040
8061
|
SERVE_CONTROL_EXT_METHODS.workspaceExtensionsRefresh
|
|
8041
8062
|
),
|
|
@@ -23,6 +23,8 @@ var DaemonMetricsRing = class {
|
|
|
23
23
|
curQueueWaits = [];
|
|
24
24
|
curPromptDurations = [];
|
|
25
25
|
curLlmDurations = [];
|
|
26
|
+
curLlmApiErrors = 0;
|
|
27
|
+
curLlmApiRetries = 0;
|
|
26
28
|
curPipeInBytes = 0;
|
|
27
29
|
curPipeOutBytes = 0;
|
|
28
30
|
curTokensIn = 0;
|
|
@@ -49,6 +51,19 @@ var DaemonMetricsRing = class {
|
|
|
49
51
|
recordLlmDuration(durationMs) {
|
|
50
52
|
pushCapped(this.curLlmDurations, durationMs);
|
|
51
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* Fold one model round's per-round model-API-error and automatic-retry
|
|
56
|
+
* increments (from the same token frame) into the open window. Both are
|
|
57
|
+
* plain counters — a burst in one window accrues exactly, past the sample
|
|
58
|
+
* cap that only bounds the percentile arrays. Non-finite / negative inputs
|
|
59
|
+
* are ignored so a malformed frame cannot poison the totals.
|
|
60
|
+
*/
|
|
61
|
+
recordApiActivity(errors, retries) {
|
|
62
|
+
if (Number.isFinite(errors) && errors > 0) this.curLlmApiErrors += errors;
|
|
63
|
+
if (Number.isFinite(retries) && retries > 0) {
|
|
64
|
+
this.curLlmApiRetries += retries;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
52
67
|
/** Fold one ACP-child pipe message's payload size into the open window. */
|
|
53
68
|
recordPipe(direction, bytes) {
|
|
54
69
|
if (!Number.isFinite(bytes) || bytes < 0) return;
|
|
@@ -84,6 +99,8 @@ var DaemonMetricsRing = class {
|
|
|
84
99
|
promptDurationP95Ms: percentile(this.curPromptDurations, 0.95),
|
|
85
100
|
llmApiP50Ms: percentile(this.curLlmDurations, 0.5),
|
|
86
101
|
llmApiP95Ms: percentile(this.curLlmDurations, 0.95),
|
|
102
|
+
llmApiErrors: this.curLlmApiErrors,
|
|
103
|
+
llmApiRetries: this.curLlmApiRetries,
|
|
87
104
|
cpuPercent: finiteGauge(gauges.cpuPercent),
|
|
88
105
|
rssBytes: finiteGauge(gauges.rssBytes),
|
|
89
106
|
heapUsedBytes: finiteGauge(gauges.heapUsedBytes),
|
|
@@ -109,6 +126,8 @@ var DaemonMetricsRing = class {
|
|
|
109
126
|
this.curQueueWaits.length = 0;
|
|
110
127
|
this.curPromptDurations.length = 0;
|
|
111
128
|
this.curLlmDurations.length = 0;
|
|
129
|
+
this.curLlmApiErrors = 0;
|
|
130
|
+
this.curLlmApiRetries = 0;
|
|
112
131
|
this.curPipeInBytes = 0;
|
|
113
132
|
this.curPipeOutBytes = 0;
|
|
114
133
|
this.curTokensIn = 0;
|