@xiaoso/dsh-tool-plus 0.1.0-beta.5 → 0.1.0-beta.6

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 (71) hide show
  1. package/README.en.md +1 -1
  2. package/README.md +2 -2
  3. package/THIRD_PARTY_NOTICES.md +42 -42
  4. package/lib/{abort-dIkZBV7Q.mjs → abort-CsjZitYv.mjs} +1 -1
  5. package/lib/{amazon-bedrock-WQhvjHYu.mjs → amazon-bedrock-CfNIDi5k.mjs} +7 -7
  6. package/lib/{anthropic-CJCauvYz.mjs → anthropic-BVfZdnMp.mjs} +12 -12
  7. package/lib/{anthropic-tTntD8BD.mjs → anthropic-DGXmmg43.mjs} +2 -2
  8. package/lib/{api-key-login-BzqNdM2y.mjs → api-key-login-BikQAfD-.mjs} +1 -1
  9. package/lib/{aws-credentials-CXryMobh.mjs → aws-credentials-DrssNMn_.mjs} +4 -4
  10. package/lib/{azure-openai-responses-DuukbD0F.mjs → azure-openai-responses-C-5q-5K2.mjs} +8 -8
  11. package/lib/browser-render-z6b8Ljo9.mjs +183 -0
  12. package/lib/{bundled-references-Cavaffah.mjs → bundled-references-D71z7_T3.mjs} +2 -2
  13. package/lib/{callback-server-CQ5Jo8F-.mjs → callback-server-Di6C4RqI.mjs} +1 -1
  14. package/lib/client.js +327 -4
  15. package/lib/{cursor-B6TUEmgP.mjs → cursor-CQQtygwl.mjs} +1 -1
  16. package/lib/{cursor-DkSX2h3H.mjs → cursor-DXJxwdcg.mjs} +7 -7
  17. package/lib/{cursor-aJrXeYCb.mjs → cursor-Hr5Zw1gt.mjs} +3 -3
  18. package/lib/{device-code-DBo3B5nh.mjs → device-code-wZUbgPdB.mjs} +1 -1
  19. package/lib/{devin-BHZZyMhO.mjs → devin-CF6UhCFw.mjs} +2 -2
  20. package/lib/{devin-BK7DHeca.mjs → devin-DXJoDlW2.mjs} +1 -1
  21. package/lib/{devin-vNZTNUON.mjs → devin-P37gURs_.mjs} +5 -5
  22. package/lib/{dom-DGdYAVTv.mjs → dom-CawWi8fa.mjs} +14 -1
  23. package/lib/{error-Dd8DIqs-.mjs → error-DoHuatWw.mjs} +1 -1
  24. package/lib/{event-stream-BbFZJy-z.mjs → event-stream-C-FmBYUt.mjs} +1 -1
  25. package/lib/{github-copilot-CYkjeTi3.mjs → github-copilot-C2dTonBX.mjs} +3 -3
  26. package/lib/{github-copilot-B1yiyVRh.mjs → github-copilot-qETlj_bD.mjs} +1 -1
  27. package/lib/{gitlab-duo-CM7Ref1H.mjs → gitlab-duo-FQZiFRQe.mjs} +3 -3
  28. package/lib/{gitlab-duo-workflow-BGAF6JDw.mjs → gitlab-duo-workflow-DLTabzOy.mjs} +2 -2
  29. package/lib/{google-BS4T25Pn.mjs → google-BilwFSzx.mjs} +3 -3
  30. package/lib/{google-antigravity-DGmwC2KV.mjs → google-antigravity-BfBiINdu.mjs} +2 -2
  31. package/lib/{google-auth-B6gjsZvg.mjs → google-auth-CWlKXJ-H.mjs} +3 -3
  32. package/lib/{google-gemini-cli-Dsztq0N5.mjs → google-gemini-cli-CB89ljNz.mjs} +3 -3
  33. package/lib/{google-gemini-cli-Cqds_Q5T.mjs → google-gemini-cli-CygFcR6N.mjs} +8 -8
  34. package/lib/{google-oauth-shared-CuEHaDDj.mjs → google-oauth-shared-Cn82h1o2.mjs} +2 -2
  35. package/lib/{google-shared-Dr-VG-ap.mjs → google-shared-CF1JrqTM.mjs} +6 -6
  36. package/lib/{google-vertex-BDN2tLaD.mjs → google-vertex-DgMhhFw8.mjs} +5 -5
  37. package/lib/{identity-Da1GPU9a.mjs → identity-C0SPVyIZ.mjs} +1 -1
  38. package/lib/{idle-iterator-DUjKQEGT.mjs → idle-iterator-HzbbfXP4.mjs} +2 -2
  39. package/lib/index.mjs +310 -29
  40. package/lib/{kimi-Dh0pv3WZ.mjs → kimi-DHDO6Fde.mjs} +3 -3
  41. package/lib/launch-DwpE70Pv.mjs +148 -0
  42. package/lib/{markit-BL3cH47U.mjs → markit-B9exZ0ZV.mjs} +1 -1
  43. package/lib/{minimax-code-Uq8Qu9LW.mjs → minimax-code-vAhEXhev.mjs} +1 -1
  44. package/lib/{models-SGASygJ3.mjs → models-Cp3PzU3l.mjs} +1 -1
  45. package/lib/{ollama-DPzBmq89.mjs → ollama-TrkXTNqE.mjs} +8 -8
  46. package/lib/{openai-codex-Ch8CkT3p.mjs → openai-codex-CrjHtSH4.mjs} +3 -3
  47. package/lib/{openai-codex-responses-pejZgdZo.mjs → openai-codex-responses-C4uMpWNy.mjs} +10 -10
  48. package/lib/{openai-completions-DIf361kF.mjs → openai-completions-1ydXm5vF.mjs} +13 -13
  49. package/lib/{openai-reasoning-fallback-Nj6yB2rY.mjs → openai-reasoning-fallback-CigKCyzc.mjs} +2 -2
  50. package/lib/{openai-responses-Db_a-U4-.mjs → openai-responses-CN79gRGQ.mjs} +10 -10
  51. package/lib/{opencode-Rq_Q2vAO.mjs → opencode-CEGlimzL.mjs} +1 -1
  52. package/lib/{perplexity-C4iLVMUj.mjs → perplexity-BLJN-8dM.mjs} +2 -2
  53. package/lib/{proxy-pM_NIv-H.mjs → proxy-XOYi58TM.mjs} +1 -1
  54. package/lib/readability-Cpm-ocau.mjs +455 -0
  55. package/lib/{scrapers-1FTlHNQV.mjs → scrapers-BlWQMGjU.mjs} +11 -10
  56. package/lib/{src-BgpusnsB.mjs → src-D_e1qMwi.mjs} +5 -1
  57. package/lib/{stream-CRtexYLe.mjs → stream-DveNFWSN.mjs} +56 -56
  58. package/lib/{stream-markup-healing-KMkiAA00.mjs → stream-markup-healing-C9eC7Gf8.mjs} +3 -3
  59. package/lib/tool-errors-DoyxivAR.mjs +47 -0
  60. package/lib/types-BUO0JXO-.mjs +251 -0
  61. package/lib/{utils-D2YknRk4.mjs → utils-B-mTYQBc.mjs} +1 -1
  62. package/lib/{utils-C616y7eF.mjs → utils-D1QPFbRk.mjs} +28 -268
  63. package/lib/{utils-Cp76gCyk.mjs → utils-fnV2zzp3.mjs} +3 -3
  64. package/lib/{vision-guard-01qSwFpf.mjs → vision-guard-BsvOWmfB.mjs} +2 -2
  65. package/lib/{wafer-CgtPHerf.mjs → wafer-Dpy7tL3l.mjs} +1 -1
  66. package/lib/{xai-oauth-Buk8XVvM.mjs → xai-oauth-BkPNQS-q.mjs} +2 -2
  67. package/lib/{xiaomi-D2qT5cAC.mjs → xiaomi-CG3TsYRz.mjs} +1 -1
  68. package/lib/{zai-C59YnomG.mjs → zai--cewobzN.mjs} +2 -2
  69. package/lib/{zip-Cg9ANN_U.mjs → zip-CqKW2-TK.mjs} +3 -46
  70. package/package.json +147 -145
  71. package/presets/package.json +1 -1
@@ -0,0 +1,148 @@
1
+ import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
+ __installBunShim();
3
+ import { d as $which, l as exec } from "./src-D_e1qMwi.mjs";
4
+ import * as path from "node:path";
5
+ import * as fs from "node:fs";
6
+ import * as os from "node:os";
7
+ //#region src/tools/bash/logger.ts
8
+ let current = {
9
+ info: (message, ...args) => console.info(`[bash-plus] ${message}`, ...args),
10
+ warn: (message, ...args) => console.warn(`[bash-plus] ${message}`, ...args),
11
+ error: (message, ...args) => console.error(`[bash-plus] ${message}`, ...args),
12
+ debug: (message, ...args) => console.debug(`[bash-plus] ${message}`, ...args)
13
+ };
14
+ /** Install the composition logger (Cordis `ctx.logger`); replaces the console adapter. */
15
+ function setRuntimeLogger(logger) {
16
+ current = logger;
17
+ }
18
+ /** The installed logger; defaults to the console adapter. */
19
+ function runtimeLogger() {
20
+ return current;
21
+ }
22
+ //#endregion
23
+ //#region src/tools/omp/browser/launch.ts
24
+ /**
25
+ * Chromium executable resolution for the read browser renderer — the probe
26
+ * family of OMP's browser launch machinery, trimmed to what rendering needs:
27
+ * `PUPPETEER_EXECUTABLE_PATH` wins, then the system Chrome/Edge/Chromium
28
+ * candidate table. The OMP download fallback (Chrome for Testing via
29
+ * @puppeteer/browsers) and the whole launch/stealth/worker surface are
30
+ * intentionally absent — this plugin never installs a browser; rendering
31
+ * degrades when none is found.
32
+ *
33
+ * The one behavioral adaptation vs. upstream: `isChromiumExecutable` uses
34
+ * `ptree.exec` instead of `Bun.spawn` so the probe runs under Node too.
35
+ */
36
+ function isExecutableFile(p) {
37
+ try {
38
+ if (!fs.statSync(p).isFile()) return false;
39
+ if (process.platform === "win32") return true;
40
+ fs.accessSync(p, fs.constants.X_OK);
41
+ return true;
42
+ } catch {
43
+ return false;
44
+ }
45
+ }
46
+ async function isChromiumExecutable(p) {
47
+ if (!isExecutableFile(p)) return false;
48
+ if (process.platform !== "linux") return true;
49
+ try {
50
+ const result = await exec([p, "--version"], {
51
+ stderr: "buffer",
52
+ allowNonZero: true,
53
+ allowAbort: true,
54
+ signal: AbortSignal.timeout(3e3)
55
+ });
56
+ return result.exitCode === 0 && /Chrom|Edg/i.test(result.stdout);
57
+ } catch {
58
+ return false;
59
+ }
60
+ }
61
+ /** Flatpak application id published by the Ungoogled Chromium project. */
62
+ const UNGOOGLED_CHROMIUM_FLATPAK_ID = "io.github.ungoogled_software.ungoogled_chromium";
63
+ function systemChromiumCandidates(platform = process.platform, home = os.homedir(), which = $which) {
64
+ const candidates = [];
65
+ switch (platform) {
66
+ case "darwin":
67
+ for (const root of ["/Applications", path.join(home, "Applications")]) candidates.push(path.join(root, "Google Chrome.app/Contents/MacOS/Google Chrome"), path.join(root, "Google Chrome Beta.app/Contents/MacOS/Google Chrome Beta"), path.join(root, "Google Chrome Dev.app/Contents/MacOS/Google Chrome Dev"), path.join(root, "Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary"), path.join(root, "Chromium.app/Contents/MacOS/Chromium"), path.join(root, "Microsoft Edge.app/Contents/MacOS/Microsoft Edge"));
68
+ break;
69
+ case "linux": {
70
+ for (const name of [
71
+ "google-chrome-stable",
72
+ "google-chrome",
73
+ "chromium",
74
+ "chromium-browser",
75
+ "chrome"
76
+ ]) {
77
+ const found = which(name);
78
+ if (found) candidates.push(found);
79
+ }
80
+ candidates.push("/usr/bin/google-chrome-stable", "/usr/bin/google-chrome", "/usr/bin/chromium", "/usr/bin/chromium-browser", "/snap/bin/chromium", "/var/lib/flatpak/exports/bin/com.google.Chrome", "/var/lib/flatpak/exports/bin/org.chromium.Chromium");
81
+ let onNixos = false;
82
+ try {
83
+ onNixos = fs.existsSync("/etc/NIXOS");
84
+ } catch {}
85
+ if (onNixos) candidates.push(path.join(home, ".nix-profile/bin/chromium"), "/run/current-system/sw/bin/chromium");
86
+ for (const name of ["ungoogled-chromium", "ungoogled-chromium-browser"]) {
87
+ const found = which(name);
88
+ if (found) candidates.push(found);
89
+ }
90
+ candidates.push("/usr/bin/ungoogled-chromium", "/usr/bin/ungoogled-chromium-browser", `/var/lib/flatpak/exports/bin/${UNGOOGLED_CHROMIUM_FLATPAK_ID}`, path.join(home, ".local/share/flatpak/exports/bin", UNGOOGLED_CHROMIUM_FLATPAK_ID));
91
+ break;
92
+ }
93
+ case "win32": {
94
+ const programFiles = process.env.ProgramFiles ?? "C:\\Program Files";
95
+ const programFilesX86 = process.env["ProgramFiles(x86)"] ?? "C:\\Program Files (x86)";
96
+ const localAppData = process.env.LOCALAPPDATA ?? path.join(home, "AppData\\Local");
97
+ candidates.push(path.join(programFiles, "Google\\Chrome\\Application\\chrome.exe"), path.join(programFilesX86, "Google\\Chrome\\Application\\chrome.exe"), path.join(localAppData, "Google\\Chrome\\Application\\chrome.exe"), path.join(programFiles, "Chromium\\Application\\chrome.exe"), path.join(localAppData, "Chromium\\Application\\chrome.exe"), path.join(programFiles, "Microsoft\\Edge\\Application\\msedge.exe"), path.join(programFilesX86, "Microsoft\\Edge\\Application\\msedge.exe"));
98
+ break;
99
+ }
100
+ }
101
+ return candidates;
102
+ }
103
+ let resolvedChromium;
104
+ async function resolveSystemChromium() {
105
+ if (resolvedChromium !== void 0) return resolvedChromium ?? void 0;
106
+ const seen = /* @__PURE__ */ new Set();
107
+ for (const candidate of systemChromiumCandidates()) {
108
+ if (!candidate || seen.has(candidate)) continue;
109
+ seen.add(candidate);
110
+ if (await isChromiumExecutable(candidate)) {
111
+ resolvedChromium = candidate;
112
+ runtimeLogger().debug("Using system Chrome/Chromium", { path: candidate });
113
+ return candidate;
114
+ }
115
+ }
116
+ resolvedChromium = null;
117
+ }
118
+ let chromiumExecutablePromise;
119
+ /**
120
+ * Resolve the Chromium executable the browser renderer will launch.
121
+ * `PUPPETEER_EXECUTABLE_PATH` always wins, then the system
122
+ * Chrome/Edge/Chromium candidate table (Windows and macOS check mere file
123
+ * existence; Linux additionally version-probes, see {@link isChromiumExecutable}).
124
+ * Returns undefined when nothing is found — puppeteer-core would fall back to
125
+ * its own bundled-Chromium search, which for this package means failure, so
126
+ * callers should treat undefined as "browser rendering unavailable".
127
+ *
128
+ * Unlike OMP upstream there is no Chrome-for-Testing download fallback: this
129
+ * plugin ships no browser installer, and the detection button only reports
130
+ * what is already on the machine.
131
+ */
132
+ async function ensureChromiumExecutable() {
133
+ const envPath = process.env.PUPPETEER_EXECUTABLE_PATH;
134
+ if (envPath) return envPath;
135
+ chromiumExecutablePromise ??= resolveSystemChromium();
136
+ try {
137
+ return await chromiumExecutablePromise;
138
+ } catch {
139
+ chromiumExecutablePromise = void 0;
140
+ return;
141
+ }
142
+ }
143
+ /** Exposes executable candidates for detection tests (OMP parity export). */
144
+ function systemChromiumCandidatesForTest(platform = process.platform, home, which) {
145
+ return systemChromiumCandidates(platform, home, which);
146
+ }
147
+ //#endregion
148
+ export { setRuntimeLogger as i, systemChromiumCandidatesForTest as n, runtimeLogger as r, ensureChromiumExecutable as t };
@@ -1,7 +1,7 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
3
  import { n as fs_promises_shim_exports } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { l as unzip, u as unzipText } from "./zip-Cg9ANN_U.mjs";
4
+ import { l as unzip, u as unzipText } from "./zip-CqKW2-TK.mjs";
5
5
  import { n as normalizeTablesHtml, t as createTurndown } from "./turndown-DN7ByzEI.mjs";
6
6
  import * as path from "node:path";
7
7
  import { pdfToMarkdown } from "@oh-my-pi/pi-natives";
@@ -1,6 +1,6 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { t as createApiKeyLogin } from "./api-key-login-BzqNdM2y.mjs";
3
+ import { t as createApiKeyLogin } from "./api-key-login-BikQAfD-.mjs";
4
4
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@17.3.5/node_modules/@oh-my-pi/pi-ai/src/registry/oauth/minimax-code.ts
5
5
  /**
6
6
  * MiniMax Token Plan login flow.
@@ -1,6 +1,6 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { t as cleanModelName } from "./utils-D2YknRk4.mjs";
3
+ import { t as cleanModelName } from "./utils-B-mTYQBc.mjs";
4
4
  //#region node_modules/.pnpm/@oh-my-pi+pi-catalog@17.3.5/node_modules/@oh-my-pi/pi-catalog/src/fireworks-model-id.ts
5
5
  const FIREWORKS_WIRE_PREFIX = "accounts/fireworks/models/";
6
6
  const FIREPASS_WIRE_PREFIX = "accounts/fireworks/routers/";
@@ -1,14 +1,14 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
3
  import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { g as parseStreamingJson, i as readJsonl } from "./src-BgpusnsB.mjs";
5
- import { G as fetchWithRetry, b as LLAMA_CPP_TOOL_CALL_PARSE_PATTERN, g as MissingApiKeyError, l as finalize, z as OllamaApiError } from "./error-Dd8DIqs-.mjs";
6
- import { C as kStreamingPartialJson, I as sanitizeSchemaForOllama, a as normalizeSystemPrompts, h as clearStreamingPartialJson, k as toolWireSchema, m as transformMessages } from "./utils-Cp76gCyk.mjs";
7
- import { Ct as withEmptyCompletionRetry, n as getEnvApiKey } from "./stream-CRtexYLe.mjs";
8
- import { i as partitionVisionContent, r as joinTextWithImagePlaceholder } from "./vision-guard-01qSwFpf.mjs";
9
- import { t as AssistantMessageEventStream } from "./event-stream-BbFZJy-z.mjs";
10
- import { n as getOpenAIStreamFirstEventTimeoutMs, r as getOpenAIStreamIdleTimeoutMs, t as armPreResponseTimeout } from "./idle-iterator-DUjKQEGT.mjs";
11
- import { n as getStreamMarkupHealingPattern, t as StreamMarkupHealing } from "./stream-markup-healing-KMkiAA00.mjs";
4
+ import { g as parseStreamingJson, i as readJsonl } from "./src-D_e1qMwi.mjs";
5
+ import { G as fetchWithRetry, b as LLAMA_CPP_TOOL_CALL_PARSE_PATTERN, g as MissingApiKeyError, l as finalize, z as OllamaApiError } from "./error-DoHuatWw.mjs";
6
+ import { C as kStreamingPartialJson, I as sanitizeSchemaForOllama, a as normalizeSystemPrompts, h as clearStreamingPartialJson, k as toolWireSchema, m as transformMessages } from "./utils-fnV2zzp3.mjs";
7
+ import { Ct as withEmptyCompletionRetry, n as getEnvApiKey } from "./stream-DveNFWSN.mjs";
8
+ import { i as partitionVisionContent, r as joinTextWithImagePlaceholder } from "./vision-guard-BsvOWmfB.mjs";
9
+ import { t as AssistantMessageEventStream } from "./event-stream-C-FmBYUt.mjs";
10
+ import { n as getOpenAIStreamFirstEventTimeoutMs, r as getOpenAIStreamIdleTimeoutMs, t as armPreResponseTimeout } from "./idle-iterator-HzbbfXP4.mjs";
11
+ import { n as getStreamMarkupHealingPattern, t as StreamMarkupHealing } from "./stream-markup-healing-C9eC7Gf8.mjs";
12
12
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@17.3.5/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,9 +1,9 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { c as OAuthError, h as LoginCancelledError } from "./error-Dd8DIqs-.mjs";
4
- import "./utils-Cp76gCyk.mjs";
3
+ import { c as OAuthError, h as LoginCancelledError } from "./error-DoHuatWw.mjs";
4
+ import "./utils-fnV2zzp3.mjs";
5
5
  import { n as isRecord } from "./type-guards-B9VVjRDK.mjs";
6
- import { t as OAuthCallbackFlow } from "./callback-server-CQ5Jo8F-.mjs";
6
+ import { t as OAuthCallbackFlow } from "./callback-server-Di6C4RqI.mjs";
7
7
  import { t as generatePKCE } from "./pkce-BlQikGPu.mjs";
8
8
  import { i as OPENAI_HEADER_VALUES } from "./codex-P1dGpX7G.mjs";
9
9
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@17.3.5/node_modules/@oh-my-pi/pi-ai/src/registry/oauth/openai-codex.ts
@@ -1,18 +1,18 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
3
  import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { B as USER_AGENT, C as error, I as $flag, P as $env, S as debug, g as parseStreamingJson, o as readSseJson, q as getInstallId, t as structuredCloneJSON, w as time } from "./src-BgpusnsB.mjs";
5
- import { G as fetchWithRetry, V as ProviderHttpError, g as MissingApiKeyError, l as finalize, v as AbortError } from "./error-Dd8DIqs-.mjs";
6
- import { A as NO_STRICT, C as kStreamingPartialJson, L as sanitizeSchemaForOpenAIResponses, a as normalizeSystemPrompts, c as sanitizeOpenAIResponsesAssistantFallbackItemsForReplay, d as stripOpenAIResponsesComputerLinkedReasoningIdsForReplay, h as clearStreamingPartialJson, j as adaptSchemaForStrict, k as toolWireSchema, l as sanitizeOpenAIResponsesAssistantHistoryItemsForReplay, m as transformMessages, n as getOpenAIResponsesHistoryItems, p as redactSensitiveInObject, r as getOpenAIResponsesHistoryPayload, t as createOpenAIResponsesHistoryPayload } from "./utils-Cp76gCyk.mjs";
4
+ import { B as USER_AGENT, C as error, I as $flag, P as $env, S as debug, g as parseStreamingJson, o as readSseJson, q as getInstallId, t as structuredCloneJSON, w as time } from "./src-D_e1qMwi.mjs";
5
+ import { G as fetchWithRetry, V as ProviderHttpError, g as MissingApiKeyError, l as finalize, v as AbortError } from "./error-DoHuatWw.mjs";
6
+ import { A as NO_STRICT, C as kStreamingPartialJson, L as sanitizeSchemaForOpenAIResponses, a as normalizeSystemPrompts, c as sanitizeOpenAIResponsesAssistantFallbackItemsForReplay, d as stripOpenAIResponsesComputerLinkedReasoningIdsForReplay, h as clearStreamingPartialJson, j as adaptSchemaForStrict, k as toolWireSchema, l as sanitizeOpenAIResponsesAssistantHistoryItemsForReplay, m as transformMessages, n as getOpenAIResponsesHistoryItems, p as redactSensitiveInObject, r as getOpenAIResponsesHistoryPayload, t as createOpenAIResponsesHistoryPayload } from "./utils-fnV2zzp3.mjs";
7
7
  import { t as asRecord } from "./type-guards-B9VVjRDK.mjs";
8
- import { A as computerCallMetadata, B as finalizeCustomToolCallInputDone, E as buildResponsesDeltaInput, F as createSequentialCutoffSummaryState, H as finalizePendingResponsesToolCalls, K as getOpenAIPromptCacheKey, L as encodeResponsesToolCallId, M as convertResponsesInputContent, Q as isOpenAIResponsesProgressEvent, R as encodeTextSignatureV1, U as finalizeReasoningThinking, V as finalizeMessageText, W as finalizeToolCallArgumentsDone, X as hasExecutableIncompleteResponsesToolCalls, a as accumulateCustomToolCallInputDelta, at as populateResponsesUsageFromResponse, bt as escapeHarmonyControlTokens, c as appendMessageTextDelta, d as appendReasoningSummaryTextDelta, f as appendResponsesImageResult, j as convertResponsesAssistantMessage, l as appendReasoningSummaryPart, n as getEnvApiKey, nt as mapOpenAIResponsesStopReason, o as accumulateToolCallArgumentsDelta, p as appendResponsesToolResultMessages, r as isOfficialCodexApiUrl, rt as normalizeOpenAIPromptCacheKey, s as appendMessageContentPart, st as promoteResponsesToolUseStopReason, tt as mapOpenAIReasoningEffort, u as appendReasoningSummaryPartDone, x as applyReasoningSummaryDone, xt as isHarmonyDialectModel, y as applyOpenAIServiceTier, z as escapeReplayedControlTokens } from "./stream-CRtexYLe.mjs";
9
- import { r as getProxyForUrl } from "./proxy-pM_NIv-H.mjs";
10
- import { E as supportsCodexReasoningSummary, T as supportsAllTurnsReasoningContext, s as requireSupportedEffort, t as calculateCost } from "./models-SGASygJ3.mjs";
11
- import { a as toNumber } from "./utils-D2YknRk4.mjs";
12
- import "./identity-Da1GPU9a.mjs";
13
- import { t as AssistantMessageEventStream } from "./event-stream-BbFZJy-z.mjs";
8
+ import { A as computerCallMetadata, B as finalizeCustomToolCallInputDone, E as buildResponsesDeltaInput, F as createSequentialCutoffSummaryState, H as finalizePendingResponsesToolCalls, K as getOpenAIPromptCacheKey, L as encodeResponsesToolCallId, M as convertResponsesInputContent, Q as isOpenAIResponsesProgressEvent, R as encodeTextSignatureV1, U as finalizeReasoningThinking, V as finalizeMessageText, W as finalizeToolCallArgumentsDone, X as hasExecutableIncompleteResponsesToolCalls, a as accumulateCustomToolCallInputDelta, at as populateResponsesUsageFromResponse, bt as escapeHarmonyControlTokens, c as appendMessageTextDelta, d as appendReasoningSummaryTextDelta, f as appendResponsesImageResult, j as convertResponsesAssistantMessage, l as appendReasoningSummaryPart, n as getEnvApiKey, nt as mapOpenAIResponsesStopReason, o as accumulateToolCallArgumentsDelta, p as appendResponsesToolResultMessages, r as isOfficialCodexApiUrl, rt as normalizeOpenAIPromptCacheKey, s as appendMessageContentPart, st as promoteResponsesToolUseStopReason, tt as mapOpenAIReasoningEffort, u as appendReasoningSummaryPartDone, x as applyReasoningSummaryDone, xt as isHarmonyDialectModel, y as applyOpenAIServiceTier, z as escapeReplayedControlTokens } from "./stream-DveNFWSN.mjs";
9
+ import { r as getProxyForUrl } from "./proxy-XOYi58TM.mjs";
10
+ import { E as supportsCodexReasoningSummary, T as supportsAllTurnsReasoningContext, s as requireSupportedEffort, t as calculateCost } from "./models-Cp3PzU3l.mjs";
11
+ import { a as toNumber } from "./utils-B-mTYQBc.mjs";
12
+ import "./identity-C0SPVyIZ.mjs";
13
+ import { t as AssistantMessageEventStream } from "./event-stream-C-FmBYUt.mjs";
14
14
  import { a as getCodexAccountId, i as OPENAI_HEADER_VALUES, n as CODEX_CLIENT_VERSION, r as OPENAI_HEADERS, t as CODEX_BASE_URL } from "./codex-P1dGpX7G.mjs";
15
- import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs, t as armPreResponseTimeout } from "./idle-iterator-DUjKQEGT.mjs";
15
+ import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs, t as armPreResponseTimeout } from "./idle-iterator-HzbbfXP4.mjs";
16
16
  import { n as isRequestDebugEnabled, t as createRequestDebugSession } from "./request-debug-HJMoJncL.mjs";
17
17
  import { t as notifyRawSseEvent } from "./sse-debug-CYdjOC96.mjs";
18
18
  import { t as compactGrammarDefinition } from "./grammar-D-NqNUxQ.mjs";
@@ -1,21 +1,21 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
3
  import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { P as $env, T as warn, _ as parseStreamingJsonThrottled, g as parseStreamingJson } from "./src-BgpusnsB.mjs";
5
- import { B as OpenAIHttpError, d as callWithCopilotModelRetry, l as finalize, n as StreamTimeoutError, s as ProviderResponseError, t as ConfigurationError, v as AbortError } from "./error-Dd8DIqs-.mjs";
6
- import { A as NO_STRICT, F as sanitizeSchemaForGrammar, O as flattenExclusiveRequiredRootUnion, P as normalizeSchemaForMoonshot, S as kStreamingLastParseLen, a as normalizeSystemPrompts, g as isDemotedThinking, j as adaptSchemaForStrict, k as toolWireSchema, m as transformMessages, s as resolveCacheRetention, w as renderDemotedThinking } from "./utils-Cp76gCyk.mjs";
7
- import { $ as isOpenRouterAnthropicModel, Ct as withEmptyCompletionRetry, I as disableStrictToolsForScope, J as getOpenAIStrictToolsScope, K as getOpenAIPromptCacheKey, N as createInitialResponsesAssistantMessage, O as calculateOpenAIUsageAccounting, P as createOpenAIStrictToolsState, St as hasVisibleAssistantContent, T as applyWireModelIdTransform, Z as isCompiledGrammarTooLargeStrictError, _ as applyOpenAIExtraBody, _t as isForcedToolChoice, b as applyOpenRouterReportedCost, ct as resolveOpenAICompatPolicy, dt as resolveOpenAIRequestSetup, et as isStrictToolsDisabledForScope, h as applyChatCompletionsToolStream, it as parseAzureDeploymentNameMap, k as clearOpenAIStrictToolsState, lt as resolveOpenAICompletionsOutputClamp, m as applyChatCompletionsCompatPolicy, n as getEnvApiKey, pt as shouldRetryWithoutStrictTools, ut as resolveOpenAIOutputTokenParam, v as applyOpenAIGatewayRouting, vt as mapToOpenAICompletionsToolChoice, y as applyOpenAIServiceTier } from "./stream-CRtexYLe.mjs";
8
- import { t as createAbortSourceTracker } from "./abort-dIkZBV7Q.mjs";
9
- import { b as isKimiModelId, c as resolveWireModelId, t as calculateCost } from "./models-SGASygJ3.mjs";
10
- import "./identity-Da1GPU9a.mjs";
11
- import { n as isDashscopeCompatibleModeTextOnlyQwen, r as joinTextWithImagePlaceholder, t as NON_VISION_IMAGE_PLACEHOLDER } from "./vision-guard-01qSwFpf.mjs";
4
+ import { P as $env, T as warn, _ as parseStreamingJsonThrottled, g as parseStreamingJson } from "./src-D_e1qMwi.mjs";
5
+ import { B as OpenAIHttpError, d as callWithCopilotModelRetry, l as finalize, n as StreamTimeoutError, s as ProviderResponseError, t as ConfigurationError, v as AbortError } from "./error-DoHuatWw.mjs";
6
+ import { A as NO_STRICT, F as sanitizeSchemaForGrammar, O as flattenExclusiveRequiredRootUnion, P as normalizeSchemaForMoonshot, S as kStreamingLastParseLen, a as normalizeSystemPrompts, g as isDemotedThinking, j as adaptSchemaForStrict, k as toolWireSchema, m as transformMessages, s as resolveCacheRetention, w as renderDemotedThinking } from "./utils-fnV2zzp3.mjs";
7
+ import { $ as isOpenRouterAnthropicModel, Ct as withEmptyCompletionRetry, I as disableStrictToolsForScope, J as getOpenAIStrictToolsScope, K as getOpenAIPromptCacheKey, N as createInitialResponsesAssistantMessage, O as calculateOpenAIUsageAccounting, P as createOpenAIStrictToolsState, St as hasVisibleAssistantContent, T as applyWireModelIdTransform, Z as isCompiledGrammarTooLargeStrictError, _ as applyOpenAIExtraBody, _t as isForcedToolChoice, b as applyOpenRouterReportedCost, ct as resolveOpenAICompatPolicy, dt as resolveOpenAIRequestSetup, et as isStrictToolsDisabledForScope, h as applyChatCompletionsToolStream, it as parseAzureDeploymentNameMap, k as clearOpenAIStrictToolsState, lt as resolveOpenAICompletionsOutputClamp, m as applyChatCompletionsCompatPolicy, n as getEnvApiKey, pt as shouldRetryWithoutStrictTools, ut as resolveOpenAIOutputTokenParam, v as applyOpenAIGatewayRouting, vt as mapToOpenAICompletionsToolChoice, y as applyOpenAIServiceTier } from "./stream-DveNFWSN.mjs";
8
+ import { t as createAbortSourceTracker } from "./abort-CsjZitYv.mjs";
9
+ import { b as isKimiModelId, c as resolveWireModelId, t as calculateCost } from "./models-Cp3PzU3l.mjs";
10
+ import "./identity-C0SPVyIZ.mjs";
11
+ import { n as isDashscopeCompatibleModeTextOnlyQwen, r as joinTextWithImagePlaceholder, t as NON_VISION_IMAGE_PLACEHOLDER } from "./vision-guard-BsvOWmfB.mjs";
12
12
  import { t as findStrictToolSchemaViolation } from "./strict-tool-validation-imVLUcbI.mjs";
13
- import { t as AssistantMessageEventStream } from "./event-stream-BbFZJy-z.mjs";
14
- import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs, s as iterateWithTerminalGrace } from "./idle-iterator-DUjKQEGT.mjs";
15
- import { t as getKimiCommonHeaders } from "./kimi-Dh0pv3WZ.mjs";
13
+ import { t as AssistantMessageEventStream } from "./event-stream-C-FmBYUt.mjs";
14
+ import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs, s as iterateWithTerminalGrace } from "./idle-iterator-HzbbfXP4.mjs";
15
+ import { t as getKimiCommonHeaders } from "./kimi-DHDO6Fde.mjs";
16
16
  import { t as notifyProviderResponse } from "./provider-response-C6vcbQyO.mjs";
17
- import { t as StreamMarkupHealing } from "./stream-markup-healing-KMkiAA00.mjs";
18
- 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-Nj6yB2rY.mjs";
17
+ import { t as StreamMarkupHealing } from "./stream-markup-healing-C9eC7Gf8.mjs";
18
+ 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-CigKCyzc.mjs";
19
19
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@17.3.5/node_modules/@oh-my-pi/pi-ai/src/providers/openai-completions.ts
20
20
  var openai_completions_exports = /* @__PURE__ */ __exportAll({
21
21
  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-BgpusnsB.mjs";
4
- import { B as OpenAIHttpError, G as fetchWithRetry, W as extractHttpStatusFromError, s as ProviderResponseError } from "./error-Dd8DIqs-.mjs";
3
+ import { o as readSseJson } from "./src-D_e1qMwi.mjs";
4
+ import { B as OpenAIHttpError, G as fetchWithRetry, W as extractHttpStatusFromError, s as ProviderResponseError } from "./error-DoHuatWw.mjs";
5
5
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@17.3.5/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,19 +1,19 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
3
  import { r as __exportAll } from "./fs-promises-shim-Bx0fpxuk.mjs";
4
- import { I as $flag, S as debug, T as warn, t as structuredCloneJSON } from "./src-BgpusnsB.mjs";
5
- import { A as isTransientStreamParseError, B as OpenAIHttpError, d as callWithCopilotModelRetry, l as finalize, n as StreamTimeoutError, s as ProviderResponseError, t as ConfigurationError, v as AbortError } from "./error-Dd8DIqs-.mjs";
6
- import { A as NO_STRICT, L as sanitizeSchemaForOpenAIResponses, O as flattenExclusiveRequiredRootUnion, P as normalizeSchemaForMoonshot, a as normalizeSystemPrompts, j as adaptSchemaForStrict, k as toolWireSchema, l as sanitizeOpenAIResponsesAssistantHistoryItemsForReplay, s as resolveCacheRetention, t as createOpenAIResponsesHistoryPayload } from "./utils-Cp76gCyk.mjs";
7
- import { $ as isOpenRouterAnthropicModel, Ct as withEmptyCompletionRetry, D as buildResponsesInput, E as buildResponsesDeltaInput, G as getJuiceValue, I as disableStrictToolsForScope, J as getOpenAIStrictToolsScope, K as getOpenAIPromptCacheKey, N as createInitialResponsesAssistantMessage, P as createOpenAIStrictToolsState, Q as isOpenAIResponsesProgressEvent, S as applyResponsesCompatPolicy, T as applyWireModelIdTransform, Y as getOpenRouterResponsesSessionId, Z as isCompiledGrammarTooLargeStrictError, _ as applyOpenAIExtraBody, _t as isForcedToolChoice, ct as resolveOpenAICompatPolicy, dt as resolveOpenAIRequestSetup, et as isStrictToolsDisabledForScope, ft as resolveOpenAIResponsesOutputClamp, g as applyCommonResponsesSamplingParams, k as clearOpenAIStrictToolsState, n as getEnvApiKey, ot as processResponsesStream, pt as shouldRetryWithoutStrictTools, q as getOpenAIResponsesRoutingSessionId, ut as resolveOpenAIOutputTokenParam, v as applyOpenAIGatewayRouting, w as applyVercelResponsesCacheControls, yt as mapToOpenAIResponsesToolChoice } from "./stream-CRtexYLe.mjs";
8
- import { t as createAbortSourceTracker } from "./abort-dIkZBV7Q.mjs";
9
- import { A as semverGte, D as bareModelId, j as hostMatchesUrl, k as parseOpenAIModel } from "./models-SGASygJ3.mjs";
10
- import "./identity-Da1GPU9a.mjs";
4
+ import { I as $flag, S as debug, T as warn, t as structuredCloneJSON } from "./src-D_e1qMwi.mjs";
5
+ import { A as isTransientStreamParseError, B as OpenAIHttpError, d as callWithCopilotModelRetry, l as finalize, n as StreamTimeoutError, s as ProviderResponseError, t as ConfigurationError, v as AbortError } from "./error-DoHuatWw.mjs";
6
+ import { A as NO_STRICT, L as sanitizeSchemaForOpenAIResponses, O as flattenExclusiveRequiredRootUnion, P as normalizeSchemaForMoonshot, a as normalizeSystemPrompts, j as adaptSchemaForStrict, k as toolWireSchema, l as sanitizeOpenAIResponsesAssistantHistoryItemsForReplay, s as resolveCacheRetention, t as createOpenAIResponsesHistoryPayload } from "./utils-fnV2zzp3.mjs";
7
+ import { $ as isOpenRouterAnthropicModel, Ct as withEmptyCompletionRetry, D as buildResponsesInput, E as buildResponsesDeltaInput, G as getJuiceValue, I as disableStrictToolsForScope, J as getOpenAIStrictToolsScope, K as getOpenAIPromptCacheKey, N as createInitialResponsesAssistantMessage, P as createOpenAIStrictToolsState, Q as isOpenAIResponsesProgressEvent, S as applyResponsesCompatPolicy, T as applyWireModelIdTransform, Y as getOpenRouterResponsesSessionId, Z as isCompiledGrammarTooLargeStrictError, _ as applyOpenAIExtraBody, _t as isForcedToolChoice, ct as resolveOpenAICompatPolicy, dt as resolveOpenAIRequestSetup, et as isStrictToolsDisabledForScope, ft as resolveOpenAIResponsesOutputClamp, g as applyCommonResponsesSamplingParams, k as clearOpenAIStrictToolsState, n as getEnvApiKey, ot as processResponsesStream, pt as shouldRetryWithoutStrictTools, q as getOpenAIResponsesRoutingSessionId, ut as resolveOpenAIOutputTokenParam, v as applyOpenAIGatewayRouting, w as applyVercelResponsesCacheControls, yt as mapToOpenAIResponsesToolChoice } from "./stream-DveNFWSN.mjs";
8
+ import { t as createAbortSourceTracker } from "./abort-CsjZitYv.mjs";
9
+ import { A as semverGte, D as bareModelId, j as hostMatchesUrl, k as parseOpenAIModel } from "./models-Cp3PzU3l.mjs";
10
+ import "./identity-C0SPVyIZ.mjs";
11
11
  import { t as findStrictToolSchemaViolation } from "./strict-tool-validation-imVLUcbI.mjs";
12
- import { t as AssistantMessageEventStream } from "./event-stream-BbFZJy-z.mjs";
13
- import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs } from "./idle-iterator-DUjKQEGT.mjs";
12
+ import { t as AssistantMessageEventStream } from "./event-stream-C-FmBYUt.mjs";
13
+ import { n as getOpenAIStreamFirstEventTimeoutMs, o as iterateWithIdleTimeout, r as getOpenAIStreamIdleTimeoutMs } from "./idle-iterator-HzbbfXP4.mjs";
14
14
  import { t as notifyProviderResponse } from "./provider-response-C6vcbQyO.mjs";
15
15
  import { t as compactGrammarDefinition } from "./grammar-D-NqNUxQ.mjs";
16
- 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-Nj6yB2rY.mjs";
16
+ 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-CigKCyzc.mjs";
17
17
  import { scheduler } from "node:timers/promises";
18
18
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@17.3.5/node_modules/@oh-my-pi/pi-ai/src/providers/openai-responses.ts
19
19
  var openai_responses_exports = /* @__PURE__ */ __exportAll({
@@ -1,6 +1,6 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { _ as OnPromptRequiredError, h as LoginCancelledError, m as ApiKeyRequiredError } from "./error-Dd8DIqs-.mjs";
3
+ import { _ as OnPromptRequiredError, h as LoginCancelledError, m as ApiKeyRequiredError } from "./error-DoHuatWw.mjs";
4
4
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@17.3.5/node_modules/@oh-my-pi/pi-ai/src/registry/oauth/opencode.ts
5
5
  /**
6
6
  * OpenCode Zen login flow.
@@ -1,7 +1,7 @@
1
1
  import { installBunShim as __installBunShim } from "./bun-shim.mjs";
2
2
  __installBunShim();
3
- import { D as Cookie, E as $, O as CookieMap, P as $env } from "./src-BgpusnsB.mjs";
4
- import { V as ProviderHttpError, _ as OnPromptRequiredError, c as OAuthError, h as LoginCancelledError } from "./error-Dd8DIqs-.mjs";
3
+ import { D as Cookie, E as $, O as CookieMap, P as $env } from "./src-D_e1qMwi.mjs";
4
+ import { V as ProviderHttpError, _ as OnPromptRequiredError, c as OAuthError, h as LoginCancelledError } from "./error-DoHuatWw.mjs";
5
5
  import * as os from "node:os";
6
6
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@17.3.5/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 { n as StreamTimeoutError, r as ValidationError, v as AbortError } from "./error-Dd8DIqs-.mjs";
3
+ import { n as StreamTimeoutError, r as ValidationError, v as AbortError } from "./error-DoHuatWw.mjs";
4
4
  import * as tls from "node:tls";
5
5
  import * as net from "node:net";
6
6
  //#region node_modules/.pnpm/@oh-my-pi+pi-ai@17.3.5/node_modules/@oh-my-pi/pi-ai/src/utils/proxy.ts