@xiaoso/dsh-tool-plus 0.1.10-beta.2 → 0.1.10-beta.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 (70) hide show
  1. package/lib/{abort-BtBy5Svf.mjs → abort-DZ54CaKU.mjs} +1 -1
  2. package/lib/{alibaba-coding-plan-oxHCHJtG.mjs → alibaba-coding-plan-DODpkcqi.mjs} +2 -2
  3. package/lib/{alibaba-token-plan-B0WzvYnB.mjs → alibaba-token-plan-C6lpKCda.mjs} +2 -2
  4. package/lib/{amazon-bedrock-BvfYGhrD.mjs → amazon-bedrock-Dx0rr9dY.mjs} +6 -6
  5. package/lib/{anthropic-Id561lwb.mjs → anthropic-ClCw0PV_.mjs} +14 -14
  6. package/lib/{anthropic-C6-vdduI.mjs → anthropic-Dv_GGX6g.mjs} +2 -2
  7. package/lib/{anthropic-wire-Cb8AQ1tS.mjs → anthropic-wire-lbGAFzYb.mjs} +5 -5
  8. package/lib/{api-key-validation-BXJKlsJg.mjs → api-key-validation-MnMf_ihX.mjs} +1 -1
  9. package/lib/{azure-openai-responses-CGws_ijz.mjs → azure-openai-responses-WE_bgFWp.mjs} +9 -9
  10. package/lib/{browser-render-i7uYOl4f.mjs → browser-render-BZXt548F.mjs} +2 -2
  11. package/lib/{cline-pass-Bwg3esu9.mjs → cline-pass-BT9CBEOj.mjs} +1 -1
  12. package/lib/{cloudflare-ai-gateway-B_kWnF30.mjs → cloudflare-ai-gateway-CrMa97Ap.mjs} +1 -1
  13. package/lib/{cloudflare-ai-gateway-BK6eadm9.mjs → cloudflare-ai-gateway-DReN6ohJ.mjs} +2 -2
  14. package/lib/{collapse-DU3g7d3B.mjs → collapse-CkMNRNr7.mjs} +1 -1
  15. package/lib/{coreweave-CkR_FlQi.mjs → coreweave-C68UgRQO.mjs} +2 -2
  16. package/lib/{cursor-BXx_5h4a.mjs → cursor-C6jaIJDg.mjs} +2 -2
  17. package/lib/{cursor-BcHwv8qq.mjs → cursor-D-XZYDf_.mjs} +9 -9
  18. package/lib/{cursor-BjWbJJLe.mjs → cursor-_gHHq-Dq.mjs} +2 -2
  19. package/lib/{cursor-proto-DPXXYx8S.mjs → cursor-proto-Cr_WEMuv.mjs} +1 -1
  20. package/lib/{devin-Ce3Wz8_E.mjs → devin-QpfTSl9H.mjs} +5 -5
  21. package/lib/{devin-proto-B6HwDwHK.mjs → devin-proto-DYhp4Ty6.mjs} +1 -1
  22. package/lib/{devin-BZBfzyIz.mjs → devin-u0ljw5P6.mjs} +6 -6
  23. package/lib/{error-DdCn4m1q.mjs → error-O63pC8zg.mjs} +1 -1
  24. package/lib/{event-stream-ldcUvOA0.mjs → event-stream-BKEtb45Y.mjs} +1 -1
  25. package/lib/{fs-promises-shim-Bx0fpxuk.mjs → fs-promises-shim-B2YFWkcd.mjs} +1 -0
  26. package/lib/{github-copilot-BT5dkIJl.mjs → github-copilot-BMEcw8N1.mjs} +2 -2
  27. package/lib/{github-copilot-headers-BGL8JO5c.mjs → github-copilot-headers-DnjGEbko.mjs} +2 -2
  28. package/lib/{gitlab-duo-B0qSYCa3.mjs → gitlab-duo-DnHqJjFY.mjs} +1 -1
  29. package/lib/{google-antigravity-D1llOVad.mjs → google-antigravity-B1mSckrK.mjs} +3 -3
  30. package/lib/{google-auth-DYhqX1rJ.mjs → google-auth-qAN-6DMW.mjs} +3 -3
  31. package/lib/{google-gemini-cli-ByQUuKp9.mjs → google-gemini-cli-B2Aw1S5w.mjs} +7 -7
  32. package/lib/{google-gemini-cli-CjHy6mFG.mjs → google-gemini-cli-DJwThCCn.mjs} +3 -3
  33. package/lib/{google-6cRgRmh0.mjs → google-lTxuq28n.mjs} +3 -3
  34. package/lib/{google-oauth-shared-CSwCT0Yl.mjs → google-oauth-shared-BctLpVUN.mjs} +1 -1
  35. package/lib/{google-shared-DYjJp0mQ.mjs → google-shared-Y01j9xOr.mjs} +5 -5
  36. package/lib/{google-vertex-CbOvlE5j.mjs → google-vertex-DcM-FRC5.mjs} +4 -4
  37. package/lib/{idle-iterator-DTBaEIbM.mjs → idle-iterator-D0ZXEcUq.mjs} +2 -2
  38. package/lib/index.mjs +110 -10
  39. package/lib/{kilo-cVG1aNZM.mjs → kilo-BEgEwMJQ.mjs} +1 -1
  40. package/lib/{kimi-BFfnFDhu.mjs → kimi-T9NldEIJ.mjs} +2 -2
  41. package/lib/{launch-Uq7920ng.mjs → launch-BIWNyrBB.mjs} +1 -1
  42. package/lib/{markit-BmsfOFVh.mjs → markit-Dvp2JPdT.mjs} +4 -4
  43. package/lib/{muse-code-CtcevJab.mjs → muse-code-CNvqqAp6.mjs} +2 -2
  44. package/lib/{ollama-B5hR1P1p.mjs → ollama-6R0oXZks.mjs} +9 -9
  45. package/lib/{openai-codex-CxkPyvyt.mjs → openai-codex-D5-CyTxa.mjs} +2 -2
  46. package/lib/{openai-codex-responses-BbM3Q7nJ.mjs → openai-codex-responses-C8bnBWOe.mjs} +11 -11
  47. package/lib/{openai-completions-CffXVOCL.mjs → openai-completions-DNr3mUsn.mjs} +15 -15
  48. package/lib/{openai-reasoning-fallback-DFdD1ok5.mjs → openai-reasoning-fallback-Ju-5pSR8.mjs} +2 -2
  49. package/lib/{openai-responses-DgqOvSn_.mjs → openai-responses-CjpafAEr.mjs} +10 -10
  50. package/lib/{perplexity-JFp3knZN.mjs → perplexity-A2PEoGaC.mjs} +2 -2
  51. package/lib/{protobuf-BJHNU9-E.mjs → protobuf-BMgDYu_U.mjs} +1 -1
  52. package/lib/{proxy-B51IWEMt.mjs → proxy-DxvCQOCA.mjs} +2 -2
  53. package/lib/{request-debug-NQN0BjHH.mjs → request-debug-BwPOqN_j.mjs} +1 -1
  54. package/lib/{scrapers-DSArdJ6N.mjs → scrapers-C6EY0T00.mjs} +5 -5
  55. package/lib/{src-DUUqyo9y.mjs → src-AELUUb5U.mjs} +1 -1
  56. package/lib/{stream-DHdFrAG4.mjs → stream-AVOoe5Hj.mjs} +46 -46
  57. package/lib/{stream-markup-healing-DlJ9abTw.mjs → stream-markup-healing-CN3RsqG9.mjs} +2 -2
  58. package/lib/{thinking-D6LJxkz_.mjs → thinking-ngMwf_1Y.mjs} +1 -1
  59. package/lib/{turndown-DrX1M4WG.mjs → turndown-D6fof1OX.mjs} +1 -1
  60. package/lib/types/host/win32-console.d.ts +54 -0
  61. package/lib/{types-DT9vgZ3S.mjs → types-BLrLohwK.mjs} +2 -2
  62. package/lib/{utils-DA8R1_Q8.mjs → utils-BZWfyz9e.mjs} +28 -28
  63. package/lib/{utils-D31VFael.mjs → utils-I4I8azHN.mjs} +1 -1
  64. package/lib/{utils-BMmwLB0f.mjs → utils-cZX3f_Ls.mjs} +2 -2
  65. package/lib/{vision-guard-BlAAqGUC.mjs → vision-guard-BCpXWUj3.mjs} +1 -1
  66. package/lib/{xai-oauth-QPyScm4X.mjs → xai-oauth-CbeldUSV.mjs} +2 -2
  67. package/lib/{xiaomi-CLzjxHAi.mjs → xiaomi-Dl3VSs04.mjs} +1 -1
  68. package/lib/{zai-wDp0g7VC.mjs → zai-FyjGSypr.mjs} +1 -1
  69. package/lib/{zip-CNtIFfyV.mjs → zip-DRrycScC.mjs} +1 -1
  70. package/package.json +4 -1
package/lib/index.mjs CHANGED
@@ -1,14 +1,15 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { n as fs_promises_shim_exports, t as exists } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { i as setRuntimeLogger, n as systemChromiumCandidatesForTest, r as runtimeLogger } from "./launch-Uq7920ng.mjs";
5
- import { $ as isEnoent, A as formatCount, C as warn, D as installBunShim, F as $flag, N as $env, O as formatAge, P as $envpos, Q as hasFsCode, U as getAutoQaDbPath, V as VERSION, X as getRemoteDir, Y as getPuppeteerDir, at as findOnPath, b as debug, c as combineSignals, d as $which, et as isEnotdir, it as untilAborted, k as formatBytes$1, l as exec, m as readImageMetadata, nt as peekFile, q as getInstallId, tt as isProbablyBinary, u as render, x as error } from "./src-DUUqyo9y.mjs";
6
- import { C as truncateToWidth$1, S as replaceTabs, _ as formatCodeFrameLine, a as fetchBinary, b as LRUCache, c as getParallelExtractContent, d as convertFileWithMarkit, f as Settings, g as capParseErrors, h as OMP_DEFAULTS, i as convertWithMarkit, l as ensureTool, m as settings, o as extractWithParallel, p as isSettingsInitialized, s as findParallelApiKey, u as CONVERTIBLE_EXTENSIONS, v as formatParseErrors, x as padding, y as shortenPath } from "./utils-DA8R1_Q8.mjs";
3
+ import { n as fs_promises_shim_exports, t as exists } from "./fs-promises-shim-B2YFWkcd.mjs";
4
+ import { i as setRuntimeLogger, n as systemChromiumCandidatesForTest, r as runtimeLogger } from "./launch-BIWNyrBB.mjs";
5
+ import { $ as isEnoent, A as formatCount, C as warn, D as installBunShim, F as $flag, N as $env, O as formatAge, P as $envpos, Q as hasFsCode, U as getAutoQaDbPath, V as VERSION, X as getRemoteDir, Y as getPuppeteerDir, at as findOnPath, b as debug, c as combineSignals, d as $which, et as isEnotdir, it as untilAborted, k as formatBytes$1, l as exec, m as readImageMetadata, nt as peekFile, q as getInstallId, tt as isProbablyBinary, u as render, x as error } from "./src-AELUUb5U.mjs";
6
+ import { C as truncateToWidth$1, S as replaceTabs, _ as formatCodeFrameLine, a as fetchBinary, b as LRUCache, c as getParallelExtractContent, d as convertFileWithMarkit, f as Settings, g as capParseErrors, h as OMP_DEFAULTS, i as convertWithMarkit, l as ensureTool, m as settings, o as extractWithParallel, p as isSettingsInitialized, s as findParallelApiKey, u as CONVERTIBLE_EXTENSIONS, v as formatParseErrors, x as padding, y as shortenPath } from "./utils-BZWfyz9e.mjs";
7
7
  import { t as sanitizeText } from "./sanitize-text-BCf5KmCf.mjs";
8
8
  import { n as isRecord$5 } from "./type-guards-CttAANEx.mjs";
9
9
  import { n as ToolError, r as throwIfAborted, t as ToolAbortError } from "./tool-errors-DoyxivAR.mjs";
10
- import { a as openArchive, c as sniffArchiveFormat, d as writeArchive, i as listArchiveRoot, o as parseArchivePathCandidates, r as formatArchiveEntryLines, s as readArchiveEntries, t as archiveFormatFromPath } from "./zip-CNtIFfyV.mjs";
11
- import { a as finalizeOutput, d as looksLikeHtml, n as MAX_OUTPUT_CHARS, t as MAX_BYTES, u as loadPage } from "./types-DT9vgZ3S.mjs";
10
+ import { a as openArchive, c as sniffArchiveFormat, d as writeArchive, i as listArchiveRoot, o as parseArchivePathCandidates, r as formatArchiveEntryLines, s as readArchiveEntries, t as archiveFormatFromPath } from "./zip-DRrycScC.mjs";
11
+ import { a as finalizeOutput, d as looksLikeHtml, n as MAX_OUTPUT_CHARS, t as MAX_BYTES, u as loadPage } from "./types-BLrLohwK.mjs";
12
+ import { createRequire } from "node:module";
12
13
  import * as fs from "node:fs";
13
14
  import { copyFileSync, existsSync, readFileSync, readdirSync } from "node:fs";
14
15
  import { TOOL_ABORTED, defineTool } from "@deepseek-ai/dsh-tools";
@@ -22,7 +23,7 @@ import { spawn } from "node:child_process";
22
23
  import * as os from "node:os";
23
24
  import { homedir, tmpdir } from "node:os";
24
25
  import * as url from "node:url";
25
- import { fileURLToPath } from "node:url";
26
+ import { fileURLToPath, pathToFileURL } from "node:url";
26
27
  import { scheduler } from "node:timers/promises";
27
28
  import { randomBytes } from "node:crypto";
28
29
  import z from "@deepseek-ai/schemastery";
@@ -5770,6 +5771,104 @@ function installBrowserProbeRpc(ctx, deps) {
5770
5771
  };
5771
5772
  }
5772
5773
  //#endregion
5774
+ //#region src/host/win32-console.ts
5775
+ /**
5776
+ * Windows:让宿主进程自己持有一个「不可见控制台」。
5777
+ *
5778
+ * 为什么需要(2026-09-25 实测):桌面端宿主是 GUI 子系统镜像
5779
+ * (`DeepSeek Harness.exe` + `ELECTRON_RUN_AS_NODE=1`),Windows 永远不会给它
5780
+ * 分配控制台;于是它的每个 console 子进程(pi-shell 的 `where git` 探测、快照
5781
+ * `bash.exe`、任何插件 spawn 的 CLI)都要**新建**一个控制台,而默认终端应用是
5782
+ * Windows Terminal → 每条命令闪一个窗口。
5783
+ *
5784
+ * 控制台是「父进程有 → 子进程默认继承;父进程没有 → 子进程新建」:宿主自己先
5785
+ * `AllocConsole()` 再立刻 `SW_HIDE`,之后所有 console 子进程都继承它,不再新建
5786
+ * 窗口。实测(无控制台宿主里 spawn 一个 `where.exe`):不装 → 新开一个可见 WT
5787
+ * 窗口(窗口里的进程正是那个 where.exe);装了 → 子进程报「继承了我的控制台」、
5788
+ * 零新窗口。代价:分配那一刻会出现一个 WT 窗口、可见约 1.8s —— 默认终端是 WT 时
5789
+ * `ShowWindow(GetConsoleWindow())` 只藏得住 conhost 侧那个窗口对象,藏不住
5790
+ * wt.exe 宿主窗口。这一次性的窗口只能在源头消除(上游给 `where` 探测加
5791
+ * `CREATE_NO_WINDOW`,或让宿主从 console 子系统父进程继承一个 CREATE_NO_WINDOW
5792
+ * 的控制台)。
5793
+ *
5794
+ * 三条硬约束(都有测试钉住):
5795
+ * - 只在 win32 生效;宿主**已经有**控制台(CLI 在终端里跑)时什么都不做,否则会
5796
+ * 凭空多出一个控制台;
5797
+ * - `AllocConsole` 会重指 STD_INPUT/OUTPUT/ERROR,而宿主的 stdio 是启动方给的
5798
+ * pipe → 必须先存后还,否则可能污染宿主输出、弄断 shell 的管道;
5799
+ * - 任何失败(没有 koffi、句柄取不到、`AllocConsole` 失败)都只降级,不抛。
5800
+ * @module @xiaoso/dsh-tool-plus/host/win32-console
5801
+ */
5802
+ /** 三个标准句柄的 Win32 编号,顺序即存取顺序。 */
5803
+ const STD_HANDLES = [
5804
+ -10,
5805
+ -11,
5806
+ -12
5807
+ ];
5808
+ /** `ShowWindow` 的 `SW_HIDE`。 */
5809
+ const SW_HIDE = 0;
5810
+ /**
5811
+ * 安装隐藏控制台(幂等)。宿主已有控制台时返回 `console-present` 且零副作用。
5812
+ * @param platform - 当前平台(注入以便测试非 win32 分支)。
5813
+ * @param load - 取 Win32 调用集合;拿不到(没有 koffi)时返回 undefined。
5814
+ * @returns 本次安装的结果。
5815
+ */
5816
+ function installHiddenHostConsole(platform, load) {
5817
+ if (platform !== "win32") return "not-windows";
5818
+ try {
5819
+ const bindings = load();
5820
+ if (bindings === void 0) return "ffi-unavailable";
5821
+ if (bindings.getConsoleWindow() !== null) return "console-present";
5822
+ const saved = STD_HANDLES.map((index) => bindings.getStdHandle(index));
5823
+ if (!bindings.allocConsole()) return "alloc-failed";
5824
+ const window = bindings.getConsoleWindow();
5825
+ if (window !== null) bindings.showWindow(window, SW_HIDE);
5826
+ STD_HANDLES.forEach((index, at) => bindings.setStdHandle(index, saved[at]));
5827
+ return "allocated";
5828
+ } catch {
5829
+ return "ffi-unavailable";
5830
+ }
5831
+ }
5832
+ /** 把 koffi 的 `func()` 产物收窄成本模块的调用签名。 */
5833
+ function asCall(value) {
5834
+ return value;
5835
+ }
5836
+ /** 从「宿主入口所在目录」解析依赖:打包运行时的 koffi 装在宿主 node_modules 里。 */
5837
+ function hostRequire() {
5838
+ const entry = process.argv[1];
5839
+ if (entry === void 0 || entry.length === 0) return void 0;
5840
+ try {
5841
+ return createRequire(pathToFileURL(path$1.join(path$1.dirname(entry), "tool-plus-host-console.js")));
5842
+ } catch {
5843
+ return;
5844
+ }
5845
+ }
5846
+ /** 真实加载:先本包依赖的 koffi,再宿主运行时自带的 koffi。 */
5847
+ function loadKoffiBindings() {
5848
+ const requires = [createRequire(import.meta.url)];
5849
+ const host = hostRequire();
5850
+ if (host !== void 0) requires.push(host);
5851
+ for (const requireKoffi of requires) try {
5852
+ const koffi = requireKoffi("koffi");
5853
+ const kernel32 = koffi.load("kernel32.dll");
5854
+ const user32 = koffi.load("user32.dll");
5855
+ return {
5856
+ getConsoleWindow: asCall(kernel32.func("void *GetConsoleWindow()")),
5857
+ allocConsole: asCall(kernel32.func("bool AllocConsole()")),
5858
+ showWindow: asCall(user32.func("bool ShowWindow(void *hWnd, int nCmdShow)")),
5859
+ getStdHandle: asCall(kernel32.func("void *GetStdHandle(int nStdHandle)")),
5860
+ setStdHandle: asCall(kernel32.func("bool SetStdHandle(int nStdHandle, void *h)"))
5861
+ };
5862
+ } catch {}
5863
+ }
5864
+ /**
5865
+ * 插件入口调用:win32 且能拿到 FFI 时才安装,结果只用于日志。
5866
+ * @returns 本次安装的结果。
5867
+ */
5868
+ function ensureInheritableHiddenConsole() {
5869
+ return installHiddenHostConsole(process.platform, loadKoffiBindings);
5870
+ }
5871
+ //#endregion
5773
5872
  //#region src/presets/rows.ts
5774
5873
  /** 行 id 的取值(非空字符串才认,与官方对 `name` 的要求同款)。 */
5775
5874
  function rowId(row) {
@@ -11179,7 +11278,7 @@ async function renderHtmlToText(url, html, timeout, settings, userSignal, storag
11179
11278
  },
11180
11279
  browser: async () => {
11181
11280
  if (settings.get("browser.readerEnabled") === false) return null;
11182
- const { renderUrlWithBrowser } = await import("./browser-render-i7uYOl4f.mjs");
11281
+ const { renderUrlWithBrowser } = await import("./browser-render-BZXt548F.mjs");
11183
11282
  return renderUrlWithBrowser(url, {
11184
11283
  timeoutMs: remoteBudgetMs,
11185
11284
  signal: userSignal
@@ -11400,7 +11499,7 @@ let specialHandlersPromise;
11400
11499
  * requires a special handler, so we keep them out of the cold-startup graph.
11401
11500
  */
11402
11501
  function loadSpecialHandlers() {
11403
- specialHandlersPromise ??= import("./scrapers-DSArdJ6N.mjs").then((m) => m.specialHandlers);
11502
+ specialHandlersPromise ??= import("./scrapers-C6EY0T00.mjs").then((m) => m.specialHandlers);
11404
11503
  return specialHandlersPromise;
11405
11504
  }
11406
11505
  /**
@@ -15408,7 +15507,7 @@ async function writethroughNoop(dst, content, _signal, file) {
15408
15507
  }
15409
15508
  /** Async UTF-8 write (node:fs) used when no file handle is supplied. */
15410
15509
  async function writeFileUtf8(dst, content) {
15411
- const { writeFile, mkdir } = await import("./fs-promises-shim-Bx0fpxuk.mjs").then((n) => n.n);
15510
+ const { writeFile, mkdir } = await import("./fs-promises-shim-B2YFWkcd.mjs").then((n) => n.n);
15412
15511
  const { dirname } = await import("node:path");
15413
15512
  try {
15414
15513
  await writeFile(dst, content, "utf8");
@@ -23563,6 +23662,7 @@ function apply(ctx, config = {}) {
23563
23662
  installBunShim();
23564
23663
  let cfg = resolveConfig(config);
23565
23664
  setRuntimeLogger(ctx.logger);
23665
+ runtimeLogger().debug("host console", { outcome: ensureInheritableHiddenConsole() });
23566
23666
  sweepStaleSpillFiles();
23567
23667
  let disposeModeSensitive = [];
23568
23668
  const registerModeSensitive = () => {
@@ -1,6 +1,6 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { f as OAuthError, m as LoginCancelledError } from "./error-DdCn4m1q.mjs";
3
+ import { f as OAuthError, m as LoginCancelledError } from "./error-O63pC8zg.mjs";
4
4
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/registry/oauth/kilo.ts
5
5
  const KILO_DEVICE_AUTH_BASE_URL = "https://api.kilo.ai/api/device-auth";
6
6
  const POLL_INTERVAL_MS = 5e3;
@@ -1,7 +1,7 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { H as getAgentDir } from "./src-DUUqyo9y.mjs";
3
+ import { r as __exportAll } from "./fs-promises-shim-B2YFWkcd.mjs";
4
+ import { H as getAgentDir } from "./src-AELUUb5U.mjs";
5
5
  import * as fs from "node:fs";
6
6
  import * as path$1 from "node:path";
7
7
  import * as os from "node:os";
@@ -1,6 +1,6 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { d as $which, l as exec } from "./src-DUUqyo9y.mjs";
3
+ import { d as $which, l as exec } from "./src-AELUUb5U.mjs";
4
4
  import * as fs from "node:fs";
5
5
  import * as path$1 from "node:path";
6
6
  import * as os from "node:os";
@@ -1,9 +1,9 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { n as fs_promises_shim_exports } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { k as formatBytes } from "./src-DUUqyo9y.mjs";
5
- import { l as unzip, u as unzipText } from "./zip-CNtIFfyV.mjs";
6
- import { n as normalizeTablesHtml, t as createTurndown } from "./turndown-DrX1M4WG.mjs";
3
+ import { n as fs_promises_shim_exports } from "./fs-promises-shim-B2YFWkcd.mjs";
4
+ import { k as formatBytes } from "./src-AELUUb5U.mjs";
5
+ import { l as unzip, u as unzipText } from "./zip-DRrycScC.mjs";
6
+ import { n as normalizeTablesHtml, t as createTurndown } from "./turndown-D6fof1OX.mjs";
7
7
  import { pdfToMarkdown } from "@oh-my-pi/pi-natives";
8
8
  import * as path$1 from "node:path";
9
9
  import * as zlib from "node:zlib";
@@ -1,7 +1,7 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { f as OAuthError, t as ConfigurationError } from "./error-DdCn4m1q.mjs";
3
+ import { r as __exportAll } from "./fs-promises-shim-B2YFWkcd.mjs";
4
+ import { f as OAuthError, t as ConfigurationError } from "./error-O63pC8zg.mjs";
5
5
  import { type } from "@oh-my-pi/omptype";
6
6
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/registry/oauth/muse-code.ts
7
7
  var muse_code_exports = /* @__PURE__ */ __exportAll({
@@ -1,14 +1,14 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { _ as parseStreamingJson, i as readJsonl } from "./src-DUUqyo9y.mjs";
5
- import { G as fetchWithRetry, c as finalize, h as MissingApiKeyError, y as LLAMA_CPP_TOOL_CALL_PARSE_PATTERN, z as OllamaApiError } from "./error-DdCn4m1q.mjs";
6
- import { A as toolWireSchema, R as sanitizeSchemaForOllama, g as clearStreamingPartialJson, h as transformMessages, o as normalizeSystemPrompts, w as kStreamingPartialJson } from "./utils-BMmwLB0f.mjs";
7
- import { At as withReplaySafeStreamRetry, n as getEnvApiKey } from "./stream-DHdFrAG4.mjs";
8
- import { i as partitionVisionContent, r as joinTextWithImagePlaceholder } from "./vision-guard-BlAAqGUC.mjs";
9
- import { t as AssistantMessageEventStream } from "./event-stream-ldcUvOA0.mjs";
10
- import { n as getOpenAIStreamFirstEventTimeoutMs, r as getOpenAIStreamIdleTimeoutMs, t as armPreResponseTimeout } from "./idle-iterator-DTBaEIbM.mjs";
11
- import { n as getStreamMarkupHealingPattern, t as StreamMarkupHealing } from "./stream-markup-healing-DlJ9abTw.mjs";
3
+ import { r as __exportAll } from "./fs-promises-shim-B2YFWkcd.mjs";
4
+ import { _ as parseStreamingJson, i as readJsonl } from "./src-AELUUb5U.mjs";
5
+ import { G as fetchWithRetry, c as finalize, h as MissingApiKeyError, y as LLAMA_CPP_TOOL_CALL_PARSE_PATTERN, z as OllamaApiError } from "./error-O63pC8zg.mjs";
6
+ import { A as toolWireSchema, R as sanitizeSchemaForOllama, g as clearStreamingPartialJson, h as transformMessages, o as normalizeSystemPrompts, w as kStreamingPartialJson } from "./utils-cZX3f_Ls.mjs";
7
+ import { At as withReplaySafeStreamRetry, n as getEnvApiKey } from "./stream-AVOoe5Hj.mjs";
8
+ import { i as partitionVisionContent, r as joinTextWithImagePlaceholder } from "./vision-guard-BCpXWUj3.mjs";
9
+ import { t as AssistantMessageEventStream } from "./event-stream-BKEtb45Y.mjs";
10
+ import { n as getOpenAIStreamFirstEventTimeoutMs, r as getOpenAIStreamIdleTimeoutMs, t as armPreResponseTimeout } from "./idle-iterator-D0ZXEcUq.mjs";
11
+ import { n as getStreamMarkupHealingPattern, t as StreamMarkupHealing } from "./stream-markup-healing-CN3RsqG9.mjs";
12
12
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/providers/ollama.ts
13
13
  var ollama_exports = /* @__PURE__ */ __exportAll({ streamOllama: () => streamOllama });
14
14
  function normalizeBaseUrl(baseUrl) {
@@ -1,7 +1,7 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { f as OAuthError, m as LoginCancelledError } from "./error-DdCn4m1q.mjs";
4
- import "./utils-BMmwLB0f.mjs";
3
+ import { f as OAuthError, m as LoginCancelledError } from "./error-O63pC8zg.mjs";
4
+ import "./utils-cZX3f_Ls.mjs";
5
5
  import { n as isRecord } from "./type-guards-CttAANEx.mjs";
6
6
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/registry/oauth/openai-codex.ts
7
7
  const CLIENT_ID = "app_EMoamEEZ73f0CkXaXp7hrann";
@@ -1,19 +1,19 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { B as USER_AGENT, F as $flag, N as $env, S as time, _ as parseStreamingJson, b as debug, o as readSseJson, q as getInstallId, t as structuredCloneJSON, x as error } from "./src-DUUqyo9y.mjs";
5
- import { G as fetchWithRetry, V as ProviderHttpError, _ as AbortError, b as PYTHON_HTTP2_STREAM_RESET_PATTERN, c as finalize, h as MissingApiKeyError, i as isProviderRetryableError, x as PYTHON_HTTP_INCOMPLETE_CHUNK_PATTERN } from "./error-DdCn4m1q.mjs";
6
- import { A as toolWireSchema, M as adaptSchemaForStrict, f as stripOpenAIResponsesComputerLinkedReasoningIdsForReplay, g as clearStreamingPartialJson, h as transformMessages, i as getOpenAIResponsesHistoryPayload, j as NO_STRICT, l as sanitizeOpenAIResponsesAssistantFallbackItemsForReplay, m as redactSensitiveInObject, o as normalizeSystemPrompts, r as getOpenAIResponsesHistoryItems, t as createOpenAIResponsesHistoryPayload, u as sanitizeOpenAIResponsesAssistantHistoryItemsForReplay, w as kStreamingPartialJson, z as sanitizeSchemaForOpenAIResponses } from "./utils-BMmwLB0f.mjs";
3
+ import { r as __exportAll } from "./fs-promises-shim-B2YFWkcd.mjs";
4
+ import { B as USER_AGENT, F as $flag, N as $env, S as time, _ as parseStreamingJson, b as debug, o as readSseJson, q as getInstallId, t as structuredCloneJSON, x as error } from "./src-AELUUb5U.mjs";
5
+ import { G as fetchWithRetry, V as ProviderHttpError, _ as AbortError, b as PYTHON_HTTP2_STREAM_RESET_PATTERN, c as finalize, h as MissingApiKeyError, i as isProviderRetryableError, x as PYTHON_HTTP_INCOMPLETE_CHUNK_PATTERN } from "./error-O63pC8zg.mjs";
6
+ import { A as toolWireSchema, M as adaptSchemaForStrict, f as stripOpenAIResponsesComputerLinkedReasoningIdsForReplay, g as clearStreamingPartialJson, h as transformMessages, i as getOpenAIResponsesHistoryPayload, j as NO_STRICT, l as sanitizeOpenAIResponsesAssistantFallbackItemsForReplay, m as redactSensitiveInObject, o as normalizeSystemPrompts, r as getOpenAIResponsesHistoryItems, t as createOpenAIResponsesHistoryPayload, u as sanitizeOpenAIResponsesAssistantHistoryItemsForReplay, w as kStreamingPartialJson, z as sanitizeSchemaForOpenAIResponses } from "./utils-cZX3f_Ls.mjs";
7
7
  import { t as asRecord } from "./type-guards-CttAANEx.mjs";
8
- import { B as convertResponsesInputContent, D as applyOpenAIServiceTier, Dt as escapeHarmonyControlTokens, G as encodeResponsesToolCallId, J as finalizeCustomToolCallInputDone, K as encodeTextSignatureV1, Ot as isHarmonyDialectModel, P as buildResponsesDeltaInput, Q as finalizeToolCallArgumentsDone, R as computerCallMetadata, U as createSequentialCutoffSummaryState, X as finalizePendingResponsesToolCalls, Y as finalizeMessageText, Z as finalizeReasoningThinking, _ as appendReasoningSummaryPart, a as CODEX_BASE_URL, b as appendResponsesImageResult, c as OPENAI_HEADER_VALUES, ct as mapOpenAIReasoningEffort, d as getCodexAccountId, et as getOpenAIPromptCacheKey, ft as populateResponsesUsageFromResponse, g as appendMessageTextDelta, h as appendMessageContentPart, it as hasExecutableIncompleteResponsesToolCalls, k as applyReasoningSummaryDone, kt as hasVisibleAssistantContent, l as applyCodexResidencyHeader, lt as mapOpenAIResponsesStopReason, m as accumulateToolCallArgumentsDelta, mt as promoteResponsesToolUseStopReason, n as getEnvApiKey, o as CODEX_CLIENT_VERSION, ot as isOpenAIResponsesProgressEvent, p as accumulateCustomToolCallInputDelta, q as escapeReplayedControlTokens, r as isOfficialCodexApiUrl, s as OPENAI_HEADERS, u as codexRoutingHint, ut as normalizeOpenAIPromptCacheKey, v as appendReasoningSummaryPartDone, x as appendResponsesToolResultMessages, y as appendReasoningSummaryTextDelta, z as convertResponsesAssistantMessage } from "./stream-DHdFrAG4.mjs";
9
- import { a as toNumber } from "./utils-D31VFael.mjs";
10
- import { o as requireSupportedEffort } from "./anthropic-wire-Cb8AQ1tS.mjs";
11
- import { n as getProxyForUrl } from "./proxy-B51IWEMt.mjs";
8
+ import { B as convertResponsesInputContent, D as applyOpenAIServiceTier, Dt as escapeHarmonyControlTokens, G as encodeResponsesToolCallId, J as finalizeCustomToolCallInputDone, K as encodeTextSignatureV1, Ot as isHarmonyDialectModel, P as buildResponsesDeltaInput, Q as finalizeToolCallArgumentsDone, R as computerCallMetadata, U as createSequentialCutoffSummaryState, X as finalizePendingResponsesToolCalls, Y as finalizeMessageText, Z as finalizeReasoningThinking, _ as appendReasoningSummaryPart, a as CODEX_BASE_URL, b as appendResponsesImageResult, c as OPENAI_HEADER_VALUES, ct as mapOpenAIReasoningEffort, d as getCodexAccountId, et as getOpenAIPromptCacheKey, ft as populateResponsesUsageFromResponse, g as appendMessageTextDelta, h as appendMessageContentPart, it as hasExecutableIncompleteResponsesToolCalls, k as applyReasoningSummaryDone, kt as hasVisibleAssistantContent, l as applyCodexResidencyHeader, lt as mapOpenAIResponsesStopReason, m as accumulateToolCallArgumentsDelta, mt as promoteResponsesToolUseStopReason, n as getEnvApiKey, o as CODEX_CLIENT_VERSION, ot as isOpenAIResponsesProgressEvent, p as accumulateCustomToolCallInputDelta, q as escapeReplayedControlTokens, r as isOfficialCodexApiUrl, s as OPENAI_HEADERS, u as codexRoutingHint, ut as normalizeOpenAIPromptCacheKey, v as appendReasoningSummaryPartDone, x as appendResponsesToolResultMessages, y as appendReasoningSummaryTextDelta, z as convertResponsesAssistantMessage } from "./stream-AVOoe5Hj.mjs";
9
+ import { a as toNumber } from "./utils-I4I8azHN.mjs";
10
+ import { o as requireSupportedEffort } from "./anthropic-wire-lbGAFzYb.mjs";
11
+ import { n as getProxyForUrl } from "./proxy-DxvCQOCA.mjs";
12
12
  import "./effort-BdtQMN-_.mjs";
13
13
  import { t as calculateCost } from "./models-DnXMYGcJ.mjs";
14
- import { t as AssistantMessageEventStream } from "./event-stream-ldcUvOA0.mjs";
15
- import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs, t as armPreResponseTimeout } from "./idle-iterator-DTBaEIbM.mjs";
16
- import { n as isRequestDebugEnabled, t as createRequestDebugSession } from "./request-debug-NQN0BjHH.mjs";
14
+ import { t as AssistantMessageEventStream } from "./event-stream-BKEtb45Y.mjs";
15
+ import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs, t as armPreResponseTimeout } from "./idle-iterator-D0ZXEcUq.mjs";
16
+ import { n as isRequestDebugEnabled, t as createRequestDebugSession } from "./request-debug-BwPOqN_j.mjs";
17
17
  import { t as notifyRawSseEvent } from "./sse-debug-B-tkLCPW.mjs";
18
18
  import { n as planStableOpenAIEffort, r as compactGrammarDefinition, t as getOpenAIEffortControlState } from "./openai-configuration-update-xMYUjaK_.mjs";
19
19
  import { scheduler } from "node:timers/promises";
@@ -1,23 +1,23 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { C as warn, N as $env, _ as parseStreamingJson, v as parseStreamingJsonThrottled } from "./src-DUUqyo9y.mjs";
5
- import { B as OpenAIHttpError, V as ProviderHttpError, _ as AbortError, c as finalize, n as StreamTimeoutError, s as ProviderResponseError, t as ConfigurationError } from "./error-DdCn4m1q.mjs";
6
- import { A as toolWireSchema, C as kStreamingLastParseLen, F as normalizeSchemaForMoonshot, L as sanitizeSchemaForGrammar, M as adaptSchemaForStrict, T as renderDemotedThinking, _ as isDemotedThinking, c as resolveCacheRetention, h as transformMessages, j as NO_STRICT, k as flattenExclusiveRequiredRootUnion, o as normalizeSystemPrompts } from "./utils-BMmwLB0f.mjs";
7
- import { At as withReplaySafeStreamRetry, C as applyChatCompletionsToolStream, D as applyOpenAIServiceTier, E as applyOpenAIGatewayRouting, H as createOpenAIStrictToolsState, I as calculateOpenAIUsageAccounting, L as clearOpenAIStrictToolsState, N as applyWireModelIdTransform, O as applyProviderReportedCost, S as applyChatCompletionsReasoningParams, St as shouldRetryWithoutStrictTools, T as applyOpenAIExtraBody, Tt as mapToOpenAICompletionsToolChoice, V as createInitialResponsesAssistantMessage, W as disableStrictToolsForScope, _t as resolveOpenAIOutputTokenParam, at as isCompiledGrammarTooLargeStrictError, dt as parseAzureDeploymentNameMap, et as getOpenAIPromptCacheKey, gt as resolveOpenAICompletionsOutputClamp, ht as resolveOpenAICompatPolicy, kt as hasVisibleAssistantContent, n as getEnvApiKey, nt as getOpenAIStrictToolsScope, st as isStrictToolsDisabledForScope, vt as resolveOpenAIRequestSetup, wt as isForcedToolChoice, xt as shouldDropAutoToolChoiceForReasoning } from "./stream-DHdFrAG4.mjs";
8
- import { s as resolveWireModelId } from "./anthropic-wire-Cb8AQ1tS.mjs";
9
- import { t as createAbortSourceTracker } from "./abort-BtBy5Svf.mjs";
3
+ import { r as __exportAll } from "./fs-promises-shim-B2YFWkcd.mjs";
4
+ import { C as warn, N as $env, _ as parseStreamingJson, v as parseStreamingJsonThrottled } from "./src-AELUUb5U.mjs";
5
+ import { B as OpenAIHttpError, V as ProviderHttpError, _ as AbortError, c as finalize, n as StreamTimeoutError, s as ProviderResponseError, t as ConfigurationError } from "./error-O63pC8zg.mjs";
6
+ import { A as toolWireSchema, C as kStreamingLastParseLen, F as normalizeSchemaForMoonshot, L as sanitizeSchemaForGrammar, M as adaptSchemaForStrict, T as renderDemotedThinking, _ as isDemotedThinking, c as resolveCacheRetention, h as transformMessages, j as NO_STRICT, k as flattenExclusiveRequiredRootUnion, o as normalizeSystemPrompts } from "./utils-cZX3f_Ls.mjs";
7
+ import { At as withReplaySafeStreamRetry, C as applyChatCompletionsToolStream, D as applyOpenAIServiceTier, E as applyOpenAIGatewayRouting, H as createOpenAIStrictToolsState, I as calculateOpenAIUsageAccounting, L as clearOpenAIStrictToolsState, N as applyWireModelIdTransform, O as applyProviderReportedCost, S as applyChatCompletionsReasoningParams, St as shouldRetryWithoutStrictTools, T as applyOpenAIExtraBody, Tt as mapToOpenAICompletionsToolChoice, V as createInitialResponsesAssistantMessage, W as disableStrictToolsForScope, _t as resolveOpenAIOutputTokenParam, at as isCompiledGrammarTooLargeStrictError, dt as parseAzureDeploymentNameMap, et as getOpenAIPromptCacheKey, gt as resolveOpenAICompletionsOutputClamp, ht as resolveOpenAICompatPolicy, kt as hasVisibleAssistantContent, n as getEnvApiKey, nt as getOpenAIStrictToolsScope, st as isStrictToolsDisabledForScope, vt as resolveOpenAIRequestSetup, wt as isForcedToolChoice, xt as shouldDropAutoToolChoiceForReasoning } from "./stream-AVOoe5Hj.mjs";
8
+ import { s as resolveWireModelId } from "./anthropic-wire-lbGAFzYb.mjs";
9
+ import { t as createAbortSourceTracker } from "./abort-DZ54CaKU.mjs";
10
10
  import { t as calculateCost } from "./models-DnXMYGcJ.mjs";
11
- import { i as resolveCopilotRequestIdentity, o as wrapFetchForCopilotFallback } from "./github-copilot-headers-BGL8JO5c.mjs";
12
- import { n as isOpenAICompletionsVisionSupported, r as joinTextWithImagePlaceholder, t as NON_VISION_IMAGE_PLACEHOLDER } from "./vision-guard-BlAAqGUC.mjs";
11
+ import { i as resolveCopilotRequestIdentity, o as wrapFetchForCopilotFallback } from "./github-copilot-headers-DnjGEbko.mjs";
12
+ import { n as isOpenAICompletionsVisionSupported, r as joinTextWithImagePlaceholder, t as NON_VISION_IMAGE_PLACEHOLDER } from "./vision-guard-BCpXWUj3.mjs";
13
13
  import { t as findStrictToolSchemaViolation } from "./strict-tool-validation-CBTz1dAA.mjs";
14
- import { t as AssistantMessageEventStream } from "./event-stream-ldcUvOA0.mjs";
15
- import { n as clinePassClientHeaders } from "./cline-pass-Bwg3esu9.mjs";
16
- import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs, s as iterateWithTerminalGrace } from "./idle-iterator-DTBaEIbM.mjs";
17
- import { t as getKimiCommonHeaders } from "./kimi-BFfnFDhu.mjs";
14
+ import { t as AssistantMessageEventStream } from "./event-stream-BKEtb45Y.mjs";
15
+ import { n as clinePassClientHeaders } from "./cline-pass-BT9CBEOj.mjs";
16
+ import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs, s as iterateWithTerminalGrace } from "./idle-iterator-D0ZXEcUq.mjs";
17
+ import { t as getKimiCommonHeaders } from "./kimi-T9NldEIJ.mjs";
18
18
  import { t as notifyProviderResponse } from "./provider-response-SqKSkkUc.mjs";
19
- import { a as getOpenAIReasoningEffortFallback, c as postOpenAIStream, i as createOpenAIReasoningEffortFallbackState, n as clearOpenAIReasoningEffortFallbackState, o as rememberOpenAIReasoningEffortFallback, r as createOpenAIReasoningEffortFallbackKey, s as resolveOpenAIReasoningEffortFallback, t as applyOpenAIReasoningEffortFallback } from "./openai-reasoning-fallback-DFdD1ok5.mjs";
20
- import { t as StreamMarkupHealing } from "./stream-markup-healing-DlJ9abTw.mjs";
19
+ import { a as getOpenAIReasoningEffortFallback, c as postOpenAIStream, i as createOpenAIReasoningEffortFallbackState, n as clearOpenAIReasoningEffortFallbackState, o as rememberOpenAIReasoningEffortFallback, r as createOpenAIReasoningEffortFallbackKey, s as resolveOpenAIReasoningEffortFallback, t as applyOpenAIReasoningEffortFallback } from "./openai-reasoning-fallback-Ju-5pSR8.mjs";
20
+ import { t as StreamMarkupHealing } from "./stream-markup-healing-CN3RsqG9.mjs";
21
21
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/providers/openai-completions.ts
22
22
  var openai_completions_exports = /* @__PURE__ */ __exportAll({
23
23
  convertMessages: () => convertMessages,
@@ -1,7 +1,7 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { o as readSseJson } from "./src-DUUqyo9y.mjs";
4
- import { B as OpenAIHttpError, G as fetchWithRetry, W as extractHttpStatusFromError, s as ProviderResponseError } from "./error-DdCn4m1q.mjs";
3
+ import { o as readSseJson } from "./src-AELUUb5U.mjs";
4
+ import { B as OpenAIHttpError, G as fetchWithRetry, W as extractHttpStatusFromError, s as ProviderResponseError } from "./error-O63pC8zg.mjs";
5
5
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/utils/openai-http.ts
6
6
  /**
7
7
  * JSON-POST → SSE transport for OpenAI-wire streaming endpoints (chat
@@ -1,18 +1,18 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { C as warn, F as $flag, b as debug, t as structuredCloneJSON } from "./src-DUUqyo9y.mjs";
5
- import { A as isTransientStreamParseError, B as OpenAIHttpError, _ as AbortError, c as finalize, i as isProviderRetryableError, n as StreamTimeoutError, s as ProviderResponseError, t as ConfigurationError } from "./error-DdCn4m1q.mjs";
6
- import { A as toolWireSchema, F as normalizeSchemaForMoonshot, M as adaptSchemaForStrict, c as resolveCacheRetention, j as NO_STRICT, k as flattenExclusiveRequiredRootUnion, o as normalizeSystemPrompts, t as createOpenAIResponsesHistoryPayload, u as sanitizeOpenAIResponsesAssistantHistoryItemsForReplay, z as sanitizeSchemaForOpenAIResponses } from "./utils-BMmwLB0f.mjs";
7
- import { $ as getJuiceValue, A as applyResponsesCompatPolicy, At as withReplaySafeStreamRetry, E as applyOpenAIGatewayRouting, Et as mapToOpenAIResponsesToolChoice, F as buildResponsesInput, H as createOpenAIStrictToolsState, L as clearOpenAIStrictToolsState, M as applyVercelResponsesCacheControls, N as applyWireModelIdTransform, P as buildResponsesDeltaInput, St as shouldRetryWithoutStrictTools, T as applyOpenAIExtraBody, V as createInitialResponsesAssistantMessage, W as disableStrictToolsForScope, _t as resolveOpenAIOutputTokenParam, at as isCompiledGrammarTooLargeStrictError, bt as resolveReasoningSummaryOption, et as getOpenAIPromptCacheKey, ht as resolveOpenAICompatPolicy, n as getEnvApiKey, nt as getOpenAIStrictToolsScope, ot as isOpenAIResponsesProgressEvent, pt as processResponsesStream, rt as getOpenRouterResponsesSessionId, st as isStrictToolsDisabledForScope, tt as getOpenAIResponsesRoutingSessionId, vt as resolveOpenAIRequestSetup, w as applyCommonResponsesSamplingParams, wt as isForcedToolChoice, xt as shouldDropAutoToolChoiceForReasoning, yt as resolveOpenAIResponsesOutputClamp } from "./stream-DHdFrAG4.mjs";
8
- import { t as createAbortSourceTracker } from "./abort-BtBy5Svf.mjs";
9
- import { i as resolveCopilotRequestIdentity, o as wrapFetchForCopilotFallback } from "./github-copilot-headers-BGL8JO5c.mjs";
3
+ import { r as __exportAll } from "./fs-promises-shim-B2YFWkcd.mjs";
4
+ import { C as warn, F as $flag, b as debug, t as structuredCloneJSON } from "./src-AELUUb5U.mjs";
5
+ import { A as isTransientStreamParseError, B as OpenAIHttpError, _ as AbortError, c as finalize, i as isProviderRetryableError, n as StreamTimeoutError, s as ProviderResponseError, t as ConfigurationError } from "./error-O63pC8zg.mjs";
6
+ import { A as toolWireSchema, F as normalizeSchemaForMoonshot, M as adaptSchemaForStrict, c as resolveCacheRetention, j as NO_STRICT, k as flattenExclusiveRequiredRootUnion, o as normalizeSystemPrompts, t as createOpenAIResponsesHistoryPayload, u as sanitizeOpenAIResponsesAssistantHistoryItemsForReplay, z as sanitizeSchemaForOpenAIResponses } from "./utils-cZX3f_Ls.mjs";
7
+ import { $ as getJuiceValue, A as applyResponsesCompatPolicy, At as withReplaySafeStreamRetry, E as applyOpenAIGatewayRouting, Et as mapToOpenAIResponsesToolChoice, F as buildResponsesInput, H as createOpenAIStrictToolsState, L as clearOpenAIStrictToolsState, M as applyVercelResponsesCacheControls, N as applyWireModelIdTransform, P as buildResponsesDeltaInput, St as shouldRetryWithoutStrictTools, T as applyOpenAIExtraBody, V as createInitialResponsesAssistantMessage, W as disableStrictToolsForScope, _t as resolveOpenAIOutputTokenParam, at as isCompiledGrammarTooLargeStrictError, bt as resolveReasoningSummaryOption, et as getOpenAIPromptCacheKey, ht as resolveOpenAICompatPolicy, n as getEnvApiKey, nt as getOpenAIStrictToolsScope, ot as isOpenAIResponsesProgressEvent, pt as processResponsesStream, rt as getOpenRouterResponsesSessionId, st as isStrictToolsDisabledForScope, tt as getOpenAIResponsesRoutingSessionId, vt as resolveOpenAIRequestSetup, w as applyCommonResponsesSamplingParams, wt as isForcedToolChoice, xt as shouldDropAutoToolChoiceForReasoning, yt as resolveOpenAIResponsesOutputClamp } from "./stream-AVOoe5Hj.mjs";
8
+ import { t as createAbortSourceTracker } from "./abort-DZ54CaKU.mjs";
9
+ import { i as resolveCopilotRequestIdentity, o as wrapFetchForCopilotFallback } from "./github-copilot-headers-DnjGEbko.mjs";
10
10
  import { t as findStrictToolSchemaViolation } from "./strict-tool-validation-CBTz1dAA.mjs";
11
- import { t as AssistantMessageEventStream } from "./event-stream-ldcUvOA0.mjs";
12
- import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs } from "./idle-iterator-DTBaEIbM.mjs";
11
+ import { t as AssistantMessageEventStream } from "./event-stream-BKEtb45Y.mjs";
12
+ import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs } from "./idle-iterator-D0ZXEcUq.mjs";
13
13
  import { t as notifyProviderResponse } from "./provider-response-SqKSkkUc.mjs";
14
14
  import { n as planStableOpenAIEffort, r as compactGrammarDefinition, t as getOpenAIEffortControlState } from "./openai-configuration-update-xMYUjaK_.mjs";
15
- import { a as getOpenAIReasoningEffortFallback, c as postOpenAIStream, i as createOpenAIReasoningEffortFallbackState, n as clearOpenAIReasoningEffortFallbackState, o as rememberOpenAIReasoningEffortFallback, r as createOpenAIReasoningEffortFallbackKey, s as resolveOpenAIReasoningEffortFallback, t as applyOpenAIReasoningEffortFallback } from "./openai-reasoning-fallback-DFdD1ok5.mjs";
15
+ import { a as getOpenAIReasoningEffortFallback, c as postOpenAIStream, i as createOpenAIReasoningEffortFallbackState, n as clearOpenAIReasoningEffortFallbackState, o as rememberOpenAIReasoningEffortFallback, r as createOpenAIReasoningEffortFallbackKey, s as resolveOpenAIReasoningEffortFallback, t as applyOpenAIReasoningEffortFallback } from "./openai-reasoning-fallback-Ju-5pSR8.mjs";
16
16
  import { scheduler } from "node:timers/promises";
17
17
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/providers/openai-responses.ts
18
18
  var openai_responses_exports = /* @__PURE__ */ __exportAll({
@@ -1,7 +1,7 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { E as CookieMap, N as $env, T as Cookie, w as $ } from "./src-DUUqyo9y.mjs";
4
- import { V as ProviderHttpError, f as OAuthError, g as OnPromptRequiredError, m as LoginCancelledError } from "./error-DdCn4m1q.mjs";
3
+ import { E as CookieMap, N as $env, T as Cookie, w as $ } from "./src-AELUUb5U.mjs";
4
+ import { V as ProviderHttpError, f as OAuthError, g as OnPromptRequiredError, m as LoginCancelledError } from "./error-O63pC8zg.mjs";
5
5
  import * as os from "node:os";
6
6
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/registry/oauth/perplexity.ts
7
7
  /**
@@ -1,6 +1,6 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import "./src-DUUqyo9y.mjs";
3
+ import "./src-AELUUb5U.mjs";
4
4
  import { n as isRecord } from "./type-guards-CttAANEx.mjs";
5
5
  //#region node_modules/.pnpm/@oh-my-pi+pi-catalog@18.1.17/node_modules/@oh-my-pi/pi-catalog/src/discovery/protobuf.ts
6
6
  const textEncoder = new TextEncoder();
@@ -1,7 +1,7 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { b as debug } from "./src-DUUqyo9y.mjs";
4
- import { _ as AbortError, n as StreamTimeoutError, r as ValidationError } from "./error-DdCn4m1q.mjs";
3
+ import { b as debug } from "./src-AELUUb5U.mjs";
4
+ import { _ as AbortError, n as StreamTimeoutError, r as ValidationError } from "./error-O63pC8zg.mjs";
5
5
  import * as tls from "node:tls";
6
6
  import * as net from "node:net";
7
7
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/utils/proxy.ts
@@ -1,6 +1,6 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { n as fs_promises_shim_exports } from "./fs-promises-shim-Bx0fpxuk.mjs";
3
+ import { n as fs_promises_shim_exports } from "./fs-promises-shim-B2YFWkcd.mjs";
4
4
  import "node:buffer";
5
5
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@18.1.17/node_modules/@oh-my-pi/pi-ai/src/utils/request-debug.ts
6
6
  const REQUEST_DEBUG_ENV = "PI_REQ_DEBUG";
@@ -1,12 +1,12 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { n as fs_promises_shim_exports } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { $ as isEnoent, B as USER_AGENT, C as warn, G as getDocsRsCacheDir, N as $env, c as combineSignals, j as formatNumber, k as formatBytes, l as exec, s as Snowflake, y as parseFrontmatter } from "./src-DUUqyo9y.mjs";
5
- import { W as tryParseJson } from "./utils-BMmwLB0f.mjs";
6
- import { a as fetchBinary, c as getParallelExtractContent, i as convertWithMarkit, l as ensureTool, m as settings, n as asRecord, o as extractWithParallel, r as asString, s as findParallelApiKey, t as asNumber } from "./utils-DA8R1_Q8.mjs";
3
+ import { n as fs_promises_shim_exports } from "./fs-promises-shim-B2YFWkcd.mjs";
4
+ import { $ as isEnoent, B as USER_AGENT, C as warn, G as getDocsRsCacheDir, N as $env, c as combineSignals, j as formatNumber, k as formatBytes, l as exec, s as Snowflake, y as parseFrontmatter } from "./src-AELUUb5U.mjs";
5
+ import { W as tryParseJson } from "./utils-cZX3f_Ls.mjs";
6
+ import { a as fetchBinary, c as getParallelExtractContent, i as convertWithMarkit, l as ensureTool, m as settings, n as asRecord, o as extractWithParallel, r as asString, s as findParallelApiKey, t as asNumber } from "./utils-BZWfyz9e.mjs";
7
7
  import { n as isRecord } from "./type-guards-CttAANEx.mjs";
8
8
  import { r as throwIfAborted, t as ToolAbortError } from "./tool-errors-DoyxivAR.mjs";
9
- import { c as getLocalizedText, d as looksLikeHtml, i as decodeHtmlEntities, l as htmlToBasicMarkdown, o as formatIsoDate, r as buildResult, s as formatMediaDuration, u as loadPage } from "./types-DT9vgZ3S.mjs";
9
+ import { c as getLocalizedText, d as looksLikeHtml, i as decodeHtmlEntities, l as htmlToBasicMarkdown, o as formatIsoDate, r as buildResult, s as formatMediaDuration, u as loadPage } from "./types-BLrLohwK.mjs";
10
10
  import * as path$1 from "node:path";
11
11
  import * as os from "node:os";
12
12
  import { gunzipSync } from "node:zlib";
@@ -1,6 +1,6 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { n as fs_promises_shim_exports } from "./fs-promises-shim-Bx0fpxuk.mjs";
3
+ import { n as fs_promises_shim_exports } from "./fs-promises-shim-B2YFWkcd.mjs";
4
4
  import * as fs from "node:fs";
5
5
  import { Process } from "@oh-my-pi/pi-natives";
6
6
  import * as path$1 from "node:path";