@workclaw/openclaw-workclaw 1.0.342 → 1.0.345

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 (67) hide show
  1. package/dist/{anthropic-BX4T2YIB.js → anthropic-DPIo8aZS.js} +1 -1
  2. package/dist/api.js +379 -0
  3. package/dist/{azure-openai-responses-CRtsnQnD.js → azure-openai-responses-DD2qWGIN.js} +2 -2
  4. package/dist/{index-ZWLWkJXc.js → channel-DRvDqBYj.js} +2164 -5548
  5. package/dist/channel-bootstrap.runtime-B0t3vnup-Czzea06A.js +5 -0
  6. package/dist/channel-entry-api.d.ts +3 -0
  7. package/dist/channel-entry-api.d.ts.map +1 -0
  8. package/dist/channel-entry-api.js +719 -0
  9. package/dist/channel-entry-contract-BDMmGZzs-4ZlSsA7g.js +252 -0
  10. package/dist/channel-plugin-api.d.ts +2 -0
  11. package/dist/channel-plugin-api.d.ts.map +1 -0
  12. package/dist/channel-plugin-api.js +4 -0
  13. package/dist/{cleanup-i9QIMqva-CYcFSfZC.js → cleanup-i9QIMqva-1f5yGy3c.js} +2 -2
  14. package/dist/config-B7WCpONg.js +94 -0
  15. package/dist/{cron-tasks-handler-BIpSoLIG.js → cron-tasks-handler-CIhnDbA3.js} +1 -1
  16. package/dist/{google-BhYq3yh7.js → google-CO2HXSN_.js} +2 -2
  17. package/dist/{google-shared-sAeUdThk.js → google-shared-BzJ3YIh8.js} +1 -1
  18. package/dist/{google-vertex-CFbea9mm.js → google-vertex-BD9-XVFI.js} +2 -2
  19. package/dist/{host-hook-cleanup-BNlJQu7G-DZh9GtcC.js → host-hook-cleanup-BNlJQu7G-B6gPaEXw.js} +3 -2
  20. package/dist/{index-CXEk4j12.js → index-D9W7_ln2.js} +1 -1
  21. package/dist/index-DLeHpawu.js +1351 -0
  22. package/dist/index-DvlDhBhd.js +524 -0
  23. package/dist/index.d.ts +1 -10
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +42 -11
  26. package/dist/{legacy-config-issues-Czu0_ffE-BUj03gnH.js → legacy-config-issues-Czu0_ffE-ktq5IpXk.js} +4 -2
  27. package/dist/{message-oTt1u1XX-BHxJ4z66.js → message-oTt1u1XX-DOBlhTmr.js} +5 -4
  28. package/dist/message.config.runtime-C_TAuIcE.js +4 -0
  29. package/dist/{message.gateway.runtime-Ch5zdrYr.js → message.gateway.runtime-DF-QRcSW.js} +3 -2
  30. package/dist/{mistral-DgMDMo1J.js → mistral-BIsV4aGY.js} +1 -1
  31. package/dist/models-config.runtime-C39G_JMq.js +4 -0
  32. package/dist/{openai-codex-responses-D6j-616z.js → openai-codex-responses-C6Z_AwQQ.js} +2 -2
  33. package/dist/{openai-completions-BtT6C5eC.js → openai-completions-DZosJ4E4.js} +1 -1
  34. package/dist/{openai-responses-Dtuy4M7B.js → openai-responses-S_jH9SLK.js} +2 -2
  35. package/dist/{openai-responses-shared-DZBSlU2d.js → openai-responses-shared-CFqFtFHI.js} +1 -1
  36. package/dist/{openrouter-DbsgRqzU.js → openrouter-DmigfOuL.js} +1 -1
  37. package/dist/{photon_rs-CbOi7Vp0.js → photon_rs-r_qXiR7O.js} +1 -1
  38. package/dist/{plugin-load-profile-DOnG9jJ5-zOQuKNoi.js → plugin-load-profile-DOnG9jJ5-B0ymqOTX.js} +9936 -9990
  39. package/dist/plugins-C54ejDC8-DvOLwS0D.js +8 -0
  40. package/dist/provider-discovery.runtime-C7QlqKhh.js +4 -0
  41. package/dist/runtime-api-DU-e2Pen.js +391 -0
  42. package/dist/runtime-api.d.ts +2 -0
  43. package/dist/runtime-api.d.ts.map +1 -0
  44. package/dist/runtime-api.js +4 -0
  45. package/dist/{session-archive.runtime-BAljnZWW.js → session-archive.runtime-DlZRauFQ.js} +2 -2
  46. package/dist/setup-entry.js +2 -194
  47. package/dist/src/config-schema.d.ts +4 -0
  48. package/dist/src/config-schema.d.ts.map +1 -1
  49. package/dist/src/runtime.js +37 -0
  50. package/dist/src/secret-contract-api.js +7 -0
  51. package/dist/string-coerce-DyL154ka-BEV0SzzS.js +61 -0
  52. package/dist/subsystem-W8wAQXn1-BRIb6Mz-.js +4 -0
  53. package/dist/tools-api.d.ts +2 -0
  54. package/dist/tools-api.d.ts.map +1 -0
  55. package/dist/tools-api.js +4 -0
  56. package/dist/transcript.runtime-C6BHG-XW.js +5 -0
  57. package/dist/workclaw-client-CMjcFjJx.js +538 -0
  58. package/openclaw.plugin.json +8 -0
  59. package/package.json +9 -5
  60. package/dist/channel-bootstrap.runtime-B0t3vnup-vflkdVI8.js +0 -5
  61. package/dist/config-Cw8JPyMQ.js +0 -94
  62. package/dist/message.config.runtime-DuzEAWuz.js +0 -4
  63. package/dist/models-config.runtime-DLspRp8e.js +0 -4
  64. package/dist/plugins-C54ejDC8-Df48OaX-.js +0 -8
  65. package/dist/provider-discovery.runtime-Dps3xmj0.js +0 -4
  66. package/dist/subsystem-W8wAQXn1-Dh_4L9-w.js +0 -4
  67. package/dist/transcript.runtime-B6llle92.js +0 -5
@@ -0,0 +1,252 @@
1
+ import { n as normalizeLowercaseStringOrEmpty } from "./string-coerce-DyL154ka-BEV0SzzS.js";
2
+ import { l as emptyChannelConfigSchema, m as createProfiler, s as shouldProfilePluginLoader, t as toSafeImportPath, o as formatPluginLoadProfileLine, q as openRootFileSync, u as getCachedPluginSourceModuleLoader, v as resolveLoaderPackageRoot } from "./plugin-load-profile-DOnG9jJ5-B0ymqOTX.js";
3
+ import { createRequire } from "node:module";
4
+ import { fileURLToPath } from "node:url";
5
+ import fs__default from "node:fs";
6
+ import path__default from "node:path";
7
+ const nodeRequire = createRequire(import.meta.url);
8
+ const moduleLoaders = /* @__PURE__ */ new Map();
9
+ const loadedModuleExports = /* @__PURE__ */ new Map();
10
+ const disableBundledEntrySourceFallbackEnv = "OPENCLAW_DISABLE_BUNDLED_ENTRY_SOURCE_FALLBACK";
11
+ function isTruthyEnvFlag(value) {
12
+ return value !== void 0 && !/^(?:0|false)$/iu.test(value.trim());
13
+ }
14
+ function resolveSpecifierCandidates(modulePath) {
15
+ const ext = normalizeLowercaseStringOrEmpty(path__default.extname(modulePath));
16
+ if (ext === ".js") return [modulePath, modulePath.slice(0, -3) + ".ts"];
17
+ if (ext === ".mjs") return [modulePath, modulePath.slice(0, -4) + ".mts"];
18
+ if (ext === ".cjs") return [modulePath, modulePath.slice(0, -4) + ".cts"];
19
+ return [modulePath];
20
+ }
21
+ function resolveEntryBoundaryRoot(importMetaUrl) {
22
+ return path__default.dirname(fileURLToPath(importMetaUrl));
23
+ }
24
+ function addBundledEntryCandidates(candidates, basePath, boundaryRoot) {
25
+ for (const candidate of resolveSpecifierCandidates(basePath)) {
26
+ if (candidates.some((entry) => entry.path === candidate && entry.boundaryRoot === boundaryRoot)) continue;
27
+ candidates.push({
28
+ path: candidate,
29
+ boundaryRoot
30
+ });
31
+ }
32
+ }
33
+ function resolveBundledEntryModuleCandidates(importMetaUrl, specifier) {
34
+ const importerPath = fileURLToPath(importMetaUrl);
35
+ const importerDir = path__default.dirname(importerPath);
36
+ const boundaryRoot = resolveEntryBoundaryRoot(importMetaUrl);
37
+ const candidates = [];
38
+ addBundledEntryCandidates(candidates, path__default.resolve(importerDir, specifier), boundaryRoot);
39
+ const sourceRelativeSpecifier = specifier.replace(/^\.\/src\//u, "./");
40
+ if (sourceRelativeSpecifier !== specifier) addBundledEntryCandidates(candidates, path__default.resolve(importerDir, sourceRelativeSpecifier), boundaryRoot);
41
+ const packageRoot = resolveLoaderPackageRoot({
42
+ modulePath: importerPath,
43
+ moduleUrl: importMetaUrl,
44
+ cwd: importerDir,
45
+ argv1: process.argv[1]
46
+ });
47
+ if (!packageRoot) return candidates;
48
+ const distExtensionsRoot = path__default.join(packageRoot, "dist", "extensions") + path__default.sep;
49
+ if (!importerPath.startsWith(distExtensionsRoot)) return candidates;
50
+ if (isTruthyEnvFlag(process.env[disableBundledEntrySourceFallbackEnv])) return candidates;
51
+ const pluginDirName = path__default.basename(importerDir);
52
+ const sourcePluginRoot = path__default.join(packageRoot, "extensions", pluginDirName);
53
+ if (sourcePluginRoot === boundaryRoot) return candidates;
54
+ addBundledEntryCandidates(candidates, path__default.resolve(sourcePluginRoot, specifier), sourcePluginRoot);
55
+ if (sourceRelativeSpecifier !== specifier) addBundledEntryCandidates(candidates, path__default.resolve(sourcePluginRoot, sourceRelativeSpecifier), sourcePluginRoot);
56
+ return candidates;
57
+ }
58
+ function formatBundledEntryUnknownError(error) {
59
+ if (typeof error === "string") return error;
60
+ if (error === void 0) return "boundary validation failed";
61
+ try {
62
+ return JSON.stringify(error);
63
+ } catch {
64
+ return "non-serializable error";
65
+ }
66
+ }
67
+ function formatBundledEntryModuleOpenFailure(params) {
68
+ const importerPath = fileURLToPath(params.importMetaUrl);
69
+ const errorDetail = params.failure.error instanceof Error ? params.failure.error.message : formatBundledEntryUnknownError(params.failure.error);
70
+ return [
71
+ `bundled plugin entry "${params.specifier}" failed to open`,
72
+ `from "${importerPath}"`,
73
+ `(resolved "${params.resolvedPath}", plugin root "${params.boundaryRoot}",`,
74
+ `reason "${params.failure.reason}"): ${errorDetail}`
75
+ ].join(" ");
76
+ }
77
+ function resolveBundledEntryModulePath(importMetaUrl, specifier) {
78
+ const candidates = resolveBundledEntryModuleCandidates(importMetaUrl, specifier);
79
+ const fallbackCandidate = candidates[0] ?? {
80
+ path: path__default.resolve(path__default.dirname(fileURLToPath(importMetaUrl)), specifier),
81
+ boundaryRoot: resolveEntryBoundaryRoot(importMetaUrl)
82
+ };
83
+ let firstFailure = null;
84
+ for (const candidate of candidates) {
85
+ const opened = openRootFileSync({
86
+ absolutePath: candidate.path,
87
+ rootPath: candidate.boundaryRoot,
88
+ boundaryLabel: "plugin root",
89
+ rejectHardlinks: false,
90
+ skipLexicalRootCheck: true
91
+ });
92
+ if (opened.ok) {
93
+ fs__default.closeSync(opened.fd);
94
+ return opened.path;
95
+ }
96
+ firstFailure ??= {
97
+ candidate,
98
+ failure: opened
99
+ };
100
+ }
101
+ const failure = firstFailure;
102
+ if (!failure) throw new Error(formatBundledEntryModuleOpenFailure({
103
+ importMetaUrl,
104
+ specifier,
105
+ resolvedPath: fallbackCandidate.path,
106
+ boundaryRoot: fallbackCandidate.boundaryRoot,
107
+ failure: {
108
+ ok: false,
109
+ reason: "path",
110
+ error: /* @__PURE__ */ new Error(`ENOENT: no such file or directory, lstat '${fallbackCandidate.path}'`)
111
+ }
112
+ }));
113
+ throw new Error(formatBundledEntryModuleOpenFailure({
114
+ importMetaUrl,
115
+ specifier,
116
+ resolvedPath: failure.candidate.path,
117
+ boundaryRoot: failure.candidate.boundaryRoot,
118
+ failure: failure.failure
119
+ }));
120
+ }
121
+ function getSourceModuleLoader(modulePath, options) {
122
+ return getCachedPluginSourceModuleLoader({
123
+ cache: moduleLoaders,
124
+ modulePath,
125
+ importerUrl: import.meta.url,
126
+ preferBuiltDist: true,
127
+ loaderFilename: import.meta.url,
128
+ ...options.createLoaderForTest ? { createLoader: options.createLoaderForTest } : {}
129
+ });
130
+ }
131
+ function canTryNodeRequireBuiltModule(modulePath) {
132
+ return (modulePath.includes(`${path__default.sep}dist${path__default.sep}`) || modulePath.includes(`${path__default.sep}dist-runtime${path__default.sep}`)) && [
133
+ ".js",
134
+ ".mjs",
135
+ ".cjs"
136
+ ].includes(normalizeLowercaseStringOrEmpty(path__default.extname(modulePath)));
137
+ }
138
+ function loadBundledEntryModuleSync(importMetaUrl, specifier, options = {}) {
139
+ const modulePath = resolveBundledEntryModulePath(importMetaUrl, specifier);
140
+ const cached = loadedModuleExports.get(modulePath);
141
+ if (cached !== void 0) return cached;
142
+ let loaded;
143
+ const profile = shouldProfilePluginLoader();
144
+ const loadStartMs = profile ? performance.now() : 0;
145
+ let sourceLoaderReadyMs = 0;
146
+ if (canTryNodeRequireBuiltModule(modulePath)) try {
147
+ loaded = nodeRequire(modulePath);
148
+ } catch {
149
+ const moduleLoader = getSourceModuleLoader(modulePath, options);
150
+ sourceLoaderReadyMs = profile ? performance.now() : 0;
151
+ loaded = moduleLoader(toSafeImportPath(modulePath));
152
+ }
153
+ else {
154
+ const moduleLoader = getSourceModuleLoader(modulePath, options);
155
+ sourceLoaderReadyMs = profile ? performance.now() : 0;
156
+ loaded = moduleLoader(toSafeImportPath(modulePath));
157
+ }
158
+ if (profile) {
159
+ const endMs = performance.now();
160
+ console.error(formatPluginLoadProfileLine({
161
+ phase: "bundled-entry-module-load",
162
+ pluginId: "(bundled-entry)",
163
+ source: modulePath,
164
+ elapsedMs: endMs - loadStartMs,
165
+ extras: [["sourceLoaderCreateMs", sourceLoaderReadyMs ? sourceLoaderReadyMs - loadStartMs : 0], ["sourceLoaderCallMs", sourceLoaderReadyMs ? endMs - sourceLoaderReadyMs : 0]]
166
+ }));
167
+ }
168
+ loadedModuleExports.set(modulePath, loaded);
169
+ return loaded;
170
+ }
171
+ function loadBundledEntryExportSync(importMetaUrl, reference, options) {
172
+ const loaded = loadBundledEntryModuleSync(importMetaUrl, reference.specifier, options);
173
+ const resolved = loaded && typeof loaded === "object" && "default" in loaded ? loaded.default : loaded;
174
+ if (!reference.exportName) return resolved;
175
+ const record = resolved ?? loaded;
176
+ if (!record || !(reference.exportName in record)) throw new Error(`missing export "${reference.exportName}" from bundled entry module ${reference.specifier}`);
177
+ return record[reference.exportName];
178
+ }
179
+ function defineBundledChannelEntry({ id, name, description, importMetaUrl, plugin, outbound, secrets, configSchema, runtime, accountInspect, features, registerCliMetadata, registerFull }) {
180
+ const resolvedConfigSchema = typeof configSchema === "function" ? configSchema() : configSchema ?? emptyChannelConfigSchema();
181
+ const loadChannelPlugin = (options) => loadBundledEntryExportSync(importMetaUrl, plugin, options);
182
+ const loadChannelOutbound = outbound ? (options) => loadBundledEntryExportSync(importMetaUrl, outbound, options) : void 0;
183
+ const loadChannelSecrets = secrets ? (options) => loadBundledEntryExportSync(importMetaUrl, secrets, options) : void 0;
184
+ const loadChannelAccountInspector = accountInspect ? (options) => loadBundledEntryExportSync(importMetaUrl, accountInspect, options) : void 0;
185
+ const setChannelRuntime = runtime ? (pluginRuntime) => {
186
+ loadBundledEntryExportSync(importMetaUrl, runtime)(pluginRuntime);
187
+ } : void 0;
188
+ return {
189
+ kind: "bundled-channel-entry",
190
+ id,
191
+ name,
192
+ description,
193
+ configSchema: resolvedConfigSchema,
194
+ ...features || accountInspect ? { features: {
195
+ ...features,
196
+ ...accountInspect ? { accountInspect: true } : {}
197
+ } } : {},
198
+ register(api) {
199
+ if (api.registrationMode === "cli-metadata") {
200
+ registerCliMetadata?.(api);
201
+ return;
202
+ }
203
+ if (api.registrationMode === "tool-discovery") {
204
+ createProfiler({
205
+ pluginId: id,
206
+ source: importMetaUrl
207
+ })("bundled-register:registerFull", () => registerFull?.(api));
208
+ return;
209
+ }
210
+ const profile = createProfiler({
211
+ pluginId: id,
212
+ source: importMetaUrl
213
+ });
214
+ const channelPlugin = profile("bundled-register:loadChannelPlugin", loadChannelPlugin);
215
+ profile("bundled-register:registerChannel", () => api.registerChannel({ plugin: channelPlugin }));
216
+ profile("bundled-register:setChannelRuntime", () => setChannelRuntime?.(api.runtime));
217
+ if (api.registrationMode === "discovery") {
218
+ profile("bundled-register:registerCliMetadata", () => registerCliMetadata?.(api));
219
+ return;
220
+ }
221
+ if (api.registrationMode !== "full") return;
222
+ profile("bundled-register:registerCliMetadata", () => registerCliMetadata?.(api));
223
+ profile("bundled-register:registerFull", () => registerFull?.(api));
224
+ },
225
+ loadChannelPlugin,
226
+ ...loadChannelOutbound ? { loadChannelOutbound } : {},
227
+ ...loadChannelSecrets ? { loadChannelSecrets } : {},
228
+ ...loadChannelAccountInspector ? { loadChannelAccountInspector } : {},
229
+ ...setChannelRuntime ? { setChannelRuntime } : {}
230
+ };
231
+ }
232
+ function defineBundledChannelSetupEntry({ importMetaUrl, plugin, secrets, runtime, legacyStateMigrations, legacySessionSurface, features }) {
233
+ const setChannelRuntime = runtime ? (pluginRuntime) => {
234
+ loadBundledEntryExportSync(importMetaUrl, runtime)(pluginRuntime);
235
+ } : void 0;
236
+ const loadLegacyStateMigrationDetector = legacyStateMigrations ? (options) => loadBundledEntryExportSync(importMetaUrl, legacyStateMigrations, options) : void 0;
237
+ const loadLegacySessionSurface = legacySessionSurface ? (options) => loadBundledEntryExportSync(importMetaUrl, legacySessionSurface, options) : void 0;
238
+ return {
239
+ kind: "bundled-channel-setup-entry",
240
+ loadSetupPlugin: (options) => loadBundledEntryExportSync(importMetaUrl, plugin, options),
241
+ ...secrets ? { loadSetupSecrets: (options) => loadBundledEntryExportSync(importMetaUrl, secrets, options) } : {},
242
+ ...loadLegacyStateMigrationDetector ? { loadLegacyStateMigrationDetector } : {},
243
+ ...loadLegacySessionSurface ? { loadLegacySessionSurface } : {},
244
+ ...setChannelRuntime ? { setChannelRuntime } : {},
245
+ ...features ? { features } : {}
246
+ };
247
+ }
248
+ export {
249
+ defineBundledChannelSetupEntry as a,
250
+ defineBundledChannelEntry as d,
251
+ loadBundledEntryExportSync as l
252
+ };
@@ -0,0 +1,2 @@
1
+ export { workclawPlugin } from './src/channel.js';
2
+ //# sourceMappingURL=channel-plugin-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel-plugin-api.d.ts","sourceRoot":"","sources":["../channel-plugin-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { w } from "./channel-DRvDqBYj.js";
2
+ export {
3
+ w as workclawPlugin
4
+ };
@@ -1,5 +1,5 @@
1
- import { o as isPathInside } from "./plugin-load-profile-DOnG9jJ5-zOQuKNoi.js";
2
- import { aI as resolveTrajectoryPointerFilePath, aJ as resolveTrajectoryFilePath, aF as resolveSessionFilePath, aK as safeTrajectorySessionFileName } from "./index-ZWLWkJXc.js";
1
+ import { x as isPathInside } from "./plugin-load-profile-DOnG9jJ5-B0ymqOTX.js";
2
+ import { aI as resolveTrajectoryPointerFilePath, aJ as resolveTrajectoryFilePath, aF as resolveSessionFilePath, aK as safeTrajectorySessionFileName } from "./channel-DRvDqBYj.js";
3
3
  import fs__default from "node:fs";
4
4
  import path__default from "node:path";
5
5
  function isRecord(value) {
@@ -0,0 +1,94 @@
1
+ import { C, a, b, D, N, S, T, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, x, y, z, A, B, E, F, G, H, I, J, K, L, M, O, P, Q, R, U, V, W, X, Y, Z, _, $, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af, ag, ah, ai } from "./channel-DRvDqBYj.js";
2
+ import { D as D2, E as E2, L as L2, a as a10, M as M2, b as b2, c as c2, d as d2, h as h2, i as i2, e as e2, f as f2, n as n2, g as g2, p as p2, j as j2, r as r2, k as k2 } from "./plugin-load-profile-DOnG9jJ5-B0ymqOTX.js";
3
+ export {
4
+ C as CONFIG_PATH,
5
+ a as ConfigMutationConflictError,
6
+ b as ConfigRuntimeRefreshError,
7
+ D as DEFAULT_GATEWAY_PORT,
8
+ D2 as DEFAULT_SECRET_PROVIDER_ALIAS,
9
+ E2 as ENV_SECRET_REF_ID_RE,
10
+ L2 as LEGACY_DOUBLE_UNDERSCORE_ENV_MARKER_PREFIX,
11
+ a10 as LEGACY_SECRETREF_ENV_MARKER_PREFIX,
12
+ M2 as MODEL_APIS,
13
+ b2 as MODEL_THINKING_FORMATS,
14
+ N as NixModeConfigMutationError,
15
+ S as STATE_DIR,
16
+ T as TOOLS_BY_SENDER_KEY_TYPES,
17
+ c as applyConfigOverrides,
18
+ d as assertConfigWriteAllowedInCurrentMode,
19
+ c2 as assertSecretInputResolved,
20
+ e as clearConfigCache,
21
+ f as clearRuntimeConfigSnapshot,
22
+ d2 as coerceSecretRef,
23
+ g as createConfigIO,
24
+ h as getConfigOverrides,
25
+ i as getRuntimeConfig,
26
+ j as getRuntimeConfigSnapshot,
27
+ k as getRuntimeConfigSnapshotMetadata,
28
+ l as getRuntimeConfigSourceSnapshot,
29
+ h2 as hasConfiguredSecretInput,
30
+ m as hashRuntimeConfigValue,
31
+ i2 as isModelThinkingFormat,
32
+ n as isNixMode,
33
+ o as isPluginLocalInvalidConfigSnapshot,
34
+ e2 as isSecretRef,
35
+ f2 as isValidEnvSecretRefId,
36
+ p as loadConfig,
37
+ q as mutateConfigFile,
38
+ r as mutateConfigFileWithRetry,
39
+ n2 as normalizeResolvedSecretInputString,
40
+ g2 as normalizeSecretInputString,
41
+ s as normalizeStateDirEnv,
42
+ t as parseConfigJson5,
43
+ p2 as parseEnvTemplateSecretRef,
44
+ j2 as parseLegacySecretRefEnvMarker,
45
+ u as parseToolsBySenderTypedKey,
46
+ v as projectConfigOntoRuntimeSourceSnapshot,
47
+ x as promoteConfigSnapshotToLastKnownGood,
48
+ y as readBestEffortConfig,
49
+ z as readConfigFileSnapshot,
50
+ A as readConfigFileSnapshotForWrite,
51
+ B as readConfigFileSnapshotWithPluginMetadata,
52
+ E as readSourceConfigBestEffort,
53
+ F as readSourceConfigSnapshot,
54
+ G as readSourceConfigSnapshotForWrite,
55
+ H as recoverConfigFromJsonRootSuffix,
56
+ I as recoverConfigFromLastKnownGood,
57
+ J as registerConfigWriteListener,
58
+ K as replaceConfigFile,
59
+ L as resetConfigOverrides,
60
+ M as resetConfigRuntimeState,
61
+ O as resolveCanonicalConfigPath,
62
+ P as resolveConfigPath,
63
+ Q as resolveConfigPathCandidate,
64
+ R as resolveConfigSnapshotHash,
65
+ U as resolveConfigWriteAfterWrite,
66
+ V as resolveConfigWriteFollowUp,
67
+ W as resolveDefaultConfigCandidates,
68
+ X as resolveGatewayLockDir,
69
+ Y as resolveGatewayPort,
70
+ Z as resolveIncludeRoots,
71
+ _ as resolveIsNixMode,
72
+ $ as resolveLegacyStateDir,
73
+ a0 as resolveLegacyStateDirs,
74
+ a1 as resolveNewStateDir,
75
+ a2 as resolveOAuthDir,
76
+ a3 as resolveOAuthPath,
77
+ a4 as resolveRuntimeConfigCacheKey,
78
+ r2 as resolveSecretInputRef,
79
+ k2 as resolveSecretInputString,
80
+ a5 as resolveStateDir,
81
+ a6 as selectApplicableRuntimeConfig,
82
+ a7 as setConfigOverride,
83
+ a8 as setRuntimeConfigSnapshot,
84
+ a9 as setRuntimeConfigSnapshotRefreshHandler,
85
+ aa as shouldAttemptLastKnownGoodRecovery,
86
+ ab as transformConfigFile,
87
+ ac as transformConfigFileWithRetry,
88
+ ad as unsetConfigOverride,
89
+ ae as validateConfigObject,
90
+ af as validateConfigObjectRaw,
91
+ ag as validateConfigObjectRawWithPlugins,
92
+ ah as validateConfigObjectWithPlugins,
93
+ ai as writeConfigFile
94
+ };
@@ -3,7 +3,7 @@ import { existsSync, readFileSync } from "node:fs";
3
3
  import { homedir } from "node:os";
4
4
  import { join } from "node:path";
5
5
  import { promisify } from "node:util";
6
- import { at as logger } from "./index-ZWLWkJXc.js";
6
+ import { l as logger } from "./runtime-api-DU-e2Pen.js";
7
7
  const execAsync = promisify(exec);
8
8
  function resolvePreferredCliPathEnv() {
9
9
  const defaultAliasPath = join(homedir(), ".nvm", "alias", "default");
@@ -1,5 +1,5 @@
1
- import { i as isThinkingPart, r as retainThoughtSignature, m as mapStopReason, G as GoogleGenAI, c as convertMessages, a as convertTools, b as mapToolChoice } from "./google-shared-sAeUdThk.js";
2
- import { aL as getEnvApiKey, aN as clampThinkingLevel, aO as AssistantMessageEventStream, aP as calculateCost } from "./index-ZWLWkJXc.js";
1
+ import { i as isThinkingPart, r as retainThoughtSignature, m as mapStopReason, G as GoogleGenAI, c as convertMessages, a as convertTools, b as mapToolChoice } from "./google-shared-BzJ3YIh8.js";
2
+ import { aL as getEnvApiKey, aN as clampThinkingLevel, aO as AssistantMessageEventStream, aP as calculateCost } from "./channel-DRvDqBYj.js";
3
3
  import { s as sanitizeSurrogates } from "./sanitize-unicode-BvtkLirb.js";
4
4
  import { b as buildBaseOptions } from "./transform-messages-CKtg-kNk.js";
5
5
  let toolCallCounter = 0;
@@ -1,4 +1,4 @@
1
- import { aZ as getDefaultExportFromCjs } from "./index-ZWLWkJXc.js";
1
+ import { aZ as getDefaultExportFromCjs } from "./channel-DRvDqBYj.js";
2
2
  import { s as sanitizeSurrogates } from "./sanitize-unicode-BvtkLirb.js";
3
3
  import { t as transformMessages } from "./transform-messages-CKtg-kNk.js";
4
4
  var pRetry$2 = { exports: {} };
@@ -1,5 +1,5 @@
1
- import { i as isThinkingPart, r as retainThoughtSignature, m as mapStopReason, G as GoogleGenAI, c as convertMessages, a as convertTools, b as mapToolChoice, T as ThinkingLevel, R as ResourceScope } from "./google-shared-sAeUdThk.js";
2
- import { aN as clampThinkingLevel, aO as AssistantMessageEventStream, aP as calculateCost } from "./index-ZWLWkJXc.js";
1
+ import { i as isThinkingPart, r as retainThoughtSignature, m as mapStopReason, G as GoogleGenAI, c as convertMessages, a as convertTools, b as mapToolChoice, T as ThinkingLevel, R as ResourceScope } from "./google-shared-BzJ3YIh8.js";
2
+ import { aN as clampThinkingLevel, aO as AssistantMessageEventStream, aP as calculateCost } from "./channel-DRvDqBYj.js";
3
3
  import { s as sanitizeSurrogates } from "./sanitize-unicode-BvtkLirb.js";
4
4
  import { b as buildBaseOptions } from "./transform-messages-CKtg-kNk.js";
5
5
  const API_VERSION = "v1";
@@ -1,5 +1,6 @@
1
- import { l as normalizeLowercaseStringOrEmpty } from "./plugin-load-profile-DOnG9jJ5-zOQuKNoi.js";
2
- import { au as getActivePluginRegistry, i as getRuntimeConfig, av as withPluginHostCleanupTimeout, aw as cleanupPluginSessionSchedulerJobs, ax as makePluginSessionSchedulerJobKey, ay as clearPluginRunContext, az as normalizeSessionEntrySlotKey, aA as resolveAllAgentSessionStoreTargetsSync, aB as updateSessionStore } from "./index-ZWLWkJXc.js";
1
+ import { n as normalizeLowercaseStringOrEmpty } from "./string-coerce-DyL154ka-BEV0SzzS.js";
2
+ import { au as getActivePluginRegistry, i as getRuntimeConfig, av as withPluginHostCleanupTimeout, aw as cleanupPluginSessionSchedulerJobs, ax as makePluginSessionSchedulerJobKey, ay as clearPluginRunContext, az as normalizeSessionEntrySlotKey, aA as resolveAllAgentSessionStoreTargetsSync, aB as updateSessionStore } from "./channel-DRvDqBYj.js";
3
+ import "./plugin-load-profile-DOnG9jJ5-B0ymqOTX.js";
3
4
  import fs__default from "node:fs";
4
5
  function shouldCleanPlugin(pluginId, filterPluginId) {
5
6
  return !filterPluginId || pluginId === filterPluginId;
@@ -1,4 +1,4 @@
1
- import { aZ as getDefaultExportFromCjs } from "./index-ZWLWkJXc.js";
1
+ import { aZ as getDefaultExportFromCjs } from "./channel-DRvDqBYj.js";
2
2
  const WINDOWS_1252_EXTRA = {
3
3
  128: "€",
4
4
  130: "‚",