zidane 7.0.17 → 7.0.18
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-DTnq3bda.js → acp-BgNj1-gv.js} +2 -2
- package/dist/{acp-DTnq3bda.js.map → acp-BgNj1-gv.js.map} +1 -1
- package/dist/acp-cli.js +3 -3
- package/dist/acp.d.ts +1 -1
- package/dist/acp.js +1 -1
- package/dist/{agent-C5xr7lqh.js → agent-Djzx-1kD.js} +123 -22
- package/dist/agent-Djzx-1kD.js.map +1 -0
- package/dist/agent.d.ts +1 -1
- package/dist/agent.js +1 -1
- package/dist/{approvals-D3P3Wz58.js → approvals-iwgumeES.js} +31 -5
- package/dist/approvals-iwgumeES.js.map +1 -0
- package/dist/{auth-893jSFew.js → auth-UMMUxUhV.js} +2 -2
- package/dist/{auth-893jSFew.js.map → auth-UMMUxUhV.js.map} +1 -1
- package/dist/chat/pure.d.ts +3 -3
- package/dist/chat.d.ts +5 -5
- package/dist/chat.js +3 -3
- package/dist/contexts/daytona.d.ts +1 -1
- package/dist/contexts/e2b.d.ts +1 -1
- package/dist/daemon-cli.js +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-CyOGLSQN.d.ts → index-BWotbLsf.d.ts} +5 -5
- package/dist/index-BWotbLsf.d.ts.map +1 -0
- package/dist/{index-D7H81_kd.d.ts → index-BuntpQUB.d.ts} +51 -4
- package/dist/index-BuntpQUB.d.ts.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +3 -3
- package/dist/{ipc-DY40IbcP.js → ipc-DApbjFms.js} +2 -2
- package/dist/{ipc-DY40IbcP.js.map → ipc-DApbjFms.js.map} +1 -1
- package/dist/ipc.d.ts +5 -5
- package/dist/ipc.js +3 -3
- 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/plugins.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/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/restate.d.ts +1 -1
- package/dist/restate.js +1 -1
- package/dist/{server-DaZqNd61.js → server-CAZZIQ_Z.js} +4 -4
- package/dist/{server-DaZqNd61.js.map → server-CAZZIQ_Z.js.map} +1 -1
- package/dist/session/sqlite.d.ts +1 -1
- package/dist/session-23Stp71-.js.map +1 -1
- package/dist/session.d.ts +2 -2
- package/dist/session.js +2 -2
- package/dist/skills.d.ts +1 -1
- package/dist/{tool-formatters-9_ABHXRG.d.ts → tool-formatters-D1WrOONm.d.ts} +2 -2
- package/dist/{tool-formatters-9_ABHXRG.d.ts.map → tool-formatters-D1WrOONm.d.ts.map} +1 -1
- 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-CbZkEMIN.d.ts → transcript-anchors-BaSv0EKt.d.ts} +2 -2
- package/dist/{transcript-anchors-CbZkEMIN.d.ts.map → transcript-anchors-BaSv0EKt.d.ts.map} +1 -1
- package/dist/tui.d.ts +3 -3
- package/dist/tui.js +99 -36
- package/dist/tui.js.map +1 -1
- package/dist/{turn-operations-DsVjoO3S.d.ts → turn-operations-DOOFW2z-.d.ts} +3 -3
- package/dist/{turn-operations-DsVjoO3S.d.ts.map → turn-operations-DOOFW2z-.d.ts.map} +1 -1
- package/dist/types.d.ts +1 -1
- package/package.json +1 -1
- package/dist/agent-C5xr7lqh.js.map +0 -1
- package/dist/approvals-D3P3Wz58.js.map +0 -1
- package/dist/index-CyOGLSQN.d.ts.map +0 -1
- package/dist/index-D7H81_kd.d.ts.map +0 -1
package/dist/acp-cli.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { m as openaiCompat } from "./openai-compat-cIeLSED_.js";
|
|
3
|
-
import { xt as basic_default } from "./agent-
|
|
3
|
+
import { xt as basic_default } from "./agent-Djzx-1kD.js";
|
|
4
4
|
import { r as createProcessContext } from "./contexts-BSFQVclW.js";
|
|
5
5
|
import { createSandboxContext } from "./contexts/sandbox.js";
|
|
6
6
|
import { p as resolveStorageDirs } from "./plugins-B531Tz5b.js";
|
|
@@ -11,8 +11,8 @@ import { cerebras } from "./providers/cerebras.js";
|
|
|
11
11
|
import { openai } from "./providers/openai.js";
|
|
12
12
|
import { openrouter } from "./providers/openrouter.js";
|
|
13
13
|
import { xai } from "./providers/xai.js";
|
|
14
|
-
import { d as StartUsageError, f as buildStartLocalOptions, h as startProviderNames, i as withAcpDefaultTools, m as startLocalArgOptions, p as parseStartArgValues, t as runAcpStdioServer } from "./acp-
|
|
15
|
-
import { d as BUILTIN_PROVIDERS, i as readCredentials, m as credKeyOf, r as credentialsPath, t as detectAuth, x as modelsForDescriptor } from "./auth-
|
|
14
|
+
import { d as StartUsageError, f as buildStartLocalOptions, h as startProviderNames, i as withAcpDefaultTools, m as startLocalArgOptions, p as parseStartArgValues, t as runAcpStdioServer } from "./acp-BgNj1-gv.js";
|
|
15
|
+
import { d as BUILTIN_PROVIDERS, i as readCredentials, m as credKeyOf, r as credentialsPath, t as detectAuth, x as modelsForDescriptor } from "./auth-UMMUxUhV.js";
|
|
16
16
|
import { createDaytonaProvider } from "./contexts/daytona.js";
|
|
17
17
|
import { createDockerContext } from "./contexts/docker.js";
|
|
18
18
|
import { createE2BProvider } from "./contexts/e2b.js";
|
package/dist/acp.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { $_ as SessionStore, Fg as PromptPart, Wg as SessionContentBlock, Xi as AgentOptions, Y_ as Session, g_ as TurnUsage, gm as Provider, qi as Agent, s_ as ToolResultContent, sg as AgentBehavior, t as Preset, wg as McpServerConfig, x_ as ToolDef } from "./index-BuntpQUB.js";
|
|
2
2
|
import { c as ExecutionContext } from "./types-U-rIVUDw.js";
|
|
3
3
|
import { Readable, Writable } from "node:stream";
|
|
4
4
|
|
package/dist/acp.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { n as JsonRpcRemoteError, r as createJsonRpcConnection } from "./json-rpc-rSWMUh9b.js";
|
|
2
|
-
import { a as wrapToolsForAcpClient, c as sessionBlocksToAcp, 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-
|
|
2
|
+
import { a as wrapToolsForAcpClient, c as sessionBlocksToAcp, 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-BgNj1-gv.js";
|
|
3
3
|
export { AcpProtocolError, JsonRpcRemoteError, acpMcpServersToZidane, acpPromptToPromptParts, createAcpServer, createJsonRpcConnection, runAcpStdioServer, sessionBlocksToAcp, stopReasonFromRun, toolResultToAcpContent, withAcpDefaultTools, wrapToolsForAcpClient };
|
|
@@ -1530,6 +1530,42 @@ function createArtifactDetectHook(registration, options = {}) {
|
|
|
1530
1530
|
//#endregion
|
|
1531
1531
|
//#region src/extensions/builtin-artifact-kinds.ts
|
|
1532
1532
|
const GITHUB_PR_URL = /https:\/\/github\.com\/([\w.-]+)\/([\w.-]+)\/pull\/(\d+)/g;
|
|
1533
|
+
/**
|
|
1534
|
+
* GitHub token for PR refresh: `GITHUB_TOKEN` / `GH_TOKEN` from the
|
|
1535
|
+
* environment, else whatever the `gh` CLI is logged in with (`gh auth
|
|
1536
|
+
* token`) — the same credential git-flow's `/pull-request` uses, so a PR the
|
|
1537
|
+
* user could create is a PR we can read. The CLI lookup is cached for five
|
|
1538
|
+
* minutes (per process) and never throws: no `gh`, not logged in → `null`,
|
|
1539
|
+
* and the request goes out anonymous (public repos still work).
|
|
1540
|
+
*/
|
|
1541
|
+
let ghTokenCache = null;
|
|
1542
|
+
const GH_TOKEN_TTL_MS = 5 * 6e4;
|
|
1543
|
+
async function resolveGithubToken() {
|
|
1544
|
+
const env = process.env.GITHUB_TOKEN ?? process.env.GH_TOKEN;
|
|
1545
|
+
if (env) return env;
|
|
1546
|
+
if (ghTokenCache && Date.now() - ghTokenCache.at < GH_TOKEN_TTL_MS) return ghTokenCache.value;
|
|
1547
|
+
let value = null;
|
|
1548
|
+
try {
|
|
1549
|
+
const { execFile } = await import("node:child_process");
|
|
1550
|
+
value = await new Promise((resolve) => {
|
|
1551
|
+
execFile("gh", ["auth", "token"], { timeout: 3e3 }, (err, stdout) => {
|
|
1552
|
+
resolve(err ? null : stdout.trim() || null);
|
|
1553
|
+
});
|
|
1554
|
+
});
|
|
1555
|
+
} catch {
|
|
1556
|
+
value = null;
|
|
1557
|
+
}
|
|
1558
|
+
ghTokenCache = {
|
|
1559
|
+
value,
|
|
1560
|
+
at: Date.now()
|
|
1561
|
+
};
|
|
1562
|
+
return value;
|
|
1563
|
+
}
|
|
1564
|
+
/**
|
|
1565
|
+
* Indirection so tests (and hosts with their own credential store) can swap
|
|
1566
|
+
* the token source without touching the environment or the `gh` binary.
|
|
1567
|
+
*/
|
|
1568
|
+
const githubTokenSource = { resolve: resolveGithubToken };
|
|
1533
1569
|
/** A single GitHub path segment (owner / repo), as the detector captures it. */
|
|
1534
1570
|
const GITHUB_SEGMENT = /^[\w.-]+$/;
|
|
1535
1571
|
const GITLAB_MR_URL = /https?:\/\/[\w.-]+\/([\w./-]+?)\/-\/merge_requests\/(\d+)/g;
|
|
@@ -1590,18 +1626,48 @@ const pullRequestKind = {
|
|
|
1590
1626
|
render(artifact) {
|
|
1591
1627
|
const meta = metaRecord(artifact);
|
|
1592
1628
|
const state = typeof meta.state === "string" ? meta.state : void 0;
|
|
1629
|
+
const badges = [];
|
|
1630
|
+
if (typeof meta.additions === "number" || typeof meta.deletions === "number") badges.push({
|
|
1631
|
+
text: `+${meta.additions ?? 0} −${meta.deletions ?? 0}`,
|
|
1632
|
+
tone: "diff",
|
|
1633
|
+
...typeof meta.changedFiles === "number" ? { title: `${meta.changedFiles} file${meta.changedFiles === 1 ? "" : "s"} changed` } : {}
|
|
1634
|
+
});
|
|
1635
|
+
if (typeof meta.reviews === "number" && meta.reviews > 0) badges.push({
|
|
1636
|
+
text: `${meta.reviews} review${meta.reviews === 1 ? "" : "s"}`,
|
|
1637
|
+
tone: "neutral"
|
|
1638
|
+
});
|
|
1639
|
+
if (typeof meta.comments === "number" && meta.comments > 0) badges.push({
|
|
1640
|
+
text: `${meta.comments} comment${meta.comments === 1 ? "" : "s"}`,
|
|
1641
|
+
tone: "neutral"
|
|
1642
|
+
});
|
|
1643
|
+
if (meta.mergeable === "clean" && (state === "open" || state === "approved")) badges.push({
|
|
1644
|
+
text: "ready to merge",
|
|
1645
|
+
tone: "success"
|
|
1646
|
+
});
|
|
1647
|
+
else if (meta.mergeable === "unstable") badges.push({
|
|
1648
|
+
text: "checks failing",
|
|
1649
|
+
tone: "warn"
|
|
1650
|
+
});
|
|
1651
|
+
else if (meta.mergeable === "dirty") badges.push({
|
|
1652
|
+
text: "conflicts",
|
|
1653
|
+
tone: "warn"
|
|
1654
|
+
});
|
|
1655
|
+
const prTitle = typeof meta.title === "string" && meta.title.trim() ? meta.title.trim() : null;
|
|
1593
1656
|
return {
|
|
1594
|
-
title: artifact.label,
|
|
1595
|
-
...
|
|
1657
|
+
title: prTitle ?? artifact.label,
|
|
1658
|
+
...prTitle ? { subtitle: artifact.label } : {},
|
|
1596
1659
|
href: artifact.uri,
|
|
1597
|
-
...state ? { status: state } : {}
|
|
1660
|
+
...state ? { status: state.replace("_", " ") } : {},
|
|
1661
|
+
...badges.length > 0 ? { badges } : {}
|
|
1598
1662
|
};
|
|
1599
1663
|
},
|
|
1600
1664
|
/**
|
|
1601
|
-
* GitHub only (GitLab needs per-host auth).
|
|
1602
|
-
* `
|
|
1603
|
-
* private ones (and the 60/h anonymous
|
|
1604
|
-
* "no refresh", never an error.
|
|
1665
|
+
* GitHub only (GitLab needs per-host auth). Token from the environment or
|
|
1666
|
+
* the `gh` CLI (see {@link resolveGithubToken}); without either the call is
|
|
1667
|
+
* anonymous — public repos work, private ones (and the 60/h anonymous
|
|
1668
|
+
* limit) degrade to `undefined`, i.e. "no refresh", never an error.
|
|
1669
|
+
* Bounded by a 4 s timeout. Captures state, title, diff size, changed
|
|
1670
|
+
* files and comment counts into `meta` for the rail.
|
|
1605
1671
|
*
|
|
1606
1672
|
* Rate-limit hygiene: terminal states (`merged` / `closed`) never change,
|
|
1607
1673
|
* and a fresh `resolvedAt` (within {@link PR_RESOLVE_TTL_MS}) is reused, so
|
|
@@ -1615,35 +1681,70 @@ const pullRequestKind = {
|
|
|
1615
1681
|
* so a crafted `owner` can't steer this token-bearing request at another
|
|
1616
1682
|
* endpoint.
|
|
1617
1683
|
*/
|
|
1618
|
-
async resolve(artifact) {
|
|
1684
|
+
async resolve(artifact, opts) {
|
|
1619
1685
|
const meta = metaRecord(artifact);
|
|
1620
1686
|
if (meta.provider !== "github") return void 0;
|
|
1621
1687
|
const { owner, repo, number } = meta;
|
|
1622
1688
|
if (typeof owner !== "string" || !GITHUB_SEGMENT.test(owner)) return void 0;
|
|
1623
1689
|
if (typeof repo !== "string" || !GITHUB_SEGMENT.test(repo)) return void 0;
|
|
1624
1690
|
if (typeof number !== "number" || !Number.isInteger(number) || number <= 0) return void 0;
|
|
1625
|
-
if (meta.state === "merged" || meta.state === "closed") return void 0;
|
|
1626
|
-
if (typeof meta.resolvedAt === "number" && Date.now() - meta.resolvedAt < PR_RESOLVE_TTL_MS) return void 0;
|
|
1627
|
-
const token =
|
|
1691
|
+
if (meta.state === "merged" || meta.state === "closed" && !opts?.force) return void 0;
|
|
1692
|
+
if (!opts?.force && typeof meta.resolvedAt === "number" && Date.now() - meta.resolvedAt < PR_RESOLVE_TTL_MS) return void 0;
|
|
1693
|
+
const token = await githubTokenSource.resolve();
|
|
1628
1694
|
const controller = new AbortController();
|
|
1629
1695
|
const timer = setTimeout(() => controller.abort(), 4e3);
|
|
1696
|
+
const headers = {
|
|
1697
|
+
"Accept": "application/vnd.github+json",
|
|
1698
|
+
"User-Agent": "zidane",
|
|
1699
|
+
...token ? { Authorization: `Bearer ${token}` } : {}
|
|
1700
|
+
};
|
|
1630
1701
|
try {
|
|
1631
|
-
const
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
"User-Agent": "zidane",
|
|
1635
|
-
...token ? { Authorization: `Bearer ${token}` } : {}
|
|
1636
|
-
},
|
|
1702
|
+
const base = `https://api.github.com/repos/${owner}/${repo}/pulls/${number}`;
|
|
1703
|
+
const res = await fetch(base, {
|
|
1704
|
+
headers,
|
|
1637
1705
|
signal: controller.signal
|
|
1638
1706
|
});
|
|
1639
1707
|
if (!res.ok) return void 0;
|
|
1640
1708
|
const body = await res.json();
|
|
1641
|
-
const
|
|
1709
|
+
const num = (v) => typeof v === "number" && Number.isFinite(v) ? v : void 0;
|
|
1710
|
+
const comments = (num(body.comments) ?? 0) + (num(body.review_comments) ?? 0);
|
|
1711
|
+
let decision;
|
|
1712
|
+
let reviews;
|
|
1713
|
+
const isOpen = !body.merged && body.state === "open";
|
|
1714
|
+
if (isOpen) try {
|
|
1715
|
+
const rr = await fetch(`${base}/reviews?per_page=100`, {
|
|
1716
|
+
headers,
|
|
1717
|
+
signal: controller.signal
|
|
1718
|
+
});
|
|
1719
|
+
if (rr.ok) {
|
|
1720
|
+
const list = await rr.json();
|
|
1721
|
+
if (Array.isArray(list)) {
|
|
1722
|
+
reviews = list.filter((r) => r.state && r.state !== "PENDING").length;
|
|
1723
|
+
const latest = /* @__PURE__ */ new Map();
|
|
1724
|
+
for (const r of list) {
|
|
1725
|
+
const login = r.user?.login;
|
|
1726
|
+
if (!login || login === body.user?.login || !r.state || r.state === "COMMENTED" || r.state === "PENDING") continue;
|
|
1727
|
+
latest.set(login, r.state);
|
|
1728
|
+
}
|
|
1729
|
+
const states = [...latest.values()];
|
|
1730
|
+
if (states.includes("CHANGES_REQUESTED")) decision = "changes_requested";
|
|
1731
|
+
else if (states.includes("APPROVED")) decision = "approved";
|
|
1732
|
+
}
|
|
1733
|
+
}
|
|
1734
|
+
} catch {}
|
|
1735
|
+
const state = body.merged ? "merged" : body.draft ? "draft" : body.state === "open" ? decision ?? "open" : typeof body.state === "string" ? body.state : void 0;
|
|
1642
1736
|
if (!state) return void 0;
|
|
1737
|
+
const mergeable = typeof body.mergeable_state === "string" ? body.mergeable_state : void 0;
|
|
1643
1738
|
return { meta: {
|
|
1644
1739
|
...meta,
|
|
1645
1740
|
state,
|
|
1646
1741
|
...typeof body.title === "string" ? { title: body.title } : {},
|
|
1742
|
+
...num(body.additions) !== void 0 ? { additions: num(body.additions) } : {},
|
|
1743
|
+
...num(body.deletions) !== void 0 ? { deletions: num(body.deletions) } : {},
|
|
1744
|
+
...num(body.changed_files) !== void 0 ? { changedFiles: num(body.changed_files) } : {},
|
|
1745
|
+
...num(body.comments) !== void 0 || num(body.review_comments) !== void 0 ? { comments } : {},
|
|
1746
|
+
...reviews !== void 0 ? { reviews } : {},
|
|
1747
|
+
...isOpen && mergeable ? { mergeable } : {},
|
|
1647
1748
|
resolvedAt: Date.now()
|
|
1648
1749
|
} };
|
|
1649
1750
|
} catch {
|
|
@@ -1801,11 +1902,11 @@ function renderArtifactRow(artifact, registry) {
|
|
|
1801
1902
|
* no resolver, the resolver declined, or it threw. Callers persist the
|
|
1802
1903
|
* result through their store / RPC — this never writes.
|
|
1803
1904
|
*/
|
|
1804
|
-
async function refreshArtifact(artifact, registry) {
|
|
1905
|
+
async function refreshArtifact(artifact, registry, opts) {
|
|
1805
1906
|
const registration = resolveArtifactKind(artifact.kind, registry);
|
|
1806
1907
|
if (!registration?.resolve) return void 0;
|
|
1807
1908
|
try {
|
|
1808
|
-
const patch = await registration.resolve(artifact);
|
|
1909
|
+
const patch = await registration.resolve(artifact, opts);
|
|
1809
1910
|
if (!patch || patch.label === void 0 && patch.meta === void 0) return void 0;
|
|
1810
1911
|
return {
|
|
1811
1912
|
...artifact,
|
|
@@ -17965,6 +18066,6 @@ function createAgent(rawOptions) {
|
|
|
17965
18066
|
};
|
|
17966
18067
|
}
|
|
17967
18068
|
//#endregion
|
|
17968
|
-
export { installExtensionFromSpec as $,
|
|
18069
|
+
export { installExtensionFromSpec as $, defaultRepeatGuardTracked as $n, KEYBINDING_DEF_BY_ACTION as $t, selectFilesFromSession as A, resolveExtensionConfig as An, createSkillsRunScriptTool as At, buildUpToCompactPrompt as B, commitKind as Bn, formatModelLine as Bt, resolveLegacySessionDir as C, createDebugLog as Cn, WAIT_TASK_TIMED_OUT_PREFIX as Ct, resolveTasksDir as D, coerceExtensionConfigInput as Dn, isSpawnTool as Dt, resolveSessionDir as E, clampExtensionConfigNumber as En, createSpawnTool as Et, TRAILER as F, createExtensionBus as Fn, tailTruncate as Ft, summaryToTurn as G, renderArtifactRow as Gn, glob as Gt, anchorPreviewFor as H, githubTokenSource as Hn, listFiles as Ht, buildCompactPrompt as I, serializedPayloadBytes as In, readFile$1 as It, CompactPromptTooLongError as J, AUTO_COMPACT_MIN_GROWTH_FRACTION as Jn, artifacts_default as Jt, truncateHeadForPtlRetry as K, resolveArtifactKind as Kn, edit as Kt, buildFromCompactPrompt as L, BUILTIN_ARTIFACT_KINDS as Ln, looksBinary as Lt, compactConversation as M, sanitizeExtensionConfigActionPatch as Mn, shellKill as Mt, BASE_INSTRUCTIONS as N, toWireConfigSchema as Nn, createShellTool as Nt, buildPostCompactAttachments as O, isValidExtensionConfigItem as On, reserveChildLabel as Ot, NO_TOOLS_PREAMBLE as P, EXTENSION_BUS_MAX_PAYLOAD_BYTES as Pn, shell as Pt, fetchExtensionSource as Q, defaultRepeatGuardNormalize as Qn, KEYBINDING_DEFS as Qt, buildFullCompactPrompt as R, artifactKindLabel as Rn, multiEdit as Rt, resolveLegacyPersistDir as S, scanExtensionDirectories as Sn, writeFile$1 as St, resolvePersistDir as T, defineExtension as Tn, createToolSearchTool as Tt, sliceForCompaction as U, pullRequestKind as Un, createInteractionTool as Ut, ANCHOR_PREVIEW_MAX_CHARS as V, fileKind as Vn, matchModelEntries as Vt, stripImagesFromTurns as W, refreshArtifact as Wn, grep as Wt, createExtensionPromptBridge as X, effectiveContextWindow as Xn, recordArtifact as Xt, EMPTY_EXTENSION_REGISTRY as Y, OUTPUT_RESERVE_TOKENS as Yn, RECORD_ARTIFACT_TOOL as Yt, ExtensionInstallError as Z, shouldAutoCompact as Zn, DEFAULT_KEYBINDINGS as Zt, buildPersistedStub as _, defaultExtensionScanPaths as _n, createWorkspaceSurface as _t, stagedToolState as a, matchesBinding as an, hydrateReadStateFromSessionAsync as ar, createExtensionHud as at, migrateSessionArtifactDirs as b, isExtensionDefinition as bn, basicTools as bt, INTERRUPT_MESSAGE_FOR_TOOL_USE as c, readKeybindings as cn, buildExtensionRegistry as ct, TOOL_USE_SKIPPED_MESSAGE as d, stripJsonComments as dn, filterExtensionRegistry as dt, KEYBINDING_KEY_COL_WIDTH as en, normalizeShellCommand as er, listExtensionCandidates as et, applyCompactSummaryCutoff as f, ALTERNATE_CRED_KEY_SUFFIX as fn, filterRegistryPlugins as ft, PERSISTENCE_PREVIEW_BYTES as g, ENTRY_CANDIDATES as gn, createExtensionHostRuntimeBridge as gt, PERSISTED_STUB_PREFIX as h, registerExtensionHostModules as hn, createArtifactsSurface as ht, isToolStateOps as i, keybindingsPath as in, hydrateReadStateFromSession as ir, updateInstalledExtension as it, selectRecentFiles as j, resolveExtensionConfigValue as jn, createSkillsReadTool as jt, selectFilesFromReadState as k, isValidExtensionConfigValue as kn, createSkillsUseTool as kt, SHELL_CASCADE_CANCEL_MESSAGE as l, readKeybindingsRaw as ln, composeExtensionPreset as lt, renderStaleReadNotice as m, isReservedCredKey as mn, partitionExtensionCatalog as mt, DEFAULT_MAX_VALUE_BYTES as n, formatBindingForDisplay as nn, getReadState as nr, readExtensionInstallProvenance as nt, normalizeProviders as o, mergeKeybindings as on, readStateKey as or, discoverAndBuildExtensionRegistry as ot, collectNewlyStaleReadPaths as p, alternateCredKey as pn, mergeContributions as pt, CompactInvalidInputError as q, createArtifactDetectHook as qn, validateToolArgs as qt, createToolStateController as r, groupBindings as rn, hashContent as rr, removeInstalledExtension as rt, resolveModelTargets as s, parseBindingSpec as sn, resolveReadStateMap as sr, buildExtensionPreset as st, createAgent as t, ensureKeybindingsFile as tn, stableStringify as tr, parseExtensionInstallSource as tt, TOOL_USE_CANCELLED_MESSAGE as u, resolveExtensionKeybindings as un, disposeExtensionRegistry as ut, cleanupPersistedSession as v, discoverExtensions as vn, composePresets as vt, resolveMcpWarningsDir as w, setDebugLogSink as wn, waitTask as wt, rehomePersistedStubs as x, parseExtensionScanPathEnv as xn, basic_default as xt, maybePersistToolResult as y, inlineLoadedExtension as yn, definePreset as yt, buildTailCompactPrompt as z, branchKind as zn, createModelSearchTool as zt };
|
|
17969
18070
|
|
|
17970
|
-
//# sourceMappingURL=agent-
|
|
18071
|
+
//# sourceMappingURL=agent-Djzx-1kD.js.map
|