@qwen-code/qwen-code 0.18.1-preview.0 → 0.18.1-preview.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/README.md +2 -1
  2. package/bundled/qc-helper/docs/features/channels/feishu.md +16 -0
  3. package/bundled/qc-helper/docs/features/mcp.md +1 -1
  4. package/bundled/qc-helper/docs/qwen-serve.md +18 -7
  5. package/bundled/review/SKILL.md +7 -3
  6. package/chunks/{agent-WK5GYOPC.js → agent-ZLVQLNIP.js} +5 -5
  7. package/chunks/{agent-headless-KZJALDQF.js → agent-headless-H4ZT46GX.js} +5 -5
  8. package/chunks/{anthropicContentGenerator-DCI26OQF.js → anthropicContentGenerator-KLBHYGH6.js} +1 -1
  9. package/chunks/{askUserQuestion-NDNFGC35.js → askUserQuestion-QPZXR3UO.js} +1 -1
  10. package/chunks/{chunk-27STU35P.js → chunk-BRU4Z5BG.js} +10 -5
  11. package/chunks/{chunk-JZFEL3RB.js → chunk-C64WAJOC.js} +1 -1
  12. package/chunks/{chunk-DYCU43TE.js → chunk-HISY5FYZ.js} +4 -4
  13. package/chunks/{chunk-E322ZT4P.js → chunk-L6F7VZPZ.js} +6 -6
  14. package/chunks/{chunk-3NRO6NHX.js → chunk-MN5RAXVB.js} +3 -3
  15. package/chunks/{chunk-RLFLJVHU.js → chunk-Q6WOQSR4.js} +2 -2
  16. package/chunks/{chunk-BW7CMDF3.js → chunk-R53CLQY7.js} +1 -1
  17. package/chunks/{chunk-26QELEL2.js → chunk-RTTAC5VW.js} +1 -1
  18. package/chunks/{chunk-Q3NN2XUW.js → chunk-UKLVRIWE.js} +1253 -1007
  19. package/chunks/{chunk-VXHYMZXW.js → chunk-VIEIRAK3.js} +1 -1
  20. package/chunks/{chunk-OT6JA3KQ.js → chunk-YJDVHAGL.js} +1 -1
  21. package/chunks/{chunk-6WPY6ES3.js → chunk-ZNUMXPNK.js} +565 -48
  22. package/chunks/{computer-use-4ELNIZMF.js → computer-use-SWC45S44.js} +5 -5
  23. package/chunks/{contextCommand-E2V26QGD.js → contextCommand-O5DLQUIZ.js} +7 -7
  24. package/chunks/{cron-create-7CXEAJ2K.js → cron-create-DQKRQMCP.js} +1 -1
  25. package/chunks/{cron-delete-2FQYYNQ6.js → cron-delete-DOFPHFTI.js} +1 -1
  26. package/chunks/{cron-list-QCAJ73XE.js → cron-list-RCVOO3CB.js} +1 -1
  27. package/chunks/{dist-PF2IYSMD.js → dist-UH7CYT7F.js} +1 -1
  28. package/chunks/{edit-IC3ECG44.js → edit-J7M33W4D.js} +6 -6
  29. package/chunks/{enter-worktree-ETQWM7BB.js → enter-worktree-RCCPIOG6.js} +5 -5
  30. package/chunks/{enterPlanMode-VL3F45RF.js → enterPlanMode-EC7HWVXV.js} +5 -5
  31. package/chunks/{exit-worktree-F5BJXBFB.js → exit-worktree-V3OVN22U.js} +5 -5
  32. package/chunks/{exitPlanMode-VOC7G5FJ.js → exitPlanMode-P3F5VTWX.js} +7 -6
  33. package/chunks/{geminiContentGenerator-7D2QZ5FE.js → geminiContentGenerator-E2LZQIFZ.js} +1 -1
  34. package/chunks/{glob-XTABUPPR.js → glob-ENPPHN24.js} +5 -5
  35. package/chunks/{grep-MRCXYH2N.js → grep-RXZMZKHV.js} +5 -5
  36. package/chunks/{ls-XVGXRYWD.js → ls-TRD77UTS.js} +1 -1
  37. package/chunks/{lsp-S6SHPULC.js → lsp-2VFWQPZS.js} +1 -1
  38. package/chunks/{monitor-LNRRNJJB.js → monitor-YYWM7RUX.js} +5 -5
  39. package/chunks/{notebook-edit-IS3UYVGM.js → notebook-edit-L6OODJTK.js} +6 -6
  40. package/chunks/{openaiContentGenerator-P772OZ6K.js → openaiContentGenerator-BPRGR5FJ.js} +5 -5
  41. package/chunks/{qwenContentGenerator-Y6YGZRHH.js → qwenContentGenerator-ENMXX47B.js} +7 -7
  42. package/chunks/{read-file-2JIJ646W.js → read-file-3VASWJKO.js} +3 -3
  43. package/chunks/{ripGrep-Z74CN4MW.js → ripGrep-67IQWCR7.js} +5 -5
  44. package/chunks/{scheduler-KFG4TT3A.js → scheduler-TAPJOQHX.js} +5 -5
  45. package/chunks/{send-message-SMNR5DBG.js → send-message-QZOC5GA2.js} +1 -1
  46. package/chunks/{serve-XDZAE3KF.js → serve-CQF2R7SG.js} +709 -26
  47. package/chunks/{shell-BTAJJJHO.js → shell-ZLBFZ75G.js} +5 -5
  48. package/chunks/{skill-LSM726DP.js → skill-BZ2NCCJN.js} +3 -3
  49. package/chunks/{src-JMUZP4A4.js → src-ASRB3EO3.js} +9 -5
  50. package/chunks/{syntheticOutput-KMNF7YG6.js → syntheticOutput-WJSUK4SZ.js} +2 -2
  51. package/chunks/{task-create-LIJHK75G.js → task-create-GGSC27HO.js} +2 -2
  52. package/chunks/{task-list-S4GNSILM.js → task-list-EDHHHSK4.js} +1 -1
  53. package/chunks/{task-stop-3GBRYJHM.js → task-stop-WR5PDVZY.js} +1 -1
  54. package/chunks/{task-update-F3UTVJMS.js → task-update-UR7NUHBV.js} +2 -2
  55. package/chunks/{team-create-S5ZBN464.js → team-create-NXTYUYLE.js} +5 -5
  56. package/chunks/{team-delete-54434EB7.js → team-delete-FC33URJK.js} +1 -1
  57. package/chunks/{todoWrite-4ENGSBUX.js → todoWrite-GO2ME7ZV.js} +1 -1
  58. package/chunks/{tool-search-NUOEJ4LF.js → tool-search-GYO3ZDMH.js} +3 -3
  59. package/chunks/{web-fetch-RHZMF3MP.js → web-fetch-NLLATYIL.js} +2 -2
  60. package/chunks/{workflow-ZI3ZXNU6.js → workflow-KZLZUDHE.js} +249 -24
  61. package/chunks/{write-file-MHQLLZWY.js → write-file-AUXVL5D2.js} +6 -6
  62. package/cli.js +543 -184
  63. package/package.json +2 -2
package/README.md CHANGED
@@ -256,7 +256,7 @@ Use the `/model` command at any time to switch between all configured models.
256
256
  }
257
257
  ```
258
258
 
259
- > Subscribe to the Coding Plan and get your API key at [Alibaba Cloud ModelStudio(Beijing)](https://bailian.console.aliyun.com/cn-beijing?tab=coding-plan#/efm/coding-plan-index) or [Alibaba Cloud ModelStudio(intl)](https://modelstudio.console.alibabacloud.com/?tab=coding-plan#/efm/coding-plan-index).
259
+ > Subscribe to the Coding Plan and get your API key at [Alibaba Cloud ModelStudio (Beijing)](https://bailian.console.aliyun.com/cn-beijing?tab=coding-plan#/efm/coding-plan-index) or [Alibaba Cloud ModelStudio (intl)](https://modelstudio.console.alibabacloud.com/?tab=coding-plan#/efm/coding-plan-index).
260
260
 
261
261
  </details>
262
262
 
@@ -561,6 +561,7 @@ The most commonly used top-level fields in `settings.json`:
561
561
 
562
562
  Looking for a graphical interface?
563
563
 
564
+ - [**Qwen Code Desktop**](https://github.com/QwenLM/qwen-code/releases/tag/desktop-latest) Official desktop app for macOS, Windows, and Linux
564
565
  - [**AionUi**](https://github.com/iOfficeAI/AionUi) A modern GUI for command-line AI tools including Qwen Code
565
566
  - [**Gemini CLI Desktop**](https://github.com/Piebald-AI/gemini-cli-desktop) A cross-platform desktop/web/mobile UI for Qwen Code
566
567
 
@@ -11,11 +11,25 @@ This guide covers setting up a Qwen Code channel on Feishu (飞书) / Lark.
11
11
 
12
12
  1. Go to the [Feishu Open Platform](https://open.feishu.cn)
13
13
  2. Create a new application (or use an existing one)
14
+
15
+ ![](https://gw.alicdn.com/imgextra/i4/O1CN01ORb10i1JM0MQfhnsV_!!6000000001013-2-tps-2219-931.png)
16
+
14
17
  3. Under the application, enable the **Bot** capability (添加应用能力 → 机器人)
18
+
19
+ ![](https://gw.alicdn.com/imgextra/i4/O1CN01bClpxu1FZxyH4kNjJ_!!6000000000502-2-tps-2219-931.png)
20
+
15
21
  4. In **Event Subscriptions** (事件与回调), select **Long Connection** (使用长连接接收事件)
22
+
23
+ ![](https://gw.alicdn.com/imgextra/i1/O1CN01uIwzbl1ph8Kwq7hTI_!!6000000005391-2-tps-2219-1166.png)
24
+
16
25
  5. Add the event `im.message.receive_v1` (接收消息)
26
+
27
+ ![](https://gw.alicdn.com/imgextra/i2/O1CN01n7sZmV28s6WX0aDhw_!!6000000007987-2-tps-2219-1090.png)
28
+
17
29
  6. Note the **App ID** (Client ID) and **App Secret** (Client Secret) from the application credentials page
18
30
 
31
+ ![](https://gw.alicdn.com/imgextra/i2/O1CN01ag1yBh1DxfEUb4xmE_!!6000000000283-2-tps-2219-1166.png)
32
+
19
33
  ### Required Permissions
20
34
 
21
35
  Enable the following permissions under **Permissions & Scopes** (权限管理):
@@ -28,6 +42,8 @@ Enable the following permissions under **Permissions & Scopes** (权限管理):
28
42
 
29
43
  After configuring permissions and events, create a version and publish it. The bot won't work until the application is published and approved.
30
44
 
45
+ ![](https://gw.alicdn.com/imgextra/i1/O1CN01GbNRcj1lVuACnkV6M_!!6000000004825-2-tps-2219-1090.png)
46
+
31
47
  ## Configuration
32
48
 
33
49
  Add the channel to `~/.qwen/settings.json`:
@@ -281,7 +281,7 @@ OAuth configuration properties:
281
281
 
282
282
  OAuth tokens are automatically:
283
283
 
284
- - **Stored securely** in `~/.qwen/mcp-oauth-tokens.json`
284
+ - **Stored securely** in `~/.qwen/mcp-oauth-tokens-v2.json` (AES-256-GCM encrypted), with keychain storage preferred when available
285
285
  - **Refreshed** when expired (if refresh tokens are available)
286
286
  - **Validated** before each connection attempt
287
287
 
@@ -70,18 +70,29 @@ curl http://127.0.0.1:4170/health
70
70
  # → {"status":"ok"}
71
71
 
72
72
  curl http://127.0.0.1:4170/capabilities
73
- # → {"v":1,"mode":"http-bridge","features":["health","capabilities","session_create",...],"workspaceCwd":"/path/to/your-project"}
73
+ # → {"v":1,"mode":"http-bridge","features":["health","daemon_status","capabilities","session_create",...],"workspaceCwd":"/path/to/your-project"}
74
+
75
+ curl http://127.0.0.1:4170/daemon/status
76
+ # → {"v":1,"detail":"summary","status":"ok","runtime":{...}}
74
77
  ```
75
78
 
76
79
  The `workspaceCwd` field surfaces the bound workspace so clients can pre-flight check + omit `cwd` on `POST /session`.
77
80
  The `limits.maxPendingPromptsPerSession` field advertises the active per-session prompt admission cap; `null` means the cap is disabled.
78
81
 
79
- The daemon also exposes read-only runtime snapshots for client UIs:
80
- `GET /workspace/mcp`, `GET /workspace/skills`, `GET /workspace/providers`,
81
- `GET /workspace/env`, `GET /workspace/preflight`,
82
+ The daemon also exposes read-only runtime snapshots for client UIs and
83
+ operators: `GET /daemon/status`, `GET /workspace/mcp`,
84
+ `GET /workspace/skills`, `GET /workspace/providers`, `GET /workspace/env`,
85
+ `GET /workspace/preflight`,
82
86
  `GET /session/:id/context`, `GET /session/:id/supported-commands`, and
83
87
  `GET /session/:id/tasks`.
84
88
 
89
+ `GET /daemon/status` is the consolidated troubleshooting snapshot. The default
90
+ `detail=summary` reads only in-memory daemon state (sessions, permissions,
91
+ SSE/ACP transport counts, rate limit rejects, process memory, resolved limits)
92
+ and does not start the ACP child. Use `GET /daemon/status?detail=full` for
93
+ per-session diagnostics, ACP connection details, auth device-flow counts, and
94
+ workspace status sections when you are actively investigating a problem.
95
+
85
96
  `GET /workspace/mcp`, `GET /workspace/skills`, and `GET /workspace/providers`
86
97
  report the live ACP runtime and do not start the ACP child when idle; an
87
98
  idle daemon returns `initialized: false` with an empty snapshot. Once a
@@ -320,9 +331,9 @@ To handle multiple **users** (each with their own quota, audit log, sandbox) or
320
331
 
321
332
  The daemon exposes ACP's `session/load` and resume flow over HTTP via two routes:
322
333
 
323
- | Route | Use when |
324
- | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
325
- | `POST /session/:id/load` | The client has **no** history rendered (cold reconnect, picker-then-open). The daemon replays every persisted turn through SSE so subscribers see the full transcript. Capability tag: `session_load`. |
334
+ | Route | Use when |
335
+ | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
336
+ | `POST /session/:id/load` | The client has **no** history rendered (cold reconnect, picker-then-open). The daemon replays every persisted turn through SSE so subscribers see the full transcript. Capability tag: `session_load`. |
326
337
  | `POST /session/:id/resume` | The client already has the turns on screen and only needs the daemon-side handle back. Model context is restored on the agent side without UI replay — the SSE stream stays clean. Capability tag: `session_resume` (`unstable_session_resume` remains a deprecated alias for older clients). |
327
338
 
328
339
  The TypeScript SDK exposes both as static factories on `DaemonSessionClient`:
@@ -573,20 +573,24 @@ gh api repos/{owner}/{repo}/pulls/{pr_number}/reviews \
573
573
  --input .qwen/tmp/qwen-review-{target}-review.json
574
574
  ```
575
575
 
576
- If there are **no confirmed findings**, submit a single-line review. Use `event=APPROVE` by default; if the presubmit JSON has `downgradeApprove=true`, use `event=COMMENT` and prepend the downgrade reasons to the body:
576
+ If there are **no confirmed findings**, submit a short summary review. Use `event=APPROVE` by default; if the presubmit JSON has `downgradeApprove=true`, use `event=COMMENT` and prepend the downgrade reasons to the body. Separate the footer from the body with a blank line so it renders on its own line — `-f body` does not interpret `\n`, so use a real line break inside the quotes:
577
577
 
578
578
  ```bash
579
579
  # downgradeApprove=false (non-self PR, green CI):
580
580
  gh api repos/{owner}/{repo}/pulls/{pr_number}/reviews \
581
581
  -f commit_id="{commit_sha}" \
582
582
  -f event="APPROVE" \
583
- -f body="No issues found. LGTM! ✅ _— YOUR_MODEL_ID via Qwen Code /review_"
583
+ -f body="No issues found. LGTM! ✅
584
+
585
+ _— YOUR_MODEL_ID via Qwen Code /review_"
584
586
 
585
587
  # downgradeApprove=true (self-PR, CI failing, or CI still running):
586
588
  gh api repos/{owner}/{repo}/pulls/{pr_number}/reviews \
587
589
  -f commit_id="{commit_sha}" \
588
590
  -f event="COMMENT" \
589
- -f body="No review findings. Downgraded from Approve to Comment: <downgradeReasons joined with '; '>. _— YOUR_MODEL_ID via Qwen Code /review_"
591
+ -f body="No review findings. Downgraded from Approve to Comment: <downgradeReasons joined with '; '>.
592
+
593
+ _— YOUR_MODEL_ID via Qwen Code /review_"
590
594
  ```
591
595
 
592
596
  Clean up the JSON file in Step 11.
@@ -7,9 +7,9 @@ import {
7
7
  hasRebuiltToolRegistry,
8
8
  rebuildToolRegistryOnOverride,
9
9
  resolveSubagentApprovalMode
10
- } from "./chunk-Q3NN2XUW.js";
10
+ } from "./chunk-UKLVRIWE.js";
11
11
  import "./chunk-K5PGHDBN.js";
12
- import "./chunk-VXHYMZXW.js";
12
+ import "./chunk-VIEIRAK3.js";
13
13
  import "./chunk-O4PICXES.js";
14
14
  import "./chunk-TW522KN6.js";
15
15
  import "./chunk-BJ5HQ23U.js";
@@ -23,14 +23,14 @@ import "./chunk-CPVI5J2L.js";
23
23
  import "./chunk-ZMIBJS45.js";
24
24
  import "./chunk-77WXWU44.js";
25
25
  import "./chunk-B4ZF2KSI.js";
26
- import "./chunk-E322ZT4P.js";
26
+ import "./chunk-L6F7VZPZ.js";
27
27
  import "./chunk-3PJXIDKI.js";
28
28
  import "./chunk-UWCTAVOD.js";
29
29
  import "./chunk-OFEVLU4C.js";
30
30
  import "./chunk-IQHSD7K5.js";
31
31
  import "./chunk-LYRSMKLS.js";
32
- import "./chunk-26QELEL2.js";
33
- import "./chunk-6WPY6ES3.js";
32
+ import "./chunk-RTTAC5VW.js";
33
+ import "./chunk-ZNUMXPNK.js";
34
34
  import "./chunk-IDYDPBBN.js";
35
35
  import "./chunk-FIQECJTQ.js";
36
36
  import "./chunk-64WXLC72.js";
@@ -4,9 +4,9 @@ import {
4
4
  AgentHeadless,
5
5
  ContextState,
6
6
  templateString
7
- } from "./chunk-Q3NN2XUW.js";
7
+ } from "./chunk-UKLVRIWE.js";
8
8
  import "./chunk-K5PGHDBN.js";
9
- import "./chunk-VXHYMZXW.js";
9
+ import "./chunk-VIEIRAK3.js";
10
10
  import "./chunk-O4PICXES.js";
11
11
  import "./chunk-TW522KN6.js";
12
12
  import "./chunk-BJ5HQ23U.js";
@@ -20,14 +20,14 @@ import "./chunk-CPVI5J2L.js";
20
20
  import "./chunk-ZMIBJS45.js";
21
21
  import "./chunk-77WXWU44.js";
22
22
  import "./chunk-B4ZF2KSI.js";
23
- import "./chunk-E322ZT4P.js";
23
+ import "./chunk-L6F7VZPZ.js";
24
24
  import "./chunk-3PJXIDKI.js";
25
25
  import "./chunk-UWCTAVOD.js";
26
26
  import "./chunk-OFEVLU4C.js";
27
27
  import "./chunk-IQHSD7K5.js";
28
28
  import "./chunk-LYRSMKLS.js";
29
- import "./chunk-26QELEL2.js";
30
- import "./chunk-6WPY6ES3.js";
29
+ import "./chunk-RTTAC5VW.js";
30
+ import "./chunk-ZNUMXPNK.js";
31
31
  import "./chunk-IDYDPBBN.js";
32
32
  import "./chunk-FIQECJTQ.js";
33
33
  import "./chunk-64WXLC72.js";
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-KQIKOTQJ.js";
7
7
  import {
8
8
  RequestTokenizer
9
- } from "./chunk-3NRO6NHX.js";
9
+ } from "./chunk-MN5RAXVB.js";
10
10
  import {
11
11
  Blob,
12
12
  File,
@@ -9,7 +9,7 @@ import {
9
9
  BaseToolInvocation,
10
10
  ToolDisplayNames,
11
11
  ToolNames
12
- } from "./chunk-6WPY6ES3.js";
12
+ } from "./chunk-ZNUMXPNK.js";
13
13
  import {
14
14
  createDebugLogger
15
15
  } from "./chunk-HA2UEYZP.js";
@@ -6,7 +6,7 @@ import {
6
6
  getLanguageSettingsOptions,
7
7
  t,
8
8
  writeStderrLine
9
- } from "./chunk-BW7CMDF3.js";
9
+ } from "./chunk-R53CLQY7.js";
10
10
  import {
11
11
  DEFAULT_STOP_HOOK_BLOCK_CAP,
12
12
  DEFAULT_TOOL_OUTPUT_BATCH_BUDGET,
@@ -17,11 +17,11 @@ import {
17
17
  SkillError,
18
18
  ideContextStore,
19
19
  require_main
20
- } from "./chunk-Q3NN2XUW.js";
20
+ } from "./chunk-UKLVRIWE.js";
21
21
  import {
22
22
  isWithinRoot,
23
23
  stripRuntimeSnapshotPrefix
24
- } from "./chunk-E322ZT4P.js";
24
+ } from "./chunk-L6F7VZPZ.js";
25
25
  import {
26
26
  atomicWriteFileSync
27
27
  } from "./chunk-LXYWINWF.js";
@@ -19966,7 +19966,7 @@ __name(getPackageJson, "getPackageJson");
19966
19966
  // packages/cli/src/utils/version.ts
19967
19967
  async function getCliVersion() {
19968
19968
  const pkgJson = await getPackageJson();
19969
- return "0.18.1-preview.0";
19969
+ return "0.18.1-preview.1";
19970
19970
  }
19971
19971
  __name(getCliVersion, "getCliVersion");
19972
19972
 
@@ -20108,6 +20108,10 @@ function createLoadedSettingsAdapter(settings, scope) {
20108
20108
  }
20109
20109
  __name(createLoadedSettingsAdapter, "createLoadedSettingsAdapter");
20110
20110
 
20111
+ // packages/acp-bridge/src/bridgeTypes.ts
20112
+ init_esbuild_shims();
20113
+ var MID_TURN_QUEUE_DRAIN_METHOD = "craft/drainMidTurnQueue";
20114
+
20111
20115
  // packages/cli/src/utils/systemInfo.ts
20112
20116
  init_esbuild_shims();
20113
20117
  import process4 from "node:process";
@@ -20116,7 +20120,7 @@ import { execFile } from "node:child_process";
20116
20120
 
20117
20121
  // packages/cli/src/generated/git-commit.ts
20118
20122
  init_esbuild_shims();
20119
- var GIT_COMMIT_INFO = "d638823b9";
20123
+ var GIT_COMMIT_INFO = "4d9e554b7";
20120
20124
 
20121
20125
  // packages/cli/src/utils/systemInfo.ts
20122
20126
  var debugLogger4 = createDebugLogger("STATUS");
@@ -20379,6 +20383,7 @@ export {
20379
20383
  ACP_PREFLIGHT_KINDS,
20380
20384
  createIdleAcpPreflightCells,
20381
20385
  mapDomainErrorToErrorKind,
20386
+ MID_TURN_QUEUE_DRAIN_METHOD,
20382
20387
  formatMemoryUsage,
20383
20388
  formatRelativeTime,
20384
20389
  formatTokenCount,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  ToolNames
5
- } from "./chunk-6WPY6ES3.js";
5
+ } from "./chunk-ZNUMXPNK.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -2,21 +2,21 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-BW7CMDF3.js";
5
+ } from "./chunk-R53CLQY7.js";
6
6
  import {
7
7
  computeThresholds,
8
8
  getCoreSystemPrompt
9
- } from "./chunk-Q3NN2XUW.js";
9
+ } from "./chunk-UKLVRIWE.js";
10
10
  import {
11
11
  buildSkillLlmContent
12
12
  } from "./chunk-CPVI5J2L.js";
13
13
  import {
14
14
  DiscoveredMCPTool,
15
15
  uiTelemetryService
16
- } from "./chunk-E322ZT4P.js";
16
+ } from "./chunk-L6F7VZPZ.js";
17
17
  import {
18
18
  ToolNames
19
- } from "./chunk-6WPY6ES3.js";
19
+ } from "./chunk-ZNUMXPNK.js";
20
20
  import {
21
21
  DEFAULT_TOKEN_LIMIT
22
22
  } from "./chunk-LYSND7KR.js";
@@ -26,13 +26,13 @@ import {
26
26
  } from "./chunk-LYRSMKLS.js";
27
27
  import {
28
28
  STRUCTURED_OUTPUT_REDACTED_ARGS
29
- } from "./chunk-26QELEL2.js";
29
+ } from "./chunk-RTTAC5VW.js";
30
30
  import {
31
31
  BaseDeclarativeTool,
32
32
  BaseToolInvocation,
33
33
  ToolDisplayNames,
34
34
  ToolNames
35
- } from "./chunk-6WPY6ES3.js";
35
+ } from "./chunk-ZNUMXPNK.js";
36
36
  import {
37
37
  atomicWriteFile
38
38
  } from "./chunk-LXYWINWF.js";
@@ -72004,11 +72004,11 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
72004
72004
  let baseGenerator;
72005
72005
  try {
72006
72006
  if (authType === "openai" /* USE_OPENAI */) {
72007
- const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-P772OZ6K.js");
72007
+ const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-BPRGR5FJ.js");
72008
72008
  baseGenerator = createOpenAIContentGenerator(generatorConfig, config);
72009
72009
  } else if (authType === "qwen-oauth" /* QWEN_OAUTH */) {
72010
72010
  const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-KK433U33.js");
72011
- const { QwenContentGenerator } = await import("./qwenContentGenerator-Y6YGZRHH.js");
72011
+ const { QwenContentGenerator } = await import("./qwenContentGenerator-ENMXX47B.js");
72012
72012
  try {
72013
72013
  const qwenClient = await getQwenOauthClient(
72014
72014
  config,
@@ -72026,10 +72026,10 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
72026
72026
  throw new Error(error instanceof Error ? error.message : String(error));
72027
72027
  }
72028
72028
  } else if (authType === "anthropic" /* USE_ANTHROPIC */) {
72029
- const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-DCI26OQF.js");
72029
+ const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-KLBHYGH6.js");
72030
72030
  baseGenerator = createAnthropicContentGenerator(generatorConfig, config);
72031
72031
  } else if (authType === "gemini" /* USE_GEMINI */ || authType === "vertex-ai" /* USE_VERTEX_AI */) {
72032
- const { createGeminiContentGenerator } = await import("./geminiContentGenerator-7D2QZ5FE.js");
72032
+ const { createGeminiContentGenerator } = await import("./geminiContentGenerator-E2LZQIFZ.js");
72033
72033
  baseGenerator = createGeminiContentGenerator(generatorConfig, config);
72034
72034
  } else {
72035
72035
  throw new Error(
@@ -307,11 +307,11 @@ var ImageTokenizer = class _ImageTokenizer {
307
307
  if (entryOffset + 12 > buffer.length) break;
308
308
  const tag = isLittleEndian ? buffer.readUInt16LE(entryOffset) : buffer.readUInt16BE(entryOffset);
309
309
  const type = isLittleEndian ? buffer.readUInt16LE(entryOffset + 2) : buffer.readUInt16BE(entryOffset + 2);
310
- const value = isLittleEndian ? buffer.readUInt32LE(entryOffset + 8) : buffer.readUInt32BE(entryOffset + 8);
310
+ const value = type === 3 ? isLittleEndian ? buffer.readUInt16LE(entryOffset + 8) : buffer.readUInt16BE(entryOffset + 8) : isLittleEndian ? buffer.readUInt32LE(entryOffset + 8) : buffer.readUInt32BE(entryOffset + 8);
311
311
  if (tag === 256) {
312
- width = type === 3 ? value : value;
312
+ width = value;
313
313
  } else if (tag === 257) {
314
- height = type === 3 ? value : value;
314
+ height = value;
315
315
  }
316
316
  if (width > 0 && height > 0) break;
317
317
  }
@@ -2,12 +2,12 @@
2
2
  "use strict";
3
3
  import {
4
4
  RequestTokenizer
5
- } from "./chunk-3NRO6NHX.js";
5
+ } from "./chunk-MN5RAXVB.js";
6
6
  import {
7
7
  OpenAIContentConverter,
8
8
  TaggedThinkingParser,
9
9
  openaiRequestCaptureContext
10
- } from "./chunk-E322ZT4P.js";
10
+ } from "./chunk-L6F7VZPZ.js";
11
11
  import {
12
12
  createChildAbortController
13
13
  } from "./chunk-64WXLC72.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  resolveBundleDir
5
- } from "./chunk-Q3NN2XUW.js";
5
+ } from "./chunk-UKLVRIWE.js";
6
6
  import {
7
7
  Storage
8
8
  } from "./chunk-HA2UEYZP.js";
@@ -5,7 +5,7 @@ import {
5
5
  BaseToolInvocation,
6
6
  ToolDisplayNames,
7
7
  ToolNames
8
- } from "./chunk-6WPY6ES3.js";
8
+ } from "./chunk-ZNUMXPNK.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-A4BMJM77.js";