@cortexkit/aft-pi 0.37.0 → 0.37.2
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/index.d.ts.map +1 -1
- package/dist/index.js +93 -17
- package/dist/sync-watch-abort.d.ts +26 -0
- package/dist/sync-watch-abort.d.ts.map +1 -0
- package/dist/tools/bash.d.ts +1 -1
- package/dist/tools/bash.d.ts.map +1 -1
- package/package.json +8 -8
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAcH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AASpE,OAAO,EACL,KAAK,SAAS,EACd,aAAa,EAId,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAcH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AASpE,OAAO,EACL,KAAK,SAAS,EACd,aAAa,EAId,MAAM,aAAa,CAAC;AA8DrB,KAAK,mBAAmB,GAAG;IACzB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9C,CAAC;AAEF,iBAAS,4BAA4B,CACnC,OAAO,EAAE,MAAM,mBAAmB,GAAG,SAAS,EAC9C,sBAAsB,GAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAgB,IAOrE,eAAe,MAAM,EAAE,YAAY,MAAM,KAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAyCjF;AAsDD,iBAAS,wBAAwB,CAC/B,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,iBAAiB,GAAG,UAAU,CAAC,GACtD,OAAO,CAGT;AAED,iBAAS,2BAA2B,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG9E;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,MAAM,EAAE,IAAI,CAAC,OAAO,uBAAuB,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IACnE,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiChB;AAED;;;;;;;;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,qBAAqB,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,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,QAAQ,EAAE,OAAO,CAAC;CACnB,CAqEA;AAED;;;;GAIG;AACH,yBAA+B,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA+e9D;AAED,eAAO,MAAM,QAAQ;;;;;;CAMpB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -14441,14 +14441,27 @@ function isCompressorHandledRunner(stage) {
|
|
|
14441
14441
|
if (tokens.some((token) => token === "&&" || token === "||" || token.includes(";"))) {
|
|
14442
14442
|
return false;
|
|
14443
14443
|
}
|
|
14444
|
-
|
|
14445
|
-
|
|
14446
|
-
|
|
14447
|
-
|
|
14444
|
+
let tokenOffset = 0;
|
|
14445
|
+
while (tokenOffset < tokens.length && isEnvAssignment(tokens[tokenOffset])) {
|
|
14446
|
+
tokenOffset++;
|
|
14447
|
+
}
|
|
14448
|
+
const first = runnerName(tokens[tokenOffset]);
|
|
14449
|
+
const runnerArgs = tokens.slice(tokenOffset + 1);
|
|
14450
|
+
const second = runnerArgs[0];
|
|
14451
|
+
const third = runnerArgs[1];
|
|
14452
|
+
const rest = runnerArgs;
|
|
14448
14453
|
if (!first)
|
|
14449
14454
|
return false;
|
|
14450
|
-
if (first === "bun")
|
|
14451
|
-
|
|
14455
|
+
if (first === "bun") {
|
|
14456
|
+
let args = rest;
|
|
14457
|
+
if (args[0] === "--cwd")
|
|
14458
|
+
args = args.slice(2);
|
|
14459
|
+
else if (args[0]?.startsWith("--cwd="))
|
|
14460
|
+
args = args.slice(1);
|
|
14461
|
+
const sub = args[0];
|
|
14462
|
+
const subNext = args[1];
|
|
14463
|
+
return sub === "test" || sub === "run" && startsWithTest(subNext);
|
|
14464
|
+
}
|
|
14452
14465
|
if (first === "npm" || first === "pnpm") {
|
|
14453
14466
|
return second === "test" || second === "run" && startsWithTest(third);
|
|
14454
14467
|
}
|
|
@@ -14471,14 +14484,20 @@ function isCompressorHandledRunner(stage) {
|
|
|
14471
14484
|
return hasBuildTask(rest, ["test", "check", "build", "assemble", "clean"]);
|
|
14472
14485
|
}
|
|
14473
14486
|
if (first === "mvn" || first === "mvnw") {
|
|
14474
|
-
return hasBuildTask(rest, ["test", "verify", "package", "install"]);
|
|
14487
|
+
return hasBuildTask(rest, ["test", "verify", "package", "install", "clean"]);
|
|
14475
14488
|
}
|
|
14476
14489
|
if (first === "dotnet")
|
|
14477
14490
|
return ["test", "build"].includes(second ?? "");
|
|
14478
14491
|
if (first === "rspec")
|
|
14479
14492
|
return true;
|
|
14480
|
-
if (first === "rake")
|
|
14481
|
-
|
|
14493
|
+
if (first === "rake") {
|
|
14494
|
+
const positionals = rest.filter((a) => !a.startsWith("-"));
|
|
14495
|
+
if (positionals.length === 0)
|
|
14496
|
+
return false;
|
|
14497
|
+
if (positionals.some((a) => a.includes("/") || a.includes(".") || a.includes("=")))
|
|
14498
|
+
return false;
|
|
14499
|
+
return positionals.some((a) => a === "test" || a === "spec");
|
|
14500
|
+
}
|
|
14482
14501
|
if (first === "phpunit" || first === "pest")
|
|
14483
14502
|
return true;
|
|
14484
14503
|
if (first === "xcodebuild")
|
|
@@ -14501,6 +14520,11 @@ function isCompressorHandledRunner(stage) {
|
|
|
14501
14520
|
"nox"
|
|
14502
14521
|
].includes(first);
|
|
14503
14522
|
}
|
|
14523
|
+
function isEnvAssignment(token) {
|
|
14524
|
+
if (!token)
|
|
14525
|
+
return false;
|
|
14526
|
+
return /^[a-zA-Z_][a-zA-Z0-9_]*=/.test(token);
|
|
14527
|
+
}
|
|
14504
14528
|
function runnerName(token) {
|
|
14505
14529
|
if (!token)
|
|
14506
14530
|
return "";
|
|
@@ -15676,7 +15700,7 @@ import {
|
|
|
15676
15700
|
// package.json
|
|
15677
15701
|
var package_default = {
|
|
15678
15702
|
name: "@cortexkit/aft-pi",
|
|
15679
|
-
version: "0.37.
|
|
15703
|
+
version: "0.37.2",
|
|
15680
15704
|
type: "module",
|
|
15681
15705
|
description: "Pi coding agent extension for Agent File Tools (AFT) — tree-sitter and LSP-powered code analysis",
|
|
15682
15706
|
main: "dist/index.js",
|
|
@@ -15699,7 +15723,7 @@ var package_default = {
|
|
|
15699
15723
|
"test:unit": "bun test src/__tests__ --path-ignore-patterns 'src/__tests__/e2e/**'"
|
|
15700
15724
|
},
|
|
15701
15725
|
dependencies: {
|
|
15702
|
-
"@cortexkit/aft-bridge": "0.37.
|
|
15726
|
+
"@cortexkit/aft-bridge": "0.37.2",
|
|
15703
15727
|
"@xterm/headless": "^5.5.0",
|
|
15704
15728
|
"comment-json": "^5.0.0",
|
|
15705
15729
|
diff: "^8.0.4",
|
|
@@ -15707,12 +15731,12 @@ var package_default = {
|
|
|
15707
15731
|
zod: "^4.1.8"
|
|
15708
15732
|
},
|
|
15709
15733
|
optionalDependencies: {
|
|
15710
|
-
"@cortexkit/aft-darwin-arm64": "0.37.
|
|
15711
|
-
"@cortexkit/aft-darwin-x64": "0.37.
|
|
15712
|
-
"@cortexkit/aft-linux-arm64": "0.37.
|
|
15713
|
-
"@cortexkit/aft-linux-x64": "0.37.
|
|
15714
|
-
"@cortexkit/aft-win32-arm64": "0.37.
|
|
15715
|
-
"@cortexkit/aft-win32-x64": "0.37.
|
|
15734
|
+
"@cortexkit/aft-darwin-arm64": "0.37.2",
|
|
15735
|
+
"@cortexkit/aft-darwin-x64": "0.37.2",
|
|
15736
|
+
"@cortexkit/aft-linux-arm64": "0.37.2",
|
|
15737
|
+
"@cortexkit/aft-linux-x64": "0.37.2",
|
|
15738
|
+
"@cortexkit/aft-win32-arm64": "0.37.2",
|
|
15739
|
+
"@cortexkit/aft-win32-x64": "0.37.2"
|
|
15716
15740
|
},
|
|
15717
15741
|
devDependencies: {
|
|
15718
15742
|
"@earendil-works/pi-coding-agent": "*",
|
|
@@ -32490,6 +32514,21 @@ function registerShutdownCleanup(fn) {
|
|
|
32490
32514
|
};
|
|
32491
32515
|
}
|
|
32492
32516
|
|
|
32517
|
+
// src/sync-watch-abort.ts
|
|
32518
|
+
var abortFlags = new Map;
|
|
32519
|
+
function signalSyncWatchAbort(sessionID) {
|
|
32520
|
+
const key = sessionID || "__default__";
|
|
32521
|
+
abortFlags.set(key, true);
|
|
32522
|
+
}
|
|
32523
|
+
function clearSyncWatchAbort(sessionID) {
|
|
32524
|
+
const key = sessionID || "__default__";
|
|
32525
|
+
abortFlags.delete(key);
|
|
32526
|
+
}
|
|
32527
|
+
function isSyncWatchAborted(sessionID) {
|
|
32528
|
+
const key = sessionID || "__default__";
|
|
32529
|
+
return abortFlags.get(key) === true;
|
|
32530
|
+
}
|
|
32531
|
+
|
|
32493
32532
|
// src/tools/ast.ts
|
|
32494
32533
|
import { StringEnum } from "@earendil-works/pi-ai";
|
|
32495
32534
|
import { Type as Type3 } from "typebox";
|
|
@@ -33778,11 +33817,41 @@ function createBashWatchTool(ctx) {
|
|
|
33778
33817
|
A notification will fire when the pattern matches or the task exits.`, watchDetails);
|
|
33779
33818
|
}
|
|
33780
33819
|
const data = await waitForBashStatus(ctx, bridge, extCtx, params.task_id, undefined, waitFor, true, Math.min(coerceOptionalInt(params.timeout_ms, "timeout_ms", 1, MAX_BASH_STATUS_WAIT_TIMEOUT_MS) ?? DEFAULT_BASH_STATUS_WAIT_TIMEOUT_MS, MAX_BASH_STATUS_WAIT_TIMEOUT_MS));
|
|
33820
|
+
if (data.waited?.reason === "user_message") {
|
|
33821
|
+
const convertedText = await convertToAsyncWatchOnAbort(bridge, extCtx, params.task_id, waitFor, params.once !== false);
|
|
33822
|
+
return textResult(convertedText, { waited: data.waited });
|
|
33823
|
+
}
|
|
33781
33824
|
const text = await formatBashStatus(extCtx, params.task_id, data, undefined);
|
|
33782
33825
|
return textResult(text, data);
|
|
33783
33826
|
}
|
|
33784
33827
|
};
|
|
33785
33828
|
}
|
|
33829
|
+
async function convertToAsyncWatchOnAbort(bridge, extCtx, taskId, waitFor, once) {
|
|
33830
|
+
if (!waitFor) {
|
|
33831
|
+
return `Sync watch for task ${taskId} was interrupted because you sent a message. ` + `The task is still running in the background. A completion reminder will be ` + `delivered automatically when the task exits; don't poll bash_status.`;
|
|
33832
|
+
}
|
|
33833
|
+
const notifyParams = {
|
|
33834
|
+
task_id: taskId,
|
|
33835
|
+
once
|
|
33836
|
+
};
|
|
33837
|
+
if (waitFor.kind === "regex")
|
|
33838
|
+
notifyParams.regex = waitFor.source;
|
|
33839
|
+
else
|
|
33840
|
+
notifyParams.pattern = waitFor.value;
|
|
33841
|
+
const sessionId = resolveSessionId(extCtx);
|
|
33842
|
+
markExplicitControl(sessionId, taskId, false);
|
|
33843
|
+
try {
|
|
33844
|
+
const registered = await callBashBridge(bridge, "bash_notify", notifyParams, extCtx);
|
|
33845
|
+
if (registered.success === false) {
|
|
33846
|
+
unmarkExplicitControl(sessionId, taskId);
|
|
33847
|
+
return `Sync watch for task ${taskId} was interrupted because you sent a message. ` + `Auto-registering an async watch failed (${String(registered.message ?? "unknown error")}). ` + `The task is still running in the background. A completion reminder will be ` + `delivered automatically when the task exits.`;
|
|
33848
|
+
}
|
|
33849
|
+
return `Sync watch for task ${taskId} was interrupted because you sent a message. ` + `The wait has been converted to an async watch (${registered.watch_id}). ` + `A notification will fire when the pattern matches or the task exits.`;
|
|
33850
|
+
} catch (err) {
|
|
33851
|
+
unmarkExplicitControl(sessionId, taskId);
|
|
33852
|
+
return `Sync watch for task ${taskId} was interrupted because you sent a message. ` + `Auto-registering an async watch failed (${err instanceof Error ? err.message : String(err)}). ` + `The task is still running in the background. A completion reminder will be ` + `delivered automatically when the task exits.`;
|
|
33853
|
+
}
|
|
33854
|
+
}
|
|
33786
33855
|
function createBashWriteTool(ctx) {
|
|
33787
33856
|
return {
|
|
33788
33857
|
name: "bash_write",
|
|
@@ -33858,6 +33927,7 @@ async function waitForBashStatus(ctx, bridge, extCtx, taskId, outputMode, waitFo
|
|
|
33858
33927
|
transportTimeoutMs: BASH_TRANSPORT_TIMEOUT_MS
|
|
33859
33928
|
};
|
|
33860
33929
|
const sessionId = resolveSessionId(extCtx);
|
|
33930
|
+
clearSyncWatchAbort(sessionId);
|
|
33861
33931
|
if (waitForExit)
|
|
33862
33932
|
markTaskWaiting(sessionId, taskId);
|
|
33863
33933
|
let sawTerminal = false;
|
|
@@ -33896,6 +33966,9 @@ async function waitForBashStatus(ctx, bridge, extCtx, taskId, outputMode, waitFo
|
|
|
33896
33966
|
}
|
|
33897
33967
|
return withWaited(data, { reason: "exited", elapsed_ms: Date.now() - startedAt });
|
|
33898
33968
|
}
|
|
33969
|
+
if (isSyncWatchAborted(sessionId)) {
|
|
33970
|
+
return withWaited(data, { reason: "user_message", elapsed_ms: Date.now() - startedAt });
|
|
33971
|
+
}
|
|
33899
33972
|
if (Date.now() >= deadline) {
|
|
33900
33973
|
return withWaited(data, { reason: "timeout", elapsed_ms: Date.now() - startedAt });
|
|
33901
33974
|
}
|
|
@@ -36412,6 +36485,9 @@ ${lines}
|
|
|
36412
36485
|
runtime: pi
|
|
36413
36486
|
});
|
|
36414
36487
|
});
|
|
36488
|
+
pi.on("input", (_event, extCtx) => {
|
|
36489
|
+
signalSyncWatchAbort(resolveSessionId(extCtx));
|
|
36490
|
+
});
|
|
36415
36491
|
const unregisterShutdownCleanup = registerShutdownCleanup(async () => {
|
|
36416
36492
|
try {
|
|
36417
36493
|
await Promise.allSettled([abortInFlightAutoInstalls(), abortInFlightGithubInstalls()]);
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-session abort flags for sync bash_watch waits.
|
|
3
|
+
*
|
|
4
|
+
* When a user sends a message while the agent is blocked in a sync
|
|
5
|
+
* bash_watch wait, the `input` event handler sets an abort flag for that
|
|
6
|
+
* session. The sync wait poll loop checks the flag each iteration and
|
|
7
|
+
* on abort: (1) stops blocking, (2) auto-registers the equivalent async
|
|
8
|
+
* watch so the completion/pattern notification still arrives, (3) returns
|
|
9
|
+
* text telling the agent the wait converted to async.
|
|
10
|
+
*
|
|
11
|
+
* Edge cases:
|
|
12
|
+
* - The flag is cleared at sync-wait start so stale flags from previous
|
|
13
|
+
* turns don't insta-abort a new wait.
|
|
14
|
+
* - A wait that already matched/exited wins over abort (the flag is
|
|
15
|
+
* checked only at the top of the poll loop, after match/exit checks).
|
|
16
|
+
* - Subagent sessions behave identically — the flag is keyed by sessionID.
|
|
17
|
+
*/
|
|
18
|
+
/** Signal that a sync watch for this session should abort. */
|
|
19
|
+
export declare function signalSyncWatchAbort(sessionID: string | undefined): void;
|
|
20
|
+
/** Clear any stale abort flag at the start of a new sync wait. */
|
|
21
|
+
export declare function clearSyncWatchAbort(sessionID: string | undefined): void;
|
|
22
|
+
/** Check whether the abort flag is set for this session. Does NOT clear it. */
|
|
23
|
+
export declare function isSyncWatchAborted(sessionID: string | undefined): boolean;
|
|
24
|
+
/** Test-only: reset all abort flags. */
|
|
25
|
+
export declare function __resetSyncWatchAbortForTests(): void;
|
|
26
|
+
//# sourceMappingURL=sync-watch-abort.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-watch-abort.d.ts","sourceRoot":"","sources":["../src/sync-watch-abort.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,8DAA8D;AAC9D,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAGxE;AAED,kEAAkE;AAClE,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAGvE;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAGzE;AAED,wCAAwC;AACxC,wBAAgB,6BAA6B,IAAI,IAAI,CAEpD"}
|
package/dist/tools/bash.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ declare const BashWriteParams: Type.TObject<{
|
|
|
24
24
|
}>]>>]>;
|
|
25
25
|
}>;
|
|
26
26
|
interface BashStatusWaited {
|
|
27
|
-
reason: "matched" | "exited" | "timeout";
|
|
27
|
+
reason: "matched" | "exited" | "timeout" | "user_message";
|
|
28
28
|
elapsed_ms: number;
|
|
29
29
|
match?: string;
|
|
30
30
|
match_offset?: number;
|
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":"AASA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,gBAAgB,EAEjB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"bash.d.ts","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,gBAAgB,EAEjB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAkB5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAgGjD,QAAA,MAAM,cAAc;;EAIlB,CAAC;AAEH,QAAA,MAAM,gBAAgB;;;EAUpB,CAAC;AAEH,QAAA,MAAM,eAAe;;;;;;;;EAQnB,CAAC;AAEH,QAAA,MAAM,eAAe;;;;;EA+BnB,CAAC;AAWH,UAAU,gBAAgB;IACxB,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,cAAc,CAAC;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,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;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B;AAED,UAAU,gBAAgB;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,eAAe;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,gBAAiB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAAG;AAoD7D,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,aAAa,EAClB,mBAAmB,UAAQ,GAC1B,IAAI,CAwON;AAmED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,aAAa;;;;;;;;;yBASpC,MAAM,UACX,MAAM,CAAC,OAAO,gBAAgB,CAAC,WAC9B,WAAW,GAAG,SAAS,aACrB,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,UACrE,gBAAgB;EAc7B;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,aAAa;;;;;;;;;;;;;;yBASnC,MAAM,UACX,MAAM,CAAC,OAAO,eAAe,CAAC,WAC7B,WAAW,GAAG,SAAS,aACrB,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,UACpE,gBAAgB;EAwE7B;AA8DD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,aAAa;;;;;;;;;;;yBAanC,MAAM,UACX,MAAM,CAAC,OAAO,eAAe,CAAC,WAC7B,WAAW,GAAG,SAAS,aACrB,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,UACpE,gBAAgB;EAe7B;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;EAe7B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cortexkit/aft-pi",
|
|
3
|
-
"version": "0.37.
|
|
3
|
+
"version": "0.37.2",
|
|
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",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"test:unit": "bun test src/__tests__ --path-ignore-patterns 'src/__tests__/e2e/**'"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@cortexkit/aft-bridge": "0.37.
|
|
26
|
+
"@cortexkit/aft-bridge": "0.37.2",
|
|
27
27
|
"@xterm/headless": "^5.5.0",
|
|
28
28
|
"comment-json": "^5.0.0",
|
|
29
29
|
"diff": "^8.0.4",
|
|
@@ -31,12 +31,12 @@
|
|
|
31
31
|
"zod": "^4.1.8"
|
|
32
32
|
},
|
|
33
33
|
"optionalDependencies": {
|
|
34
|
-
"@cortexkit/aft-darwin-arm64": "0.37.
|
|
35
|
-
"@cortexkit/aft-darwin-x64": "0.37.
|
|
36
|
-
"@cortexkit/aft-linux-arm64": "0.37.
|
|
37
|
-
"@cortexkit/aft-linux-x64": "0.37.
|
|
38
|
-
"@cortexkit/aft-win32-arm64": "0.37.
|
|
39
|
-
"@cortexkit/aft-win32-x64": "0.37.
|
|
34
|
+
"@cortexkit/aft-darwin-arm64": "0.37.2",
|
|
35
|
+
"@cortexkit/aft-darwin-x64": "0.37.2",
|
|
36
|
+
"@cortexkit/aft-linux-arm64": "0.37.2",
|
|
37
|
+
"@cortexkit/aft-linux-x64": "0.37.2",
|
|
38
|
+
"@cortexkit/aft-win32-arm64": "0.37.2",
|
|
39
|
+
"@cortexkit/aft-win32-x64": "0.37.2"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@earendil-works/pi-coding-agent": "*",
|