@qwen-code/qwen-code 0.22.2-preview.1 → 0.22.3

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 (437) hide show
  1. package/bundled/computer-use/SKILL.md +3 -3
  2. package/bundled/goal-draft/SKILL.md +109 -0
  3. package/bundled/qc-helper/docs/configuration/settings.md +37 -36
  4. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  5. package/bundled/qc-helper/docs/features/channels/dws.md +2 -0
  6. package/bundled/qc-helper/docs/features/channels/overview.md +34 -3
  7. package/bundled/qc-helper/docs/features/code-review.md +3 -3
  8. package/bundled/qc-helper/docs/features/commands.md +2 -1
  9. package/bundled/qc-helper/docs/features/computer-use.md +2 -2
  10. package/bundled/qc-helper/docs/features/goals.md +58 -0
  11. package/bundled/qc-helper/docs/features/headless.md +13 -11
  12. package/bundled/qc-helper/docs/features/status-line.md +3 -3
  13. package/bundled/qc-helper/docs/features/tool-use-summaries.md +1 -1
  14. package/bundled/qc-helper/docs/qwen-serve.md +1 -1
  15. package/bundled/review/SKILL.md +81 -31
  16. package/bundled/review/references/persistence.md +7 -3
  17. package/bundled/review/references/posting.md +10 -4
  18. package/chunks/MaxSizedBox-X42SXBJH.js +110 -0
  19. package/chunks/{StandaloneSessionPicker-5D2L22SF.js → StandaloneSessionPicker-2FJAOLGG.js} +81 -83
  20. package/chunks/{acpAgent-4DCKLA32.js → acpAgent-2ZMIJAFV.js} +1153 -357
  21. package/chunks/{agent-B4AFZL6H.js → agent-X5WX3L2I.js} +44 -46
  22. package/chunks/agent-headless-IZM25LJA.js +85 -0
  23. package/chunks/{anthropicContentGenerator-U76GTVB6.js → anthropicContentGenerator-YVTB6QX7.js} +46 -50
  24. package/chunks/{artifact-tool-XDJCZZCF.js → artifact-tool-XSMPHZBT.js} +11 -3
  25. package/chunks/{askUserQuestion-ZXXERLEV.js → askUserQuestion-4SWJY65V.js} +2 -2
  26. package/chunks/bridge-ME6QXZNA.js +119 -0
  27. package/chunks/{channel-management-service-HXXS3HOZ.js → channel-management-service-HQ6KDS7C.js} +6 -6
  28. package/chunks/channel-settings-store-PEOI7XCG.js +120 -0
  29. package/chunks/{channel-worker-group-EVDC2P4K.js → channel-worker-group-6NA6BBZV.js} +8 -7
  30. package/chunks/{channel-worker-manager-IJJZHGEI.js → channel-worker-manager-NEZ2J6RK.js} +10 -8
  31. package/chunks/{channel-worker-supervisor-YSKB5GVB.js → channel-worker-supervisor-FKU7DIHJ.js} +6 -5
  32. package/chunks/{chunk-7QGEJI7M.js → chunk-23RFD54N.js} +1 -1
  33. package/chunks/{chunk-JLU3FPQR.js → chunk-2HYKTO7V.js} +5 -5
  34. package/chunks/chunk-2LNNVAUV.js +1584 -0
  35. package/chunks/{chunk-FJAITR4L.js → chunk-2OBKDPZZ.js} +2 -2
  36. package/chunks/{chunk-JSY43GMI.js → chunk-2OUD5T67.js} +185 -174
  37. package/chunks/{chunk-LJP2BBMK.js → chunk-2SXSLSQE.js} +4 -4
  38. package/chunks/chunk-2TNL5KPM.js +49 -0
  39. package/chunks/{chunk-XMSMTU6H.js → chunk-2YOHKHYR.js} +4 -4
  40. package/chunks/{chunk-MCKJTBZN.js → chunk-36GSQ3MM.js} +2 -2
  41. package/chunks/chunk-36LGBEM6.js +130 -0
  42. package/chunks/{chunk-ZWKGZB2K.js → chunk-3JXM2CVW.js} +3 -3
  43. package/chunks/{chunk-X3XGCJ32.js → chunk-3SZC4VP4.js} +28 -111
  44. package/chunks/{chunk-ILPXSKGQ.js → chunk-3WK3QDNV.js} +2 -2
  45. package/chunks/{chunk-IKN3IUJP.js → chunk-3XKLXHGK.js} +17 -9
  46. package/chunks/{chunk-ZLTEQYNC.js → chunk-42IDLQWS.js} +26 -20
  47. package/chunks/chunk-4CMJKUND.js +95 -0
  48. package/chunks/{chunk-77TOMRBG.js → chunk-4K7KNVWH.js} +3 -3
  49. package/chunks/{chunk-SQPOJ4ZI.js → chunk-4NDLQAY2.js} +27 -270
  50. package/chunks/{chunk-V3GINY6K.js → chunk-4QHPPXK2.js} +16 -8
  51. package/chunks/{chunk-VBF4KZRQ.js → chunk-4TT3IVGA.js} +1 -1
  52. package/chunks/{chunk-IOGKXPL3.js → chunk-4VPCTGH6.js} +6 -6
  53. package/chunks/chunk-4VQBQLIZ.js +293 -0
  54. package/chunks/{chunk-UCSV2IZW.js → chunk-62GQFYID.js} +3 -3
  55. package/chunks/{chunk-SLEWBQWM.js → chunk-6DIGWMGT.js} +2 -2
  56. package/chunks/{chunk-BRVWYMKV.js → chunk-6MBXY6WM.js} +1 -1
  57. package/chunks/{chunk-PVBT5QPD.js → chunk-6PJOTWAN.js} +1 -1
  58. package/chunks/{chunk-WZ3QKPMQ.js → chunk-6X7EU5TI.js} +19 -31
  59. package/chunks/{chunk-KQYW2GB5.js → chunk-6ZPDLGHN.js} +6 -6
  60. package/chunks/{chunk-AKQA3WCH.js → chunk-734C6JGI.js} +723 -3399
  61. package/chunks/{chunk-F7M6ZFGU.js → chunk-73RM4POK.js} +8 -8
  62. package/chunks/{chunk-ELY4QVIB.js → chunk-7EQQR46F.js} +1 -1
  63. package/chunks/{chunk-KGJGEEVR.js → chunk-7FA2II6K.js} +10 -1
  64. package/chunks/chunk-7J6OTNGO.js +424 -0
  65. package/chunks/{chunk-LWLEPXKK.js → chunk-7LOELM2I.js} +19 -2
  66. package/chunks/{chunk-DIMEPKCW.js → chunk-7S226YTK.js} +1 -1
  67. package/chunks/{chunk-AWFZDYSD.js → chunk-7T52W4SW.js} +1 -1
  68. package/chunks/{chunk-3JKUX4PB.js → chunk-7VMIMAVB.js} +9 -9
  69. package/chunks/{chunk-2MHGD7EE.js → chunk-A3LWD5MK.js} +1 -1
  70. package/chunks/{chunk-E4I5MVBR.js → chunk-ABS25QER.js} +1 -1
  71. package/chunks/{chunk-TDQBVEPK.js → chunk-AIAOIFY4.js} +10 -8
  72. package/chunks/{chunk-NEZZHGEI.js → chunk-AYFA7MZV.js} +6 -6
  73. package/chunks/{chunk-FVDQ5E67.js → chunk-B466ZSHZ.js} +3 -3
  74. package/chunks/{chunk-6US7BF3G.js → chunk-B5PHIJGI.js} +183 -5
  75. package/chunks/{chunk-4TPAG3O7.js → chunk-BFPESSTR.js} +1 -1
  76. package/chunks/{chunk-WBT3STGU.js → chunk-BKWNKLZB.js} +20 -20
  77. package/chunks/{chunk-T45CL2NT.js → chunk-BOWFGCEU.js} +3 -3
  78. package/chunks/{chunk-IPQA4SR5.js → chunk-BWORX6FA.js} +1 -1
  79. package/chunks/{chunk-BKDAF7ES.js → chunk-BXDAPVQU.js} +2 -2
  80. package/chunks/{chunk-ZEADBZLO.js → chunk-C2X7KY45.js} +3 -3
  81. package/chunks/{chunk-PTQF7WRA.js → chunk-C3PEFRKD.js} +6 -6
  82. package/chunks/{chunk-7OBH4AM2.js → chunk-CAJTKR6W.js} +5 -5
  83. package/chunks/{chunk-2FN2HNTI.js → chunk-CFJY4DGX.js} +2 -2
  84. package/chunks/{chunk-SUE2ZMUH.js → chunk-CIZCL2MW.js} +49 -31
  85. package/chunks/{chunk-W2WRNJKX.js → chunk-CLWO3B77.js} +6 -6
  86. package/chunks/{chunk-U45D46O5.js → chunk-CMHFCLBU.js} +1 -1
  87. package/chunks/{chunk-LRKMQPMD.js → chunk-CQH5KTKC.js} +1 -1
  88. package/chunks/{chunk-JECO75XD.js → chunk-D5LUXLUH.js} +2 -2
  89. package/chunks/chunk-DJBQCO2E.js +842 -0
  90. package/chunks/{chunk-BQBUZDDH.js → chunk-DJECZIJX.js} +42 -42
  91. package/chunks/{chunk-GTUZ3R6I.js → chunk-DJEZ55D4.js} +351 -113
  92. package/chunks/{chunk-HPECDZ6X.js → chunk-DJPASAUV.js} +3866 -1077
  93. package/chunks/{chunk-VYWCFWI5.js → chunk-DMLVSW7L.js} +542 -654
  94. package/chunks/{chunk-EB4VDXNI.js → chunk-DYXFD5RO.js} +182 -3
  95. package/chunks/{chunk-ZKAZP2ZG.js → chunk-EB6QRGHM.js} +3 -3
  96. package/chunks/{chunk-UWICO5KN.js → chunk-EFWRMA2I.js} +3 -3
  97. package/chunks/{chunk-3UZCLCXR.js → chunk-EKSCLBBF.js} +3 -3
  98. package/chunks/{chunk-ALTQLFEG.js → chunk-EQSBPBZ3.js} +5 -194
  99. package/chunks/{chunk-624NHDGB.js → chunk-ERFDKH32.js} +11 -0
  100. package/chunks/{chunk-4K44OMLI.js → chunk-FROAFEFB.js} +3 -3
  101. package/chunks/{chunk-MZS7GEC7.js → chunk-FTF2YIZ5.js} +1 -1
  102. package/chunks/{chunk-Z7VOMGDC.js → chunk-FTJMWDND.js} +0 -24
  103. package/chunks/{chunk-ZJG323IA.js → chunk-G6FECKTJ.js} +7 -5
  104. package/chunks/{chunk-TMGAS5TO.js → chunk-GBJBJ4HX.js} +26 -4
  105. package/chunks/{chunk-UCQOSV6A.js → chunk-GPGU4S2N.js} +3 -3
  106. package/chunks/{chunk-BHTJAO36.js → chunk-GVIVASYK.js} +7 -7
  107. package/chunks/chunk-H72BQNM3.js +645 -0
  108. package/chunks/{chunk-Z4X5MTRT.js → chunk-HCOBAG2L.js} +2 -4
  109. package/chunks/{chunk-FCSWZAS3.js → chunk-HP5LR5HL.js} +5 -5
  110. package/chunks/{chunk-7JPW6IYH.js → chunk-HVC3PNVC.js} +1 -1
  111. package/chunks/{chunk-OI2DR6QB.js → chunk-I6LYRJPB.js} +3 -3
  112. package/chunks/{chunk-E55H6BZ7.js → chunk-ICURCKIU.js} +1335 -119
  113. package/chunks/{chunk-PAJGKZAA.js → chunk-ISKH4QX3.js} +14 -12
  114. package/chunks/{chunk-AYVIGUUK.js → chunk-JB4JIVTJ.js} +1 -1
  115. package/chunks/{chunk-FN5C6C7G.js → chunk-JHYH6PYQ.js} +192 -478
  116. package/chunks/{chunk-T6OODF2U.js → chunk-JWALNCLT.js} +1 -1
  117. package/chunks/{chunk-SKNVVYIJ.js → chunk-K5KXUXWC.js} +3 -3
  118. package/chunks/{chunk-XUX6O2ZT.js → chunk-KID24ZFN.js} +4 -1
  119. package/chunks/{chunk-I6DY753S.js → chunk-KJO2LBUK.js} +944 -18
  120. package/chunks/{chunk-5T4LWWNX.js → chunk-KYWTPLBJ.js} +18 -21
  121. package/chunks/{chunk-CZFQ62RM.js → chunk-LHBUKJG2.js} +4 -4
  122. package/chunks/{chunk-TOF4UZHH.js → chunk-LUEHOUHM.js} +3 -3
  123. package/chunks/{chunk-2YDYDDE2.js → chunk-M3QRM3DE.js} +3 -3
  124. package/chunks/{chunk-GNMJNDZE.js → chunk-M6FOJXW3.js} +1 -1
  125. package/chunks/{chunk-ZGWDHSUM.js → chunk-MF7HCQWZ.js} +4 -4
  126. package/chunks/{chunk-66GIFJ63.js → chunk-MK2GIB46.js} +1 -1
  127. package/chunks/{chunk-TFV4RXPU.js → chunk-MO3FC2WT.js} +1 -1
  128. package/chunks/{chunk-TR7G7XFQ.js → chunk-MPNBVAEU.js} +5 -5
  129. package/chunks/{chunk-K3LPAED5.js → chunk-MQM5PJML.js} +24 -4
  130. package/chunks/{chunk-3WBMPR3S.js → chunk-MSBO7X2W.js} +1 -1
  131. package/chunks/{chunk-5PA6UEYA.js → chunk-MZCJWS5Y.js} +1 -1
  132. package/chunks/{chunk-BGXZBI5B.js → chunk-N4X7G4J2.js} +2 -1
  133. package/chunks/{chunk-27ONXAFY.js → chunk-NIFYWDYN.js} +1 -1
  134. package/chunks/{chunk-AP7WZONS.js → chunk-NMOD2FXQ.js} +19 -9
  135. package/chunks/{chunk-IJVDHPKD.js → chunk-NU7RKEZR.js} +2 -2
  136. package/chunks/{chunk-5URK47RN.js → chunk-NV55WWD6.js} +11595 -10375
  137. package/chunks/{chunk-HABT2Z7R.js → chunk-OU5APVWO.js} +4 -4
  138. package/chunks/{chunk-QR4AHMGQ.js → chunk-P2G476QN.js} +13 -13
  139. package/chunks/{chunk-5SM2AK65.js → chunk-PADPMMYM.js} +5 -5
  140. package/chunks/{chunk-RRKNX553.js → chunk-PDQGMSZK.js} +1 -1
  141. package/chunks/{chunk-GTUKW3I6.js → chunk-PPKZ7JOE.js} +1 -1
  142. package/chunks/{chunk-SAH4BD2J.js → chunk-PQEISIKS.js} +67 -0
  143. package/chunks/{chunk-XIRDDFRS.js → chunk-PZ66FRIC.js} +2644 -2296
  144. package/chunks/{chunk-H3HZ4AWW.js → chunk-Q2MSPKIJ.js} +1 -1
  145. package/chunks/{chunk-WEGXPP5E.js → chunk-QFCDF5PL.js} +1 -1
  146. package/chunks/{chunk-OF2DPXUS.js → chunk-QYMAKPY5.js} +119 -24
  147. package/chunks/{chunk-JVPFTDBK.js → chunk-RFIDDFAL.js} +1 -1
  148. package/chunks/chunk-RKFGE7JH.js +93 -0
  149. package/chunks/{chunk-CPPYZHBN.js → chunk-RU7BK6B3.js} +1 -1
  150. package/chunks/chunk-SEONHUS3.js +275 -0
  151. package/chunks/{chunk-DEYPMJPD.js → chunk-SMPR7SPO.js} +1 -1
  152. package/chunks/chunk-SS4MRMKE.js +3525 -0
  153. package/chunks/{chunk-BPMVPWBT.js → chunk-SS5SDCD3.js} +6 -6
  154. package/chunks/{chunk-J3CBIEDS.js → chunk-ST5MDGH3.js} +32 -15
  155. package/chunks/{chunk-J5352S3S.js → chunk-ST5V3ZOC.js} +3 -3
  156. package/chunks/{chunk-7CWEZQ6T.js → chunk-STUJ7IMZ.js} +0 -77
  157. package/chunks/{chunk-4K7NQDCG.js → chunk-T4EFG2P5.js} +18 -9
  158. package/chunks/{chunk-TWSKM647.js → chunk-T7KMERIX.js} +1 -1
  159. package/chunks/{chunk-5CMWFBML.js → chunk-TEBDFQBZ.js} +1 -1
  160. package/chunks/{chunk-EC5BONC3.js → chunk-TPI7O7HR.js} +1 -1
  161. package/chunks/{chunk-T2CRBIDJ.js → chunk-TTX2JUE6.js} +1 -1
  162. package/chunks/{chunk-VOEMVOM4.js → chunk-TVC6HQ2U.js} +2 -2
  163. package/chunks/{chunk-WXDZZFH3.js → chunk-TZBSGJ6C.js} +6 -6
  164. package/chunks/chunk-U54AYGEC.js +337 -0
  165. package/chunks/{chunk-2NNTE2ED.js → chunk-UHQFIS7N.js} +15 -0
  166. package/chunks/{chunk-76WGY6LW.js → chunk-URE3QBBB.js} +3 -3
  167. package/chunks/{chunk-KOJ6MHD5.js → chunk-UTLCH2FK.js} +1 -1
  168. package/chunks/{chunk-7DPKPBOQ.js → chunk-V2NDP3I4.js} +2 -2
  169. package/chunks/{chunk-FJWICLG7.js → chunk-V4264FEG.js} +9 -9
  170. package/chunks/{chunk-XR7OIAQF.js → chunk-V5J4J5TP.js} +2 -2
  171. package/chunks/{chunk-7UJTY5V3.js → chunk-V7EESTJV.js} +1 -1
  172. package/chunks/{chunk-Z6L3C4VF.js → chunk-VBCPNIQD.js} +39 -39
  173. package/chunks/{chunk-ATLGYSYH.js → chunk-VGIFXISB.js} +4 -4
  174. package/chunks/{chunk-X2UOOG5V.js → chunk-VQUGEVGR.js} +1 -1
  175. package/chunks/{chunk-XJS54K4A.js → chunk-VTHREBQM.js} +2 -2
  176. package/chunks/{chunk-AA7VBRBG.js → chunk-W3JH33JE.js} +8 -8
  177. package/chunks/{chunk-FPH6TXD3.js → chunk-WAOIHTJS.js} +1 -1
  178. package/chunks/{chunk-CDUN63IN.js → chunk-WGY3AVGM.js} +3 -3
  179. package/chunks/{chunk-JLGFGPZJ.js → chunk-WNPDGUJO.js} +22 -3
  180. package/chunks/{chunk-O3BUXIPM.js → chunk-WXEA74YB.js} +3 -3
  181. package/chunks/{chunk-YRLW2MSX.js → chunk-XBVNNDPK.js} +11 -4
  182. package/chunks/{chunk-VL4YX3FH.js → chunk-XF63PKEN.js} +1 -1
  183. package/chunks/{chunk-R7G7GKOX.js → chunk-XHF7WQ6B.js} +3 -3
  184. package/chunks/{chunk-3FSBMAYD.js → chunk-XQFT3QUF.js} +1 -1
  185. package/chunks/{chunk-3D6PDLNJ.js → chunk-XSG6G3G6.js} +49 -32
  186. package/chunks/{chunk-5JCZ3UKB.js → chunk-Y5S7LBOZ.js} +44 -7
  187. package/chunks/{chunk-OLS3MAXQ.js → chunk-YLSQLSH7.js} +15 -9
  188. package/chunks/{chunk-2SERYG4T.js → chunk-YTDVNSUQ.js} +1 -1
  189. package/chunks/{chunk-KPF2K55D.js → chunk-ZEYFMJQA.js} +39 -8
  190. package/chunks/{chunk-OT4YKUUV.js → chunk-ZU4UDIWX.js} +2 -2
  191. package/chunks/chunk-ZWJDJ6RU.js +2597 -0
  192. package/chunks/{chunk-R3T33BG5.js → chunk-ZYMLPEZQ.js} +3 -3
  193. package/chunks/{chunk-DID6IRGC.js → chunk-ZZMSC3RG.js} +56 -39
  194. package/chunks/{chunk-L436XFLJ.js → chunk-ZZUKP7HV.js} +1 -1
  195. package/chunks/config-utils-R6M3TA34.js +113 -0
  196. package/chunks/contextCommand-ZCAP23J6.js +106 -0
  197. package/chunks/{core-runtime-CEJRHCRF.js → core-runtime-AXB6SK5D.js} +59 -61
  198. package/chunks/{create-sub-session-RVHSWVAP.js → create-sub-session-23ITIELI.js} +3 -3
  199. package/chunks/{create-sub-session-DFZVIG56.js → create-sub-session-4QNE64MR.js} +164 -85
  200. package/chunks/{cron-create-IJGVR5R2.js → cron-create-KJ4IY6PP.js} +57 -10
  201. package/chunks/{cron-delete-4N5BI6GL.js → cron-delete-MBLQCAYY.js} +4 -4
  202. package/chunks/{cron-list-2CATIPUX.js → cron-list-DWH2PQ47.js} +4 -4
  203. package/chunks/{daemon-NAYK4XXU.js → daemon-3GNHB3M2.js} +523 -8
  204. package/chunks/{daemon-git-worktree-guard-L6ZUFKF7.js → daemon-git-worktree-guard-IVAJJWYK.js} +56 -58
  205. package/chunks/daemon-status-provider-K3SJ5C2U.js +117 -0
  206. package/chunks/daemon-trust-policy-DOR3YG62.js +112 -0
  207. package/chunks/{daemon-trust-policy-monitor-2G3EKQEU.js → daemon-trust-policy-monitor-KGGROSIV.js} +64 -66
  208. package/chunks/deferred-core-runtime-WOYLUQQ7.js +114 -0
  209. package/chunks/{display-image-6KHQNEAE.js → display-image-BE7I6ZB6.js} +5 -5
  210. package/chunks/{dist-DJBNNPLN.js → dist-4WXLCBDR.js} +1 -1
  211. package/chunks/{dist-TJUDJTCB.js → dist-5VXFRTWU.js} +280 -48
  212. package/chunks/{dist-6H6RZ5H6.js → dist-6BPYWHVD.js} +89 -65
  213. package/chunks/{dist-ZBVOXSKF.js → dist-GFN5DCBX.js} +74 -65
  214. package/chunks/{dist-SATKXKUR.js → dist-HZNT6GQS.js} +1 -1
  215. package/chunks/{dist-FVJZSIO4.js → dist-LVZCXVPF.js} +72 -20
  216. package/chunks/{dist-7CKN54NL.js → dist-N6W6E753.js} +71 -64
  217. package/chunks/{dist-4Q7NTUNB.js → dist-NSV4NBPK.js} +31 -14
  218. package/chunks/{dist-UQUFZDIY.js → dist-SWQMYP2Q.js} +18 -16
  219. package/chunks/earlyInputCapture-OHBEVO4K.js +107 -0
  220. package/chunks/{edit-ZERGX3RV.js → edit-LEQLAGPZ.js} +45 -47
  221. package/chunks/{en-6MDBWMTG.js → en-YLXBXM4Z.js} +2 -1
  222. package/chunks/{enter-worktree-UOZ6ZTP7.js → enter-worktree-35QCAAFP.js} +7 -7
  223. package/chunks/{enterPlanMode-W2RP3P5B.js → enterPlanMode-ONQN3WHE.js} +47 -49
  224. package/chunks/{environment-ZBJ23YVR.js → environment-UANTR7A4.js} +60 -62
  225. package/chunks/errors-WAK6KFBC.js +113 -0
  226. package/chunks/{exit-worktree-G2QATUCV.js → exit-worktree-XQD6D543.js} +7 -7
  227. package/chunks/exitPlanMode-UEYBG6P5.js +83 -0
  228. package/chunks/{fast-path-4MWBCEUF.js → fast-path-WUL7UZ6H.js} +7 -7
  229. package/chunks/{fast-path-settings-XMFBYFUH.js → fast-path-settings-XH426LUU.js} +3 -3
  230. package/chunks/{glob-DKTNG32L.js → glob-Y54QUWDY.js} +44 -46
  231. package/chunks/{goal-tools-CNVXMSZD.js → goal-tools-PTD3MBA7.js} +10 -8
  232. package/chunks/{grep-3NLSS32D.js → grep-5GPICQBU.js} +6 -6
  233. package/chunks/handleAutoUpdate-FP3NWNSG.js +109 -0
  234. package/chunks/i18n-INIU5X7A.js +124 -0
  235. package/chunks/{image-gen-63NN2H5N.js → image-gen-J6FDGUZP.js} +8 -10
  236. package/chunks/initializer-TYODV6GE.js +113 -0
  237. package/chunks/installationInfo-AAPKYDSZ.js +107 -0
  238. package/chunks/{keychain-token-storage-3MGFRYGM.js → keychain-token-storage-37XPR34V.js} +2 -2
  239. package/chunks/list-TUODDN6J.js +116 -0
  240. package/chunks/{list-agents-EXRSHIDJ.js → list-agents-DI3YFTDT.js} +2 -2
  241. package/chunks/{gemini-X5GQHQYF.js → llm-NSAVK5V3.js} +117 -114
  242. package/chunks/{geminiContentGenerator-UDSWXZXL.js → llm-content-generator-AY2QKXHE.js} +29 -29
  243. package/chunks/loadedSettingsAdapter-KJCLZ3C4.js +110 -0
  244. package/chunks/{loggingContentGenerator-73C7TKDK.js → loggingContentGenerator-DSFQHXIF.js} +328 -37
  245. package/chunks/{loop-wakeup-XBPB2BRO.js → loop-wakeup-XJFONSQ7.js} +5 -5
  246. package/chunks/{ls-WFONAND2.js → ls-3VAT2J7A.js} +4 -4
  247. package/chunks/{lsp-DUKPDUXN.js → lsp-5W7IRUBH.js} +2 -2
  248. package/chunks/{managed-npm-update-H2KOLQZU.js → managed-npm-update-TSWENTK5.js} +57 -59
  249. package/chunks/mcp-MWSAPFOL.js +110 -0
  250. package/chunks/{monitor-TGCMNJJH.js → monitor-RW4GWJHB.js} +44 -46
  251. package/chunks/nonInteractiveCli-JXKL343Q.js +185 -0
  252. package/chunks/{notebook-edit-YEUNZYDX.js → notebook-edit-CQNYS5OR.js} +45 -47
  253. package/chunks/{open-with-auth-4UI3KHUR.js → open-with-auth-YN3QZHVM.js} +1 -1
  254. package/chunks/{openaiContentGenerator-J7LD4VSL.js → openaiContentGenerator-J6QIF7EX.js} +26 -28
  255. package/chunks/pidfile-QOIQZFT2.js +111 -0
  256. package/chunks/process-registry-OAEG6WGC.js +662 -0
  257. package/chunks/{processUtils-ZHFC7CSL.js → processUtils-GPHNANKZ.js} +2 -2
  258. package/chunks/prompt-terminal-ledger-FOMFTYOM.js +105 -0
  259. package/chunks/{qwenContentGenerator-YEWWK3JQ.js → qwenContentGenerator-WWDXPYQI.js} +49 -51
  260. package/chunks/{qwenOAuth2-JIYAWXTW.js → qwenOAuth2-OF5WRBQT.js} +7 -9
  261. package/chunks/{read-file-ZQI3WPVK.js → read-file-FQUQHC6N.js} +13 -13
  262. package/chunks/{read-mcp-resource-7A7NFSFL.js → read-mcp-resource-XD257PGJ.js} +2 -2
  263. package/chunks/{record-artifact-CPJ4IJSD.js → record-artifact-VW23GS4F.js} +4 -4
  264. package/chunks/{report-findings-VFM5DENC.js → report-findings-AO5VYFLR.js} +9 -5
  265. package/chunks/{request-shutdown-6IW46GD7.js → request-shutdown-BCLA3JV2.js} +7 -7
  266. package/chunks/resumeHistoryUtils-NSGF3UCB.js +118 -0
  267. package/chunks/ripGrep-4CAT6SKV.js +39 -0
  268. package/chunks/{run-qwen-serve-WHWU7NZ6.js → run-qwen-serve-5X6IDZER.js} +371 -357
  269. package/chunks/{runtime-E7BSPWQP.js → runtime-HK27GMPF.js} +69 -71
  270. package/chunks/scheduled-tasks-MN2ZZ5P6.js +127 -0
  271. package/chunks/{scheduler-TJPATFOM.js → scheduler-WD4MHMO5.js} +58 -60
  272. package/chunks/{sdk-exporters-http-XXSKBD2C.js → sdk-exporters-http-TTU2CHBU.js} +2 -2
  273. package/chunks/{sdk-impl-VPNBLV7I.js → sdk-impl-UUMVYMAL.js} +11 -5
  274. package/chunks/{send-message-OXZK6USO.js → send-message-AJ4OCUBV.js} +25 -9
  275. package/chunks/serve-2XCHPPGG.js +118 -0
  276. package/chunks/{server-AXCN7QBJ.js → server-GO2N5DH7.js} +6080 -4964
  277. package/chunks/{session-HO4US3AG.js → session-IFNHTUBT.js} +112 -112
  278. package/chunks/session-pr-refresh-I3UBWMVP.js +364 -0
  279. package/chunks/{settings-B2PFJJN4.js → settings-L6N54CU6.js} +63 -65
  280. package/chunks/{shell-7XMSANI3.js → shell-4Y5LLW6N.js} +44 -46
  281. package/chunks/{skill-NL3VH562.js → skill-YOWTRAKQ.js} +68 -24
  282. package/chunks/skill-settings-ZL4JY5UE.js +118 -0
  283. package/chunks/spawnChannel-ZST6XJVJ.js +112 -0
  284. package/chunks/standalone-update-THVU3OKY.js +118 -0
  285. package/chunks/{startInteractiveUI-G2XKSCQ7.js → startInteractiveUI-XDFSHBZD.js} +3076 -2475
  286. package/chunks/{stdioHelpers-7A2EE64Z.js → stdioHelpers-AY6XCDY2.js} +3 -1
  287. package/chunks/{syntheticOutput-5AJ444QT.js → syntheticOutput-ML43GEFN.js} +3 -3
  288. package/chunks/{task-create-TY7P6UHG.js → task-create-QN4LYRSE.js} +11 -11
  289. package/chunks/{task-list-BELMPA75.js → task-list-JPLGK45U.js} +5 -5
  290. package/chunks/{task-stop-U3S3KZG2.js → task-stop-CXEH5L2D.js} +2 -2
  291. package/chunks/{task-update-O4IGDPCK.js → task-update-IWEOJFV2.js} +11 -11
  292. package/chunks/{team-create-IYBUOORE.js → team-create-OOPXCDBA.js} +44 -46
  293. package/chunks/{team-delete-YWFXX77L.js → team-delete-RZVVSGCY.js} +5 -5
  294. package/chunks/{team-plan-approval-YKU57LBM.js → team-plan-approval-DSX5EWAT.js} +44 -46
  295. package/chunks/terminal-image-renderer-KS25G33E.js +114 -0
  296. package/chunks/theme-manager-YMZNG45F.js +102 -0
  297. package/chunks/{todoWrite-435EO2CS.js → todoWrite-WDJNQEMW.js} +43 -25
  298. package/chunks/{tool-search-4Q3KASIQ.js → tool-search-J5Q6U7DN.js} +22 -22
  299. package/chunks/total-session-admission-PVN64JVV.js +114 -0
  300. package/chunks/trustedFolders-FATSC4YI.js +122 -0
  301. package/chunks/{types-WYCFCEHR.js → types-HKLPXZB3.js} +1 -3
  302. package/chunks/{update-relaunch-4DC2KKFS.js → update-relaunch-SIKHLHVR.js} +6 -6
  303. package/chunks/updateCheck-D3YG2WCD.js +118 -0
  304. package/chunks/useAutoAcceptIndicator-ILINOSAS.js +120 -0
  305. package/chunks/{validateNonInterActiveAuth-YAE4YPO3.js → validateNonInterActiveAuth-JUDQP6V4.js} +105 -105
  306. package/chunks/{version-QFP7OGWX.js → version-C63GDDWN.js} +1 -1
  307. package/chunks/{web-fetch-6T23IK6Q.js → web-fetch-FOQZMNSC.js} +16 -18
  308. package/chunks/{web-search-WBWTCZK2.js → web-search-PUJTBFUC.js} +9 -11
  309. package/chunks/{web-shell-static-A6QMUNNV.js → web-shell-static-HNB4FDOE.js} +2 -2
  310. package/chunks/{workflow-FMAA3D4R.js → workflow-Y5IPINVH.js} +128 -94
  311. package/chunks/workspace-providers-status-IJ4VHFMB.js +114 -0
  312. package/chunks/{workspace-registration-store-CMMX7EPX.js → workspace-registration-store-SMJWI2AI.js} +1 -1
  313. package/chunks/workspace-registry-BTGZIMPK.js +123 -0
  314. package/chunks/workspace-service-SIN67ITC.js +126 -0
  315. package/chunks/workspace-skills-status-F3RKCUIX.js +113 -0
  316. package/chunks/{workspace-trust-reconciler-PJDQUTJL.js → workspace-trust-reconciler-PLIDLJZX.js} +72 -72
  317. package/chunks/write-file-PAIGB33C.js +88 -0
  318. package/chunks/{zh-TW-MV4FWFB6.js → zh-TW-RPTMRTHG.js} +2 -1
  319. package/chunks/{zh-X3WGU6SI.js → zh-UNY63FR3.js} +2 -1
  320. package/chunks/{zoom-image-WVYVFRXF.js → zoom-image-LYQD7BQA.js} +13 -13
  321. package/cli.js +16 -16
  322. package/locales/en.js +2 -0
  323. package/locales/zh-TW.js +2 -0
  324. package/locales/zh.js +2 -0
  325. package/package.json +3 -3
  326. package/web-shell/assets/{abnfDiagram-VCTEODGH-d-8xa8uz.js → abnfDiagram-VCTEODGH-TRCMSA_6.js} +1 -1
  327. package/web-shell/assets/{arc-BhB7CrGK.js → arc-D9Uls5b3.js} +1 -1
  328. package/web-shell/assets/{architectureDiagram-5GKGNRK7-BDCd_IcJ.js → architectureDiagram-5GKGNRK7-Bwb8jPXg.js} +1 -1
  329. package/web-shell/assets/{blockDiagram-NRAW4CY4-C-AHu6mi.js → blockDiagram-NRAW4CY4-DHj71TSX.js} +1 -1
  330. package/web-shell/assets/{c4Diagram-UCG6FXSJ-CFjQt0vl.js → c4Diagram-UCG6FXSJ-uKBBdbyr.js} +1 -1
  331. package/web-shell/assets/channel-CXjVLaBa.js +1 -0
  332. package/web-shell/assets/{chunk-2Q5K7J3B-DRjwqaDq.js → chunk-2Q5K7J3B-BZd0Phrl.js} +1 -1
  333. package/web-shell/assets/{chunk-5VM5RSS4-eHM9noJE.js → chunk-5VM5RSS4-7KNeNBqN.js} +1 -1
  334. package/web-shell/assets/{chunk-F27PBJKO-CcSWUYn1.js → chunk-F27PBJKO-BeboS7Fi.js} +1 -1
  335. package/web-shell/assets/{chunk-G27WJ6UU-DNr-RF5S.js → chunk-G27WJ6UU-RV3JONoj.js} +1 -1
  336. package/web-shell/assets/{chunk-JWPE2WC7-rVJHoNF8.js → chunk-JWPE2WC7-Yw9FCFsP.js} +1 -1
  337. package/web-shell/assets/{chunk-LCL6LL3I-B2aX0Gzy.js → chunk-LCL6LL3I-GIMnydDe.js} +1 -1
  338. package/web-shell/assets/{chunk-POPQ4Y6H-DVp07n32.js → chunk-POPQ4Y6H-Cfrux7bL.js} +1 -1
  339. package/web-shell/assets/{chunk-SVP7TREG-C6QB_KUr.js → chunk-SVP7TREG-BlvIN0CO.js} +1 -1
  340. package/web-shell/assets/{chunk-XXDRQBXY-CLVxDNCy.js → chunk-XXDRQBXY-DMs7Rr4t.js} +1 -1
  341. package/web-shell/assets/classDiagram-DTDB5LWJ-DANEijO3.js +1 -0
  342. package/web-shell/assets/classDiagram-v2-JRS7N3AN-DANEijO3.js +1 -0
  343. package/web-shell/assets/{cose-bilkent-JH36ORCC-B_aKX3A3.js → cose-bilkent-JH36ORCC-DNGqTNwI.js} +1 -1
  344. package/web-shell/assets/{cynefin-OW5HDTMX-BBw2pPUa.js → cynefin-OW5HDTMX-CojMpaoH.js} +1 -1
  345. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-WWPiBTwk.js → cynefinDiagram-5FMLGOSQ-DF07YXGo.js} +1 -1
  346. package/web-shell/assets/{dagre-3AP2YEHR-CPtIdka-.js → dagre-3AP2YEHR-17-4WtCH.js} +1 -1
  347. package/web-shell/assets/{diagram-S7CK7UJ4-Dj5og1Xi.js → diagram-S7CK7UJ4-G3Wuyz9m.js} +1 -1
  348. package/web-shell/assets/{diagram-UQ7AKVKN-CC_x70YC.js → diagram-UQ7AKVKN-nyWIKZ8P.js} +1 -1
  349. package/web-shell/assets/{diagram-VSXAHHWV-rXMfsO4n.js → diagram-VSXAHHWV-tKHhmYSC.js} +1 -1
  350. package/web-shell/assets/{diagram-VX7I27RA-DEmLYQbh.js → diagram-VX7I27RA-CpDf1hYk.js} +1 -1
  351. package/web-shell/assets/{diagram-Z3DM3KII-B0ys6Vxx.js → diagram-Z3DM3KII-Cah2IFXG.js} +1 -1
  352. package/web-shell/assets/{ebnfDiagram-PWID7BFC-Bq6y6lKH.js → ebnfDiagram-PWID7BFC-DNaCkgxy.js} +1 -1
  353. package/web-shell/assets/{erDiagram-SSCWMZ5O-l69JeBZ4.js → erDiagram-SSCWMZ5O-CAdRgcf1.js} +1 -1
  354. package/web-shell/assets/{flowDiagram-A5DVABFB-Cm-EzGY4.js → flowDiagram-A5DVABFB-CMUJAShL.js} +1 -1
  355. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-BRS9ZOp7.js → ganttDiagram-EL5Y4UJY-o-_MUNey.js} +1 -1
  356. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-DAMRKgLk.js → gitGraphDiagram-WWUBYQGX-_aG-2Z7O.js} +1 -1
  357. package/web-shell/assets/{index-Bncx8E8M.js → index-BK_NKxiJ.js} +1 -1
  358. package/web-shell/assets/index-Ci-z4zWY.js +1913 -0
  359. package/web-shell/assets/index-LDlXZRHA.css +36 -0
  360. package/web-shell/assets/{infoDiagram-RXCK75RN-DasffaZp.js → infoDiagram-RXCK75RN-qJPeZbGP.js} +1 -1
  361. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-CmRUt3C-.js → ishikawaDiagram-5VMMS53U-7Om4vNo1.js} +1 -1
  362. package/web-shell/assets/{journeyDiagram-EYS64GPL-DzhE_c1Z.js → journeyDiagram-EYS64GPL-BNtXqmBW.js} +1 -1
  363. package/web-shell/assets/{kanban-definition-3QL26DDD-BH5b6nn3.js → kanban-definition-3QL26DDD-COgFec8P.js} +1 -1
  364. package/web-shell/assets/{layout-BxoLK-LY.js → layout-B9n81PC9.js} +1 -1
  365. package/web-shell/assets/{linear-CqDPvVI7.js → linear-Bb6nXZQq.js} +1 -1
  366. package/web-shell/assets/{mermaid.core-DBoN4plo.js → mermaid.core-Cgrm3JVT.js} +6 -6
  367. package/web-shell/assets/{mindmap-definition-FBJOCRG2-DJJtXPEM.js → mindmap-definition-FBJOCRG2-TKwLTjnG.js} +1 -1
  368. package/web-shell/assets/{pegDiagram-XKGWAZYB-DmgPXP5l.js → pegDiagram-XKGWAZYB-BJPuvlpi.js} +1 -1
  369. package/web-shell/assets/{pieDiagram-E7YTZNPT-1ezjzcI5.js → pieDiagram-E7YTZNPT-D01VkNsW.js} +1 -1
  370. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-ChKARz3k.js → quadrantDiagram-AXDQQJYC-C4hHsiv-.js} +1 -1
  371. package/web-shell/assets/{railroadDiagram-O6MQD6OU-k7mNB_QT.js → railroadDiagram-O6MQD6OU-CuEO4xK2.js} +1 -1
  372. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-B0XFsii0.js → requirementDiagram-EFPCY7ZU-D5J_vIo5.js} +1 -1
  373. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-repJ2Ukk.js → sankeyDiagram-P5KCCOFB-DQKY223V.js} +1 -1
  374. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-D0gUSKGu.js → sequenceDiagram-WJ2MYXX4-D27YV_cm.js} +1 -1
  375. package/web-shell/assets/{sizeCapture-X5ZJPWSS-CE463F74.js → sizeCapture-X5ZJPWSS-TJg8UcwV.js} +1 -1
  376. package/web-shell/assets/{stateDiagram-HBIQ2CUA-003zYtJa.js → stateDiagram-HBIQ2CUA-CmnPzUIx.js} +1 -1
  377. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-DNKPyrDc.js +1 -0
  378. package/web-shell/assets/{swimlanes-XN3QIQJK-DBj8MFpu.js → swimlanes-XN3QIQJK-ByeP3_Nu.js} +1 -1
  379. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-ZL1HPC6w.js +8 -0
  380. package/web-shell/assets/{timeline-definition-24CTP7MA-D2aCh4a9.js → timeline-definition-24CTP7MA-BsFA5juR.js} +1 -1
  381. package/web-shell/assets/{vennDiagram-4TSXK5OY-BHMfWBpl.js → vennDiagram-4TSXK5OY-DREP2ECo.js} +1 -1
  382. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-RdHAj66j.js → wardleyDiagram-VM6X3IG4-iyd9lKi2.js} +1 -1
  383. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-BgJWOvq0.js → xychartDiagram-S5SC5T6Z-CVr1_j9q.js} +1 -1
  384. package/web-shell/index.html +3 -3
  385. package/chunks/MaxSizedBox-BFVLZP2E.js +0 -112
  386. package/chunks/agent-headless-UCBCS4V4.js +0 -87
  387. package/chunks/bridge-FRNYLYY7.js +0 -119
  388. package/chunks/channel-settings-store-IV4KDL7N.js +0 -117
  389. package/chunks/chunk-I6VVOZDK.js +0 -202
  390. package/chunks/chunk-JS73NNWF.js +0 -30
  391. package/chunks/chunk-K2OJUPOE.js +0 -78
  392. package/chunks/chunk-P3QQPMQA.js +0 -19
  393. package/chunks/chunk-SDVF6A42.js +0 -945
  394. package/chunks/chunk-VGHZT6JR.js +0 -51
  395. package/chunks/config-utils-PMX4QZ5Y.js +0 -113
  396. package/chunks/contextCommand-NZRLVAFC.js +0 -108
  397. package/chunks/daemon-status-provider-FTTYZEKN.js +0 -118
  398. package/chunks/daemon-trust-policy-WMGFPA3Z.js +0 -114
  399. package/chunks/deferred-core-runtime-BUFEFYNA.js +0 -116
  400. package/chunks/earlyInputCapture-ROPLMXA7.js +0 -109
  401. package/chunks/errors-U5KNAADB.js +0 -115
  402. package/chunks/exitPlanMode-VFJ5R5DD.js +0 -85
  403. package/chunks/handleAutoUpdate-W4BUYFT7.js +0 -111
  404. package/chunks/i18n-KX7FEKJJ.js +0 -126
  405. package/chunks/initializer-SNVVLS7Y.js +0 -115
  406. package/chunks/installationInfo-D4XGQNHJ.js +0 -109
  407. package/chunks/list-WYECMLXZ.js +0 -118
  408. package/chunks/loadedSettingsAdapter-5WZBXBCR.js +0 -112
  409. package/chunks/mcp-CBWAROY3.js +0 -112
  410. package/chunks/nonInteractiveCli-O232UUV7.js +0 -185
  411. package/chunks/pidfile-MSPQ255Y.js +0 -113
  412. package/chunks/process-registry-PMJOA5CO.js +0 -172
  413. package/chunks/prompt-terminal-ledger-YPGMNDXT.js +0 -107
  414. package/chunks/resumeHistoryUtils-35D4KAVT.js +0 -120
  415. package/chunks/ripGrep-46N4FLOS.js +0 -39
  416. package/chunks/serve-WQ54UIYG.js +0 -120
  417. package/chunks/skill-settings-SKMN5YXC.js +0 -120
  418. package/chunks/spawnChannel-NE43EEO3.js +0 -113
  419. package/chunks/standalone-update-XOCWGXAH.js +0 -120
  420. package/chunks/terminal-image-renderer-NREKYTAD.js +0 -116
  421. package/chunks/theme-manager-IJS6OICX.js +0 -104
  422. package/chunks/total-session-admission-L5RPEFZ2.js +0 -114
  423. package/chunks/trustedFolders-OILZCHRD.js +0 -124
  424. package/chunks/updateCheck-AK4COHNK.js +0 -120
  425. package/chunks/useAutoAcceptIndicator-O2N2Q6KG.js +0 -122
  426. package/chunks/workspace-providers-status-OCFEWIPQ.js +0 -116
  427. package/chunks/workspace-registry-WJLZPRTG.js +0 -123
  428. package/chunks/workspace-service-5ZOBMMIB.js +0 -131
  429. package/chunks/workspace-skills-status-B6NJZD4B.js +0 -115
  430. package/chunks/write-file-B2RNX6SU.js +0 -90
  431. package/web-shell/assets/channel-CU-Zyv0r.js +0 -1
  432. package/web-shell/assets/classDiagram-DTDB5LWJ-C0J2_LKs.js +0 -1
  433. package/web-shell/assets/classDiagram-v2-JRS7N3AN-C0J2_LKs.js +0 -1
  434. package/web-shell/assets/index-C-XlQn24.css +0 -5
  435. package/web-shell/assets/index-gdvMN4J1.js +0 -1860
  436. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-2uACDdJN.js +0 -1
  437. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-C4JJkavU.js +0 -8
@@ -1,120 +1,121 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
3
  import {
4
+ isSymlinkedRoot,
4
5
  resolveSavedWorkflowScript,
5
6
  writeWorkflowSnapshot
6
- } from "./chunk-JSY43GMI.js";
7
+ } from "./chunk-2OUD5T67.js";
7
8
  import {
8
9
  AgentEventEmitter,
9
- FileDiscoveryService,
10
10
  attachJsonlTranscriptWriter,
11
11
  buildAgentTranscriptAttach,
12
+ deriveApprovalModeConfig,
13
+ deriveConfig,
14
+ deriveWorktreeConfig,
12
15
  getRuleDisplayName,
13
16
  isTerminalWorkflowStatus,
14
17
  rebuildToolRegistryOnOverride,
15
18
  resolveExternalWorktreeDir,
16
19
  resolveToolName,
17
20
  toModelVisibleSubagentResult
18
- } from "./chunk-XIRDDFRS.js";
21
+ } from "./chunk-PZ66FRIC.js";
19
22
  import "./chunk-GOFAQQZA.js";
20
23
  import "./chunk-5M6IDOMF.js";
21
24
  import "./chunk-TWPJO254.js";
22
25
  import "./chunk-CQ35AJ4Z.js";
23
- import "./chunk-3UZCLCXR.js";
24
- import "./chunk-TOF4UZHH.js";
25
- import "./chunk-O3BUXIPM.js";
26
- import "./chunk-ZLTEQYNC.js";
26
+ import "./chunk-EKSCLBBF.js";
27
+ import "./chunk-LUEHOUHM.js";
28
+ import "./chunk-WXEA74YB.js";
29
+ import "./chunk-42IDLQWS.js";
27
30
  import {
28
31
  parsePositiveIntegerEnv
29
32
  } from "./chunk-6PVPNMXU.js";
30
- import "./chunk-AYVIGUUK.js";
33
+ import "./chunk-JB4JIVTJ.js";
34
+ import "./chunk-DJBQCO2E.js";
31
35
  import "./chunk-IRH27ZC2.js";
32
36
  import "./chunk-QHWCP53L.js";
33
- import "./chunk-JECO75XD.js";
37
+ import "./chunk-D5LUXLUH.js";
34
38
  import "./chunk-O6GEWCJA.js";
35
39
  import "./chunk-T26EAKDL.js";
36
40
  import {
37
41
  GitWorktreeService,
38
42
  generateAgentWorktreeSlug,
39
43
  writeWorktreeSessionMarker
40
- } from "./chunk-LJP2BBMK.js";
44
+ } from "./chunk-2SXSLSQE.js";
41
45
  import "./chunk-CPBF7KYF.js";
42
- import "./chunk-I6DY753S.js";
43
- import "./chunk-T2CRBIDJ.js";
44
- import "./chunk-77TOMRBG.js";
45
- import "./chunk-DEYPMJPD.js";
46
- import "./chunk-T6OODF2U.js";
47
- import "./chunk-27ONXAFY.js";
48
- import "./chunk-ZEADBZLO.js";
49
- import "./chunk-FN5C6C7G.js";
46
+ import "./chunk-KJO2LBUK.js";
47
+ import "./chunk-TTX2JUE6.js";
48
+ import "./chunk-4K7KNVWH.js";
49
+ import "./chunk-SMPR7SPO.js";
50
+ import "./chunk-JWALNCLT.js";
51
+ import "./chunk-NIFYWDYN.js";
52
+ import "./chunk-C2X7KY45.js";
53
+ import "./chunk-JHYH6PYQ.js";
54
+ import "./chunk-7J6OTNGO.js";
50
55
  import {
51
56
  SUBAGENT_PLAN_LIFECYCLE_TOOLS
52
- } from "./chunk-XR7OIAQF.js";
57
+ } from "./chunk-V5J4J5TP.js";
53
58
  import "./chunk-MLXTMF7H.js";
54
59
  import "./chunk-NAVJD2PQ.js";
55
- import "./chunk-FVDQ5E67.js";
56
- import "./chunk-V3GINY6K.js";
60
+ import "./chunk-B466ZSHZ.js";
61
+ import "./chunk-4QHPPXK2.js";
57
62
  import "./chunk-QHMLYMMS.js";
58
- import "./chunk-SDVF6A42.js";
59
- import "./chunk-P3QQPMQA.js";
60
- import "./chunk-ILPXSKGQ.js";
61
- import "./chunk-SAH4BD2J.js";
62
- import "./chunk-ZKAZP2ZG.js";
63
+ import "./chunk-3WK3QDNV.js";
64
+ import "./chunk-PQEISIKS.js";
65
+ import "./chunk-EB6QRGHM.js";
63
66
  import {
64
67
  runWithAgentContext
65
- } from "./chunk-U45D46O5.js";
68
+ } from "./chunk-CMHFCLBU.js";
66
69
  import "./chunk-S6LOFUVP.js";
70
+ import "./chunk-CFKIH3D3.js";
67
71
  import "./chunk-2LD5U7Q3.js";
68
72
  import {
69
73
  createAbortController,
70
74
  createChildAbortController
71
75
  } from "./chunk-DJ2GSRLV.js";
72
- import "./chunk-I6VVOZDK.js";
73
- import "./chunk-K2OJUPOE.js";
74
- import "./chunk-CFKIH3D3.js";
75
- import "./chunk-EB4VDXNI.js";
76
- import "./chunk-FJWICLG7.js";
76
+ import "./chunk-DYXFD5RO.js";
77
+ import "./chunk-V4264FEG.js";
77
78
  import {
78
79
  WorkflowRunEvent,
79
80
  logWorkflowRun,
80
81
  read,
81
82
  writeLine
82
- } from "./chunk-OF2DPXUS.js";
83
- import "./chunk-YRLW2MSX.js";
83
+ } from "./chunk-QYMAKPY5.js";
84
+ import "./chunk-XBVNNDPK.js";
84
85
  import "./chunk-VGC4I5JJ.js";
85
- import "./chunk-WBT3STGU.js";
86
- import "./chunk-PVBT5QPD.js";
87
- import "./chunk-IPQA4SR5.js";
86
+ import {
87
+ isWithinRoot
88
+ } from "./chunk-BKWNKLZB.js";
89
+ import "./chunk-6PJOTWAN.js";
90
+ import "./chunk-BWORX6FA.js";
88
91
  import "./chunk-WZAD4ZNJ.js";
89
92
  import "./chunk-FPGTNKCP.js";
90
- import "./chunk-SLEWBQWM.js";
91
- import "./chunk-AA7VBRBG.js";
93
+ import "./chunk-6DIGWMGT.js";
94
+ import "./chunk-W3JH33JE.js";
92
95
  import "./chunk-XZA32HII.js";
93
- import "./chunk-7QGEJI7M.js";
94
- import "./chunk-GTUKW3I6.js";
96
+ import "./chunk-23RFD54N.js";
97
+ import "./chunk-PPKZ7JOE.js";
95
98
  import "./chunk-HHJLM3WQ.js";
96
99
  import {
97
100
  stripAnsiAndControl
98
- } from "./chunk-6US7BF3G.js";
101
+ } from "./chunk-B5PHIJGI.js";
99
102
  import "./chunk-74TONY4F.js";
100
103
  import {
101
104
  SyntheticOutputTool
102
- } from "./chunk-VL4YX3FH.js";
103
- import "./chunk-7OBH4AM2.js";
104
- import "./chunk-OT4YKUUV.js";
105
+ } from "./chunk-XF63PKEN.js";
106
+ import "./chunk-CAJTKR6W.js";
107
+ import "./chunk-ZU4UDIWX.js";
105
108
  import "./chunk-AQ37AY7B.js";
106
- import {
107
- WorkspaceContext
108
- } from "./chunk-RRKNX553.js";
109
+ import "./chunk-PDQGMSZK.js";
109
110
  import {
110
111
  BaseDeclarativeTool,
111
112
  BaseToolInvocation,
112
113
  ToolDisplayNames,
113
114
  ToolNames
114
- } from "./chunk-KOJ6MHD5.js";
115
+ } from "./chunk-UTLCH2FK.js";
115
116
  import {
116
117
  createDebugLogger
117
- } from "./chunk-2NNTE2ED.js";
118
+ } from "./chunk-UHQFIS7N.js";
118
119
  import "./chunk-75DOP5OR.js";
119
120
  import "./chunk-DMTGGOSA.js";
120
121
  import "./chunk-YQ3U5MUC.js";
@@ -1575,8 +1576,8 @@ function createWorkflowSandbox(opts) {
1575
1576
  const flushUnconsumedRejections = /* @__PURE__ */ __name(async () => {
1576
1577
  unconsumedSettled = true;
1577
1578
  if (nextUnconsumedId === 1) return;
1578
- await new Promise((resolve) => {
1579
- setImmediate(resolve);
1579
+ await new Promise((resolve2) => {
1580
+ setImmediate(resolve2);
1580
1581
  });
1581
1582
  for (const rec of unconsumedRejections.values()) {
1582
1583
  const rootState = unconsumedRoots.get(rec.rootId);
@@ -2061,14 +2062,14 @@ var WorkflowDispatchScheduler = class {
2061
2062
  };
2062
2063
  }
2063
2064
  run(thunk) {
2064
- return new Promise((resolve, reject) => {
2065
+ return new Promise((resolve2, reject) => {
2065
2066
  if (this.signal?.aborted) {
2066
2067
  reject(abortError());
2067
2068
  return;
2068
2069
  }
2069
2070
  this.queue.push({
2070
2071
  thunk,
2071
- resolve,
2072
+ resolve: resolve2,
2072
2073
  reject
2073
2074
  });
2074
2075
  this.pump();
@@ -2092,8 +2093,8 @@ var WorkflowDispatchScheduler = class {
2092
2093
  waitUntilRunning() {
2093
2094
  if (this.signal?.aborted) return Promise.reject(abortError());
2094
2095
  if (this.state === "running") return Promise.resolve();
2095
- return new Promise((resolve, reject) => {
2096
- this.gateWaiters.push({ resolve, reject });
2096
+ return new Promise((resolve2, reject) => {
2097
+ this.gateWaiters.push({ resolve: resolve2, reject });
2097
2098
  });
2098
2099
  }
2099
2100
  snapshot() {
@@ -2350,7 +2351,7 @@ function attachDispatchTranscript(config, agentId, prompt, agentName, emitter, a
2350
2351
  }
2351
2352
  __name(attachDispatchTranscript, "attachDispatchTranscript");
2352
2353
  async function runSingleDispatch(config, prompt, opts, attemptSignal, emitter, workflowAgentId, agentIdentity, onTokens) {
2353
- const { AgentHeadless, ContextState } = await import("./agent-headless-UCBCS4V4.js");
2354
+ const { AgentHeadless, ContextState } = await import("./agent-headless-IZM25LJA.js");
2354
2355
  const ctx = new ContextState();
2355
2356
  ctx.set("task_prompt", prompt);
2356
2357
  debugLogger.debug(`[workflow] Dispatch ${workflowAgentId}`);
@@ -2376,7 +2377,11 @@ async function runSingleDispatch(config, prompt, opts, attemptSignal, emitter, w
2376
2377
  { tools: ["*"], disallowedTools: WORKFLOW_SUBAGENT_DISALLOWED_TOOLS },
2377
2378
  // P-stall: the stall-watchdog emitter observes reasoning-loop events
2378
2379
  // (round/tool/usage) to detect a hang and abort `attemptSignal`.
2379
- emitter
2380
+ emitter,
2381
+ void 0,
2382
+ void 0,
2383
+ prompt,
2384
+ workflowAgentId
2380
2385
  );
2381
2386
  try {
2382
2387
  await runWithAgentContext(
@@ -2466,6 +2471,7 @@ ${WORKFLOW_SUBAGENT_SYSTEM_PROMPT_WITH_SCHEMA}` : WORKFLOW_SUBAGENT_SYSTEM_PROMP
2466
2471
  };
2467
2472
  let worktreeIsolation = null;
2468
2473
  let effectiveContext = config;
2474
+ let approvalCleanup;
2469
2475
  if (opts.isolation !== void 0 && opts.workingDir !== void 0) {
2470
2476
  throw new Error(
2471
2477
  "agent({workingDir, isolation}): incompatible options. workingDir pins the agent to a worktree you already own; isolation creates a fresh one and removes it afterwards. Pass one."
@@ -2473,10 +2479,9 @@ ${WORKFLOW_SUBAGENT_SYSTEM_PROMPT_WITH_SCHEMA}` : WORKFLOW_SUBAGENT_SYSTEM_PROMP
2473
2479
  }
2474
2480
  if (opts.isolation === "worktree") {
2475
2481
  worktreeIsolation = await provisionWorkflowWorktree(config);
2476
- effectiveContext = createDirScopedConfigOverride(
2477
- config,
2478
- worktreeIsolation.path
2479
- );
2482
+ effectiveContext = deriveWorktreeConfig(config, worktreeIsolation.path, {
2483
+ customIgnoreFiles: config.getFileFilteringOptions().customIgnoreFiles
2484
+ });
2480
2485
  } else if (opts.workingDir !== void 0) {
2481
2486
  if (typeof opts.workingDir !== "string" || opts.workingDir.trim().length === 0) {
2482
2487
  throw new Error(
@@ -2493,7 +2498,17 @@ ${WORKFLOW_SUBAGENT_SYSTEM_PROMPT_WITH_SCHEMA}` : WORKFLOW_SUBAGENT_SYSTEM_PROMP
2493
2498
  `agent({workingDir: ${sanitizeForErrorMessage(JSON.stringify(opts.workingDir))}}): ${sanitizeForErrorMessage(resolved.error)}`
2494
2499
  );
2495
2500
  }
2496
- effectiveContext = createDirScopedConfigOverride(config, resolved.path);
2501
+ effectiveContext = deriveWorktreeConfig(config, resolved.path, {
2502
+ customIgnoreFiles: config.getFileFilteringOptions().customIgnoreFiles
2503
+ });
2504
+ }
2505
+ if (effectiveContext !== config) {
2506
+ const approvalHandle = deriveApprovalModeConfig(
2507
+ effectiveContext,
2508
+ config.getApprovalMode()
2509
+ );
2510
+ approvalCleanup = approvalHandle.cleanup;
2511
+ effectiveContext = approvalHandle.config;
2497
2512
  }
2498
2513
  let onParentAbort;
2499
2514
  try {
@@ -2534,7 +2549,9 @@ ${WORKFLOW_SUBAGENT_SYSTEM_PROMPT_WITH_SCHEMA}` : WORKFLOW_SUBAGENT_SYSTEM_PROMP
2534
2549
  max_turns: resolveSubagentMaxTurns(),
2535
2550
  max_time_minutes: resolveSubagentMaxTimeMinutes()
2536
2551
  },
2537
- eventEmitter
2552
+ eventEmitter,
2553
+ taskName: String(ctx.get("task_prompt")),
2554
+ subagentId: workflowAgentId
2538
2555
  }
2539
2556
  );
2540
2557
  try {
@@ -2604,6 +2621,7 @@ ${WORKFLOW_SUBAGENT_SYSTEM_PROMPT_WITH_SCHEMA}` : WORKFLOW_SUBAGENT_SYSTEM_PROMP
2604
2621
  if (onParentAbort && signal) {
2605
2622
  signal.removeEventListener("abort", onParentAbort);
2606
2623
  }
2624
+ approvalCleanup?.();
2607
2625
  if (worktreeIsolation) {
2608
2626
  try {
2609
2627
  await cleanupWorkflowWorktree(worktreeIsolation);
@@ -2686,26 +2704,6 @@ async function provisionWorkflowWorktree(config) {
2686
2704
  };
2687
2705
  }
2688
2706
  __name(provisionWorkflowWorktree, "provisionWorkflowWorktree");
2689
- function createDirScopedConfigOverride(base, wtPath) {
2690
- const ov = Object.create(base);
2691
- ov.targetDir = wtPath;
2692
- ov.cwd = wtPath;
2693
- ov.getTargetDir = () => wtPath;
2694
- ov.getCwd = () => wtPath;
2695
- ov.getWorkingDir = () => wtPath;
2696
- ov.getProjectRoot = () => wtPath;
2697
- const wtFileService = new FileDiscoveryService(
2698
- wtPath,
2699
- base.getFileFilteringOptions().customIgnoreFiles
2700
- );
2701
- ov.fileDiscoveryService = wtFileService;
2702
- ov.getFileService = () => wtFileService;
2703
- const wtWorkspace = new WorkspaceContext(wtPath);
2704
- ov.workspaceContext = wtWorkspace;
2705
- ov.getWorkspaceContext = () => wtWorkspace;
2706
- return ov;
2707
- }
2708
- __name(createDirScopedConfigOverride, "createDirScopedConfigOverride");
2709
2707
  async function cleanupWorkflowWorktree(isolation) {
2710
2708
  const wtService = new GitWorktreeService(isolation.repoRoot);
2711
2709
  const [hasChanges, hasUnmerged] = await Promise.all([
@@ -2795,7 +2793,7 @@ function attachSchemaListeners(emitter, state) {
2795
2793
  }
2796
2794
  __name(attachSchemaListeners, "attachSchemaListeners");
2797
2795
  async function createSchemaConfigOverride(base, schema) {
2798
- const override = Object.create(base);
2796
+ const override = deriveConfig(base);
2799
2797
  await rebuildToolRegistryOnOverride(override, base);
2800
2798
  const registry = override.getToolRegistry();
2801
2799
  registry.registerTool(new SyntheticOutputTool(schema));
@@ -3477,6 +3475,7 @@ function extractErrorMessage2(error) {
3477
3475
  __name(extractErrorMessage2, "extractErrorMessage");
3478
3476
 
3479
3477
  // packages/core/src/tools/workflow/workflow.ts
3478
+ import { promises as fs } from "node:fs";
3480
3479
  import * as path from "node:path";
3481
3480
  var WORKFLOW_PARAM_SCHEMA = {
3482
3481
  type: "object",
@@ -3487,7 +3486,7 @@ var WORKFLOW_PARAM_SCHEMA = {
3487
3486
  },
3488
3487
  scriptPath: {
3489
3488
  type: "string",
3490
- description: "Optional. Absolute path to a saved workflow `.js` file to load and run instead of inline `script`. Primarily set by the `/<name>` saved-workflow slash command. Provide exactly ONE of `script` or `scriptPath`. The file is read at execution time, so edits to a saved workflow take effect on the next run."
3489
+ description: "Optional. Absolute path to a workflow `.js` file to load and run instead of inline `script`. Primarily set by the `/<name>` saved-workflow slash command; a tool that generated a script for this run hands you its path the same way. The file must resolve inside a saved-workflow directory (`.qwen/workflows`, `~/.qwen/workflows`) or the generated-scripts root (`$QWEN_CODE_PROJECT_DIR/workflows/generated` \u2014 the per-project runtime dir, not the project tree) \u2014 any other path is refused. Provide exactly ONE of `script` or `scriptPath`. The file is read at execution time, so edits to a saved workflow take effect on the next run."
3491
3490
  },
3492
3491
  args: {
3493
3492
  description: "Optional structured value bound to the `args` global. Pass actual JSON, not a stringified value."
@@ -3538,7 +3537,11 @@ var WorkflowToolInvocation = class extends BaseToolInvocation {
3538
3537
  return `Run workflow: ${sanitizeLine(meta.name)}`;
3539
3538
  }
3540
3539
  if (this.params.scriptPath && this.params.script === void 0) {
3541
- return `Run saved workflow (${path.basename(this.params.scriptPath)})`;
3540
+ const kind = isGeneratedWorkflowScriptPath(
3541
+ this.config,
3542
+ this.params.scriptPath
3543
+ ) ? "generated workflow script" : "saved workflow";
3544
+ return `Run ${kind} (${path.basename(this.params.scriptPath)})`;
3542
3545
  }
3543
3546
  return `Run a workflow script (${this.params.script?.length ?? 0} chars)`;
3544
3547
  }
@@ -3571,9 +3574,17 @@ var WorkflowToolInvocation = class extends BaseToolInvocation {
3571
3574
  * pre-approved — but scoped to that path. The rule is built with the
3572
3575
  * same helpers the matcher uses so a tool rename moves both sides.
3573
3576
  */
3574
- getConfirmationDetails(_abortSignal) {
3577
+ async getConfirmationDetails(_abortSignal) {
3575
3578
  const meta = this.resolveMeta();
3576
- const body = buildConfirmationPrompt(this.params, meta);
3579
+ const isGeneratedScriptPath = this.params.scriptPath !== void 0 && await isGeneratedWorkflowScriptPathCanonical(
3580
+ this.config,
3581
+ this.params.scriptPath
3582
+ );
3583
+ const body = buildConfirmationPrompt(
3584
+ this.params,
3585
+ meta,
3586
+ isGeneratedScriptPath
3587
+ );
3577
3588
  const banner = resolveUsageBanner(
3578
3589
  this.config,
3579
3590
  this.config.getWorkflowRunRegistry?.(),
@@ -3594,7 +3605,7 @@ var WorkflowToolInvocation = class extends BaseToolInvocation {
3594
3605
  onConfirm: /* @__PURE__ */ __name(async (_outcome, _payload) => {
3595
3606
  }, "onConfirm")
3596
3607
  };
3597
- return Promise.resolve(details);
3608
+ return details;
3598
3609
  }
3599
3610
  async execute(signal, updateOutput, _shellExecutionConfig) {
3600
3611
  const runInBackground = this.params.run_in_background === true;
@@ -3765,13 +3776,36 @@ function readMetaForConfirmation(script) {
3765
3776
  }
3766
3777
  }
3767
3778
  __name(readMetaForConfirmation, "readMetaForConfirmation");
3768
- function buildConfirmationPrompt(params, meta) {
3779
+ function isGeneratedWorkflowScriptPath(config, scriptPath) {
3780
+ return isWithinRoot(scriptPath, config.storage.getGeneratedWorkflowsDir());
3781
+ }
3782
+ __name(isGeneratedWorkflowScriptPath, "isGeneratedWorkflowScriptPath");
3783
+ async function isGeneratedWorkflowScriptPathCanonical(config, scriptPath) {
3784
+ const root = config.storage.getGeneratedWorkflowsDir();
3785
+ if (await isSymlinkedRoot(root)) return false;
3786
+ let realScriptPath;
3787
+ try {
3788
+ realScriptPath = await fs.realpath(scriptPath);
3789
+ } catch {
3790
+ return isWithinRoot(scriptPath, root);
3791
+ }
3792
+ let realRoot;
3793
+ try {
3794
+ realRoot = await fs.realpath(root);
3795
+ } catch {
3796
+ realRoot = path.resolve(root);
3797
+ }
3798
+ return isWithinRoot(realScriptPath, realRoot);
3799
+ }
3800
+ __name(isGeneratedWorkflowScriptPathCanonical, "isGeneratedWorkflowScriptPathCanonical");
3801
+ function buildConfirmationPrompt(params, meta, isGeneratedScriptPath) {
3769
3802
  const lines = [];
3770
3803
  if (meta) {
3771
3804
  lines.push(`Workflow: ${sanitizeLine(meta.name)}`);
3772
3805
  lines.push(sanitizeLine(meta.description));
3773
3806
  } else if (params.scriptPath) {
3774
- lines.push(`Saved workflow: ${sanitizeLine(params.scriptPath)}`);
3807
+ const label = isGeneratedScriptPath ? "Generated workflow script" : "Saved workflow";
3808
+ lines.push(`${label}: ${sanitizeLine(params.scriptPath)}`);
3775
3809
  } else {
3776
3810
  lines.push("Workflow: (the script declares no meta block)");
3777
3811
  }
@@ -3889,7 +3923,7 @@ Reach for one to be comprehensive (decompose the work and cover every part in pa
3889
3923
 
3890
3924
  **Runtime** \u2014 see the \`script\` parameter for the detailed authoring contract.
3891
3925
 
3892
- \`phase(title)\`, \`log(msg)\`, \`agent(prompt, opts?)\`, \`parallel(thunks)\`, \`pipeline(items, ...stages)\`, \`workflow(nameOrRef, args?)\`, plus the \`args\` and \`budget\` globals. \`workflow()\` runs a saved workflow inline under this run's caps and nests one level only \u2014 a workflow reached through \`workflow()\` cannot call \`workflow()\` itself, and doing so throws. Saved workflows are \`<name>.js\` files under \`<projectRoot>/.qwen/workflows\` (project scope, also surfaced as \`/<name>\` slash commands) or \`~/.qwen/workflows\` (user scope, lower precedence when both define the same name); \`workflow('<name>')\` resolves against those two directories, while \`scriptPath\` takes an absolute path to a script anywhere. Default \`max(1, min(16, cpus-2))\` agents in flight per run (\`${MAX_WORKFLOW_CONCURRENCY_ENV}\`), up to ${DEFAULT_MAX_AGENTS_PER_RUN} agents total (\`${MAX_WORKFLOW_AGENTS_ENV}\`), under a 30-minute wall-clock cap per run (\`QWEN_CODE_MAX_WORKFLOW_SECONDS\`) \u2014 a fan-out near the agent cap will not fit inside the default cap. Each subagent attempt is separately capped at ${DEFAULT_WORKFLOW_SUBAGENT_MAX_TURNS} turns (\`${WORKFLOW_SUBAGENT_MAX_TURNS_ENV}\`) and ${DEFAULT_WORKFLOW_SUBAGENT_MAX_TIME_MINUTES} minutes (\`${WORKFLOW_SUBAGENT_MAX_MINUTES_ENV}\`) \u2014 an attempt that hits either becomes \`null\` in \`parallel()\`/\`pipeline()\`, indistinguishable from a missing agent, so raise them for legitimately long work. A per-run output-token cap may also be in effect: read \`budget.total\` (\`null\` = uncapped) before committing to a large fan-out, because once the cap is reached every further \`agent()\` call is refused \u2014 a bare sequential \`await agent()\` sees the rejection, while inside \`parallel()\`/\`pipeline()\` the refused slot becomes \`null\` and the script keeps running on partial results. Per-call \`agent({ schema, agentType, model, isolation: 'worktree', workingDir, stallMs })\` covers structured-output contracts, declarative-agent selection, model override, git-worktree-isolated subagents, pinning an agent to a caller-owned worktree, and the no-progress stall watchdog (\`stallMs: 0\` disables it). \`resumeFromRunId\` resumes a prior run \u2014 agent() calls whose rolling prefix-hash matches the journal are served from cache for the longest unchanged prefix. Runs appear in the background-tasks view and the \`/workflows\` dialog (live phase tree, token usage, cooperative pause/resume, cancel); \`run_in_background: true\` returns a run handle immediately in the interactive TUI and delivers completion through the conversation. Scripts run in a node:vm sandbox with no filesystem or shell access \u2014 all I/O happens through the spawned agents.
3926
+ \`phase(title)\`, \`log(msg)\`, \`agent(prompt, opts?)\`, \`parallel(thunks)\`, \`pipeline(items, ...stages)\`, \`workflow(nameOrRef, args?)\`, plus the \`args\` and \`budget\` globals. \`workflow()\` runs a saved workflow inline under this run's caps and nests one level only \u2014 a workflow reached through \`workflow()\` cannot call \`workflow()\` itself, and doing so throws. Saved workflows are \`<name>.js\` files under \`<projectRoot>/.qwen/workflows\` (project scope, also surfaced as \`/<name>\` slash commands) or \`~/.qwen/workflows\` (user scope, lower precedence when both define the same name); \`workflow('<name>')\` resolves against those two directories, while \`scriptPath\` takes an absolute path to a script inside either of them or inside the generated-scripts root (\`$QWEN_CODE_PROJECT_DIR/workflows/generated\` \u2014 the per-project runtime dir, not the project tree \u2014 where a tool emitting a one-run script writes it; never a slash command, never resolvable by name); a path outside those roots is refused. Default \`max(1, min(16, cpus-2))\` agents in flight per run (\`${MAX_WORKFLOW_CONCURRENCY_ENV}\`), up to ${DEFAULT_MAX_AGENTS_PER_RUN} agents total (\`${MAX_WORKFLOW_AGENTS_ENV}\`), under a 30-minute wall-clock cap per run (\`QWEN_CODE_MAX_WORKFLOW_SECONDS\`) \u2014 a fan-out near the agent cap will not fit inside the default cap. Each subagent attempt is separately capped at ${DEFAULT_WORKFLOW_SUBAGENT_MAX_TURNS} turns (\`${WORKFLOW_SUBAGENT_MAX_TURNS_ENV}\`) and ${DEFAULT_WORKFLOW_SUBAGENT_MAX_TIME_MINUTES} minutes (\`${WORKFLOW_SUBAGENT_MAX_MINUTES_ENV}\`) \u2014 an attempt that hits either becomes \`null\` in \`parallel()\`/\`pipeline()\`, indistinguishable from a missing agent, so raise them for legitimately long work. A per-run output-token cap may also be in effect: read \`budget.total\` (\`null\` = uncapped) before committing to a large fan-out, because once the cap is reached every further \`agent()\` call is refused \u2014 a bare sequential \`await agent()\` sees the rejection, while inside \`parallel()\`/\`pipeline()\` the refused slot becomes \`null\` and the script keeps running on partial results. Per-call \`agent({ schema, agentType, model, isolation: 'worktree', workingDir, stallMs })\` covers structured-output contracts, declarative-agent selection, model override, git-worktree-isolated subagents, pinning an agent to a caller-owned worktree, and the no-progress stall watchdog (\`stallMs: 0\` disables it). \`resumeFromRunId\` resumes a prior run \u2014 agent() calls whose rolling prefix-hash matches the journal are served from cache for the longest unchanged prefix. Runs appear in the background-tasks view and the \`/workflows\` dialog (live phase tree, token usage, cooperative pause/resume, cancel); \`run_in_background: true\` returns a run handle immediately in the interactive TUI and delivers completion through the conversation. Scripts run in a node:vm sandbox with no filesystem or shell access \u2014 all I/O happens through the spawned agents.
3893
3927
 
3894
3928
  **Scout first, then orchestrate**
3895
3929
 
@@ -3939,7 +3973,7 @@ var WorkflowTool = class extends BaseDeclarativeTool {
3939
3973
  const hasScript = typeof params.script === "string" && params.script.length > 0;
3940
3974
  const hasPath = typeof params.scriptPath === "string" && params.scriptPath.length > 0;
3941
3975
  if (!hasScript && !hasPath) {
3942
- return "WorkflowTool: provide `script` (inline source) or `scriptPath` (a saved workflow file).";
3976
+ return "WorkflowTool: provide `script` (inline source) or `scriptPath` (a workflow script file).";
3943
3977
  }
3944
3978
  if (hasScript && hasPath) {
3945
3979
  return "WorkflowTool: provide exactly one of `script` or `scriptPath`, not both.";
@@ -0,0 +1,114 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ createWorkspaceProvidersStatusProvider
5
+ } from "./chunk-YLSQLSH7.js";
6
+ import "./chunk-T4EFG2P5.js";
7
+ import "./chunk-OU5APVWO.js";
8
+ import "./chunk-GPGU4S2N.js";
9
+ import "./chunk-KID24ZFN.js";
10
+ import "./chunk-AIAOIFY4.js";
11
+ import "./chunk-RKUWKYED.js";
12
+ import "./chunk-ZEYFMJQA.js";
13
+ import "./chunk-GOXKNSDZ.js";
14
+ import "./chunk-IDS7MSUP.js";
15
+ import "./chunk-CLWO3B77.js";
16
+ import "./chunk-5EJZE3FP.js";
17
+ import "./chunk-XHF7WQ6B.js";
18
+ import "./chunk-MZCJWS5Y.js";
19
+ import "./chunk-MF7HCQWZ.js";
20
+ import "./chunk-NPQ5ZKRP.js";
21
+ import "./chunk-MR3PXB6E.js";
22
+ import "./chunk-NV55WWD6.js";
23
+ import "./chunk-2OUD5T67.js";
24
+ import "./chunk-CQH5KTKC.js";
25
+ import "./chunk-LJZSMWOH.js";
26
+ import "./chunk-NMOD2FXQ.js";
27
+ import "./chunk-WNPDGUJO.js";
28
+ import "./chunk-K5KXUXWC.js";
29
+ import "./chunk-62GQFYID.js";
30
+ import "./chunk-AYFA7MZV.js";
31
+ import "./chunk-XQFT3QUF.js";
32
+ import "./chunk-VTHREBQM.js";
33
+ import "./chunk-ZPJWUGCS.js";
34
+ import "./chunk-3JXM2CVW.js";
35
+ import "./chunk-ST5V3ZOC.js";
36
+ import "./chunk-PZ66FRIC.js";
37
+ import "./chunk-GOFAQQZA.js";
38
+ import "./chunk-5M6IDOMF.js";
39
+ import "./chunk-TWPJO254.js";
40
+ import "./chunk-CQ35AJ4Z.js";
41
+ import "./chunk-EKSCLBBF.js";
42
+ import "./chunk-LUEHOUHM.js";
43
+ import "./chunk-WXEA74YB.js";
44
+ import "./chunk-42IDLQWS.js";
45
+ import "./chunk-6PVPNMXU.js";
46
+ import "./chunk-JB4JIVTJ.js";
47
+ import "./chunk-DJBQCO2E.js";
48
+ import "./chunk-IRH27ZC2.js";
49
+ import "./chunk-QHWCP53L.js";
50
+ import "./chunk-D5LUXLUH.js";
51
+ import "./chunk-O6GEWCJA.js";
52
+ import "./chunk-T26EAKDL.js";
53
+ import "./chunk-2SXSLSQE.js";
54
+ import "./chunk-CPBF7KYF.js";
55
+ import "./chunk-KJO2LBUK.js";
56
+ import "./chunk-TTX2JUE6.js";
57
+ import "./chunk-4K7KNVWH.js";
58
+ import "./chunk-SMPR7SPO.js";
59
+ import "./chunk-JWALNCLT.js";
60
+ import "./chunk-NIFYWDYN.js";
61
+ import "./chunk-C2X7KY45.js";
62
+ import "./chunk-JHYH6PYQ.js";
63
+ import "./chunk-7J6OTNGO.js";
64
+ import "./chunk-V5J4J5TP.js";
65
+ import "./chunk-MLXTMF7H.js";
66
+ import "./chunk-NAVJD2PQ.js";
67
+ import "./chunk-B466ZSHZ.js";
68
+ import "./chunk-4QHPPXK2.js";
69
+ import "./chunk-QHMLYMMS.js";
70
+ import "./chunk-3WK3QDNV.js";
71
+ import "./chunk-VNOVK4I7.js";
72
+ import "./chunk-PQEISIKS.js";
73
+ import "./chunk-EB6QRGHM.js";
74
+ import "./chunk-CMHFCLBU.js";
75
+ import "./chunk-S6LOFUVP.js";
76
+ import "./chunk-CFKIH3D3.js";
77
+ import "./chunk-2LD5U7Q3.js";
78
+ import "./chunk-DJ2GSRLV.js";
79
+ import "./chunk-DYXFD5RO.js";
80
+ import "./chunk-V4264FEG.js";
81
+ import "./chunk-QYMAKPY5.js";
82
+ import "./chunk-XBVNNDPK.js";
83
+ import "./chunk-VGC4I5JJ.js";
84
+ import "./chunk-BKWNKLZB.js";
85
+ import "./chunk-6PJOTWAN.js";
86
+ import "./chunk-BWORX6FA.js";
87
+ import "./chunk-WZAD4ZNJ.js";
88
+ import "./chunk-FPGTNKCP.js";
89
+ import "./chunk-6DIGWMGT.js";
90
+ import "./chunk-W3JH33JE.js";
91
+ import "./chunk-XZA32HII.js";
92
+ import "./chunk-23RFD54N.js";
93
+ import "./chunk-PPKZ7JOE.js";
94
+ import "./chunk-HHJLM3WQ.js";
95
+ import "./chunk-B5PHIJGI.js";
96
+ import "./chunk-74TONY4F.js";
97
+ import "./chunk-XF63PKEN.js";
98
+ import "./chunk-CAJTKR6W.js";
99
+ import "./chunk-ZU4UDIWX.js";
100
+ import "./chunk-AQ37AY7B.js";
101
+ import "./chunk-PDQGMSZK.js";
102
+ import "./chunk-UTLCH2FK.js";
103
+ import "./chunk-UHQFIS7N.js";
104
+ import "./chunk-7FA2II6K.js";
105
+ import "./chunk-75DOP5OR.js";
106
+ import "./chunk-DMTGGOSA.js";
107
+ import "./chunk-YQ3U5MUC.js";
108
+ import "./chunk-AMDSOFFV.js";
109
+ import "./chunk-TBWQLLFO.js";
110
+ import "./chunk-5O2XNYP6.js";
111
+ import "./chunk-J2S4EL5Y.js";
112
+ export {
113
+ createWorkspaceProvidersStatusProvider
114
+ };
@@ -11,7 +11,7 @@ import {
11
11
  normalizeWorkspaceDisplayName,
12
12
  workspaceRegistrationId,
13
13
  workspaceRegistrationScopeHash
14
- } from "./chunk-5CMWFBML.js";
14
+ } from "./chunk-TEBDFQBZ.js";
15
15
  import "./chunk-6PLDPT2C.js";
16
16
  import "./chunk-5HBA2Z7V.js";
17
17
  import "./chunk-IDS7MSUP.js";