@cortexkit/aft-pi 0.22.1 → 0.23.0
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/commands/aft-status.d.ts +1 -1
- package/dist/commands/aft-status.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +83 -41
- package/dist/tools/_shared.d.ts +1 -1
- package/dist/tools/_shared.d.ts.map +1 -1
- package/dist/tools/ast.d.ts +17 -17
- package/dist/tools/ast.d.ts.map +1 -1
- package/dist/tools/bash.d.ts +8 -8
- package/dist/tools/bash.d.ts.map +1 -1
- package/dist/tools/conflicts.d.ts +4 -4
- package/dist/tools/conflicts.d.ts.map +1 -1
- package/dist/tools/fs.d.ts +9 -9
- package/dist/tools/fs.d.ts.map +1 -1
- package/dist/tools/hoisted.d.ts +1 -1
- package/dist/tools/hoisted.d.ts.map +1 -1
- package/dist/tools/imports.d.ts +13 -13
- package/dist/tools/imports.d.ts.map +1 -1
- package/dist/tools/lsp.d.ts +9 -9
- package/dist/tools/lsp.d.ts.map +1 -1
- package/dist/tools/navigate.d.ts +10 -10
- package/dist/tools/navigate.d.ts.map +1 -1
- package/dist/tools/reading.d.ts +14 -14
- package/dist/tools/reading.d.ts.map +1 -1
- package/dist/tools/refactor.d.ts +14 -14
- package/dist/tools/refactor.d.ts.map +1 -1
- package/dist/tools/render-helpers.d.ts +2 -2
- package/dist/tools/render-helpers.d.ts.map +1 -1
- package/dist/tools/safety.d.ts +9 -9
- package/dist/tools/safety.d.ts.map +1 -1
- package/dist/tools/semantic.d.ts +7 -7
- package/dist/tools/semantic.d.ts.map +1 -1
- package/dist/tools/structure.d.ts +18 -18
- package/dist/tools/structure.d.ts.map +1 -1
- package/dist/workflow-hints.d.ts +1 -1
- package/dist/workflow-hints.d.ts.map +1 -1
- package/package.json +14 -14
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* a formatted snapshot). When UI is unavailable (print / RPC mode), we fall
|
|
6
6
|
* back to a notification.
|
|
7
7
|
*/
|
|
8
|
-
import type { ExtensionAPI } from "@
|
|
8
|
+
import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
|
|
9
9
|
import type { PluginContext } from "../types.js";
|
|
10
10
|
export declare function registerStatusCommand(pi: ExtensionAPI, ctx: PluginContext): void;
|
|
11
11
|
//# sourceMappingURL=aft-status.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aft-status.d.ts","sourceRoot":"","sources":["../../src/commands/aft-status.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAA2B,MAAM
|
|
1
|
+
{"version":3,"file":"aft-status.d.ts","sourceRoot":"","sources":["../../src/commands/aft-status.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAA2B,MAAM,iCAAiC,CAAC;AAG7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CA4BhF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
* Commands:
|
|
30
30
|
* - /aft-status Status dialog (index states, LSP servers, storage dir)
|
|
31
31
|
*/
|
|
32
|
-
import type { ExtensionAPI } from "@
|
|
32
|
+
import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
|
|
33
33
|
import { type AftConfig, loadAftConfig } from "./config.js";
|
|
34
34
|
declare function shouldPrepareOnnxRuntime(config: Pick<AftConfig, "semantic_search" | "semantic">): boolean;
|
|
35
35
|
declare function handleConfigureWarningsForSession(context: {
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAaH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAaH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAQpE,OAAO,EACL,KAAK,SAAS,EACd,aAAa,EAGd,MAAM,aAAa,CAAC;AAgGrB,iBAAS,wBAAwB,CAC/B,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,iBAAiB,GAAG,UAAU,CAAC,GACtD,OAAO,CAGT;AASD,iBAAe,iCAAiC,CAAC,OAAO,EAAE;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgChB;AAQD;;;;;;;;GAQG;AACH,iBAAS,kBAAkB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,GAAG;IACrE,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAiEA;AAED;;;;GAIG;AACH,yBAA+B,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAmY9D;AAED,eAAO,MAAM,QAAQ;;;;CAIpB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -31972,9 +31972,9 @@ import { chmodSync as chmodSync3, copyFileSync as copyFileSync2, existsSync as e
|
|
|
31972
31972
|
import { createRequire as createRequire2 } from "node:module";
|
|
31973
31973
|
import { homedir as homedir4 } from "node:os";
|
|
31974
31974
|
import { join as join4 } from "node:path";
|
|
31975
|
-
function
|
|
31975
|
+
function readBinaryVersion(binaryPath) {
|
|
31976
31976
|
try {
|
|
31977
|
-
const result = spawnSync(
|
|
31977
|
+
const result = spawnSync(binaryPath, ["--version"], {
|
|
31978
31978
|
encoding: "utf-8",
|
|
31979
31979
|
stdio: ["pipe", "pipe", "pipe"],
|
|
31980
31980
|
timeout: 5000
|
|
@@ -31982,7 +31982,16 @@ function copyToVersionedCache(npmBinaryPath) {
|
|
|
31982
31982
|
const rawVersion = result.stdout?.trim();
|
|
31983
31983
|
if (!rawVersion)
|
|
31984
31984
|
return null;
|
|
31985
|
-
|
|
31985
|
+
return rawVersion.replace(/^aft\s+/, "");
|
|
31986
|
+
} catch {
|
|
31987
|
+
return null;
|
|
31988
|
+
}
|
|
31989
|
+
}
|
|
31990
|
+
function copyToVersionedCache(npmBinaryPath, knownVersion) {
|
|
31991
|
+
try {
|
|
31992
|
+
const version = knownVersion ?? readBinaryVersion(npmBinaryPath);
|
|
31993
|
+
if (!version)
|
|
31994
|
+
return null;
|
|
31986
31995
|
const tag = version.startsWith("v") ? version : `v${version}`;
|
|
31987
31996
|
const cacheDir = getCacheDir();
|
|
31988
31997
|
const versionedDir = join4(cacheDir, tag);
|
|
@@ -32037,8 +32046,13 @@ function findBinarySync(expectedVersion) {
|
|
|
32037
32046
|
const req = createRequire2(import.meta.url);
|
|
32038
32047
|
const resolved = req.resolve(packageBin);
|
|
32039
32048
|
if (existsSync3(resolved)) {
|
|
32040
|
-
const
|
|
32041
|
-
|
|
32049
|
+
const npmVersion = readBinaryVersion(resolved);
|
|
32050
|
+
if (pluginVersion && npmVersion && npmVersion !== pluginVersion) {
|
|
32051
|
+
warn(`npm platform package binary v${npmVersion} does not match plugin v${pluginVersion}; skipping (continuing to PATH lookup)`);
|
|
32052
|
+
} else {
|
|
32053
|
+
const copied = copyToVersionedCache(resolved, npmVersion ?? undefined);
|
|
32054
|
+
return copied ?? resolved;
|
|
32055
|
+
}
|
|
32042
32056
|
}
|
|
32043
32057
|
} catch {}
|
|
32044
32058
|
try {
|
|
@@ -32781,9 +32795,8 @@ ${formatLongRunningReminder(longRunning)}`;
|
|
|
32781
32795
|
async function drainCompletions({ ctx, directory, sessionID }) {
|
|
32782
32796
|
try {
|
|
32783
32797
|
const bridge = ctx.pool.getActiveBridgeForRoot(directory) ?? ctx.pool.getBridge(directory);
|
|
32784
|
-
|
|
32785
|
-
|
|
32786
|
-
const response = await bridge.send("bash_drain_completions", { session_id: sessionID });
|
|
32798
|
+
const params = sessionID ? { session_id: sessionID } : {};
|
|
32799
|
+
const response = await bridge.send("bash_drain_completions", params);
|
|
32787
32800
|
if (response.success === false) {
|
|
32788
32801
|
sessionWarn2(sessionID ?? "", `${LOG_PREFIX} drain failed: ${String(response.message ?? "unknown error")}`);
|
|
32789
32802
|
return;
|
|
@@ -48890,13 +48903,13 @@ function registerShutdownCleanup(fn) {
|
|
|
48890
48903
|
}
|
|
48891
48904
|
|
|
48892
48905
|
// src/tools/ast.ts
|
|
48893
|
-
import { StringEnum } from "@
|
|
48894
|
-
import { Type } from "
|
|
48906
|
+
import { StringEnum } from "@earendil-works/pi-ai";
|
|
48907
|
+
import { Type } from "typebox";
|
|
48895
48908
|
|
|
48896
48909
|
// src/tools/render-helpers.ts
|
|
48897
48910
|
import { homedir as homedir7 } from "node:os";
|
|
48898
|
-
import { renderDiff } from "@
|
|
48899
|
-
import { Container, Spacer, Text } from "@
|
|
48911
|
+
import { renderDiff } from "@earendil-works/pi-coding-agent";
|
|
48912
|
+
import { Container, Spacer, Text } from "@earendil-works/pi-tui";
|
|
48900
48913
|
function reuseText(last) {
|
|
48901
48914
|
return last instanceof Text ? last : new Text("", 0, 0);
|
|
48902
48915
|
}
|
|
@@ -49290,8 +49303,8 @@ function registerAstTools(pi, ctx, surface) {
|
|
|
49290
49303
|
}
|
|
49291
49304
|
|
|
49292
49305
|
// src/tools/bash.ts
|
|
49293
|
-
import { Container as Container2, Spacer as Spacer2, Text as Text2 } from "@
|
|
49294
|
-
import { Type as Type2 } from "
|
|
49306
|
+
import { Container as Container2, Spacer as Spacer2, Text as Text2 } from "@earendil-works/pi-tui";
|
|
49307
|
+
import { Type as Type2 } from "typebox";
|
|
49295
49308
|
var FOREGROUND_WAIT_WINDOW_MS = 5000;
|
|
49296
49309
|
var FOREGROUND_POLL_INTERVAL_MS = 100;
|
|
49297
49310
|
var BASH_TRANSPORT_TIMEOUT_MS = 30000;
|
|
@@ -49625,7 +49638,7 @@ function shortenCommand(command) {
|
|
|
49625
49638
|
}
|
|
49626
49639
|
|
|
49627
49640
|
// src/tools/conflicts.ts
|
|
49628
|
-
import { Type as Type3 } from "
|
|
49641
|
+
import { Type as Type3 } from "typebox";
|
|
49629
49642
|
var ConflictsParams = Type3.Object({});
|
|
49630
49643
|
function renderConflictCall(theme, context) {
|
|
49631
49644
|
return renderToolCall("conflicts", undefined, theme, context);
|
|
@@ -49674,7 +49687,7 @@ function registerConflictsTool(pi, ctx) {
|
|
|
49674
49687
|
}
|
|
49675
49688
|
|
|
49676
49689
|
// src/tools/fs.ts
|
|
49677
|
-
import { Type as Type4 } from "
|
|
49690
|
+
import { Type as Type4 } from "typebox";
|
|
49678
49691
|
var DeleteParams = Type4.Object({
|
|
49679
49692
|
files: Type4.Array(Type4.String(), {
|
|
49680
49693
|
description: "Paths to delete (one or more). Single-file callers pass a single-element array.",
|
|
@@ -49796,12 +49809,12 @@ function registerFsTools(pi, ctx, surface) {
|
|
|
49796
49809
|
// src/tools/hoisted.ts
|
|
49797
49810
|
import { stat } from "node:fs/promises";
|
|
49798
49811
|
import { homedir as homedir8 } from "node:os";
|
|
49799
|
-
import { resolve as resolve3 } from "node:path";
|
|
49812
|
+
import { isAbsolute, relative as relative3, resolve as resolve3 } from "node:path";
|
|
49800
49813
|
import {
|
|
49801
49814
|
renderDiff as renderDiff2
|
|
49802
|
-
} from "@
|
|
49803
|
-
import { Container as Container3, Spacer as Spacer3, Text as Text3 } from "@
|
|
49804
|
-
import { Type as Type5 } from "
|
|
49815
|
+
} from "@earendil-works/pi-coding-agent";
|
|
49816
|
+
import { Container as Container3, Spacer as Spacer3, Text as Text3 } from "@earendil-works/pi-tui";
|
|
49817
|
+
import { Type as Type5 } from "typebox";
|
|
49805
49818
|
|
|
49806
49819
|
// src/tools/diff-format.ts
|
|
49807
49820
|
import { diffLines } from "diff";
|
|
@@ -49906,6 +49919,21 @@ function formatDiffForPi(oldContent, newContent, contextLines = DEFAULT_CONTEXT_
|
|
|
49906
49919
|
}
|
|
49907
49920
|
|
|
49908
49921
|
// src/tools/hoisted.ts
|
|
49922
|
+
function containsPath(parent, child) {
|
|
49923
|
+
const rel = relative3(parent, child);
|
|
49924
|
+
return rel === "" || !rel.startsWith("..") && !isAbsolute(rel);
|
|
49925
|
+
}
|
|
49926
|
+
async function assertExternalDirectoryPermission(extCtx, target, action = "modify") {
|
|
49927
|
+
if (!target)
|
|
49928
|
+
return;
|
|
49929
|
+
const absoluteTarget = isAbsolute(target) ? target : resolve3(extCtx.cwd, target);
|
|
49930
|
+
if (containsPath(extCtx.cwd, absoluteTarget))
|
|
49931
|
+
return;
|
|
49932
|
+
const confirmed = await extCtx.ui?.confirm?.("Allow external directory access?", `AFT wants to ${action} outside the project: ${absoluteTarget}`);
|
|
49933
|
+
if (confirmed === true)
|
|
49934
|
+
return;
|
|
49935
|
+
throw new Error("Permission denied: external directory access was cancelled.");
|
|
49936
|
+
}
|
|
49909
49937
|
var ReadParams = Type5.Object({
|
|
49910
49938
|
path: Type5.String({ description: "Path to the file to read (relative or absolute)" }),
|
|
49911
49939
|
offset: Type5.Optional(Type5.Number({ description: "Line number to start reading from (1-indexed)" })),
|
|
@@ -49977,6 +50005,7 @@ function registerHoistedTools(pi, ctx, surface) {
|
|
|
49977
50005
|
promptGuidelines: ["Use write only for new files or complete rewrites."],
|
|
49978
50006
|
parameters: WriteParams,
|
|
49979
50007
|
async execute(_toolCallId, params, _signal, _onUpdate, extCtx) {
|
|
50008
|
+
await assertExternalDirectoryPermission(extCtx, params.filePath);
|
|
49980
50009
|
const bridge = bridgeFor(ctx, extCtx.cwd);
|
|
49981
50010
|
const response = await callBridge(bridge, "write", {
|
|
49982
50011
|
file: params.filePath,
|
|
@@ -50007,6 +50036,7 @@ function registerHoistedTools(pi, ctx, surface) {
|
|
|
50007
50036
|
],
|
|
50008
50037
|
parameters: EditParams,
|
|
50009
50038
|
async execute(_toolCallId, params, _signal, _onUpdate, extCtx) {
|
|
50039
|
+
await assertExternalDirectoryPermission(extCtx, params.filePath);
|
|
50010
50040
|
const bridge = bridgeFor(ctx, extCtx.cwd);
|
|
50011
50041
|
if (typeof params.appendContent === "string") {
|
|
50012
50042
|
const req2 = {
|
|
@@ -50052,8 +50082,10 @@ function registerHoistedTools(pi, ctx, surface) {
|
|
|
50052
50082
|
async execute(_toolCallId, params, _signal, _onUpdate, extCtx) {
|
|
50053
50083
|
const bridge = bridgeFor(ctx, extCtx.cwd);
|
|
50054
50084
|
const req = { pattern: params.pattern };
|
|
50055
|
-
if (params.path)
|
|
50085
|
+
if (params.path) {
|
|
50086
|
+
await assertExternalDirectoryPermission(extCtx, params.path, "search");
|
|
50056
50087
|
req.path = await resolvePathArg(extCtx.cwd, params.path);
|
|
50088
|
+
}
|
|
50057
50089
|
if (params.include)
|
|
50058
50090
|
req.include = splitIncludeGlobs(params.include);
|
|
50059
50091
|
if (params.caseSensitive !== undefined)
|
|
@@ -50265,8 +50297,8 @@ function formatReadFooter(agentSpecifiedRange, data) {
|
|
|
50265
50297
|
}
|
|
50266
50298
|
|
|
50267
50299
|
// src/tools/imports.ts
|
|
50268
|
-
import { StringEnum as StringEnum2 } from "@
|
|
50269
|
-
import { Type as Type6 } from "
|
|
50300
|
+
import { StringEnum as StringEnum2 } from "@earendil-works/pi-ai";
|
|
50301
|
+
import { Type as Type6 } from "typebox";
|
|
50270
50302
|
var ImportParams = Type6.Object({
|
|
50271
50303
|
op: StringEnum2(["add", "remove", "organize"], { description: "Import operation" }),
|
|
50272
50304
|
filePath: Type6.String({ description: "Path to the file" }),
|
|
@@ -50363,8 +50395,8 @@ function registerImportTools(pi, ctx) {
|
|
|
50363
50395
|
}
|
|
50364
50396
|
|
|
50365
50397
|
// src/tools/lsp.ts
|
|
50366
|
-
import { StringEnum as StringEnum3 } from "@
|
|
50367
|
-
import { Type as Type7 } from "
|
|
50398
|
+
import { StringEnum as StringEnum3 } from "@earendil-works/pi-ai";
|
|
50399
|
+
import { Type as Type7 } from "typebox";
|
|
50368
50400
|
var LspDiagnosticsParams = Type7.Object({
|
|
50369
50401
|
filePath: Type7.Optional(Type7.String({ description: "File to get diagnostics for (mutually exclusive with directory)" })),
|
|
50370
50402
|
directory: Type7.Optional(Type7.String({
|
|
@@ -50457,8 +50489,8 @@ function registerLspTools(pi, ctx) {
|
|
|
50457
50489
|
}
|
|
50458
50490
|
|
|
50459
50491
|
// src/tools/navigate.ts
|
|
50460
|
-
import { StringEnum as StringEnum4 } from "@
|
|
50461
|
-
import { Type as Type8 } from "
|
|
50492
|
+
import { StringEnum as StringEnum4 } from "@earendil-works/pi-ai";
|
|
50493
|
+
import { Type as Type8 } from "typebox";
|
|
50462
50494
|
function navigateParamsSchema() {
|
|
50463
50495
|
return Type8.Object({
|
|
50464
50496
|
op: StringEnum4(["call_tree", "callers", "trace_to", "impact", "trace_data"], {
|
|
@@ -50620,7 +50652,7 @@ function registerNavigateTool(pi, ctx) {
|
|
|
50620
50652
|
// src/tools/reading.ts
|
|
50621
50653
|
import { stat as stat2 } from "node:fs/promises";
|
|
50622
50654
|
import { resolve as resolve4 } from "node:path";
|
|
50623
|
-
import { Type as Type9 } from "
|
|
50655
|
+
import { Type as Type9 } from "typebox";
|
|
50624
50656
|
var OutlineParams = Type9.Object({
|
|
50625
50657
|
target: Type9.Union([Type9.String(), Type9.Array(Type9.String())], {
|
|
50626
50658
|
description: "What to outline: a file path, directory path, URL (http:// or https://), or array of file paths. The mode is auto-detected: URLs by `http://`/`https://` prefix, directories by stat, arrays as multi-file. Directory walks cap at 200 files."
|
|
@@ -50880,8 +50912,8 @@ ${lines}`;
|
|
|
50880
50912
|
}
|
|
50881
50913
|
|
|
50882
50914
|
// src/tools/refactor.ts
|
|
50883
|
-
import { StringEnum as StringEnum5 } from "@
|
|
50884
|
-
import { Type as Type10 } from "
|
|
50915
|
+
import { StringEnum as StringEnum5 } from "@earendil-works/pi-ai";
|
|
50916
|
+
import { Type as Type10 } from "typebox";
|
|
50885
50917
|
var RefactorParams = Type10.Object({
|
|
50886
50918
|
op: StringEnum5(["move", "extract", "inline"], { description: "Refactoring operation" }),
|
|
50887
50919
|
filePath: Type10.String({ description: "Source file" }),
|
|
@@ -50977,8 +51009,8 @@ function registerRefactorTool(pi, ctx) {
|
|
|
50977
51009
|
}
|
|
50978
51010
|
|
|
50979
51011
|
// src/tools/safety.ts
|
|
50980
|
-
import { StringEnum as StringEnum6 } from "@
|
|
50981
|
-
import { Type as Type11 } from "
|
|
51012
|
+
import { StringEnum as StringEnum6 } from "@earendil-works/pi-ai";
|
|
51013
|
+
import { Type as Type11 } from "typebox";
|
|
50982
51014
|
var SafetyParams = Type11.Object({
|
|
50983
51015
|
op: StringEnum6(["undo", "history", "checkpoint", "restore", "list"], {
|
|
50984
51016
|
description: "Safety operation"
|
|
@@ -51110,7 +51142,7 @@ function registerSafetyTool(pi, ctx) {
|
|
|
51110
51142
|
}
|
|
51111
51143
|
|
|
51112
51144
|
// src/tools/semantic.ts
|
|
51113
|
-
import { Type as Type12 } from "
|
|
51145
|
+
import { Type as Type12 } from "typebox";
|
|
51114
51146
|
var SearchParams2 = Type12.Object({
|
|
51115
51147
|
query: Type12.String({
|
|
51116
51148
|
description: "Concept or capability to find, phrased as a programmer would describe the code. Examples: 'fuzzy match with whitespace tolerance', 'undo backup before edit', 'retry failed network request'."
|
|
@@ -51139,6 +51171,16 @@ function buildSemanticSections(args, payload, theme) {
|
|
|
51139
51171
|
const lines = [theme.fg("accent", shortenPath(file2))];
|
|
51140
51172
|
fileResults.forEach((result) => {
|
|
51141
51173
|
const score = asNumber(result.score);
|
|
51174
|
+
const source = asString(result.source);
|
|
51175
|
+
if (source === "lexical") {
|
|
51176
|
+
lines.push(` ↳ ${theme.fg("muted", `[lexical match${score !== undefined ? ` — score ${score.toFixed(3)}` : ""}]`)}`);
|
|
51177
|
+
const snippet2 = asString(result.snippet);
|
|
51178
|
+
if (snippet2) {
|
|
51179
|
+
lines.push(...snippet2.split(`
|
|
51180
|
+
`).map((line) => ` ${line}`));
|
|
51181
|
+
}
|
|
51182
|
+
return;
|
|
51183
|
+
}
|
|
51142
51184
|
const startLine = asNumber(result.start_line);
|
|
51143
51185
|
const endLine = asNumber(result.end_line);
|
|
51144
51186
|
const range = startLine !== undefined ? `${startLine}${endLine && endLine !== startLine ? `-${endLine}` : ""}` : "?";
|
|
@@ -51169,21 +51211,21 @@ function registerSemanticTool(pi, ctx) {
|
|
|
51169
51211
|
name: "aft_search",
|
|
51170
51212
|
label: "semantic search",
|
|
51171
51213
|
description: [
|
|
51172
|
-
"Find symbols by concept
|
|
51214
|
+
"Find symbols by concept using hybrid semantic + lexical search. Returns ranked code matches with similarity scores and provenance tags.",
|
|
51173
51215
|
"",
|
|
51174
51216
|
"When to reach for it:",
|
|
51175
51217
|
"- Exploring an unfamiliar area: 'where is rate limiting handled', 'how does auth flow work'",
|
|
51176
51218
|
"- Concept doesn't appear as a literal string: 'retry logic', 'cache invalidation', 'graceful shutdown'",
|
|
51219
|
+
"- Filename-shaped concepts: 'the bridge spawn helper', 'the session detection module'",
|
|
51177
51220
|
"- After 2+ grep attempts that came back empty or noisy",
|
|
51178
51221
|
"- You know roughly what the function does but not what it's named",
|
|
51179
51222
|
"",
|
|
51180
51223
|
"When NOT to use:",
|
|
51181
|
-
"- You have a specific symbol name → use grep",
|
|
51182
51224
|
"- You have an error message or stack trace → use grep",
|
|
51183
51225
|
"- You want the file/module structure → use aft_outline",
|
|
51184
51226
|
"- You're following a call chain → use aft_navigate",
|
|
51185
51227
|
"",
|
|
51186
|
-
"
|
|
51228
|
+
"Each result tags `source` as one of: 'semantic' (embedding match only), 'lexical' (trigram exact-token match the embedding lane missed), or 'hybrid' (both lanes agreed — strongest signal)."
|
|
51187
51229
|
].join(`
|
|
51188
51230
|
`),
|
|
51189
51231
|
parameters: SearchParams2,
|
|
@@ -51205,8 +51247,8 @@ function registerSemanticTool(pi, ctx) {
|
|
|
51205
51247
|
}
|
|
51206
51248
|
|
|
51207
51249
|
// src/tools/structure.ts
|
|
51208
|
-
import { StringEnum as StringEnum7 } from "@
|
|
51209
|
-
import { Type as Type13 } from "
|
|
51250
|
+
import { StringEnum as StringEnum7 } from "@earendil-works/pi-ai";
|
|
51251
|
+
import { Type as Type13 } from "typebox";
|
|
51210
51252
|
var TransformParams = Type13.Object({
|
|
51211
51253
|
op: StringEnum7(["add_member", "add_derive", "wrap_try_catch", "add_decorator", "add_struct_tags"], { description: "Transformation operation" }),
|
|
51212
51254
|
filePath: Type13.String({ description: "Path to the source file" }),
|
|
@@ -51344,8 +51386,8 @@ function buildWorkflowHints(opts) {
|
|
|
51344
51386
|
sections.push(`**Web/URL access**: \`aft_outline({ url })\` first for structure, then \`aft_zoom({ url, symbol: "<heading>" })\` for the specific section.`);
|
|
51345
51387
|
}
|
|
51346
51388
|
if (hasOutline && hasZoom && (hasGrep || hasSearch)) {
|
|
51347
|
-
const locator = hasGrep
|
|
51348
|
-
sections.push(`**Code exploration**: ${locator} to locate → \`aft_outline\` for structure → \`aft_zoom\` for symbol(s).`);
|
|
51389
|
+
const locator = hasGrep ? `\`${grepName}\`` : "`aft_search`";
|
|
51390
|
+
sections.push(hasGrep && hasSearch ? `**Code exploration**: For exact identifiers (\`useState\`, function names, env vars), error messages, or path-shaped queries → \`${grepName}\` first. For broad concepts ('where is X handled', 'how does Y work') → \`aft_search\`. Then use \`aft_outline\` for structure → \`aft_zoom\` for symbol(s).` : `**Code exploration**: ${locator} to locate → \`aft_outline\` for structure → \`aft_zoom\` for symbol(s).`);
|
|
51349
51391
|
}
|
|
51350
51392
|
if (hasNavigate) {
|
|
51351
51393
|
sections.push([
|
|
@@ -51546,7 +51588,7 @@ async function src_default(pi) {
|
|
|
51546
51588
|
log2(`AFT extension loading (plugin v${PLUGIN_VERSION})`);
|
|
51547
51589
|
let binaryPath;
|
|
51548
51590
|
try {
|
|
51549
|
-
binaryPath = await findBinary();
|
|
51591
|
+
binaryPath = await findBinary(PLUGIN_VERSION);
|
|
51550
51592
|
} catch (err) {
|
|
51551
51593
|
warn2(`Failed to resolve AFT binary: ${err instanceof Error ? err.message : String(err)}. ` + "Tools will not be registered.");
|
|
51552
51594
|
return;
|
package/dist/tools/_shared.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Shared helpers used by every Pi tool wrapper.
|
|
3
3
|
*/
|
|
4
4
|
import type { BinaryBridge, BridgeRequestOptions } from "@cortexkit/aft-bridge";
|
|
5
|
-
import type { AgentToolResult, ExtensionContext } from "@
|
|
5
|
+
import type { AgentToolResult, ExtensionContext } from "@earendil-works/pi-coding-agent";
|
|
6
6
|
import type { PluginContext } from "../types.js";
|
|
7
7
|
/**
|
|
8
8
|
* Per-command timeout overrides (milliseconds).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_shared.d.ts","sourceRoot":"","sources":["../../src/tools/_shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"_shared.d.ts","sourceRoot":"","sources":["../../src/tools/_shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD;;;;;;;GAOG;AACH,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQlE,CAAC;AAEF,wFAAwF;AACxF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAErE;AAED,gEAAgE;AAChE,wBAAgB,SAAS,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAEvE;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAK7E;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EACpC,MAAM,CAAC,EAAE,gBAAgB,EACzB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA0BlC;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,GAAG,OAAO,EAC3C,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,QAAQ,GACjB,eAAe,CAAC,QAAQ,CAAC,CAK3B;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,QAAQ,GAAG,OAAO,EAC/C,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,CAAC,EAAE,QAAQ,GACjB,eAAe,CAAC,QAAQ,CAAC,CAE3B;AAED,8DAA8D;AAC9D,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGvF"}
|
package/dist/tools/ast.d.ts
CHANGED
|
@@ -2,24 +2,24 @@
|
|
|
2
2
|
* ast_grep_search + ast_grep_replace — AST-aware pattern search/rewrite.
|
|
3
3
|
* 6 languages: typescript, tsx, javascript, python, rust, go.
|
|
4
4
|
*/
|
|
5
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
6
|
-
import { type Static } from "
|
|
5
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
6
|
+
import { type Static, Type } from "typebox";
|
|
7
7
|
import type { PluginContext } from "../types.js";
|
|
8
8
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
9
|
-
declare const SearchParams:
|
|
10
|
-
pattern:
|
|
11
|
-
lang:
|
|
12
|
-
paths:
|
|
13
|
-
globs:
|
|
14
|
-
contextLines:
|
|
9
|
+
declare const SearchParams: Type.TObject<{
|
|
10
|
+
pattern: Type.TString;
|
|
11
|
+
lang: Type.TUnsafe<"go" | "python" | "typescript" | "tsx" | "javascript" | "rust">;
|
|
12
|
+
paths: Type.TOptional<Type.TArray<Type.TString>>;
|
|
13
|
+
globs: Type.TOptional<Type.TArray<Type.TString>>;
|
|
14
|
+
contextLines: Type.TOptional<Type.TNumber>;
|
|
15
15
|
}>;
|
|
16
|
-
declare const ReplaceParams:
|
|
17
|
-
pattern:
|
|
18
|
-
rewrite:
|
|
19
|
-
lang:
|
|
20
|
-
paths:
|
|
21
|
-
globs:
|
|
22
|
-
dryRun:
|
|
16
|
+
declare const ReplaceParams: Type.TObject<{
|
|
17
|
+
pattern: Type.TString;
|
|
18
|
+
rewrite: Type.TString;
|
|
19
|
+
lang: Type.TUnsafe<"go" | "python" | "typescript" | "tsx" | "javascript" | "rust">;
|
|
20
|
+
paths: Type.TOptional<Type.TArray<Type.TString>>;
|
|
21
|
+
globs: Type.TOptional<Type.TArray<Type.TString>>;
|
|
22
|
+
dryRun: Type.TOptional<Type.TBoolean>;
|
|
23
23
|
}>;
|
|
24
24
|
export interface AstSurface {
|
|
25
25
|
astSearch: boolean;
|
|
@@ -30,9 +30,9 @@ export declare function buildAstSearchSections(payload: unknown, theme: Theme):
|
|
|
30
30
|
/** Exported for renderer unit tests. */
|
|
31
31
|
export declare function buildAstReplaceSections(payload: unknown, theme: Theme): string[];
|
|
32
32
|
/** Exported for renderer unit tests. */
|
|
33
|
-
export declare function renderAstCall(toolName: "ast_grep_search" | "ast_grep_replace", args: Static<typeof SearchParams> | Static<typeof ReplaceParams>, theme: Theme, context: RenderContextLike): import("@
|
|
33
|
+
export declare function renderAstCall(toolName: "ast_grep_search" | "ast_grep_replace", args: Static<typeof SearchParams> | Static<typeof ReplaceParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
34
34
|
/** Exported for renderer unit tests. */
|
|
35
|
-
export declare function renderAstResult(toolName: "ast_grep_search" | "ast_grep_replace", result: AgentToolResult<unknown>, theme: Theme, context: RenderContextLike): import("@
|
|
35
|
+
export declare function renderAstResult(toolName: "ast_grep_search" | "ast_grep_replace", result: AgentToolResult<unknown>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
36
36
|
export declare function registerAstTools(pi: ExtensionAPI, ctx: PluginContext, surface: AstSurface): void;
|
|
37
37
|
export {};
|
|
38
38
|
//# sourceMappingURL=ast.d.ts.map
|
package/dist/tools/ast.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/tools/ast.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/tools/ast.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EASL,KAAK,iBAAiB,EAMvB,MAAM,qBAAqB,CAAC;AAM7B,QAAA,MAAM,YAAY;;;;;;EAehB,CAAC;AAEH,QAAA,MAAM,aAAa;;;;;;;EAOjB,CAAC;AAEH,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;CACrB;AAkCD,wCAAwC;AACxC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,CAqD/E;AAED,wCAAwC;AACxC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,CAmDhF;AAED,wCAAwC;AACxC,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,iBAAiB,GAAG,kBAAkB,EAChD,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,GAAG,MAAM,CAAC,OAAO,aAAa,CAAC,EAChE,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAa3B;AAED,wCAAwC;AACxC,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,iBAAiB,GAAG,kBAAkB,EAChD,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAiB3B;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI,CAsEhG"}
|
package/dist/tools/bash.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { AgentToolResult, ExtensionAPI, ExtensionContext } from "@
|
|
2
|
-
import { type Static } from "
|
|
1
|
+
import type { AgentToolResult, ExtensionAPI, ExtensionContext } from "@earendil-works/pi-coding-agent";
|
|
2
|
+
import { type Static, Type } from "typebox";
|
|
3
3
|
import type { PluginContext } from "../types.js";
|
|
4
|
-
declare const BashTaskParams:
|
|
5
|
-
task_id:
|
|
4
|
+
declare const BashTaskParams: Type.TObject<{
|
|
5
|
+
task_id: Type.TString;
|
|
6
6
|
}>;
|
|
7
7
|
interface BashStatusDetails {
|
|
8
8
|
success: boolean;
|
|
@@ -22,8 +22,8 @@ export declare function createBashStatusTool(ctx: PluginContext): {
|
|
|
22
22
|
label: string;
|
|
23
23
|
description: string;
|
|
24
24
|
promptSnippet: string;
|
|
25
|
-
parameters:
|
|
26
|
-
task_id:
|
|
25
|
+
parameters: Type.TObject<{
|
|
26
|
+
task_id: Type.TString;
|
|
27
27
|
}>;
|
|
28
28
|
execute(_toolCallId: string, params: Static<typeof BashTaskParams>, _signal: AbortSignal | undefined, _onUpdate: ((update: AgentToolResult<BashStatusDetails>) => void) | undefined, extCtx: ExtensionContext): Promise<AgentToolResult<BashStatusDetails>>;
|
|
29
29
|
};
|
|
@@ -32,8 +32,8 @@ export declare function createBashKillTool(ctx: PluginContext): {
|
|
|
32
32
|
label: string;
|
|
33
33
|
description: string;
|
|
34
34
|
promptSnippet: string;
|
|
35
|
-
parameters:
|
|
36
|
-
task_id:
|
|
35
|
+
parameters: Type.TObject<{
|
|
36
|
+
task_id: Type.TString;
|
|
37
37
|
}>;
|
|
38
38
|
execute(_toolCallId: string, params: Static<typeof BashTaskParams>, _signal: AbortSignal | undefined, _onUpdate: ((update: AgentToolResult<BashKillDetails>) => void) | undefined, extCtx: ExtensionContext): Promise<AgentToolResult<BashKillDetails>>;
|
|
39
39
|
};
|
package/dist/tools/bash.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bash.d.ts","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,gBAAgB,EAEjB,MAAM
|
|
1
|
+
{"version":3,"file":"bash.d.ts","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,gBAAgB,EAEjB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAqEjD,QAAA,MAAM,cAAc;;EAIlB,CAAC;AAWH,UAAU,iBAAiB;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,eAAe;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAsCD,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CA0J3E;AAwCD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,aAAa;;;;;;;;yBASpC,MAAM,UACX,MAAM,CAAC,OAAO,cAAc,CAAC,WAC5B,WAAW,GAAG,SAAS,aACrB,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,UACrE,gBAAgB;EAW7B;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,aAAa;;;;;;;;yBASlC,MAAM,UACX,MAAM,CAAC,OAAO,cAAc,CAAC,WAC5B,WAAW,GAAG,SAAS,aACrB,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,UACnE,gBAAgB;EAW7B"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* aft_conflicts — one-call merge conflict inspection.
|
|
3
3
|
*/
|
|
4
|
-
import type { ExtensionAPI } from "@
|
|
4
|
+
import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
|
|
5
5
|
import type { PluginContext } from "../types.js";
|
|
6
6
|
import { type RenderContextLike, renderErrorResult, renderToolCall } from "./render-helpers.js";
|
|
7
7
|
/** Exported for renderer unit tests. */
|
|
8
|
-
export declare function renderConflictCall(theme: Parameters<typeof renderToolCall>[2], context: RenderContextLike): import("@
|
|
8
|
+
export declare function renderConflictCall(theme: Parameters<typeof renderToolCall>[2], context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
9
9
|
/** Exported for renderer unit tests. */
|
|
10
10
|
export declare function buildConflictSections(text: string): string[];
|
|
11
11
|
/** Exported for renderer unit tests. */
|
|
12
|
-
export declare function renderConflictResult(text: string, theme: Parameters<typeof renderToolCall>[2], context: RenderContextLike): import("@
|
|
12
|
+
export declare function renderConflictResult(text: string, theme: Parameters<typeof renderToolCall>[2], context: RenderContextLike): import("@earendil-works/pi-tui").Container;
|
|
13
13
|
/** Exported for renderer unit tests. */
|
|
14
|
-
export declare function renderConflictToolResult(result: Parameters<typeof renderErrorResult>[0], theme: Parameters<typeof renderToolCall>[2], context: RenderContextLike): import("@
|
|
14
|
+
export declare function renderConflictToolResult(result: Parameters<typeof renderErrorResult>[0], theme: Parameters<typeof renderToolCall>[2], context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
15
15
|
export declare function registerConflictsTool(pi: ExtensionAPI, ctx: PluginContext): void;
|
|
16
16
|
//# sourceMappingURL=conflicts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conflicts.d.ts","sourceRoot":"","sources":["../../src/tools/conflicts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"conflicts.d.ts","sourceRoot":"","sources":["../../src/tools/conflicts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAEL,KAAK,iBAAiB,EACtB,iBAAiB,EAEjB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAI7B,wCAAwC;AACxC,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,EAC3C,OAAO,EAAE,iBAAiB,yCAG3B;AAED,wCAAwC;AACxC,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAe5D;AAED,wCAAwC;AACxC,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,EAC3C,OAAO,EAAE,iBAAiB,8CAM3B;AAED,wCAAwC;AACxC,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAC/C,KAAK,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,EAC3C,OAAO,EAAE,iBAAiB,sFAI3B;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAmBhF"}
|
package/dist/tools/fs.d.ts
CHANGED
|
@@ -2,25 +2,25 @@
|
|
|
2
2
|
* aft_delete + aft_move — filesystem ops with per-file backup.
|
|
3
3
|
* Both go through Rust so backups and checkpoint rollback work the same way.
|
|
4
4
|
*/
|
|
5
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
6
|
-
import { type Static } from "
|
|
5
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
6
|
+
import { type Static, Type } from "typebox";
|
|
7
7
|
import type { PluginContext } from "../types.js";
|
|
8
8
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
9
|
-
declare const DeleteParams:
|
|
10
|
-
files:
|
|
9
|
+
declare const DeleteParams: Type.TObject<{
|
|
10
|
+
files: Type.TArray<Type.TString>;
|
|
11
11
|
}>;
|
|
12
|
-
declare const MoveParams:
|
|
13
|
-
filePath:
|
|
14
|
-
destination:
|
|
12
|
+
declare const MoveParams: Type.TObject<{
|
|
13
|
+
filePath: Type.TString;
|
|
14
|
+
destination: Type.TString;
|
|
15
15
|
}>;
|
|
16
16
|
export interface FsSurface {
|
|
17
17
|
delete: boolean;
|
|
18
18
|
move: boolean;
|
|
19
19
|
}
|
|
20
20
|
/** Exported for renderer unit tests. */
|
|
21
|
-
export declare function renderFsCall(toolName: "aft_delete" | "aft_move", args: Static<typeof DeleteParams> | Static<typeof MoveParams>, theme: Theme, context: RenderContextLike): import("@
|
|
21
|
+
export declare function renderFsCall(toolName: "aft_delete" | "aft_move", args: Static<typeof DeleteParams> | Static<typeof MoveParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
22
22
|
/** Exported for renderer unit tests. */
|
|
23
|
-
export declare function renderFsResult(toolName: "aft_delete" | "aft_move", args: Static<typeof DeleteParams> | Static<typeof MoveParams>, result: AgentToolResult<unknown>, theme: Theme, context: RenderContextLike): import("@
|
|
23
|
+
export declare function renderFsResult(toolName: "aft_delete" | "aft_move", args: Static<typeof DeleteParams> | Static<typeof MoveParams>, result: AgentToolResult<unknown>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
24
24
|
export declare function registerFsTools(pi: ExtensionAPI, ctx: PluginContext, surface: FsSurface): void;
|
|
25
25
|
export {};
|
|
26
26
|
//# sourceMappingURL=fs.d.ts.map
|
package/dist/tools/fs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/tools/fs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/tools/fs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAEL,KAAK,iBAAiB,EAKvB,MAAM,qBAAqB,CAAC;AAE7B,QAAA,MAAM,YAAY;;EAKhB,CAAC;AAEH,QAAA,MAAM,UAAU;;;EAGd,CAAC;AAEH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,wCAAwC;AACxC,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,YAAY,GAAG,UAAU,EACnC,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,GAAG,MAAM,CAAC,OAAO,UAAU,CAAC,EAC7D,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAkB3B;AAED,wCAAwC;AACxC,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,YAAY,GAAG,UAAU,EACnC,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,GAAG,MAAM,CAAC,OAAO,UAAU,CAAC,EAC7D,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAsC3B;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,GAAG,IAAI,CAkG9F"}
|
package/dist/tools/hoisted.d.ts
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* `read` and `grep` keep the default text-only result rendering because our
|
|
17
17
|
* payload (`path`, `pattern`) already aligns with Pi's built-in arg shape.
|
|
18
18
|
*/
|
|
19
|
-
import { type AgentToolResult, type ExtensionAPI } from "@
|
|
19
|
+
import { type AgentToolResult, type ExtensionAPI } from "@earendil-works/pi-coding-agent";
|
|
20
20
|
import type { PluginContext } from "../types.js";
|
|
21
21
|
export interface ToolSurfaceFlags {
|
|
22
22
|
hoistRead: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hoisted.d.ts","sourceRoot":"","sources":["../../src/tools/hoisted.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,YAAY,EAGlB,MAAM
|
|
1
|
+
{"version":3,"file":"hoisted.d.ts","sourceRoot":"","sources":["../../src/tools/hoisted.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,YAAY,EAGlB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAiFjD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,kEAAkE;AAClE,UAAU,mBAAmB;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;IACxB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,gBAAgB,GACxB,IAAI,CAwLN;AAMD;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,eAAe,CAAC,mBAAmB,CAAC,CAiFtC;AAgJD;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CA0B3D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,mBAAmB,EAAE,OAAO,EAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,MAAM,CAgBR"}
|
package/dist/tools/imports.d.ts
CHANGED
|
@@ -2,26 +2,26 @@
|
|
|
2
2
|
* aft_import — language-aware import add/remove/organize.
|
|
3
3
|
* Supports TS, JS, TSX, Python, Rust, Go.
|
|
4
4
|
*/
|
|
5
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
6
|
-
import { type Static } from "
|
|
5
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
6
|
+
import { type Static, Type } from "typebox";
|
|
7
7
|
import type { PluginContext } from "../types.js";
|
|
8
8
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
9
|
-
declare const ImportParams:
|
|
10
|
-
op:
|
|
11
|
-
filePath:
|
|
12
|
-
module:
|
|
13
|
-
names:
|
|
14
|
-
defaultImport:
|
|
15
|
-
removeName:
|
|
16
|
-
typeOnly:
|
|
17
|
-
validate:
|
|
9
|
+
declare const ImportParams: Type.TObject<{
|
|
10
|
+
op: Type.TUnsafe<"add" | "remove" | "organize">;
|
|
11
|
+
filePath: Type.TString;
|
|
12
|
+
module: Type.TOptional<Type.TString>;
|
|
13
|
+
names: Type.TOptional<Type.TArray<Type.TString>>;
|
|
14
|
+
defaultImport: Type.TOptional<Type.TString>;
|
|
15
|
+
removeName: Type.TOptional<Type.TString>;
|
|
16
|
+
typeOnly: Type.TOptional<Type.TBoolean>;
|
|
17
|
+
validate: Type.TOptional<Type.TUnsafe<"syntax" | "full">>;
|
|
18
18
|
}>;
|
|
19
19
|
/** Exported for renderer unit tests. */
|
|
20
20
|
export declare function buildImportSections(args: Static<typeof ImportParams>, payload: unknown, theme: Theme): string[];
|
|
21
21
|
/** Exported for renderer unit tests. */
|
|
22
|
-
export declare function renderImportCall(args: Static<typeof ImportParams>, theme: Theme, context: RenderContextLike): import("@
|
|
22
|
+
export declare function renderImportCall(args: Static<typeof ImportParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
23
23
|
/** Exported for renderer unit tests. */
|
|
24
|
-
export declare function renderImportResult(result: AgentToolResult<unknown>, args: Static<typeof ImportParams>, theme: Theme, context: RenderContextLike): import("@
|
|
24
|
+
export declare function renderImportResult(result: AgentToolResult<unknown>, args: Static<typeof ImportParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
25
25
|
export declare function registerImportTools(pi: ExtensionAPI, ctx: PluginContext): void;
|
|
26
26
|
export {};
|
|
27
27
|
//# sourceMappingURL=imports.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../src/tools/imports.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../src/tools/imports.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAOL,KAAK,iBAAiB,EAIvB,MAAM,qBAAqB,CAAC;AAE7B,QAAA,MAAM,YAAY;;;;;;;;;EAmBhB,CAAC;AAEH,wCAAwC;AACxC,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,EACjC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,GACX,MAAM,EAAE,CAuCV;AAED,wCAAwC;AACxC,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,EACjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAU3B;AAED,wCAAwC;AACxC,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,EACjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAK3B;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAyC9E"}
|
package/dist/tools/lsp.d.ts
CHANGED
|
@@ -3,22 +3,22 @@
|
|
|
3
3
|
* Edit/write flows already inject diagnostics inline; this tool is for
|
|
4
4
|
* explicit checks on a file or directory.
|
|
5
5
|
*/
|
|
6
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
7
|
-
import { type Static } from "
|
|
6
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
7
|
+
import { type Static, Type } from "typebox";
|
|
8
8
|
import type { PluginContext } from "../types.js";
|
|
9
9
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
10
|
-
declare const LspDiagnosticsParams:
|
|
11
|
-
filePath:
|
|
12
|
-
directory:
|
|
13
|
-
severity:
|
|
14
|
-
waitMs:
|
|
10
|
+
declare const LspDiagnosticsParams: Type.TObject<{
|
|
11
|
+
filePath: Type.TOptional<Type.TString>;
|
|
12
|
+
directory: Type.TOptional<Type.TString>;
|
|
13
|
+
severity: Type.TOptional<Type.TUnsafe<"all" | "error" | "warning" | "information" | "hint">>;
|
|
14
|
+
waitMs: Type.TOptional<Type.TNumber>;
|
|
15
15
|
}>;
|
|
16
16
|
/** Exported for renderer unit tests. */
|
|
17
17
|
export declare function buildDiagnosticsSections(payload: unknown, theme: Theme): string[];
|
|
18
18
|
/** Exported for renderer unit tests. */
|
|
19
|
-
export declare function renderDiagnosticsCall(args: Static<typeof LspDiagnosticsParams>, theme: Theme, context: RenderContextLike): import("@
|
|
19
|
+
export declare function renderDiagnosticsCall(args: Static<typeof LspDiagnosticsParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
20
20
|
/** Exported for renderer unit tests. */
|
|
21
|
-
export declare function renderDiagnosticsResult(result: AgentToolResult<unknown>, theme: Theme, context: RenderContextLike): import("@
|
|
21
|
+
export declare function renderDiagnosticsResult(result: AgentToolResult<unknown>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
22
22
|
export declare function registerLspTools(pi: ExtensionAPI, ctx: PluginContext): void;
|
|
23
23
|
export {};
|
|
24
24
|
//# sourceMappingURL=lsp.d.ts.map
|
package/dist/tools/lsp.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lsp.d.ts","sourceRoot":"","sources":["../../src/tools/lsp.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"lsp.d.ts","sourceRoot":"","sources":["../../src/tools/lsp.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EASL,KAAK,iBAAiB,EAMvB,MAAM,qBAAqB,CAAC;AAE7B,QAAA,MAAM,oBAAoB;;;;;EAmBxB,CAAC;AAEH,wCAAwC;AACxC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,CAyCjF;AAED,wCAAwC;AACxC,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,CAAC,OAAO,oBAAoB,CAAC,EACzC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAU3B;AAED,wCAAwC;AACxC,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAI3B;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAqC3E"}
|
package/dist/tools/navigate.d.ts
CHANGED
|
@@ -2,24 +2,24 @@
|
|
|
2
2
|
* aft_navigate — call-graph navigation across files.
|
|
3
3
|
* Ops: call_tree, callers, trace_to, impact, trace_data.
|
|
4
4
|
*/
|
|
5
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
6
|
-
import { type Static } from "
|
|
5
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
6
|
+
import { type Static, Type } from "typebox";
|
|
7
7
|
import type { PluginContext } from "../types.js";
|
|
8
8
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
9
|
-
declare function navigateParamsSchema():
|
|
10
|
-
op:
|
|
11
|
-
filePath:
|
|
12
|
-
symbol:
|
|
13
|
-
depth:
|
|
14
|
-
expression:
|
|
9
|
+
declare function navigateParamsSchema(): Type.TObject<{
|
|
10
|
+
op: Type.TUnsafe<"callers" | "trace_to" | "trace_data" | "impact" | "call_tree">;
|
|
11
|
+
filePath: Type.TString;
|
|
12
|
+
symbol: Type.TString;
|
|
13
|
+
depth: Type.TOptional<Type.TNumber>;
|
|
14
|
+
expression: Type.TOptional<Type.TString>;
|
|
15
15
|
}>;
|
|
16
16
|
type NavigateArgs = Static<ReturnType<typeof navigateParamsSchema>>;
|
|
17
17
|
/** Exported for renderer unit tests. */
|
|
18
18
|
export declare function buildNavigateSections(args: NavigateArgs, payload: unknown, theme: Theme): string[];
|
|
19
19
|
/** Exported for renderer unit tests. */
|
|
20
|
-
export declare function renderNavigateCall(args: NavigateArgs, theme: Theme, context: RenderContextLike): import("@
|
|
20
|
+
export declare function renderNavigateCall(args: NavigateArgs, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
21
21
|
/** Exported for renderer unit tests. */
|
|
22
|
-
export declare function renderNavigateResult(result: AgentToolResult<unknown>, args: NavigateArgs, theme: Theme, context: RenderContextLike): import("@
|
|
22
|
+
export declare function renderNavigateResult(result: AgentToolResult<unknown>, args: NavigateArgs, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
23
23
|
export declare function registerNavigateTool(pi: ExtensionAPI, ctx: PluginContext): void;
|
|
24
24
|
export {};
|
|
25
25
|
//# sourceMappingURL=navigate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigate.d.ts","sourceRoot":"","sources":["../../src/tools/navigate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"navigate.d.ts","sourceRoot":"","sources":["../../src/tools/navigate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAQL,KAAK,iBAAiB,EAKvB,MAAM,qBAAqB,CAAC;AAE7B,iBAAS,oBAAoB;;;;;;GAY5B;AAED,KAAK,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;AAgCpE,wCAAwC;AACxC,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,GACX,MAAM,EAAE,CA0FV;AAED,wCAAwC;AACxC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAiB,yCAS9F;AAED,wCAAwC;AACxC,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAO3B;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CA6B/E"}
|
package/dist/tools/reading.d.ts
CHANGED
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
* AFT reading tools: aft_outline + aft_zoom.
|
|
3
3
|
* Structural overview and symbol/section inspection.
|
|
4
4
|
*/
|
|
5
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
6
|
-
import { type Static } from "
|
|
5
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
6
|
+
import { type Static, Type } from "typebox";
|
|
7
7
|
import type { PluginContext } from "../types.js";
|
|
8
8
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
9
|
-
declare const OutlineParams:
|
|
10
|
-
target:
|
|
9
|
+
declare const OutlineParams: Type.TObject<{
|
|
10
|
+
target: Type.TUnion<[Type.TString, Type.TArray<Type.TString>]>;
|
|
11
11
|
}>;
|
|
12
|
-
declare const ZoomParams:
|
|
13
|
-
filePath:
|
|
14
|
-
url:
|
|
15
|
-
symbol:
|
|
16
|
-
symbols:
|
|
17
|
-
contextLines:
|
|
12
|
+
declare const ZoomParams: Type.TObject<{
|
|
13
|
+
filePath: Type.TOptional<Type.TString>;
|
|
14
|
+
url: Type.TOptional<Type.TString>;
|
|
15
|
+
symbol: Type.TOptional<Type.TString>;
|
|
16
|
+
symbols: Type.TOptional<Type.TArray<Type.TString>>;
|
|
17
|
+
contextLines: Type.TOptional<Type.TNumber>;
|
|
18
18
|
}>;
|
|
19
19
|
export interface ReadingSurface {
|
|
20
20
|
outline: boolean;
|
|
@@ -36,13 +36,13 @@ export declare function buildOutlineSections(text: string, theme: Theme): string
|
|
|
36
36
|
/** Exported for renderer unit tests. */
|
|
37
37
|
export declare function buildZoomSections(args: Static<typeof ZoomParams>, payload: unknown, theme: Theme): string[];
|
|
38
38
|
/** Exported for renderer unit tests. */
|
|
39
|
-
export declare function renderOutlineCall(args: Static<typeof OutlineParams>, theme: Theme, context: RenderContextLike): import("@
|
|
39
|
+
export declare function renderOutlineCall(args: Static<typeof OutlineParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
40
40
|
/** Exported for renderer unit tests. */
|
|
41
|
-
export declare function renderOutlineResult(result: AgentToolResult<unknown>, theme: Theme, context: RenderContextLike): import("@
|
|
41
|
+
export declare function renderOutlineResult(result: AgentToolResult<unknown>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
42
42
|
/** Exported for renderer unit tests. */
|
|
43
|
-
export declare function renderZoomCall(args: Static<typeof ZoomParams>, theme: Theme, context: RenderContextLike): import("@
|
|
43
|
+
export declare function renderZoomCall(args: Static<typeof ZoomParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
44
44
|
/** Exported for renderer unit tests. */
|
|
45
|
-
export declare function renderZoomResult(result: AgentToolResult<unknown>, args: Static<typeof ZoomParams>, theme: Theme, context: RenderContextLike): import("@
|
|
45
|
+
export declare function renderZoomResult(result: AgentToolResult<unknown>, args: Static<typeof ZoomParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
46
46
|
export declare function registerReadingTools(pi: ExtensionAPI, ctx: PluginContext, surface: ReadingSurface): void;
|
|
47
47
|
/**
|
|
48
48
|
* Format multi-symbol zoom results as plain text. Successful entries use
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reading.d.ts","sourceRoot":"","sources":["../../src/tools/reading.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"reading.d.ts","sourceRoot":"","sources":["../../src/tools/reading.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAOL,KAAK,iBAAiB,EAKvB,MAAM,qBAAqB,CAAC;AAE7B,QAAA,MAAM,aAAa;;EAKjB,CAAC;AAEH,QAAA,MAAM,UAAU;;;;;;EAkBd,CAAC;AAWH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,UAAU,qBAAqB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,eAAe;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,qBAAqB,EAAE,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wCAAwC;AACxC,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,CAOzE;AAED,wCAAwC;AACxC,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,CAAC,OAAO,UAAU,CAAC,EAC/B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,GACX,MAAM,EAAE,CAwFV;AAED,wCAAwC;AACxC,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,CAAC,OAAO,aAAa,CAAC,EAClC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAQ3B;AAED,wCAAwC;AACxC,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAI3B;AAED,wCAAwC;AACxC,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,CAAC,OAAO,UAAU,CAAC,EAC/B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAa3B;AAED,wCAAwC;AACxC,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,OAAO,UAAU,CAAC,EAC/B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAI3B;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,cAAc,GACtB,IAAI,CAwJN;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACnC,eAAe,CAyBjB"}
|
package/dist/tools/refactor.d.ts
CHANGED
|
@@ -2,27 +2,27 @@
|
|
|
2
2
|
* aft_refactor — workspace-wide refactoring.
|
|
3
3
|
* Ops: move (symbol across files), extract (lines → function), inline (call site).
|
|
4
4
|
*/
|
|
5
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
6
|
-
import { type Static } from "
|
|
5
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
6
|
+
import { type Static, Type } from "typebox";
|
|
7
7
|
import type { PluginContext } from "../types.js";
|
|
8
8
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
9
|
-
declare const RefactorParams:
|
|
10
|
-
op:
|
|
11
|
-
filePath:
|
|
12
|
-
symbol:
|
|
13
|
-
destination:
|
|
14
|
-
scope:
|
|
15
|
-
name:
|
|
16
|
-
startLine:
|
|
17
|
-
endLine:
|
|
18
|
-
callSiteLine:
|
|
9
|
+
declare const RefactorParams: Type.TObject<{
|
|
10
|
+
op: Type.TUnsafe<"move" | "extract" | "inline">;
|
|
11
|
+
filePath: Type.TString;
|
|
12
|
+
symbol: Type.TOptional<Type.TString>;
|
|
13
|
+
destination: Type.TOptional<Type.TString>;
|
|
14
|
+
scope: Type.TOptional<Type.TString>;
|
|
15
|
+
name: Type.TOptional<Type.TString>;
|
|
16
|
+
startLine: Type.TOptional<Type.TNumber>;
|
|
17
|
+
endLine: Type.TOptional<Type.TNumber>;
|
|
18
|
+
callSiteLine: Type.TOptional<Type.TNumber>;
|
|
19
19
|
}>;
|
|
20
20
|
/** Exported for renderer unit tests. */
|
|
21
21
|
export declare function buildRefactorSections(args: Static<typeof RefactorParams>, payload: unknown, theme: Theme): string[];
|
|
22
22
|
/** Exported for renderer unit tests. */
|
|
23
|
-
export declare function renderRefactorCall(args: Static<typeof RefactorParams>, theme: Theme, context: RenderContextLike): import("@
|
|
23
|
+
export declare function renderRefactorCall(args: Static<typeof RefactorParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
24
24
|
/** Exported for renderer unit tests. */
|
|
25
|
-
export declare function renderRefactorResult(result: AgentToolResult<unknown>, args: Static<typeof RefactorParams>, theme: Theme, context: RenderContextLike): import("@
|
|
25
|
+
export declare function renderRefactorResult(result: AgentToolResult<unknown>, args: Static<typeof RefactorParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
26
26
|
export declare function registerRefactorTool(pi: ExtensionAPI, ctx: PluginContext): void;
|
|
27
27
|
export {};
|
|
28
28
|
//# sourceMappingURL=refactor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refactor.d.ts","sourceRoot":"","sources":["../../src/tools/refactor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"refactor.d.ts","sourceRoot":"","sources":["../../src/tools/refactor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAOL,KAAK,iBAAiB,EAKvB,MAAM,qBAAqB,CAAC;AAE7B,QAAA,MAAM,cAAc;;;;;;;;;;EAUlB,CAAC;AAEH,wCAAwC;AACxC,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,CAAC,OAAO,cAAc,CAAC,EACnC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,GACX,MAAM,EAAE,CAiCV;AAED,wCAAwC;AACxC,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,CAAC,OAAO,cAAc,CAAC,EACnC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAU3B;AAED,wCAAwC;AACxC,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,OAAO,cAAc,CAAC,EACnC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAO3B;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAyC/E"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared Pi TUI rendering helpers for AFT-backed tools.
|
|
3
3
|
*/
|
|
4
|
-
import { type AgentToolResult, type Theme } from "@
|
|
5
|
-
import { type Component, Container, Text } from "@
|
|
4
|
+
import { type AgentToolResult, type Theme } from "@earendil-works/pi-coding-agent";
|
|
5
|
+
import { type Component, Container, Text } from "@earendil-works/pi-tui";
|
|
6
6
|
export interface RenderContextLike<TArgs = unknown> {
|
|
7
7
|
args: TArgs;
|
|
8
8
|
lastComponent: Component | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-helpers.d.ts","sourceRoot":"","sources":["../../src/tools/render-helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,KAAK,eAAe,EAAc,KAAK,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"render-helpers.d.ts","sourceRoot":"","sources":["../../src/tools/render-helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,KAAK,eAAe,EAAc,KAAK,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC/F,OAAO,EAAE,KAAK,SAAS,EAAE,SAAS,EAAU,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAEjF,MAAM,WAAW,iBAAiB,CAAC,KAAK,GAAG,OAAO;IAChD,IAAI,EAAE,KAAK,CAAC;IACZ,aAAa,EAAE,SAAS,GAAG,SAAS,CAAC;IACrC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,CAE3D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAErE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIhD;AAED,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,GACzB,IAAI,CAKN;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAGzE;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,MAAM,CAM3E;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,OAAO,CASlF;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,GACzB,IAAI,CAKN;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAIpF;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,iBAAiB,GAAG,SAAS,CAYxF;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAG5E;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAInE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE3D;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE3D;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAE7D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,SAAS,SAAQ,GAAG,MAAM,CAExF;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,MAAM,CAM5D;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAUlD;AAED,wBAAgB,WAAW,CAAC,CAAC,EAC3B,KAAK,EAAE,CAAC,EAAE,EACV,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAAG,SAAS,GACvC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CASlB;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,CAEvE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAcpE;AAED,wBAAgB,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIxF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAOlE;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CA6ClE;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAQ7D"}
|
package/dist/tools/safety.d.ts
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* aft_safety — per-file undo, named checkpoints, restore, list, history.
|
|
3
3
|
*/
|
|
4
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
5
|
-
import { type Static } from "
|
|
4
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
5
|
+
import { type Static, Type } from "typebox";
|
|
6
6
|
import type { PluginContext } from "../types.js";
|
|
7
7
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
8
|
-
declare const SafetyParams:
|
|
9
|
-
op:
|
|
10
|
-
filePath:
|
|
11
|
-
name:
|
|
12
|
-
files:
|
|
8
|
+
declare const SafetyParams: Type.TObject<{
|
|
9
|
+
op: Type.TUnsafe<"undo" | "history" | "checkpoint" | "restore" | "list">;
|
|
10
|
+
filePath: Type.TOptional<Type.TString>;
|
|
11
|
+
name: Type.TOptional<Type.TString>;
|
|
12
|
+
files: Type.TOptional<Type.TArray<Type.TString>>;
|
|
13
13
|
}>;
|
|
14
14
|
/** Exported for renderer unit tests. */
|
|
15
15
|
export declare function buildSafetySections(args: Static<typeof SafetyParams>, payload: unknown, theme: Theme): string[];
|
|
16
16
|
/** Exported for renderer unit tests. */
|
|
17
|
-
export declare function renderSafetyCall(args: Static<typeof SafetyParams>, theme: Theme, context: RenderContextLike): import("@
|
|
17
|
+
export declare function renderSafetyCall(args: Static<typeof SafetyParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
18
18
|
/** Exported for renderer unit tests. */
|
|
19
|
-
export declare function renderSafetyResult(result: AgentToolResult<unknown>, args: Static<typeof SafetyParams>, theme: Theme, context: RenderContextLike): import("@
|
|
19
|
+
export declare function renderSafetyResult(result: AgentToolResult<unknown>, args: Static<typeof SafetyParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
20
20
|
export declare function registerSafetyTool(pi: ExtensionAPI, ctx: PluginContext): void;
|
|
21
21
|
export {};
|
|
22
22
|
//# sourceMappingURL=safety.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../src/tools/safety.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../src/tools/safety.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAQL,KAAK,iBAAiB,EAKvB,MAAM,qBAAqB,CAAC;AAE7B,QAAA,MAAM,YAAY;;;;;EAahB,CAAC;AAEH,wCAAwC;AACxC,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,EACjC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,GACX,MAAM,EAAE,CAsEV;AAED,wCAAwC;AACxC,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,EACjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAO3B;AAED,wCAAwC;AACxC,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,EACjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAO3B;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAwD7E"}
|
package/dist/tools/semantic.d.ts
CHANGED
|
@@ -3,20 +3,20 @@
|
|
|
3
3
|
* Only registered when config.semantic_search is enabled AND
|
|
4
4
|
* the ONNX runtime / configured backend is available.
|
|
5
5
|
*/
|
|
6
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
7
|
-
import { type Static } from "
|
|
6
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
7
|
+
import { type Static, Type } from "typebox";
|
|
8
8
|
import type { PluginContext } from "../types.js";
|
|
9
9
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
10
|
-
declare const SearchParams:
|
|
11
|
-
query:
|
|
12
|
-
topK:
|
|
10
|
+
declare const SearchParams: Type.TObject<{
|
|
11
|
+
query: Type.TString;
|
|
12
|
+
topK: Type.TOptional<Type.TNumber>;
|
|
13
13
|
}>;
|
|
14
14
|
/** Exported for renderer unit tests. */
|
|
15
15
|
export declare function buildSemanticSections(args: Static<typeof SearchParams>, payload: unknown, theme: Theme): string[];
|
|
16
16
|
/** Exported for renderer unit tests. */
|
|
17
|
-
export declare function renderSemanticCall(args: Static<typeof SearchParams>, theme: Theme, context: RenderContextLike): import("@
|
|
17
|
+
export declare function renderSemanticCall(args: Static<typeof SearchParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
18
18
|
/** Exported for renderer unit tests. */
|
|
19
|
-
export declare function renderSemanticResult(result: AgentToolResult<unknown>, args: Static<typeof SearchParams>, theme: Theme, context: RenderContextLike): import("@
|
|
19
|
+
export declare function renderSemanticResult(result: AgentToolResult<unknown>, args: Static<typeof SearchParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
20
20
|
export declare function registerSemanticTool(pi: ExtensionAPI, ctx: PluginContext): void;
|
|
21
21
|
export {};
|
|
22
22
|
//# sourceMappingURL=semantic.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../src/tools/semantic.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../src/tools/semantic.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAOL,KAAK,iBAAiB,EAKvB,MAAM,qBAAqB,CAAC;AAE7B,QAAA,MAAM,YAAY;;;EAQhB,CAAC;AAEH,wCAAwC;AACxC,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,EACjC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,GACX,MAAM,EAAE,CAwDV;AAED,wCAAwC;AACxC,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,EACjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAG3B;AAED,wCAAwC;AACxC,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,OAAO,YAAY,CAAC,EACjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAO3B;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CA0C/E"}
|
|
@@ -2,31 +2,31 @@
|
|
|
2
2
|
* aft_transform — scope-aware structural code transformations.
|
|
3
3
|
* Ops: add_member, add_derive, wrap_try_catch, add_decorator, add_struct_tags.
|
|
4
4
|
*/
|
|
5
|
-
import type { AgentToolResult, ExtensionAPI, Theme } from "@
|
|
6
|
-
import { type Static } from "
|
|
5
|
+
import type { AgentToolResult, ExtensionAPI, Theme } from "@earendil-works/pi-coding-agent";
|
|
6
|
+
import { type Static, Type } from "typebox";
|
|
7
7
|
import type { PluginContext } from "../types.js";
|
|
8
8
|
import { type RenderContextLike } from "./render-helpers.js";
|
|
9
|
-
declare const TransformParams:
|
|
10
|
-
op:
|
|
11
|
-
filePath:
|
|
12
|
-
container:
|
|
13
|
-
code:
|
|
14
|
-
target:
|
|
15
|
-
derives:
|
|
16
|
-
catchBody:
|
|
17
|
-
decorator:
|
|
18
|
-
field:
|
|
19
|
-
tag:
|
|
20
|
-
value:
|
|
21
|
-
position:
|
|
22
|
-
validate:
|
|
9
|
+
declare const TransformParams: Type.TObject<{
|
|
10
|
+
op: Type.TUnsafe<"add_member" | "add_derive" | "wrap_try_catch" | "add_decorator" | "add_struct_tags">;
|
|
11
|
+
filePath: Type.TString;
|
|
12
|
+
container: Type.TOptional<Type.TString>;
|
|
13
|
+
code: Type.TOptional<Type.TString>;
|
|
14
|
+
target: Type.TOptional<Type.TString>;
|
|
15
|
+
derives: Type.TOptional<Type.TArray<Type.TString>>;
|
|
16
|
+
catchBody: Type.TOptional<Type.TString>;
|
|
17
|
+
decorator: Type.TOptional<Type.TString>;
|
|
18
|
+
field: Type.TOptional<Type.TString>;
|
|
19
|
+
tag: Type.TOptional<Type.TString>;
|
|
20
|
+
value: Type.TOptional<Type.TString>;
|
|
21
|
+
position: Type.TOptional<Type.TString>;
|
|
22
|
+
validate: Type.TOptional<Type.TUnsafe<"syntax" | "full">>;
|
|
23
23
|
}>;
|
|
24
24
|
/** Exported for renderer unit tests. */
|
|
25
25
|
export declare function buildTransformSections(args: Static<typeof TransformParams>, payload: unknown, theme: Theme): string[];
|
|
26
26
|
/** Exported for renderer unit tests. */
|
|
27
|
-
export declare function renderTransformCall(args: Static<typeof TransformParams>, theme: Theme, context: RenderContextLike): import("@
|
|
27
|
+
export declare function renderTransformCall(args: Static<typeof TransformParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text;
|
|
28
28
|
/** Exported for renderer unit tests. */
|
|
29
|
-
export declare function renderTransformResult(result: AgentToolResult<unknown>, args: Static<typeof TransformParams>, theme: Theme, context: RenderContextLike): import("@
|
|
29
|
+
export declare function renderTransformResult(result: AgentToolResult<unknown>, args: Static<typeof TransformParams>, theme: Theme, context: RenderContextLike): import("@earendil-works/pi-tui").Text | import("@earendil-works/pi-tui").Container;
|
|
30
30
|
export declare function registerStructureTool(pi: ExtensionAPI, ctx: PluginContext): void;
|
|
31
31
|
export {};
|
|
32
32
|
//# sourceMappingURL=structure.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../src/tools/structure.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../src/tools/structure.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAKL,KAAK,iBAAiB,EAIvB,MAAM,qBAAqB,CAAC;AAE7B,QAAA,MAAM,eAAe;;;;;;;;;;;;;;EAgCnB,CAAC;AAEH,wCAAwC;AACxC,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,CAAC,OAAO,eAAe,CAAC,EACpC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,GACX,MAAM,EAAE,CAiBV;AAED,wCAAwC;AACxC,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,CAAC,OAAO,eAAe,CAAC,EACpC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,yCAW3B;AAED,wCAAwC;AACxC,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,OAAO,eAAe,CAAC,EACpC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,sFAO3B;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAwChF"}
|
package/dist/workflow-hints.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ExtensionAPI } from "@
|
|
1
|
+
import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
|
|
2
2
|
import type { AftConfig } from "./config.js";
|
|
3
3
|
export interface WorkflowHintsOpts {
|
|
4
4
|
toolSurface: "minimal" | "recommended" | "all";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-hints.d.ts","sourceRoot":"","sources":["../src/workflow-hints.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"workflow-hints.d.ts","sourceRoot":"","sources":["../src/workflow-hints.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,SAAS,GAAG,aAAa,GAAG,KAAK,CAAC;IAC/C,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,kEAAkE;IAClE,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC1B;AAID,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,GAAG,IAAI,CA2DzE;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,EACxB,aAAa,EAAE,OAAO,GACrB,MAAM,GAAG,IAAI,CAQf;AAMD,UAAU,gBAAgB;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,YAAY,EAChB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,gBAAgB,GACxB,IAAI,CA8BN"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cortexkit/aft-pi",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.23.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Pi coding agent extension for Agent File Tools (AFT) — tree-sitter and LSP-powered code analysis",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -15,36 +15,36 @@
|
|
|
15
15
|
"README.md"
|
|
16
16
|
],
|
|
17
17
|
"scripts": {
|
|
18
|
-
"build": "bun build src/index.ts --outdir dist --target node --format esm --external @
|
|
18
|
+
"build": "bun build src/index.ts --outdir dist --target node --format esm --external @earendil-works/pi-coding-agent --external @earendil-works/pi-ai --external @earendil-works/pi-tui --external typebox --external diff && tsc --emitDeclarationOnly",
|
|
19
19
|
"typecheck": "tsc --noEmit",
|
|
20
20
|
"test": "bun test src/__tests__/",
|
|
21
21
|
"lint": "biome check src",
|
|
22
22
|
"prepublishOnly": "bun run build"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@cortexkit/aft-bridge": "0.
|
|
26
|
-
"
|
|
25
|
+
"@cortexkit/aft-bridge": "0.23.0",
|
|
26
|
+
"typebox": "^1.1.24",
|
|
27
27
|
"comment-json": "^5.0.0",
|
|
28
28
|
"diff": "^8.0.4",
|
|
29
29
|
"zod": "^4.1.8"
|
|
30
30
|
},
|
|
31
31
|
"optionalDependencies": {
|
|
32
|
-
"@cortexkit/aft-darwin-arm64": "0.
|
|
33
|
-
"@cortexkit/aft-darwin-x64": "0.
|
|
34
|
-
"@cortexkit/aft-linux-arm64": "0.
|
|
35
|
-
"@cortexkit/aft-linux-x64": "0.
|
|
36
|
-
"@cortexkit/aft-win32-x64": "0.
|
|
32
|
+
"@cortexkit/aft-darwin-arm64": "0.23.0",
|
|
33
|
+
"@cortexkit/aft-darwin-x64": "0.23.0",
|
|
34
|
+
"@cortexkit/aft-linux-arm64": "0.23.0",
|
|
35
|
+
"@cortexkit/aft-linux-x64": "0.23.0",
|
|
36
|
+
"@cortexkit/aft-win32-x64": "0.23.0"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@
|
|
40
|
-
"@
|
|
41
|
-
"@
|
|
39
|
+
"@earendil-works/pi-coding-agent": "*",
|
|
40
|
+
"@earendil-works/pi-ai": "*",
|
|
41
|
+
"@earendil-works/pi-tui": "*",
|
|
42
42
|
"@types/node": "^22.0.0",
|
|
43
43
|
"typescript": "^5.8.0"
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
|
-
"@
|
|
47
|
-
"@
|
|
46
|
+
"@earendil-works/pi-coding-agent": "*",
|
|
47
|
+
"@earendil-works/pi-tui": "*"
|
|
48
48
|
},
|
|
49
49
|
"exports": {
|
|
50
50
|
".": {
|