@qwen-code/qwen-code 0.19.5 → 0.19.6-nightly.20260704.5dc2e1501

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.
Files changed (235) hide show
  1. package/bundled/dataviz/SKILL.md +50 -0
  2. package/bundled/dataviz/references/anti-patterns.md +12 -0
  3. package/bundled/dataviz/references/choosing-a-form.md +16 -0
  4. package/bundled/dataviz/references/palette.md +57 -0
  5. package/bundled/dataviz/scripts/validate_palette.js +328 -0
  6. package/bundled/loop/SKILL.md +1 -1
  7. package/bundled/qc-helper/docs/configuration/settings.md +9 -8
  8. package/bundled/qc-helper/docs/features/headless.md +2 -2
  9. package/bundled/qc-helper/docs/features/scheduled-tasks.md +4 -2
  10. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
  11. package/bundled/review/DESIGN.md +23 -0
  12. package/bundled/review/SKILL.md +65 -8
  13. package/chunks/{MaxSizedBox-5JV77KRA.js → MaxSizedBox-44K34KSF.js} +14 -14
  14. package/chunks/{StandaloneSessionPicker-MGUGB6PH.js → StandaloneSessionPicker-6WZYYTZE.js} +25 -25
  15. package/chunks/{acpAgent-4F36XM3X.js → acpAgent-2CMYPFHV.js} +346 -131
  16. package/chunks/{agent-IWBUZI6A.js → agent-UOEAYBCX.js} +11 -11
  17. package/chunks/{agent-headless-JUTICAYO.js → agent-headless-7SCVZZGJ.js} +11 -11
  18. package/chunks/{anthropicContentGenerator-WL3LJOUB.js → anthropicContentGenerator-H5ZOEENQ.js} +2 -2
  19. package/chunks/{artifact-tool-W76WC2JX.js → artifact-tool-SLYPWG3C.js} +15 -2
  20. package/chunks/{askUserQuestion-J3P6TH3V.js → askUserQuestion-OKPTECON.js} +1 -1
  21. package/chunks/{bridge-DHZHQ4UV.js → bridge-IGX2XPWV.js} +17 -16
  22. package/chunks/{channel-worker-supervisor-EVPAYNZ5.js → channel-worker-supervisor-JUYQ5Z4R.js} +5 -5
  23. package/chunks/{chunk-EROWZQN7.js → chunk-2HK52TS2.js} +6 -6
  24. package/chunks/chunk-3RW4AZJV.js +5063 -0
  25. package/chunks/chunk-3VJ7MT3N.js +111 -0
  26. package/chunks/{chunk-JJ6B3ZD3.js → chunk-3ZSJDRNO.js} +2 -2
  27. package/chunks/{chunk-SJVPSHXU.js → chunk-4OIKNWUQ.js} +4 -4
  28. package/chunks/{chunk-PPFWEV7G.js → chunk-4RQIB5UZ.js} +62 -62
  29. package/chunks/{chunk-MDBNFHIO.js → chunk-4YMVQKCZ.js} +3 -3
  30. package/chunks/{chunk-2YH27UNF.js → chunk-4YXBDLX7.js} +1 -1
  31. package/chunks/{chunk-6QVQZAW6.js → chunk-537ZUZEH.js} +1 -1
  32. package/chunks/{chunk-L7OJ3ZO3.js → chunk-5ES5YPED.js} +1 -1
  33. package/chunks/{chunk-UJT42DB6.js → chunk-5QC7Y5TJ.js} +5 -5
  34. package/chunks/{chunk-BC4R5C5R.js → chunk-5WYLPENX.js} +32 -6
  35. package/chunks/{chunk-7DMQRPC7.js → chunk-6BEOH4KK.js} +1 -1
  36. package/chunks/{chunk-CXBG27SF.js → chunk-6IAWPIQ6.js} +3 -2
  37. package/chunks/{chunk-RM3PGSGL.js → chunk-6SHO7WFF.js} +15 -2
  38. package/chunks/{chunk-CBJE2PLG.js → chunk-777PHAJF.js} +2 -2
  39. package/chunks/{chunk-NSSVORTQ.js → chunk-7UU2AGR4.js} +16 -12
  40. package/chunks/{chunk-RNGAT2Y2.js → chunk-AGLMKJH5.js} +1 -1
  41. package/chunks/{chunk-J3ERRYYI.js → chunk-AWSTZHHZ.js} +2 -2
  42. package/chunks/{chunk-6QTCOQX7.js → chunk-B5ZACOMA.js} +1967 -1399
  43. package/chunks/{chunk-R6RI2HIC.js → chunk-CLQPBI4H.js} +40 -13
  44. package/chunks/{chunk-SJBIFVD2.js → chunk-DMSNJDWG.js} +5 -1
  45. package/chunks/{chunk-KKQWC6WS.js → chunk-DNV4FSN5.js} +1 -1
  46. package/chunks/{chunk-Z7XNVNPM.js → chunk-EMSRFDBD.js} +1 -1
  47. package/chunks/{chunk-HISPEX42.js → chunk-G645A66S.js} +7 -7
  48. package/chunks/{chunk-WALEWZ44.js → chunk-H3GBYW5M.js} +1 -1
  49. package/chunks/{chunk-2Z43HUXT.js → chunk-HLKG6CZN.js} +3 -2
  50. package/chunks/{chunk-XKZXGIRM.js → chunk-HNGXPBWR.js} +2 -2
  51. package/chunks/{chunk-QHYITL6P.js → chunk-HXX7S2AE.js} +5 -11
  52. package/chunks/{chunk-XKSCTXPK.js → chunk-J6ABRKAB.js} +2 -1
  53. package/chunks/{chunk-DX3TKXNT.js → chunk-JA5KWZTJ.js} +1 -1
  54. package/chunks/{chunk-4MCC4XHH.js → chunk-KBKWNEPS.js} +38 -37
  55. package/chunks/{chunk-MNOXKSM2.js → chunk-KEKV2TOO.js} +1 -1
  56. package/chunks/{chunk-R3UWLLRQ.js → chunk-KP6O77UN.js} +1 -1
  57. package/chunks/{chunk-YTFBURQD.js → chunk-KYTQOCDE.js} +1 -1
  58. package/chunks/{chunk-TN6RT6EJ.js → chunk-LJUWNRJH.js} +16 -4
  59. package/chunks/{chunk-BPFJQGY7.js → chunk-LM3YCCZJ.js} +164 -5
  60. package/chunks/{chunk-G4M7FPNY.js → chunk-M6IUEDXM.js} +1 -1
  61. package/chunks/{chunk-MTNTVOJR.js → chunk-MJKMIQMK.js} +5 -2
  62. package/chunks/{chunk-2CAII5HD.js → chunk-MWGIMAYM.js} +1 -1
  63. package/chunks/{chunk-NDY7OENU.js → chunk-N3QDCSLP.js} +2 -2
  64. package/chunks/{chunk-IMAMNLY6.js → chunk-N6AGVKMC.js} +3 -3
  65. package/chunks/{chunk-WZ724G6K.js → chunk-NGCPNXJC.js} +5 -5
  66. package/chunks/{chunk-YXK4GPYO.js → chunk-NVFJSIAX.js} +29 -0
  67. package/chunks/{chunk-6KPZJJ6U.js → chunk-P2OIJOKP.js} +9 -9
  68. package/chunks/{chunk-RSBQS6M4.js → chunk-P2RRV2UB.js} +1 -1
  69. package/chunks/{chunk-NNEJEBCF.js → chunk-PGMCFUZS.js} +30 -21
  70. package/chunks/{chunk-CSPSJU5R.js → chunk-PNGENHT7.js} +16 -16
  71. package/chunks/{chunk-Y4UQT3PM.js → chunk-QQXG2BL6.js} +1 -1
  72. package/chunks/{chunk-M5ITDKSM.js → chunk-RUM2UEL3.js} +1 -1
  73. package/chunks/{chunk-DG573EOO.js → chunk-RZORUN6X.js} +1 -1
  74. package/chunks/{chunk-LHMZCIKL.js → chunk-SZFYG244.js} +3 -1
  75. package/chunks/{chunk-CHY5C5T4.js → chunk-TDMIHT6B.js} +171 -79
  76. package/chunks/{chunk-DRS2HTNT.js → chunk-TE6JTKY5.js} +5 -5
  77. package/chunks/chunk-U7UXWKGG.js +949 -0
  78. package/chunks/{chunk-JKGCBO3O.js → chunk-UPYORLKQ.js} +3 -3
  79. package/chunks/{chunk-UY2TCIZS.js → chunk-V5VTULL5.js} +2 -2
  80. package/chunks/{chunk-ZISMVA6U.js → chunk-WGCLCXAN.js} +1371 -24
  81. package/chunks/chunk-WSOGYJMT.js +5630 -0
  82. package/chunks/{chunk-SBMHB6N5.js → chunk-WWGZJJRG.js} +12 -12
  83. package/chunks/{chunk-DM4E337C.js → chunk-X3UQVEBR.js} +4 -4
  84. package/chunks/{chunk-K4I4STSL.js → chunk-XPOO5OMB.js} +2 -2
  85. package/chunks/{chunk-5B2WNM6V.js → chunk-ZI4MGBB5.js} +1 -1
  86. package/chunks/{chunk-OQHLUA2Y.js → chunk-ZLJKZ57K.js} +3 -3
  87. package/chunks/{chunk-YCU7QV7Q.js → chunk-ZZDAIAA6.js} +32 -0
  88. package/chunks/{computer-use-ON3JQUHW.js → computer-use-TQWGUBPQ.js} +11 -11
  89. package/chunks/{contextCommand-OGCG7W6N.js → contextCommand-XDK5RNWI.js} +13 -13
  90. package/chunks/{cron-create-6YTCOX6P.js → cron-create-7JYUDTUY.js} +20 -5
  91. package/chunks/{cron-delete-E3NIFSUK.js → cron-delete-YPULQQAK.js} +2 -2
  92. package/chunks/{cron-list-Q64MNQNE.js → cron-list-HJIW5MHP.js} +2 -2
  93. package/chunks/{daemon-EEB2RYOL.js → daemon-7XYW4BC3.js} +102 -0
  94. package/chunks/{daemon-status-provider-P72STMLB.js → daemon-status-provider-6UEN56WN.js} +20 -19
  95. package/chunks/{dist-AP5V4WYU.js → dist-AAO65DPC.js} +2 -2
  96. package/chunks/{dist-X4ZDE726.js → dist-ABQ7VWRR.js} +3 -3
  97. package/chunks/{dist-SNXOUPYS.js → dist-AW5ZYMUI.js} +2 -2
  98. package/chunks/{dist-Z57Q4YF5.js → dist-BV56HW3W.js} +276 -95
  99. package/chunks/{dist-IZP2VV4C.js → dist-JPSVN367.js} +2 -2
  100. package/chunks/{earlyInputCapture-DAFHSGVW.js → earlyInputCapture-7MNFMUJE.js} +11 -11
  101. package/chunks/{edit-3QFNCSZH.js → edit-HOC63PHG.js} +12 -12
  102. package/chunks/{en-M4EBUBNU.js → en-XR3S5VWY.js} +1 -0
  103. package/chunks/{enter-worktree-62EQQMLD.js → enter-worktree-THXLMUX2.js} +11 -11
  104. package/chunks/{enterPlanMode-VUQSE4EG.js → enterPlanMode-TW4WQVEI.js} +11 -11
  105. package/chunks/{errors-PW75PZXE.js → errors-NTNVSC6G.js} +13 -13
  106. package/chunks/{exit-worktree-VVNH7OVY.js → exit-worktree-CLL7RGAT.js} +11 -11
  107. package/chunks/{exitPlanMode-RUYRCYZW.js → exitPlanMode-BTZZ3QEL.js} +11 -11
  108. package/chunks/{fast-path-TFRJRTTR.js → fast-path-RYXBU6AS.js} +3 -3
  109. package/chunks/{fast-path-settings-UQLRFDQP.js → fast-path-settings-RCRXH2JG.js} +2 -2
  110. package/chunks/{gemini-XW7ZDUVR.js → gemini-36FE3OHS.js} +69 -64
  111. package/chunks/{geminiContentGenerator-MZDVHVZH.js → geminiContentGenerator-JEG2PANG.js} +1 -1
  112. package/chunks/{glob-WAY2PUWA.js → glob-EYVHOFCY.js} +11 -11
  113. package/chunks/{grep-W6CBKSYC.js → grep-TZY5TDGH.js} +11 -11
  114. package/chunks/{initializer-HK2XE6P2.js → initializer-HPF2RBSB.js} +16 -16
  115. package/chunks/{list-RVLIIKKL.js → list-THUTQ7B5.js} +18 -18
  116. package/chunks/{loadedSettingsAdapter-C63OUYZC.js → loadedSettingsAdapter-CUMWJNWJ.js} +16 -16
  117. package/chunks/{loop-wakeup-G2EHBRGR.js → loop-wakeup-34YK7T7O.js} +3 -3
  118. package/chunks/{ls-IDHUVSAG.js → ls-MPD5OJUX.js} +1 -1
  119. package/chunks/{lsp-FSRYXGFT.js → lsp-72PWTDW7.js} +1 -1
  120. package/chunks/{workspace-skills-status-ONEPXJV6.js → mcp-NQD5MT2T.js} +20 -16
  121. package/chunks/{monitor-FOG36ABM.js → monitor-PB7NVSG2.js} +11 -11
  122. package/chunks/{nonInteractiveCli-6BYQSJTB.js → nonInteractiveCli-F5FJXYQR.js} +46 -44
  123. package/chunks/{notebook-edit-GC6NXRCX.js → notebook-edit-LAK6OHS6.js} +12 -12
  124. package/chunks/{openaiContentGenerator-EXR3ZL3Z.js → openaiContentGenerator-GMMEY5PG.js} +6 -6
  125. package/chunks/{pidfile-FNZM2DDH.js → pidfile-NQ2YUNKI.js} +11 -11
  126. package/chunks/{qwenContentGenerator-A7B6J4U7.js → qwenContentGenerator-7XCBMQBM.js} +13 -13
  127. package/chunks/{read-file-6JL4ULMY.js → read-file-KUROJDUQ.js} +3 -3
  128. package/chunks/{read-mcp-resource-PIJF24RO.js → read-mcp-resource-OWOBJY72.js} +1 -1
  129. package/chunks/record-artifact-URK3YUDJ.js +343 -0
  130. package/chunks/{ripGrep-DIUGLJE5.js → ripGrep-USDWBX4L.js} +11 -11
  131. package/chunks/{run-qwen-serve-CME3AKM4.js → run-qwen-serve-WKCKS23N.js} +72 -28
  132. package/chunks/{scheduler-L7F6GDDT.js → scheduler-QR4F5TAH.js} +11 -11
  133. package/chunks/{send-message-33PYFMCT.js → send-message-L7OLQEKH.js} +2 -2
  134. package/chunks/{serve-SRCBOJGP.js → serve-2EIPX62G.js} +18 -18
  135. package/chunks/{server-QSQ45QFR.js → server-UJ7ZF5D7.js} +1184 -490
  136. package/chunks/{session-5DG6NXHZ.js → session-XB3CFJ6R.js} +48 -46
  137. package/chunks/{settings-3EEQI4MN.js → settings-DYVJFW5H.js} +15 -15
  138. package/chunks/{shell-B7FNYF5S.js → shell-IG7KGPLR.js} +11 -11
  139. package/chunks/{skill-AAOGHD5O.js → skill-RWX646DC.js} +4 -4
  140. package/chunks/{spawnChannel-3CBN3ZLK.js → spawnChannel-GWIJHDZ5.js} +15 -15
  141. package/chunks/{src-T5A7P7FS.js → src-IYODJOVK.js} +47 -21
  142. package/chunks/{startInteractiveUI-2FGEQ6AS.js → startInteractiveUI-PLEZAI44.js} +354 -152
  143. package/chunks/{syntheticOutput-YOSWIHDJ.js → syntheticOutput-J3MLCQAR.js} +2 -2
  144. package/chunks/{task-create-NHS2NGB3.js → task-create-ELEBZ7H2.js} +3 -3
  145. package/chunks/{task-list-5UIB564R.js → task-list-IEUZLF3Y.js} +1 -1
  146. package/chunks/{task-stop-HGXZ2VZ3.js → task-stop-QEZW3UDY.js} +1 -1
  147. package/chunks/{task-update-IYYWUILG.js → task-update-DW36J5P5.js} +3 -3
  148. package/chunks/{team-create-KDF6W6PV.js → team-create-RXRE7FCH.js} +11 -11
  149. package/chunks/{team-delete-FEKJCU4P.js → team-delete-SVITIMBO.js} +1 -1
  150. package/chunks/{team-plan-approval-PSFKQX7M.js → team-plan-approval-OJDMQXOK.js} +11 -11
  151. package/chunks/{theme-manager-5XOA2AO7.js → theme-manager-QBK6PZOQ.js} +11 -11
  152. package/chunks/{todoWrite-TKMVZ2HT.js → todoWrite-SFFQHZYY.js} +2 -2
  153. package/chunks/{tool-search-LFRILZXC.js → tool-search-EZQYPVFF.js} +4 -4
  154. package/chunks/{trustedFolders-7HQY6T6X.js → trustedFolders-GZDMSATB.js} +12 -12
  155. package/chunks/{validateNonInterActiveAuth-UC27B7BA.js → validateNonInterActiveAuth-AHXCFAV6.js} +43 -41
  156. package/chunks/version-KQ5CA4C5.js +10 -0
  157. package/chunks/{web-fetch-J4PIW36Q.js → web-fetch-SXAXJHIO.js} +2 -2
  158. package/chunks/{workflow-KUTESS6L.js → workflow-KUBRBYWH.js} +20 -13
  159. package/chunks/{workspace-providers-status-LJT5AQDS.js → workspace-providers-status-LRMZ4KYI.js} +18 -18
  160. package/chunks/{workspace-service-YOBYVDXH.js → workspace-service-5UYFHP42.js} +23 -23
  161. package/chunks/workspace-skills-status-TKLU5O2X.js +68 -0
  162. package/chunks/{write-file-FJYBZUHP.js → write-file-37LNLFQC.js} +12 -12
  163. package/chunks/yargs-B64EYTCF.js +10 -0
  164. package/chunks/{zh-SLZNSSZB.js → zh-FSVJTXA4.js} +1 -0
  165. package/chunks/{zh-TW-P53C2SL5.js → zh-TW-66MG4LWL.js} +1 -0
  166. package/cli-entry.js +81 -8
  167. package/cli.js +348 -55
  168. package/locales/en.js +1 -0
  169. package/locales/zh-TW.js +1 -0
  170. package/locales/zh.js +1 -0
  171. package/node_modules/@qwen-code/audio-capture/package.json +1 -1
  172. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
  173. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
  174. package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
  175. package/package.json +3 -3
  176. package/web-shell/assets/{arc-D_rAuMDd.js → arc-CUpe0ibu.js} +1 -1
  177. package/web-shell/assets/{architectureDiagram-3BPJPVTR-DUCzbHVo.js → architectureDiagram-3BPJPVTR-JvyrY_mK.js} +1 -1
  178. package/web-shell/assets/{blockDiagram-GPEHLZMM-BEEBt1LL.js → blockDiagram-GPEHLZMM-CK3Y_vom.js} +1 -1
  179. package/web-shell/assets/{c4Diagram-AAUBKEIU-5ZJ_DeFL.js → c4Diagram-AAUBKEIU-DprSnyrf.js} +1 -1
  180. package/web-shell/assets/channel-BAxQ2-aZ.js +1 -0
  181. package/web-shell/assets/{chunk-2J33WTMH-Cfw7EiLn.js → chunk-2J33WTMH-DJtRJPmu.js} +1 -1
  182. package/web-shell/assets/{chunk-4BX2VUAB-FGuZNCZY.js → chunk-4BX2VUAB-ON6Q2-BG.js} +1 -1
  183. package/web-shell/assets/{chunk-55IACEB6-CaBwYPBF.js → chunk-55IACEB6-c60ou5HZ.js} +1 -1
  184. package/web-shell/assets/{chunk-727SXJPM-BlR04OFz.js → chunk-727SXJPM-BamtPKxx.js} +1 -1
  185. package/web-shell/assets/{chunk-AQP2D5EJ-D3_mYJH5.js → chunk-AQP2D5EJ-CsVgpu-T.js} +1 -1
  186. package/web-shell/assets/{chunk-FMBD7UC4-7D4q4SbB.js → chunk-FMBD7UC4-vZrpjAx4.js} +1 -1
  187. package/web-shell/assets/{chunk-ND2GUHAM-BjX_Iwmr.js → chunk-ND2GUHAM-qxyNOd5t.js} +1 -1
  188. package/web-shell/assets/{chunk-QZHKN3VN-C3Hz_ZQh.js → chunk-QZHKN3VN-BvTJSM_S.js} +1 -1
  189. package/web-shell/assets/classDiagram-4FO5ZUOK-Cvd_xhZI.js +1 -0
  190. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-Cvd_xhZI.js +1 -0
  191. package/web-shell/assets/{cose-bilkent-S5V4N54A-Ax4UycaT.js → cose-bilkent-S5V4N54A-1tXB4pju.js} +1 -1
  192. package/web-shell/assets/{dagre-BM42HDAG-C6hmPtGt.js → dagre-BM42HDAG-DglBzme8.js} +1 -1
  193. package/web-shell/assets/{diagram-2AECGRRQ-tXZnxjmw.js → diagram-2AECGRRQ-DEJpqsWz.js} +1 -1
  194. package/web-shell/assets/{diagram-5GNKFQAL-99dwIzQG.js → diagram-5GNKFQAL-CsQ1NrMG.js} +1 -1
  195. package/web-shell/assets/{diagram-KO2AKTUF-Bqhn0-2s.js → diagram-KO2AKTUF-Z-3codAi.js} +1 -1
  196. package/web-shell/assets/{diagram-LMA3HP47-DzThVSvo.js → diagram-LMA3HP47-mBuPTA2i.js} +1 -1
  197. package/web-shell/assets/{diagram-OG6HWLK6-DPE8vjln.js → diagram-OG6HWLK6-tcA3K3s9.js} +1 -1
  198. package/web-shell/assets/{erDiagram-TEJ5UH35-KzUKgQCV.js → erDiagram-TEJ5UH35-D9bXFRyZ.js} +1 -1
  199. package/web-shell/assets/{flowDiagram-I6XJVG4X-DBN-DXw5.js → flowDiagram-I6XJVG4X-Ck0Py04s.js} +1 -1
  200. package/web-shell/assets/{ganttDiagram-6RSMTGT7-DuBsP9u8.js → ganttDiagram-6RSMTGT7-rOevCekE.js} +1 -1
  201. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-BjWHMyKR.js → gitGraphDiagram-PVQCEYII-CoPQaLj0.js} +1 -1
  202. package/web-shell/assets/index-Cr7MYW6T.css +5 -0
  203. package/web-shell/assets/index-DCHPAUp3.js +730 -0
  204. package/web-shell/assets/{infoDiagram-5YYISTIA-BVux0vP6.js → infoDiagram-5YYISTIA-a77CUKoI.js} +1 -1
  205. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-2qzw7f--.js → ishikawaDiagram-YF4QCWOH-DlLgUAO-.js} +1 -1
  206. package/web-shell/assets/{journeyDiagram-JHISSGLW-Dnl65sxL.js → journeyDiagram-JHISSGLW-BXR5kVAZ.js} +1 -1
  207. package/web-shell/assets/{kanban-definition-UN3LZRKU-BElSQYtY.js → kanban-definition-UN3LZRKU-h5CoHZg7.js} +1 -1
  208. package/web-shell/assets/{linear-BjoycSSY.js → linear-BkaREbyD.js} +1 -1
  209. package/web-shell/assets/{mermaid.core-xe6bvMRz.js → mermaid.core-Bkagz0ng.js} +5 -5
  210. package/web-shell/assets/{mindmap-definition-RKZ34NQL-D8DQgI4U.js → mindmap-definition-RKZ34NQL-D7EMKR_5.js} +1 -1
  211. package/web-shell/assets/{pieDiagram-4H26LBE5-Dwh7Gp7c.js → pieDiagram-4H26LBE5-DAmPOjsL.js} +1 -1
  212. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-BXKNBln2.js → quadrantDiagram-W4KKPZXB-e4WFQkQu.js} +1 -1
  213. package/web-shell/assets/{requirementDiagram-4Y6WPE33-BzaC3cIA.js → requirementDiagram-4Y6WPE33-v1zo7OiV.js} +1 -1
  214. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-DP2t7eZk.js → sankeyDiagram-5OEKKPKP-Bstm4aW_.js} +1 -1
  215. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-XlFiWEYv.js → sequenceDiagram-3UESZ5HK-DzcZy6xN.js} +1 -1
  216. package/web-shell/assets/{stateDiagram-AJRCARHV-CupgUMJO.js → stateDiagram-AJRCARHV-BEJH6YbH.js} +1 -1
  217. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BopifCBI.js +1 -0
  218. package/web-shell/assets/{timeline-definition-PNZ67QCA-DstuGywa.js → timeline-definition-PNZ67QCA-TI1wH-Pm.js} +1 -1
  219. package/web-shell/assets/{vennDiagram-CIIHVFJN-CnbNp6zu.js → vennDiagram-CIIHVFJN-YaH8VDMS.js} +1 -1
  220. package/web-shell/assets/{wardley-L42UT6IY-DnvoHq6R.js → wardley-L42UT6IY-B80co7OP.js} +1 -1
  221. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-Cz0xHEWB.js → wardleyDiagram-YWT4CUSO-4fHNDEMl.js} +1 -1
  222. package/web-shell/assets/{xychartDiagram-2RQKCTM6-p36gfo88.js → xychartDiagram-2RQKCTM6-DT3q4Z3J.js} +1 -1
  223. package/web-shell/index.html +2 -2
  224. package/bundled/loop/SKILL.test.ts +0 -119
  225. package/bundled/loop/autonomous-loop.test.ts +0 -59
  226. package/bundled/loop/loop-task-file.test.ts +0 -1064
  227. package/bundled/loop/loop-tick-resolver.test.ts +0 -906
  228. package/chunks/chunk-EJ7BN3EN.js +0 -11396
  229. package/web-shell/assets/channel-B5ynH0q8.js +0 -1
  230. package/web-shell/assets/classDiagram-4FO5ZUOK-CK3ibywp.js +0 -1
  231. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CK3ibywp.js +0 -1
  232. package/web-shell/assets/index-9qfvU0_r.css +0 -5
  233. package/web-shell/assets/index-CWzDaQT5.js +0 -717
  234. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-By3E4QwN.js +0 -1
  235. package/chunks/{chunk-UFC57OYT.js → chunk-VRDMOSQS.js} +54 -54
@@ -15,10 +15,10 @@ import {
15
15
  readCronTasks,
16
16
  removeCronTasks,
17
17
  updateCronTasks
18
- } from "./chunk-SJBIFVD2.js";
18
+ } from "./chunk-DMSNJDWG.js";
19
19
  import {
20
20
  ToolNames
21
- } from "./chunk-MTNTVOJR.js";
21
+ } from "./chunk-MJKMIQMK.js";
22
22
  import {
23
23
  Storage,
24
24
  createDebugLogger,
@@ -139,7 +139,13 @@ __name(releaseLock, "releaseLock");
139
139
  // packages/core/src/services/cronScheduler.ts
140
140
  var debugLogger = createDebugLogger("CRON_SCHEDULER");
141
141
  var MAX_JOBS = 50;
142
- var RECURRING_MAX_AGE_MS = 7 * 24 * 60 * 60 * 1e3;
142
+ var DEFAULT_RECURRING_MAX_AGE_DAYS = 7;
143
+ var DEFAULT_RECURRING_MAX_AGE_MS = DEFAULT_RECURRING_MAX_AGE_DAYS * 24 * 60 * 60 * 1e3;
144
+ function normalizeRecurringMaxAge(value, fallback) {
145
+ if (value === 0) return Infinity;
146
+ return value > 0 ? value : fallback;
147
+ }
148
+ __name(normalizeRecurringMaxAge, "normalizeRecurringMaxAge");
143
149
  var MAX_RECURRING_JITTER_MS = 15 * 60 * 1e3;
144
150
  var MAX_ONESHOT_JITTER_MS = 90 * 1e3;
145
151
  var LOCK_PROBE_INTERVAL_MS = 5e3;
@@ -218,9 +224,18 @@ __name(truncatePrompt, "truncatePrompt");
218
224
  var CronScheduler = class {
219
225
  /** `projectRoot` anchors durable storage; without it only session-only
220
226
  * jobs work. Production constructs via `Config.getCronScheduler()`,
221
- * which always supplies it. */
222
- constructor(projectRoot = null) {
227
+ * which always supplies it (and the configured `recurringMaxAgeMs`).
228
+ * `normalizeRecurringMaxAge` owns the expiry contract for both this
229
+ * constructor and the config layer: `0` and `Infinity` both mean
230
+ * "never expire" — so a direct caller passing `0` gets disabled
231
+ * expiry, not the default — while negative or NaN input falls back to
232
+ * the 7-day default rather than expiring everything at birth. */
233
+ constructor(projectRoot = null, recurringMaxAgeMs = DEFAULT_RECURRING_MAX_AGE_MS) {
223
234
  this.projectRoot = projectRoot;
235
+ this.recurringMaxAgeMs = normalizeRecurringMaxAge(
236
+ recurringMaxAgeMs,
237
+ DEFAULT_RECURRING_MAX_AGE_MS
238
+ );
224
239
  }
225
240
  static {
226
241
  __name(this, "CronScheduler");
@@ -284,6 +299,9 @@ var CronScheduler = class {
284
299
  // removals), chained so stop() can hold the lock until they land — a
285
300
  // successor reading the file pre-write would re-run the same work.
286
301
  pendingPersist = Promise.resolve();
302
+ /** Age after which recurring jobs expire, evaluated at fire time.
303
+ * Infinity = never expire. Guarded in the constructor. */
304
+ recurringMaxAgeMs;
287
305
  /**
288
306
  * Creates a new session-only cron job. Returns the created job.
289
307
  * Throws if the max job limit is reached.
@@ -303,7 +321,7 @@ var CronScheduler = class {
303
321
  prompt,
304
322
  recurring,
305
323
  createdAt: now,
306
- expiresAt: recurring ? now + RECURRING_MAX_AGE_MS : Infinity,
324
+ expiresAt: recurring ? now + this.recurringMaxAgeMs : Infinity,
307
325
  // Prevent the scheduler from firing during the creation minute
308
326
  lastFiredAt: now - now % 6e4,
309
327
  jitterMs
@@ -558,7 +576,12 @@ var CronScheduler = class {
558
576
  if (nextFire === null || nextFire >= now) continue;
559
577
  if (!t.recurring) {
560
578
  missedOneShots.push(t);
561
- } else if (now - t.createdAt >= RECURRING_MAX_AGE_MS) {
579
+ } else if (now - t.createdAt >= this.recurringMaxAgeMs) {
580
+ console.warn(
581
+ `Durable cron task ${t.id} (created ${new Date(
582
+ t.createdAt
583
+ ).toISOString()}) is past the recurring max age at load; it will fire one final time and be deleted.`
584
+ );
562
585
  finalTasks.push(t);
563
586
  } else {
564
587
  catchUpIds.push(t.id);
@@ -588,7 +611,7 @@ var CronScheduler = class {
588
611
  );
589
612
  continue;
590
613
  }
591
- const job = durableTaskToJob(task, existing);
614
+ const job = durableTaskToJob(task, this.recurringMaxAgeMs, existing);
592
615
  if (existing?.lastFiredAt !== void 0) {
593
616
  job.lastFiredAt = Math.max(existing.lastFiredAt, job.lastFiredAt ?? 0);
594
617
  }
@@ -610,7 +633,9 @@ var CronScheduler = class {
610
633
  if (finalTasks.length > 0) {
611
634
  this.fireOrBuffer({
612
635
  kind: "final",
613
- jobs: finalTasks.map((t) => durableTaskToJob(t))
636
+ jobs: finalTasks.map(
637
+ (t) => durableTaskToJob(t, this.recurringMaxAgeMs)
638
+ )
614
639
  });
615
640
  }
616
641
  }
@@ -633,7 +658,7 @@ var CronScheduler = class {
633
658
  case "missed": {
634
659
  const skipped = [];
635
660
  const runnable = pending.tasks.filter((t) => {
636
- const job = durableTaskToJob(t);
661
+ const job = durableTaskToJob(t, this.recurringMaxAgeMs);
637
662
  if (job.durable && this.skipDurableFire?.(job)) {
638
663
  debugLogger.debug(
639
664
  `Skipping durable job ${t.id} (missed): consumer cannot run it`
@@ -646,7 +671,7 @@ var CronScheduler = class {
646
671
  for (const id of skipped) this.pendingRemoval.delete(id);
647
672
  if (runnable.length > 0) {
648
673
  onFire({
649
- ...durableTaskToJob(runnable[0]),
674
+ ...durableTaskToJob(runnable[0], this.recurringMaxAgeMs),
650
675
  prompt: buildMissedCronNotification(runnable),
651
676
  missed: true
652
677
  });
@@ -1034,7 +1059,7 @@ function hasParseableCron(task) {
1034
1059
  }
1035
1060
  }
1036
1061
  __name(hasParseableCron, "hasParseableCron");
1037
- function durableTaskToJob(task, existing) {
1062
+ function durableTaskToJob(task, recurringMaxAgeMs, existing) {
1038
1063
  const jitterMs = existing && existing.cronExpr === task.cron && existing.recurring === task.recurring ? existing.jitterMs : computeJitter(task.id, task.cron, task.recurring);
1039
1064
  return {
1040
1065
  id: task.id,
@@ -1042,7 +1067,7 @@ function durableTaskToJob(task, existing) {
1042
1067
  prompt: task.prompt,
1043
1068
  recurring: task.recurring,
1044
1069
  createdAt: task.createdAt,
1045
- expiresAt: task.recurring ? task.createdAt + RECURRING_MAX_AGE_MS : Infinity,
1070
+ expiresAt: task.recurring ? task.createdAt + recurringMaxAgeMs : Infinity,
1046
1071
  lastFiredAt: task.lastFiredAt ?? void 0,
1047
1072
  jitterMs,
1048
1073
  durable: true
@@ -1072,6 +1097,8 @@ function computeNextFireMs(cronExpr, afterMs, jitterMs) {
1072
1097
  __name(computeNextFireMs, "computeNextFireMs");
1073
1098
 
1074
1099
  export {
1100
+ DEFAULT_RECURRING_MAX_AGE_DAYS,
1101
+ normalizeRecurringMaxAge,
1075
1102
  WAKEUP_MIN_SECONDS,
1076
1103
  WAKEUP_MAX_SECONDS,
1077
1104
  clampWakeupSeconds,
@@ -160,10 +160,14 @@ async function removeCronTasks(projectRoot, ids) {
160
160
  return removed;
161
161
  }
162
162
  __name(removeCronTasks, "removeCronTasks");
163
+ function isFiniteTimestamp(value) {
164
+ return typeof value === "number" && Number.isFinite(value);
165
+ }
166
+ __name(isFiniteTimestamp, "isFiniteTimestamp");
163
167
  function isValidTask(value) {
164
168
  if (typeof value !== "object" || value === null) return false;
165
169
  const obj = value;
166
- return typeof obj["id"] === "string" && typeof obj["cron"] === "string" && typeof obj["prompt"] === "string" && typeof obj["recurring"] === "boolean" && typeof obj["createdAt"] === "number" && (obj["lastFiredAt"] === null || typeof obj["lastFiredAt"] === "number");
170
+ return typeof obj["id"] === "string" && typeof obj["cron"] === "string" && typeof obj["prompt"] === "string" && typeof obj["recurring"] === "boolean" && isFiniteTimestamp(obj["createdAt"]) && (obj["lastFiredAt"] === null || isFiniteTimestamp(obj["lastFiredAt"]));
167
171
  }
168
172
  __name(isValidTask, "isValidTask");
169
173
 
@@ -10,7 +10,7 @@ import {
10
10
  getSystemDefaultsPath,
11
11
  getSystemSettingsPath,
12
12
  resolveEnvVarsInObject
13
- } from "./chunk-PPFWEV7G.js";
13
+ } from "./chunk-4RQIB5UZ.js";
14
14
  import {
15
15
  getPathComparisonVariants,
16
16
  isWithinRoot,
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-QYUE6W3T.js";
12
12
  import {
13
13
  ideContextStore
14
- } from "./chunk-6QTCOQX7.js";
14
+ } from "./chunk-B5ZACOMA.js";
15
15
  import {
16
16
  atomicWriteFileSync
17
17
  } from "./chunk-T42ACHFI.js";
@@ -4,21 +4,21 @@ import {
4
4
  HEADLESS_YOLO_NO_SANDBOX_WARNING
5
5
  } from "./chunk-BJBWRCSK.js";
6
6
  import {
7
- DEFAULT_RING_SIZE
8
- } from "./chunk-ALX6BUYW.js";
7
+ normalizeServeChannelSelection
8
+ } from "./chunk-MX2YXRER.js";
9
9
  import {
10
10
  loadSettings
11
- } from "./chunk-BC4R5C5R.js";
11
+ } from "./chunk-5WYLPENX.js";
12
12
  import {
13
- normalizeServeChannelSelection
14
- } from "./chunk-MX2YXRER.js";
13
+ DEFAULT_RING_SIZE
14
+ } from "./chunk-ALX6BUYW.js";
15
15
  import {
16
16
  writeStderrLine
17
17
  } from "./chunk-Y6Z2O3WR.js";
18
18
  import {
19
19
  MCP_BUDGET_WARN_FRACTION,
20
20
  parsePositiveIntegerEnv
21
- } from "./chunk-6QTCOQX7.js";
21
+ } from "./chunk-B5ZACOMA.js";
22
22
  import {
23
23
  openBrowserSecurely,
24
24
  shouldLaunchBrowser
@@ -279,7 +279,7 @@ var serveCommand = {
279
279
  process.exit(1);
280
280
  }
281
281
  }
282
- const { runQwenServe } = await import("./run-qwen-serve-CME3AKM4.js");
282
+ const { runQwenServe } = await import("./run-qwen-serve-WKCKS23N.js");
283
283
  try {
284
284
  const handle = await runQwenServe({
285
285
  port: argv.port,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  runExitCleanup
5
- } from "./chunk-2YH27UNF.js";
5
+ } from "./chunk-4YXBDLX7.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -45,9 +45,10 @@ var CREDENTIAL_PATTERNS = [
45
45
  },
46
46
  // GitHub / GitLab / Slack tokens.
47
47
  // Includes github_pat_ (fine-grained PATs) and ghu_ (app user tokens).
48
- // Slack tokens use hyphens as separators: xoxb-NNN-NNN-alphanum.
48
+ // Slack tokens use hyphens as separators.
49
+ // The [b]/[p] classes avoid embedding Slack token prefixes that vsce flags.
49
50
  {
50
- pattern: /(?:ghp_|gho_|ghs_|ghu_|github_pat_|glpat-|xoxb-|xoxp-)[a-zA-Z0-9_-]{20,}/g,
51
+ pattern: /(?:ghp_|gho_|ghs_|ghu_|github_pat_|glpat-|xox[b]-|xox[p]-)[a-zA-Z0-9_-]{20,}/g,
51
52
  replacement: REDACTED
52
53
  },
53
54
  // AWS access key IDs (permanent AKIA + temporary STS ASIA)
@@ -7,10 +7,10 @@ import {
7
7
  eastAsianWidth,
8
8
  isFullWidth,
9
9
  isWide
10
- } from "./chunk-2CAII5HD.js";
10
+ } from "./chunk-MWGIMAYM.js";
11
11
  import {
12
12
  stripAnsi
13
- } from "./chunk-6QTCOQX7.js";
13
+ } from "./chunk-B5ZACOMA.js";
14
14
  import {
15
15
  init_esbuild_shims
16
16
  } from "./chunk-A4BMJM77.js";
@@ -4,10 +4,10 @@ import {
4
4
  OpenAIContentConverter,
5
5
  TaggedThinkingParser,
6
6
  openaiRequestCaptureContext
7
- } from "./chunk-CHY5C5T4.js";
7
+ } from "./chunk-TDMIHT6B.js";
8
8
  import {
9
9
  RequestTokenizer
10
- } from "./chunk-DX3TKXNT.js";
10
+ } from "./chunk-JA5KWZTJ.js";
11
11
  import {
12
12
  DASHSCOPE_PROXY_BASE_URL,
13
13
  DEFAULT_DASHSCOPE_BASE_URL,
@@ -19,7 +19,7 @@ import {
19
19
  hasExplicitOutputLimit,
20
20
  parsePositiveIntegerEnvValue,
21
21
  tokenLimit
22
- } from "./chunk-YTFBURQD.js";
22
+ } from "./chunk-KYTQOCDE.js";
23
23
  import {
24
24
  runtimeDiagnostics,
25
25
  safeJsonParse
@@ -7263,12 +7263,6 @@ var DashScopeOpenAICompatibleProvider = class _DashScopeOpenAICompatibleProvider
7263
7263
  getDefaultGenerationConfig() {
7264
7264
  return {};
7265
7265
  }
7266
- getResponseParsingOptions(model) {
7267
- if (this.isGlmModel(model ?? this.contentGeneratorConfig.model)) {
7268
- return { taggedThinkingTags: true };
7269
- }
7270
- return {};
7271
- }
7272
7266
  /**
7273
7267
  * Add cache control flag to specified message(s) for DashScope providers
7274
7268
  */
@@ -8118,7 +8112,7 @@ var StreamContentError = class extends Error {
8118
8112
  var StreamInactivityTimeoutError = class extends Error {
8119
8113
  constructor(idleMs, chunksReceived, streamLifetimeMs) {
8120
8114
  super(
8121
- `No stream activity for ${idleMs}ms after ${chunksReceived} chunks (stream lifetime: ${streamLifetimeMs}ms)`
8115
+ `No stream activity for ${idleMs}ms after ${chunksReceived} chunks (stream lifetime: ${streamLifetimeMs}ms). Set ${QWEN_STREAM_IDLE_TIMEOUT_MS_ENV} to increase this window (or 0 to disable it).`
8122
8116
  );
8123
8117
  this.idleMs = idleMs;
8124
8118
  this.chunksReceived = chunksReceived;
@@ -8539,7 +8533,7 @@ var ContentGenerationPipeline = class {
8539
8533
  const effectiveModel = request.model || this.contentGeneratorConfig.model;
8540
8534
  const providerOverrides = this.config.provider.getRequestContextOverrides?.() ?? {};
8541
8535
  const toolCallParser = isStreaming ? new StreamingToolCallParser() : void 0;
8542
- const responseParsingOptions = this.config.provider.getResponseParsingOptions?.(effectiveModel);
8536
+ const responseParsingOptions = this.config.provider.getResponseParsingOptions?.();
8543
8537
  const taggedThinkingParser = isStreaming && responseParsingOptions?.taggedThinkingTags ? new TaggedThinkingParser() : void 0;
8544
8538
  return {
8545
8539
  model: effectiveModel,
@@ -73,7 +73,8 @@ var SECRET_RULES = [
73
73
  // Communication
74
74
  {
75
75
  id: "slack-bot-token",
76
- source: "xoxb-[0-9]{10,13}-[0-9]{10,13}[a-zA-Z0-9-]*"
76
+ // The [b] class avoids embedding a Slack token prefix that vsce flags.
77
+ source: "xox[b]-[0-9]{10,13}-[0-9]{10,13}[a-zA-Z0-9-]*"
77
78
  },
78
79
  {
79
80
  id: "slack-app-token",
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  TextTokenizer,
5
5
  isSupportedImageMimeType
6
- } from "./chunk-YTFBURQD.js";
6
+ } from "./chunk-KYTQOCDE.js";
7
7
  import {
8
8
  createDebugLogger
9
9
  } from "./chunk-AVQDCKNF.js";
@@ -3,7 +3,10 @@
3
3
  import {
4
4
  isValidSessionId,
5
5
  validateAuthMethod
6
- } from "./chunk-EJ7BN3EN.js";
6
+ } from "./chunk-WSOGYJMT.js";
7
+ import {
8
+ contextCommand
9
+ } from "./chunk-NGCPNXJC.js";
7
10
  import {
8
11
  VSCODE_SHIFT_ENTER_SEQUENCE,
9
12
  calculateCost,
@@ -15,25 +18,25 @@ import {
15
18
  levelLabel,
16
19
  useKeypress,
17
20
  writeOsc52
18
- } from "./chunk-UJT42DB6.js";
19
- import {
20
- isKittyProtocolEnabled
21
- } from "./chunk-JZSY4WP3.js";
22
- import {
23
- contextCommand
24
- } from "./chunk-WZ724G6K.js";
21
+ } from "./chunk-5QC7Y5TJ.js";
25
22
  import {
26
23
  isTerminalGoalStatusKind
27
24
  } from "./chunk-KSPVDFE4.js";
28
25
  import {
29
26
  Text
30
- } from "./chunk-XKZXGIRM.js";
27
+ } from "./chunk-HNGXPBWR.js";
31
28
  import {
32
29
  require_react
33
30
  } from "./chunk-KYMBIKIW.js";
34
31
  import {
35
32
  themeManager
36
33
  } from "./chunk-HTWHAN44.js";
34
+ import {
35
+ isKittyProtocolEnabled
36
+ } from "./chunk-JZSY4WP3.js";
37
+ import {
38
+ getErrorMessage as getErrorMessage2
39
+ } from "./chunk-3ZSJDRNO.js";
37
40
  import {
38
41
  GITHUB_WORKFLOW_PATHS,
39
42
  setupGithub
@@ -44,23 +47,12 @@ import {
44
47
  import {
45
48
  stripUnsafeCharacters,
46
49
  toCodePoints
47
- } from "./chunk-2CAII5HD.js";
48
- import {
49
- formatUnsupportedVoiceModelMessage,
50
- getVoiceSettingsScope,
51
- isSelectableVoiceModel,
52
- isVoiceEnabled,
53
- readVoiceMode,
54
- readVoiceModel
55
- } from "./chunk-Y4UQT3PM.js";
56
- import {
57
- getErrorMessage as getErrorMessage2
58
- } from "./chunk-JJ6B3ZD3.js";
50
+ } from "./chunk-MWGIMAYM.js";
59
51
  import {
60
52
  getExtendedSystemInfo,
61
53
  getGitVersion,
62
54
  getNpmVersion
63
- } from "./chunk-JKGCBO3O.js";
55
+ } from "./chunk-UPYORLKQ.js";
64
56
  import {
65
57
  formatDuration,
66
58
  formatMemoryUsage,
@@ -69,7 +61,15 @@ import {
69
61
  import {
70
62
  isInlineModelOverrideAllowed,
71
63
  parseAcpModelOption
72
- } from "./chunk-K4I4STSL.js";
64
+ } from "./chunk-XPOO5OMB.js";
65
+ import {
66
+ formatUnsupportedVoiceModelMessage,
67
+ getVoiceSettingsScope,
68
+ isSelectableVoiceModel,
69
+ isVoiceEnabled,
70
+ readVoiceMode,
71
+ readVoiceModel
72
+ } from "./chunk-QQXG2BL6.js";
73
73
  import {
74
74
  OUTPUT_LANGUAGE_AUTO,
75
75
  getAllSettingKeys,
@@ -81,7 +81,7 @@ import {
81
81
  resolveOutputLanguage,
82
82
  validateSettingValue,
83
83
  writeOutputLanguageAndRegisterPath
84
- } from "./chunk-BC4R5C5R.js";
84
+ } from "./chunk-5WYLPENX.js";
85
85
  import {
86
86
  SUPPORTED_LANGUAGES,
87
87
  getCurrentLanguage,
@@ -89,11 +89,11 @@ import {
89
89
  resolveSupportedLanguage,
90
90
  setLanguageAsync,
91
91
  t
92
- } from "./chunk-DM4E337C.js";
92
+ } from "./chunk-X3UQVEBR.js";
93
93
  import {
94
94
  isFolderTrustEnabled,
95
95
  loadTrustedFolders
96
- } from "./chunk-Z7XNVNPM.js";
96
+ } from "./chunk-EMSRFDBD.js";
97
97
  import {
98
98
  require_strip_json_comments
99
99
  } from "./chunk-QYUE6W3T.js";
@@ -103,7 +103,6 @@ import {
103
103
  ConditionalRulesRegistry,
104
104
  EXTENSIONS_CONFIG_FILENAME,
105
105
  ExtensionManager,
106
- FORK_SUBAGENT_TYPE,
107
106
  IdeClient,
108
107
  Logger,
109
108
  QWEN_CODE_COMPANION_EXTENSION_NAME,
@@ -168,16 +167,17 @@ import {
168
167
  stripStartupContext,
169
168
  tryGenerateSessionTitle,
170
169
  unregisterGoalHook
171
- } from "./chunk-6QTCOQX7.js";
170
+ } from "./chunk-B5ZACOMA.js";
172
171
  import {
173
172
  external_exports
174
173
  } from "./chunk-K5PGHDBN.js";
175
174
  import {
176
175
  runSideQuery
177
- } from "./chunk-L7OJ3ZO3.js";
176
+ } from "./chunk-5ES5YPED.js";
178
177
  import {
179
- APPROVAL_MODES
180
- } from "./chunk-BPFJQGY7.js";
178
+ APPROVAL_MODES,
179
+ FORK_SUBAGENT_TYPE
180
+ } from "./chunk-LM3YCCZJ.js";
181
181
  import {
182
182
  applySkillAllowedTools,
183
183
  buildSkillLlmContent
@@ -185,7 +185,7 @@ import {
185
185
  import {
186
186
  HookEventName,
187
187
  sanitizeUserPromptExpansionAdditionalContext
188
- } from "./chunk-YXK4GPYO.js";
188
+ } from "./chunk-NVFJSIAX.js";
189
189
  import {
190
190
  IdeConnectionEvent,
191
191
  formatTokenUsageSummaryAsCsv,
@@ -198,13 +198,13 @@ import {
198
198
  recordSkillInvocation,
199
199
  resolveOpenAILogDir,
200
200
  uiTelemetryService
201
- } from "./chunk-CHY5C5T4.js";
201
+ } from "./chunk-TDMIHT6B.js";
202
202
  import {
203
203
  getAutoMemoryRoot
204
204
  } from "./chunk-MOUXUCXQ.js";
205
205
  import {
206
206
  ToolNames
207
- } from "./chunk-MTNTVOJR.js";
207
+ } from "./chunk-MJKMIQMK.js";
208
208
  import {
209
209
  openBrowserSecurely
210
210
  } from "./chunk-22IFUCVR.js";
@@ -225,7 +225,7 @@ import {
225
225
  isCpuProfileRecording,
226
226
  startCpuProfile,
227
227
  stopCpuProfile
228
- } from "./chunk-M5ITDKSM.js";
228
+ } from "./chunk-RUM2UEL3.js";
229
229
  import {
230
230
  init_esbuild_shims
231
231
  } from "./chunk-A4BMJM77.js";
@@ -857,7 +857,8 @@ var ToolCallEmitter = class _ToolCallEmitter extends BaseEmitter {
857
857
  ...provenance.serverId ? { serverId: provenance.serverId } : {},
858
858
  ...BaseEmitter.toEpochMs(params.timestamp) != null && {
859
859
  timestamp: BaseEmitter.toEpochMs(params.timestamp)
860
- }
860
+ },
861
+ ...params.artifacts && params.artifacts.length > 0 ? { artifacts: params.artifacts } : {}
861
862
  }
862
863
  };
863
864
  if (params.resultDisplay !== void 0 && !this.isTruncatedSessionDiffDisplay(params.resultDisplay)) {
@@ -7229,7 +7230,7 @@ async function extractMetadata(conversation, config) {
7229
7230
  const gitBranch = firstRecord?.gitBranch;
7230
7231
  let gitRepo;
7231
7232
  if (cwd) {
7232
- const { getGitRepoName } = await import("./src-T5A7P7FS.js");
7233
+ const { getGitRepoName } = await import("./src-IYODJOVK.js");
7233
7234
  gitRepo = getGitRepoName(cwd);
7234
7235
  }
7235
7236
  let model;
@@ -5,7 +5,7 @@ import {
5
5
  isTranscribableVoiceModel,
6
6
  readVoiceLanguage,
7
7
  resolveVoiceTransport
8
- } from "./chunk-Y4UQT3PM.js";
8
+ } from "./chunk-QQXG2BL6.js";
9
9
  import {
10
10
  resolvePath
11
11
  } from "./chunk-NIOPRZNN.js";
@@ -6,7 +6,7 @@ import {
6
6
  getNestedProperty,
7
7
  getPersistScopeForModelSelection,
8
8
  restoreSettingsFromBackup
9
- } from "./chunk-BC4R5C5R.js";
9
+ } from "./chunk-5WYLPENX.js";
10
10
  import {
11
11
  init_esbuild_shims
12
12
  } from "./chunk-A4BMJM77.js";
@@ -202,7 +202,7 @@ __name(tokenLimit, "tokenLimit");
202
202
  // packages/core/src/core/openaiContentGenerator/constants.ts
203
203
  init_esbuild_shims();
204
204
  var DEFAULT_TIMEOUT = 12e4;
205
- var DEFAULT_STREAM_IDLE_TIMEOUT_MS = 12e4;
205
+ var DEFAULT_STREAM_IDLE_TIMEOUT_MS = 24e4;
206
206
  var QWEN_STREAM_IDLE_TIMEOUT_MS_ENV = "QWEN_STREAM_IDLE_TIMEOUT_MS";
207
207
  var MAX_STREAM_IDLE_TIMEOUT_MS = 2147483647;
208
208
  var DEFAULT_MAX_RETRIES = 3;
@@ -2,17 +2,20 @@
2
2
  "use strict";
3
3
  import {
4
4
  mapSkillConfigToStatus
5
- } from "./chunk-CXBG27SF.js";
5
+ } from "./chunk-6IAWPIQ6.js";
6
+ import {
7
+ loadSettings
8
+ } from "./chunk-5WYLPENX.js";
6
9
  import {
7
10
  STATUS_SCHEMA_VERSION
8
- } from "./chunk-LHMZCIKL.js";
11
+ } from "./chunk-SZFYG244.js";
9
12
  import {
10
13
  writeStderrLine
11
14
  } from "./chunk-Y6Z2O3WR.js";
12
15
  import {
13
16
  SkillManager,
14
17
  isSafeModeEnv
15
- } from "./chunk-6QTCOQX7.js";
18
+ } from "./chunk-B5ZACOMA.js";
16
19
  import {
17
20
  init_esbuild_shims
18
21
  } from "./chunk-A4BMJM77.js";
@@ -47,12 +50,13 @@ async function buildWorkspaceSkillsStatus(workspaceCwd, managers) {
47
50
  skillManager = new SkillManager(shim);
48
51
  managers.set(workspaceCwd, skillManager);
49
52
  }
53
+ const disabled = readDisabledSkillNames(workspaceCwd);
50
54
  const skills = await skillManager.listSkills();
51
55
  return {
52
56
  v: STATUS_SCHEMA_VERSION,
53
57
  workspaceCwd,
54
58
  initialized: true,
55
- skills: skills.map(mapSkillConfigToStatus)
59
+ skills: skills.map((skill) => mapSkillConfigToStatus(skill, disabled))
56
60
  };
57
61
  } catch (error) {
58
62
  const message = error instanceof Error ? error.message : String(error);
@@ -75,6 +79,14 @@ async function buildWorkspaceSkillsStatus(workspaceCwd, managers) {
75
79
  }
76
80
  }
77
81
  __name(buildWorkspaceSkillsStatus, "buildWorkspaceSkillsStatus");
82
+ function readDisabledSkillNames(workspaceCwd) {
83
+ const raw = loadSettings(workspaceCwd, false).merged.skills?.disabled;
84
+ if (!Array.isArray(raw)) return /* @__PURE__ */ new Set();
85
+ return new Set(
86
+ raw.filter((name) => typeof name === "string").map((name) => name.trim().toLowerCase()).filter(Boolean)
87
+ );
88
+ }
89
+ __name(readDisabledSkillNames, "readDisabledSkillNames");
78
90
 
79
91
  export {
80
92
  createWorkspaceSkillsStatusProvider