zidane 6.1.13 → 6.2.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.
- package/dist/{acp-BqfKqQ9x.js → acp-CYJvnqPa.js} +2 -2
- package/dist/{acp-BqfKqQ9x.js.map → acp-CYJvnqPa.js.map} +1 -1
- package/dist/acp-cli.js +4 -4
- package/dist/acp.d.ts +1 -1
- package/dist/acp.js +1 -1
- package/dist/{agent-CZ3WSWqR.js → agent-D11SxCvA.js} +155 -75
- package/dist/agent-D11SxCvA.js.map +1 -0
- package/dist/agent.d.ts +1 -1
- package/dist/agent.js +2 -2
- package/dist/{anthropic-CV_OSYVD.js → anthropic-DdlSgT6K.js} +47 -25
- package/dist/anthropic-DdlSgT6K.js.map +1 -0
- package/dist/{auth-D5FfJtLf.js → auth-Ys_7TmRj.js} +2 -2
- package/dist/{auth-D5FfJtLf.js.map → auth-Ys_7TmRj.js.map} +1 -1
- package/dist/{cache-telemetry-BKAwsNxm.js → cache-telemetry-KJ7B-_Gh.js} +8 -3
- package/dist/cache-telemetry-KJ7B-_Gh.js.map +1 -0
- package/dist/chat/pure.d.ts +3 -3
- package/dist/chat/pure.js +2 -2
- package/dist/chat.d.ts +12 -5
- package/dist/chat.d.ts.map +1 -1
- package/dist/chat.js +7 -7
- package/dist/{completion-core-CXYSVhZo.js → completion-core-BRo86R_L.js} +23 -10
- package/dist/completion-core-BRo86R_L.js.map +1 -0
- package/dist/contexts/daytona.d.ts +1 -1
- package/dist/contexts/e2b.d.ts +1 -1
- package/dist/eval.d.ts +1 -1
- package/dist/extensions.d.ts +2 -2
- package/dist/extensions.js +2 -2
- package/dist/headless.d.ts +1 -1
- package/dist/headless.js +1 -1
- package/dist/{index-X02SI0nt.d.ts → index-CNyYEOy0.d.ts} +351 -42
- package/dist/index-CNyYEOy0.d.ts.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +6 -6
- package/dist/{generate-data-WL_yGVL6.js → inline-autocomplete-BAwBcZtD.js} +191 -6
- package/dist/inline-autocomplete-BAwBcZtD.js.map +1 -0
- package/dist/mcp.d.ts +1 -1
- package/dist/output/stream-json.d.ts +1 -1
- package/dist/output/terminal.d.ts +1 -1
- package/dist/presets.d.ts +1 -1
- package/dist/presets.js +1 -1
- package/dist/providers/anthropic.d.ts +1 -1
- package/dist/providers/anthropic.js +1 -1
- package/dist/providers/arcee.d.ts +1 -1
- package/dist/providers/baseten.d.ts +1 -1
- package/dist/providers/cerebras.d.ts +1 -1
- package/dist/providers/local.d.ts +1 -1
- package/dist/providers/openai-compat.d.ts +1 -1
- package/dist/providers/openai.d.ts +1 -1
- package/dist/providers/openrouter.d.ts +1 -1
- package/dist/providers/xai.d.ts +1 -1
- package/dist/providers.d.ts +1 -1
- package/dist/providers.js +1 -1
- package/dist/restate.d.ts +1 -1
- package/dist/session/sqlite.d.ts +1 -1
- package/dist/session.d.ts +1 -1
- package/dist/skills.d.ts +1 -1
- package/dist/{tool-formatters-kg8O6wHZ.d.ts → tool-formatters-B7oWiy5m.d.ts} +2 -2
- package/dist/tool-formatters-B7oWiy5m.d.ts.map +1 -0
- package/dist/tools/fetch-url.d.ts +1 -1
- package/dist/tools/web-search.d.ts +1 -1
- package/dist/tools.d.ts +1 -1
- package/dist/tools.js +1 -1
- package/dist/{transcript-anchors-DAF4RbyU.d.ts → transcript-anchors-BUZ915pM.d.ts} +2 -2
- package/dist/{transcript-anchors-DAF4RbyU.d.ts.map → transcript-anchors-BUZ915pM.d.ts.map} +1 -1
- package/dist/{transcript-anchors-DAf0Mr_9.js → transcript-anchors-cc4gsU-j.js} +23 -8
- package/dist/transcript-anchors-cc4gsU-j.js.map +1 -0
- package/dist/tui.d.ts +25 -15
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +539 -57
- package/dist/tui.js.map +1 -1
- package/dist/{turn-operations-zkZ1L0eb.d.ts → turn-operations-2Ou_DkbC.d.ts} +3 -3
- package/dist/{turn-operations-zkZ1L0eb.d.ts.map → turn-operations-2Ou_DkbC.d.ts.map} +1 -1
- package/dist/{turn-operations-D9p-y9EC.js → turn-operations-CXjRaltC.js} +72 -2
- package/dist/{turn-operations-D9p-y9EC.js.map → turn-operations-CXjRaltC.js.map} +1 -1
- package/dist/types-BIarq1qE.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/docs/ARCHITECTURE.md +1 -1
- package/docs/EXTENSIONS.md +43 -6
- package/package.json +2 -1
- package/scripts/eval.ts +21 -3
- package/dist/agent-CZ3WSWqR.js.map +0 -1
- package/dist/anthropic-CV_OSYVD.js.map +0 -1
- package/dist/cache-telemetry-BKAwsNxm.js.map +0 -1
- package/dist/completion-core-CXYSVhZo.js.map +0 -1
- package/dist/generate-data-WL_yGVL6.js.map +0 -1
- package/dist/index-X02SI0nt.d.ts.map +0 -1
- package/dist/tool-formatters-kg8O6wHZ.d.ts.map +0 -1
- package/dist/transcript-anchors-DAf0Mr_9.js.map +0 -1
package/dist/acp-cli.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { Ft as resolveStorageDirs, lt as basic_default } from "./agent-
|
|
2
|
+
import { Ft as resolveStorageDirs, lt as basic_default } from "./agent-D11SxCvA.js";
|
|
3
3
|
import { r as createProcessContext } from "./contexts-A4ep-iJs.js";
|
|
4
4
|
import { createSandboxContext } from "./contexts/sandbox.js";
|
|
5
5
|
import { m as openaiCompat } from "./openai-compat-TA7aihJ-.js";
|
|
6
|
-
import { t as anthropic } from "./anthropic-
|
|
6
|
+
import { t as anthropic } from "./anthropic-DdlSgT6K.js";
|
|
7
7
|
import { arcee } from "./providers/arcee.js";
|
|
8
8
|
import { baseten } from "./providers/baseten.js";
|
|
9
9
|
import { cerebras } from "./providers/cerebras.js";
|
|
10
10
|
import { t as xai } from "./xai-kGdhWmds.js";
|
|
11
11
|
import { openai } from "./providers/openai.js";
|
|
12
12
|
import { openrouter } from "./providers/openrouter.js";
|
|
13
|
-
import { d as StartUsageError, f as buildStartLocalOptions, h as startProviderNames, i as withAcpDefaultTools, m as startLocalArgOptions, p as parseStartArgValues, t as runAcpStdioServer } from "./acp-
|
|
14
|
-
import { f as credKeyOf, i as readCredentials, l as BUILTIN_PROVIDERS, r as credentialsPath, t as detectAuth, y as modelsForDescriptor } from "./auth-
|
|
13
|
+
import { d as StartUsageError, f as buildStartLocalOptions, h as startProviderNames, i as withAcpDefaultTools, m as startLocalArgOptions, p as parseStartArgValues, t as runAcpStdioServer } from "./acp-CYJvnqPa.js";
|
|
14
|
+
import { f as credKeyOf, i as readCredentials, l as BUILTIN_PROVIDERS, r as credentialsPath, t as detectAuth, y as modelsForDescriptor } from "./auth-Ys_7TmRj.js";
|
|
15
15
|
import { createDaytonaProvider } from "./contexts/daytona.js";
|
|
16
16
|
import { createDockerContext } from "./contexts/docker.js";
|
|
17
17
|
import { createE2BProvider } from "./contexts/e2b.js";
|
package/dist/acp.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Kf as ToolDef, Li as AgentOptions, Mf as ToolResultContent, Pi as Agent, Vf as TurnUsage, Yp as Provider, bf as SessionContentBlock, df as PromptPart, ef as McpServerConfig, mp as SessionStore, t as Preset, up as Session, zd as AgentBehavior } from "./index-CNyYEOy0.js";
|
|
2
2
|
import { c as ExecutionContext } from "./types-BDccavwj.js";
|
|
3
3
|
import { Readable, Writable } from "node:stream";
|
|
4
4
|
|
package/dist/acp.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { _ as createJsonRpcConnection, a as wrapToolsForAcpClient, c as sessionBlocksToAcp, g as JsonRpcRemoteError, i as withAcpDefaultTools, l as stopReasonFromRun, n as AcpProtocolError, o as acpMcpServersToZidane, r as createAcpServer, s as acpPromptToPromptParts, t as runAcpStdioServer, u as toolResultToAcpContent } from "./acp-
|
|
1
|
+
import { _ as createJsonRpcConnection, a as wrapToolsForAcpClient, c as sessionBlocksToAcp, g as JsonRpcRemoteError, i as withAcpDefaultTools, l as stopReasonFromRun, n as AcpProtocolError, o as acpMcpServersToZidane, r as createAcpServer, s as acpPromptToPromptParts, t as runAcpStdioServer, u as toolResultToAcpContent } from "./acp-CYJvnqPa.js";
|
|
2
2
|
export { AcpProtocolError, JsonRpcRemoteError, acpMcpServersToZidane, acpPromptToPromptParts, createAcpServer, createJsonRpcConnection, runAcpStdioServer, sessionBlocksToAcp, stopReasonFromRun, toolResultToAcpContent, withAcpDefaultTools, wrapToolsForAcpClient };
|
|
@@ -1020,6 +1020,7 @@ function isValidExtensionConfigItem(item) {
|
|
|
1020
1020
|
case "string": return typeof item.default === "string";
|
|
1021
1021
|
case "enum": return typeof item.default === "string" && Array.isArray(item.options) && item.options.length > 0 && item.options.every((o) => o && typeof o.value === "string" && typeof o.label === "string") && item.options.some((o) => o.value === item.default);
|
|
1022
1022
|
case "model": return typeof item.default === "string";
|
|
1023
|
+
case "action": return typeof item.run === "function" && (item.status === void 0 || typeof item.status === "function");
|
|
1023
1024
|
default: return unreachableInvalidItem(item);
|
|
1024
1025
|
}
|
|
1025
1026
|
}
|
|
@@ -1061,6 +1062,7 @@ function isValidExtensionConfigValue(item, value) {
|
|
|
1061
1062
|
case "model":
|
|
1062
1063
|
if (typeof value !== "string") return false;
|
|
1063
1064
|
break;
|
|
1065
|
+
case "action": return false;
|
|
1064
1066
|
default: return unreachableInvalidItem(item);
|
|
1065
1067
|
}
|
|
1066
1068
|
if (item.validate) try {
|
|
@@ -1070,13 +1072,8 @@ function isValidExtensionConfigValue(item, value) {
|
|
|
1070
1072
|
}
|
|
1071
1073
|
return true;
|
|
1072
1074
|
}
|
|
1073
|
-
/**
|
|
1074
|
-
* Resolve the effective value of a config item from its persisted value.
|
|
1075
|
-
* THE single place graceful degradation lives: a `persisted` that's
|
|
1076
|
-
* `undefined` (never set) OR fails {@link isValidExtensionConfigValue}
|
|
1077
|
-
* collapses to `item.default`.
|
|
1078
|
-
*/
|
|
1079
1075
|
function resolveExtensionConfigValue(item, persisted) {
|
|
1076
|
+
if (item.type === "action") return void 0;
|
|
1080
1077
|
if (persisted === void 0) return item.default;
|
|
1081
1078
|
if (!isValidExtensionConfigValue(item, persisted)) return item.default;
|
|
1082
1079
|
return persisted;
|
|
@@ -1131,15 +1128,46 @@ function resolveExtensionConfig(registry, settings, extName, key) {
|
|
|
1131
1128
|
return resolveExtensionConfigValue(item, settings?.extensionConfig?.[extName]?.[key]);
|
|
1132
1129
|
}
|
|
1133
1130
|
/**
|
|
1131
|
+
* Gate the `config` patch an action returned before the host persists it.
|
|
1132
|
+
* Per-entry, an item is accepted only when it names a registered VALUE
|
|
1133
|
+
* item of the declaring extension and passes that item's schema
|
|
1134
|
+
* ({@link isValidExtensionConfigValue}); everything else lands in
|
|
1135
|
+
* `rejected` for logging. Pure — the host applies `accepted` through its
|
|
1136
|
+
* own settings write path.
|
|
1137
|
+
*/
|
|
1138
|
+
function sanitizeExtensionConfigActionPatch(items, patch) {
|
|
1139
|
+
const accepted = {};
|
|
1140
|
+
const rejected = [];
|
|
1141
|
+
if (!patch || typeof patch !== "object") return {
|
|
1142
|
+
accepted,
|
|
1143
|
+
rejected
|
|
1144
|
+
};
|
|
1145
|
+
for (const [key, value] of Object.entries(patch)) {
|
|
1146
|
+
const item = items?.[key];
|
|
1147
|
+
if (!item || item.type === "action" || !isValidExtensionConfigValue(item, value)) {
|
|
1148
|
+
rejected.push(key);
|
|
1149
|
+
continue;
|
|
1150
|
+
}
|
|
1151
|
+
accepted[key] = value;
|
|
1152
|
+
}
|
|
1153
|
+
return {
|
|
1154
|
+
accepted,
|
|
1155
|
+
rejected
|
|
1156
|
+
};
|
|
1157
|
+
}
|
|
1158
|
+
/**
|
|
1134
1159
|
* Project the merged registry's config schema into a wire-safe shape:
|
|
1135
1160
|
* categories as a flat array, items flattened to a single list carrying
|
|
1136
1161
|
* their `extension` + `category`, with the non-serializable `validate`
|
|
1137
|
-
* callback stripped.
|
|
1138
|
-
*
|
|
1162
|
+
* callback stripped. Action items are omitted entirely — their `run`
|
|
1163
|
+
* callback only exists in the main process, so a remote renderer (the
|
|
1164
|
+
* GUI) has nothing it could do with the row. Pure — factored out so its
|
|
1165
|
+
* serialization is unit testable without an Electron / IPC harness.
|
|
1139
1166
|
*/
|
|
1140
1167
|
function toWireConfigSchema(registry) {
|
|
1141
1168
|
const items = [];
|
|
1142
1169
|
for (const [extension, byKey] of Object.entries(registry.configItems)) for (const stored of Object.values(byKey)) {
|
|
1170
|
+
if (stored.type === "action") continue;
|
|
1143
1171
|
const { validate: _validate, ...rest } = stored;
|
|
1144
1172
|
items.push({
|
|
1145
1173
|
...rest,
|
|
@@ -1309,8 +1337,12 @@ function findEntryFile(dir) {
|
|
|
1309
1337
|
return null;
|
|
1310
1338
|
}
|
|
1311
1339
|
/**
|
|
1312
|
-
* Discover + load every
|
|
1313
|
-
*
|
|
1340
|
+
* Discover + load every trusted extension reachable from the default
|
|
1341
|
+
* scan paths — including ones the user's enable allowlist has toggled
|
|
1342
|
+
* OFF. Disabled extensions still import (and later run `setup()`) so
|
|
1343
|
+
* their config schema is browsable in Settings before enabling; the
|
|
1344
|
+
* allowlist gates their CONTRIBUTIONS at registry level, not their code.
|
|
1345
|
+
* The trust boundary stays with `trustProjectExtensions`. Returns one {@link LoadedExtension} per scan entry:
|
|
1314
1346
|
* skipped entries have no definition, failed entries carry `error`.
|
|
1315
1347
|
* Loaders never throw — the host can decide what to do with load errors
|
|
1316
1348
|
* (typically: ship them to the Settings panel).
|
|
@@ -1343,22 +1375,11 @@ async function discoverExtensions(opts = {}) {
|
|
|
1343
1375
|
}));
|
|
1344
1376
|
}
|
|
1345
1377
|
function selectExtensionEntries(entries, opts) {
|
|
1346
|
-
const enabled = opts.enabled === void 0 ? null : new Set(opts.enabled);
|
|
1347
1378
|
const trustProjectExtensions = opts.trustProjectExtensions ?? process.env.ZIDANE_TRUST_PROJECT_EXTENSIONS === "1";
|
|
1348
1379
|
const selected = /* @__PURE__ */ new Map();
|
|
1349
1380
|
const locked = /* @__PURE__ */ new Set();
|
|
1350
1381
|
for (const entry of entries) {
|
|
1351
1382
|
if (locked.has(entry.name)) continue;
|
|
1352
|
-
if (enabled && !enabled.has(entry.name)) {
|
|
1353
|
-
selected.set(entry.name, {
|
|
1354
|
-
name: entry.name,
|
|
1355
|
-
dir: entry.dir,
|
|
1356
|
-
source: entry.source,
|
|
1357
|
-
...entry.manifest ? { manifest: entry.manifest } : {}
|
|
1358
|
-
});
|
|
1359
|
-
locked.add(entry.name);
|
|
1360
|
-
continue;
|
|
1361
|
-
}
|
|
1362
1383
|
if (entry.source === "project" && !trustProjectExtensions) {
|
|
1363
1384
|
if (!selected.has(entry.name)) selected.set(entry.name, {
|
|
1364
1385
|
name: entry.name,
|
|
@@ -5956,10 +5977,7 @@ async function buildExtensionRegistry(loaded, options = {}) {
|
|
|
5956
5977
|
continue;
|
|
5957
5978
|
}
|
|
5958
5979
|
extensionNameOwners.add(entry.name);
|
|
5959
|
-
|
|
5960
|
-
inactive.push(entry);
|
|
5961
|
-
continue;
|
|
5962
|
-
}
|
|
5980
|
+
const isDisabled = disabled.has(entry.name);
|
|
5963
5981
|
const logger = createLogger(sink, { extension: entry.name });
|
|
5964
5982
|
const gate = { open: true };
|
|
5965
5983
|
const perExtSinks = {
|
|
@@ -5979,6 +5997,7 @@ async function buildExtensionRegistry(loaded, options = {}) {
|
|
|
5979
5997
|
skillPolicies: [],
|
|
5980
5998
|
promptTransforms: [],
|
|
5981
5999
|
completionProviders: [],
|
|
6000
|
+
inlineAutocompleteProviders: [],
|
|
5982
6001
|
commands: [],
|
|
5983
6002
|
themes: createRecord(),
|
|
5984
6003
|
agents: createRecord(),
|
|
@@ -5995,7 +6014,7 @@ async function buildExtensionRegistry(loaded, options = {}) {
|
|
|
5995
6014
|
guiPanels: []
|
|
5996
6015
|
};
|
|
5997
6016
|
const abort = new AbortController();
|
|
5998
|
-
const hudWriter = options.hud?.claim(entry.name);
|
|
6017
|
+
const hudWriter = isDisabled ? void 0 : options.hud?.claim(entry.name);
|
|
5999
6018
|
if (hudWriter) hudWriters.push(hudWriter);
|
|
6000
6019
|
const ctx = makeContext({
|
|
6001
6020
|
definition: entry.definition,
|
|
@@ -6005,10 +6024,11 @@ async function buildExtensionRegistry(loaded, options = {}) {
|
|
|
6005
6024
|
gate,
|
|
6006
6025
|
signal: abort.signal,
|
|
6007
6026
|
sinks: perExtSinks,
|
|
6027
|
+
disabled: isDisabled,
|
|
6008
6028
|
...options.readSettings !== void 0 ? { readSettings: options.readSettings } : {},
|
|
6009
6029
|
...hudWriter !== void 0 ? { hudWriter } : {},
|
|
6010
|
-
|
|
6011
|
-
|
|
6030
|
+
...!isDisabled && options.promptBridge !== void 0 ? { promptBridge: options.promptBridge } : {},
|
|
6031
|
+
...!isDisabled && options.hostRuntime !== void 0 ? { hostRuntime: options.hostRuntime } : {},
|
|
6012
6032
|
paths: resolveContextPaths(options)
|
|
6013
6033
|
});
|
|
6014
6034
|
candidates.push({
|
|
@@ -6021,7 +6041,8 @@ async function buildExtensionRegistry(loaded, options = {}) {
|
|
|
6021
6041
|
abort,
|
|
6022
6042
|
sinks: perExtSinks,
|
|
6023
6043
|
ctx,
|
|
6024
|
-
setupTimeoutMs
|
|
6044
|
+
setupTimeoutMs,
|
|
6045
|
+
disabled: isDisabled
|
|
6025
6046
|
});
|
|
6026
6047
|
}
|
|
6027
6048
|
const settled = await Promise.all(candidates.map(setupExtension));
|
|
@@ -6032,6 +6053,14 @@ async function buildExtensionRegistry(loaded, options = {}) {
|
|
|
6032
6053
|
for (const result of settled) {
|
|
6033
6054
|
const { entry, logger, sinks: perExtSinks } = result.candidate;
|
|
6034
6055
|
if (result.ok) {
|
|
6056
|
+
if (result.candidate.disabled) {
|
|
6057
|
+
inactive.push({
|
|
6058
|
+
...entry,
|
|
6059
|
+
contributions: captureContributions(perExtSinks),
|
|
6060
|
+
setupRan: true
|
|
6061
|
+
});
|
|
6062
|
+
continue;
|
|
6063
|
+
}
|
|
6035
6064
|
for (const binding of perExtSinks.keybindings) {
|
|
6036
6065
|
const idOwner = keybindingIdOwners.get(binding.id);
|
|
6037
6066
|
if (idOwner === entry.name) {
|
|
@@ -6082,49 +6111,19 @@ async function buildExtensionRegistry(loaded, options = {}) {
|
|
|
6082
6111
|
}
|
|
6083
6112
|
for (const renderer of perExtSinks.renderers) if (rendererIdOwners.get(renderer.id)) logger.warn("duplicate renderer id — the earlier registration wins", { id: renderer.id });
|
|
6084
6113
|
else rendererIdOwners.set(renderer.id, entry.name);
|
|
6085
|
-
const contributions = {
|
|
6086
|
-
tools: perExtSinks.tools,
|
|
6087
|
-
hooks: perExtSinks.hooks,
|
|
6088
|
-
mcpServers: perExtSinks.mcpServers,
|
|
6089
|
-
skills: perExtSinks.skills,
|
|
6090
|
-
systemFragments: perExtSinks.systemFragments,
|
|
6091
|
-
contextBreakdownSections: perExtSinks.contextBreakdownSections,
|
|
6092
|
-
contextPanelSections: perExtSinks.contextPanelSections,
|
|
6093
|
-
toolResultMetadata: perExtSinks.toolResultMetadata,
|
|
6094
|
-
runTransforms: perExtSinks.runTransforms,
|
|
6095
|
-
behaviorTransforms: perExtSinks.behaviorTransforms,
|
|
6096
|
-
providerMiddlewares: perExtSinks.providerMiddlewares,
|
|
6097
|
-
toolCatalogTransforms: perExtSinks.toolCatalogTransforms,
|
|
6098
|
-
mcpConfigTransforms: perExtSinks.mcpConfigTransforms,
|
|
6099
|
-
skillPolicies: perExtSinks.skillPolicies,
|
|
6100
|
-
promptTransforms: perExtSinks.promptTransforms,
|
|
6101
|
-
completionProviders: perExtSinks.completionProviders,
|
|
6102
|
-
commands: perExtSinks.commands,
|
|
6103
|
-
themes: perExtSinks.themes,
|
|
6104
|
-
agents: perExtSinks.agents,
|
|
6105
|
-
providers: perExtSinks.providers,
|
|
6106
|
-
subagents: perExtSinks.subagents,
|
|
6107
|
-
subagentOverrides: perExtSinks.subagentOverrides,
|
|
6108
|
-
configCategories: perExtSinks.configCategories,
|
|
6109
|
-
configItems: perExtSinks.configItems,
|
|
6110
|
-
tui: {
|
|
6111
|
-
keybindings: perExtSinks.keybindings,
|
|
6112
|
-
footerHints: perExtSinks.footerHints,
|
|
6113
|
-
modals: perExtSinks.modals,
|
|
6114
|
-
renderers: perExtSinks.renderers,
|
|
6115
|
-
toolRenderers: perExtSinks.toolRenderers
|
|
6116
|
-
},
|
|
6117
|
-
gui: { panels: perExtSinks.guiPanels }
|
|
6118
|
-
};
|
|
6119
6114
|
active.push({
|
|
6120
6115
|
...entry,
|
|
6121
|
-
contributions,
|
|
6116
|
+
contributions: captureContributions(perExtSinks),
|
|
6122
6117
|
setupRan: true
|
|
6123
6118
|
});
|
|
6124
6119
|
} else {
|
|
6125
6120
|
const message = result.error;
|
|
6126
6121
|
logger.error("setup threw", { error: message });
|
|
6127
|
-
inactive.push({
|
|
6122
|
+
if (result.candidate.disabled) inactive.push({
|
|
6123
|
+
...entry,
|
|
6124
|
+
setupRan: true
|
|
6125
|
+
});
|
|
6126
|
+
else inactive.push({
|
|
6128
6127
|
...entry,
|
|
6129
6128
|
error: message,
|
|
6130
6129
|
setupRan: true
|
|
@@ -6139,6 +6138,44 @@ async function buildExtensionRegistry(loaded, options = {}) {
|
|
|
6139
6138
|
await disposeLoadedExtensions([...active, ...inactive], sink);
|
|
6140
6139
|
} });
|
|
6141
6140
|
}
|
|
6141
|
+
/** Freeze one extension's sinks into its `contributions` snapshot. */
|
|
6142
|
+
function captureContributions(perExtSinks) {
|
|
6143
|
+
return {
|
|
6144
|
+
tools: perExtSinks.tools,
|
|
6145
|
+
hooks: perExtSinks.hooks,
|
|
6146
|
+
mcpServers: perExtSinks.mcpServers,
|
|
6147
|
+
skills: perExtSinks.skills,
|
|
6148
|
+
systemFragments: perExtSinks.systemFragments,
|
|
6149
|
+
contextBreakdownSections: perExtSinks.contextBreakdownSections,
|
|
6150
|
+
contextPanelSections: perExtSinks.contextPanelSections,
|
|
6151
|
+
toolResultMetadata: perExtSinks.toolResultMetadata,
|
|
6152
|
+
runTransforms: perExtSinks.runTransforms,
|
|
6153
|
+
behaviorTransforms: perExtSinks.behaviorTransforms,
|
|
6154
|
+
providerMiddlewares: perExtSinks.providerMiddlewares,
|
|
6155
|
+
toolCatalogTransforms: perExtSinks.toolCatalogTransforms,
|
|
6156
|
+
mcpConfigTransforms: perExtSinks.mcpConfigTransforms,
|
|
6157
|
+
skillPolicies: perExtSinks.skillPolicies,
|
|
6158
|
+
promptTransforms: perExtSinks.promptTransforms,
|
|
6159
|
+
completionProviders: perExtSinks.completionProviders,
|
|
6160
|
+
inlineAutocompleteProviders: perExtSinks.inlineAutocompleteProviders,
|
|
6161
|
+
commands: perExtSinks.commands,
|
|
6162
|
+
themes: perExtSinks.themes,
|
|
6163
|
+
agents: perExtSinks.agents,
|
|
6164
|
+
providers: perExtSinks.providers,
|
|
6165
|
+
subagents: perExtSinks.subagents,
|
|
6166
|
+
subagentOverrides: perExtSinks.subagentOverrides,
|
|
6167
|
+
configCategories: perExtSinks.configCategories,
|
|
6168
|
+
configItems: perExtSinks.configItems,
|
|
6169
|
+
tui: {
|
|
6170
|
+
keybindings: perExtSinks.keybindings,
|
|
6171
|
+
footerHints: perExtSinks.footerHints,
|
|
6172
|
+
modals: perExtSinks.modals,
|
|
6173
|
+
renderers: perExtSinks.renderers,
|
|
6174
|
+
toolRenderers: perExtSinks.toolRenderers
|
|
6175
|
+
},
|
|
6176
|
+
gui: { panels: perExtSinks.guiPanels }
|
|
6177
|
+
};
|
|
6178
|
+
}
|
|
6142
6179
|
async function setupExtension(candidate) {
|
|
6143
6180
|
const timeoutMessage = `setup timed out after ${candidate.setupTimeoutMs}ms`;
|
|
6144
6181
|
try {
|
|
@@ -6197,6 +6234,8 @@ function mergeContributions(active, inactive = [], options = {}) {
|
|
|
6197
6234
|
const skillPolicies = [];
|
|
6198
6235
|
const promptTransforms = [];
|
|
6199
6236
|
const completionProviders = [];
|
|
6237
|
+
const inlineAutocompleteProviders = [];
|
|
6238
|
+
const seenInlineAutocompleteIds = /* @__PURE__ */ new Set();
|
|
6200
6239
|
const commands = [];
|
|
6201
6240
|
const seenCommandNames = /* @__PURE__ */ new Set();
|
|
6202
6241
|
const themes = createRecord();
|
|
@@ -6237,11 +6276,20 @@ function mergeContributions(active, inactive = [], options = {}) {
|
|
|
6237
6276
|
skillPolicies.push(...c.skillPolicies);
|
|
6238
6277
|
promptTransforms.push(...c.promptTransforms);
|
|
6239
6278
|
completionProviders.push(...c.completionProviders);
|
|
6279
|
+
for (const provider of c.inlineAutocompleteProviders) {
|
|
6280
|
+
if (seenInlineAutocompleteIds.has(provider.id)) continue;
|
|
6281
|
+
seenInlineAutocompleteIds.add(provider.id);
|
|
6282
|
+
inlineAutocompleteProviders.push(provider);
|
|
6283
|
+
}
|
|
6240
6284
|
for (const command of c.commands) {
|
|
6241
6285
|
const key = command.name.toLowerCase();
|
|
6242
6286
|
if (seenCommandNames.has(key)) continue;
|
|
6243
6287
|
seenCommandNames.add(key);
|
|
6244
|
-
|
|
6288
|
+
for (const alias of command.aliases ?? []) seenCommandNames.add(alias.toLowerCase());
|
|
6289
|
+
commands.push(command.group === void 0 ? {
|
|
6290
|
+
...command,
|
|
6291
|
+
group: entry.name
|
|
6292
|
+
} : command);
|
|
6245
6293
|
}
|
|
6246
6294
|
Object.assign(themes, c.themes);
|
|
6247
6295
|
Object.assign(agents, c.agents);
|
|
@@ -6272,6 +6320,16 @@ function mergeContributions(active, inactive = [], options = {}) {
|
|
|
6272
6320
|
toolRenderers.push(...c.tui.toolRenderers);
|
|
6273
6321
|
guiPanels.push(...c.gui.panels);
|
|
6274
6322
|
}
|
|
6323
|
+
for (const entry of inactive) {
|
|
6324
|
+
const c = entry.contributions;
|
|
6325
|
+
if (entry.error || !c) continue;
|
|
6326
|
+
for (const [id, category] of Object.entries(c.configCategories)) if (!(id in configCategories)) configCategories[id] = category;
|
|
6327
|
+
if (Object.keys(c.configItems).length > 0 && !(entry.name in configItems)) {
|
|
6328
|
+
const items = createRecord();
|
|
6329
|
+
Object.assign(items, c.configItems);
|
|
6330
|
+
configItems[entry.name] = items;
|
|
6331
|
+
}
|
|
6332
|
+
}
|
|
6275
6333
|
return {
|
|
6276
6334
|
loaded: active,
|
|
6277
6335
|
inactive,
|
|
@@ -6291,6 +6349,7 @@ function mergeContributions(active, inactive = [], options = {}) {
|
|
|
6291
6349
|
skillPolicies,
|
|
6292
6350
|
promptTransforms,
|
|
6293
6351
|
completionProviders,
|
|
6352
|
+
inlineAutocompleteProviders,
|
|
6294
6353
|
commands,
|
|
6295
6354
|
themes,
|
|
6296
6355
|
agents,
|
|
@@ -6417,7 +6476,7 @@ function partitionExtensionCatalog(loaded, inactive) {
|
|
|
6417
6476
|
};
|
|
6418
6477
|
}
|
|
6419
6478
|
function makeContext(opts) {
|
|
6420
|
-
const { definition, source, dir, logger, gate, signal, sinks, readSettings, paths, hudWriter, promptBridge, hostRuntime } = opts;
|
|
6479
|
+
const { definition, source, dir, logger, gate, signal, sinks, readSettings, paths, hudWriter, promptBridge, hostRuntime, disabled = false } = opts;
|
|
6421
6480
|
function guardOpen(method) {
|
|
6422
6481
|
if (gate.open) return true;
|
|
6423
6482
|
logger.warn("registration after setup() resolved — call ignored", { method });
|
|
@@ -6484,6 +6543,18 @@ function makeContext(opts) {
|
|
|
6484
6543
|
}
|
|
6485
6544
|
sinks.completionProviders.push(provider);
|
|
6486
6545
|
};
|
|
6546
|
+
const registerInlineAutocompleteProvider = (provider) => {
|
|
6547
|
+
if (!guardOpen("registerInlineAutocompleteProvider")) return;
|
|
6548
|
+
if (!provider || typeof provider.id !== "string" || provider.id.length === 0) {
|
|
6549
|
+
logger.warn("registerInlineAutocompleteProvider: missing id");
|
|
6550
|
+
return;
|
|
6551
|
+
}
|
|
6552
|
+
if (typeof provider.suggest !== "function") {
|
|
6553
|
+
logger.warn("registerInlineAutocompleteProvider: needs a suggest()", { id: provider.id });
|
|
6554
|
+
return;
|
|
6555
|
+
}
|
|
6556
|
+
sinks.inlineAutocompleteProviders.push(provider);
|
|
6557
|
+
};
|
|
6487
6558
|
const registerCommand = (command) => {
|
|
6488
6559
|
if (!guardOpen("registerCommand")) return;
|
|
6489
6560
|
if (!command || typeof command.name !== "string" || command.name.length === 0) {
|
|
@@ -6498,6 +6569,12 @@ function makeContext(opts) {
|
|
|
6498
6569
|
logger.warn("registerCommand: needs a run() or a non-empty steps[]", { name: command.name });
|
|
6499
6570
|
return;
|
|
6500
6571
|
}
|
|
6572
|
+
if (command.aliases !== void 0) {
|
|
6573
|
+
if (!Array.isArray(command.aliases) || command.aliases.some((a) => typeof a !== "string" || a.length === 0 || /\s/.test(a) || a.startsWith("/"))) {
|
|
6574
|
+
logger.warn("registerCommand: aliases must be single tokens without a leading slash", { name: command.name });
|
|
6575
|
+
return;
|
|
6576
|
+
}
|
|
6577
|
+
}
|
|
6501
6578
|
sinks.commands.push(command);
|
|
6502
6579
|
};
|
|
6503
6580
|
const registerTheme = (theme) => {
|
|
@@ -6949,6 +7026,7 @@ function makeContext(opts) {
|
|
|
6949
7026
|
registerMcpServer,
|
|
6950
7027
|
registerSkill,
|
|
6951
7028
|
registerCompletionProvider,
|
|
7029
|
+
registerInlineAutocompleteProvider,
|
|
6952
7030
|
registerCommand,
|
|
6953
7031
|
registerTheme,
|
|
6954
7032
|
registerAgent,
|
|
@@ -6972,6 +7050,7 @@ function makeContext(opts) {
|
|
|
6972
7050
|
registerConfigCategory,
|
|
6973
7051
|
registerConfigItem,
|
|
6974
7052
|
config: configSurface,
|
|
7053
|
+
disabled,
|
|
6975
7054
|
tui: {
|
|
6976
7055
|
registerKeybinding,
|
|
6977
7056
|
registerFooterHint,
|
|
@@ -7038,9 +7117,7 @@ function resolveContextPaths(options) {
|
|
|
7038
7117
|
*
|
|
7039
7118
|
* The `disabled` set honors the allowlist for inline extensions too:
|
|
7040
7119
|
* the TUI treats inline as toggleable everywhere else (Settings tab,
|
|
7041
|
-
* live filtering), so
|
|
7042
|
-
* `setup()` here would leak its providers / agents / themes into the
|
|
7043
|
-
* registry anyway.
|
|
7120
|
+
* live filtering), so both ride the same inactive-classification path.
|
|
7044
7121
|
*/
|
|
7045
7122
|
async function discoverAndBuildExtensionRegistry(opts = {}) {
|
|
7046
7123
|
const candidates = [...await discoverExtensions({
|
|
@@ -7048,7 +7125,6 @@ async function discoverAndBuildExtensionRegistry(opts = {}) {
|
|
|
7048
7125
|
...opts.home !== void 0 ? { home: opts.home } : {},
|
|
7049
7126
|
...opts.prefix !== void 0 ? { prefix: opts.prefix } : {},
|
|
7050
7127
|
...opts.extensionScanPaths !== void 0 ? { extensionScanPaths: opts.extensionScanPaths } : {},
|
|
7051
|
-
...opts.enabledAllowlist !== void 0 ? { enabled: opts.enabledAllowlist } : {},
|
|
7052
7128
|
...opts.trustProjectExtensions !== void 0 ? { trustProjectExtensions: opts.trustProjectExtensions } : {},
|
|
7053
7129
|
...opts.signal !== void 0 ? { signal: opts.signal } : {}
|
|
7054
7130
|
}), ...opts.inlineExtensions ?? []];
|
|
@@ -7638,6 +7714,7 @@ const EMPTY_EXTENSION_REGISTRY = Object.freeze({
|
|
|
7638
7714
|
skillPolicies: Object.freeze([]),
|
|
7639
7715
|
promptTransforms: Object.freeze([]),
|
|
7640
7716
|
completionProviders: Object.freeze([]),
|
|
7717
|
+
inlineAutocompleteProviders: Object.freeze([]),
|
|
7641
7718
|
commands: Object.freeze([]),
|
|
7642
7719
|
themes: Object.freeze({}),
|
|
7643
7720
|
agents: Object.freeze({}),
|
|
@@ -10819,7 +10896,7 @@ async function executeTurn(ctx, turn, priorUsage) {
|
|
|
10819
10896
|
sanitizedMessages = aged.messages;
|
|
10820
10897
|
markReadStateForElidedPaths(ctx, ctx.handle.cwd, aged.elidedReadPaths);
|
|
10821
10898
|
}
|
|
10822
|
-
const effectiveThinkingBudget = applyThinkingDecay(ctx.thinkingBudget, ctx.thinkingDecay, turn);
|
|
10899
|
+
const effectiveThinkingBudget = ctx.thinking === "adaptive" && ctx.provider.meta.capabilities?.adaptiveBudgetIsEnvelope === true ? ctx.thinkingBudget : applyThinkingDecay(ctx.thinkingBudget, ctx.thinkingDecay, turn + 1);
|
|
10823
10900
|
const formattedTools = ctx.rebuildFormattedTools ? ctx.rebuildFormattedTools(ctx.provider) : ctx.formattedTools;
|
|
10824
10901
|
const streamOptions = {
|
|
10825
10902
|
model: ctx.model,
|
|
@@ -10829,6 +10906,7 @@ async function executeTurn(ctx, turn, priorUsage) {
|
|
|
10829
10906
|
maxTokens: ctx.maxTokens,
|
|
10830
10907
|
thinking: ctx.thinking,
|
|
10831
10908
|
thinkingBudget: effectiveThinkingBudget,
|
|
10909
|
+
...ctx.taskBudget !== void 0 ? { taskBudget: ctx.taskBudget } : {},
|
|
10832
10910
|
...ctx.modelOptions ? { modelOptions: ctx.modelOptions } : {},
|
|
10833
10911
|
cache: ctx.cache ?? true,
|
|
10834
10912
|
signal: ctx.signal
|
|
@@ -12802,6 +12880,7 @@ function resolveBehavior(agentBehavior, runBehavior) {
|
|
|
12802
12880
|
destroyTimeoutMs: runBehavior?.destroyTimeoutMs ?? agentBehavior?.destroyTimeoutMs,
|
|
12803
12881
|
maxTokens: runBehavior?.maxTokens ?? agentBehavior?.maxTokens,
|
|
12804
12882
|
thinkingBudget: runBehavior?.thinkingBudget ?? agentBehavior?.thinkingBudget,
|
|
12883
|
+
taskBudget: runBehavior?.taskBudget ?? agentBehavior?.taskBudget,
|
|
12805
12884
|
thinkingOverrunPolicy: runBehavior?.thinkingOverrunPolicy ?? agentBehavior?.thinkingOverrunPolicy,
|
|
12806
12885
|
modelOptions: runBehavior?.modelOptions ?? agentBehavior?.modelOptions,
|
|
12807
12886
|
schema: runBehavior?.schema ?? agentBehavior?.schema,
|
|
@@ -13687,7 +13766,7 @@ function createAgent(rawOptions) {
|
|
|
13687
13766
|
const thinking = options.thinking ?? "off";
|
|
13688
13767
|
const model = targets[0].model;
|
|
13689
13768
|
if (runProvider.meta?.clearsContextServerSide) resolvedBehavior.dedupReads = false;
|
|
13690
|
-
const { maxConcurrentTools, toolBatchExecutor, toolBatchTimeoutMs, shouldRethrowToolError, maxTurns, maxTurnsWarning, maxTurnsWarningMessage, maxCostUsd, maxTotalTokens, maxWallMs, providerStreamStartTimeoutMs, providerStreamTimeoutMs, maxTokens, retry, thinkingBudget, thinkingOverrunPolicy, modelOptions: behaviorModelOptions, schema, cache, toolOutputBudget, toolOutputBudgetExcludeTools, compactStrategy, compactThreshold, compactKeepTurns, thinkingDecay, writeFileExistingPolicy, textToolCallRescue, unknownToolRecovery, progressNudges, dedupTools, toolBudgets, repeatGuard, elideStaleReads, mediaKeepTurns, autoCompact, toolDisclosure, mcpToolNameSeparator, toolSearch, surfaceMcpInstructions, persistThreshold, persistExcludeTools, persistDir, persistMaxBytes, strictToolPairing, maxPairingRepairsPerTurn, maxConsecutivePauseTurns, resumeOnMaxTokens, persistTurns } = resolvedBehavior;
|
|
13769
|
+
const { maxConcurrentTools, toolBatchExecutor, toolBatchTimeoutMs, shouldRethrowToolError, maxTurns, maxTurnsWarning, maxTurnsWarningMessage, maxCostUsd, maxTotalTokens, maxWallMs, providerStreamStartTimeoutMs, providerStreamTimeoutMs, maxTokens, retry, thinkingBudget, taskBudget, thinkingOverrunPolicy, modelOptions: behaviorModelOptions, schema, cache, toolOutputBudget, toolOutputBudgetExcludeTools, compactStrategy, compactThreshold, compactKeepTurns, thinkingDecay, writeFileExistingPolicy, textToolCallRescue, unknownToolRecovery, progressNudges, dedupTools, toolBudgets, repeatGuard, elideStaleReads, mediaKeepTurns, autoCompact, toolDisclosure, mcpToolNameSeparator, toolSearch, surfaceMcpInstructions, persistThreshold, persistExcludeTools, persistDir, persistMaxBytes, strictToolPairing, maxPairingRepairsPerTurn, maxConsecutivePauseTurns, resumeOnMaxTokens, persistTurns } = resolvedBehavior;
|
|
13691
13770
|
const modelOptions = options.modelOptions ?? behaviorModelOptions;
|
|
13692
13771
|
let system = options.system || agentSystem || "You are a helpful assistant.";
|
|
13693
13772
|
const baseSystemForBreakdown = renderSystemForWire(system);
|
|
@@ -14113,6 +14192,7 @@ function createAgent(rawOptions) {
|
|
|
14113
14192
|
...options.parentRunId ? { parentRunId: options.parentRunId } : {},
|
|
14114
14193
|
depth: runDepth,
|
|
14115
14194
|
thinkingBudget,
|
|
14195
|
+
...taskBudget !== void 0 ? { taskBudget } : {},
|
|
14116
14196
|
...modelOptions ? { modelOptions } : {},
|
|
14117
14197
|
schema,
|
|
14118
14198
|
cache,
|
|
@@ -14714,6 +14794,6 @@ function createAgent(rawOptions) {
|
|
|
14714
14794
|
};
|
|
14715
14795
|
}
|
|
14716
14796
|
//#endregion
|
|
14717
|
-
export { composeExtensionPreset as $, discoverExtensions as $t, ANCHOR_PREVIEW_MAX_CHARS as A, createInteractionTool as At, ExtensionInstallError as B, ensureKeybindingsFile as Bt, NO_TOOLS_PREAMBLE as C, readFile$1 as Ct, buildFullCompactPrompt as D, formatModelLine as Dt, buildFromCompactPrompt as E, createModelSearchTool as Et, truncateHeadForPtlRetry as F, resolveStorageDirs as Ft, readExtensionInstallProvenance as G, mergeKeybindings as Gt, installExtensionFromSpec as H, groupBindings as Ht, CompactInvalidInputError as I, DEFAULT_KEYBINDINGS as It, createExtensionHud as J, readKeybindingsRaw as Jt, removeInstalledExtension as K, parseBindingSpec as Kt, CompactPromptTooLongError as L, KEYBINDING_DEFS as Lt, sliceForCompaction as M, glob as Mt, stripImagesFromTurns as N, edit as Nt, buildTailCompactPrompt as O, matchModelEntries as Ot, summaryToTurn as P, validateToolArgs as Pt, buildExtensionRegistry as Q, defaultExtensionScanPaths as Qt, EMPTY_EXTENSION_REGISTRY as R, KEYBINDING_DEF_BY_ACTION as Rt, BASE_INSTRUCTIONS as S, tailTruncate as St, buildCompactPrompt as T, multiEdit as Tt, listExtensionCandidates as U, keybindingsPath as Ut, fetchExtensionSource as V, formatBindingForDisplay as Vt, parseExtensionInstallSource as W, matchesBinding as Wt, discoverAndBuildExtensionRegistry as X, stripJsonComments as Xt, registerExtensionHostModules as Y, resolveExtensionKeybindings as Yt, buildExtensionPreset as Z, ENTRY_CANDIDATES as Zt, buildPostCompactAttachments as _,
|
|
14797
|
+
export { composeExtensionPreset as $, discoverExtensions as $t, ANCHOR_PREVIEW_MAX_CHARS as A, createInteractionTool as At, ExtensionInstallError as B, ensureKeybindingsFile as Bt, NO_TOOLS_PREAMBLE as C, readFile$1 as Ct, buildFullCompactPrompt as D, formatModelLine as Dt, buildFromCompactPrompt as E, createModelSearchTool as Et, truncateHeadForPtlRetry as F, resolveStorageDirs as Ft, readExtensionInstallProvenance as G, mergeKeybindings as Gt, installExtensionFromSpec as H, groupBindings as Ht, CompactInvalidInputError as I, DEFAULT_KEYBINDINGS as It, createExtensionHud as J, readKeybindingsRaw as Jt, removeInstalledExtension as K, parseBindingSpec as Kt, CompactPromptTooLongError as L, KEYBINDING_DEFS as Lt, sliceForCompaction as M, glob as Mt, stripImagesFromTurns as N, edit as Nt, buildTailCompactPrompt as O, matchModelEntries as Ot, summaryToTurn as P, validateToolArgs as Pt, buildExtensionRegistry as Q, defaultExtensionScanPaths as Qt, EMPTY_EXTENSION_REGISTRY as R, KEYBINDING_DEF_BY_ACTION as Rt, BASE_INSTRUCTIONS as S, tailTruncate as St, buildCompactPrompt as T, multiEdit as Tt, listExtensionCandidates as U, keybindingsPath as Ut, fetchExtensionSource as V, formatBindingForDisplay as Vt, parseExtensionInstallSource as W, matchesBinding as Wt, discoverAndBuildExtensionRegistry as X, stripJsonComments as Xt, registerExtensionHostModules as Y, resolveExtensionKeybindings as Yt, buildExtensionPreset as Z, ENTRY_CANDIDATES as Zt, buildPostCompactAttachments as _, defaultRepeatGuardNormalize as _n, createSkillsRunScriptTool as _t, SHELL_CASCADE_CANCEL_MESSAGE as a, clampExtensionConfigNumber as an, createWorkspaceSurface as at, selectRecentFiles as b, stableStringify as bn, createShellTool as bt, applyCompactSummaryCutoff as c, isValidExtensionConfigValue as cn, basicTools as ct, buildPersistedStub as d, sanitizeExtensionConfigActionPatch as dn, WAIT_TASK_TIMED_OUT_PREFIX as dt, inlineLoadedExtension as en, disposeExtensionRegistry as et, cleanupPersistedSession as f, toWireConfigSchema as fn, waitTask as ft, resolveTasksDir as g, shouldAutoCompact as gn, createSkillsUseTool as gt, resolvePersistDir as h, effectiveContextWindow as hn, isSpawnTool as ht, INTERRUPT_MESSAGE_FOR_TOOL_USE as i, defineExtension as in, createExtensionHostRuntimeBridge as it, anchorPreviewFor as j, grep as jt, buildUpToCompactPrompt as k, listFiles as kt, PERSISTED_STUB_PREFIX as l, resolveExtensionConfig as ln, basic_default as lt, resolveMcpWarningsDir as m, OUTPUT_RESERVE_TOKENS as mn, createSpawnTool as mt, normalizeProviders as n, parseExtensionScanPathEnv as nn, mergeContributions as nt, TOOL_USE_CANCELLED_MESSAGE as o, coerceExtensionConfigInput as on, composePresets as ot, maybePersistToolResult as p, AUTO_COMPACT_MIN_GROWTH_FRACTION as pn, createToolSearchTool as pt, updateInstalledExtension as q, readKeybindings as qt, resolveModelTargets as r, scanExtensionDirectories as rn, partitionExtensionCatalog as rt, TOOL_USE_SKIPPED_MESSAGE as s, isValidExtensionConfigItem as sn, definePreset as st, createAgent as t, isExtensionDefinition as tn, filterExtensionRegistry as tt, PERSISTENCE_PREVIEW_BYTES as u, resolveExtensionConfigValue as un, writeFile$1 as ut, selectFilesFromReadState as v, defaultRepeatGuardTracked as vn, createSkillsReadTool as vt, TRAILER as w, looksBinary as wt, compactConversation as x, shell as xt, selectFilesFromSession as y, normalizeShellCommand as yn, shellKill as yt, createExtensionPromptBridge as z, KEYBINDING_KEY_COL_WIDTH as zt };
|
|
14718
14798
|
|
|
14719
|
-
//# sourceMappingURL=agent-
|
|
14799
|
+
//# sourceMappingURL=agent-D11SxCvA.js.map
|