@qwen-code/qwen-code 0.21.4 → 0.21.5-nightly.20260805.32e274157
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled/qc-helper/docs/configuration/model-providers.md +8 -7
- package/bundled/qc-helper/docs/configuration/settings.md +16 -16
- package/bundled/qc-helper/docs/features/code-review.md +4 -0
- package/bundled/qc-helper/docs/features/headless.md +31 -0
- package/bundled/qc-helper/docs/features/mcp.md +11 -3
- package/bundled/qc-helper/docs/qwen-serve.md +75 -0
- package/bundled/review/SKILL.md +90 -52
- package/chunks/{MaxSizedBox-5XDFQHTQ.js → MaxSizedBox-H44SGRP7.js} +17 -16
- package/chunks/{StandaloneSessionPicker-DLADA54K.js → StandaloneSessionPicker-T5FQMYD3.js} +31 -30
- package/chunks/{acpAgent-MVEFZSBS.js → acpAgent-J474KXVM.js} +849 -313
- package/chunks/{agent-RB6LCRZX.js → agent-SC23IV5L.js} +17 -16
- package/chunks/{agent-headless-272ZACJV.js → agent-headless-2CHR5WJP.js} +17 -16
- package/chunks/{artifact-tool-TBOYEKTY.js → artifact-tool-RROCCJDA.js} +1 -1
- package/chunks/{askUserQuestion-23Y5WZFJ.js → askUserQuestion-2EPPBPUZ.js} +1 -1
- package/chunks/{bridge-GXUXFSHK.js → bridge-BLHYPCCR.js} +21 -19
- package/chunks/{channel-settings-store-5UA2SABE.js → channel-settings-store-CDOZ7GCP.js} +22 -21
- package/chunks/{channel-worker-group-NDG4WOOZ.js → channel-worker-group-SVGPDH2C.js} +3 -2
- package/chunks/{channel-worker-manager-ZCW6UW34.js → channel-worker-manager-72ZK2GTS.js} +3 -2
- package/chunks/{channel-worker-supervisor-ATGFTZRN.js → channel-worker-supervisor-NUEDVHX4.js} +2 -1
- package/chunks/{chunk-PWCQRLM5.js → chunk-2AGOQ7QO.js} +1 -1
- package/chunks/{chunk-AFJSRJTO.js → chunk-2B6FBVWE.js} +1 -1
- package/chunks/{chunk-XPAY4EMH.js → chunk-2OSE7Q5O.js} +3 -3
- package/chunks/{chunk-DHNFB7NC.js → chunk-2QOLRESU.js} +5 -5
- package/chunks/{chunk-UWSXFI6E.js → chunk-2U7GPHA6.js} +6 -2
- package/chunks/{chunk-CIUUYB23.js → chunk-3DTM3RPU.js} +1 -1
- package/chunks/{chunk-X6QNZOTC.js → chunk-3PRJYMXC.js} +2 -2
- package/chunks/{chunk-6KQUOXT5.js → chunk-3XDH6PZM.js} +7 -7
- package/chunks/{chunk-DJA7YBLJ.js → chunk-56MC5OM7.js} +2 -2
- package/chunks/{chunk-B3EBXISV.js → chunk-5DVP76WL.js} +90 -7
- package/chunks/{chunk-2T3RYG4L.js → chunk-5KDLX7ER.js} +919 -323
- package/chunks/{chunk-O2ZYHG33.js → chunk-5L6CQ4ZU.js} +131 -67
- package/chunks/{chunk-E2SYUEIA.js → chunk-5OAMVWFL.js} +874 -375
- package/chunks/{chunk-LPLMUGIM.js → chunk-5X76FZLI.js} +5 -5
- package/chunks/{chunk-M2L4TMH3.js → chunk-6HTEECQY.js} +3 -3
- package/chunks/{chunk-KHSJSMFS.js → chunk-6I6WUVYI.js} +1 -1
- package/chunks/{chunk-LLMGP5IC.js → chunk-6WBWIPBF.js} +2 -2
- package/chunks/{chunk-PQ5JFCNL.js → chunk-762UTZQZ.js} +3 -3
- package/chunks/{chunk-HBCKZF2A.js → chunk-7EW7CYLA.js} +1 -1
- package/chunks/{chunk-4PZ7SPD5.js → chunk-7FKLLD4X.js} +1 -1
- package/chunks/{chunk-XSOAW7FC.js → chunk-AE7AKP3E.js} +6 -6
- package/chunks/{chunk-UATJZOAJ.js → chunk-ASS3UQB5.js} +3 -3
- package/chunks/{chunk-XGA6XHH3.js → chunk-AXOFMDZC.js} +3 -3
- package/chunks/chunk-BKHCW2BI.js +41 -0
- package/chunks/{chunk-DZPOYHBT.js → chunk-D6FISK43.js} +1 -1
- package/chunks/{chunk-CFDR3GNL.js → chunk-D7D7RXIJ.js} +11 -0
- package/chunks/{chunk-FPPVCCAH.js → chunk-DNPP267F.js} +1 -1
- package/chunks/{chunk-I32URQI7.js → chunk-EA2CKB6L.js} +5 -5
- package/chunks/{chunk-C5YFS6VR.js → chunk-EL4W7MGQ.js} +4 -4
- package/chunks/{chunk-QXTGHZCX.js → chunk-FDLXWNCE.js} +3 -3
- package/chunks/{chunk-PCVMRBLN.js → chunk-FFCSRU3F.js} +1 -1
- package/chunks/{chunk-SV5X2EUV.js → chunk-FMU2QVA5.js} +1 -1
- package/chunks/{chunk-2ON2O4MD.js → chunk-FV2JYSWS.js} +28 -3
- package/chunks/{chunk-KB6VSG2U.js → chunk-GXP44JOS.js} +7 -7
- package/chunks/{chunk-BC4LTKEG.js → chunk-HP6MKLWU.js} +1 -1
- package/chunks/{chunk-YXEVDA66.js → chunk-HU5TUALO.js} +110 -22
- package/chunks/{chunk-2JN5V3I7.js → chunk-ITZK3L4S.js} +1 -1
- package/chunks/{chunk-5XGI4IPK.js → chunk-JEVHOCCA.js} +4 -4
- package/chunks/{chunk-6ME3PVMM.js → chunk-JNFWMBG6.js} +5 -5
- package/chunks/{chunk-3PHUGFPH.js → chunk-JXPOBM4B.js} +1 -1
- package/chunks/{chunk-TXZDRD36.js → chunk-LCCBAGRT.js} +5 -5
- package/chunks/{chunk-G7XXKQYS.js → chunk-LKRMNRSN.js} +27 -1
- package/chunks/{chunk-DOCBJIBL.js → chunk-MB3ILUB7.js} +1 -1
- package/chunks/{chunk-HFVW54NL.js → chunk-MBEMTXQT.js} +9 -2
- package/chunks/{chunk-RNKGMZEW.js → chunk-MFTOMYE2.js} +1 -1
- package/chunks/{chunk-RPYYTL7E.js → chunk-MGSSJT27.js} +2 -2
- package/chunks/{chunk-URVJ4AZC.js → chunk-MKMUBBEX.js} +1 -1
- package/chunks/{chunk-RL2NPV5E.js → chunk-N5QPOGRQ.js} +1 -1
- package/chunks/{chunk-2CCUHZP5.js → chunk-N7PF4KZR.js} +2 -2
- package/chunks/{chunk-JDJ7SC4E.js → chunk-NMBDPO63.js} +255 -197
- package/chunks/{chunk-M6RNMBUO.js → chunk-NQZ5IVLH.js} +4 -4
- package/chunks/{chunk-FV4TUUDE.js → chunk-O4WOWHMZ.js} +1 -1
- package/chunks/{chunk-GDREW3U5.js → chunk-OIVG6IHL.js} +2 -2
- package/chunks/{chunk-IMGNGOGC.js → chunk-PQ2J56BJ.js} +3 -3
- package/chunks/{chunk-EJXATV5R.js → chunk-PWFDZA5A.js} +2 -2
- package/chunks/{chunk-OOPFAIWP.js → chunk-Q7EXR3W2.js} +1 -1
- package/chunks/{chunk-4CTV3FZH.js → chunk-QJL2AQZI.js} +23 -19
- package/chunks/{chunk-SBBHZ3YT.js → chunk-QKWPXGW4.js} +1 -1
- package/chunks/{chunk-HI4YGRJD.js → chunk-RDICVTQC.js} +3 -3
- package/chunks/{chunk-ZRQY5BBS.js → chunk-REAWLQAU.js} +10 -10
- package/chunks/{chunk-BOWKLLWA.js → chunk-SOBA6GIW.js} +3 -3
- package/chunks/{chunk-WDLQGFWP.js → chunk-TYWI5NXY.js} +27 -27
- package/chunks/{chunk-A7PONO5G.js → chunk-URJHXOSO.js} +2 -2
- package/chunks/{chunk-C6FU76AA.js → chunk-V3BNVUFI.js} +1 -1
- package/chunks/{chunk-G6KI6B5L.js → chunk-VF6WPN4R.js} +1 -1
- package/chunks/{chunk-AWTLFUVN.js → chunk-VT27B2XS.js} +13 -13
- package/chunks/{chunk-O4IWFYUW.js → chunk-VY4TEQQ6.js} +4 -4
- package/chunks/{chunk-EIAPOG76.js → chunk-WECYW5EE.js} +4 -4
- package/chunks/{chunk-PDDYAXL2.js → chunk-WIRAPZ62.js} +7 -0
- package/chunks/chunk-WOJZWRAZ.js +123 -0
- package/chunks/{chunk-7UXI6P72.js → chunk-WVAESIM6.js} +2 -2
- package/chunks/{chunk-P5UJMCVS.js → chunk-XIDYVC4P.js} +4 -4
- package/chunks/{chunk-THLV7YGY.js → chunk-XIKKANF4.js} +2 -2
- package/chunks/{chunk-FHPKHXHT.js → chunk-XNZBXQCG.js} +4 -0
- package/chunks/{chunk-ZLJQIGCH.js → chunk-XZCMQUOF.js} +8 -0
- package/chunks/{chunk-PQEIKQXN.js → chunk-YJMFRTLV.js} +24 -6
- package/chunks/{chunk-QZQ72YF6.js → chunk-Z26UXKZE.js} +1 -1
- package/chunks/{chunk-VA5NLVPT.js → chunk-Z7JILXGX.js} +1 -1
- package/chunks/{chunk-UEJESCS7.js → chunk-ZPPP6VCL.js} +1 -1
- package/chunks/{computer-use-MDOMIVTL.js → computer-use-ENYMKQAI.js} +17 -16
- package/chunks/{config-utils-E3ZQTHGM.js → config-utils-LIRO7NSU.js} +2 -2
- package/chunks/{contextCommand-FCK3CB37.js → contextCommand-E7XMHU6M.js} +19 -18
- package/chunks/{core-runtime-UHRHHU2O.js → core-runtime-KDIRQ63A.js} +17 -16
- package/chunks/{create-sub-session-J32WC64U.js → create-sub-session-6EWLAZD5.js} +1 -1
- package/chunks/{create-sub-session-MIXUVLWW.js → create-sub-session-VVEL77UF.js} +17 -16
- package/chunks/{cron-create-HMFSHIAR.js → cron-create-CCRIULJE.js} +1 -1
- package/chunks/{cron-delete-ZJFHOX57.js → cron-delete-FCFW6BGP.js} +1 -1
- package/chunks/{cron-list-ZEX2NBMN.js → cron-list-QDBVCHRF.js} +1 -1
- package/chunks/{daemon-status-provider-6LC7LUNR.js → daemon-status-provider-4LMCSLZ4.js} +25 -23
- package/chunks/{daemon-trust-policy-Y36HGRAM.js → daemon-trust-policy-XLONWB2C.js} +22 -21
- package/chunks/{daemon-trust-policy-monitor-ROTBBDOH.js → daemon-trust-policy-monitor-FHFZ3NNG.js} +22 -21
- package/chunks/{deferred-core-runtime-ZQ4JIAJD.js → deferred-core-runtime-QNEBJ3DP.js} +17 -16
- package/chunks/{display-image-2WOG27DY.js → display-image-GUJA352B.js} +2 -2
- package/chunks/{earlyInputCapture-GPRUNXTP.js → earlyInputCapture-OG5IUF4R.js} +17 -16
- package/chunks/{edit-YK3UP6D2.js → edit-E2WNOITJ.js} +18 -17
- package/chunks/{enter-worktree-QMVQW7UG.js → enter-worktree-RMCBAAA2.js} +17 -16
- package/chunks/{enterPlanMode-TZAYQ5MP.js → enterPlanMode-GISFJA3O.js} +17 -16
- package/chunks/{environment-3UQURCZG.js → environment-JXTQGYDN.js} +19 -18
- package/chunks/{errors-VBIMTNNI.js → errors-2AYTYCQ3.js} +19 -18
- package/chunks/{exit-worktree-4EC7LBBC.js → exit-worktree-HORS3V7Z.js} +17 -16
- package/chunks/{exitPlanMode-K5Y3REU2.js → exitPlanMode-V75Y36HJ.js} +17 -16
- package/chunks/external-tool-guard-provider-5HTGOPGU.js +273 -0
- package/chunks/{fast-path-KS6IE7YR.js → fast-path-HURC6JUT.js} +5 -5
- package/chunks/{gemini-LTUCUOJH.js → gemini-WHMD4RGY.js} +70 -55
- package/chunks/{geminiContentGenerator-M3HJTHKR.js → geminiContentGenerator-DZB3GPNQ.js} +1 -1
- package/chunks/{glob-SKUYGTF2.js → glob-IGTV723M.js} +17 -16
- package/chunks/{goal-tools-SPQ5M6D3.js → goal-tools-3AZKX5WQ.js} +2 -18
- package/chunks/{grep-SQ7RD7SV.js → grep-SJ2NYUCD.js} +17 -16
- package/chunks/{handleAutoUpdate-OK7OX23A.js → handleAutoUpdate-NPBKROGA.js} +21 -20
- package/chunks/{i18n-P77YBKY4.js → i18n-CBSMJZ3Z.js} +18 -17
- package/chunks/{image-gen-2ZWPS42A.js → image-gen-KNKDTUEN.js} +2 -2
- package/chunks/{initializer-PIOYXVW7.js → initializer-JT5P3IQF.js} +22 -21
- package/chunks/{installationInfo-IWMM6DPV.js → installationInfo-CZVCKPPZ.js} +18 -17
- package/chunks/{list-3DCR4TRI.js → list-MT7T6JVH.js} +25 -24
- package/chunks/{list-agents-TWEGRJWO.js → list-agents-GC4BRET7.js} +1 -1
- package/chunks/{loadedSettingsAdapter-EJC6CU5N.js → loadedSettingsAdapter-D4JFGYYQ.js} +22 -21
- package/chunks/{loggingContentGenerator-2JEFU25T.js → loggingContentGenerator-SFT5CMPU.js} +9 -8
- package/chunks/{loop-wakeup-6LLEOQYV.js → loop-wakeup-SQQSBMEY.js} +2 -2
- package/chunks/{ls-H5WX22VK.js → ls-63CC3NNX.js} +1 -1
- package/chunks/{lsp-G6FXYEIS.js → lsp-P6NVJVNT.js} +1 -1
- package/chunks/{managed-npm-update-EGVQPSBR.js → managed-npm-update-YHJW6SGD.js} +18 -17
- package/chunks/{mcp-KFFH2MBV.js → mcp-53X2M7XL.js} +22 -21
- package/chunks/{monitor-6Y3NDMTI.js → monitor-I43P3MNV.js} +17 -16
- package/chunks/{nonInteractiveCli-426IQDPE.js → nonInteractiveCli-UADCDERF.js} +50 -48
- package/chunks/{notebook-edit-373IQQLE.js → notebook-edit-WKZUONWV.js} +18 -17
- package/chunks/{openaiContentGenerator-PGFSOMIQ.js → openaiContentGenerator-YHF3FIYI.js} +9 -8
- package/chunks/{pidfile-Y4INDMHG.js → pidfile-VU37FJS4.js} +17 -16
- package/chunks/{processUtils-6BCPCJZW.js → processUtils-VIQVTDWH.js} +2 -2
- package/chunks/{qwenContentGenerator-QC3KSHSX.js → qwenContentGenerator-46476NL4.js} +18 -17
- package/chunks/{qwenOAuth2-IOAXKJ3L.js → qwenOAuth2-D62OJZFU.js} +1 -1
- package/chunks/{read-file-2T54FYZV.js → read-file-6PSNROKB.js} +7 -6
- package/chunks/{read-mcp-resource-DRZSI3HE.js → read-mcp-resource-RTSSEER5.js} +1 -1
- package/chunks/{record-artifact-IPIRWMFY.js → record-artifact-E6AWQU2Z.js} +2 -2
- package/chunks/{resumeHistoryUtils-O62RDCZ3.js → resumeHistoryUtils-QFD6LB7N.js} +20 -19
- package/chunks/{ripGrep-3H72KY7S.js → ripGrep-4WZJEOGB.js} +17 -16
- package/chunks/{run-qwen-serve-3AIDNNHO.js → run-qwen-serve-SEL3TISE.js} +72 -36
- package/chunks/{runtime-AZ4EHHFV.js → runtime-T6JAS7GL.js} +25 -24
- package/chunks/{scheduler-L4UUCU4Z.js → scheduler-ZCTDMJJV.js} +17 -16
- package/chunks/{sdk-exporters-http-IKNWQJNV.js → sdk-exporters-http-IL2346MJ.js} +6 -2
- package/chunks/{sdk-impl-7CUUMQDB.js → sdk-impl-SYKGVWOZ.js} +2 -2
- package/chunks/{send-message-LHJLVWFD.js → send-message-TL6FIMMN.js} +3 -3
- package/chunks/{serve-CLXGSYOE.js → serve-A7B6VWK7.js} +23 -21
- package/chunks/{server-MEAE3WMM.js → server-6CCTTLO4.js} +170 -63
- package/chunks/{session-OSLD2LT5.js → session-3YYXW6MZ.js} +51 -49
- package/chunks/{settings-ILWAOKA4.js → settings-KWYWA3BS.js} +21 -20
- package/chunks/{shell-RT5DBH6B.js → shell-6SUYJURL.js} +17 -16
- package/chunks/{skill-LVGA3ATZ.js → skill-ZIQFS6YD.js} +8 -7
- package/chunks/{skill-settings-WTZE7EPE.js → skill-settings-23IFV7S3.js} +21 -20
- package/chunks/{spawnChannel-BOBS7DVM.js → spawnChannel-AI7QA35U.js} +20 -18
- package/chunks/{standalone-update-Y5JB4S2K.js → standalone-update-WNXRFLEA.js} +19 -18
- package/chunks/{startInteractiveUI-ZV25CD2S.js → startInteractiveUI-NPZU6YXV.js} +76 -71
- package/chunks/{syntheticOutput-EYL7DWO7.js → syntheticOutput-BN7E626U.js} +2 -2
- package/chunks/{task-create-4ALZMGP5.js → task-create-2X4UP4F3.js} +4 -4
- package/chunks/{task-list-6CVQPORX.js → task-list-WOLJPZ64.js} +1 -1
- package/chunks/{task-stop-Y5ZTFVRX.js → task-stop-TNXRNAL2.js} +1 -1
- package/chunks/{task-update-IKCEEWJ6.js → task-update-VDUSN36E.js} +4 -4
- package/chunks/{team-create-ZVPQIXCP.js → team-create-CMF2RRF2.js} +17 -16
- package/chunks/{team-delete-CE7DC53R.js → team-delete-D2VMSDOT.js} +1 -1
- package/chunks/{team-plan-approval-5UHUBY3W.js → team-plan-approval-5EET4S3I.js} +17 -16
- package/chunks/{terminal-image-renderer-NWC2RALG.js → terminal-image-renderer-TCEAHDFE.js} +18 -17
- package/chunks/{theme-manager-5KICSBOB.js → theme-manager-RPYRQJLX.js} +17 -16
- package/chunks/{todoWrite-FTZWQRZH.js → todoWrite-MHWHO5UO.js} +1 -1
- package/chunks/{tool-search-2AOU77H4.js → tool-search-HJN53LCN.js} +9 -8
- package/chunks/{total-session-admission-FR7RMHVL.js → total-session-admission-4FZK4PCR.js} +21 -19
- package/chunks/{trustedFolders-V7UUPQXO.js → trustedFolders-RIYUQQJC.js} +18 -17
- package/chunks/{update-relaunch-TBWRMQD6.js → update-relaunch-3HVSJU2T.js} +5 -5
- package/chunks/{updateCheck-42SPCLH7.js → updateCheck-EE2XXQNJ.js} +20 -19
- package/chunks/{useAutoAcceptIndicator-4C2KM345.js → useAutoAcceptIndicator-RRV7MW47.js} +23 -22
- package/chunks/{validateNonInterActiveAuth-UVFRXV3Z.js → validateNonInterActiveAuth-3QRII2BS.js} +47 -45
- package/chunks/{version-HKTV6TPN.js → version-4KUHPDAC.js} +1 -1
- package/chunks/{web-fetch-ZRXSV5AN.js → web-fetch-MXA6HQ42.js} +7 -6
- package/chunks/{web-search-WOLV3L6T.js → web-search-YENHOBMC.js} +5 -4
- package/chunks/{workflow-F63ES3OB.js → workflow-RYEVBM4L.js} +18 -17
- package/chunks/{workspace-providers-status-PJMGMYMC.js → workspace-providers-status-SBTU5TWO.js} +25 -24
- package/chunks/{workspace-registration-store-LNBOX5TJ.js → workspace-registration-store-VUMOTODR.js} +1 -1
- package/chunks/{workspace-registry-4PR7VDQ3.js → workspace-registry-OZ5ZUBJ6.js} +21 -19
- package/chunks/{workspace-service-PVI3VUNQ.js → workspace-service-Y3IGAN4K.js} +26 -25
- package/chunks/{workspace-skills-status-2Q5ZISO6.js → workspace-skills-status-FXOIDGOS.js} +23 -22
- package/chunks/{workspace-trust-reconciler-NOILUH3C.js → workspace-trust-reconciler-DQI7MYJS.js} +26 -24
- package/chunks/{write-file-MOM4JDHG.js → write-file-NK4C3GFC.js} +17 -16
- package/chunks/{zoom-image-E3VHRCFU.js → zoom-image-4Y6Y6DAX.js} +7 -6
- package/cli-entry.js +14 -0
- package/cli.js +16 -12
- package/package.json +3 -3
- package/web-shell/assets/{arc-GpdmhIxr.js → arc-DtI1rZcQ.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-C-LhCgH_.js → architectureDiagram-3BPJPVTR-BPZwSVct.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-CzNdTCm-.js → blockDiagram-GPEHLZMM-BIQ03j4C.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-Ce7hbrRM.js → c4Diagram-AAUBKEIU-CB0RyFGm.js} +1 -1
- package/web-shell/assets/channel-vfbVFuM1.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-BBSEn1PK.js → chunk-2J33WTMH-B3WoS-4H.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-_llgjfe5.js → chunk-4BX2VUAB-C98xYZ1X.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-9fJZ_oZE.js → chunk-55IACEB6-CbTIWRwQ.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-DgEzQWOu.js → chunk-727SXJPM-DWGnKTPu.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-B4RthUTc.js → chunk-AQP2D5EJ-4__QyCEX.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-CDI-emMW.js → chunk-FMBD7UC4-DFtG1YCW.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-jM2-yOd8.js → chunk-ND2GUHAM-rvAhW51N.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-XGZHlKPF.js → chunk-QZHKN3VN-DfiU9pwZ.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-Cvr8atq3.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-Cvr8atq3.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-90nbW1xQ.js → cose-bilkent-S5V4N54A-Cc4EIdxu.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-BtzlyqZ9.js → dagre-BM42HDAG-CZNj4dGW.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-DAaqGWaH.js → diagram-2AECGRRQ-D5tiqQCr.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-CxlzSIFa.js → diagram-5GNKFQAL-pwzw0jVO.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-8kj-1H6u.js → diagram-KO2AKTUF-4CWiM00x.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-6NhjFwRF.js → diagram-LMA3HP47-Dd7rc7Qf.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-Bn9kvInz.js → diagram-OG6HWLK6-_vzV52ml.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-CaRoGsAt.js → erDiagram-TEJ5UH35-CqbE2bx_.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-TkLweHdf.js → flowDiagram-I6XJVG4X-CaxNr7w4.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-ruwhCKBl.js → ganttDiagram-6RSMTGT7-AGjrtfUA.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-DNI_PxoU.js → gitGraphDiagram-PVQCEYII-ADG2zSkc.js} +1 -1
- package/web-shell/assets/{index-p1gz-sxE.js → index-BOryKCqt.js} +1 -1
- package/web-shell/assets/index-Cb1LjsCv.css +5 -0
- package/web-shell/assets/{index-T4KluHvu.js → index-CvJDaIy8.js} +329 -329
- package/web-shell/assets/{infoDiagram-5YYISTIA-DarXq1-A.js → infoDiagram-5YYISTIA-CE3B_IoZ.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-GxDaDlT0.js → ishikawaDiagram-YF4QCWOH-CN-Frhoi.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-mDEoGBzY.js → journeyDiagram-JHISSGLW-CGgezS93.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-Ds0t-Mup.js → kanban-definition-UN3LZRKU-BqWijky5.js} +1 -1
- package/web-shell/assets/{linear-05nJ0xZ7.js → linear-D8sfpZf6.js} +1 -1
- package/web-shell/assets/{mermaid.core-Bua24ThM.js → mermaid.core-3PA4QrzM.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-D_zRdvUS.js → mindmap-definition-RKZ34NQL-D9QxwiCY.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-DZHr1x16.js → pieDiagram-4H26LBE5-Bioaf6uE.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-HA06Wf0h.js → quadrantDiagram-W4KKPZXB-DBb2AS73.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-DH3urmJf.js → requirementDiagram-4Y6WPE33-DXOvZ3KB.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-C4xgz0TT.js → sankeyDiagram-5OEKKPKP-D9qg09Dm.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DAUoZWgv.js → sequenceDiagram-3UESZ5HK-DSAUIfpw.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-v7NzXy4l.js → stateDiagram-AJRCARHV-BPZkzfQ3.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DInOqnhZ.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-B3GTYR2W.js → timeline-definition-PNZ67QCA-UDaQp9sP.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-BWHjSPAq.js → vennDiagram-CIIHVFJN-2ouhAnHO.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-m9r6IUBC.js → wardley-L42UT6IY-Cq_WEvTK.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-kT0FkVfK.js → wardleyDiagram-YWT4CUSO-Dt24aXOM.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-CYRm10z5.js → xychartDiagram-2RQKCTM6-A5Xk2WCH.js} +1 -1
- package/web-shell/index.html +2 -2
- package/bundled/review/DESIGN.md +0 -724
- package/web-shell/assets/channel-95y6Rcp3.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-pfzVkmjQ.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-pfzVkmjQ.js +0 -1
- package/web-shell/assets/index-WxSvj2tI.css +0 -5
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CtdFexEf.js +0 -1
- package/chunks/{channel-management-service-UHX56NBO.js → channel-management-service-5XPPTWUQ.js} +3 -3
- package/chunks/{chunk-LEZFUYPM.js → chunk-7GYP5COR.js} +3 -3
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
} from "./chunk-OCPBI7J5.js";
|
|
18
18
|
import {
|
|
19
19
|
defaultSpawnChannelFactory
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-2U7GPHA6.js";
|
|
21
21
|
import {
|
|
22
22
|
BridgeChannelClosedError,
|
|
23
23
|
BridgeTimeoutError,
|
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
STATUS_SCHEMA_VERSION,
|
|
27
27
|
createIdleWorkspaceExtensionsStatus,
|
|
28
28
|
createIdleWorkspaceHooksStatus
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-WIRAPZ62.js";
|
|
30
30
|
import {
|
|
31
31
|
CHANNEL_STARTUP_PROFILE_META_KEY,
|
|
32
32
|
CHANNEL_STARTUP_PROFILE_VERSION,
|
|
@@ -74,6 +74,11 @@ import {
|
|
|
74
74
|
MAX_SUB_SESSION_NAME_CHARS,
|
|
75
75
|
MAX_SUB_SESSION_PROMPT_CHARS
|
|
76
76
|
} from "./chunk-BK2UNYWD.js";
|
|
77
|
+
import {
|
|
78
|
+
EXTERNAL_TOOL_GUARD_READY_META_KEY,
|
|
79
|
+
EXTERNAL_TOOL_GUARD_REQUIRED_VALUE,
|
|
80
|
+
isValidExternalToolGuardDenialReason
|
|
81
|
+
} from "./chunk-BKHCW2BI.js";
|
|
77
82
|
import {
|
|
78
83
|
ClientSideConnection,
|
|
79
84
|
PROTOCOL_VERSION,
|
|
@@ -90,16 +95,16 @@ import {
|
|
|
90
95
|
metadataBudgetBytes,
|
|
91
96
|
normalizeSnapshotPayload,
|
|
92
97
|
stableSessionArtifactId
|
|
93
|
-
} from "./chunk-
|
|
98
|
+
} from "./chunk-5OAMVWFL.js";
|
|
94
99
|
import {
|
|
95
100
|
DAEMON_TRACEPARENT_META_KEY,
|
|
96
101
|
DAEMON_TRACESTATE_META_KEY
|
|
97
|
-
} from "./chunk-
|
|
102
|
+
} from "./chunk-MGSSJT27.js";
|
|
98
103
|
import {
|
|
99
104
|
INVOCATION_CONTEXT_META_KEY,
|
|
100
105
|
PRIVATE_ACP_CAPABILITY_ENV,
|
|
101
106
|
PRIVATE_PARENT_CAPABILITY_META_KEY
|
|
102
|
-
} from "./chunk-
|
|
107
|
+
} from "./chunk-NMBDPO63.js";
|
|
103
108
|
import {
|
|
104
109
|
init_esbuild_shims
|
|
105
110
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -1582,6 +1587,25 @@ function isRecord2(value) {
|
|
|
1582
1587
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
1583
1588
|
}
|
|
1584
1589
|
__name(isRecord2, "isRecord");
|
|
1590
|
+
function normalizeExternalToolGuardResult(value) {
|
|
1591
|
+
if (!isRecord2(value)) {
|
|
1592
|
+
throw new Error("External tool guard handler returned an invalid result.");
|
|
1593
|
+
}
|
|
1594
|
+
const keys = Object.keys(value);
|
|
1595
|
+
if (value["allowed"] === true && keys.length === 1 && keys[0] === "allowed") {
|
|
1596
|
+
return { allowed: true };
|
|
1597
|
+
}
|
|
1598
|
+
if (value["allowed"] !== false || keys.some((key) => key !== "allowed" && key !== "reason")) {
|
|
1599
|
+
throw new Error("External tool guard handler returned an invalid result.");
|
|
1600
|
+
}
|
|
1601
|
+
if (!Object.hasOwn(value, "reason")) return { allowed: false };
|
|
1602
|
+
const reason = value["reason"];
|
|
1603
|
+
if (!isValidExternalToolGuardDenialReason(reason)) {
|
|
1604
|
+
throw new Error("External tool guard handler returned an invalid result.");
|
|
1605
|
+
}
|
|
1606
|
+
return { allowed: false, reason };
|
|
1607
|
+
}
|
|
1608
|
+
__name(normalizeExternalToolGuardResult, "normalizeExternalToolGuardResult");
|
|
1585
1609
|
function isBoundedChannelDeliveryString(value) {
|
|
1586
1610
|
return typeof value === "string" && value.trim().length > 0 && value.length <= MAX_CHANNEL_DELIVERY_FIELD_CHARS;
|
|
1587
1611
|
}
|
|
@@ -1811,7 +1835,7 @@ function sliceLineRange(content, startLine, endLine) {
|
|
|
1811
1835
|
}
|
|
1812
1836
|
__name(sliceLineRange, "sliceLineRange");
|
|
1813
1837
|
var BridgeClient = class {
|
|
1814
|
-
constructor(resolveEntry, resolvePendingRestoreEvents, mediator, permissionTimeoutMs, maxPendingPerSession, fileSystem, onModelPromoted, onModePromoted, clientMcpSender, ownsSession = () => true, onTokenUsage, onCreateSubSession, onGenerationEvent, onWorkspaceGenerationEvent, onChannelDelivery, hasSessionSpawnInFlight = () => false) {
|
|
1838
|
+
constructor(resolveEntry, resolvePendingRestoreEvents, mediator, permissionTimeoutMs, maxPendingPerSession, fileSystem, onModelPromoted, onModePromoted, clientMcpSender, ownsSession = () => true, onTokenUsage, onCreateSubSession, onGenerationEvent, onWorkspaceGenerationEvent, onChannelDelivery, hasSessionSpawnInFlight = () => false, externalToolGuard) {
|
|
1815
1839
|
this.resolveEntry = resolveEntry;
|
|
1816
1840
|
this.resolvePendingRestoreEvents = resolvePendingRestoreEvents;
|
|
1817
1841
|
this.mediator = mediator;
|
|
@@ -1828,6 +1852,7 @@ var BridgeClient = class {
|
|
|
1828
1852
|
this.onWorkspaceGenerationEvent = onWorkspaceGenerationEvent;
|
|
1829
1853
|
this.onChannelDelivery = onChannelDelivery;
|
|
1830
1854
|
this.hasSessionSpawnInFlight = hasSessionSpawnInFlight;
|
|
1855
|
+
this.externalToolGuard = externalToolGuard;
|
|
1831
1856
|
}
|
|
1832
1857
|
static {
|
|
1833
1858
|
__name(this, "BridgeClient");
|
|
@@ -2108,6 +2133,9 @@ var BridgeClient = class {
|
|
|
2108
2133
|
if (method === SERVE_CONTROL_EXT_METHODS.channelDelivery) {
|
|
2109
2134
|
return this.handleChannelDelivery(params);
|
|
2110
2135
|
}
|
|
2136
|
+
if (method === SERVE_CONTROL_EXT_METHODS.externalToolGuardPrepare) {
|
|
2137
|
+
return this.handleExternalToolGuardPrepare(params);
|
|
2138
|
+
}
|
|
2111
2139
|
if (method === TODO_STOP_GUARD_CONTINUATION_CLAIM_METHOD) {
|
|
2112
2140
|
return this.handleTodoStopGuardContinuationClaim(params);
|
|
2113
2141
|
}
|
|
@@ -2149,6 +2177,52 @@ var BridgeClient = class {
|
|
|
2149
2177
|
}
|
|
2150
2178
|
return { messages, hasQueuedPrompt };
|
|
2151
2179
|
}
|
|
2180
|
+
async handleExternalToolGuardPrepare(params) {
|
|
2181
|
+
if (!this.externalToolGuard) {
|
|
2182
|
+
throw RequestError.methodNotFound(
|
|
2183
|
+
SERVE_CONTROL_EXT_METHODS.externalToolGuardPrepare
|
|
2184
|
+
);
|
|
2185
|
+
}
|
|
2186
|
+
const sessionId = params["sessionId"];
|
|
2187
|
+
const promptId = params["promptId"];
|
|
2188
|
+
const toolCallId = params["toolCallId"];
|
|
2189
|
+
const toolName = params["toolName"];
|
|
2190
|
+
const args = params["arguments"];
|
|
2191
|
+
if (typeof sessionId !== "string" || sessionId.length === 0 || typeof promptId !== "string" || promptId.length === 0 || typeof toolCallId !== "string" || toolCallId.length === 0 || typeof toolName !== "string" || toolName.length === 0 || !isRecord2(args)) {
|
|
2192
|
+
throw RequestError.invalidParams(
|
|
2193
|
+
void 0,
|
|
2194
|
+
"Invalid external tool guard request"
|
|
2195
|
+
);
|
|
2196
|
+
}
|
|
2197
|
+
if (!this.ownsSession(sessionId)) {
|
|
2198
|
+
throw RequestError.invalidParams(
|
|
2199
|
+
void 0,
|
|
2200
|
+
"External tool guard session is not owned by this connection"
|
|
2201
|
+
);
|
|
2202
|
+
}
|
|
2203
|
+
const entry = this.resolveEntry(sessionId);
|
|
2204
|
+
if (!entry || !entry.promptActive || entry.activePromptId !== promptId) {
|
|
2205
|
+
throw RequestError.invalidParams(
|
|
2206
|
+
void 0,
|
|
2207
|
+
"External tool guard prompt is not the active prompt"
|
|
2208
|
+
);
|
|
2209
|
+
}
|
|
2210
|
+
const decision = await this.externalToolGuard({
|
|
2211
|
+
sessionId: entry.sessionId,
|
|
2212
|
+
promptId: entry.activePromptId,
|
|
2213
|
+
toolCallId,
|
|
2214
|
+
toolName,
|
|
2215
|
+
arguments: args
|
|
2216
|
+
});
|
|
2217
|
+
const currentEntry = this.resolveEntry(sessionId);
|
|
2218
|
+
if (!this.ownsSession(sessionId) || currentEntry !== entry || !currentEntry.promptActive || currentEntry.activePromptId !== promptId) {
|
|
2219
|
+
throw RequestError.invalidParams(
|
|
2220
|
+
void 0,
|
|
2221
|
+
"External tool guard prompt is no longer active"
|
|
2222
|
+
);
|
|
2223
|
+
}
|
|
2224
|
+
return normalizeExternalToolGuardResult(decision);
|
|
2225
|
+
}
|
|
2152
2226
|
handleTodoStopGuardContinuationClaim(params) {
|
|
2153
2227
|
const sessionId = typeof params["sessionId"] === "string" && params["sessionId"].length > 0 ? params["sessionId"] : void 0;
|
|
2154
2228
|
if (!sessionId) return { claimed: false, hasQueuedPrompt: false };
|
|
@@ -6485,7 +6559,8 @@ function createAcpSessionBridge(opts) {
|
|
|
6485
6559
|
}).catch(() => void 0);
|
|
6486
6560
|
},
|
|
6487
6561
|
opts.onChannelDelivery,
|
|
6488
|
-
() => channelInfo?.sessionIds === sessionIds && channelInfo.sessionSpawnsInFlight > 0
|
|
6562
|
+
() => channelInfo?.sessionIds === sessionIds && channelInfo.sessionSpawnsInFlight > 0,
|
|
6563
|
+
opts.externalToolGuard
|
|
6489
6564
|
);
|
|
6490
6565
|
connection = new ClientSideConnection(() => client, channel.stream);
|
|
6491
6566
|
} catch (error) {
|
|
@@ -6623,6 +6698,14 @@ function createAcpSessionBridge(opts) {
|
|
|
6623
6698
|
initTimeoutMs,
|
|
6624
6699
|
"initialize"
|
|
6625
6700
|
);
|
|
6701
|
+
if (opts.externalToolGuard) {
|
|
6702
|
+
const guardAck = response._meta?.[EXTERNAL_TOOL_GUARD_READY_META_KEY];
|
|
6703
|
+
if (guardAck !== EXTERNAL_TOOL_GUARD_REQUIRED_VALUE) {
|
|
6704
|
+
throw new Error(
|
|
6705
|
+
`ACP child did not acknowledge the required external tool guard (received: ${JSON.stringify(guardAck)}).`
|
|
6706
|
+
);
|
|
6707
|
+
}
|
|
6708
|
+
}
|
|
6626
6709
|
try {
|
|
6627
6710
|
const attributes = getChannelStartupProfileAttributes(
|
|
6628
6711
|
response,
|