@qwen-code/qwen-code 0.21.2 → 0.21.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 (351) hide show
  1. package/bundled/qc-helper/docs/configuration/settings.md +41 -38
  2. package/bundled/qc-helper/docs/features/channels/github.md +7 -0
  3. package/bundled/qc-helper/docs/features/channels/gitlab.md +6 -0
  4. package/bundled/qc-helper/docs/features/code-review.md +78 -23
  5. package/bundled/qc-helper/docs/features/commands.md +2 -0
  6. package/bundled/qc-helper/docs/features/hooks.md +115 -18
  7. package/bundled/qc-helper/docs/features/memory.md +27 -0
  8. package/bundled/qc-helper/docs/features/skills.md +46 -1
  9. package/bundled/qc-helper/docs/features/sub-agents.md +42 -9
  10. package/bundled/qc-helper/docs/features/tool-use-summaries.md +7 -7
  11. package/bundled/qc-helper/docs/qwen-serve.md +21 -1
  12. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +13 -13
  13. package/bundled/qc-helper/docs/support/troubleshooting.md +6 -1
  14. package/bundled/review/DESIGN.md +167 -32
  15. package/bundled/review/SKILL.md +156 -32
  16. package/chunks/{MaxSizedBox-TQBQ247P.js → MaxSizedBox-OJR636GP.js} +40 -38
  17. package/chunks/{StandaloneSessionPicker-2HPTKCLX.js → StandaloneSessionPicker-AMMBF5UY.js} +62 -59
  18. package/chunks/{acp-startup-profiler-2C4A5ZTJ.js → acp-startup-profiler-3RICG2YW.js} +2 -2
  19. package/chunks/{acpAgent-PS6EDGH3.js → acpAgent-M57LVIQA.js} +662 -560
  20. package/chunks/{agent-VDOUB35F.js → agent-PE37ARLM.js} +36 -34
  21. package/chunks/{agent-headless-EO53EFS2.js → agent-headless-45ASME4R.js} +36 -34
  22. package/chunks/{anthropicContentGenerator-OFHSZJBF.js → anthropicContentGenerator-WCBYB6JG.js} +337 -27
  23. package/chunks/{artifact-tool-RDN2W7ND.js → artifact-tool-TBOYEKTY.js} +2 -2
  24. package/chunks/{askUserQuestion-OZERWH5R.js → askUserQuestion-23Y5WZFJ.js} +2 -2
  25. package/chunks/{bridge-W7AZSRZQ.js → bridge-K3ZRPO4D.js} +42 -40
  26. package/chunks/{ca-6W3SK7OQ.js → ca-4OJN75WT.js} +46 -5
  27. package/chunks/{channel-management-service-5S7YCWX5.js → channel-management-service-IXJ2MZTS.js} +7 -7
  28. package/chunks/{channel-settings-store-JFVRSNER.js → channel-settings-store-PEAR3IME.js} +43 -41
  29. package/chunks/{channel-worker-group-OVWGYMZS.js → channel-worker-group-NDG4WOOZ.js} +8 -8
  30. package/chunks/{channel-worker-manager-H55GKOQA.js → channel-worker-manager-ZCW6UW34.js} +8 -8
  31. package/chunks/{channel-worker-supervisor-CABBXYHK.js → channel-worker-supervisor-ATGFTZRN.js} +4 -4
  32. package/chunks/{chunk-W3UKBMSI.js → chunk-22YFMJBW.js} +84 -8
  33. package/chunks/{chunk-6MPDY6ZG.js → chunk-24ER7UV4.js} +1 -1
  34. package/chunks/{chunk-QDK4F2N5.js → chunk-2DNKEBXY.js} +1 -1
  35. package/chunks/{chunk-D6MDRSZ6.js → chunk-2LZCLQIS.js} +22 -11
  36. package/chunks/{chunk-JYBU6YUE.js → chunk-2M5N3DHY.js} +1 -1
  37. package/chunks/{chunk-KR32NIAN.js → chunk-2MI7ZTRT.js} +10 -10
  38. package/chunks/{chunk-LHKCY7DY.js → chunk-2UISUFHQ.js} +3 -3
  39. package/chunks/{chunk-JXVC2PL3.js → chunk-33FNCQSY.js} +2 -2
  40. package/chunks/{chunk-NBD76HUW.js → chunk-3LGZEYOF.js} +2 -2
  41. package/chunks/{chunk-CO2U743O.js → chunk-3MWNROHB.js} +4 -4
  42. package/chunks/{chunk-E2BHWIDT.js → chunk-3RXUYQJI.js} +6 -2
  43. package/chunks/{chunk-E5Z2AVNV.js → chunk-3SH53ANB.js} +0 -11
  44. package/chunks/{chunk-LYI2PZDK.js → chunk-3XF4WT3B.js} +2 -2
  45. package/chunks/{chunk-N4ACHWNH.js → chunk-432XCUHF.js} +1 -1
  46. package/chunks/{chunk-FNDXMN7I.js → chunk-4AGGSHCH.js} +774 -205
  47. package/chunks/{chunk-DUNI4EBW.js → chunk-4K3RV3OA.js} +80 -50
  48. package/chunks/{chunk-L2E5GFAG.js → chunk-4LKVQFHM.js} +2 -2
  49. package/chunks/{chunk-YDLJGZHL.js → chunk-4NFY2S7N.js} +0 -33
  50. package/chunks/{chunk-JLZ3RBQG.js → chunk-5JPVOYWA.js} +144 -11
  51. package/chunks/{chunk-6TAASXWL.js → chunk-5VYFXHY2.js} +3 -3
  52. package/chunks/{chunk-EU5TBFJI.js → chunk-6NE5NTHJ.js} +2 -2
  53. package/chunks/{chunk-XQK4XXTN.js → chunk-6O5DVH27.js} +1 -1
  54. package/chunks/{chunk-2RFKHEXL.js → chunk-6PLDPT2C.js} +1 -1
  55. package/chunks/{chunk-3APUUXRF.js → chunk-A5YZ3FA2.js} +2 -1
  56. package/chunks/{chunk-SHN4KHDK.js → chunk-A6SX5TAH.js} +3 -3
  57. package/chunks/{chunk-SZ3KHTDR.js → chunk-AKA24BGO.js} +1 -1
  58. package/chunks/{chunk-Q3T5KA2V.js → chunk-BFHXDAR7.js} +1 -1
  59. package/chunks/{chunk-L55JWS76.js → chunk-BGXZBI5B.js} +1 -1
  60. package/chunks/{chunk-P5VC5USY.js → chunk-BKGA75MU.js} +1 -1
  61. package/chunks/{chunk-2KKCCLPT.js → chunk-BKXTHMOZ.js} +1 -1
  62. package/chunks/{chunk-V4XNUDPE.js → chunk-BSKUTHLO.js} +15 -7
  63. package/chunks/{chunk-MM7TH7ZM.js → chunk-CFDR3GNL.js} +18 -3
  64. package/chunks/{chunk-E2FN6SM7.js → chunk-CIUUYB23.js} +5 -5
  65. package/chunks/{chunk-A7Y5H4TX.js → chunk-D2GPKXCQ.js} +7 -7
  66. package/chunks/{chunk-JCJ7LKNA.js → chunk-DIEFUBV6.js} +1644 -1570
  67. package/chunks/{chunk-GL4JOZXU.js → chunk-DSGJLHM3.js} +4 -4
  68. package/chunks/{chunk-675H6PLP.js → chunk-DYA25Y7U.js} +1 -1
  69. package/chunks/{chunk-3I6DUGQD.js → chunk-E4WHKETF.js} +32 -4
  70. package/chunks/{chunk-CU47KXB5.js → chunk-EGYJRIDF.js} +6 -6
  71. package/chunks/{chunk-6CQWRWUC.js → chunk-EIMKVOSF.js} +3 -3
  72. package/chunks/{chunk-QTERJVPZ.js → chunk-EKTCKZV5.js} +1 -0
  73. package/chunks/{chunk-NHFEMWAZ.js → chunk-FF75UUB2.js} +1 -1
  74. package/chunks/{chunk-L32VV3ZJ.js → chunk-FG63DZQA.js} +12 -12
  75. package/chunks/{chunk-FCYYAB4S.js → chunk-FHPKHXHT.js} +3 -3
  76. package/chunks/{chunk-GJ2GBPBD.js → chunk-FXVHVCNA.js} +5 -5
  77. package/chunks/{chunk-56Z7QEAQ.js → chunk-GMSBXEH4.js} +16 -16
  78. package/chunks/chunk-GOFAQQZA.js +132 -0
  79. package/chunks/{chunk-YUFIEIWC.js → chunk-GTM6IHBB.js} +2 -2
  80. package/chunks/{chunk-HIVKI6O6.js → chunk-H35Q5CEG.js} +9 -7
  81. package/chunks/{chunk-FJ5WUMUQ.js → chunk-H36SETQS.js} +1 -1
  82. package/chunks/{chunk-AUOULH6Q.js → chunk-H6FIBBXK.js} +1610 -2196
  83. package/chunks/{chunk-VEMNQMHA.js → chunk-H6ZYP74A.js} +5 -13
  84. package/chunks/{chunk-TTJZAIFP.js → chunk-HEBW74ZW.js} +3 -3
  85. package/chunks/{chunk-6FMJLI5M.js → chunk-HFVW54NL.js} +41 -6
  86. package/chunks/{chunk-44F4LBWZ.js → chunk-HIXVWF7I.js} +56 -18
  87. package/chunks/{chunk-EQNUDTL6.js → chunk-HUIQ4FYC.js} +2 -2
  88. package/chunks/{chunk-5NNHICSA.js → chunk-I7JDGNG6.js} +3 -3
  89. package/chunks/{chunk-PVNQRENX.js → chunk-IF6K42YJ.js} +1 -1
  90. package/chunks/{chunk-PJOHNFIY.js → chunk-IWGTGH4G.js} +5 -5
  91. package/chunks/{chunk-B4AJNNOL.js → chunk-J26HHFI5.js} +1 -1
  92. package/chunks/{chunk-CNTR4GR6.js → chunk-JELIWHXD.js} +1 -1
  93. package/chunks/{chunk-V25K5ID7.js → chunk-K2J5JZ6B.js} +1 -1
  94. package/chunks/{chunk-IGTHU3T4.js → chunk-KKN2IE7Q.js} +1 -1
  95. package/chunks/{chunk-TZTAV5RH.js → chunk-KVUBYJDM.js} +2 -2
  96. package/chunks/{chunk-3F2WDAV6.js → chunk-KXWERR6P.js} +14 -14
  97. package/chunks/{chunk-JJPKFJBT.js → chunk-L7FTDKCD.js} +3 -3
  98. package/chunks/chunk-LBOVL47Y.js +29 -0
  99. package/chunks/{chunk-FS674JW4.js → chunk-LBWNSLJK.js} +3 -3
  100. package/chunks/{chunk-I5BT7ADR.js → chunk-LGT3YMLN.js} +4 -4
  101. package/chunks/{chunk-UV6KF7T3.js → chunk-LZV2BZPL.js} +3 -3
  102. package/chunks/{chunk-P755N4CS.js → chunk-M5LIY7Y6.js} +6 -6
  103. package/chunks/{chunk-YGE3IXJP.js → chunk-M744OFVE.js} +1 -1
  104. package/chunks/{chunk-NTDH4IML.js → chunk-MCXMWLFT.js} +7 -7
  105. package/chunks/chunk-MISUEWB4.js +8749 -0
  106. package/chunks/{chunk-TEGJSJDF.js → chunk-MOHAWIAW.js} +2 -2
  107. package/chunks/{chunk-KXDONCPU.js → chunk-MTR4JWQJ.js} +4 -4
  108. package/chunks/{chunk-RSVPYAGK.js → chunk-MUEJ4R3E.js} +5 -5
  109. package/chunks/{chunk-PCK4B6LR.js → chunk-N42C2FU3.js} +1 -1
  110. package/chunks/{chunk-WWCMSZII.js → chunk-NW57GHNL.js} +71 -7
  111. package/chunks/{chunk-PQNHRFJC.js → chunk-NYX53SV4.js} +0 -2
  112. package/chunks/{chunk-QARJNL2V.js → chunk-O2ZYHG33.js} +5 -4
  113. package/chunks/{chunk-V7RNNPGC.js → chunk-P5Y23G2L.js} +18 -1
  114. package/chunks/{chunk-GURGAJTX.js → chunk-PDDYAXL2.js} +4 -1
  115. package/chunks/chunk-PWCQRLM5.js +1170 -0
  116. package/chunks/{chunk-VMX5RZQH.js → chunk-Q3G5L5KF.js} +18 -9
  117. package/chunks/{chunk-DQ2O5QOJ.js → chunk-QDWLUXKP.js} +1 -1
  118. package/chunks/chunk-QL4TN4HS.js +59 -0
  119. package/chunks/{chunk-E6CJ2SMM.js → chunk-QMBEW7EW.js} +2 -2
  120. package/chunks/{chunk-U4VTUMMK.js → chunk-QONSRAEV.js} +1 -1
  121. package/chunks/{chunk-DEEABGH2.js → chunk-QPSYIV2O.js} +3320 -536
  122. package/chunks/{chunk-Q5WZTTWE.js → chunk-QWDVZH24.js} +6 -8
  123. package/chunks/{chunk-2LEOZTBT.js → chunk-QWW6I2UO.js} +111 -26
  124. package/chunks/{chunk-LOY7RWQG.js → chunk-QYPT3QUD.js} +3 -3
  125. package/chunks/{chunk-6PQPKTXP.js → chunk-R7XNRHYD.js} +1 -1
  126. package/chunks/{chunk-7SJN2IWT.js → chunk-RCXCGZG6.js} +5 -5
  127. package/chunks/{chunk-HX6RLYUO.js → chunk-RL6J3BPE.js} +4 -4
  128. package/chunks/{chunk-Z3S5EMOW.js → chunk-RPYYTL7E.js} +60 -12
  129. package/chunks/{chunk-MB32MS4U.js → chunk-RR224BUP.js} +215 -174
  130. package/chunks/{chunk-H6I4PGRV.js → chunk-SKSF3LGQ.js} +4 -4
  131. package/chunks/{chunk-77V3VIKL.js → chunk-SQ3YD5MI.js} +9 -9
  132. package/chunks/{chunk-CBBP4BMC.js → chunk-SRY26X4H.js} +72 -206
  133. package/chunks/{chunk-RDJOB6S3.js → chunk-TXABHVZD.js} +1 -1
  134. package/chunks/{chunk-R2XWGR75.js → chunk-TYERNYH4.js} +2 -2
  135. package/chunks/chunk-TZTBZ25J.js +222 -0
  136. package/chunks/{chunk-45IOTAUS.js → chunk-U25CMJYY.js} +1 -1
  137. package/chunks/{chunk-7ULQIS27.js → chunk-UEJESCS7.js} +1 -1
  138. package/chunks/{chunk-HC45LTEN.js → chunk-UH7Z7Y45.js} +1 -1
  139. package/chunks/{chunk-CPZAH673.js → chunk-UKZEXS6K.js} +2 -0
  140. package/chunks/{chunk-54YCNSK5.js → chunk-UQDFEU47.js} +4113 -10152
  141. package/chunks/{chunk-XP4L6KS3.js → chunk-URN76TKR.js} +2 -2
  142. package/chunks/{chunk-XUGZYLDH.js → chunk-UWSXFI6E.js} +1 -1
  143. package/chunks/{chunk-AOHY3QJ3.js → chunk-VA5NLVPT.js} +3 -3
  144. package/chunks/{chunk-PZEXDV3H.js → chunk-VUNRNRN6.js} +71 -43
  145. package/chunks/{chunk-FANRZEAJ.js → chunk-VWOVHOTT.js} +1 -1
  146. package/chunks/{chunk-QTHQ6Z5X.js → chunk-WK4TJUEA.js} +1 -1
  147. package/chunks/{chunk-ZPZ7ZJEE.js → chunk-WUC6ZFXO.js} +1 -1
  148. package/chunks/{chunk-7KAXXBER.js → chunk-WY2ENRDN.js} +3 -3
  149. package/chunks/{chunk-TIRRPCFS.js → chunk-X6QNZOTC.js} +1 -1
  150. package/chunks/{chunk-KWHKHSIS.js → chunk-X6WUYMOV.js} +8 -8
  151. package/chunks/{chunk-IIUGIWWY.js → chunk-XC2VAFVZ.js} +1 -1
  152. package/chunks/{chunk-D4HTUMGX.js → chunk-XC656O42.js} +3 -3
  153. package/chunks/{chunk-RG64CDT2.js → chunk-XMJO6C44.js} +131 -48
  154. package/chunks/{chunk-ZMOJ7ISP.js → chunk-XUMAD5IT.js} +1 -1
  155. package/chunks/{chunk-THVU3RNH.js → chunk-YAVY33G4.js} +1 -1
  156. package/chunks/{chunk-YANIWTRZ.js → chunk-YPUHMQXV.js} +1 -1
  157. package/chunks/{chunk-QCXGC7QB.js → chunk-YU6TBRTA.js} +3 -3
  158. package/chunks/{chunk-OFZKFPYG.js → chunk-YWMDTMAU.js} +3 -3
  159. package/chunks/{chunk-DSFHVTWD.js → chunk-YXEVDA66.js} +2 -2
  160. package/chunks/{chunk-JE2CEOBO.js → chunk-ZGSUFIL5.js} +4 -4
  161. package/chunks/{chunk-BBIQAX4V.js → chunk-ZJES4C3I.js} +30 -18
  162. package/chunks/{computer-use-5QWCFNKD.js → computer-use-UJMK6JQU.js} +36 -34
  163. package/chunks/{config-utils-WADIDWGG.js → config-utils-7COTJMWK.js} +4 -4
  164. package/chunks/{contextCommand-4Z7T7TUM.js → contextCommand-4YABGF4S.js} +40 -38
  165. package/chunks/{core-runtime-6N4EFC2Q.js → core-runtime-7M4VM3DA.js} +36 -34
  166. package/chunks/{create-sub-session-AEREHZBQ.js → create-sub-session-HOFDW4N7.js} +39 -37
  167. package/chunks/{create-sub-session-62YZWVAY.js → create-sub-session-J32WC64U.js} +2 -2
  168. package/chunks/{cron-create-6E7GIQTG.js → cron-create-HMFSHIAR.js} +4 -4
  169. package/chunks/{cron-delete-JD26XY3W.js → cron-delete-ZJFHOX57.js} +4 -4
  170. package/chunks/{cron-list-CUWFB44G.js → cron-list-ZEX2NBMN.js} +4 -4
  171. package/chunks/{daemon-PCNCI5YU.js → daemon-CCIX4BMG.js} +47 -6
  172. package/chunks/{daemon-status-provider-DDF7C5M7.js → daemon-status-provider-W2U5Q3J5.js} +47 -45
  173. package/chunks/{daemon-trust-policy-Q4KSOJTR.js → daemon-trust-policy-IFICWPXP.js} +42 -40
  174. package/chunks/{daemon-trust-policy-monitor-V6FTE3IY.js → daemon-trust-policy-monitor-GX7EO6FW.js} +42 -40
  175. package/chunks/{de-SY6O76BF.js → de-A6TI4LBB.js} +46 -5
  176. package/chunks/{deferred-core-runtime-GHJ5GQHK.js → deferred-core-runtime-U36OOOKE.js} +36 -34
  177. package/chunks/display-image-VS3TXYQH.js +184 -0
  178. package/chunks/{dist-ZHXOBXDN.js → dist-3BMEUGTG.js} +1 -1
  179. package/chunks/{dist-26BIMQT6.js → dist-4KAX7CCL.js} +289 -27
  180. package/chunks/{dist-OAOC5OV4.js → dist-7JGAAQSC.js} +2 -2
  181. package/chunks/{dist-SL2LUMML.js → dist-A7H2KKUC.js} +1 -1
  182. package/chunks/{dist-2PERFI23.js → dist-DPPHJAVL.js} +3 -3
  183. package/chunks/{dist-PVEAFLHY.js → dist-HVBMEYWK.js} +1 -1
  184. package/chunks/{dist-ULIG4M5H.js → dist-NEBRI7WO.js} +67 -15
  185. package/chunks/{dist-WGMNT3JQ.js → dist-SFQ34F4M.js} +24 -6
  186. package/chunks/{earlyInputCapture-TQXLLISD.js → earlyInputCapture-5ZWDH3SB.js} +37 -35
  187. package/chunks/{edit-FJEUV6KZ.js → edit-J7SW6UP6.js} +36 -34
  188. package/chunks/{en-NBK3JKCE.js → en-L4UQDLWW.js} +57 -6
  189. package/chunks/{enter-worktree-7GE3TZ4P.js → enter-worktree-NRLOHRB6.js} +36 -34
  190. package/chunks/{enterPlanMode-KR5TMPCJ.js → enterPlanMode-GDSTEFSM.js} +36 -34
  191. package/chunks/{environment-SWL3CMB3.js → environment-KHYEKG5W.js} +39 -37
  192. package/chunks/{errors-XQE7BGZV.js → errors-VNLAJV3O.js} +39 -37
  193. package/chunks/{exit-worktree-CHKTYNCV.js → exit-worktree-ARVID7DF.js} +36 -34
  194. package/chunks/{exitPlanMode-QYAG6LWX.js → exitPlanMode-4ZFY7KUH.js} +36 -34
  195. package/chunks/{fast-path-Z2K7W6DC.js → fast-path-KA65VREJ.js} +9 -5
  196. package/chunks/{fr-4KG5V7UT.js → fr-QF7RI5ZE.js} +46 -5
  197. package/chunks/{gemini-YU4XKEDG.js → gemini-5PMCNPF7.js} +149 -90
  198. package/chunks/{geminiContentGenerator-ZZX6NBO4.js → geminiContentGenerator-NFSYJ4HA.js} +6 -6
  199. package/chunks/{glob-VYF5CXSX.js → glob-F3EAUDAX.js} +36 -34
  200. package/chunks/{goal-tools-HGO6VXPB.js → goal-tools-SPQ5M6D3.js} +3 -3
  201. package/chunks/{grep-5DP5ZUTW.js → grep-UJMPVZER.js} +36 -34
  202. package/chunks/{handleAutoUpdate-UVBJ56DL.js → handleAutoUpdate-MG4FRZPN.js} +42 -40
  203. package/chunks/{i18n-UQNYHEUD.js → i18n-EVHV4ZF3.js} +38 -36
  204. package/chunks/{image-gen-WHPIZNWF.js → image-gen-UC7XVHI7.js} +9 -9
  205. package/chunks/{initializer-GMIICF4W.js → initializer-O5B6HUBI.js} +43 -41
  206. package/chunks/{installationInfo-4MGG4WVI.js → installationInfo-2LIKCNVX.js} +37 -35
  207. package/chunks/{ja-F3GSQXMF.js → ja-URQESVGW.js} +46 -5
  208. package/chunks/{keychain-token-storage-IKO4G53C.js → keychain-token-storage-7BT4TQ2A.js} +2 -2
  209. package/chunks/{kittyProtocolDetector-MBRTDRBK.js → kittyProtocolDetector-BFLAKYXH.js} +1 -1
  210. package/chunks/{list-CPN2W334.js → list-BPKIE3Z4.js} +45 -43
  211. package/chunks/{list-agents-PXJ7ZUFB.js → list-agents-TWEGRJWO.js} +2 -2
  212. package/chunks/{loadedSettingsAdapter-ZQAV5NDO.js → loadedSettingsAdapter-NGLFF4V4.js} +42 -40
  213. package/chunks/{loggingContentGenerator-5E7W4IEP.js → loggingContentGenerator-7TFESRG5.js} +52 -37
  214. package/chunks/{loop-wakeup-Y26NQZ5I.js → loop-wakeup-6LLEOQYV.js} +5 -5
  215. package/chunks/{ls-ONQTTMQR.js → ls-H5WX22VK.js} +4 -4
  216. package/chunks/{lsp-YGHHRGMD.js → lsp-G6FXYEIS.js} +2 -2
  217. package/chunks/{managed-npm-update-MKKAXYXA.js → managed-npm-update-CLZGGV7F.js} +39 -37
  218. package/chunks/{mcp-V5NTJF6X.js → mcp-X5OZOOXX.js} +42 -40
  219. package/chunks/{monitor-CO3ASY6E.js → monitor-TGSVSAZZ.js} +36 -34
  220. package/chunks/nonInteractiveCli-GUMJ5JLG.js +150 -0
  221. package/chunks/{notebook-edit-Z7AEE6FM.js → notebook-edit-EZISE7IC.js} +36 -34
  222. package/chunks/{openaiContentGenerator-CA3MQOP3.js → openaiContentGenerator-ZAKS5A6P.js} +18 -18
  223. package/chunks/{pidfile-NL7MKDRU.js → pidfile-PCMBX4LR.js} +37 -35
  224. package/chunks/{processUtils-PB5K2DYH.js → processUtils-2CSVE5BW.js} +2 -2
  225. package/chunks/{pt-EQ33KWEN.js → pt-EEEQXRUI.js} +46 -5
  226. package/chunks/{qwenContentGenerator-JYFNDCOS.js → qwenContentGenerator-S3H6PIC4.js} +42 -40
  227. package/chunks/{qwenOAuth2-W2ALKQDD.js → qwenOAuth2-MNU425VE.js} +8 -8
  228. package/chunks/{read-file-IEOR5H5W.js → read-file-HXJXHBI6.js} +10 -10
  229. package/chunks/{read-mcp-resource-U2IJN5HM.js → read-mcp-resource-DRZSI3HE.js} +2 -2
  230. package/chunks/{record-artifact-MGPJ7EG4.js → record-artifact-IPIRWMFY.js} +3 -3
  231. package/chunks/{resumeHistoryUtils-BNBTP5AS.js → resumeHistoryUtils-4QAMC2S6.js} +44 -42
  232. package/chunks/{ripGrep-UMQODKEB.js → ripGrep-MCETPF2E.js} +36 -34
  233. package/chunks/{ru-7OZAUKGG.js → ru-WGZDYQAB.js} +46 -5
  234. package/chunks/{run-qwen-serve-RN2R6QQW.js → run-qwen-serve-3NMODTXV.js} +219 -55
  235. package/chunks/{runtime-QFJ2MJF5.js → runtime-AQOV7DVP.js} +49 -45
  236. package/chunks/{scheduler-AMYUFOZI.js → scheduler-DN7SZ6ZE.js} +36 -34
  237. package/chunks/{sdk-exporters-http-4BQANSJ6.js → sdk-exporters-http-IKNWQJNV.js} +2 -2
  238. package/chunks/{sdk-impl-Z4VXWVFX.js → sdk-impl-7CUUMQDB.js} +2 -2
  239. package/chunks/{send-message-PMP4ATVM.js → send-message-HGCVVDTZ.js} +5 -4
  240. package/chunks/{serve-EIIYJVX3.js → serve-WZB45HVT.js} +42 -40
  241. package/chunks/{server-EP2LLAPD.js → server-GOTZFEEZ.js} +616 -387
  242. package/chunks/{session-GMPZBLOW.js → session-23LOFLWN.js} +149 -87
  243. package/chunks/{settings-LN7RNKBS.js → settings-LI2ORVXC.js} +41 -39
  244. package/chunks/{shell-EM2OWU5X.js → shell-GLC6OP3C.js} +36 -34
  245. package/chunks/{skill-T5VPSK73.js → skill-C7W6M4GO.js} +27 -14
  246. package/chunks/{skill-settings-GMR3GMNY.js → skill-settings-W25NCK5I.js} +41 -39
  247. package/chunks/{spawnChannel-YPCU62DI.js → spawnChannel-OHJLEBLD.js} +38 -36
  248. package/chunks/{standalone-update-JAKIM2NF.js → standalone-update-E4V5V7WT.js} +39 -37
  249. package/chunks/{startInteractiveUI-YETQWGYF.js → startInteractiveUI-FKILLW7Q.js} +1815 -1034
  250. package/chunks/{syntheticOutput-D7E6ZFKR.js → syntheticOutput-EYL7DWO7.js} +3 -3
  251. package/chunks/{task-create-NFCYD43L.js → task-create-CSCEG4SM.js} +10 -9
  252. package/chunks/{task-list-TAVMGEVD.js → task-list-6CVQPORX.js} +6 -6
  253. package/chunks/{task-stop-ZDF2UJRM.js → task-stop-Y5ZTFVRX.js} +2 -2
  254. package/chunks/{task-update-6L7LHGEX.js → task-update-C52LNFU5.js} +10 -9
  255. package/chunks/{team-create-LFJ6HGNY.js → team-create-HBIJ7NHT.js} +36 -34
  256. package/chunks/{team-delete-DPGGRQBU.js → team-delete-CE7DC53R.js} +6 -6
  257. package/chunks/{team-plan-approval-C2KLSDGO.js → team-plan-approval-IBJOKS4J.js} +36 -34
  258. package/chunks/terminal-image-renderer-BOQJPVLB.js +89 -0
  259. package/chunks/{theme-manager-JQ3ZGBP5.js → theme-manager-NSS7VLUD.js} +37 -35
  260. package/chunks/{todoWrite-2UO5G6G6.js → todoWrite-YKAA57W2.js} +107 -36
  261. package/chunks/{tool-search-FAZBFRJZ.js → tool-search-DEAS54VG.js} +13 -12
  262. package/chunks/{total-session-admission-5CALIVYO.js → total-session-admission-4LWTX3WD.js} +43 -41
  263. package/chunks/{trustedFolders-KOPSP44S.js → trustedFolders-NF3J2TA7.js} +38 -36
  264. package/chunks/{update-relaunch-6QL2TICS.js → update-relaunch-WUHRH5V3.js} +5 -5
  265. package/chunks/{updateCheck-4Q6RIKFW.js → updateCheck-7EG4BLBH.js} +41 -39
  266. package/chunks/{useAutoAcceptIndicator-Q5BMKZV3.js → useAutoAcceptIndicator-ZRV56GVP.js} +46 -44
  267. package/chunks/{validateNonInterActiveAuth-GKOC5F6Z.js → validateNonInterActiveAuth-WC2FPE3I.js} +86 -84
  268. package/chunks/{version-VSATY2LD.js → version-6SS7KCUP.js} +1 -1
  269. package/chunks/{web-fetch-JCLKL6NL.js → web-fetch-Y5QQMPKA.js} +13 -13
  270. package/chunks/{web-search-DSQTFUBX.js → web-search-QKKEU723.js} +8 -8
  271. package/chunks/{workflow-M6QAVKVJ.js → workflow-PWIU6Q2M.js} +418 -304
  272. package/chunks/{workspace-providers-status-YKLTLMJA.js → workspace-providers-status-B2DM6FNK.js} +45 -43
  273. package/chunks/{workspace-registration-store-5DMGKU64.js → workspace-registration-store-7Y33TTHJ.js} +2 -2
  274. package/chunks/{workspace-registry-PTYUSYXX.js → workspace-registry-TSNJKLPC.js} +43 -41
  275. package/chunks/{workspace-service-25ML3T47.js → workspace-service-4I2QHDX4.js} +50 -48
  276. package/chunks/{workspace-skills-status-YKZWOYRX.js → workspace-skills-status-HVXNWVGR.js} +44 -42
  277. package/chunks/{workspace-trust-reconciler-5FI2S3OS.js → workspace-trust-reconciler-RDBBGMWP.js} +49 -47
  278. package/chunks/{write-file-AY7VLP5X.js → write-file-RQ4DG5RY.js} +36 -34
  279. package/chunks/{zh-H3YDK5QW.js → zh-72XPUG5P.js} +54 -6
  280. package/chunks/{zh-TW-JYCP7XUA.js → zh-TW-LTB4SRH3.js} +54 -6
  281. package/chunks/{zoom-image-S4LJZMD5.js → zoom-image-O5YCB7WN.js} +10 -10
  282. package/cli.js +32 -48
  283. package/locales/ca.js +60 -4
  284. package/locales/de.js +62 -4
  285. package/locales/en.js +76 -6
  286. package/locales/fr.js +64 -4
  287. package/locales/ja.js +61 -4
  288. package/locales/pt.js +60 -4
  289. package/locales/ru.js +63 -4
  290. package/locales/zh-TW.js +67 -6
  291. package/locales/zh.js +67 -6
  292. package/package.json +3 -3
  293. package/web-shell/assets/{arc-xjArKHU2.js → arc-Bd7d781i.js} +1 -1
  294. package/web-shell/assets/{architectureDiagram-3BPJPVTR-BgrQDNYG.js → architectureDiagram-3BPJPVTR-CpnOJqNE.js} +1 -1
  295. package/web-shell/assets/{blockDiagram-GPEHLZMM-CXxWC-1_.js → blockDiagram-GPEHLZMM-NxVTiWnk.js} +1 -1
  296. package/web-shell/assets/{c4Diagram-AAUBKEIU-Dx1tLm3v.js → c4Diagram-AAUBKEIU-BWT75l82.js} +1 -1
  297. package/web-shell/assets/channel-A434sWK5.js +1 -0
  298. package/web-shell/assets/{chunk-2J33WTMH-CBxjogVR.js → chunk-2J33WTMH-Dzz03hk6.js} +1 -1
  299. package/web-shell/assets/{chunk-4BX2VUAB-izb-rY5W.js → chunk-4BX2VUAB-DRF-egfm.js} +1 -1
  300. package/web-shell/assets/{chunk-55IACEB6-NzLyvSb8.js → chunk-55IACEB6-Co15vq5x.js} +1 -1
  301. package/web-shell/assets/{chunk-727SXJPM-DVyKb0dl.js → chunk-727SXJPM-DHSUk1J7.js} +1 -1
  302. package/web-shell/assets/{chunk-AQP2D5EJ-BtqL7NzB.js → chunk-AQP2D5EJ-Br8u_E2R.js} +1 -1
  303. package/web-shell/assets/{chunk-FMBD7UC4-iNpdKIO0.js → chunk-FMBD7UC4-DXbPTnqF.js} +1 -1
  304. package/web-shell/assets/{chunk-ND2GUHAM-DI7cbFmX.js → chunk-ND2GUHAM-BleQdi4d.js} +1 -1
  305. package/web-shell/assets/{chunk-QZHKN3VN-3Y_-xFYs.js → chunk-QZHKN3VN-CqgBf-95.js} +1 -1
  306. package/web-shell/assets/classDiagram-4FO5ZUOK-CwPuhldB.js +1 -0
  307. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CwPuhldB.js +1 -0
  308. package/web-shell/assets/{cose-bilkent-S5V4N54A--raRatZn.js → cose-bilkent-S5V4N54A-WS7b13Yg.js} +1 -1
  309. package/web-shell/assets/{dagre-BM42HDAG-B8SU70mO.js → dagre-BM42HDAG-v_55ki8o.js} +1 -1
  310. package/web-shell/assets/{diagram-2AECGRRQ-ewgoakXo.js → diagram-2AECGRRQ-DaYAjbdK.js} +1 -1
  311. package/web-shell/assets/{diagram-5GNKFQAL-Bm_JLTnS.js → diagram-5GNKFQAL-D_Hy-L64.js} +1 -1
  312. package/web-shell/assets/{diagram-KO2AKTUF-DEIUjUy9.js → diagram-KO2AKTUF-dB06cZyD.js} +1 -1
  313. package/web-shell/assets/{diagram-LMA3HP47-C2Wmrpj-.js → diagram-LMA3HP47-DzSluD4F.js} +1 -1
  314. package/web-shell/assets/{diagram-OG6HWLK6-CtYe6bFx.js → diagram-OG6HWLK6-Cvb6CeXQ.js} +1 -1
  315. package/web-shell/assets/{erDiagram-TEJ5UH35-DfpHcWLV.js → erDiagram-TEJ5UH35-7eB2Hmov.js} +1 -1
  316. package/web-shell/assets/{flowDiagram-I6XJVG4X-CAiUhio5.js → flowDiagram-I6XJVG4X-B08iGCw_.js} +1 -1
  317. package/web-shell/assets/{ganttDiagram-6RSMTGT7-CYc7ezr4.js → ganttDiagram-6RSMTGT7-BgsrCHq-.js} +1 -1
  318. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-70lbkcRS.js → gitGraphDiagram-PVQCEYII-DQLurQ2i.js} +1 -1
  319. package/web-shell/assets/{index-Ww86nT9f.js → index-B_1Z0Mgr.js} +1 -1
  320. package/web-shell/assets/index-Bi1dP2mU.css +5 -0
  321. package/web-shell/assets/index-DJ-z1Oba.js +1756 -0
  322. package/web-shell/assets/{infoDiagram-5YYISTIA-C7e8DWPa.js → infoDiagram-5YYISTIA-DXZGO8qB.js} +1 -1
  323. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-BYLr2op-.js → ishikawaDiagram-YF4QCWOH-g7gbuH2w.js} +1 -1
  324. package/web-shell/assets/{journeyDiagram-JHISSGLW-hEibAHKX.js → journeyDiagram-JHISSGLW-euefICGn.js} +1 -1
  325. package/web-shell/assets/{kanban-definition-UN3LZRKU-F2rt8Uhp.js → kanban-definition-UN3LZRKU-Dws8-mjG.js} +1 -1
  326. package/web-shell/assets/{linear-DPhyNezd.js → linear-C63F0tyh.js} +1 -1
  327. package/web-shell/assets/{mermaid.core-ZUtnug0n.js → mermaid.core-fLrhp_4-.js} +5 -5
  328. package/web-shell/assets/{mindmap-definition-RKZ34NQL-DDWcMoi8.js → mindmap-definition-RKZ34NQL-qRkydfT-.js} +1 -1
  329. package/web-shell/assets/{pieDiagram-4H26LBE5-CTRKzw1_.js → pieDiagram-4H26LBE5-BZ0wQaKN.js} +1 -1
  330. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-CAEwYG_z.js → quadrantDiagram-W4KKPZXB-Fjq6GbSZ.js} +1 -1
  331. package/web-shell/assets/{requirementDiagram-4Y6WPE33-CRjnH9D9.js → requirementDiagram-4Y6WPE33-CqWvjLHU.js} +1 -1
  332. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-LPQT_sOd.js → sankeyDiagram-5OEKKPKP-VcXX6PVZ.js} +1 -1
  333. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-Ht2Iqvb0.js → sequenceDiagram-3UESZ5HK-BJSRtxFr.js} +1 -1
  334. package/web-shell/assets/{stateDiagram-AJRCARHV-CIUdqOXu.js → stateDiagram-AJRCARHV-Dt9zUwmZ.js} +1 -1
  335. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CCxQt56w.js +1 -0
  336. package/web-shell/assets/{timeline-definition-PNZ67QCA-BcilneZF.js → timeline-definition-PNZ67QCA-DQwlNRws.js} +1 -1
  337. package/web-shell/assets/{vennDiagram-CIIHVFJN-BljwiiH1.js → vennDiagram-CIIHVFJN-DwxjUEtQ.js} +1 -1
  338. package/web-shell/assets/{wardley-L42UT6IY-DeKjkYjq.js → wardley-L42UT6IY-D3QdMSpJ.js} +1 -1
  339. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-L3U1H7KG.js → wardleyDiagram-YWT4CUSO-BddN8oK8.js} +1 -1
  340. package/web-shell/assets/{xychartDiagram-2RQKCTM6-IJnWsgMT.js → xychartDiagram-2RQKCTM6-BUNuBrRJ.js} +1 -1
  341. package/web-shell/index.html +2 -2
  342. package/chunks/chunk-4KP2F2TE.js +0 -82
  343. package/chunks/chunk-HGT6JR3U.js +0 -177
  344. package/chunks/nonInteractiveCli-ZJYEOO7U.js +0 -148
  345. package/web-shell/assets/channel-B1cyk94G.js +0 -1
  346. package/web-shell/assets/classDiagram-4FO5ZUOK-BpBYZoRE.js +0 -1
  347. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BpBYZoRE.js +0 -1
  348. package/web-shell/assets/index-C1k3PDuU.css +0 -5
  349. package/web-shell/assets/index-DZLIXILO.js +0 -1750
  350. package/web-shell/assets/insert-DmRbh9Rv.svg +0 -1
  351. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BmqqQZ6w.js +0 -1
@@ -3,25 +3,28 @@
3
3
  import {
4
4
  isLoopbackBind
5
5
  } from "./chunk-RXFQM6FQ.js";
6
+ import {
7
+ require_mime_db
8
+ } from "./chunk-K6KS3LTN.js";
6
9
  import {
7
10
  require_lib
8
11
  } from "./chunk-FC4KQFCS.js";
9
12
  import {
10
13
  CLIENT_MCP_OVER_WS_CONFIG_FLAG
11
- } from "./chunk-CPZAH673.js";
14
+ } from "./chunk-UKZEXS6K.js";
12
15
  import {
13
16
  MAX_WORKSPACE_PATH_LENGTH,
14
17
  translateAndCheckAbsoluteWorkspacePath
15
- } from "./chunk-2RFKHEXL.js";
18
+ } from "./chunk-6PLDPT2C.js";
16
19
  import {
17
- require_mime_db
18
- } from "./chunk-K6KS3LTN.js";
19
- import {
20
- writeStderrLine
21
- } from "./chunk-OWAK7LMW.js";
20
+ require_content_type
21
+ } from "./chunk-GOFAQQZA.js";
22
22
  import {
23
23
  require_safer
24
24
  } from "./chunk-XWRJCPHC.js";
25
+ import {
26
+ writeStderrLine
27
+ } from "./chunk-OWAK7LMW.js";
25
28
  import {
26
29
  require_src
27
30
  } from "./chunk-DMTGGOSA.js";
@@ -9296,113 +9299,142 @@ var require_type_is = __commonJS({
9296
9299
  }
9297
9300
  });
9298
9301
 
9299
- // node_modules/content-type/index.js
9300
- var require_content_type = __commonJS({
9301
- "node_modules/content-type/index.js"(exports) {
9302
+ // node_modules/body-parser/node_modules/content-type/dist/index.js
9303
+ var require_dist2 = __commonJS({
9304
+ "node_modules/body-parser/node_modules/content-type/dist/index.js"(exports) {
9302
9305
  "use strict";
9303
9306
  init_esbuild_shims();
9304
- var PARAM_REGEXP = /; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g;
9305
- var TEXT_REGEXP = /^[\u000b\u0020-\u007e\u0080-\u00ff]+$/;
9306
- var TOKEN_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;
9307
- var QESC_REGEXP = /\\([\u000b\u0020-\u00ff])/g;
9308
- var QUOTE_REGEXP = /([\\"])/g;
9309
- var TYPE_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;
9307
+ Object.defineProperty(exports, "__esModule", { value: true });
9310
9308
  exports.format = format;
9311
9309
  exports.parse = parse;
9310
+ var TEXT_REGEXP = /^[\u0009\u0020-\u007e\u0080-\u00ff]*$/;
9311
+ var TOKEN_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;
9312
+ var QUOTE_REGEXP = /[\\"]/g;
9313
+ var TYPE_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;
9314
+ var NullObject = /* @__PURE__ */ (() => {
9315
+ const C = /* @__PURE__ */ __name(function() {
9316
+ }, "C");
9317
+ C.prototype = /* @__PURE__ */ Object.create(null);
9318
+ return C;
9319
+ })();
9312
9320
  function format(obj) {
9313
- if (!obj || typeof obj !== "object") {
9314
- throw new TypeError("argument obj is required");
9315
- }
9316
- var parameters = obj.parameters;
9317
- var type = obj.type;
9321
+ const { type, parameters } = obj;
9318
9322
  if (!type || !TYPE_REGEXP.test(type)) {
9319
- throw new TypeError("invalid type");
9323
+ throw new TypeError(`Invalid type: ${type}`);
9320
9324
  }
9321
- var string = type;
9322
- if (parameters && typeof parameters === "object") {
9323
- var param;
9324
- var params = Object.keys(parameters).sort();
9325
- for (var i = 0; i < params.length; i++) {
9326
- param = params[i];
9325
+ let result = type;
9326
+ if (parameters) {
9327
+ for (const param of Object.keys(parameters)) {
9327
9328
  if (!TOKEN_REGEXP.test(param)) {
9328
- throw new TypeError("invalid parameter name");
9329
+ throw new TypeError(`Invalid parameter name: ${param}`);
9329
9330
  }
9330
- string += "; " + param + "=" + qstring(parameters[param]);
9331
+ result += `; ${param}=${qstring(parameters[param])}`;
9331
9332
  }
9332
9333
  }
9333
- return string;
9334
+ return result;
9334
9335
  }
9335
9336
  __name(format, "format");
9336
- function parse(string) {
9337
- if (!string) {
9338
- throw new TypeError("argument string is required");
9339
- }
9340
- var header = typeof string === "object" ? getcontenttype(string) : string;
9341
- if (typeof header !== "string") {
9342
- throw new TypeError("argument string is required to be a string");
9343
- }
9344
- var index = header.indexOf(";");
9345
- var type = index !== -1 ? header.slice(0, index).trim() : header.trim();
9346
- if (!TYPE_REGEXP.test(type)) {
9347
- throw new TypeError("invalid media type");
9348
- }
9349
- var obj = new ContentType(type.toLowerCase());
9350
- if (index !== -1) {
9351
- var key;
9352
- var match;
9353
- var value;
9354
- PARAM_REGEXP.lastIndex = index;
9355
- while (match = PARAM_REGEXP.exec(header)) {
9356
- if (match.index !== index) {
9357
- throw new TypeError("invalid parameter format");
9358
- }
9359
- index += match[0].length;
9360
- key = match[1].toLowerCase();
9361
- value = match[2];
9362
- if (value.charCodeAt(0) === 34) {
9363
- value = value.slice(1, -1);
9364
- if (value.indexOf("\\") !== -1) {
9365
- value = value.replace(QESC_REGEXP, "$1");
9337
+ function parse(header, options) {
9338
+ const len = header.length;
9339
+ let index = skipOWS(header, 0, len);
9340
+ const valueStart = index;
9341
+ index = skipValue(header, index, len);
9342
+ const valueEnd = trailingOWS(header, valueStart, index);
9343
+ const type = header.slice(valueStart, valueEnd).toLowerCase();
9344
+ const parameters = options?.parameters === false ? new NullObject() : parseParameters(header, index, len);
9345
+ return { type, parameters };
9346
+ }
9347
+ __name(parse, "parse");
9348
+ var SP = 32;
9349
+ var HTAB = 9;
9350
+ var SEMI = 59;
9351
+ var EQ = 61;
9352
+ var DQUOTE = 34;
9353
+ var BSLASH = 92;
9354
+ function parseParameters(header, index, len) {
9355
+ const parameters = new NullObject();
9356
+ parameter: while (index < len) {
9357
+ index = skipOWS(header, index + 1, len);
9358
+ const keyStart = index;
9359
+ while (index < len) {
9360
+ const code = header.charCodeAt(index);
9361
+ if (code === SEMI)
9362
+ continue parameter;
9363
+ if (code === EQ) {
9364
+ const keyEnd = trailingOWS(header, keyStart, index);
9365
+ const key = header.slice(keyStart, keyEnd).toLowerCase();
9366
+ index = skipOWS(header, index + 1, len);
9367
+ if (index < len && header.charCodeAt(index) === DQUOTE) {
9368
+ index++;
9369
+ let value = "";
9370
+ while (index < len) {
9371
+ const code2 = header.charCodeAt(index++);
9372
+ if (code2 === DQUOTE) {
9373
+ index = skipValue(header, index, len);
9374
+ if (parameters[key] === void 0)
9375
+ parameters[key] = value;
9376
+ break;
9377
+ }
9378
+ if (code2 === BSLASH && index < len) {
9379
+ value += header[index++];
9380
+ continue;
9381
+ }
9382
+ value += String.fromCharCode(code2);
9383
+ }
9384
+ continue parameter;
9385
+ }
9386
+ const valueStart = index;
9387
+ index = skipValue(header, index, len);
9388
+ if (parameters[key] === void 0) {
9389
+ const valueEnd = trailingOWS(header, valueStart, index);
9390
+ parameters[key] = header.slice(valueStart, valueEnd);
9366
9391
  }
9392
+ continue parameter;
9367
9393
  }
9368
- obj.parameters[key] = value;
9369
- }
9370
- if (index !== header.length) {
9371
- throw new TypeError("invalid parameter format");
9394
+ index++;
9372
9395
  }
9373
9396
  }
9374
- return obj;
9397
+ return parameters;
9375
9398
  }
9376
- __name(parse, "parse");
9377
- function getcontenttype(obj) {
9378
- var header;
9379
- if (typeof obj.getHeader === "function") {
9380
- header = obj.getHeader("content-type");
9381
- } else if (typeof obj.headers === "object") {
9382
- header = obj.headers && obj.headers["content-type"];
9383
- }
9384
- if (typeof header !== "string") {
9385
- throw new TypeError("content-type header is missing from object");
9399
+ __name(parseParameters, "parseParameters");
9400
+ function skipValue(str, index, len) {
9401
+ while (index < len) {
9402
+ const char = str.charCodeAt(index);
9403
+ if (char === SEMI)
9404
+ break;
9405
+ index++;
9386
9406
  }
9387
- return header;
9407
+ return index;
9388
9408
  }
9389
- __name(getcontenttype, "getcontenttype");
9390
- function qstring(val) {
9391
- var str = String(val);
9392
- if (TOKEN_REGEXP.test(str)) {
9393
- return str;
9409
+ __name(skipValue, "skipValue");
9410
+ function skipOWS(header, index, len) {
9411
+ while (index < len) {
9412
+ const char = header.charCodeAt(index);
9413
+ if (char !== SP && char !== HTAB)
9414
+ break;
9415
+ index++;
9394
9416
  }
9395
- if (str.length > 0 && !TEXT_REGEXP.test(str)) {
9396
- throw new TypeError("invalid parameter value");
9417
+ return index;
9418
+ }
9419
+ __name(skipOWS, "skipOWS");
9420
+ function trailingOWS(header, start, end) {
9421
+ while (end > start) {
9422
+ const char = header.charCodeAt(end - 1);
9423
+ if (char !== SP && char !== HTAB)
9424
+ break;
9425
+ end--;
9397
9426
  }
9398
- return '"' + str.replace(QUOTE_REGEXP, "\\$1") + '"';
9427
+ return end;
9399
9428
  }
9400
- __name(qstring, "qstring");
9401
- function ContentType(type) {
9402
- this.parameters = /* @__PURE__ */ Object.create(null);
9403
- this.type = type;
9429
+ __name(trailingOWS, "trailingOWS");
9430
+ function qstring(str) {
9431
+ if (TOKEN_REGEXP.test(str))
9432
+ return str;
9433
+ if (TEXT_REGEXP.test(str))
9434
+ return `"${str.replace(QUOTE_REGEXP, "\\$&")}"`;
9435
+ throw new TypeError(`Invalid parameter value: ${str}`);
9404
9436
  }
9405
- __name(ContentType, "ContentType");
9437
+ __name(qstring, "qstring");
9406
9438
  }
9407
9439
  });
9408
9440
 
@@ -9412,7 +9444,7 @@ var require_utils = __commonJS({
9412
9444
  "use strict";
9413
9445
  init_esbuild_shims();
9414
9446
  var bytes = require_bytes();
9415
- var contentType = require_content_type();
9447
+ var contentType = require_dist2();
9416
9448
  var typeis = require_type_is();
9417
9449
  module.exports = {
9418
9450
  getCharset,
@@ -9420,11 +9452,9 @@ var require_utils = __commonJS({
9420
9452
  passthrough
9421
9453
  };
9422
9454
  function getCharset(req) {
9423
- try {
9424
- return (contentType.parse(req).parameters.charset || "").toLowerCase();
9425
- } catch {
9426
- return void 0;
9427
- }
9455
+ const header = req.headers["content-type"];
9456
+ if (!header) return void 0;
9457
+ return contentType.parse(header).parameters.charset?.toLowerCase();
9428
9458
  }
9429
9459
  __name(getCharset, "getCharset");
9430
9460
  function typeChecker(type) {
@@ -9437,15 +9467,18 @@ var require_utils = __commonJS({
9437
9467
  if (!defaultType) {
9438
9468
  throw new TypeError("defaultType must be provided");
9439
9469
  }
9440
- var inflate = options?.inflate !== false;
9441
- var limit = typeof options?.limit !== "number" ? bytes.parse(options?.limit || "100kb") : options?.limit;
9442
- var type = options?.type || defaultType;
9443
- var verify = options?.verify || false;
9444
- var defaultCharset = options?.defaultCharset || "utf-8";
9470
+ const inflate = options?.inflate !== false;
9471
+ const limit = typeof options?.limit === "undefined" || options?.limit === null ? 102400 : bytes.parse(options.limit);
9472
+ const type = options?.type || defaultType;
9473
+ const verify = options?.verify || false;
9474
+ const defaultCharset = options?.defaultCharset || "utf-8";
9475
+ if (limit === null) {
9476
+ throw new TypeError(`option limit "${String(options.limit)}" is invalid`);
9477
+ }
9445
9478
  if (verify !== false && typeof verify !== "function") {
9446
9479
  throw new TypeError("option verify must be function");
9447
9480
  }
9448
- var shouldParse = typeof type !== "function" ? typeChecker(type) : type;
9481
+ const shouldParse = typeof type !== "function" ? typeChecker(type) : type;
9449
9482
  return {
9450
9483
  inflate,
9451
9484
  limit,
@@ -9495,7 +9528,7 @@ var require_read = __commonJS({
9495
9528
  next();
9496
9529
  return;
9497
9530
  }
9498
- var encoding = null;
9531
+ let encoding = null;
9499
9532
  if (options?.skipCharset !== true) {
9500
9533
  encoding = getCharset(req) || options.defaultCharset;
9501
9534
  if (!!options?.isValidCharset && !options.isValidCharset(encoding)) {
@@ -9507,10 +9540,10 @@ var require_read = __commonJS({
9507
9540
  return;
9508
9541
  }
9509
9542
  }
9510
- var length;
9511
- var opts = options;
9512
- var stream;
9513
- var verify = opts.verify;
9543
+ let length;
9544
+ const opts = options;
9545
+ let stream;
9546
+ const verify = opts.verify;
9514
9547
  try {
9515
9548
  stream = contentstream(req, debug, opts.inflate);
9516
9549
  length = stream.length;
@@ -9529,7 +9562,7 @@ var require_read = __commonJS({
9529
9562
  debug("read body");
9530
9563
  getBody(stream, opts, function(error, body) {
9531
9564
  if (error) {
9532
- var _error;
9565
+ let _error;
9533
9566
  if (error.type === "encoding.unsupported") {
9534
9567
  _error = createError(415, 'unsupported charset "' + encoding.toUpperCase() + '"', {
9535
9568
  charset: encoding.toLowerCase(),
@@ -9559,7 +9592,7 @@ var require_read = __commonJS({
9559
9592
  return;
9560
9593
  }
9561
9594
  }
9562
- var str = body;
9595
+ let str = body;
9563
9596
  try {
9564
9597
  debug("parse body");
9565
9598
  str = typeof body !== "string" && encoding !== null ? iconv.decode(body, encoding) : body;
@@ -9576,8 +9609,8 @@ var require_read = __commonJS({
9576
9609
  }
9577
9610
  __name(read, "read");
9578
9611
  function contentstream(req, debug, inflate) {
9579
- var encoding = (req.headers["content-encoding"] || "identity").toLowerCase();
9580
- var length = req.headers["content-length"];
9612
+ const encoding = (req.headers["content-encoding"] || "identity").toLowerCase();
9613
+ const length = req.headers["content-length"];
9581
9614
  debug('content-encoding "%s"', encoding);
9582
9615
  if (inflate === false && encoding !== "identity") {
9583
9616
  throw createError(415, "content encoding unsupported", {
@@ -9589,7 +9622,7 @@ var require_read = __commonJS({
9589
9622
  req.length = length;
9590
9623
  return req;
9591
9624
  }
9592
- var stream = createDecompressionStream(encoding, debug);
9625
+ const stream = createDecompressionStream(encoding, debug);
9593
9626
  req.pipe(stream);
9594
9627
  return stream;
9595
9628
  }
@@ -9639,18 +9672,44 @@ var require_json = __commonJS({
9639
9672
  var JSON_SYNTAX_REGEXP = /#+/g;
9640
9673
  function json(options) {
9641
9674
  const normalizedOptions = normalizeOptions(options, "application/json");
9642
- var reviver = options?.reviver;
9643
- var strict = options?.strict !== false;
9644
- function parse(body) {
9645
- if (body.length === 0) {
9646
- return {};
9647
- }
9648
- if (strict) {
9649
- var first = firstchar(body);
9675
+ const parse = createJsonParser(options);
9676
+ const readOptions = {
9677
+ ...normalizedOptions,
9678
+ // assert charset per RFC 7159 sec 8.1
9679
+ isValidCharset: /* @__PURE__ */ __name((charset) => charset.slice(0, 4) === "utf-", "isValidCharset")
9680
+ };
9681
+ return /* @__PURE__ */ __name(function jsonParser(req, res, next) {
9682
+ read(req, res, next, parse, debug, readOptions);
9683
+ }, "jsonParser");
9684
+ }
9685
+ __name(json, "json");
9686
+ function createJsonParser(options) {
9687
+ const reviver = options?.reviver;
9688
+ const strict = options?.strict !== false;
9689
+ if (strict) {
9690
+ return /* @__PURE__ */ __name(function parse(body) {
9691
+ if (body.length === 0) {
9692
+ return {};
9693
+ }
9694
+ const first = firstchar(body);
9650
9695
  if (first !== "{" && first !== "[") {
9651
9696
  debug("strict violation");
9652
9697
  throw createStrictSyntaxError(body, first);
9653
9698
  }
9699
+ try {
9700
+ debug("parse json");
9701
+ return JSON.parse(body, reviver);
9702
+ } catch (e) {
9703
+ throw normalizeJsonSyntaxError(e, {
9704
+ message: e.message,
9705
+ stack: e.stack
9706
+ });
9707
+ }
9708
+ }, "parse");
9709
+ }
9710
+ return /* @__PURE__ */ __name(function parse(body) {
9711
+ if (body.length === 0) {
9712
+ return {};
9654
9713
  }
9655
9714
  try {
9656
9715
  debug("parse json");
@@ -9661,21 +9720,12 @@ var require_json = __commonJS({
9661
9720
  stack: e.stack
9662
9721
  });
9663
9722
  }
9664
- }
9665
- __name(parse, "parse");
9666
- const readOptions = {
9667
- ...normalizedOptions,
9668
- // assert charset per RFC 7159 sec 8.1
9669
- isValidCharset: /* @__PURE__ */ __name((charset) => charset.slice(0, 4) === "utf-", "isValidCharset")
9670
- };
9671
- return /* @__PURE__ */ __name(function jsonParser(req, res, next) {
9672
- read(req, res, next, parse, debug, readOptions);
9673
- }, "jsonParser");
9723
+ }, "parse");
9674
9724
  }
9675
- __name(json, "json");
9725
+ __name(createJsonParser, "createJsonParser");
9676
9726
  function createStrictSyntaxError(str, char) {
9677
- var index = str.indexOf(char);
9678
- var partial = "";
9727
+ const index = str.indexOf(char);
9728
+ let partial = "";
9679
9729
  if (index !== -1) {
9680
9730
  partial = str.substring(0, index) + JSON_SYNTAX_CHAR.repeat(str.length - index);
9681
9731
  }
@@ -9693,14 +9743,14 @@ var require_json = __commonJS({
9693
9743
  }
9694
9744
  __name(createStrictSyntaxError, "createStrictSyntaxError");
9695
9745
  function firstchar(str) {
9696
- var match = FIRST_CHAR_REGEXP.exec(str);
9746
+ const match = FIRST_CHAR_REGEXP.exec(str);
9697
9747
  return match ? match[1] : void 0;
9698
9748
  }
9699
9749
  __name(firstchar, "firstchar");
9700
9750
  function normalizeJsonSyntaxError(error, obj) {
9701
- var keys = Object.getOwnPropertyNames(error);
9702
- for (var i = 0; i < keys.length; i++) {
9703
- var key = keys[i];
9751
+ const keys = Object.getOwnPropertyNames(error);
9752
+ for (let i = 0; i < keys.length; i++) {
9753
+ const key = keys[i];
9704
9754
  if (key !== "stack" && key !== "message") {
9705
9755
  delete error[key];
9706
9756
  }
@@ -9772,11 +9822,7 @@ var require_urlencoded = __commonJS({
9772
9822
  if (normalizedOptions.defaultCharset !== "utf-8" && normalizedOptions.defaultCharset !== "iso-8859-1") {
9773
9823
  throw new TypeError("option defaultCharset must be either utf-8 or iso-8859-1");
9774
9824
  }
9775
- var queryparse = createQueryParser(options);
9776
- function parse(body, encoding) {
9777
- return body.length ? queryparse(body, encoding) : {};
9778
- }
9779
- __name(parse, "parse");
9825
+ const parse = createQueryParser(options);
9780
9826
  const readOptions = {
9781
9827
  ...normalizedOptions,
9782
9828
  // assert charset
@@ -9788,11 +9834,11 @@ var require_urlencoded = __commonJS({
9788
9834
  }
9789
9835
  __name(urlencoded, "urlencoded");
9790
9836
  function createQueryParser(options) {
9791
- var extended = Boolean(options?.extended);
9792
- var parameterLimit = options?.parameterLimit !== void 0 ? options?.parameterLimit : 1e3;
9793
- var charsetSentinel = options?.charsetSentinel;
9794
- var interpretNumericEntities = options?.interpretNumericEntities;
9795
- var depth = extended ? options?.depth !== void 0 ? options?.depth : 32 : 0;
9837
+ const extended = Boolean(options?.extended);
9838
+ let parameterLimit = options?.parameterLimit !== void 0 ? options?.parameterLimit : 1e3;
9839
+ const charsetSentinel = options?.charsetSentinel;
9840
+ const interpretNumericEntities = options?.interpretNumericEntities;
9841
+ const depth = extended ? options?.depth !== void 0 ? options?.depth : 32 : 0;
9796
9842
  if (isNaN(parameterLimit) || parameterLimit < 1) {
9797
9843
  throw new TypeError("option parameterLimit must be a positive number");
9798
9844
  }
@@ -9802,15 +9848,16 @@ var require_urlencoded = __commonJS({
9802
9848
  if (isFinite(parameterLimit)) {
9803
9849
  parameterLimit = parameterLimit | 0;
9804
9850
  }
9805
- return /* @__PURE__ */ __name(function queryparse(body, encoding) {
9806
- var paramCount = parameterCount(body, parameterLimit);
9851
+ return /* @__PURE__ */ __name(function parse(body, encoding) {
9852
+ if (!body.length) return {};
9853
+ const paramCount = parameterCount(body, parameterLimit);
9807
9854
  if (paramCount === void 0) {
9808
9855
  debug("too many parameters");
9809
9856
  throw createError(413, "too many parameters", {
9810
9857
  type: "parameters.too.many"
9811
9858
  });
9812
9859
  }
9813
- var arrayLimit = extended ? Math.max(100, paramCount) : paramCount;
9860
+ const arrayLimit = extended ? Math.max(100, paramCount) : paramCount;
9814
9861
  debug("parse " + (extended ? "extended " : "") + "urlencoding");
9815
9862
  try {
9816
9863
  return qs.parse(body, {
@@ -9832,7 +9879,7 @@ var require_urlencoded = __commonJS({
9832
9879
  throw err;
9833
9880
  }
9834
9881
  }
9835
- }, "queryparse");
9882
+ }, "parse");
9836
9883
  }
9837
9884
  __name(createQueryParser, "createQueryParser");
9838
9885
  function parameterCount(body, limit) {
@@ -9855,26 +9902,10 @@ var require_body_parser = __commonJS({
9855
9902
  "use strict";
9856
9903
  init_esbuild_shims();
9857
9904
  exports = module.exports = bodyParser;
9858
- Object.defineProperty(exports, "json", {
9859
- configurable: true,
9860
- enumerable: true,
9861
- get: /* @__PURE__ */ __name(() => require_json(), "get")
9862
- });
9863
- Object.defineProperty(exports, "raw", {
9864
- configurable: true,
9865
- enumerable: true,
9866
- get: /* @__PURE__ */ __name(() => require_raw(), "get")
9867
- });
9868
- Object.defineProperty(exports, "text", {
9869
- configurable: true,
9870
- enumerable: true,
9871
- get: /* @__PURE__ */ __name(() => require_text(), "get")
9872
- });
9873
- Object.defineProperty(exports, "urlencoded", {
9874
- configurable: true,
9875
- enumerable: true,
9876
- get: /* @__PURE__ */ __name(() => require_urlencoded(), "get")
9877
- });
9905
+ exports.json = require_json();
9906
+ exports.raw = require_raw();
9907
+ exports.text = require_text();
9908
+ exports.urlencoded = require_urlencoded();
9878
9909
  function bodyParser() {
9879
9910
  throw new Error("The bodyParser() generic has been split into individual middleware to use instead.");
9880
9911
  }
@@ -11414,7 +11445,7 @@ var require_is_promise = __commonJS({
11414
11445
  });
11415
11446
 
11416
11447
  // node_modules/path-to-regexp/dist/index.js
11417
- var require_dist2 = __commonJS({
11448
+ var require_dist3 = __commonJS({
11418
11449
  "node_modules/path-to-regexp/dist/index.js"(exports) {
11419
11450
  "use strict";
11420
11451
  init_esbuild_shims();
@@ -11814,7 +11845,7 @@ var require_layer = __commonJS({
11814
11845
  "use strict";
11815
11846
  init_esbuild_shims();
11816
11847
  var isPromise = require_is_promise();
11817
- var pathRegexp = require_dist2();
11848
+ var pathRegexp = require_dist3();
11818
11849
  var debug = require_src()("router:layer");
11819
11850
  var deprecate = require_depd()("router");
11820
11851
  var TRAILING_SLASH_REGEXP = /\/+$/;
@@ -16598,6 +16629,7 @@ var SERVE_CAPABILITY_REGISTRY = {
16598
16629
  session_source_metadata: { since: "v1" },
16599
16630
  session_side_task: { since: "v1" },
16600
16631
  session_prompt: { since: "v1" },
16632
+ session_mid_turn_message_mutation: { since: "v1" },
16601
16633
  session_cancel: { since: "v1" },
16602
16634
  session_events: { since: "v1" },
16603
16635
  session_artifacts: { since: "v1" },
@@ -16891,6 +16923,11 @@ var SERVE_CAPABILITY_REGISTRY = {
16891
16923
  // to discover plural modalities because legacy Voice tags describe only
16892
16924
  // the primary runtime and may be absent for a secondary-only setup.
16893
16925
  workspace_qualified_voice: { since: "v1" },
16926
+ // Workspace-qualified managed-memory routes
16927
+ // (`/workspaces/:workspace/memory/{remember,forget,dream}`). Each
16928
+ // registered workspace gets its own task lane; the primary lane is the
16929
+ // same instance as the singular `/workspace/memory` surface.
16930
+ workspace_qualified_memory: { since: "v1" },
16894
16931
  // Global extension catalog/mutations plus workspace-qualified activation
16895
16932
  // projections. This is additive to the legacy primary-workspace
16896
16933
  // `workspace_extensions` contract.
@@ -17035,6 +17072,10 @@ var CONDITIONAL_SERVE_FEATURES = /* @__PURE__ */ new Map([
17035
17072
  // but only becomes useful once the daemon has a secondary runtime.
17036
17073
  (toggles) => toggles.acpHttpEnabled === true && toggles.multiWorkspaceSessionsEnabled === true
17037
17074
  ],
17075
+ [
17076
+ "workspace_qualified_memory",
17077
+ (toggles) => toggles.acpHttpEnabled === true && toggles.multiWorkspaceSessionsEnabled === true
17078
+ ],
17038
17079
  ["client_mcp_over_ws", (toggles) => toggles.clientMcpOverWsEnabled === true],
17039
17080
  ["cdp_tunnel_over_ws", (toggles) => toggles.cdpTunnelOverWsEnabled === true],
17040
17081
  [
@@ -18748,7 +18789,7 @@ on-finished/index.js:
18748
18789
  *)
18749
18790
 
18750
18791
  content-type/dist/index.js:
18751
- content-type/index.js:
18792
+ content-type/dist/index.js:
18752
18793
  (*!
18753
18794
  * content-type
18754
18795
  * Copyright(c) 2015 Douglas Christopher Wilson
@@ -2,22 +2,22 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-3F2WDAV6.js";
5
+ } from "./chunk-KXWERR6P.js";
6
6
  import {
7
7
  computeThresholds,
8
8
  getCoreSystemPrompt,
9
9
  resolveInteractionMode
10
- } from "./chunk-54YCNSK5.js";
10
+ } from "./chunk-UQDFEU47.js";
11
11
  import {
12
12
  buildSkillLlmContent
13
13
  } from "./chunk-K623ENWT.js";
14
14
  import {
15
15
  DiscoveredMCPTool,
16
16
  uiTelemetryService
17
- } from "./chunk-DUNI4EBW.js";
17
+ } from "./chunk-4K3RV3OA.js";
18
18
  import {
19
19
  ToolNames
20
- } from "./chunk-MM7TH7ZM.js";
20
+ } from "./chunk-CFDR3GNL.js";
21
21
  import {
22
22
  DEFAULT_TOKEN_LIMIT
23
23
  } from "./chunk-ZBVS26BY.js";