@cortexkit/aft-opencode 0.35.3 → 0.35.4
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/bg-notifications.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +116 -105
- package/dist/tools/_shared.d.ts +8 -0
- package/dist/tools/_shared.d.ts.map +1 -1
- package/dist/tools/bash.d.ts.map +1 -1
- package/dist/tools/bash_watch.d.ts.map +1 -1
- package/dist/tui.js +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bg-notifications.d.ts","sourceRoot":"","sources":["../src/bg-notifications.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bg-notifications.d.ts","sourceRoot":"","sources":["../src/bg-notifications.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AA4MlD;;;;;;;;;;;;;;;;;GAiBG;AAQH,QAAA,MAAM,MAAM,EAAE,MAA6D,CAAC;AA80B5E,eAAe,MAAM,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -11867,6 +11867,9 @@ class BinaryBridge {
|
|
|
11867
11867
|
hasPendingRequests() {
|
|
11868
11868
|
return this.pending.size > 0;
|
|
11869
11869
|
}
|
|
11870
|
+
getCwd() {
|
|
11871
|
+
return this.cwd;
|
|
11872
|
+
}
|
|
11870
11873
|
getCachedStatus() {
|
|
11871
11874
|
return this.cachedStatus;
|
|
11872
11875
|
}
|
|
@@ -12210,6 +12213,7 @@ class BinaryBridge {
|
|
|
12210
12213
|
const remaining = stdoutDecoder.end();
|
|
12211
12214
|
if (remaining)
|
|
12212
12215
|
this.onStdoutData(remaining);
|
|
12216
|
+
this.flushStdoutBuffer();
|
|
12213
12217
|
});
|
|
12214
12218
|
const stderrDecoder = new StringDecoder("utf8");
|
|
12215
12219
|
child.stderr?.on("data", (chunk) => {
|
|
@@ -12232,6 +12236,7 @@ class BinaryBridge {
|
|
|
12232
12236
|
return;
|
|
12233
12237
|
if (this._shuttingDown)
|
|
12234
12238
|
return;
|
|
12239
|
+
this.flushStdoutBuffer();
|
|
12235
12240
|
this.logVia(`Process exited: code=${code}, signal=${signal}`);
|
|
12236
12241
|
if (signal === "SIGTERM" || signal === "SIGKILL" || signal === "SIGHUP" || signal === "SIGINT") {
|
|
12237
12242
|
this.process = null;
|
|
@@ -12300,71 +12305,81 @@ class BinaryBridge {
|
|
|
12300
12305
|
this.stdoutBuffer = this.stdoutBuffer.slice(newlineIdx + 1);
|
|
12301
12306
|
if (!line)
|
|
12302
12307
|
continue;
|
|
12303
|
-
|
|
12304
|
-
|
|
12305
|
-
|
|
12306
|
-
|
|
12307
|
-
|
|
12308
|
-
|
|
12309
|
-
|
|
12310
|
-
|
|
12311
|
-
|
|
12312
|
-
|
|
12313
|
-
|
|
12314
|
-
|
|
12315
|
-
|
|
12316
|
-
|
|
12317
|
-
|
|
12318
|
-
|
|
12319
|
-
|
|
12320
|
-
|
|
12321
|
-
|
|
12322
|
-
|
|
12323
|
-
|
|
12324
|
-
|
|
12325
|
-
|
|
12326
|
-
|
|
12327
|
-
|
|
12328
|
-
|
|
12329
|
-
|
|
12330
|
-
this.onBashCompletion?.(response, this);
|
|
12331
|
-
continue;
|
|
12332
|
-
}
|
|
12333
|
-
if (response.type === "bash_long_running") {
|
|
12334
|
-
this.onBashLongRunning?.(response, this);
|
|
12335
|
-
continue;
|
|
12336
|
-
}
|
|
12337
|
-
if (response.type === "bash_pattern_match") {
|
|
12338
|
-
this.onBashPatternMatch?.(response, this);
|
|
12339
|
-
continue;
|
|
12340
|
-
}
|
|
12341
|
-
if (response.type === "configure_warnings") {
|
|
12342
|
-
this.handleConfigureWarningsFrame(response).catch((err) => {
|
|
12343
|
-
this.warnVia(`configure warning delivery failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
12344
|
-
});
|
|
12345
|
-
continue;
|
|
12346
|
-
}
|
|
12347
|
-
if (response.type === "status_changed") {
|
|
12348
|
-
this.handleStatusChangedFrame(response);
|
|
12349
|
-
continue;
|
|
12350
|
-
}
|
|
12351
|
-
const id = response.id;
|
|
12352
|
-
if (id && this.pending.has(id)) {
|
|
12353
|
-
const entry = this.pending.get(id);
|
|
12354
|
-
if (!entry)
|
|
12355
|
-
continue;
|
|
12356
|
-
this.pending.delete(id);
|
|
12308
|
+
this.processStdoutLine(line);
|
|
12309
|
+
}
|
|
12310
|
+
}
|
|
12311
|
+
flushStdoutBuffer() {
|
|
12312
|
+
const line = this.stdoutBuffer.trim();
|
|
12313
|
+
this.stdoutBuffer = "";
|
|
12314
|
+
if (!line)
|
|
12315
|
+
return;
|
|
12316
|
+
this.processStdoutLine(line);
|
|
12317
|
+
}
|
|
12318
|
+
processStdoutLine(line) {
|
|
12319
|
+
try {
|
|
12320
|
+
const response = JSON.parse(line);
|
|
12321
|
+
this.lastChildActivityAt = Date.now();
|
|
12322
|
+
if (response.type === "progress") {
|
|
12323
|
+
const requestId = response.request_id;
|
|
12324
|
+
const entry = requestId ? this.pending.get(requestId) : undefined;
|
|
12325
|
+
const kind = response.kind === "stderr" ? "stderr" : "stdout";
|
|
12326
|
+
const text = typeof response.chunk === "string" ? response.chunk : "";
|
|
12327
|
+
entry?.onProgress?.({ kind, text });
|
|
12328
|
+
return;
|
|
12329
|
+
}
|
|
12330
|
+
if (response.type === "permission_ask") {
|
|
12331
|
+
const requestId = response.request_id;
|
|
12332
|
+
const entry = requestId ? this.pending.get(requestId) : undefined;
|
|
12333
|
+
if (requestId && entry) {
|
|
12334
|
+
this.pending.delete(requestId);
|
|
12357
12335
|
clearTimeout(entry.timer);
|
|
12358
|
-
|
|
12359
|
-
|
|
12360
|
-
|
|
12361
|
-
|
|
12362
|
-
|
|
12363
|
-
|
|
12336
|
+
entry.resolve({
|
|
12337
|
+
success: false,
|
|
12338
|
+
code: "permission_required",
|
|
12339
|
+
message: "bash command requires permission",
|
|
12340
|
+
asks: response.asks
|
|
12341
|
+
});
|
|
12364
12342
|
}
|
|
12365
|
-
|
|
12366
|
-
|
|
12343
|
+
return;
|
|
12344
|
+
}
|
|
12345
|
+
if (response.type === "bash_completed") {
|
|
12346
|
+
this.onBashCompletion?.(response, this);
|
|
12347
|
+
return;
|
|
12348
|
+
}
|
|
12349
|
+
if (response.type === "bash_long_running") {
|
|
12350
|
+
this.onBashLongRunning?.(response, this);
|
|
12351
|
+
return;
|
|
12367
12352
|
}
|
|
12353
|
+
if (response.type === "bash_pattern_match") {
|
|
12354
|
+
this.onBashPatternMatch?.(response, this);
|
|
12355
|
+
return;
|
|
12356
|
+
}
|
|
12357
|
+
if (response.type === "configure_warnings") {
|
|
12358
|
+
this.handleConfigureWarningsFrame(response).catch((err) => {
|
|
12359
|
+
this.warnVia(`configure warning delivery failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
12360
|
+
});
|
|
12361
|
+
return;
|
|
12362
|
+
}
|
|
12363
|
+
if (response.type === "status_changed") {
|
|
12364
|
+
this.handleStatusChangedFrame(response);
|
|
12365
|
+
return;
|
|
12366
|
+
}
|
|
12367
|
+
const id = response.id;
|
|
12368
|
+
if (id && this.pending.has(id)) {
|
|
12369
|
+
const entry = this.pending.get(id);
|
|
12370
|
+
if (!entry)
|
|
12371
|
+
return;
|
|
12372
|
+
this.pending.delete(id);
|
|
12373
|
+
clearTimeout(entry.timer);
|
|
12374
|
+
this.consecutiveRequestTimeouts = 0;
|
|
12375
|
+
this.scheduleRestartCountReset();
|
|
12376
|
+
this.captureStatusBar(response);
|
|
12377
|
+
entry.resolve(response);
|
|
12378
|
+
} else if (typeof response.type === "string") {
|
|
12379
|
+
this.logVia(`Ignoring unknown stdout push frame type: ${response.type}`);
|
|
12380
|
+
}
|
|
12381
|
+
} catch (_err) {
|
|
12382
|
+
this.warnVia(`Failed to parse stdout line: ${line}`);
|
|
12368
12383
|
}
|
|
12369
12384
|
}
|
|
12370
12385
|
captureStatusBar(response) {
|
|
@@ -14492,13 +14507,7 @@ function consumeBgCompletion(sessionID, taskId) {
|
|
|
14492
14507
|
state.consumedTaskIds.delete(evicted);
|
|
14493
14508
|
}
|
|
14494
14509
|
}
|
|
14495
|
-
|
|
14496
|
-
clearTimeout(state.debounceTimer);
|
|
14497
|
-
state.debounceTimer = null;
|
|
14498
|
-
state.firstCompletionAt = null;
|
|
14499
|
-
state.scheduledFireAt = null;
|
|
14500
|
-
state.scheduledCompletionCount = 0;
|
|
14501
|
-
}
|
|
14510
|
+
clearWakeTimerIfNoPending(state);
|
|
14502
14511
|
}
|
|
14503
14512
|
async function markBgCompletionDelivered(drainContext, taskId) {
|
|
14504
14513
|
await ackCompletions(drainContext, [
|
|
@@ -14669,16 +14678,11 @@ async function appendInTurnBgCompletions(drainContext, output) {
|
|
|
14669
14678
|
}
|
|
14670
14679
|
state.pendingLongRunning = [];
|
|
14671
14680
|
state.pendingPatternMatches = [];
|
|
14681
|
+
state.retryDelayMs = null;
|
|
14672
14682
|
state.wakeRetryAttempts = 0;
|
|
14673
14683
|
state.wakeHardStopped = false;
|
|
14674
14684
|
await ackCompletions(drainContext, completionAcks);
|
|
14675
|
-
|
|
14676
|
-
clearTimeout(state.debounceTimer);
|
|
14677
|
-
state.debounceTimer = null;
|
|
14678
|
-
state.firstCompletionAt = null;
|
|
14679
|
-
state.scheduledFireAt = null;
|
|
14680
|
-
state.scheduledCompletionCount = 0;
|
|
14681
|
-
}
|
|
14685
|
+
clearWakeTimerIfNoPending(state);
|
|
14682
14686
|
}
|
|
14683
14687
|
async function handleIdleBgCompletions(drainContext) {
|
|
14684
14688
|
stateFor(drainContext.sessionID).wakeDeferredTaskIds.clear();
|
|
@@ -14920,13 +14924,18 @@ function wakeEligibleCompletions(state, includeDeferredCompletions) {
|
|
|
14920
14924
|
return state.pendingCompletions.filter((completion) => !state.wakeDeferredTaskIds.has(completion.task_id));
|
|
14921
14925
|
}
|
|
14922
14926
|
function clearWakeTimerIfNoPending(state) {
|
|
14923
|
-
if (state.pendingCompletions.length
|
|
14924
|
-
|
|
14925
|
-
state.debounceTimer = null;
|
|
14926
|
-
state.firstCompletionAt = null;
|
|
14927
|
-
state.scheduledFireAt = null;
|
|
14928
|
-
state.scheduledCompletionCount = 0;
|
|
14927
|
+
if (state.pendingCompletions.length > 0 || state.pendingLongRunning.length > 0 || state.pendingPatternMatches.length > 0) {
|
|
14928
|
+
return;
|
|
14929
14929
|
}
|
|
14930
|
+
if (state.debounceTimer)
|
|
14931
|
+
clearTimeout(state.debounceTimer);
|
|
14932
|
+
state.debounceTimer = null;
|
|
14933
|
+
state.firstCompletionAt = null;
|
|
14934
|
+
state.scheduledFireAt = null;
|
|
14935
|
+
state.scheduledCompletionCount = 0;
|
|
14936
|
+
state.retryDelayMs = null;
|
|
14937
|
+
state.wakeRetryAttempts = 0;
|
|
14938
|
+
state.wakeHardStopped = false;
|
|
14930
14939
|
}
|
|
14931
14940
|
function scheduleWake(state, sendWake, onSendFailure, sessionID, includeDeferredCompletions = true) {
|
|
14932
14941
|
if (state.wakeHardStopped)
|
|
@@ -32986,6 +32995,7 @@ function isEmptyParam(value) {
|
|
|
32986
32995
|
return Object.keys(value).length === 0;
|
|
32987
32996
|
return false;
|
|
32988
32997
|
}
|
|
32998
|
+
var BASH_TRANSPORT_TIMEOUT_MS = 30000;
|
|
32989
32999
|
var LONG_RUNNING_COMMAND_TIMEOUT_MS = {
|
|
32990
33000
|
callers: 60000,
|
|
32991
33001
|
trace_to: 60000,
|
|
@@ -33121,6 +33131,13 @@ async function callBridge(ctx, runtime, command, params = {}, options) {
|
|
|
33121
33131
|
ingestBgCompletions(runtime.sessionID, response.bg_completions);
|
|
33122
33132
|
return response;
|
|
33123
33133
|
}
|
|
33134
|
+
async function callBashBridge(ctx, runtime, command, params = {}, options) {
|
|
33135
|
+
return await callBridge(ctx, runtime, command, params, {
|
|
33136
|
+
transportTimeoutMs: BASH_TRANSPORT_TIMEOUT_MS,
|
|
33137
|
+
...options,
|
|
33138
|
+
keepBridgeOnTimeout: true
|
|
33139
|
+
});
|
|
33140
|
+
}
|
|
33124
33141
|
|
|
33125
33142
|
// src/tools/permissions.ts
|
|
33126
33143
|
import * as fs4 from "node:fs";
|
|
@@ -33946,7 +33963,6 @@ function setCache2(sessionId, isSubagent) {
|
|
|
33946
33963
|
var z5 = tool5.schema;
|
|
33947
33964
|
var METADATA_PREVIEW_LIMIT = 30 * 1024;
|
|
33948
33965
|
var FOREGROUND_POLL_INTERVAL_MS = 100;
|
|
33949
|
-
var BASH_TRANSPORT_TIMEOUT_MS = 30000;
|
|
33950
33966
|
var DEFAULT_HARD_TIMEOUT_MS = 30 * 60 * 1000;
|
|
33951
33967
|
var BASH_DESCRIPTION = `Hoisted bash tool with output compression, command rewriting to AFT tools, optional background execution, and PTY mode for interactive programs. By default, output is compressed; pass compressed: false for raw output. Pass background: true to spawn in the background and get a taskId for bash_status/bash_kill. Pass pty: true for interactive REPLs and drive them with bash_status({ outputMode: "screen" }) plus bash_write (pty implies background automatically). Use bash_watch to block on or register for pattern matches and exit events.`;
|
|
33952
33968
|
async function withPermissionLoop(ctx, runtime, params, bridgeCall, options) {
|
|
@@ -34018,9 +34034,7 @@ function createBashTool(ctx) {
|
|
|
34018
34034
|
pty_rows: args.ptyRows,
|
|
34019
34035
|
pty_cols: args.ptyCols,
|
|
34020
34036
|
permissions_requested: true
|
|
34021
|
-
},
|
|
34022
|
-
transportTimeoutMs: BASH_TRANSPORT_TIMEOUT_MS,
|
|
34023
|
-
keepBridgeOnTimeout: true,
|
|
34037
|
+
}, callBashBridge, {
|
|
34024
34038
|
onProgress: ({ text }) => {
|
|
34025
34039
|
accumulatedOutput = preview(accumulatedOutput + text);
|
|
34026
34040
|
metadata?.({ output: accumulatedOutput, description });
|
|
@@ -34052,7 +34066,7 @@ function createBashTool(ctx) {
|
|
|
34052
34066
|
const waitTimeoutMs = subagentForcedForeground ? argTimeout ?? DEFAULT_HARD_TIMEOUT_MS : argTimeout !== undefined ? Math.min(argTimeout, foregroundWaitMs) : foregroundWaitMs;
|
|
34053
34067
|
const startedAt = Date.now();
|
|
34054
34068
|
while (true) {
|
|
34055
|
-
const status = await
|
|
34069
|
+
const status = await callBashBridge(ctx, context, "bash_status", { task_id: taskId });
|
|
34056
34070
|
if (status.success === false) {
|
|
34057
34071
|
throw new Error(status.message ?? "bash_status failed");
|
|
34058
34072
|
}
|
|
@@ -34073,7 +34087,9 @@ function createBashTool(ctx) {
|
|
|
34073
34087
|
await sleep(FOREGROUND_POLL_INTERVAL_MS);
|
|
34074
34088
|
continue;
|
|
34075
34089
|
}
|
|
34076
|
-
const promoted = await
|
|
34090
|
+
const promoted = await callBashBridge(ctx, context, "bash_promote", {
|
|
34091
|
+
task_id: taskId
|
|
34092
|
+
});
|
|
34077
34093
|
if (promoted.success === false) {
|
|
34078
34094
|
throw new Error(promoted.message ?? "bash_promote failed");
|
|
34079
34095
|
}
|
|
@@ -34154,7 +34170,7 @@ function createBashKillTool(ctx) {
|
|
|
34154
34170
|
taskId: z5.string().describe("Background task ID returned by bash({ background: true }), e.g. bash-6b454047.")
|
|
34155
34171
|
},
|
|
34156
34172
|
execute: async (args, context) => {
|
|
34157
|
-
const data = await
|
|
34173
|
+
const data = await callBashBridge(ctx, context, "bash_kill", {
|
|
34158
34174
|
task_id: args.taskId
|
|
34159
34175
|
});
|
|
34160
34176
|
if (data.success === false) {
|
|
@@ -34169,7 +34185,7 @@ function createBashKillTool(ctx) {
|
|
|
34169
34185
|
};
|
|
34170
34186
|
}
|
|
34171
34187
|
async function bashStatusSnapshot(ctx, runtime, taskId, outputMode, options) {
|
|
34172
|
-
const data = await
|
|
34188
|
+
const data = await callBashBridge(ctx, runtime, "bash_status", { task_id: taskId, output_mode: outputMode }, options);
|
|
34173
34189
|
if (data.success === false) {
|
|
34174
34190
|
throw new Error(data.message ?? "bash_status failed");
|
|
34175
34191
|
}
|
|
@@ -34307,7 +34323,6 @@ var z6 = tool6.schema;
|
|
|
34307
34323
|
var BASH_WAIT_POLL_INTERVAL_MS = 100;
|
|
34308
34324
|
var DEFAULT_BASH_STATUS_WAIT_TIMEOUT_MS = 30000;
|
|
34309
34325
|
var MAX_BASH_STATUS_WAIT_TIMEOUT_MS = 300000;
|
|
34310
|
-
var BASH_TRANSPORT_TIMEOUT_MS2 = 30000;
|
|
34311
34326
|
var REGEX_WAIT_SCAN_WINDOW_BYTES = 64 * 1024;
|
|
34312
34327
|
function createBashWatchTool(ctx) {
|
|
34313
34328
|
return {
|
|
@@ -34342,7 +34357,7 @@ function createBashWatchTool(ctx) {
|
|
|
34342
34357
|
markExplicitControl(context.sessionID, taskId, false);
|
|
34343
34358
|
let registered;
|
|
34344
34359
|
try {
|
|
34345
|
-
registered = await
|
|
34360
|
+
registered = await callBashBridge(ctx, context, "bash_notify", notifyParams);
|
|
34346
34361
|
} catch (err) {
|
|
34347
34362
|
unmarkExplicitControl(context.sessionID, taskId);
|
|
34348
34363
|
throw err;
|
|
@@ -34355,7 +34370,6 @@ function createBashWatchTool(ctx) {
|
|
|
34355
34370
|
throw new Error(`invalid_request: ${message}`);
|
|
34356
34371
|
throw new Error(`${code}: ${message}`);
|
|
34357
34372
|
}
|
|
34358
|
-
markExplicitControl(context.sessionID, taskId);
|
|
34359
34373
|
const metadata2 = context.metadata;
|
|
34360
34374
|
metadata2?.({ taskId, registered: true, watchId: registered.watch_id });
|
|
34361
34375
|
return `Watch registered: ${registered.watch_id} on task ${taskId}
|
|
@@ -34398,7 +34412,7 @@ ${preview2.slice(0, 2000)}`;
|
|
|
34398
34412
|
return text;
|
|
34399
34413
|
}
|
|
34400
34414
|
async function bashStatusSnapshot2(ctx, runtime, taskId, outputMode, options) {
|
|
34401
|
-
const data = await
|
|
34415
|
+
const data = await callBashBridge(ctx, runtime, "bash_status", { task_id: taskId, output_mode: outputMode }, options);
|
|
34402
34416
|
if (data.success === false)
|
|
34403
34417
|
throw new Error(data.message ?? "bash_status failed");
|
|
34404
34418
|
return data;
|
|
@@ -34409,10 +34423,7 @@ async function waitForBashStatus(ctx, runtime, taskId, outputMode, waitFor, effe
|
|
|
34409
34423
|
let spillCursor = { output: 0, stderr: 0, combined: 0 };
|
|
34410
34424
|
let scanText = "";
|
|
34411
34425
|
let scanBaseOffset = 0;
|
|
34412
|
-
const bridgeOptions = {
|
|
34413
|
-
keepBridgeOnTimeout: true,
|
|
34414
|
-
transportTimeoutMs: BASH_TRANSPORT_TIMEOUT_MS2
|
|
34415
|
-
};
|
|
34426
|
+
const bridgeOptions = {};
|
|
34416
34427
|
markTaskWaiting(runtime.sessionID, taskId);
|
|
34417
34428
|
let sawTerminal = false;
|
|
34418
34429
|
try {
|
|
@@ -34598,7 +34609,7 @@ function createBashWriteTool(ctx) {
|
|
|
34598
34609
|
]).describe("Either a string of verbatim bytes (e.g. 'print(1)\\n') OR an array mixing strings " + "and { key: '<name>' } objects for atomic text+key sequences. " + "Example: [ 'iHello', { key: 'esc' }, ':wq', { key: 'enter' } ].")
|
|
34599
34610
|
},
|
|
34600
34611
|
execute: async (args, context) => {
|
|
34601
|
-
const data = await
|
|
34612
|
+
const data = await callBashBridge(ctx, context, "bash_write", {
|
|
34602
34613
|
task_id: args.taskId,
|
|
34603
34614
|
input: args.input
|
|
34604
34615
|
});
|
|
@@ -37465,8 +37476,8 @@ ${lines}
|
|
|
37465
37476
|
delivery: projectConfig.configure_warnings_delivery ?? "toast"
|
|
37466
37477
|
});
|
|
37467
37478
|
},
|
|
37468
|
-
onBashCompletion: (completion) => {
|
|
37469
|
-
const sessionDir =
|
|
37479
|
+
onBashCompletion: (completion, bridge) => {
|
|
37480
|
+
const sessionDir = bridge.getCwd();
|
|
37470
37481
|
handlePushedBgCompletion({
|
|
37471
37482
|
ctx,
|
|
37472
37483
|
directory: sessionDir,
|
|
@@ -37475,8 +37486,8 @@ ${lines}
|
|
|
37475
37486
|
serverUrl: input.serverUrl?.toString()
|
|
37476
37487
|
}, completion);
|
|
37477
37488
|
},
|
|
37478
|
-
onBashLongRunning: (reminder) => {
|
|
37479
|
-
const sessionDir =
|
|
37489
|
+
onBashLongRunning: (reminder, bridge) => {
|
|
37490
|
+
const sessionDir = bridge.getCwd();
|
|
37480
37491
|
handlePushedBgLongRunning({
|
|
37481
37492
|
ctx,
|
|
37482
37493
|
directory: sessionDir,
|
|
@@ -37485,8 +37496,8 @@ ${lines}
|
|
|
37485
37496
|
serverUrl: input.serverUrl?.toString()
|
|
37486
37497
|
}, reminder);
|
|
37487
37498
|
},
|
|
37488
|
-
onBashPatternMatch: (frame) => {
|
|
37489
|
-
const sessionDir =
|
|
37499
|
+
onBashPatternMatch: (frame, bridge) => {
|
|
37500
|
+
const sessionDir = bridge.getCwd();
|
|
37490
37501
|
handlePushedPatternMatch({
|
|
37491
37502
|
ctx,
|
|
37492
37503
|
directory: sessionDir,
|
package/dist/tools/_shared.d.ts
CHANGED
|
@@ -77,6 +77,7 @@ export declare function isEmptyParam(value: unknown): boolean;
|
|
|
77
77
|
* file tree or wait on external I/O (embedding API, index build). The
|
|
78
78
|
* goal is to absorb slow first-call spikes without masking real hangs.
|
|
79
79
|
*/
|
|
80
|
+
export declare const BASH_TRANSPORT_TIMEOUT_MS = 30000;
|
|
80
81
|
export declare const LONG_RUNNING_COMMAND_TIMEOUT_MS: Record<string, number>;
|
|
81
82
|
/** Returns the per-command timeout override, or undefined to use the bridge default. */
|
|
82
83
|
export declare function timeoutForCommand(command: string): number | undefined;
|
|
@@ -160,6 +161,13 @@ export declare function bridgeFor(ctx: PluginContext, runtime: ToolRuntime): Bin
|
|
|
160
161
|
* session identifier still work — they just share undo/checkpoint state.
|
|
161
162
|
*/
|
|
162
163
|
export declare function callBridge(ctx: PluginContext, runtime: ToolRuntime, command: string, params?: Record<string, unknown>, options?: BridgeRequestOptions): Promise<Record<string, unknown>>;
|
|
164
|
+
/**
|
|
165
|
+
* Send a bash-family command without restarting the shared bridge on transport
|
|
166
|
+
* timeout. Bash has its own child-process timeout/watchdog handling; a late
|
|
167
|
+
* transport response must not sacrifice the warm shared bridge and reject
|
|
168
|
+
* unrelated sibling requests.
|
|
169
|
+
*/
|
|
170
|
+
export declare function callBashBridge(ctx: PluginContext, runtime: ToolRuntime, command: string, params?: Record<string, unknown>, options?: BridgeRequestOptions): Promise<Record<string, unknown>>;
|
|
163
171
|
/**
|
|
164
172
|
* Eagerly warm the session-directory cache for a runtime. Safe to call from
|
|
165
173
|
* synchronous code — the lookup runs in the background and failures are
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_shared.d.ts","sourceRoot":"","sources":["../../src/tools/_shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAQhF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,KAAG,GACR,CAAC;AAEhD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,OAAO,EACV,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CAWpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAMpD;AAED;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"_shared.d.ts","sourceRoot":"","sources":["../../src/tools/_shared.ts"],"names":[],"mappings":"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"}
|
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":"AACA,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAavE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"bash.d.ts","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAavE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAmEjD,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,GAAG,cAAc,CAuQjE;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,aAAa,GAAG,cAAc,CAyBvE;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,cAAc,CAuBrE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bash_watch.d.ts","sourceRoot":"","sources":["../../src/tools/bash_watch.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAavE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"bash_watch.d.ts","sourceRoot":"","sources":["../../src/tools/bash_watch.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAavE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AASjD,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AACrD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AACF,KAAK,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,MAAM,CAAC,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAGlF,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,cAAc,CAwFtE;AAiDD,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,eAAe,GAAG,SAAS,EACpC,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,kBAAkB,CAAC,CA4D7B;AA6DD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,GAAG,SAAS,CAK5E;AA4DD,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,eAAe,GACvB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAEtC"}
|
package/dist/tui.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// src/tui/index.tsx
|
|
2
2
|
import { createMemo as createMemo2, createSignal as createSignal2, onCleanup as onCleanup2 } from "solid-js";
|
|
3
3
|
// package.json
|
|
4
|
-
var version = "0.35.
|
|
4
|
+
var version = "0.35.4";
|
|
5
5
|
|
|
6
6
|
// src/shared/rpc-client.ts
|
|
7
7
|
import { existsSync, readdirSync, readFileSync, unlinkSync } from "node:fs";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cortexkit/aft-opencode",
|
|
3
|
-
"version": "0.35.
|
|
3
|
+
"version": "0.35.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "OpenCode plugin for Agent File Tools (AFT) — tree-sitter and lsp powered code analysis",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -30,19 +30,19 @@
|
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@clack/prompts": "^1.2.0",
|
|
33
|
-
"@cortexkit/aft-bridge": "0.35.
|
|
33
|
+
"@cortexkit/aft-bridge": "0.35.4",
|
|
34
34
|
"@xterm/headless": "^5.5.0",
|
|
35
35
|
"comment-json": "^4.6.2",
|
|
36
36
|
"undici": "^7.25.0",
|
|
37
37
|
"zod": "^4.1.8"
|
|
38
38
|
},
|
|
39
39
|
"optionalDependencies": {
|
|
40
|
-
"@cortexkit/aft-darwin-arm64": "0.35.
|
|
41
|
-
"@cortexkit/aft-darwin-x64": "0.35.
|
|
42
|
-
"@cortexkit/aft-linux-arm64": "0.35.
|
|
43
|
-
"@cortexkit/aft-linux-x64": "0.35.
|
|
44
|
-
"@cortexkit/aft-win32-arm64": "0.35.
|
|
45
|
-
"@cortexkit/aft-win32-x64": "0.35.
|
|
40
|
+
"@cortexkit/aft-darwin-arm64": "0.35.4",
|
|
41
|
+
"@cortexkit/aft-darwin-x64": "0.35.4",
|
|
42
|
+
"@cortexkit/aft-linux-arm64": "0.35.4",
|
|
43
|
+
"@cortexkit/aft-linux-x64": "0.35.4",
|
|
44
|
+
"@cortexkit/aft-win32-arm64": "0.35.4",
|
|
45
|
+
"@cortexkit/aft-win32-x64": "0.35.4"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
48
|
"@opencode-ai/plugin": "^1.15.11",
|