@qwen-code/qwen-code 0.19.3 → 0.19.4-nightly.20260702.46814e4f1
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/loop/SKILL.md +22 -3
- package/bundled/loop/SKILL.test.ts +20 -0
- package/bundled/loop/autonomous-loop.test.ts +59 -0
- package/bundled/loop/autonomous-loop.ts +102 -0
- package/bundled/loop/loop-task-file.test.ts +1064 -0
- package/bundled/loop/loop-task-file.ts +404 -0
- package/bundled/loop/loop-tick-resolver.test.ts +906 -0
- package/bundled/loop/loop-tick-resolver.ts +416 -0
- package/bundled/qc-helper/SKILL.md +12 -5
- package/bundled/qc-helper/docs/configuration/auth.md +1 -1
- package/bundled/qc-helper/docs/configuration/settings.md +62 -32
- package/bundled/qc-helper/docs/features/approval-mode.md +3 -0
- package/bundled/qc-helper/docs/features/auto-mode.md +40 -0
- package/bundled/qc-helper/docs/features/channels/overview.md +81 -18
- package/bundled/qc-helper/docs/features/channels/plugins.md +1 -1
- package/bundled/qc-helper/docs/features/code-review.md +17 -61
- package/bundled/qc-helper/docs/features/commands.md +42 -40
- package/bundled/qc-helper/docs/features/headless.md +19 -18
- package/bundled/qc-helper/docs/features/hooks.md +6 -1
- package/bundled/qc-helper/docs/features/mcp.md +3 -1
- package/bundled/qc-helper/docs/features/memory.md +1 -1
- package/bundled/qc-helper/docs/features/scheduled-tasks.md +10 -0
- package/bundled/qc-helper/docs/features/status-line.md +3 -3
- package/bundled/qc-helper/docs/ide-integration/ide-integration.md +4 -4
- package/bundled/qc-helper/docs/qwen-serve.md +53 -0
- package/bundled/qc-helper/docs/support/troubleshooting.md +11 -0
- package/bundled/review/DESIGN.md +21 -26
- package/bundled/review/SKILL.md +45 -129
- package/chunks/MaxSizedBox-GHGRQ2OS.js +69 -0
- package/chunks/{StandaloneSessionPicker-Z52JTYST.js → StandaloneSessionPicker-G7YTTM27.js} +49 -42
- package/chunks/{acpAgent-7RZUOWOM.js → acpAgent-SDOILBSU.js} +1325 -365
- package/chunks/{agent-4FG7WTHJ.js → agent-NTSXGV4L.js} +31 -25
- package/chunks/agent-headless-WYURMSAB.js +62 -0
- package/chunks/{anthropicContentGenerator-PFITVL7Y.js → anthropicContentGenerator-WL3LJOUB.js} +110 -31
- package/chunks/{artifact-tool-D2X7G3C3.js → artifact-tool-W76WC2JX.js} +3 -3
- package/chunks/{askUserQuestion-UGETICJQ.js → askUserQuestion-J3P6TH3V.js} +2 -2
- package/chunks/bridge-AMOL4W4P.js +73 -0
- package/chunks/{ca-IUFWESZL.js → ca-HCMB2I54.js} +10 -9
- package/chunks/channel-worker-supervisor-C3IB63V7.js +659 -0
- package/chunks/{chunk-STUWFKGD.js → chunk-26JIREA5.js} +466 -543
- package/chunks/{chunk-SLNKLLEO.js → chunk-2MRV62AU.js} +37 -8
- package/chunks/{chunk-ODLIHNOY.js → chunk-2U4HUMOL.js} +1 -1
- package/chunks/{chunk-CKQA6AWF.js → chunk-4D73HUOP.js} +1 -1
- package/chunks/{chunk-M2U5NM24.js → chunk-54YZOP7P.js} +309 -72
- package/chunks/{chunk-J7FA27RO.js → chunk-5LKL3PAU.js} +3 -3
- package/chunks/chunk-5P5XGNYH.js +93 -0
- package/chunks/{chunk-UFLGERMB.js → chunk-6JE32BRB.js} +178 -124
- package/chunks/{chunk-FKAVULLM.js → chunk-75AVTQJ2.js} +74 -10
- package/chunks/{chunk-I2LYBGNI.js → chunk-7IOMIYOE.js} +1 -1
- package/chunks/{chunk-4LUZAKMK.js → chunk-7KXAGQJ2.js} +1 -1
- package/chunks/{chunk-BXSHL2SF.js → chunk-7LUOQJ3D.js} +1 -1
- package/chunks/{chunk-YAINVQ3Q.js → chunk-A5OPLHFM.js} +18693 -17055
- package/chunks/chunk-AHNXYU4O.js +24 -0
- package/chunks/{chunk-UX4SGCGN.js → chunk-AVQDCKNF.js} +96 -22
- package/chunks/{chunk-HYCC3XM3.js → chunk-B236XPGF.js} +1 -1
- package/chunks/chunk-B6SZLQAZ.js +3523 -0
- package/chunks/{chunk-5DWXLGOM.js → chunk-BJBWRCSK.js} +1 -1
- package/chunks/chunk-BPFJQGY7.js +193 -0
- package/chunks/{chunk-SKQZZVAV.js → chunk-BZHLWC6T.js} +2 -2
- package/chunks/{chunk-U3KSMM7G.js → chunk-D5KISTLW.js} +339 -383
- package/chunks/{chunk-GT2FGICD.js → chunk-DE7YXUR7.js} +1 -1
- package/chunks/{chunk-BUUQ5HPX.js → chunk-DG573EOO.js} +1 -1
- package/chunks/{chunk-VVLOGDB6.js → chunk-DX3TKXNT.js} +2 -2
- package/chunks/chunk-E5A7LHNN.js +51 -0
- package/chunks/{chunk-3PJXIDKI.js → chunk-E6US47KI.js} +3 -27
- package/chunks/{chunk-QBZ22PQX.js → chunk-EWALXUAD.js} +3 -1
- package/chunks/{chunk-PDE7CSDS.js → chunk-FXKI7OW6.js} +2 -2
- package/chunks/{chunk-F3ZYSEY6.js → chunk-FY4TT4L4.js} +3 -3
- package/chunks/{chunk-QLDPRILK.js → chunk-G7OQ3RFJ.js} +3 -3
- package/chunks/{chunk-R2BXK7SX.js → chunk-GHOTR7HL.js} +6 -1
- package/chunks/{chunk-KMGMKW5Q.js → chunk-GLPV75ES.js} +9 -3
- package/chunks/{chunk-LD2XBG6Z.js → chunk-GO6LNQXT.js} +1 -39
- package/chunks/{chunk-CNLEDYE3.js → chunk-H6TNLOLM.js} +5 -5
- package/chunks/{chunk-JVHEVCAU.js → chunk-HLW4EGKR.js} +31 -6
- package/chunks/{chunk-I4H7PRWQ.js → chunk-HTWHAN44.js} +1 -1
- package/chunks/{chunk-QE6KJYLT.js → chunk-IPYE5BIS.js} +123 -25
- package/chunks/{chunk-EJYJYJZ2.js → chunk-IRJWHZWU.js} +3 -70
- package/chunks/{chunk-EDMZZFDU.js → chunk-J3YPTTNL.js} +930 -798
- package/chunks/{chunk-GGBIN5K7.js → chunk-JGAJMIJZ.js} +1 -1
- package/chunks/{chunk-N4EJFBN5.js → chunk-JVLP5US5.js} +427 -263
- package/chunks/{chunk-R5OP2ATH.js → chunk-JZG7VB6C.js} +11 -11
- package/chunks/{chunk-QI7GOGJR.js → chunk-KKQWC6WS.js} +1 -1
- package/chunks/{chunk-ADCIHOQZ.js → chunk-KX5QZRW2.js} +142 -30
- package/chunks/{chunk-SBBN4BWR.js → chunk-L7OJ3ZO3.js} +1 -1
- package/chunks/{chunk-NDOC6M5S.js → chunk-L7QPM2YD.js} +2 -2
- package/chunks/{chunk-BVSVIN45.js → chunk-LKWAVAB5.js} +3 -3
- package/chunks/{chunk-T4T2FNV4.js → chunk-LOW52WYZ.js} +2 -2
- package/chunks/{chunk-4QK3O43S.js → chunk-LU7BIVWC.js} +4 -4
- package/chunks/{chunk-ZP6UKOPB.js → chunk-LWGLBVWA.js} +1 -1
- package/chunks/{chunk-L7OKCI7T.js → chunk-M7BLWURA.js} +15 -1
- package/chunks/{chunk-PR32FRT6.js → chunk-MIM62IXS.js} +3 -3
- package/chunks/{chunk-RD6YJJJ6.js → chunk-MOUXUCXQ.js} +1 -1
- package/chunks/{chunk-VBZ452JT.js → chunk-MSNGFH6L.js} +494 -114
- package/chunks/{chunk-BX5YO7UW.js → chunk-MTNTVOJR.js} +542 -370
- package/chunks/chunk-MX2YXRER.js +44 -0
- package/chunks/chunk-NIOPRZNN.js +27 -0
- package/chunks/{chunk-SMYQZVZ3.js → chunk-NOGSPTLJ.js} +1 -1
- package/chunks/{chunk-DDMOU62Q.js → chunk-NPQWQYU6.js} +1 -1
- package/chunks/{chunk-MNF6S5PR.js → chunk-P5THQV6A.js} +4 -4
- package/chunks/{chunk-6V4NZFUS.js → chunk-PCYOT4PK.js} +5 -5
- package/chunks/{chunk-CF6BB3LT.js → chunk-PPFWEV7G.js} +10 -1
- package/chunks/{chunk-FXKVLFFY.js → chunk-PSFDB5FZ.js} +3 -3
- package/chunks/{chunk-XJYUPHRC.js → chunk-QOMAHFYI.js} +3 -3
- package/chunks/{chunk-J37FGIOA.js → chunk-QXPI7FEC.js} +38 -4
- package/chunks/{chunk-RRFZXMYP.js → chunk-QZDBHNMV.js} +691 -164
- package/chunks/{chunk-S7AKE7HL.js → chunk-R6RI2HIC.js} +63 -9
- package/chunks/{chunk-HZT4UCFB.js → chunk-RB7S52NJ.js} +4 -4
- package/chunks/{chunk-J33ZR6OJ.js → chunk-RK22ACPP.js} +16 -16
- package/chunks/chunk-RM3PGSGL.js +66 -0
- package/chunks/chunk-RNBYOUGV.js +42 -0
- package/chunks/chunk-S6RLAIUR.js +23 -0
- package/chunks/{chunk-3TV3HUWZ.js → chunk-SCYK2YLI.js} +81 -30
- package/chunks/{chunk-HPZTOP4I.js → chunk-SEKRT4SD.js} +133 -23
- package/chunks/chunk-SEZC2725.js +36 -0
- package/chunks/chunk-SIUQ3YYX.js +78 -0
- package/chunks/{chunk-O2VBQ3Y2.js → chunk-SJBIFVD2.js} +2 -2
- package/chunks/chunk-SYCJMSIJ.js +82 -0
- package/chunks/{chunk-JE5FVRPC.js → chunk-T22H4V4R.js} +48 -23
- package/chunks/{chunk-3227DZO4.js → chunk-T42ACHFI.js} +1 -1
- package/chunks/{chunk-UO5GVXQE.js → chunk-TENOUWY2.js} +3 -3
- package/chunks/{chunk-JOLIREYR.js → chunk-TOAUDIS7.js} +1 -1
- package/chunks/{chunk-QNKBEJO2.js → chunk-UA6XBZT7.js} +2776 -1289
- package/chunks/{chunk-O75BHFQW.js → chunk-UQTYK5SS.js} +2 -2
- package/chunks/{chunk-Y6YMRS3U.js → chunk-UY2TCIZS.js} +17 -3
- package/chunks/{chunk-FNJ7BDPH.js → chunk-UY7ZAYTY.js} +10 -7
- package/chunks/{chunk-UYT3MWEB.js → chunk-UYHWM24C.js} +30 -2
- package/chunks/{chunk-SMXULRAN.js → chunk-VXGPYF7U.js} +1 -1
- package/chunks/{chunk-BTLJ2MF5.js → chunk-W7CG5HPC.js} +3 -3
- package/chunks/{chunk-JJXWTVSK.js → chunk-XHZKDN7M.js} +34 -1
- package/chunks/{chunk-K5XU6E4T.js → chunk-XKSCTXPK.js} +2 -2
- package/chunks/chunk-Y4LITCRB.js +367 -0
- package/chunks/chunk-YHTNWGRR.js +239 -0
- package/chunks/{chunk-BKXBARJZ.js → chunk-YPCPZSZB.js} +1 -1
- package/chunks/{chunk-QWFNTRH4.js → chunk-YSM24SCE.js} +1 -1
- package/chunks/chunk-YTFBURQD.js +313 -0
- package/chunks/{chunk-NL4C3H6C.js → chunk-YXK4GPYO.js} +1 -1
- package/chunks/{chunk-RYLJU2DY.js → chunk-ZN5T4BHI.js} +1 -1
- package/chunks/{computer-use-JGB36FDW.js → computer-use-MTSVPLPY.js} +34 -28
- package/chunks/contextCommand-VGJ3BPTK.js +67 -0
- package/chunks/{cron-create-SKEY55RG.js → cron-create-6YTCOX6P.js} +4 -4
- package/chunks/{cron-delete-I3NAT32Z.js → cron-delete-E3NIFSUK.js} +4 -4
- package/chunks/{cron-list-6XRRL6TH.js → cron-list-Q64MNQNE.js} +4 -4
- package/chunks/daemon-EEB2RYOL.js +8453 -0
- package/chunks/daemon-status-provider-H5SNMK42.js +71 -0
- package/chunks/{de-EOW5PVHF.js → de-PLLFDERI.js} +10 -9
- package/chunks/{dist-NHEYYB2B.js → dist-ADMIQGHI.js} +2 -2
- package/chunks/{dist-J37VXPLD.js → dist-BCQ7INM7.js} +40 -15
- package/chunks/{dist-663NZ6MI.js → dist-KNZFCY5F.js} +116 -11
- package/chunks/{dist-LB6OGPVM.js → dist-LHUWC3K6.js} +26 -5
- package/chunks/{dist-PQPZ5Q4N.js → dist-WBBZ76JZ.js} +20 -9
- package/chunks/{earlyInputCapture-44RISVVJ.js → earlyInputCapture-U4ZIQSQU.js} +32 -26
- package/chunks/{edit-NN6GM5DT.js → edit-SYIQ2KBI.js} +41 -38
- package/chunks/{en-HPWEJBTR.js → en-M4EBUBNU.js} +32 -10
- package/chunks/{enter-worktree-PB3O2C7D.js → enter-worktree-HPPOO244.js} +31 -25
- package/chunks/{enterPlanMode-YQFNNSUA.js → enterPlanMode-56YYO52U.js} +41 -25
- package/chunks/{errors-LS7XU5DZ.js → errors-EO4SXCFP.js} +33 -27
- package/chunks/{exit-worktree-E2FTNSBK.js → exit-worktree-UDM7E6XH.js} +31 -25
- package/chunks/{exitPlanMode-GLYK2BUB.js → exitPlanMode-M6P3AWLJ.js} +149 -33
- package/chunks/{fast-path-WQ6M7LI7.js → fast-path-42P4QYWI.js} +33 -14
- package/chunks/{fast-path-settings-OAGU3X5H.js → fast-path-settings-UQLRFDQP.js} +2 -2
- package/chunks/{fr-BN5NKSAC.js → fr-MBMNQSQ6.js} +10 -9
- package/chunks/{gemini-2YFLVA2M.js → gemini-NRLXS5J7.js} +84 -70
- package/chunks/{geminiContentGenerator-XV6SV6CD.js → geminiContentGenerator-DLJPYYPA.js} +41 -5
- package/chunks/{glob-2H6CDDMK.js → glob-JPY3F74Y.js} +31 -25
- package/chunks/{grep-VXIUXM3C.js → grep-HW23YES5.js} +31 -25
- package/chunks/initializer-HWOZTC4A.js +67 -0
- package/chunks/{ja-7DEUB2TS.js → ja-HFV5QCHR.js} +10 -9
- package/chunks/{keychain-token-storage-YLMDLKXT.js → keychain-token-storage-GPAKRDKQ.js} +2 -2
- package/chunks/list-OZGAGRDG.js +71 -0
- package/chunks/loadedSettingsAdapter-RUTZVVIA.js +66 -0
- package/chunks/{loop-wakeup-CITGGQHA.js → loop-wakeup-G2EHBRGR.js} +5 -5
- package/chunks/{ls-R5WP4BGZ.js → ls-IDHUVSAG.js} +4 -4
- package/chunks/{lsp-GSICJMMW.js → lsp-FSRYXGFT.js} +2 -2
- package/chunks/{monitor-HKLRS2HQ.js → monitor-QVWEIXU3.js} +33 -26
- package/chunks/nonInteractiveCli-RV2WYPML.js +109 -0
- package/chunks/{notebook-edit-Y6SKSGTT.js → notebook-edit-B26W3FFH.js} +37 -34
- package/chunks/{openaiContentGenerator-J7G2FYJT.js → openaiContentGenerator-6TH7AZGQ.js} +15 -13
- package/chunks/pidfile-KW2QQJZI.js +73 -0
- package/chunks/{pt-TNZRNLQB.js → pt-2THT3YHA.js} +10 -9
- package/chunks/{qwenContentGenerator-5XIEM5GV.js → qwenContentGenerator-5IQAC7RN.js} +33 -27
- package/chunks/{qwenOAuth2-AG3PFFLZ.js → qwenOAuth2-LWLA6MQG.js} +5 -4
- package/chunks/{read-file-J7D552ZJ.js → read-file-CWFAHOI2.js} +11 -10
- package/chunks/{read-mcp-resource-DQQW7H7T.js → read-mcp-resource-PIJF24RO.js} +2 -2
- package/chunks/ripGrep-FTZGDKY4.js +60 -0
- package/chunks/{ru-NIAUBKCN.js → ru-Z67YJHBG.js} +10 -9
- package/chunks/{run-qwen-serve-SGEEVMXD.js → run-qwen-serve-FN2SW5ZI.js} +545 -97
- package/chunks/{scheduler-7CQI3S4Q.js → scheduler-BMS23O3I.js} +31 -25
- package/chunks/{send-message-EE4TWKVU.js → send-message-33PYFMCT.js} +20 -4
- package/chunks/serve-PXFYKL65.js +71 -0
- package/chunks/{server-4QMUWXPW.js → server-BRKALJ4F.js} +4132 -1175
- package/chunks/{session-NRO7UFOY.js → session-AQMISBP4.js} +205 -64
- package/chunks/{settings-SGWRDQSC.js → settings-JCPVUZMB.js} +35 -29
- package/chunks/{shell-62ANGIHL.js → shell-POHCRVN2.js} +31 -25
- package/chunks/{skill-VWAQAWW6.js → skill-QPEVHS6H.js} +13 -12
- package/chunks/spawnChannel-V3QT62TE.js +69 -0
- package/chunks/{src-KUV5J5Q2.js → src-IZSP7L6Y.js} +127 -32
- package/chunks/{startInteractiveUI-6EYJN3JV.js → startInteractiveUI-63KATISO.js} +16762 -16075
- package/chunks/{syntheticOutput-T5YHQ6S2.js → syntheticOutput-YOSWIHDJ.js} +3 -3
- package/chunks/{task-create-BLY7RHXX.js → task-create-NHS2NGB3.js} +9 -7
- package/chunks/{task-list-3QUYNVYR.js → task-list-5UIB564R.js} +7 -6
- package/chunks/{task-stop-U4RATK2V.js → task-stop-HGXZ2VZ3.js} +2 -2
- package/chunks/{task-update-U54O7KJX.js → task-update-IYYWUILG.js} +40 -7
- package/chunks/{team-create-LPOGCPM7.js → team-create-E5O2F3CA.js} +31 -25
- package/chunks/{team-delete-LKBYPASD.js → team-delete-FEKJCU4P.js} +7 -6
- package/chunks/team-plan-approval-2TU4YROB.js +202 -0
- package/chunks/theme-manager-37KOGPJL.js +64 -0
- package/chunks/{todoWrite-OYXKTVYN.js → todoWrite-TKMVZ2HT.js} +4 -4
- package/chunks/{tool-search-YPUFJ3ZQ.js → tool-search-4ZTGNSFI.js} +38 -11
- package/chunks/{trustedFolders-5B24TMEA.js → trustedFolders-RJ5WXJ6L.js} +32 -26
- package/chunks/{validateNonInterActiveAuth-BTDTYOVT.js → validateNonInterActiveAuth-ZWMHZAOK.js} +66 -55
- package/chunks/{web-fetch-EEB5LZYU.js → web-fetch-J4PIW36Q.js} +5 -4
- package/chunks/{workflow-LAWIW5LI.js → workflow-6PG2PC5M.js} +68 -39
- package/chunks/workspace-providers-status-4QIZN2W4.js +68 -0
- package/chunks/workspace-service-CYMCOEIO.js +78 -0
- package/chunks/{write-file-PCV226DJ.js → write-file-R354LGQF.js} +41 -40
- package/chunks/{zh-5EUYXASN.js → zh-SLZNSSZB.js} +32 -10
- package/chunks/{zh-TW-TR3XYGE5.js → zh-TW-P53C2SL5.js} +32 -10
- package/cli.js +6 -6
- package/locales/ca.js +15 -13
- package/locales/de.js +15 -13
- package/locales/en.js +52 -15
- package/locales/fr.js +15 -14
- package/locales/ja.js +15 -14
- package/locales/pt.js +15 -13
- package/locales/ru.js +15 -13
- package/locales/zh-TW.js +50 -14
- package/locales/zh.js +50 -14
- package/node_modules/@qwen-code/audio-capture/package.json +1 -1
- package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
- package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
- package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
- package/package.json +15 -6
- package/patches/chrome-devtools-mcp+1.4.0.patch +31 -0
- package/postinstall.js +50 -0
- package/web-shell/assets/{arc-DA7r8Ueo.js → arc-Bd3048nX.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-ZDUxPtZ2.js → architectureDiagram-3BPJPVTR-DyzbzABx.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-vrtOf1kJ.js → blockDiagram-GPEHLZMM-CTjxm9Sy.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-BHFjzIi4.js → c4Diagram-AAUBKEIU-DSOFWNU6.js} +1 -1
- package/web-shell/assets/channel-oVoup_Ci.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-mdeQVz59.js → chunk-2J33WTMH-D_PFdjo2.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-BkKMlwBX.js → chunk-4BX2VUAB-52eG6wOT.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-B7bnXNfu.js → chunk-55IACEB6-CGTZfKkC.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-DGz8Mm6i.js → chunk-727SXJPM-CZ-qfRUm.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-BQAydUNk.js → chunk-AQP2D5EJ-B2dSDcqM.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-GHr2LN_p.js → chunk-FMBD7UC4-Cfy3tyA0.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-7R91lnUx.js → chunk-ND2GUHAM-CApNUpUq.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-aTJD3lSQ.js → chunk-QZHKN3VN-CVBG8kgg.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-B8WsaT2G.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-B8WsaT2G.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-BTf8t1RL.js → cose-bilkent-S5V4N54A-URd77-_-.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-_sgp3WuA.js → dagre-BM42HDAG-C07H4G9-.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-CROtRy1w.js → diagram-2AECGRRQ-CYbpXrSn.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-BqGRzwSc.js → diagram-5GNKFQAL-SI8s6fjX.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-CMrcEtA7.js → diagram-KO2AKTUF-mBkC4RTW.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-BRydGNW5.js → diagram-LMA3HP47-CyBPDzWJ.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-D0ilgNjV.js → diagram-OG6HWLK6-DwK7kBCu.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-2lnQeJUM.js → erDiagram-TEJ5UH35-Ds1StEUd.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-C_ZMdQiC.js → flowDiagram-I6XJVG4X-BDC4-jHO.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-Dw9V_Ny0.js → ganttDiagram-6RSMTGT7-CV2aHQqf.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-HDXI-F1B.js → gitGraphDiagram-PVQCEYII-B8RcuV_L.js} +1 -1
- package/web-shell/assets/index-B5WZ0qP1.js +717 -0
- package/web-shell/assets/index-CYE1IMd1.css +5 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-CuB8Ebua.js → infoDiagram-5YYISTIA-DUPoTf50.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-D_tyhVwh.js → ishikawaDiagram-YF4QCWOH-FDYOx9rf.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-CgCwJQNU.js → journeyDiagram-JHISSGLW-C5_ohMRp.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-PZUtcbPx.js → kanban-definition-UN3LZRKU-Bn4UnOMG.js} +1 -1
- package/web-shell/assets/{linear-CZqRdJIU.js → linear-Bl0pKQtY.js} +1 -1
- package/web-shell/assets/{mermaid.core-CPW_4UEF.js → mermaid.core-sevQFoji.js} +72 -72
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-D_Y75ID7.js → mindmap-definition-RKZ34NQL-DSH4JZF9.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-Q4dTyLeF.js → pieDiagram-4H26LBE5-acWvdQTD.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-ckw329Ft.js → quadrantDiagram-W4KKPZXB-DlggX4Sm.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-DbVDm4It.js → requirementDiagram-4Y6WPE33--mMqwmV8.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-CHuZ_ecH.js → sankeyDiagram-5OEKKPKP-BtV9tZ77.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DU2YSpq-.js → sequenceDiagram-3UESZ5HK-iDQzPFlj.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-CA9PEBUo.js → stateDiagram-AJRCARHV-CsCyQLZ3.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CPapECG9.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-Bhlo4WVc.js → timeline-definition-PNZ67QCA-Dl0rnKvr.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-6xtPLsyl.js → vennDiagram-CIIHVFJN-qF7nTZzA.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-3eozmXPf.js → wardley-L42UT6IY-fWoK9i7F.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-BOn6hKss.js → wardleyDiagram-YWT4CUSO-pHGfkMnc.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-BsP4-I_y.js → xychartDiagram-2RQKCTM6-3Doc4Trz.js} +1 -1
- package/web-shell/index.html +18 -2
- package/chunks/MaxSizedBox-QNF3EIGU.js +0 -63
- package/chunks/agent-headless-RQ5BTX3G.js +0 -56
- package/chunks/bridge-JL2PMCIW.js +0 -66
- package/chunks/chunk-5GOVVXEV.js +0 -73
- package/chunks/chunk-BC3C4F3Q.js +0 -40
- package/chunks/chunk-BW4KCQFD.js +0 -1103
- package/chunks/chunk-RKIZXJMB.js +0 -13
- package/chunks/contextCommand-WYU6OQ2F.js +0 -61
- package/chunks/daemon-status-provider-HH2EC5FI.js +0 -65
- package/chunks/headlessSafetyWarnings-TBE35GJ4.js +0 -55
- package/chunks/initializer-2Y7SLOKV.js +0 -61
- package/chunks/list-ZAFHZ7OS.js +0 -65
- package/chunks/loadedSettingsAdapter-6KJXD6M3.js +0 -60
- package/chunks/nonInteractiveCli-5W4GIZQM.js +0 -96
- package/chunks/ripGrep-IEIFIWP4.js +0 -54
- package/chunks/serve-V6GVZR6U.js +0 -65
- package/chunks/spawnChannel-3VHW5EPY.js +0 -63
- package/chunks/theme-manager-LYLGAERF.js +0 -58
- package/chunks/workspace-providers-status-PIAFVYHA.js +0 -62
- package/chunks/workspace-service-YAIOD4HG.js +0 -71
- package/web-shell/assets/channel-iRo68q4Q.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-iHF24a8X.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-iHF24a8X.js +0 -1
- package/web-shell/assets/index-CHmzAWys.css +0 -5
- package/web-shell/assets/index-w6GTOHh1.js +0 -713
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-t1LRI0oY.js +0 -1
|
@@ -3,37 +3,42 @@
|
|
|
3
3
|
import {
|
|
4
4
|
handleAtCommand,
|
|
5
5
|
resolveAtCommandQuery
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6JE32BRB.js";
|
|
7
7
|
import {
|
|
8
8
|
isAtCommand,
|
|
9
9
|
isBtwCommand,
|
|
10
10
|
isSlashCommand,
|
|
11
11
|
normalizePartList,
|
|
12
12
|
recordGoalStatusItem
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-QZDBHNMV.js";
|
|
14
14
|
import {
|
|
15
15
|
SHELL_COMMAND_NAME,
|
|
16
16
|
useSessionStats
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-5LKL3PAU.js";
|
|
18
18
|
import {
|
|
19
19
|
require_react
|
|
20
20
|
} from "./chunk-KYMBIKIW.js";
|
|
21
21
|
import {
|
|
22
22
|
themeManager
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-HTWHAN44.js";
|
|
24
24
|
import {
|
|
25
25
|
formatMemoryUsage
|
|
26
26
|
} from "./chunk-KHDZHZMH.js";
|
|
27
|
+
import {
|
|
28
|
+
isInlineModelOverrideAllowed
|
|
29
|
+
} from "./chunk-UYHWM24C.js";
|
|
27
30
|
import {
|
|
28
31
|
t
|
|
29
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-JZG7VB6C.js";
|
|
30
33
|
import {
|
|
34
|
+
AutonomousLoopTickResolver,
|
|
31
35
|
CoreToolScheduler,
|
|
32
36
|
ShellExecutionService,
|
|
33
37
|
activeGoalEquals,
|
|
34
38
|
clearActiveGoal,
|
|
35
39
|
compactToolResultDisplayForHistory,
|
|
36
40
|
createDuplicateProviderToolCallResponse,
|
|
41
|
+
detectAutonomousSentinel,
|
|
37
42
|
findRepeatedDuplicateProviderToolCall,
|
|
38
43
|
generateToolUseSummary,
|
|
39
44
|
getActiveGoal,
|
|
@@ -46,7 +51,7 @@ import {
|
|
|
46
51
|
setActiveGoal,
|
|
47
52
|
shouldRunVisionBridge,
|
|
48
53
|
splitImageParts
|
|
49
|
-
} from "./chunk-
|
|
54
|
+
} from "./chunk-A5OPLHFM.js";
|
|
50
55
|
import {
|
|
51
56
|
ApiCancelEvent,
|
|
52
57
|
ConversationFinishedEvent,
|
|
@@ -56,17 +61,17 @@ import {
|
|
|
56
61
|
logConversationFinishedEvent,
|
|
57
62
|
logUserPrompt,
|
|
58
63
|
logUserRetry
|
|
59
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-UA6XBZT7.js";
|
|
60
65
|
import {
|
|
61
66
|
isAnyAutoMemPath
|
|
62
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-MOUXUCXQ.js";
|
|
63
68
|
import {
|
|
64
69
|
ToolNames
|
|
65
|
-
} from "./chunk-
|
|
70
|
+
} from "./chunk-MTNTVOJR.js";
|
|
66
71
|
import {
|
|
67
72
|
getUnsupportedImageFormatWarning,
|
|
68
73
|
isSupportedImageMimeType
|
|
69
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-YTFBURQD.js";
|
|
70
75
|
import {
|
|
71
76
|
FinishReason
|
|
72
77
|
} from "./chunk-55ZMG67I.js";
|
|
@@ -75,7 +80,7 @@ import {
|
|
|
75
80
|
createDebugLogger,
|
|
76
81
|
getErrorMessage,
|
|
77
82
|
isNodeError
|
|
78
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-AVQDCKNF.js";
|
|
79
84
|
import {
|
|
80
85
|
init_esbuild_shims
|
|
81
86
|
} from "./chunk-A4BMJM77.js";
|
|
@@ -744,6 +749,18 @@ import { promises as fs2 } from "node:fs";
|
|
|
744
749
|
import path3 from "node:path";
|
|
745
750
|
import process from "node:process";
|
|
746
751
|
var debugLogger3 = createDebugLogger("GEMINI_STREAM");
|
|
752
|
+
function applyModelOverride(modelOverrideRef, inlineActiveRef, value, isInline) {
|
|
753
|
+
modelOverrideRef.current = value;
|
|
754
|
+
inlineActiveRef.current = isInline;
|
|
755
|
+
debugLogger3.debug(
|
|
756
|
+
`model override ${value === void 0 ? "cleared" : `set to ${value}`} (inline=${isInline})`
|
|
757
|
+
);
|
|
758
|
+
}
|
|
759
|
+
__name(applyModelOverride, "applyModelOverride");
|
|
760
|
+
function clearModelOverride(modelOverrideRef, inlineActiveRef) {
|
|
761
|
+
applyModelOverride(modelOverrideRef, inlineActiveRef, void 0, false);
|
|
762
|
+
}
|
|
763
|
+
__name(clearModelOverride, "clearModelOverride");
|
|
747
764
|
var MID_TURN_AT_COMMAND_RESOLVE_TIMEOUT_MS = 1e4;
|
|
748
765
|
var MID_TURN_AT_COMMAND_RESOLVE_TIMEOUT_MESSAGE = "Mid-turn @ command resolution timed out";
|
|
749
766
|
function formatVisionBridgeNotice(result) {
|
|
@@ -945,6 +962,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
945
962
|
const processedMemoryToolsRef = (0, import_react5.useRef)(/* @__PURE__ */ new Set());
|
|
946
963
|
const submitPromptOnCompleteRef = (0, import_react5.useRef)(null);
|
|
947
964
|
const modelOverrideRef = (0, import_react5.useRef)(void 0);
|
|
965
|
+
const inlineModelOverrideActiveRef = (0, import_react5.useRef)(false);
|
|
948
966
|
const handledProviderToolCallIdsRef = (0, import_react5.useRef)(/* @__PURE__ */ new Set());
|
|
949
967
|
const duplicateProviderToolCallResponseIdsRef = (0, import_react5.useRef)(
|
|
950
968
|
/* @__PURE__ */ new Set()
|
|
@@ -1130,7 +1148,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
1130
1148
|
config.getArenaAgentClient()?.reportCancelled();
|
|
1131
1149
|
const prompt_id = config.getSessionId() + "########" + getPromptCount();
|
|
1132
1150
|
const cancellationEvent = new ApiCancelEvent(
|
|
1133
|
-
config.getModel(),
|
|
1151
|
+
modelOverrideRef.current ?? config.getModel(),
|
|
1134
1152
|
prompt_id,
|
|
1135
1153
|
config.getContentGeneratorConfig()?.authType,
|
|
1136
1154
|
loopWakeupsCancelled > 0 ? loopWakeupsCancelled : void 0
|
|
@@ -1253,6 +1271,23 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
1253
1271
|
case "submit_prompt": {
|
|
1254
1272
|
localQueryToSendToGemini = slashCommandResult.content;
|
|
1255
1273
|
submitPromptOnCompleteRef.current = slashCommandResult.onComplete ?? null;
|
|
1274
|
+
if (slashCommandResult.modelOverride) {
|
|
1275
|
+
if (isInlineModelOverrideAllowed(
|
|
1276
|
+
config,
|
|
1277
|
+
slashCommandResult.modelOverride
|
|
1278
|
+
)) {
|
|
1279
|
+
applyModelOverride(
|
|
1280
|
+
modelOverrideRef,
|
|
1281
|
+
inlineModelOverrideActiveRef,
|
|
1282
|
+
slashCommandResult.modelOverride,
|
|
1283
|
+
true
|
|
1284
|
+
);
|
|
1285
|
+
} else {
|
|
1286
|
+
debugLogger3.warn(
|
|
1287
|
+
`ignoring model override '${slashCommandResult.modelOverride}': not a model on the active provider`
|
|
1288
|
+
);
|
|
1289
|
+
}
|
|
1290
|
+
}
|
|
1256
1291
|
return {
|
|
1257
1292
|
queryToSend: localQueryToSendToGemini,
|
|
1258
1293
|
shouldProceed: true
|
|
@@ -1286,6 +1321,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
1286
1321
|
id: insertedId,
|
|
1287
1322
|
text: trimmedQuery
|
|
1288
1323
|
};
|
|
1324
|
+
await new Promise((r) => setImmediate(r));
|
|
1289
1325
|
}
|
|
1290
1326
|
if (isAtCommand(trimmedQuery)) {
|
|
1291
1327
|
const atCommandResult = await handleAtCommand({
|
|
@@ -1624,7 +1660,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
1624
1660
|
addItem(
|
|
1625
1661
|
{
|
|
1626
1662
|
type: "info",
|
|
1627
|
-
text: `\u26A0
|
|
1663
|
+
text: `\u26A0 ${message}`
|
|
1628
1664
|
},
|
|
1629
1665
|
userMessageTimestamp
|
|
1630
1666
|
);
|
|
@@ -1635,13 +1671,16 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
1635
1671
|
},
|
|
1636
1672
|
[addItem, clearRetryCountdown]
|
|
1637
1673
|
);
|
|
1674
|
+
const autonomousLoopTickResolverRef = (0, import_react5.useRef)(null);
|
|
1638
1675
|
const handleChatCompressionEvent = (0, import_react5.useCallback)(
|
|
1639
1676
|
(eventValue, userMessageTimestamp) => {
|
|
1677
|
+
autonomousLoopTickResolverRef.current?.resetCache();
|
|
1640
1678
|
if (pendingHistoryItemRef.current) {
|
|
1641
1679
|
commitItem(pendingHistoryItemRef.current, userMessageTimestamp);
|
|
1642
1680
|
setPendingHistoryItem(null);
|
|
1643
1681
|
}
|
|
1644
|
-
const
|
|
1682
|
+
const activeModel = modelOverrideRef.current ?? config.getModel();
|
|
1683
|
+
const reasonClause = eventValue?.triggerReason === "image_overflow" ? `accumulated enough tool screenshots to trigger compaction for ${activeModel}` : `approached the input token limit for ${activeModel}`;
|
|
1645
1684
|
return addItem(
|
|
1646
1685
|
{
|
|
1647
1686
|
type: "info",
|
|
@@ -1666,9 +1705,9 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
1666
1705
|
(value) => addItem(
|
|
1667
1706
|
{
|
|
1668
1707
|
type: "error",
|
|
1669
|
-
text: `\
|
|
1708
|
+
text: `\u2717 Session token limit exceeded: ${value.currentTokens.toLocaleString()} tokens > ${value.limit.toLocaleString()} limit.
|
|
1670
1709
|
|
|
1671
|
-
\
|
|
1710
|
+
\u2605 Solutions:
|
|
1672
1711
|
\u2022 Start a new session: Use /clear command
|
|
1673
1712
|
\u2022 Increase limit: Add "sessionTokenLimit": (e.g., 128000) to your settings.json
|
|
1674
1713
|
\u2022 Compress history: Use /compress command to compress history`
|
|
@@ -2089,10 +2128,13 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2089
2128
|
async (query, submitType = "userQuery" /* UserQuery */, prompt_id, metadata) => {
|
|
2090
2129
|
const allowConcurrentBtwDuringResponse = submitType === "userQuery" /* UserQuery */ && streamingState === "responding" /* Responding */ && typeof query === "string" && isBtwCommand(query);
|
|
2091
2130
|
if (isSubmittingQueryRef.current && submitType !== "toolResult" /* ToolResult */ && !allowConcurrentBtwDuringResponse) {
|
|
2131
|
+
metadata?.onDeliveryFailed?.();
|
|
2092
2132
|
return;
|
|
2093
2133
|
}
|
|
2094
|
-
if ((streamingState === "responding" /* Responding */ || streamingState === "waiting_for_confirmation" /* WaitingForConfirmation */) && submitType !== "toolResult" /* ToolResult */ && !allowConcurrentBtwDuringResponse)
|
|
2134
|
+
if ((streamingState === "responding" /* Responding */ || streamingState === "waiting_for_confirmation" /* WaitingForConfirmation */) && submitType !== "toolResult" /* ToolResult */ && !allowConcurrentBtwDuringResponse) {
|
|
2135
|
+
metadata?.onDeliveryFailed?.();
|
|
2095
2136
|
return;
|
|
2137
|
+
}
|
|
2096
2138
|
isSubmittingQueryRef.current = true;
|
|
2097
2139
|
loopDetectedRef.current = false;
|
|
2098
2140
|
if (submitType !== "toolResult" /* ToolResult */ && !allowConcurrentBtwDuringResponse) {
|
|
@@ -2106,8 +2148,18 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2106
2148
|
const userMessageTimestamp = Date.now();
|
|
2107
2149
|
if (submitType !== "toolResult" /* ToolResult */ && !allowConcurrentBtwDuringResponse) {
|
|
2108
2150
|
setModelSwitchedFromQuotaError(false);
|
|
2109
|
-
|
|
2110
|
-
|
|
2151
|
+
const droppingInlineOverrideOnRetry = submitType === "retry" /* Retry */ && inlineModelOverrideActiveRef.current;
|
|
2152
|
+
if (submitType !== "retry" /* Retry */ || inlineModelOverrideActiveRef.current) {
|
|
2153
|
+
if (droppingInlineOverrideOnRetry) {
|
|
2154
|
+
addItem(
|
|
2155
|
+
{
|
|
2156
|
+
type: "info",
|
|
2157
|
+
text: `Inline model override cleared on retry \u2014 retrying on the session model (${config.getModel()}).`
|
|
2158
|
+
},
|
|
2159
|
+
userMessageTimestamp
|
|
2160
|
+
);
|
|
2161
|
+
}
|
|
2162
|
+
clearModelOverride(modelOverrideRef, inlineModelOverrideActiveRef);
|
|
2111
2163
|
}
|
|
2112
2164
|
if (pendingRetryCountdownItemRef.current || pendingRetryErrorItemRef.current) {
|
|
2113
2165
|
const pendingError = pendingRetryErrorItemRef.current;
|
|
@@ -2137,6 +2189,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2137
2189
|
);
|
|
2138
2190
|
if (!shouldProceed || queryToSend === null) {
|
|
2139
2191
|
isSubmittingQueryRef.current = false;
|
|
2192
|
+
metadata?.onDeliveryFailed?.();
|
|
2140
2193
|
return;
|
|
2141
2194
|
}
|
|
2142
2195
|
if (submitType === "userQuery" /* UserQuery */ || submitType === "cron" /* Cron */ || submitType === "teammate" /* Teammate */) {
|
|
@@ -2163,7 +2216,8 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2163
2216
|
queryToSend.length,
|
|
2164
2217
|
prompt_id,
|
|
2165
2218
|
config.getContentGeneratorConfig()?.authType,
|
|
2166
|
-
queryToSend
|
|
2219
|
+
queryToSend,
|
|
2220
|
+
modelOverrideRef.current ?? config.getModel()
|
|
2167
2221
|
)
|
|
2168
2222
|
);
|
|
2169
2223
|
}
|
|
@@ -2206,6 +2260,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2206
2260
|
if (processingStatus === 1 /* UserCancelled */) {
|
|
2207
2261
|
submitPromptOnCompleteRef.current = null;
|
|
2208
2262
|
isSubmittingQueryRef.current = false;
|
|
2263
|
+
metadata?.onDeliveryFailed?.();
|
|
2209
2264
|
return;
|
|
2210
2265
|
}
|
|
2211
2266
|
if (pendingHistoryItemRef.current) {
|
|
@@ -2228,6 +2283,11 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2228
2283
|
loopDetectedRef.current = false;
|
|
2229
2284
|
handleLoopDetectedEvent();
|
|
2230
2285
|
}
|
|
2286
|
+
if (lastPromptErroredRef.current) {
|
|
2287
|
+
metadata?.onDeliveryFailed?.();
|
|
2288
|
+
} else {
|
|
2289
|
+
metadata?.onDelivered?.();
|
|
2290
|
+
}
|
|
2231
2291
|
const onComplete = submitPromptOnCompleteRef.current;
|
|
2232
2292
|
if (onComplete) {
|
|
2233
2293
|
submitPromptOnCompleteRef.current = null;
|
|
@@ -2253,6 +2313,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2253
2313
|
}
|
|
2254
2314
|
}
|
|
2255
2315
|
} catch (error) {
|
|
2316
|
+
metadata?.onDeliveryFailed?.();
|
|
2256
2317
|
if (error instanceof UnauthorizedError) {
|
|
2257
2318
|
onAuthError("Session expired or is unauthorized.");
|
|
2258
2319
|
} else if (!isNodeError(error) || error.name !== "AbortError") {
|
|
@@ -2476,7 +2537,20 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2476
2537
|
const promptId = prompt_ids[0] ?? pendingDuplicatePromptId;
|
|
2477
2538
|
for (const toolCall of geminiTools) {
|
|
2478
2539
|
if ("modelOverride" in toolCall.response) {
|
|
2479
|
-
|
|
2540
|
+
if (inlineModelOverrideActiveRef.current) {
|
|
2541
|
+
debugLogger3.debug(
|
|
2542
|
+
`skill-tool model override (${String(
|
|
2543
|
+
toolCall.response.modelOverride
|
|
2544
|
+
)}) blocked: inline override active`
|
|
2545
|
+
);
|
|
2546
|
+
} else {
|
|
2547
|
+
applyModelOverride(
|
|
2548
|
+
modelOverrideRef,
|
|
2549
|
+
inlineModelOverrideActiveRef,
|
|
2550
|
+
toolCall.response.modelOverride,
|
|
2551
|
+
false
|
|
2552
|
+
);
|
|
2553
|
+
}
|
|
2480
2554
|
}
|
|
2481
2555
|
}
|
|
2482
2556
|
if (dualOutput) {
|
|
@@ -2763,6 +2837,10 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2763
2837
|
}, [toolCalls, config, onDebugMessage, history, geminiClient, storage]);
|
|
2764
2838
|
const notificationQueueRef = (0, import_react5.useRef)([]);
|
|
2765
2839
|
const [notificationTrigger, setNotificationTrigger] = (0, import_react5.useState)(0);
|
|
2840
|
+
const getAutonomousLoopTickResolver = (0, import_react5.useCallback)(() => {
|
|
2841
|
+
autonomousLoopTickResolverRef.current ??= new AutonomousLoopTickResolver();
|
|
2842
|
+
return autonomousLoopTickResolverRef.current;
|
|
2843
|
+
}, []);
|
|
2766
2844
|
const notificationQueueSessionIdRef = (0, import_react5.useRef)(sessionStates.sessionId);
|
|
2767
2845
|
(0, import_react5.useEffect)(() => {
|
|
2768
2846
|
if (notificationQueueSessionIdRef.current === sessionStates.sessionId) {
|
|
@@ -2770,6 +2848,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2770
2848
|
}
|
|
2771
2849
|
notificationQueueSessionIdRef.current = sessionStates.sessionId;
|
|
2772
2850
|
notificationQueueRef.current = [];
|
|
2851
|
+
autonomousLoopTickResolverRef.current?.resetCache();
|
|
2773
2852
|
}, [sessionStates.sessionId]);
|
|
2774
2853
|
const cronSessionIdRef = (0, import_react5.useRef)(sessionStates.sessionId);
|
|
2775
2854
|
cronSessionIdRef.current = sessionStates.sessionId;
|
|
@@ -2789,11 +2868,28 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2789
2868
|
if (stopped) return;
|
|
2790
2869
|
scheduler.start(
|
|
2791
2870
|
(job) => {
|
|
2792
|
-
const label = job.prompt.slice(0, 40);
|
|
2793
2871
|
const source = job.cronExpr === "@wakeup" ? "Loop" : "Cron";
|
|
2872
|
+
const autonomousMode = detectAutonomousSentinel(job.prompt);
|
|
2873
|
+
let label = job.prompt.slice(0, 40);
|
|
2874
|
+
let modelText = job.prompt;
|
|
2875
|
+
if (autonomousMode) {
|
|
2876
|
+
if (job.missed) return;
|
|
2877
|
+
const resolver = getAutonomousLoopTickResolver();
|
|
2878
|
+
const tick = resolver.resolveAutonomous(autonomousMode);
|
|
2879
|
+
label = "Autonomous loop tick";
|
|
2880
|
+
modelText = tick.modelText;
|
|
2881
|
+
notificationQueueRef.current.push({
|
|
2882
|
+
displayText: `${job.missed ? "Missed" : source}: ${label}`,
|
|
2883
|
+
modelText,
|
|
2884
|
+
sendMessageType: "cron" /* Cron */,
|
|
2885
|
+
onDelivered: /* @__PURE__ */ __name(() => resolver.markDelivered(), "onDelivered")
|
|
2886
|
+
});
|
|
2887
|
+
setNotificationTrigger((n) => n + 1);
|
|
2888
|
+
return;
|
|
2889
|
+
}
|
|
2794
2890
|
notificationQueueRef.current.push({
|
|
2795
2891
|
displayText: `${job.missed ? "Missed" : source}: ${label}`,
|
|
2796
|
-
modelText
|
|
2892
|
+
modelText,
|
|
2797
2893
|
sendMessageType: "cron" /* Cron */
|
|
2798
2894
|
});
|
|
2799
2895
|
setNotificationTrigger((n) => n + 1);
|
|
@@ -2808,7 +2904,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2808
2904
|
process.stderr.write(summary + "\n");
|
|
2809
2905
|
}
|
|
2810
2906
|
};
|
|
2811
|
-
}, [config, isConfigInitialized]);
|
|
2907
|
+
}, [config, getAutonomousLoopTickResolver, isConfigInitialized]);
|
|
2812
2908
|
(0, import_react5.useEffect)(() => {
|
|
2813
2909
|
const registry = config.getBackgroundTaskRegistry();
|
|
2814
2910
|
registry.setNotificationCallback((displayText, modelText) => {
|
|
@@ -2866,7 +2962,9 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
2866
2962
|
Date.now()
|
|
2867
2963
|
);
|
|
2868
2964
|
submitQuery(item.modelText, item.sendMessageType, void 0, {
|
|
2869
|
-
notificationDisplayText: item.displayText
|
|
2965
|
+
notificationDisplayText: item.displayText,
|
|
2966
|
+
onDelivered: item.onDelivered,
|
|
2967
|
+
onDeliveryFailed: item.onDeliveryFailed
|
|
2870
2968
|
});
|
|
2871
2969
|
return;
|
|
2872
2970
|
}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
// Force strict mode and setup for ESM
|
|
2
2
|
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
require_safer
|
|
5
|
+
} from "./chunk-SYCJMSIJ.js";
|
|
3
6
|
import {
|
|
4
7
|
init_esbuild_shims
|
|
5
8
|
} from "./chunk-A4BMJM77.js";
|
|
@@ -9,75 +12,6 @@ import {
|
|
|
9
12
|
__require
|
|
10
13
|
} from "./chunk-J2S4EL5Y.js";
|
|
11
14
|
|
|
12
|
-
// node_modules/safer-buffer/safer.js
|
|
13
|
-
var require_safer = __commonJS({
|
|
14
|
-
"node_modules/safer-buffer/safer.js"(exports, module) {
|
|
15
|
-
"use strict";
|
|
16
|
-
init_esbuild_shims();
|
|
17
|
-
var buffer = __require("buffer");
|
|
18
|
-
var Buffer = buffer.Buffer;
|
|
19
|
-
var safer = {};
|
|
20
|
-
var key;
|
|
21
|
-
for (key in buffer) {
|
|
22
|
-
if (!buffer.hasOwnProperty(key)) continue;
|
|
23
|
-
if (key === "SlowBuffer" || key === "Buffer") continue;
|
|
24
|
-
safer[key] = buffer[key];
|
|
25
|
-
}
|
|
26
|
-
var Safer = safer.Buffer = {};
|
|
27
|
-
for (key in Buffer) {
|
|
28
|
-
if (!Buffer.hasOwnProperty(key)) continue;
|
|
29
|
-
if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue;
|
|
30
|
-
Safer[key] = Buffer[key];
|
|
31
|
-
}
|
|
32
|
-
safer.Buffer.prototype = Buffer.prototype;
|
|
33
|
-
if (!Safer.from || Safer.from === Uint8Array.from) {
|
|
34
|
-
Safer.from = function(value, encodingOrOffset, length) {
|
|
35
|
-
if (typeof value === "number") {
|
|
36
|
-
throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value);
|
|
37
|
-
}
|
|
38
|
-
if (value && typeof value.length === "undefined") {
|
|
39
|
-
throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value);
|
|
40
|
-
}
|
|
41
|
-
return Buffer(value, encodingOrOffset, length);
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
if (!Safer.alloc) {
|
|
45
|
-
Safer.alloc = function(size, fill, encoding) {
|
|
46
|
-
if (typeof size !== "number") {
|
|
47
|
-
throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size);
|
|
48
|
-
}
|
|
49
|
-
if (size < 0 || size >= 2 * (1 << 30)) {
|
|
50
|
-
throw new RangeError('The value "' + size + '" is invalid for option "size"');
|
|
51
|
-
}
|
|
52
|
-
var buf = Buffer(size);
|
|
53
|
-
if (!fill || fill.length === 0) {
|
|
54
|
-
buf.fill(0);
|
|
55
|
-
} else if (typeof encoding === "string") {
|
|
56
|
-
buf.fill(fill, encoding);
|
|
57
|
-
} else {
|
|
58
|
-
buf.fill(fill);
|
|
59
|
-
}
|
|
60
|
-
return buf;
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
if (!safer.kStringMaxLength) {
|
|
64
|
-
try {
|
|
65
|
-
safer.kStringMaxLength = process.binding("buffer").kStringMaxLength;
|
|
66
|
-
} catch (e) {
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
if (!safer.constants) {
|
|
70
|
-
safer.constants = {
|
|
71
|
-
MAX_LENGTH: safer.kMaxLength
|
|
72
|
-
};
|
|
73
|
-
if (safer.kStringMaxLength) {
|
|
74
|
-
safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
module.exports = safer;
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
|
|
81
15
|
// node_modules/iconv-lite/lib/bom-handling.js
|
|
82
16
|
var require_bom_handling = __commonJS({
|
|
83
17
|
"node_modules/iconv-lite/lib/bom-handling.js"(exports) {
|
|
@@ -3698,6 +3632,5 @@ var require_lib = __commonJS({
|
|
|
3698
3632
|
});
|
|
3699
3633
|
|
|
3700
3634
|
export {
|
|
3701
|
-
require_safer,
|
|
3702
3635
|
require_lib
|
|
3703
3636
|
};
|