@qwen-code/qwen-code 0.23.1-preview.2 → 0.23.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled/computer-use/SKILL.md +189 -116
- package/bundled/goal-draft/SKILL.md +23 -13
- package/bundled/qc-helper/docs/_meta.ts +1 -0
- package/bundled/qc-helper/docs/configuration/model-providers.md +47 -1
- package/bundled/qc-helper/docs/configuration/settings.md +50 -0
- package/bundled/qc-helper/docs/conversations-recovery.md +102 -0
- package/bundled/qc-helper/docs/features/channels/overview.md +1 -1
- package/bundled/qc-helper/docs/features/computer-use.md +9 -7
- package/bundled/qc-helper/docs/features/followup-suggestions.md +2 -2
- package/bundled/qc-helper/docs/features/goals.md +15 -3
- package/bundled/qc-helper/docs/qwen-serve.md +19 -1
- package/chunks/{MaxSizedBox-IYIQ43IZ.js → MaxSizedBox-UDO6Y7RB.js} +20 -20
- package/chunks/{StandaloneSessionPicker-AWB2OHX6.js → StandaloneSessionPicker-D4CUOO4H.js} +38 -38
- package/chunks/{acp-startup-profiler-BAL4LJTN.js → acp-startup-profiler-KEU6VAYR.js} +2 -2
- package/chunks/{acpAgent-ZC57OLS4.js → acpAgent-KWLJFADK.js} +118 -91
- package/chunks/{agent-GEBPAEJS.js → agent-GSUPGEOL.js} +13 -13
- package/chunks/{agent-headless-63ZEYAJK.js → agent-headless-HNYCQUJB.js} +13 -13
- package/chunks/{anthropicContentGenerator-6XDHXIII.js → anthropicContentGenerator-I7LQZH26.js} +30 -7
- package/chunks/{askUserQuestion-3KAYLLMM.js → askUserQuestion-I5W5S3D6.js} +1 -1
- package/chunks/{bridge-MHWO5I5T.js → bridge-B7CV6RVI.js} +23 -23
- package/chunks/{channel-management-service-NFRZXQFO.js → channel-management-service-TRTLQTSV.js} +4 -4
- package/chunks/{channel-settings-store-T7PMIHKC.js → channel-settings-store-FW45IRUP.js} +31 -31
- package/chunks/{channel-worker-group-O2BWK5F7.js → channel-worker-group-PIYPVCTF.js} +6 -6
- package/chunks/{channel-worker-manager-4WP7VJOD.js → channel-worker-manager-FQHEDTD2.js} +6 -6
- package/chunks/{channel-worker-supervisor-CCUXD6J5.js → channel-worker-supervisor-XJPZZ3VK.js} +3 -3
- package/chunks/{chunk-KTLT7VCX.js → chunk-25CBAK3H.js} +2 -2
- package/chunks/{chunk-SHX2HIE7.js → chunk-27LTEY6D.js} +1 -1
- package/chunks/{chunk-ZT3XUGSU.js → chunk-2TMJRF46.js} +86 -9
- package/chunks/{chunk-HWZOOSEB.js → chunk-2YS3NU4A.js} +3 -3
- package/chunks/chunk-2Z3T52OC.js +82 -0
- package/chunks/{chunk-QW7BUOSI.js → chunk-2ZFO5JD7.js} +20 -3
- package/chunks/{chunk-RH344FKI.js → chunk-3BTHHXXE.js} +1 -1
- package/chunks/{chunk-OFB36ZBA.js → chunk-3LPJ776W.js} +1 -1
- package/chunks/{chunk-GEV66YGE.js → chunk-3VDLQUR2.js} +1 -1
- package/chunks/{chunk-RRCNEW2A.js → chunk-3VWPPK5Q.js} +58 -4
- package/chunks/{chunk-L36LLVA5.js → chunk-3YQMUBTS.js} +3 -3
- package/chunks/{chunk-LTCI6ZOJ.js → chunk-45ROPFQY.js} +1 -1
- package/chunks/{chunk-W4LL5RZO.js → chunk-4ALNJDHL.js} +52 -13
- package/chunks/{chunk-4OCYWXKF.js → chunk-5CVY5Q2P.js} +3 -3
- package/chunks/{chunk-ZRVFHLLK.js → chunk-5DQ4YTIZ.js} +1 -1
- package/chunks/{chunk-FWH4736Q.js → chunk-5IL2BZHW.js} +3 -3
- package/chunks/{chunk-537SQ2AI.js → chunk-5WC2ECUK.js} +104 -16
- package/chunks/{chunk-3K65MUKD.js → chunk-65I7S4Z3.js} +2 -1
- package/chunks/{chunk-RUMSY4ES.js → chunk-66JBCTJF.js} +8 -7
- package/chunks/{chunk-YLFICBYK.js → chunk-6JXHO7LG.js} +3 -3
- package/chunks/{chunk-TDHVOZ65.js → chunk-6QILGINT.js} +2 -2
- package/chunks/{chunk-WQBR7LN5.js → chunk-6QV7Z74P.js} +1 -1
- package/chunks/{chunk-RSU3I6UL.js → chunk-6SADVYQQ.js} +1 -1
- package/chunks/{chunk-AIMZIXZM.js → chunk-6TPVIESH.js} +5 -7
- package/chunks/{chunk-2LD5U7Q3.js → chunk-6YEOCHSE.js} +29 -1
- package/chunks/{chunk-7PMKXGRP.js → chunk-75LBC7SV.js} +66 -9
- package/chunks/{chunk-B5FF3LRF.js → chunk-7SL55L5H.js} +22 -15
- package/chunks/{chunk-I7UNCY24.js → chunk-ARYNBBBM.js} +3 -3
- package/chunks/{chunk-QQGAR64U.js → chunk-B3EL44K3.js} +4 -4
- package/chunks/{chunk-KAZWXVI3.js → chunk-CABDNUJ4.js} +2 -2
- package/chunks/{chunk-R7TKFIQO.js → chunk-CALNF3Z3.js} +1 -1
- package/chunks/{chunk-75UQFGFE.js → chunk-CHVU543W.js} +1 -1
- package/chunks/{chunk-C4NXRR7T.js → chunk-CIKL2DQP.js} +2 -2
- package/chunks/{chunk-LD53HMPV.js → chunk-CRZBDVP2.js} +1 -0
- package/chunks/{chunk-SHK2SIR5.js → chunk-D6AQNMUA.js} +4 -4
- package/chunks/{chunk-EPZWBYQI.js → chunk-DO5SMV52.js} +8 -6
- package/chunks/{chunk-P5Z7VD23.js → chunk-DXQ6Z7AH.js} +106 -39
- package/chunks/{chunk-3RMVM33U.js → chunk-DZ6D4B3K.js} +5 -5
- package/chunks/{chunk-T7TP5UQL.js → chunk-E7XSUYCZ.js} +4 -4
- package/chunks/{chunk-2C3XDBGL.js → chunk-EEKU6COG.js} +4 -4
- package/chunks/{chunk-AX23QSX3.js → chunk-EHTKOO6W.js} +4 -4
- package/chunks/{chunk-XNC2TCUO.js → chunk-ENZDGHGJ.js} +4 -4
- package/chunks/{chunk-733KQL63.js → chunk-EOET4H7C.js} +3 -3
- package/chunks/{chunk-37SOBIA3.js → chunk-ERXNTINK.js} +1 -1
- package/chunks/{chunk-F47DITLZ.js → chunk-FAWTMDX7.js} +14 -0
- package/chunks/{chunk-5JLQWQK6.js → chunk-FV4DM2M4.js} +2 -2
- package/chunks/{chunk-UTVIIA7N.js → chunk-FW4E4QPG.js} +1 -1
- package/chunks/{chunk-REDVV5NC.js → chunk-FWRRUITH.js} +7 -7
- package/chunks/{chunk-5V4B3EWA.js → chunk-GM44O6F7.js} +1 -1
- package/chunks/{chunk-Z6DDPSGJ.js → chunk-GNY7B3CA.js} +1 -1
- package/chunks/{chunk-ERMAXPXA.js → chunk-HIXUUCGY.js} +187 -12
- package/chunks/{chunk-EJNYBDYC.js → chunk-HNLMYDQE.js} +1 -1
- package/chunks/{chunk-XX4MBBFW.js → chunk-HUX2DOTF.js} +3 -3
- package/chunks/{chunk-RCUWMVN3.js → chunk-HZ2HUXX7.js} +1 -1
- package/chunks/{chunk-RD3VPM4E.js → chunk-IKG2YVRZ.js} +2 -2
- package/chunks/{chunk-IMWCUWQT.js → chunk-J3TJH52D.js} +1 -1
- package/chunks/{chunk-ZJ2LM2SI.js → chunk-JGDRB4FP.js} +104 -33
- package/chunks/{chunk-ANVC5CSK.js → chunk-L7V52QEZ.js} +10 -10
- package/chunks/{chunk-MFCWL4LI.js → chunk-LNCNUMJ5.js} +451 -396
- package/chunks/{chunk-AUJOWIT5.js → chunk-LZGFVUWZ.js} +3 -3
- package/chunks/{chunk-6KYWU726.js → chunk-M73KHGNR.js} +13 -66
- package/chunks/{chunk-ADJD4LZF.js → chunk-MA5OUNN6.js} +1 -1
- package/chunks/{chunk-I67KJGM6.js → chunk-MFYH2VXV.js} +3 -3
- package/chunks/{chunk-PLUAIHZO.js → chunk-N7YQEKGX.js} +6 -6
- package/chunks/{chunk-JOV46WGX.js → chunk-NB3NDQQK.js} +1 -1
- package/chunks/chunk-NOO4QFXM.js +171 -0
- package/chunks/{chunk-VYCJITND.js → chunk-O2JBJQCF.js} +1 -1
- package/chunks/{chunk-RQNAO42A.js → chunk-OESZTXTG.js} +1 -1
- package/chunks/{chunk-UKADFFL2.js → chunk-OFVAS4AR.js} +1 -1
- package/chunks/{chunk-Y3C5COGI.js → chunk-OPMKGOLD.js} +1 -1
- package/chunks/{chunk-TSLRORQR.js → chunk-PDUMGZ2P.js} +1467 -1323
- package/chunks/{chunk-Z6KFLEG7.js → chunk-PSPAM24S.js} +1 -0
- package/chunks/{chunk-5FYGZ7E3.js → chunk-QK4K76T6.js} +2 -2
- package/chunks/{chunk-NUQFUXOG.js → chunk-QTNCGZHQ.js} +2 -0
- package/chunks/{chunk-WFXD5OZH.js → chunk-QZOXVQPK.js} +1 -1
- package/chunks/{chunk-QJVZLILI.js → chunk-R7OO56VZ.js} +1 -1
- package/chunks/{chunk-KP5QK3FB.js → chunk-RNYENHN5.js} +397 -54
- package/chunks/{chunk-22QOQKG4.js → chunk-RXT4QBDX.js} +1 -1
- package/chunks/{chunk-LYHYXJJ3.js → chunk-S6QVI3MV.js} +3 -3
- package/chunks/{chunk-NXWYCSPL.js → chunk-SOA4HKRJ.js} +1 -1
- package/chunks/{chunk-IGOIYZBG.js → chunk-T2IHCZLS.js} +2 -2
- package/chunks/{chunk-C55CR5I4.js → chunk-TGC4264Q.js} +6 -6
- package/chunks/{chunk-EGRFCIXD.js → chunk-TWAMIEQ2.js} +79 -18
- package/chunks/{chunk-PMGWY6ZP.js → chunk-TWWS7XUW.js} +13 -10
- package/chunks/{chunk-RGAQDQ3Z.js → chunk-UHUT4IDM.js} +18 -9
- package/chunks/{chunk-HPE4LEWX.js → chunk-USN6VNTO.js} +1 -1
- package/chunks/{chunk-BNWIX6BM.js → chunk-UXDVUFKU.js} +3 -3
- package/chunks/{chunk-HY3DXYZK.js → chunk-UYDQYDW2.js} +1 -1
- package/chunks/{chunk-3K456UJF.js → chunk-VF6D6EGV.js} +12 -4
- package/chunks/{chunk-ZNI3V2XA.js → chunk-WAASYFPK.js} +2 -2
- package/chunks/{chunk-OHOO527W.js → chunk-WG7BL3FY.js} +52 -2
- package/chunks/{chunk-C7M445SS.js → chunk-WJDXKQIO.js} +1 -1
- package/chunks/{chunk-HZS3JRQW.js → chunk-WNISCNTA.js} +40 -2
- package/chunks/{chunk-AWDF462I.js → chunk-WQMUGQ6G.js} +2 -2
- package/chunks/{chunk-VU7O7CGQ.js → chunk-XDNFODER.js} +1 -1
- package/chunks/{chunk-65GHQ4FX.js → chunk-XVTCSVBK.js} +514 -47
- package/chunks/{chunk-SI6Q52UI.js → chunk-XZ3Z43XL.js} +3 -3
- package/chunks/{chunk-SD7Y2PMC.js → chunk-YAC7H4K3.js} +2 -2
- package/chunks/{chunk-FXYNIZPW.js → chunk-YCEKI7QX.js} +51 -10
- package/chunks/{chunk-7IKXTGZT.js → chunk-YI2YCNSP.js} +1 -1
- package/chunks/{chunk-E4VX6LXB.js → chunk-YZTGGCEE.js} +10 -2
- package/chunks/{chunk-VMFPZXRT.js → chunk-ZNO5BUAD.js} +43 -31
- package/chunks/{chunk-WLZRMF3C.js → chunk-ZPL2TZNA.js} +353 -11
- package/chunks/{chunk-TXAEXF2B.js → chunk-ZU2T5JIS.js} +21 -8
- package/chunks/{config-utils-F4CFJ4MW.js → config-utils-KTDSQ4MU.js} +24 -24
- package/chunks/{contextCommand-OIIGGOMU.js → contextCommand-UQ3KRYGK.js} +22 -22
- package/chunks/{core-runtime-JEHLOGMB.js → core-runtime-JR34JAFH.js} +20 -20
- package/chunks/{create-sub-session-MVFBE5RA.js → create-sub-session-RGPJOI4S.js} +21 -21
- package/chunks/{daemon-LCUELM6E.js → daemon-UI6SQSBV.js} +1 -1
- package/chunks/{daemon-git-worktree-guard-5FTKLJOU.js → daemon-git-worktree-guard-H3OA26KQ.js} +20 -20
- package/chunks/{daemon-status-provider-P6A5MPMW.js → daemon-status-provider-6WZLKSZU.js} +27 -27
- package/chunks/{daemon-trust-policy-ZJ3NFYUO.js → daemon-trust-policy-3EDP2BYD.js} +27 -27
- package/chunks/{daemon-trust-policy-monitor-6SDLEW7S.js → daemon-trust-policy-monitor-CRHZPK52.js} +27 -27
- package/chunks/{deferred-core-runtime-DWOXIU5S.js → deferred-core-runtime-LO5NTQQ4.js} +20 -20
- package/chunks/{discovery-TUM3ZQ6U.js → discovery-XP4RMDUM.js} +4 -2
- package/chunks/{dist-NXW4DUUX.js → dist-24TCWK5H.js} +1 -1
- package/chunks/{dist-I74QLLQS.js → dist-5I4HLUTO.js} +1 -1
- package/chunks/{dist-XINEKB5A.js → dist-FDISN4AK.js} +1 -1
- package/chunks/{dist-VCAS67N5.js → dist-M4CBX53H.js} +1 -1
- package/chunks/{dist-AI25RVRA.js → dist-NQ2636VT.js} +1 -1
- package/chunks/{dist-3H3WODVS.js → dist-OR2ZQTXZ.js} +1 -1
- package/chunks/{dist-P6YWBITG.js → dist-STAGIFNB.js} +430 -51
- package/chunks/{dist-YNQU4CKC.js → dist-WZTUKIDR.js} +2 -2
- package/chunks/{dist-T4PRA5EZ.js → dist-XJ25G6OH.js} +1 -1
- package/chunks/{edit-WPVXLL3T.js → edit-LB7Z7XK5.js} +13 -13
- package/chunks/{enter-worktree-5A6VW6BN.js → enter-worktree-YFTKHXHZ.js} +2 -2
- package/chunks/{enterPlanMode-JSODW7E2.js → enterPlanMode-P6TVUFIY.js} +13 -13
- package/chunks/{environment-5LLJ3I3W.js → environment-QATJNNKI.js} +23 -23
- package/chunks/{errors-IQT3YZEP.js → errors-3XJ37PS2.js} +22 -22
- package/chunks/{exit-worktree-QV7E7KP6.js → exit-worktree-NF2XEMES.js} +3 -3
- package/chunks/{exitPlanMode-DDVFYNW4.js → exitPlanMode-A3OKL5UO.js} +13 -13
- package/chunks/{fast-path-PAUQQEVU.js → fast-path-DBIT5YQQ.js} +3 -3
- package/chunks/{fast-path-settings-ISEJPRYE.js → fast-path-settings-SATXY3PD.js} +3 -3
- package/chunks/{glob-SQ7CTZ7F.js → glob-73EDTXUE.js} +13 -13
- package/chunks/{goal-tools-UWZRCLQB.js → goal-tools-DFI6YMSD.js} +13 -13
- package/chunks/{handleAutoUpdate-RUPZZTSG.js → handleAutoUpdate-2FUNJO3B.js} +23 -23
- package/chunks/{i18n-SF5MPWEB.js → i18n-FDIA6KFI.js} +23 -21
- package/chunks/{image-gen-Q3RUTVKR.js → image-gen-XP4NNIYG.js} +4 -4
- package/chunks/{initializer-CK4WPYZG.js → initializer-4MJTJOTW.js} +27 -27
- package/chunks/{installationInfo-IRPQEYRF.js → installationInfo-232RA2OK.js} +20 -20
- package/chunks/{list-E3PS3EBJ.js → list-WN6WSGEB.js} +30 -30
- package/chunks/{llm-JQKBOYAF.js → llm-UDFWQWZA.js} +62 -62
- package/chunks/{llm-content-generator-2QWGBW42.js → llm-content-generator-VLMZ2A7A.js} +23 -8
- package/chunks/{loadedSettingsAdapter-DGXGVYZS.js → loadedSettingsAdapter-OBQEIXM7.js} +27 -27
- package/chunks/{loggingContentGenerator-ZYURLJKK.js → loggingContentGenerator-RGVUMUVX.js} +14 -14
- package/chunks/{managed-npm-update-HTHR63EA.js → managed-npm-update-QBAJYCFU.js} +20 -20
- package/chunks/{mcp-I7G2AEWS.js → mcp-OTIZZCPY.js} +27 -27
- package/chunks/{monitor-4R76BCRZ.js → monitor-BV5XF6LL.js} +13 -13
- package/chunks/{nonInteractiveCli-24OQ3VP2.js → nonInteractiveCli-W6MUKDVJ.js} +64 -61
- package/chunks/{notebook-edit-PPSH7FEX.js → notebook-edit-HGBEKGTE.js} +13 -13
- package/chunks/{openaiContentGenerator-K7V5EO7F.js → openaiContentGenerator-NSU3ERBH.js} +8 -8
- package/chunks/{pidfile-TGIUY2GG.js → pidfile-LE3TU4GE.js} +20 -20
- package/chunks/{processUtils-3USXUQWX.js → processUtils-YFBGJK67.js} +2 -2
- package/chunks/{prompt-terminal-ledger-XHVZRXJI.js → prompt-terminal-ledger-4W4W7DSO.js} +21 -21
- package/chunks/{qwenContentGenerator-MPBOQB64.js → qwenContentGenerator-HTA57WFC.js} +16 -16
- package/chunks/{qwenOAuth2-BS5D2LYV.js → qwenOAuth2-KX6LVYQ3.js} +4 -4
- package/chunks/{read-file-R256LDWQ.js → read-file-KHPQ2MB6.js} +2 -2
- package/chunks/{resumeHistoryUtils-S43LTFHD.js → resumeHistoryUtils-K7RV3QBN.js} +23 -23
- package/chunks/{ripGrep-L7HPZ75Y.js → ripGrep-NBBVCMG4.js} +3 -3
- package/chunks/{run-qwen-serve-CTFL5R6U.js → run-qwen-serve-A3JBOZCM.js} +58 -60
- package/chunks/{runtime-FS5TL6P7.js → runtime-7YOU2KJ3.js} +32 -32
- package/chunks/{scheduled-tasks-QXPV3Q35.js → scheduled-tasks-52LXK7LN.js} +25 -25
- package/chunks/{scheduler-EXU5HMVK.js → scheduler-J44M72VM.js} +22 -22
- package/chunks/{send-message-GQKXGMPI.js → send-message-AWKUDJBH.js} +1 -1
- package/chunks/{serve-ITJC7WNN.js → serve-TRC6XJUB.js} +27 -27
- package/chunks/{server-6JQY3PTU.js → server-YPNTJLX2.js} +1296 -822
- package/chunks/{session-PJDEKXD4.js → session-FMMIBFYX.js} +63 -62
- package/chunks/{session-attachments-root-L37ORSST.js → session-attachments-root-LDJMNK7K.js} +20 -20
- package/chunks/{session-pr-refresh-WIFD52YL.js → session-pr-refresh-NLR4EK2J.js} +24 -24
- package/chunks/{settings-LO6J5SAZ.js → settings-A46L577J.js} +26 -26
- package/chunks/{shell-ANAFVYGR.js → shell-Q5LSQPPY.js} +13 -13
- package/chunks/{skill-SHJWKSPH.js → skill-75KPJRCM.js} +2 -2
- package/chunks/{skill-settings-GX3XHZ5Q.js → skill-settings-775YT4YR.js} +26 -26
- package/chunks/{spawnChannel-WE42VBKM.js → spawnChannel-XY73I5CU.js} +20 -20
- package/chunks/{standalone-update-CWDIKJRP.js → standalone-update-L46XXNQ2.js} +22 -22
- package/chunks/{start-opentui-ui-BBHGFOTF.js → start-opentui-ui-WLV43247.js} +1991 -986
- package/chunks/{startInteractiveUI-FQX7LUYP.js → startInteractiveUI-F5DKMLOV.js} +1119 -1478
- package/chunks/{team-create-WKTPCH6D.js → team-create-2PATB77U.js} +13 -13
- package/chunks/{team-plan-approval-Y23DL7WR.js → team-plan-approval-QTANEWOS.js} +13 -13
- package/chunks/{terminal-image-renderer-B646HBDW.js → terminal-image-renderer-OGULCFNF.js} +20 -20
- package/chunks/{theme-manager-BNWESY26.js → theme-manager-CNO3QERP.js} +20 -20
- package/chunks/{tool-search-PVQ5O5Y2.js → tool-search-VXWEOZE7.js} +2 -2
- package/chunks/{total-session-admission-P5Z43KNW.js → total-session-admission-4KAADZPB.js} +24 -24
- package/chunks/{trustedFolders-FH2LT2MZ.js → trustedFolders-PPJSOPOT.js} +21 -21
- package/chunks/{update-relaunch-WOWTKJSN.js → update-relaunch-4PT4MW7B.js} +5 -5
- package/chunks/{updateCheck-3MYFMM35.js → updateCheck-WAVFLWNG.js} +22 -22
- package/chunks/{useAutoAcceptIndicator-Q7ZRRRKO.js → useAutoAcceptIndicator-XNED4NRB.js} +29 -29
- package/chunks/{validateNonInterActiveAuth-MYEWJX3G.js → validateNonInterActiveAuth-J676DUQ2.js} +59 -58
- package/chunks/{version-RO2FPO76.js → version-J6SRRQB2.js} +1 -1
- package/chunks/{web-fetch-QAKY2LUA.js → web-fetch-FMZZYX44.js} +5 -5
- package/chunks/{web-search-XA5Z4ZCD.js → web-search-3G2KXCX5.js} +18 -7
- package/chunks/{workflow-QFIOCMDM.js → workflow-PPZZICQ7.js} +15 -15
- package/chunks/{workspace-providers-status-B2UD7RAG.js → workspace-providers-status-IIYTAQST.js} +29 -29
- package/chunks/{workspace-registration-store-VZLRTI3Q.js → workspace-registration-store-VHCDXAV7.js} +1 -1
- package/chunks/{workspace-registry-GYOGG6TM.js → workspace-registry-I7VQIPS2.js} +24 -24
- package/chunks/{workspace-runtime-coordinator-7KRXGQ4V.js → workspace-runtime-coordinator-DBGNY32G.js} +24 -24
- package/chunks/{workspace-service-DJEYGJE4.js → workspace-service-QSKB2T54.js} +31 -31
- package/chunks/{workspace-skills-status-MOKNESUC.js → workspace-skills-status-T7GPT65J.js} +27 -27
- package/chunks/{workspace-trust-reconciler-AXOSUTQW.js → workspace-trust-reconciler-2PKRDAU4.js} +31 -31
- package/chunks/{write-file-QOYVHAKK.js → write-file-L76CGFTQ.js} +14 -14
- package/chunks/{zoom-image-UCCLGFNC.js → zoom-image-TDJJY2VZ.js} +2 -2
- package/cli.js +13 -13
- package/export-transcript-document.js +126 -122
- package/package.json +3 -3
- package/web-shell/assets/{abnfDiagram-VCTEODGH-CTstZpXw.js → abnfDiagram-VCTEODGH-DHc6plZn.js} +1 -1
- package/web-shell/assets/{arc-DKW0mbPo.js → arc-BQ9m8TDV.js} +1 -1
- package/web-shell/assets/{architectureDiagram-5GKGNRK7-DkMpJ42t.js → architectureDiagram-5GKGNRK7-D5ap3oVB.js} +1 -1
- package/web-shell/assets/{blockDiagram-NRAW4CY4-7Cp1_4i3.js → blockDiagram-NRAW4CY4-BIbnyNph.js} +1 -1
- package/web-shell/assets/{c4Diagram-UCG6FXSJ-BfaoSlBK.js → c4Diagram-UCG6FXSJ-BRsdx_iG.js} +1 -1
- package/web-shell/assets/channel-uMMdTrYk.js +1 -0
- package/web-shell/assets/{chunk-2Q5K7J3B-_n1qzAio.js → chunk-2Q5K7J3B-3lf1fNlx.js} +1 -1
- package/web-shell/assets/{chunk-5VM5RSS4-0cira5ZV.js → chunk-5VM5RSS4-DP8VNRc4.js} +1 -1
- package/web-shell/assets/{chunk-F27PBJKO-DseRXSHC.js → chunk-F27PBJKO-DrohDmZ6.js} +1 -1
- package/web-shell/assets/{chunk-G27WJ6UU-BehQWin0.js → chunk-G27WJ6UU-UZ2QhSx6.js} +1 -1
- package/web-shell/assets/{chunk-JWPE2WC7-B5ftg1Bb.js → chunk-JWPE2WC7-BIMHVcZK.js} +1 -1
- package/web-shell/assets/{chunk-LCL6LL3I-D7rnbVdk.js → chunk-LCL6LL3I-izRxdSDd.js} +1 -1
- package/web-shell/assets/{chunk-POPQ4Y6H-2Bp-Orju.js → chunk-POPQ4Y6H-CXADD4PP.js} +1 -1
- package/web-shell/assets/{chunk-SVP7TREG-CD2goGva.js → chunk-SVP7TREG-B96d8Y_1.js} +1 -1
- package/web-shell/assets/{chunk-XXDRQBXY-DzQt-Rji.js → chunk-XXDRQBXY-CF2sVQpv.js} +1 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-DcY-26Ig.js +1 -0
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-DcY-26Ig.js +1 -0
- package/web-shell/assets/{cose-bilkent-JH36ORCC-C-BZXSUn.js → cose-bilkent-JH36ORCC-CT6tXVAS.js} +1 -1
- package/web-shell/assets/csv-CX7rUNeC.svg +1 -0
- package/web-shell/assets/{cynefin-OW5HDTMX-BTcvowe1.js → cynefin-OW5HDTMX-X1NS4vtV.js} +1 -1
- package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-BoUE6K81.js → cynefinDiagram-5FMLGOSQ-DNsKNOT4.js} +1 -1
- package/web-shell/assets/{dagre-3AP2YEHR-BHxy9xeB.js → dagre-3AP2YEHR-9-AHKqsb.js} +1 -1
- package/web-shell/assets/{diagram-S7CK7UJ4-DMiJIvDT.js → diagram-S7CK7UJ4-Bjgms7j6.js} +1 -1
- package/web-shell/assets/{diagram-UQ7AKVKN-DXV09Aes.js → diagram-UQ7AKVKN-h6bCprbE.js} +1 -1
- package/web-shell/assets/{diagram-VSXAHHWV-CocpRomV.js → diagram-VSXAHHWV-4SbQXVLt.js} +1 -1
- package/web-shell/assets/{diagram-VX7I27RA-DL7nqtb4.js → diagram-VX7I27RA-B5gPCzzB.js} +1 -1
- package/web-shell/assets/{diagram-Z3DM3KII-CPZ2Jux_.js → diagram-Z3DM3KII-DFJXIA3A.js} +1 -1
- package/web-shell/assets/{ebnfDiagram-PWID7BFC-BX-eVNsX.js → ebnfDiagram-PWID7BFC-FwyaU7VY.js} +1 -1
- package/web-shell/assets/{erDiagram-SSCWMZ5O-CPy_Ir6y.js → erDiagram-SSCWMZ5O-8vJQh2te.js} +1 -1
- package/web-shell/assets/{flowDiagram-A5DVABFB-eknAOte9.js → flowDiagram-A5DVABFB-BzA_1gMN.js} +1 -1
- package/web-shell/assets/{ganttDiagram-EL5Y4UJY-crAxw_t7.js → ganttDiagram-EL5Y4UJY-Co-ABbVX.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-M29pa3Tc.js → gitGraphDiagram-WWUBYQGX-DW_FcyrX.js} +1 -1
- package/web-shell/assets/{index-C9R-iojE.js → index-BbMXfhNG.js} +1 -1
- package/web-shell/assets/{index-B4TLaxWs.js → index-Bu-rZoJ-.js} +462 -454
- package/web-shell/assets/index-CsPwZ1ut.css +36 -0
- package/web-shell/assets/{infoDiagram-RXCK75RN-XqspXdOU.js → infoDiagram-RXCK75RN-BEgfhUFN.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-5VMMS53U-C5KFS-7j.js → ishikawaDiagram-5VMMS53U-DCsMxQmc.js} +1 -1
- package/web-shell/assets/{journeyDiagram-EYS64GPL-Cc57LVRo.js → journeyDiagram-EYS64GPL-DyIEYoHz.js} +1 -1
- package/web-shell/assets/{kanban-definition-3QL26DDD-C81OG-AI.js → kanban-definition-3QL26DDD-CkxjqCNr.js} +1 -1
- package/web-shell/assets/{layout-CFVu37BB.js → layout-BEWc0Al9.js} +1 -1
- package/web-shell/assets/{linear-ChBxdtWf.js → linear-CNuNxirL.js} +1 -1
- package/web-shell/assets/{mermaid.core-CMLfue0w.js → mermaid.core-DZBre674.js} +6 -6
- package/web-shell/assets/{mindmap-definition-FBJOCRG2-DFsvJThp.js → mindmap-definition-FBJOCRG2-CpafFz_F.js} +1 -1
- package/web-shell/assets/{pegDiagram-XKGWAZYB-BzpRzM4F.js → pegDiagram-XKGWAZYB-DfZqk_dq.js} +1 -1
- package/web-shell/assets/{pieDiagram-E7YTZNPT-Cv0Kankl.js → pieDiagram-E7YTZNPT-S0UWXlgC.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-AXDQQJYC-Bh2BJ3Ay.js → quadrantDiagram-AXDQQJYC-dd37_Ohj.js} +1 -1
- package/web-shell/assets/{railroadDiagram-O6MQD6OU-y8rNDdDS.js → railroadDiagram-O6MQD6OU-CH8NJZ7u.js} +1 -1
- package/web-shell/assets/{requirementDiagram-EFPCY7ZU-C0m2DKJ_.js → requirementDiagram-EFPCY7ZU-CFdqWYih.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-P5KCCOFB-BzdGnSF4.js → sankeyDiagram-P5KCCOFB-CsddcEGD.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-DPzAVmzz.js → sequenceDiagram-WJ2MYXX4-BZ270mGw.js} +1 -1
- package/web-shell/assets/{sizeCapture-X5ZJPWSS-LcHG28Zh.js → sizeCapture-X5ZJPWSS-CGaS4DBV.js} +1 -1
- package/web-shell/assets/{stateDiagram-HBIQ2CUA-C1Bzy3IT.js → stateDiagram-HBIQ2CUA-COpIzMu6.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-D6qEVAji.js +1 -0
- package/web-shell/assets/{swimlanes-XN3QIQJK-Bftk8V64.js → swimlanes-XN3QIQJK-CMF889m3.js} +1 -1
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN-mem5Jj4m.js +8 -0
- package/web-shell/assets/{timeline-definition-24CTP7MA-BfXHcN1A.js → timeline-definition-24CTP7MA-BelnxYz5.js} +1 -1
- package/web-shell/assets/{vennDiagram-4TSXK5OY-DRSlI9-V.js → vennDiagram-4TSXK5OY-CU-NRqIB.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-VM6X3IG4-CaLmqGau.js → wardleyDiagram-VM6X3IG4-CDNKqWh-.js} +1 -1
- package/web-shell/assets/{xychartDiagram-S5SC5T6Z-8lgUT6e8.js → xychartDiagram-S5SC5T6Z-CLqguL5D.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-3UMWOKJC.js +0 -78
- package/chunks/chunk-IQAFKVXS.js +0 -22
- package/web-shell/assets/channel-CQx7VSAp.js +0 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-C-Uz8hHk.js +0 -1
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-C-Uz8hHk.js +0 -1
- package/web-shell/assets/index-CCrkEbzz.css +0 -36
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-LuuL5byY.js +0 -1
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN-COmnNq8s.js +0 -8
|
@@ -10,13 +10,13 @@ import {
|
|
|
10
10
|
publishPendingCompileCache,
|
|
11
11
|
reportRejectedLoaderKeys,
|
|
12
12
|
resetLoaderKeyRejectionReportingForTesting
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-QTNCGZHQ.js";
|
|
14
14
|
import {
|
|
15
15
|
isWorkspaceTrusted
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-3VDLQUR2.js";
|
|
17
17
|
import {
|
|
18
18
|
require_main
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-65I7S4Z3.js";
|
|
20
20
|
import {
|
|
21
21
|
QWEN_DIR,
|
|
22
22
|
Storage,
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
GIT_COMMIT_INFO
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-6QILGINT.js";
|
|
6
6
|
import {
|
|
7
7
|
getCliVersion
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-27LTEY6D.js";
|
|
9
9
|
import {
|
|
10
10
|
IdeClient
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-PDUMGZ2P.js";
|
|
12
12
|
import {
|
|
13
13
|
formatMemoryUsage
|
|
14
14
|
} from "./chunk-CHEIIBT3.js";
|
|
@@ -3012,6 +3012,62 @@ var DaemonClient = class {
|
|
|
3012
3012
|
async resumeSession(sessionId, req = {}, clientId) {
|
|
3013
3013
|
return this.restoreSession("resume", sessionId, req, clientId);
|
|
3014
3014
|
}
|
|
3015
|
+
/**
|
|
3016
|
+
* Transfer a worktree session's checkout ownership to a fresh replacement
|
|
3017
|
+
* session (`POST /session/:id/worktree-reset`, capability
|
|
3018
|
+
* `session_worktree_reset_v1`). Resolves 200 with the replacement
|
|
3019
|
+
* session's create-shape response. The route never reads a caller-supplied
|
|
3020
|
+
* client id, so this method takes none — but the response is not
|
|
3021
|
+
* registration-free: a fresh transfer mints an owner-style `clientId` for
|
|
3022
|
+
* the spawn it performs, registers it on the replacement, and returns it in
|
|
3023
|
+
* the body, while an idempotent resume of a committed transfer returns
|
|
3024
|
+
* none. That registration is not an attachment (the replacement's attach
|
|
3025
|
+
* count is unaffected), and nothing detaches it for you — pass a minted id
|
|
3026
|
+
* you do not keep using to `detachSession`, or the replacement never
|
|
3027
|
+
* reaches the daemon's idle cleanup. Typed 409 bodies carry the reset
|
|
3028
|
+
* taxonomy: `worktree_reset_unsupported` (not a worktree session),
|
|
3029
|
+
* `worktree_reset_active` (a session involved is busy), and
|
|
3030
|
+
* `worktree_reset_invalid_state` (corrupt or ambiguous ownership state; a
|
|
3031
|
+
* partial transfer this request started is rolled back, while a
|
|
3032
|
+
* pre-existing interrupted state is left untouched for operator repair).
|
|
3033
|
+
* A crashed transfer whose sidecar links agree is self-healed here: a
|
|
3034
|
+
* pre-commit one (the marker still names this session, or is absent while
|
|
3035
|
+
* the replacement is dormant) is rolled back and re-run in the same
|
|
3036
|
+
* request, and a committed one (the marker names the replacement) is
|
|
3037
|
+
* finished idempotently. Every other interrupted shape — disagreeing links,
|
|
3038
|
+
* an invalid marker, a marker naming a third session, a replacement still
|
|
3039
|
+
* live with no marker — is reported as `worktree_reset_invalid_state` (or
|
|
3040
|
+
* `worktree_reset_active` when the committed replacement is busy) and left
|
|
3041
|
+
* untouched: a retry re-reads the same state and returns the same 409, so
|
|
3042
|
+
* it does not converge and needs operator repair rather than a retry loop.
|
|
3043
|
+
* `worktree_reset_interrupted`, `worktree_session_superseded`, and
|
|
3044
|
+
* `worktree_marker_missing` belong to the restore surface (`loadSession` /
|
|
3045
|
+
* `resumeSession`) instead; for `worktree_reset_interrupted` — the
|
|
3046
|
+
* agreeing-links shape — retrying this reset against the superseded session
|
|
3047
|
+
* is the repair.
|
|
3048
|
+
*/
|
|
3049
|
+
async resetWorktreeSession(sessionId, req = {}) {
|
|
3050
|
+
return await this.fetchWithTimeout(
|
|
3051
|
+
`${this.baseUrl}/session/${urlEncode(sessionId)}/worktree-reset`,
|
|
3052
|
+
{
|
|
3053
|
+
method: "POST",
|
|
3054
|
+
headers: this.headers({ "Content-Type": "application/json" }),
|
|
3055
|
+
body: JSON.stringify({
|
|
3056
|
+
...req.workspaceCwd !== void 0 ? { cwd: req.workspaceCwd } : {},
|
|
3057
|
+
...req.modelServiceId !== void 0 ? { modelServiceId: req.modelServiceId } : {},
|
|
3058
|
+
...req.approvalMode !== void 0 ? { approvalMode: req.approvalMode } : {},
|
|
3059
|
+
...req.sourceType !== void 0 ? { sourceType: req.sourceType } : {},
|
|
3060
|
+
...req.sourceId !== void 0 ? { sourceId: req.sourceId } : {}
|
|
3061
|
+
})
|
|
3062
|
+
},
|
|
3063
|
+
async (res) => {
|
|
3064
|
+
if (!res.ok) {
|
|
3065
|
+
throw await this.failOnError(res, "POST /session/:id/worktree-reset");
|
|
3066
|
+
}
|
|
3067
|
+
return await res.json();
|
|
3068
|
+
}
|
|
3069
|
+
);
|
|
3070
|
+
}
|
|
3015
3071
|
async branchSession(sessionId, req = {}, clientId) {
|
|
3016
3072
|
return await this.fetchWithTimeout(
|
|
3017
3073
|
`${this.baseUrl}/session/${urlEncode(sessionId)}/branch`,
|
|
@@ -6437,6 +6493,36 @@ var DaemonSessionClient = class _DaemonSessionClient {
|
|
|
6437
6493
|
eventEpoch
|
|
6438
6494
|
});
|
|
6439
6495
|
}
|
|
6496
|
+
/**
|
|
6497
|
+
* Transfer a worktree session's checkout ownership to a fresh replacement
|
|
6498
|
+
* session and return a client bound to the replacement's identity. That
|
|
6499
|
+
* client carries whatever `clientId` the response had: a fresh transfer
|
|
6500
|
+
* mints and registers an owner-style one for the spawn it performs, while
|
|
6501
|
+
* an idempotent resume of a committed transfer returns none. The
|
|
6502
|
+
* registration is not an attachment (the replacement's attach count is
|
|
6503
|
+
* unaffected), but it is a client registration, and a non-empty one is what
|
|
6504
|
+
* holds the daemon's idle cleanup off — so detach a minted id you do not
|
|
6505
|
+
* keep using, or the replacement stays live indefinitely. A registered
|
|
6506
|
+
* attachment still requires the normal restore surface: load or resume the
|
|
6507
|
+
* replacement, passing the minted id to reuse that registration instead of
|
|
6508
|
+
* adding a second one. The replacement is a brand-new conversation; the
|
|
6509
|
+
* superseded session keeps its transcript on the daemon and is never
|
|
6510
|
+
* restored again (its restore surfaces `worktree_session_superseded`). The
|
|
6511
|
+
* existing reattach identity guard applies to the replacement client
|
|
6512
|
+
* unchanged.
|
|
6513
|
+
*/
|
|
6514
|
+
static async resetWorktree(client, sessionId, req = {}) {
|
|
6515
|
+
const session = await client.resetWorktreeSession(sessionId, req);
|
|
6516
|
+
return new _DaemonSessionClient({
|
|
6517
|
+
client,
|
|
6518
|
+
session,
|
|
6519
|
+
hasActivePrompt: session.hasActivePrompt,
|
|
6520
|
+
// The replacement is freshly created: seed from the start of its bus
|
|
6521
|
+
// so events fired during the transfer window are not skipped.
|
|
6522
|
+
lastEventId: 0,
|
|
6523
|
+
eventEpoch: session.eventEpoch
|
|
6524
|
+
});
|
|
6525
|
+
}
|
|
6440
6526
|
static async createStandalone(client, options = {}) {
|
|
6441
6527
|
const session = await client.createStandaloneSession(options);
|
|
6442
6528
|
return new _DaemonSessionClient({
|
|
@@ -6672,16 +6758,21 @@ var DaemonSessionClient = class _DaemonSessionClient {
|
|
|
6672
6758
|
});
|
|
6673
6759
|
this.reattaching = resume.then(async (session) => {
|
|
6674
6760
|
if (this.session.worktreeState === "persisted-v1") {
|
|
6675
|
-
|
|
6676
|
-
|
|
6677
|
-
|
|
6678
|
-
|
|
6679
|
-
|
|
6680
|
-
|
|
6681
|
-
|
|
6761
|
+
if (!session.worktree) {
|
|
6762
|
+
this.session.worktree = void 0;
|
|
6763
|
+
this.session.worktreeState = void 0;
|
|
6764
|
+
} else {
|
|
6765
|
+
const sameWorktree = session.worktreeState === "persisted-v1" && session.worktree.path === this.session.worktree?.path;
|
|
6766
|
+
if (!sameWorktree) {
|
|
6767
|
+
await this.client.detachSession(session.sessionId, session.clientId).catch(() => {
|
|
6768
|
+
});
|
|
6769
|
+
throw new Error(
|
|
6770
|
+
`Daemon lost durable worktree identity for session ${this.sessionId}`
|
|
6771
|
+
);
|
|
6772
|
+
}
|
|
6773
|
+
this.session.worktree = session.worktree;
|
|
6774
|
+
this.session.worktreeState = session.worktreeState;
|
|
6682
6775
|
}
|
|
6683
|
-
this.session.worktree = session.worktree;
|
|
6684
|
-
this.session.worktreeState = session.worktreeState;
|
|
6685
6776
|
}
|
|
6686
6777
|
this.session.clientId = session.clientId;
|
|
6687
6778
|
});
|
|
@@ -9369,13 +9460,10 @@ function normalizeDaemonEvent(event, opts = {}) {
|
|
|
9369
9460
|
}
|
|
9370
9461
|
];
|
|
9371
9462
|
case "slow_client_warning":
|
|
9372
|
-
|
|
9373
|
-
|
|
9374
|
-
|
|
9375
|
-
|
|
9376
|
-
text: "SSE stream is lagging"
|
|
9377
|
-
}
|
|
9378
|
-
];
|
|
9463
|
+
if (typeof console !== "undefined") {
|
|
9464
|
+
console.warn?.("[daemon-ui] SSE stream is lagging", event.data);
|
|
9465
|
+
}
|
|
9466
|
+
return [];
|
|
9379
9467
|
case "stream_error": {
|
|
9380
9468
|
const errorKind = asDaemonErrorKind(getString2(event.data, "errorKind"));
|
|
9381
9469
|
return [
|
|
@@ -382,7 +382,8 @@ function resolveEnvVarsInString(value, customEnv) {
|
|
|
382
382
|
const envVarRegex = /\$(?:(\w+)|{([^}]+)})/g;
|
|
383
383
|
return value.replace(envVarRegex, (match, varName1, varName2) => {
|
|
384
384
|
const varName = varName1 || varName2;
|
|
385
|
-
|
|
385
|
+
const normalizedVarName = varName.toUpperCase();
|
|
386
|
+
if (normalizedVarName === "SESSION_ID" || normalizedVarName === "QWEN_CODE_SESSION_ID" || isInternalSecretEnvVar(varName)) {
|
|
386
387
|
return match;
|
|
387
388
|
}
|
|
388
389
|
if (customEnv && typeof customEnv[varName] === "string") {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import {
|
|
4
4
|
customDeepMerge,
|
|
5
5
|
getSettingsSchema
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-2ZFO5JD7.js";
|
|
7
7
|
import {
|
|
8
8
|
DEFAULT_DARK_THEME_NAME,
|
|
9
9
|
DEFAULT_LIGHT_THEME_NAME
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
} from "./chunk-IDS7MSUP.js";
|
|
22
22
|
import {
|
|
23
23
|
t
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-CRZBDVP2.js";
|
|
25
25
|
import {
|
|
26
26
|
SUPPORTED_LANGUAGES,
|
|
27
27
|
getLanguageNameFromLocale
|
|
@@ -30,21 +30,21 @@ import {
|
|
|
30
30
|
getHomeEnvFallbackVars,
|
|
31
31
|
loadEnvironment,
|
|
32
32
|
preResolveHomeEnvOverrides
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-5CVY5Q2P.js";
|
|
34
34
|
import {
|
|
35
35
|
ENV_CORRUPTED_PATH,
|
|
36
36
|
ENV_WAS_RECOVERED
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-QTNCGZHQ.js";
|
|
38
38
|
import {
|
|
39
39
|
isWorkspaceTrusted,
|
|
40
40
|
updateSettingsFilePreservingFormat
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-3VDLQUR2.js";
|
|
42
42
|
import {
|
|
43
43
|
require_strip_json_comments
|
|
44
44
|
} from "./chunk-NPQ5ZKRP.js";
|
|
45
45
|
import {
|
|
46
46
|
resolveEnvVarsInObject
|
|
47
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-65I7S4Z3.js";
|
|
48
48
|
import {
|
|
49
49
|
stripRuntimeSnapshotPrefix
|
|
50
50
|
} from "./chunk-565U2ANU.js";
|
|
@@ -439,7 +439,8 @@ var WORKSPACE_RESTRICTED_SETTINGS = [
|
|
|
439
439
|
{ section: "tools", key: "workflowsEnabled" },
|
|
440
440
|
{ section: "security", key: "allowPrivateNetworkHooks" },
|
|
441
441
|
{ section: "security", key: "allowedInsecureVoiceBaseUrls" },
|
|
442
|
-
{ section: "goals", key: "modelProposed" }
|
|
442
|
+
{ section: "goals", key: "modelProposed" },
|
|
443
|
+
{ section: "outboundCorrelation", key: "allowDynamicHeaderValues" }
|
|
443
444
|
];
|
|
444
445
|
var WORKSPACE_TIGHTEN_ONLY_SETTINGS = [
|
|
445
446
|
{
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
JsonFormatter
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-ZU2T5JIS.js";
|
|
6
6
|
import {
|
|
7
7
|
parseAndFormatApiError
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-PDUMGZ2P.js";
|
|
9
9
|
import {
|
|
10
10
|
FatalBudgetExceededError,
|
|
11
11
|
FatalCancellationError,
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
} from "./chunk-ZAFYHRVY.js";
|
|
15
15
|
import {
|
|
16
16
|
runExitCleanup
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-USN6VNTO.js";
|
|
18
18
|
import {
|
|
19
19
|
writeStderrLine
|
|
20
20
|
} from "./chunk-7FA2II6K.js";
|
|
@@ -6,8 +6,8 @@ import {
|
|
|
6
6
|
|
|
7
7
|
// packages/cli/src/generated/git-commit.ts
|
|
8
8
|
init_esbuild_shims();
|
|
9
|
-
var GIT_COMMIT_INFO = "
|
|
10
|
-
var CLI_VERSION = "0.23.1
|
|
9
|
+
var GIT_COMMIT_INFO = "d9331e6fcf";
|
|
10
|
+
var CLI_VERSION = "0.23.1";
|
|
11
11
|
|
|
12
12
|
export {
|
|
13
13
|
GIT_COMMIT_INFO,
|
|
@@ -5,14 +5,14 @@ import {
|
|
|
5
5
|
} from "./chunk-KW7NOTN6.js";
|
|
6
6
|
import {
|
|
7
7
|
DEFAULT_OPENAI_LOG_RETENTION_DAYS
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-2ZFO5JD7.js";
|
|
9
9
|
import {
|
|
10
10
|
resolveOpenAILogDir
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-YAC7H4K3.js";
|
|
12
12
|
import {
|
|
13
13
|
FILE_HISTORY_DIR,
|
|
14
14
|
getSubagentsRootDir
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-PDUMGZ2P.js";
|
|
16
16
|
import {
|
|
17
17
|
Storage,
|
|
18
18
|
createDebugLogger,
|
|
@@ -169,10 +169,8 @@ var STALE_LOCK_MS = 60 * 60 * 1e3;
|
|
|
169
169
|
async function runThrottledOnce(opts, task) {
|
|
170
170
|
const minIntervalMs = opts.minIntervalMs ?? ONE_DAY_MS;
|
|
171
171
|
const staleLockMs = opts.staleLockMs ?? STALE_LOCK_MS;
|
|
172
|
-
await mkdir(dirname(opts.lockPath), {
|
|
173
|
-
|
|
174
|
-
}
|
|
175
|
-
);
|
|
172
|
+
await mkdir(dirname(opts.lockPath), { mode: 448 }).catch(() => {
|
|
173
|
+
});
|
|
176
174
|
const firstFreshForMs = await markerFreshForMs(
|
|
177
175
|
opts.markerPath,
|
|
178
176
|
minIntervalMs,
|
|
@@ -90,6 +90,33 @@ function applyReasoningEffort(config, effort) {
|
|
|
90
90
|
return config.getReasoningEffort() === effort;
|
|
91
91
|
}
|
|
92
92
|
__name(applyReasoningEffort, "applyReasoningEffort");
|
|
93
|
+
function parseModelReasoningCapabilities(value) {
|
|
94
|
+
if (!value || typeof value !== "object") return void 0;
|
|
95
|
+
const candidate = value;
|
|
96
|
+
if (candidate["thinking"] !== true) return void 0;
|
|
97
|
+
const disableField = candidate["disableField"];
|
|
98
|
+
if (disableField !== "enable_thinking" && disableField !== "reasoning_effort" && disableField !== "thinking") {
|
|
99
|
+
return void 0;
|
|
100
|
+
}
|
|
101
|
+
if ("toggleOnly" in candidate && typeof candidate["toggleOnly"] !== "boolean" || "canDisable" in candidate && candidate["canDisable"] !== false) {
|
|
102
|
+
return void 0;
|
|
103
|
+
}
|
|
104
|
+
if (candidate["toggleOnly"] === true) {
|
|
105
|
+
return candidate;
|
|
106
|
+
}
|
|
107
|
+
const efforts = candidate["efforts"];
|
|
108
|
+
if (!Array.isArray(efforts) || efforts.length === 0 || !efforts.every(
|
|
109
|
+
(effort) => typeof effort === "string" && REASONING_EFFORT_TIERS.includes(effort)
|
|
110
|
+
) || new Set(efforts).size !== efforts.length) {
|
|
111
|
+
return void 0;
|
|
112
|
+
}
|
|
113
|
+
const defaultEffort = candidate["defaultEffort"];
|
|
114
|
+
if (defaultEffort !== void 0 && !efforts.includes(defaultEffort)) {
|
|
115
|
+
return void 0;
|
|
116
|
+
}
|
|
117
|
+
return candidate;
|
|
118
|
+
}
|
|
119
|
+
__name(parseModelReasoningCapabilities, "parseModelReasoningCapabilities");
|
|
93
120
|
|
|
94
121
|
export {
|
|
95
122
|
resolveRequestTimeout,
|
|
@@ -105,7 +132,8 @@ export {
|
|
|
105
132
|
REASONING_EFFORT_TIERS,
|
|
106
133
|
normalizeReasoningEffort,
|
|
107
134
|
clampReasoningEffort,
|
|
108
|
-
applyReasoningEffort
|
|
135
|
+
applyReasoningEffort,
|
|
136
|
+
parseModelReasoningCapabilities
|
|
109
137
|
};
|
|
110
138
|
/**
|
|
111
139
|
* @license
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
resolveStreamIdleTimeoutMs,
|
|
8
8
|
resolveStreamMaxLifetimeMs,
|
|
9
9
|
withStreamGuards
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-MA5OUNN6.js";
|
|
11
11
|
import {
|
|
12
12
|
OpenAIContentConverter,
|
|
13
13
|
TaggedThinkingParser,
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
import {
|
|
32
32
|
DashScopeOpenAICompatibleProvider,
|
|
33
33
|
DefaultOpenAICompatibleProvider
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-VF6D6EGV.js";
|
|
35
35
|
import {
|
|
36
36
|
getCurrentAgentId
|
|
37
37
|
} from "./chunk-H3Q3RSKZ.js";
|
|
@@ -40,19 +40,20 @@ import {
|
|
|
40
40
|
getToolCallPreparations
|
|
41
41
|
} from "./chunk-CFKIH3D3.js";
|
|
42
42
|
import {
|
|
43
|
-
REASONING_EFFORT_TIERS
|
|
44
|
-
|
|
43
|
+
REASONING_EFFORT_TIERS,
|
|
44
|
+
parseModelReasoningCapabilities
|
|
45
|
+
} from "./chunk-6YEOCHSE.js";
|
|
45
46
|
import {
|
|
46
47
|
createChildAbortController
|
|
47
48
|
} from "./chunk-DJ2GSRLV.js";
|
|
48
49
|
import {
|
|
49
50
|
getRateLimitErrorDetails,
|
|
50
51
|
getTransportCode
|
|
51
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-4ALNJDHL.js";
|
|
52
53
|
import {
|
|
53
54
|
ProtocolTagSanitizedEvent,
|
|
54
55
|
logProtocolTagSanitized
|
|
55
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-6QV7Z74P.js";
|
|
56
57
|
import {
|
|
57
58
|
isQwenFamilyWireModel,
|
|
58
59
|
isTieredEffortWireModel
|
|
@@ -1016,6 +1017,26 @@ function asObject(value) {
|
|
|
1016
1017
|
return value;
|
|
1017
1018
|
}
|
|
1018
1019
|
__name(asObject, "asObject");
|
|
1020
|
+
function applyConfiguredReasoningEffort(request, capabilities) {
|
|
1021
|
+
if (!capabilities || capabilities.toggleOnly || !Array.isArray(capabilities.efforts)) {
|
|
1022
|
+
return request;
|
|
1023
|
+
}
|
|
1024
|
+
const loose = request;
|
|
1025
|
+
const reasoning = asObject(loose["reasoning"]);
|
|
1026
|
+
if (!reasoning || !("effort" in reasoning)) return request;
|
|
1027
|
+
const effort = capabilities.efforts.find(
|
|
1028
|
+
(candidate) => candidate === reasoning["effort"]
|
|
1029
|
+
);
|
|
1030
|
+
const { effort: _drop, ...rest } = reasoning;
|
|
1031
|
+
const next = { ...loose };
|
|
1032
|
+
if (Object.keys(rest).length > 0) next["reasoning"] = rest;
|
|
1033
|
+
else delete next["reasoning"];
|
|
1034
|
+
if (effort && next["reasoning_effort"] === void 0) {
|
|
1035
|
+
next["reasoning_effort"] = effort;
|
|
1036
|
+
}
|
|
1037
|
+
return next;
|
|
1038
|
+
}
|
|
1039
|
+
__name(applyConfiguredReasoningEffort, "applyConfiguredReasoningEffort");
|
|
1019
1040
|
function normalizeSchemaType(value) {
|
|
1020
1041
|
if (typeof value !== "string") return void 0;
|
|
1021
1042
|
const normalized = value.toLowerCase();
|
|
@@ -1467,7 +1488,7 @@ var ContentGenerationPipeline = class {
|
|
|
1467
1488
|
request,
|
|
1468
1489
|
context
|
|
1469
1490
|
);
|
|
1470
|
-
|
|
1491
|
+
let baseRequest = {
|
|
1471
1492
|
model: context.model,
|
|
1472
1493
|
messages,
|
|
1473
1494
|
...this.buildGenerateContentConfig(request),
|
|
@@ -1479,6 +1500,26 @@ var ContentGenerationPipeline = class {
|
|
|
1479
1500
|
} else {
|
|
1480
1501
|
baseRequest.stream = false;
|
|
1481
1502
|
}
|
|
1503
|
+
const authType = this.contentGeneratorConfig.authType;
|
|
1504
|
+
const reasoningCapabilities = authType ? parseModelReasoningCapabilities(
|
|
1505
|
+
this.config.cliConfig.getResolvedModelConfig?.(
|
|
1506
|
+
authType,
|
|
1507
|
+
context.model,
|
|
1508
|
+
this.contentGeneratorConfig.baseUrl
|
|
1509
|
+
)?.capabilities.reasoning
|
|
1510
|
+
) : void 0;
|
|
1511
|
+
if (reasoningCapabilities && !("reasoning" in baseRequest) && this.contentGeneratorConfig.reasoning) {
|
|
1512
|
+
baseRequest = {
|
|
1513
|
+
...baseRequest,
|
|
1514
|
+
reasoning: this.contentGeneratorConfig.reasoning
|
|
1515
|
+
};
|
|
1516
|
+
}
|
|
1517
|
+
if (this.contentGeneratorConfig.samplingParams?.["reasoning"] === void 0 && !isOpenRouterHostname(this.contentGeneratorConfig)) {
|
|
1518
|
+
baseRequest = applyConfiguredReasoningEffort(
|
|
1519
|
+
baseRequest,
|
|
1520
|
+
reasoningCapabilities
|
|
1521
|
+
);
|
|
1522
|
+
}
|
|
1482
1523
|
if (request.config?.tools && request.config.tools.length > 0) {
|
|
1483
1524
|
baseRequest.tools = await OpenAIContentConverter.convertLlmToolsToOpenAI(
|
|
1484
1525
|
request.config.tools,
|
|
@@ -1507,7 +1548,7 @@ var ContentGenerationPipeline = class {
|
|
|
1507
1548
|
const isDashScope = DashScopeOpenAICompatibleProvider.isDashScopeProvider(
|
|
1508
1549
|
this.contentGeneratorConfig
|
|
1509
1550
|
);
|
|
1510
|
-
const thinkingMandatory = this.requiresThinking(model);
|
|
1551
|
+
const thinkingMandatory = reasoningCapabilities?.canDisable === false || this.requiresThinking(model);
|
|
1511
1552
|
const reasoningDisabled = request.config?.thinkingConfig?.includeThoughts === false || this.contentGeneratorConfig.reasoning === false;
|
|
1512
1553
|
if (reasoningDisabled) {
|
|
1513
1554
|
const typed2 = providerRequest;
|
|
@@ -1529,13 +1570,22 @@ var ContentGenerationPipeline = class {
|
|
|
1529
1570
|
};
|
|
1530
1571
|
}
|
|
1531
1572
|
}
|
|
1573
|
+
if (!thinkingMandatory) {
|
|
1574
|
+
if (reasoningCapabilities?.disableField === "reasoning_effort") {
|
|
1575
|
+
delete typed2["enable_thinking"];
|
|
1576
|
+
delete typed2["thinking_budget"];
|
|
1577
|
+
typed2["reasoning_effort"] = "none";
|
|
1578
|
+
} else if (reasoningCapabilities?.disableField === "enable_thinking") {
|
|
1579
|
+
typed2["enable_thinking"] = false;
|
|
1580
|
+
}
|
|
1581
|
+
}
|
|
1532
1582
|
if ("reasoning" in typed2) {
|
|
1533
1583
|
delete typed2["reasoning"];
|
|
1534
1584
|
}
|
|
1535
1585
|
if ("reasoning_effort" in typed2 && typed2["reasoning_effort"] !== "none") {
|
|
1536
1586
|
delete typed2["reasoning_effort"];
|
|
1537
1587
|
}
|
|
1538
|
-
if (isDeepSeekHostname(this.contentGeneratorConfig)) {
|
|
1588
|
+
if (isDeepSeekHostname(this.contentGeneratorConfig) || reasoningCapabilities?.disableField === "thinking") {
|
|
1539
1589
|
typed2["thinking"] = { type: "disabled" };
|
|
1540
1590
|
}
|
|
1541
1591
|
if (!thinkingMandatory && isOpenRouterHostname(this.contentGeneratorConfig)) {
|
|
@@ -1550,6 +1600,13 @@ var ContentGenerationPipeline = class {
|
|
|
1550
1600
|
if (typed2["reasoning_effort"] === "none") {
|
|
1551
1601
|
delete typed2["reasoning_effort"];
|
|
1552
1602
|
}
|
|
1603
|
+
const thinking = asObject(typed2["thinking"]);
|
|
1604
|
+
if (thinking?.["type"] === "disabled") {
|
|
1605
|
+
const remaining = { ...thinking };
|
|
1606
|
+
delete remaining["type"];
|
|
1607
|
+
if (Object.keys(remaining).length > 0) typed2["thinking"] = remaining;
|
|
1608
|
+
else delete typed2["thinking"];
|
|
1609
|
+
}
|
|
1553
1610
|
const chatTemplateKwargs = typed2["chat_template_kwargs"];
|
|
1554
1611
|
if (chatTemplateKwargs?.["enable_thinking"] === false) {
|
|
1555
1612
|
const remaining = { ...chatTemplateKwargs };
|
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
USER_AGREEMENT_RATE_MEDIUM,
|
|
12
12
|
flattenModelsBySource,
|
|
13
13
|
formatDuration as formatDuration2,
|
|
14
|
+
formatTokenCount as formatTokenCount2,
|
|
14
15
|
getArenaStatusLabel,
|
|
15
16
|
getStatusColor,
|
|
16
17
|
isSafeOscScheme,
|
|
@@ -21,7 +22,7 @@ import {
|
|
|
21
22
|
shouldWrapMarkdownLink,
|
|
22
23
|
trimTrailingUrlPunctuation,
|
|
23
24
|
useSessionStats
|
|
24
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-RNYENHN5.js";
|
|
25
26
|
import {
|
|
26
27
|
CompactToolGroupDisplay,
|
|
27
28
|
ICON,
|
|
@@ -39,20 +40,20 @@ import {
|
|
|
39
40
|
isCollapsibleTool,
|
|
40
41
|
isFindingsListDisplay,
|
|
41
42
|
wrapAnsi
|
|
42
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-E7XSUYCZ.js";
|
|
43
44
|
import {
|
|
44
45
|
disableMouseEvents,
|
|
45
46
|
enableMouseEvents,
|
|
46
47
|
useKeypress,
|
|
47
48
|
useKeypressContext
|
|
48
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-WQMUGQ6G.js";
|
|
49
50
|
import {
|
|
50
51
|
formatSupportedModes,
|
|
51
52
|
getCommandDisplayName,
|
|
52
53
|
getCommandSourceBadge,
|
|
53
54
|
getCommandSourceGroup,
|
|
54
55
|
getCommandSubcommandNames
|
|
55
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-O2JBJQCF.js";
|
|
56
57
|
import {
|
|
57
58
|
INLINE_CODE_SPAN_PATTERN_SOURCE,
|
|
58
59
|
calculateAverageLatency,
|
|
@@ -68,7 +69,7 @@ import {
|
|
|
68
69
|
readInlineMathSpanAt,
|
|
69
70
|
unescapeMarkdownBeforeMath,
|
|
70
71
|
unescapeMarkdownDollars
|
|
71
|
-
} from "./chunk-
|
|
72
|
+
} from "./chunk-MFYH2VXV.js";
|
|
72
73
|
import {
|
|
73
74
|
formatDuration,
|
|
74
75
|
formatRelativeTime,
|
|
@@ -103,10 +104,10 @@ import {
|
|
|
103
104
|
} from "./chunk-5QWWOFGG.js";
|
|
104
105
|
import {
|
|
105
106
|
getErrorMessage
|
|
106
|
-
} from "./chunk-
|
|
107
|
+
} from "./chunk-6JXHO7LG.js";
|
|
107
108
|
import {
|
|
108
109
|
relaunchApp
|
|
109
|
-
} from "./chunk-
|
|
110
|
+
} from "./chunk-RXT4QBDX.js";
|
|
110
111
|
import {
|
|
111
112
|
markKittyImageWritten,
|
|
112
113
|
prepareInlineTerminalImage,
|
|
@@ -142,18 +143,18 @@ import {
|
|
|
142
143
|
} from "./chunk-57OAHC2Y.js";
|
|
143
144
|
import {
|
|
144
145
|
createLoadedSettingsAdapter
|
|
145
|
-
} from "./chunk-
|
|
146
|
+
} from "./chunk-FW4E4QPG.js";
|
|
146
147
|
import {
|
|
147
148
|
getPersistScopeForModelSelection
|
|
148
|
-
} from "./chunk-
|
|
149
|
+
} from "./chunk-66JBCTJF.js";
|
|
149
150
|
import {
|
|
150
151
|
getCurrentLanguage,
|
|
151
152
|
localizeToolDisplayName,
|
|
152
153
|
t
|
|
153
|
-
} from "./chunk-
|
|
154
|
+
} from "./chunk-CRZBDVP2.js";
|
|
154
155
|
import {
|
|
155
156
|
isWorkspaceTrusted
|
|
156
|
-
} from "./chunk-
|
|
157
|
+
} from "./chunk-3VDLQUR2.js";
|
|
157
158
|
import {
|
|
158
159
|
ALL_PROVIDERS,
|
|
159
160
|
PROVIDER_METADATA_NS,
|
|
@@ -166,11 +167,11 @@ import {
|
|
|
166
167
|
resolveBaseUrl,
|
|
167
168
|
resolveMetadataKey,
|
|
168
169
|
resolveOwnsModel
|
|
169
|
-
} from "./chunk-
|
|
170
|
+
} from "./chunk-ZU2T5JIS.js";
|
|
170
171
|
import {
|
|
171
172
|
sanitizeForOsc,
|
|
172
173
|
supportsHyperlinks
|
|
173
|
-
} from "./chunk-
|
|
174
|
+
} from "./chunk-XDNFODER.js";
|
|
174
175
|
import {
|
|
175
176
|
IdeClient,
|
|
176
177
|
ShellExecutionService,
|
|
@@ -181,7 +182,7 @@ import {
|
|
|
181
182
|
getExternalEditorCommand,
|
|
182
183
|
ideContextStore,
|
|
183
184
|
isValidEditorType
|
|
184
|
-
} from "./chunk-
|
|
185
|
+
} from "./chunk-PDUMGZ2P.js";
|
|
185
186
|
import {
|
|
186
187
|
stripAnsi
|
|
187
188
|
} from "./chunk-TWPJO254.js";
|
|
@@ -192,7 +193,7 @@ import {
|
|
|
192
193
|
formatVisionBridgeNoticeDisplay,
|
|
193
194
|
getMCPServerStatus,
|
|
194
195
|
isVisionBridgeNoticeDisplay
|
|
195
|
-
} from "./chunk-
|
|
196
|
+
} from "./chunk-6QV7Z74P.js";
|
|
196
197
|
import {
|
|
197
198
|
ToolNames,
|
|
198
199
|
ToolNamesMigration,
|
|
@@ -16592,6 +16593,12 @@ var GoalStateCard = /* @__PURE__ */ __name(({
|
|
|
16592
16593
|
if (goal.activeTimeMs > 0) {
|
|
16593
16594
|
stats.push(formatDuration(goal.activeTimeMs, { hideTrailingZeros: true }));
|
|
16594
16595
|
}
|
|
16596
|
+
if (goal.tokensUsed > 0) {
|
|
16597
|
+
const used = formatTokenCount2(goal.tokensUsed);
|
|
16598
|
+
stats.push(
|
|
16599
|
+
goal.tokenBudget === void 0 ? `${used} tokens` : `${used}/${formatTokenCount2(goal.tokenBudget)} tokens`
|
|
16600
|
+
);
|
|
16601
|
+
}
|
|
16595
16602
|
const subtitle = stats.length > 0 ? stats.join(" \xB7 ") : null;
|
|
16596
16603
|
const reason = goal.status !== "active" || snapshot.activity === "verifying" ? goal.lastReason?.trim() : void 0;
|
|
16597
16604
|
return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(Box_default, { flexDirection: "row", children: [
|