@agentclientprotocol/claude-agent-acp 0.99.2-preview.12 → 0.99.2-preview.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/acp-agent.d.ts +22 -3
- package/dist/acp-agent.d.ts.map +1 -1
- package/dist/acp-agent.js +56 -12
- package/dist/background-work.d.ts +81 -15
- package/dist/background-work.d.ts.map +1 -1
- package/dist/background-work.js +167 -31
- package/dist/tool-calls/background.d.ts +10 -0
- package/dist/tool-calls/background.d.ts.map +1 -1
- package/dist/tool-calls/background.js +18 -0
- package/dist/tool-calls/renderer.d.ts +8 -0
- package/dist/tool-calls/renderer.d.ts.map +1 -1
- package/dist/tool-calls/renderer.js +6 -5
- package/dist/v2/agent.d.ts.map +1 -1
- package/dist/v2/agent.js +8 -3
- package/dist/v2/background.d.ts +24 -6
- package/dist/v2/background.d.ts.map +1 -1
- package/dist/v2/background.js +61 -18
- package/package.json +1 -1
package/dist/acp-agent.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import * as sessionIndex from "./session-index/connection.js";
|
|
|
9
9
|
import type { BatchGetSessionsRequest, RenameSessionRequest, SessionIdRequest } from "./session-index/service.js";
|
|
10
10
|
import type { ListSubscribeRequest, ListUnsubscribeRequest } from "./session-index/list-subscriptions.js";
|
|
11
11
|
import { AsyncTaskRuntime } from "./async-tasks.js";
|
|
12
|
-
import { type BackgroundLevel, type BackgroundSink } from "./background-work.js";
|
|
12
|
+
import { type BackgroundLevel, type BackgroundSink, type BackgroundToolCall } from "./background-work.js";
|
|
13
13
|
import { type AuthStatus, type AuthStatusKind } from "./auth-status.js";
|
|
14
14
|
import { ContentBlockParam } from "@anthropic-ai/sdk/resources";
|
|
15
15
|
import { BetaContentBlock, BetaRawContentBlockDelta } from "@anthropic-ai/sdk/resources/beta.mjs";
|
|
@@ -748,7 +748,9 @@ export type Session = {
|
|
|
748
748
|
* `perTaskStopAffordance`: then it spares both, and the client is expected
|
|
749
749
|
* to stop each one itself. A client that can cancel one subagent gets the
|
|
750
750
|
* declaration, but it has no control for a workflow unless it is AIR with
|
|
751
|
-
* `asyncTasks` (`_session/async_task/stop`)
|
|
751
|
+
* `asyncTasks` (`_session/async_task/stop`), or gets the session's
|
|
752
|
+
* background work (`reportsBackground`, with `tool_call/cancel`), which
|
|
753
|
+
* `session/cancel` must leave running. So for any other such client the
|
|
752
754
|
* adapter stops the workflows after the interrupt, as the interrupt did
|
|
753
755
|
* before. */
|
|
754
756
|
stopsWorkflowsOnCancel?: boolean;
|
|
@@ -762,6 +764,11 @@ export type Session = {
|
|
|
762
764
|
toolCallId: string;
|
|
763
765
|
parentToolUseId?: string;
|
|
764
766
|
}>;
|
|
767
|
+
/** The tool calls whose tasks went on in the background and still run, by
|
|
768
|
+
* task id: a Monitor, a Workflow, or a backgrounded MCP call. The tool call
|
|
769
|
+
* stays `in_progress` (or `paused`) after its result, until its task ends
|
|
770
|
+
* (see `withRunningToolCall`). Only while `reportsBackground`. */
|
|
771
|
+
backgroundToolCalls?: Map<string, BackgroundToolCall>;
|
|
765
772
|
/** Whether the client gets the session's background work (see
|
|
766
773
|
* `background-work.ts`). Only when Claude Code's interrupt spares
|
|
767
774
|
* background tasks, as `perTaskStopAffordance` makes it. */
|
|
@@ -1609,11 +1616,23 @@ export declare class ClaudeAcpAgent {
|
|
|
1609
1616
|
/** Idempotent: a session that is not loaded here is already closed. */
|
|
1610
1617
|
closeSession(params: CloseSessionRequest): Promise<CloseSessionResponse>;
|
|
1611
1618
|
/** Stops a command running in the background (v2 `terminal/cancel`, see
|
|
1612
|
-
* {@link
|
|
1619
|
+
* {@link cancelBackgroundWork}). */
|
|
1613
1620
|
cancelBackgroundTerminal(params: {
|
|
1614
1621
|
sessionId: string;
|
|
1615
1622
|
terminalId: string;
|
|
1616
1623
|
}): Promise<void>;
|
|
1624
|
+
/** Stops the task of a tool call running in the background (v2
|
|
1625
|
+
* `tool_call/cancel`, see {@link cancelBackgroundWork}). */
|
|
1626
|
+
cancelBackgroundToolCall(params: {
|
|
1627
|
+
sessionId: string;
|
|
1628
|
+
toolCallId: string;
|
|
1629
|
+
}): Promise<void>;
|
|
1630
|
+
/** Sends the current state of each tool call in `toolCallIds` that the root
|
|
1631
|
+
* session `sessionId` runs in the background: the call as its tool use
|
|
1632
|
+
* shows it, with its status now. v2 requires it for each tool call that a
|
|
1633
|
+
* `session/resume` snapshot lists. A failure is logged, as for
|
|
1634
|
+
* {@link publishLiveSubagents}. */
|
|
1635
|
+
publishBackgroundToolCalls(sessionId: string, toolCallIds: string[]): Promise<void>;
|
|
1617
1636
|
/** Sends the current `subagent_update` of each live subagent session in
|
|
1618
1637
|
* `children`, of the session `sessionId` (see
|
|
1619
1638
|
* {@link NativeSubagentRuntime.currentUpdate}). v2 requires it for each
|
package/dist/acp-agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../src/acp-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../src/acp-agent.ts"],"names":[],"mappings":"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"}
|
package/dist/acp-agent.js
CHANGED
|
@@ -9,7 +9,7 @@ import { childModelOption, isNativeSubagentControlTool, isNativeSubagentControlU
|
|
|
9
9
|
import { AIR_ASYNC_TASKS_CAPABILITY, AIR_BACKGROUND_SUBAGENTS_CAPABILITY, AIR_CUSTOM_INSTRUCTIONS_CAPABILITY, airCustomInstructions, AIR_DIFF_PATCH_CAPABILITY, AIR_PLAN_FILE_CAPABILITY, AIR_GOAL_KEY, AIR_KIND_KEY, AIR_LOAD_REPLAY_END_CAPABILITY, AIR_LOAD_REPLAY_END_KEY, AIR_RECOMMENDED_CONFIG_VALUE_CAPABILITY, AIR_SKILL_PATH_KEY, clientSupportsAirCapability, withAirMeta, } from "./air-extension.js";
|
|
10
10
|
import * as sessionIndex from "./session-index/connection.js";
|
|
11
11
|
import { AsyncTaskRuntime, backgroundBashTaskFromToolResult, backgroundedBashToolCallIds, clientSupportsAsyncTasks, } from "./async-tasks.js";
|
|
12
|
-
import { backgroundLevel, BackgroundWorkReporter,
|
|
12
|
+
import { backgroundLevel, backgroundToolCallPause, backgroundToolCallStates, BackgroundWorkReporter, cancelBackgroundWork, droppedTasks, endBackgroundWork, registerBackgroundToolCalls, takeBackgroundTerminalExit, takeBackgroundToolCallEnd, } from "./background-work.js";
|
|
13
13
|
import { AUTH_STATUS_PROBE_TIMEOUT_MS, AUTH_STATUS_UPDATE_METHOD, authStatusCapability, fromAccountInfo, fromCliStatus, gatewayAuthStatus, mergeAuthStatus, notLoggedInAuthStatus, sameAuthStatus, } from "./auth-status.js";
|
|
14
14
|
import { execFile } from "node:child_process";
|
|
15
15
|
import { randomUUID } from "node:crypto";
|
|
@@ -37,7 +37,7 @@ import { ContextCompactionLifecycle, clientSupportsCompactionUpdates, contextCom
|
|
|
37
37
|
import { clientSupportsNotices, MAX_NOTICE_TITLE_LENGTH, normalizeNoticeText, noticeOrTranscriptUpdate, sentenceCase, splitNoticeText, } from "./session-notices.js";
|
|
38
38
|
import { applyTaskCreate, applyTaskList, applyTaskUpdate, clearHookCallbacks, completeHookCallback, createPostToolUseHook, hasHookCallback, createTaskHook, parseTaskCreateOutput, parseTaskListOutput, parseTaskUpdateOutput, planEntries, registerHookCallback, changedTaskPlanEntries, forgetPublishedTaskPlan, unregisterHookCallback, } from "./tools.js";
|
|
39
39
|
import { previewPatchContent } from "./diff.js";
|
|
40
|
-
import { backgroundedBashToolCall, withRunningTerminal } from "./tool-calls/background.js";
|
|
40
|
+
import { backgroundedBashToolCall, withRunningTerminal, withRunningToolCall, } from "./tool-calls/background.js";
|
|
41
41
|
import { ChangedMetaFilter } from "./tool-calls/changed-meta-filter.js";
|
|
42
42
|
import { ToolCallFieldTracker } from "./tool-calls/field-tracker.js";
|
|
43
43
|
import { ClientCapabilities as ToolCallClientCapabilities } from "./tool-calls/client-capabilities.js";
|
|
@@ -3438,12 +3438,17 @@ export class ClaudeAcpAgent {
|
|
|
3438
3438
|
}
|
|
3439
3439
|
this.syncAwaitingUser(params.sessionId, session);
|
|
3440
3440
|
};
|
|
3441
|
-
/** Ends the display terminal of a command that went to the background,
|
|
3442
|
-
*
|
|
3443
|
-
|
|
3441
|
+
/** Ends the display terminal of a command that went to the background, and
|
|
3442
|
+
* gives a tool call whose task went on in the background its final
|
|
3443
|
+
* status, once the task ends (see `Session.backgroundTerminals` and
|
|
3444
|
+
* `Session.backgroundToolCalls`). */
|
|
3445
|
+
const endBackgroundTask = async (taskId, end) => {
|
|
3444
3446
|
const exit = takeBackgroundTerminalExit(session, params.sessionId, taskId);
|
|
3445
3447
|
if (exit)
|
|
3446
3448
|
await sendUpdate(exit);
|
|
3449
|
+
const toolCallEnd = takeBackgroundToolCallEnd(session, params.sessionId, taskId, end);
|
|
3450
|
+
if (toolCallEnd)
|
|
3451
|
+
await sendUpdate(toolCallEnd);
|
|
3447
3452
|
};
|
|
3448
3453
|
/** Settles a task. Its request may still be open, and an agent without a
|
|
3449
3454
|
* record no longer blocks the foreground work, so that is checked again. */
|
|
@@ -4757,7 +4762,7 @@ export class ClaudeAcpAgent {
|
|
|
4757
4762
|
streamedBlocksByParent.delete(message.tool_use_id);
|
|
4758
4763
|
droppedStreams.delete(message.tool_use_id);
|
|
4759
4764
|
}
|
|
4760
|
-
await
|
|
4765
|
+
await endBackgroundTask(message.task_id, message.status);
|
|
4761
4766
|
if (message.status === "stopped") {
|
|
4762
4767
|
await closeStoppedSubagentToolCalls(message.tool_use_id);
|
|
4763
4768
|
}
|
|
@@ -4791,14 +4796,22 @@ export class ClaudeAcpAgent {
|
|
|
4791
4796
|
streamedBlocksByParent.delete(parentToolUseId);
|
|
4792
4797
|
droppedStreams.delete(parentToolUseId);
|
|
4793
4798
|
}
|
|
4794
|
-
await
|
|
4799
|
+
await endBackgroundTask(message.task_id, message.patch.status === "killed" ? "stopped" : message.patch.status);
|
|
4795
4800
|
if (message.patch.status === "killed") {
|
|
4796
4801
|
await closeStoppedSubagentToolCalls(parentToolUseId);
|
|
4797
4802
|
}
|
|
4798
4803
|
settleLiveTask(message.task_id);
|
|
4799
4804
|
}
|
|
4805
|
+
else if (message.patch.status === "paused") {
|
|
4806
|
+
const pause = backgroundToolCallPause(session, params.sessionId, message.task_id, true);
|
|
4807
|
+
if (pause)
|
|
4808
|
+
await sendUpdate(pause);
|
|
4809
|
+
}
|
|
4800
4810
|
else if (message.patch.status === "running" ||
|
|
4801
4811
|
message.patch.status === "pending") {
|
|
4812
|
+
const resume = backgroundToolCallPause(session, params.sessionId, message.task_id, false);
|
|
4813
|
+
if (resume)
|
|
4814
|
+
await sendUpdate(resume);
|
|
4802
4815
|
// The SDK can resume a finished subagent under the same
|
|
4803
4816
|
// agent id without a new task_started.
|
|
4804
4817
|
resumeLiveTask(message.task_id);
|
|
@@ -4956,8 +4969,8 @@ export class ClaudeAcpAgent {
|
|
|
4956
4969
|
await asyncTasks.backgroundTasksChanged(message.tasks);
|
|
4957
4970
|
if (session.reportsBackground) {
|
|
4958
4971
|
const level = backgroundLevel(message.tasks);
|
|
4959
|
-
for (const taskId of
|
|
4960
|
-
await
|
|
4972
|
+
for (const taskId of droppedTasks(session, level)) {
|
|
4973
|
+
await endBackgroundTask(taskId, undefined);
|
|
4961
4974
|
}
|
|
4962
4975
|
session.backgroundLevel = level;
|
|
4963
4976
|
}
|
|
@@ -6144,6 +6157,7 @@ export class ClaudeAcpAgent {
|
|
|
6144
6157
|
const acceptedPlanToolUseId = observeExitPlanToolResults(message, content, session);
|
|
6145
6158
|
let backgroundedToolCalls = new Set();
|
|
6146
6159
|
let runningTerminal;
|
|
6160
|
+
let runningToolCalls = new Set();
|
|
6147
6161
|
if (message.type === "user") {
|
|
6148
6162
|
rememberResolvedToolNames(session, content);
|
|
6149
6163
|
recordSubagentFileEdits(session.activeTurn, message.parent_tool_use_id, content, session.toolUseCache);
|
|
@@ -6166,6 +6180,7 @@ export class ClaudeAcpAgent {
|
|
|
6166
6180
|
: {}),
|
|
6167
6181
|
});
|
|
6168
6182
|
}
|
|
6183
|
+
runningToolCalls = registerBackgroundToolCalls(session, content, toolUseResult, session.toolUseCache, message.parent_tool_use_id);
|
|
6169
6184
|
await asyncTasks.toolResults(content);
|
|
6170
6185
|
backgroundedToolCalls = backgroundedBashToolCallIds(content, session.toolUseCache, asyncTasks, backgroundBashTask);
|
|
6171
6186
|
const resumedAgentId = resumedNativeSubagentId(toolUseResult);
|
|
@@ -6201,7 +6216,7 @@ export class ClaudeAcpAgent {
|
|
|
6201
6216
|
// filtered out of `content` above; blocks that do pass through
|
|
6202
6217
|
// (e.g. a subagent image) carry the stamped parentToolUseId
|
|
6203
6218
|
// meta and are excluded there.
|
|
6204
|
-
await sendUpdate(withRunningTerminal(backgroundedBashToolCall(acceptedPlanToolResult(notification, acceptedPlanToolUseId), backgroundedToolCalls, asyncTasks.enabled), runningTerminal));
|
|
6219
|
+
await sendUpdate(withRunningToolCall(withRunningTerminal(backgroundedBashToolCall(acceptedPlanToolResult(notification, acceptedPlanToolUseId), backgroundedToolCalls, asyncTasks.enabled), runningTerminal), runningToolCalls));
|
|
6205
6220
|
}
|
|
6206
6221
|
break;
|
|
6207
6222
|
}
|
|
@@ -6954,9 +6969,37 @@ export class ClaudeAcpAgent {
|
|
|
6954
6969
|
return {};
|
|
6955
6970
|
}
|
|
6956
6971
|
/** Stops a command running in the background (v2 `terminal/cancel`, see
|
|
6957
|
-
* {@link
|
|
6972
|
+
* {@link cancelBackgroundWork}). */
|
|
6958
6973
|
cancelBackgroundTerminal(params) {
|
|
6959
|
-
return
|
|
6974
|
+
return cancelBackgroundWork(this.sessions, params.sessionId, {
|
|
6975
|
+
terminalId: params.terminalId,
|
|
6976
|
+
});
|
|
6977
|
+
}
|
|
6978
|
+
/** Stops the task of a tool call running in the background (v2
|
|
6979
|
+
* `tool_call/cancel`, see {@link cancelBackgroundWork}). */
|
|
6980
|
+
cancelBackgroundToolCall(params) {
|
|
6981
|
+
return cancelBackgroundWork(this.sessions, params.sessionId, {
|
|
6982
|
+
toolCallId: params.toolCallId,
|
|
6983
|
+
});
|
|
6984
|
+
}
|
|
6985
|
+
/** Sends the current state of each tool call in `toolCallIds` that the root
|
|
6986
|
+
* session `sessionId` runs in the background: the call as its tool use
|
|
6987
|
+
* shows it, with its status now. v2 requires it for each tool call that a
|
|
6988
|
+
* `session/resume` snapshot lists. A failure is logged, as for
|
|
6989
|
+
* {@link publishLiveSubagents}. */
|
|
6990
|
+
async publishBackgroundToolCalls(sessionId, toolCallIds) {
|
|
6991
|
+
const session = this.sessions[sessionId];
|
|
6992
|
+
if (!session)
|
|
6993
|
+
return;
|
|
6994
|
+
const renderer = new AcpToolCallRenderer(this.toolCallCapabilities);
|
|
6995
|
+
try {
|
|
6996
|
+
for (const update of backgroundToolCallStates(session, sessionId, toolCallIds, renderer)) {
|
|
6997
|
+
await this.client.sessionUpdate(update);
|
|
6998
|
+
}
|
|
6999
|
+
}
|
|
7000
|
+
catch (error) {
|
|
7001
|
+
this.logger.error(`Session ${sessionId}: failed to send background tool calls:`, error);
|
|
7002
|
+
}
|
|
6960
7003
|
}
|
|
6961
7004
|
/** Sends the current `subagent_update` of each live subagent session in
|
|
6962
7005
|
* `children`, of the session `sessionId` (see
|
|
@@ -9618,6 +9661,7 @@ export class ClaudeAcpAgent {
|
|
|
9618
9661
|
liveBackgroundTasks: new Map(),
|
|
9619
9662
|
reportsBackground: this.backgroundWork.enabled && options.perTaskStopAffordance === true,
|
|
9620
9663
|
stopsWorkflowsOnCancel: options.perTaskStopAffordance === true &&
|
|
9664
|
+
!this.backgroundWork.enabled &&
|
|
9621
9665
|
!clientSupportsAsyncTasks(this.clientCapabilities),
|
|
9622
9666
|
nativeSubagentsByTaskId: new Map(),
|
|
9623
9667
|
nativeSubagentTaskIdByToolUseId: new Map(),
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import type { AcpSessionNotification } from "./acp-subagents.js";
|
|
2
2
|
import type { NativeSubagent } from "./native-subagents.js";
|
|
3
|
+
import { type AcpToolCallRenderer } from "./tool-calls/renderer.js";
|
|
3
4
|
/** An item of a `background` list. */
|
|
4
5
|
export type BackgroundItem = {
|
|
5
6
|
type: "terminal";
|
|
6
7
|
terminalId: string;
|
|
8
|
+
} | {
|
|
9
|
+
type: "tool_call";
|
|
10
|
+
toolCallId: string;
|
|
7
11
|
} | {
|
|
8
12
|
type: "subagent";
|
|
9
13
|
sessionId: string;
|
|
@@ -12,6 +16,20 @@ export type BackgroundItem = {
|
|
|
12
16
|
taskId: string;
|
|
13
17
|
description: string;
|
|
14
18
|
};
|
|
19
|
+
/** A tool call whose task runs on in the background (see `Session.backgroundToolCalls`). */
|
|
20
|
+
export interface BackgroundToolCall {
|
|
21
|
+
toolCallId: string;
|
|
22
|
+
/** The tool use of the call, which Claude Code no longer caches after its result. */
|
|
23
|
+
toolUse: {
|
|
24
|
+
name: string;
|
|
25
|
+
input: unknown;
|
|
26
|
+
};
|
|
27
|
+
/** The subagent tool call that made the call, if any. */
|
|
28
|
+
parentToolUseId?: string;
|
|
29
|
+
paused?: boolean;
|
|
30
|
+
}
|
|
31
|
+
/** How a background task ended, as Claude Code reports it. Undefined when it did not say. */
|
|
32
|
+
export type BackgroundTaskEnd = "completed" | "failed" | "stopped" | undefined;
|
|
15
33
|
/** The live background task set of `background_tasks_changed`, by task id. */
|
|
16
34
|
export type BackgroundLevel = Map<string, {
|
|
17
35
|
ambient: boolean;
|
|
@@ -45,11 +63,31 @@ export interface BackgroundWorkSession {
|
|
|
45
63
|
toolCallId: string;
|
|
46
64
|
parentToolUseId?: string;
|
|
47
65
|
}>;
|
|
66
|
+
backgroundToolCalls?: Map<string, BackgroundToolCall>;
|
|
48
67
|
nativeSubagentsByTaskId?: Map<string, NativeSubagent>;
|
|
68
|
+
liveBackgroundTasks?: Map<string, {
|
|
69
|
+
parentToolUseId?: string;
|
|
70
|
+
isSubagent: boolean;
|
|
71
|
+
}>;
|
|
72
|
+
/** The tool uses whose result has not come yet, by id. */
|
|
73
|
+
toolUseCache?: Record<string, unknown>;
|
|
49
74
|
query: {
|
|
50
75
|
stopTask(taskId: string): Promise<void>;
|
|
51
76
|
};
|
|
52
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Registers each tool call of a tool result message whose task goes on in
|
|
80
|
+
* the background: a `Monitor` or `Workflow` call, whose structured result
|
|
81
|
+
* names its task, or a call that a live task names as its tool use, such as
|
|
82
|
+
* a backgrounded MCP call. The task must be in the level: one that ended
|
|
83
|
+
* already, or that Claude Code marks `ambient`, leaves its call as it is.
|
|
84
|
+
* Returns the ids of the calls, whose result then reports `in_progress` (see
|
|
85
|
+
* `withRunningToolCall`).
|
|
86
|
+
*/
|
|
87
|
+
export declare function registerBackgroundToolCalls(session: BackgroundWorkSession, content: unknown, toolUseResult: unknown, toolUses: Record<string, {
|
|
88
|
+
name: string;
|
|
89
|
+
input: unknown;
|
|
90
|
+
}>, parentToolUseId: string | null): Set<string>;
|
|
53
91
|
/** The level of a `background_tasks_changed` payload. */
|
|
54
92
|
export declare function backgroundLevel(tasks: {
|
|
55
93
|
task_id: string;
|
|
@@ -67,14 +105,14 @@ export declare function backgroundLevel(tasks: {
|
|
|
67
105
|
*/
|
|
68
106
|
export declare function backgroundLists(session: BackgroundWorkSession, rootSessionId: string): Map<string, BackgroundItem[]>;
|
|
69
107
|
/**
|
|
70
|
-
* The tasks of the terminals that `level` does not hold:
|
|
71
|
-
* longer runs them, so
|
|
72
|
-
* requires. A terminal is registered at its
|
|
73
|
-
* joined the level, so a later level without the task means
|
|
74
|
-
* Claude Code usually sends a task's end before that level,
|
|
75
|
-
*
|
|
108
|
+
* The tasks of the terminals and tool calls that `level` does not hold:
|
|
109
|
+
* Claude Code no longer runs them, so they end before a list drops them, as
|
|
110
|
+
* v2 requires. A terminal or tool call is registered at its tool result,
|
|
111
|
+
* after its task joined the level, so a later level without the task means
|
|
112
|
+
* that it ended. Claude Code usually sends a task's end before that level,
|
|
113
|
+
* which ends them first, but the SDK does not promise that order.
|
|
76
114
|
*/
|
|
77
|
-
export declare function
|
|
115
|
+
export declare function droppedTasks(session: BackgroundWorkSession, level: BackgroundLevel): string[];
|
|
78
116
|
/**
|
|
79
117
|
* Removes the terminal of the background command `taskId` of the session
|
|
80
118
|
* `sessionId`, and returns the update that exits it, or undefined when the
|
|
@@ -83,21 +121,49 @@ export declare function droppedTerminalTasks(session: BackgroundWorkSession, lev
|
|
|
83
121
|
* success, such as grep's 1.
|
|
84
122
|
*/
|
|
85
123
|
export declare function takeBackgroundTerminalExit(session: BackgroundWorkSession, sessionId: string, taskId: string): AcpSessionNotification | undefined;
|
|
124
|
+
/**
|
|
125
|
+
* Removes the background tool call of the task `taskId` of the session
|
|
126
|
+
* `sessionId`, and returns the update that gives it its final status, or
|
|
127
|
+
* undefined when the task has no such call. A task that Claude Code stopped
|
|
128
|
+
* is `cancelled`. One that ended without saying how, such as one that the
|
|
129
|
+
* level dropped, is `completed`: it no longer runs, and reported no failure.
|
|
130
|
+
*/
|
|
131
|
+
export declare function takeBackgroundToolCallEnd(session: BackgroundWorkSession, sessionId: string, taskId: string, end: BackgroundTaskEnd): AcpSessionNotification | undefined;
|
|
132
|
+
/**
|
|
133
|
+
* The update that reports the background tool call of the task `taskId` as
|
|
134
|
+
* `paused`, or as `in_progress` again, when `paused` changes it. Claude Code
|
|
135
|
+
* pauses a workflow this way.
|
|
136
|
+
*/
|
|
137
|
+
export declare function backgroundToolCallPause(session: BackgroundWorkSession, sessionId: string, taskId: string, paused: boolean): AcpSessionNotification | undefined;
|
|
138
|
+
/**
|
|
139
|
+
* The current state of each background tool call in `toolCallIds` of the
|
|
140
|
+
* root session `sessionId`: the call as `renderer` shows its tool use, with
|
|
141
|
+
* its status now (see `ClaudeAcpAgent.publishBackgroundToolCalls`).
|
|
142
|
+
*/
|
|
143
|
+
export declare function backgroundToolCallStates(session: BackgroundWorkSession & {
|
|
144
|
+
cwd: string;
|
|
145
|
+
}, sessionId: string, toolCallIds: string[], renderer: AcpToolCallRenderer): AcpSessionNotification[];
|
|
86
146
|
/**
|
|
87
147
|
* Ends the background work of a session whose query closed: Claude Code's
|
|
88
148
|
* background tasks end with its process. Returns the updates that exit the
|
|
89
|
-
* root session's terminals, and empties the level,
|
|
90
|
-
* empty. A subagent's command
|
|
91
|
-
* child's stream, which the closed query's routing
|
|
149
|
+
* root session's terminals and cancel its tool calls, and empties the level,
|
|
150
|
+
* so the next lists are empty. A subagent's command or tool call is left as
|
|
151
|
+
* it was: it is on the child's stream, which the closed query's routing
|
|
152
|
+
* owned.
|
|
92
153
|
*/
|
|
93
154
|
export declare function endBackgroundWork(session: BackgroundWorkSession, sessionId: string): AcpSessionNotification[];
|
|
94
155
|
/**
|
|
95
|
-
* Stops the
|
|
96
|
-
*
|
|
97
|
-
* by id: a subagent session's list is built with its root's.
|
|
98
|
-
* exits
|
|
156
|
+
* Stops the task of a terminal or tool call that the session `sessionId`
|
|
157
|
+
* lists (v2 `terminal/cancel` and `tool_call/cancel`). `sessions` are the
|
|
158
|
+
* root sessions, by id: a subagent session's list is built with its root's.
|
|
159
|
+
* The terminal exits, or the tool call gets its final status, when Claude
|
|
160
|
+
* Code reports the task stopped.
|
|
99
161
|
*/
|
|
100
|
-
export declare function
|
|
162
|
+
export declare function cancelBackgroundWork(sessions: Record<string, BackgroundWorkSession>, sessionId: string, target: {
|
|
163
|
+
terminalId: string;
|
|
164
|
+
} | {
|
|
165
|
+
toolCallId: string;
|
|
166
|
+
}): Promise<void>;
|
|
101
167
|
/**
|
|
102
168
|
* Publishes the lists of each session that reports them, each time one
|
|
103
169
|
* changes. The sink sends them to the client synchronously, so a list follows
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"background-work.d.ts","sourceRoot":"","sources":["../src/background-work.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"background-work.d.ts","sourceRoot":"","sources":["../src/background-work.ts"],"names":[],"mappings":"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"}
|
package/dist/background-work.js
CHANGED
|
@@ -14,15 +14,68 @@
|
|
|
14
14
|
* Bash tool result until its task ends (`Session.backgroundTerminals`).
|
|
15
15
|
* - A detached subagent: its child session, in its parent's list, while it
|
|
16
16
|
* works, and while it is idle with background work of its own.
|
|
17
|
-
* -
|
|
18
|
-
*
|
|
19
|
-
*
|
|
17
|
+
* - A task that a tool call started, such as a `Monitor`, a `Workflow` or a
|
|
18
|
+
* backgrounded MCP call: that tool call, kept `in_progress` (or `paused`)
|
|
19
|
+
* from its tool result until its task ends (`Session.backgroundToolCalls`).
|
|
20
|
+
* - Any other task, once its `task_started` came and the tool call that
|
|
21
|
+
* started it, if any, returned: a `_claude/task` item with the task's id
|
|
22
|
+
* and description. For example, a task whose tool call ended before the
|
|
23
|
+
* task joined the level.
|
|
20
24
|
*
|
|
21
25
|
* Only a session whose interrupt spares background tasks reports its lists
|
|
22
26
|
* (`Session.reportsBackground`): `session/cancel` must leave listed work
|
|
23
27
|
* running.
|
|
24
28
|
*/
|
|
25
29
|
import { RequestError } from "@agentclientprotocol/sdk/unstable";
|
|
30
|
+
import { V2_CANCELLED, V2_PAUSED } from "./tool-calls/renderer.js";
|
|
31
|
+
/** The tools whose structured result names the task that the call started. */
|
|
32
|
+
const TASK_TOOLS = new Set(["Monitor", "Workflow"]);
|
|
33
|
+
/**
|
|
34
|
+
* Registers each tool call of a tool result message whose task goes on in
|
|
35
|
+
* the background: a `Monitor` or `Workflow` call, whose structured result
|
|
36
|
+
* names its task, or a call that a live task names as its tool use, such as
|
|
37
|
+
* a backgrounded MCP call. The task must be in the level: one that ended
|
|
38
|
+
* already, or that Claude Code marks `ambient`, leaves its call as it is.
|
|
39
|
+
* Returns the ids of the calls, whose result then reports `in_progress` (see
|
|
40
|
+
* `withRunningToolCall`).
|
|
41
|
+
*/
|
|
42
|
+
export function registerBackgroundToolCalls(session, content, toolUseResult, toolUses, parentToolUseId) {
|
|
43
|
+
const registered = new Set();
|
|
44
|
+
if (!session.reportsBackground || !Array.isArray(content))
|
|
45
|
+
return registered;
|
|
46
|
+
const results = content.filter((block) => typeof block === "object" &&
|
|
47
|
+
block !== null &&
|
|
48
|
+
block.type === "tool_result" &&
|
|
49
|
+
typeof block.tool_use_id === "string" &&
|
|
50
|
+
block.is_error !== true);
|
|
51
|
+
const structuredTaskId = results.length === 1 &&
|
|
52
|
+
typeof toolUseResult === "object" &&
|
|
53
|
+
toolUseResult !== null &&
|
|
54
|
+
typeof toolUseResult.taskId === "string"
|
|
55
|
+
? toolUseResult.taskId
|
|
56
|
+
: undefined;
|
|
57
|
+
for (const { tool_use_id: toolCallId } of results) {
|
|
58
|
+
const toolUse = toolUses[toolCallId];
|
|
59
|
+
if (!toolUse)
|
|
60
|
+
continue;
|
|
61
|
+
const taskId = (TASK_TOOLS.has(toolUse.name) ? structuredTaskId : undefined) ??
|
|
62
|
+
[...(session.liveBackgroundTasks ?? [])].find(([, task]) => task.parentToolUseId === toolCallId && !task.isSubagent)?.[0];
|
|
63
|
+
const task = taskId === undefined ? undefined : session.backgroundLevel?.get(taskId);
|
|
64
|
+
if (!task ||
|
|
65
|
+
task.ambient ||
|
|
66
|
+
task.taskType === "local_bash" ||
|
|
67
|
+
task.taskType === "local_agent") {
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
(session.backgroundToolCalls ??= new Map()).set(taskId, {
|
|
71
|
+
toolCallId,
|
|
72
|
+
toolUse,
|
|
73
|
+
...(parentToolUseId ? { parentToolUseId } : {}),
|
|
74
|
+
});
|
|
75
|
+
registered.add(toolCallId);
|
|
76
|
+
}
|
|
77
|
+
return registered;
|
|
78
|
+
}
|
|
26
79
|
/** The level of a `background_tasks_changed` payload. */
|
|
27
80
|
export function backgroundLevel(tasks) {
|
|
28
81
|
return new Map(tasks.map((task) => [
|
|
@@ -54,20 +107,34 @@ export function backgroundLists(session, rootSessionId) {
|
|
|
54
107
|
for (const [taskId, task] of level) {
|
|
55
108
|
if (task.ambient)
|
|
56
109
|
continue;
|
|
110
|
+
// A subagent's command or tool call runs on the child's stream.
|
|
111
|
+
const ownerOf = (parentToolUseId) => parentToolUseId ? childByToolUse.get(parentToolUseId)?.sessionId : rootSessionId;
|
|
57
112
|
const terminal = session.backgroundTerminals?.get(taskId);
|
|
58
113
|
if (terminal) {
|
|
59
|
-
|
|
60
|
-
const owner = terminal.parentToolUseId
|
|
61
|
-
? childByToolUse.get(terminal.parentToolUseId)?.sessionId
|
|
62
|
-
: rootSessionId;
|
|
114
|
+
const owner = ownerOf(terminal.parentToolUseId);
|
|
63
115
|
if (owner)
|
|
64
116
|
lists.get(owner).push({ type: "terminal", terminalId: terminal.toolCallId });
|
|
65
117
|
continue;
|
|
66
118
|
}
|
|
119
|
+
const toolCall = session.backgroundToolCalls?.get(taskId);
|
|
120
|
+
if (toolCall) {
|
|
121
|
+
const owner = ownerOf(toolCall.parentToolUseId);
|
|
122
|
+
if (owner)
|
|
123
|
+
lists.get(owner).push({ type: "tool_call", toolCallId: toolCall.toolCallId });
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
67
126
|
// A command without a terminal yet is one that foreground work waits on.
|
|
68
127
|
// A subagent is listed below, as its session.
|
|
69
128
|
if (task.taskType === "local_bash" || task.taskType === "local_agent")
|
|
70
129
|
continue;
|
|
130
|
+
// A task joins the level before its `task_started`, and before the tool
|
|
131
|
+
// call that starts it returns. Until both, the task is unknown or part of
|
|
132
|
+
// that tool call, which the foreground work waits on. Claude Code drops a
|
|
133
|
+
// tool use from its cache at the tool's result.
|
|
134
|
+
const live = session.liveBackgroundTasks?.get(taskId);
|
|
135
|
+
if (!live || (live.parentToolUseId && session.toolUseCache?.[live.parentToolUseId])) {
|
|
136
|
+
continue;
|
|
137
|
+
}
|
|
71
138
|
const parent = task.parentTaskId ? childByTask.get(task.parentTaskId) : undefined;
|
|
72
139
|
lists
|
|
73
140
|
.get(parent?.sessionId ?? rootSessionId)
|
|
@@ -102,15 +169,18 @@ export function backgroundLists(session, rootSessionId) {
|
|
|
102
169
|
]);
|
|
103
170
|
}
|
|
104
171
|
/**
|
|
105
|
-
* The tasks of the terminals that `level` does not hold:
|
|
106
|
-
* longer runs them, so
|
|
107
|
-
* requires. A terminal is registered at its
|
|
108
|
-
* joined the level, so a later level without the task means
|
|
109
|
-
* Claude Code usually sends a task's end before that level,
|
|
110
|
-
*
|
|
172
|
+
* The tasks of the terminals and tool calls that `level` does not hold:
|
|
173
|
+
* Claude Code no longer runs them, so they end before a list drops them, as
|
|
174
|
+
* v2 requires. A terminal or tool call is registered at its tool result,
|
|
175
|
+
* after its task joined the level, so a later level without the task means
|
|
176
|
+
* that it ended. Claude Code usually sends a task's end before that level,
|
|
177
|
+
* which ends them first, but the SDK does not promise that order.
|
|
111
178
|
*/
|
|
112
|
-
export function
|
|
113
|
-
return [
|
|
179
|
+
export function droppedTasks(session, level) {
|
|
180
|
+
return [
|
|
181
|
+
...(session.backgroundTerminals?.keys() ?? []),
|
|
182
|
+
...(session.backgroundToolCalls?.keys() ?? []),
|
|
183
|
+
].filter((taskId) => !level.has(taskId));
|
|
114
184
|
}
|
|
115
185
|
/**
|
|
116
186
|
* Removes the terminal of the background command `taskId` of the session
|
|
@@ -138,12 +208,66 @@ export function takeBackgroundTerminalExit(session, sessionId, taskId) {
|
|
|
138
208
|
},
|
|
139
209
|
};
|
|
140
210
|
}
|
|
211
|
+
/**
|
|
212
|
+
* Removes the background tool call of the task `taskId` of the session
|
|
213
|
+
* `sessionId`, and returns the update that gives it its final status, or
|
|
214
|
+
* undefined when the task has no such call. A task that Claude Code stopped
|
|
215
|
+
* is `cancelled`. One that ended without saying how, such as one that the
|
|
216
|
+
* level dropped, is `completed`: it no longer runs, and reported no failure.
|
|
217
|
+
*/
|
|
218
|
+
export function takeBackgroundToolCallEnd(session, sessionId, taskId, end) {
|
|
219
|
+
const toolCall = session.backgroundToolCalls?.get(taskId);
|
|
220
|
+
if (!toolCall)
|
|
221
|
+
return undefined;
|
|
222
|
+
session.backgroundToolCalls.delete(taskId);
|
|
223
|
+
return toolCallStatusUpdate(sessionId, toolCall, end === "stopped" ? V2_CANCELLED : end === "failed" ? "failed" : "completed");
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* The update that reports the background tool call of the task `taskId` as
|
|
227
|
+
* `paused`, or as `in_progress` again, when `paused` changes it. Claude Code
|
|
228
|
+
* pauses a workflow this way.
|
|
229
|
+
*/
|
|
230
|
+
export function backgroundToolCallPause(session, sessionId, taskId, paused) {
|
|
231
|
+
const toolCall = session.backgroundToolCalls?.get(taskId);
|
|
232
|
+
if (!toolCall || (toolCall.paused ?? false) === paused)
|
|
233
|
+
return undefined;
|
|
234
|
+
toolCall.paused = paused;
|
|
235
|
+
return toolCallStatusUpdate(sessionId, toolCall, paused ? V2_PAUSED : "in_progress");
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* The current state of each background tool call in `toolCallIds` of the
|
|
239
|
+
* root session `sessionId`: the call as `renderer` shows its tool use, with
|
|
240
|
+
* its status now (see `ClaudeAcpAgent.publishBackgroundToolCalls`).
|
|
241
|
+
*/
|
|
242
|
+
export function backgroundToolCallStates(session, sessionId, toolCallIds, renderer) {
|
|
243
|
+
return [...(session.backgroundToolCalls?.values() ?? [])]
|
|
244
|
+
.filter((toolCall) => toolCallIds.includes(toolCall.toolCallId))
|
|
245
|
+
.map((toolCall) => {
|
|
246
|
+
const update = renderer.toolCall({ id: toolCall.toolCallId, ...toolCall.toolUse }, { cwd: session.cwd });
|
|
247
|
+
const status = toolCall.paused ? V2_PAUSED : "in_progress";
|
|
248
|
+
return { sessionId, update: { ...update, status } };
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
function toolCallStatusUpdate(sessionId, toolCall, status) {
|
|
252
|
+
return {
|
|
253
|
+
sessionId,
|
|
254
|
+
update: {
|
|
255
|
+
sessionUpdate: "tool_call_update",
|
|
256
|
+
toolCallId: toolCall.toolCallId,
|
|
257
|
+
status,
|
|
258
|
+
...(toolCall.parentToolUseId
|
|
259
|
+
? { _meta: { claudeCode: { parentToolUseId: toolCall.parentToolUseId } } }
|
|
260
|
+
: {}),
|
|
261
|
+
},
|
|
262
|
+
};
|
|
263
|
+
}
|
|
141
264
|
/**
|
|
142
265
|
* Ends the background work of a session whose query closed: Claude Code's
|
|
143
266
|
* background tasks end with its process. Returns the updates that exit the
|
|
144
|
-
* root session's terminals, and empties the level,
|
|
145
|
-
* empty. A subagent's command
|
|
146
|
-
* child's stream, which the closed query's routing
|
|
267
|
+
* root session's terminals and cancel its tool calls, and empties the level,
|
|
268
|
+
* so the next lists are empty. A subagent's command or tool call is left as
|
|
269
|
+
* it was: it is on the child's stream, which the closed query's routing
|
|
270
|
+
* owned.
|
|
147
271
|
*/
|
|
148
272
|
export function endBackgroundWork(session, sessionId) {
|
|
149
273
|
if (!session.reportsBackground)
|
|
@@ -154,32 +278,44 @@ export function endBackgroundWork(session, sessionId) {
|
|
|
154
278
|
: takeBackgroundTerminalExit(session, sessionId, taskId);
|
|
155
279
|
return exit ? [exit] : [];
|
|
156
280
|
});
|
|
281
|
+
const ends = [...(session.backgroundToolCalls ?? [])].flatMap(([taskId, toolCall]) => {
|
|
282
|
+
const end = toolCall.parentToolUseId
|
|
283
|
+
? undefined
|
|
284
|
+
: takeBackgroundToolCallEnd(session, sessionId, taskId, "stopped");
|
|
285
|
+
return end ? [end] : [];
|
|
286
|
+
});
|
|
157
287
|
session.backgroundLevel = undefined;
|
|
158
|
-
return exits;
|
|
288
|
+
return [...exits, ...ends];
|
|
159
289
|
}
|
|
160
290
|
/**
|
|
161
|
-
* Stops the
|
|
162
|
-
*
|
|
163
|
-
* by id: a subagent session's list is built with its root's.
|
|
164
|
-
* exits
|
|
291
|
+
* Stops the task of a terminal or tool call that the session `sessionId`
|
|
292
|
+
* lists (v2 `terminal/cancel` and `tool_call/cancel`). `sessions` are the
|
|
293
|
+
* root sessions, by id: a subagent session's list is built with its root's.
|
|
294
|
+
* The terminal exits, or the tool call gets its final status, when Claude
|
|
295
|
+
* Code reports the task stopped.
|
|
165
296
|
*/
|
|
166
|
-
export async function
|
|
167
|
-
const notCancellable = () =>
|
|
297
|
+
export async function cancelBackgroundWork(sessions, sessionId, target) {
|
|
298
|
+
const notCancellable = () => "terminalId" in target
|
|
299
|
+
? RequestError.invalidParams({ sessionId, terminalId: target.terminalId }, `Terminal ${target.terminalId} is not a command running in the background, so it cannot be cancelled.`)
|
|
300
|
+
: RequestError.invalidParams({ sessionId, toolCallId: target.toolCallId }, `Tool call ${target.toolCallId} is not running in the background, so it cannot be cancelled.`);
|
|
301
|
+
const isTarget = (item) => "terminalId" in target
|
|
302
|
+
? item.type === "terminal" && item.terminalId === target.terminalId
|
|
303
|
+
: item.type === "tool_call" && item.toolCallId === target.toolCallId;
|
|
168
304
|
const listed = (root, session) => session.reportsBackground === true &&
|
|
169
|
-
(backgroundLists(session, root)
|
|
170
|
-
.get(sessionId)
|
|
171
|
-
?.some((item) => item.type === "terminal" && item.terminalId === terminalId) ??
|
|
172
|
-
false);
|
|
305
|
+
(backgroundLists(session, root).get(sessionId)?.some(isTarget) ?? false);
|
|
173
306
|
const owner = Object.entries(sessions).find(([root, session]) => listed(root, session));
|
|
174
307
|
if (!owner)
|
|
175
308
|
throw notCancellable();
|
|
176
309
|
const [root, session] = owner;
|
|
177
|
-
const
|
|
310
|
+
const id = "terminalId" in target ? target.terminalId : target.toolCallId;
|
|
311
|
+
const taskId = [
|
|
312
|
+
...(("terminalId" in target ? session.backgroundTerminals : session.backgroundToolCalls) ?? []),
|
|
313
|
+
].find(([, entry]) => entry.toolCallId === id)[0];
|
|
178
314
|
try {
|
|
179
315
|
await session.query.stopTask(taskId);
|
|
180
316
|
}
|
|
181
317
|
catch (error) {
|
|
182
|
-
// The
|
|
318
|
+
// The task ended meanwhile: it has ended on the client too, or is about to.
|
|
183
319
|
if (!listed(root, session))
|
|
184
320
|
throw notCancellable();
|
|
185
321
|
throw error;
|
|
@@ -29,4 +29,14 @@ export declare function backgroundedBashToolCall(notification: SessionNotificati
|
|
|
29
29
|
* the exit when the command's task ends (see `Session.backgroundTerminals`).
|
|
30
30
|
*/
|
|
31
31
|
export declare function withRunningTerminal(notification: SessionNotification, toolCallId: string | undefined): SessionNotification;
|
|
32
|
+
/**
|
|
33
|
+
* Keeps the tool call of a task that went on in the background running: the
|
|
34
|
+
* tool result update of a tool call in `toolCallIds` reports `in_progress`
|
|
35
|
+
* instead of `completed`.
|
|
36
|
+
*
|
|
37
|
+
* A Monitor or Workflow call returns as soon as its task starts. The consumer
|
|
38
|
+
* reports the task's end, or its pause, on the tool call (see
|
|
39
|
+
* `Session.backgroundToolCalls`).
|
|
40
|
+
*/
|
|
41
|
+
export declare function withRunningToolCall(notification: SessionNotification, toolCallIds: ReadonlySet<string>): SessionNotification;
|
|
32
42
|
//# sourceMappingURL=background.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"background.d.ts","sourceRoot":"","sources":["../../src/tool-calls/background.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAG7E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,mBAAmB,EACjC,uBAAuB,EAAE,WAAW,CAAC,MAAM,CAAC,EAC5C,mBAAmB,EAAE,OAAO,GAC3B,mBAAmB,CAgBrB;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,mBAAmB,CAiBrB"}
|
|
1
|
+
{"version":3,"file":"background.d.ts","sourceRoot":"","sources":["../../src/tool-calls/background.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAG7E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,mBAAmB,EACjC,uBAAuB,EAAE,WAAW,CAAC,MAAM,CAAC,EAC5C,mBAAmB,EAAE,OAAO,GAC3B,mBAAmB,CAgBrB;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,mBAAmB,CAiBrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,mBAAmB,EACjC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,GAC/B,mBAAmB,CAUrB"}
|
|
@@ -59,3 +59,21 @@ export function withRunningTerminal(notification, toolCallId) {
|
|
|
59
59
|
delete next._meta;
|
|
60
60
|
return { ...notification, update: next };
|
|
61
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Keeps the tool call of a task that went on in the background running: the
|
|
64
|
+
* tool result update of a tool call in `toolCallIds` reports `in_progress`
|
|
65
|
+
* instead of `completed`.
|
|
66
|
+
*
|
|
67
|
+
* A Monitor or Workflow call returns as soon as its task starts. The consumer
|
|
68
|
+
* reports the task's end, or its pause, on the tool call (see
|
|
69
|
+
* `Session.backgroundToolCalls`).
|
|
70
|
+
*/
|
|
71
|
+
export function withRunningToolCall(notification, toolCallIds) {
|
|
72
|
+
const update = notification.update;
|
|
73
|
+
if (update.sessionUpdate !== "tool_call_update" ||
|
|
74
|
+
!toolCallIds.has(update.toolCallId) ||
|
|
75
|
+
update.status !== "completed") {
|
|
76
|
+
return notification;
|
|
77
|
+
}
|
|
78
|
+
return { ...notification, update: { ...update, status: "in_progress" } };
|
|
79
|
+
}
|
|
@@ -3,6 +3,14 @@ import { type ToolResultMeta } from "../tool-result-meta.js";
|
|
|
3
3
|
import { ClientCapabilities } from "./client-capabilities.js";
|
|
4
4
|
import type { ToolResultContext, ToolResultFacts, ToolUse, ToolUseFacts } from "./facts.js";
|
|
5
5
|
export type ToolCallUpdate = SessionNotification["update"];
|
|
6
|
+
/**
|
|
7
|
+
* ACP v2's `cancelled` and `paused` tool call statuses. v1's statuses have no
|
|
8
|
+
* such values, and the agent builds its reports in v1 types, so they travel as
|
|
9
|
+
* v1 statuses. Only a v2 client gets them, and the v2 surface sends them as
|
|
10
|
+
* they are (`src/v2/tool-call.ts`).
|
|
11
|
+
*/
|
|
12
|
+
export declare const V2_CANCELLED: ToolCallStatus;
|
|
13
|
+
export declare const V2_PAUSED: ToolCallStatus;
|
|
6
14
|
/** Whether `status` ends a tool call: `completed`, `failed`, or, on v2, `cancelled`. */
|
|
7
15
|
export declare function isFinalToolCallStatus(status: ToolCallStatus | null | undefined): boolean;
|
|
8
16
|
/** The `_meta` of a tool call report. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/tool-calls/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,IAAI,qBAAqB,EAC3C,wBAAwB,EACxB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACf,MAAM,mCAAmC,CAAC;AAS3C,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM5F,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/tool-calls/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,IAAI,qBAAqB,EAC3C,wBAAwB,EACxB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACf,MAAM,mCAAmC,CAAC;AAS3C,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM5F,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAK3D;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAA6B,cAAc,CAAC;AACrE,eAAO,MAAM,SAAS,EAA0B,cAAc,CAAC;AAE/D,wFAAwF;AACxF,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAExF;AAED,yCAAyC;AACzC,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,CAAC,EAAE;QAKX,QAAQ,CAAC,EAAE,MAAM,CAAC;QAKlB,YAAY,CAAC,EAAE,OAAO,CAAC;QAIvB,eAAe,CAAC,EAAE,MAAM,CAAC;QAMzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAG1B,YAAY,CAAC,EAAE,MAAM,CAAC;QAEtB,SAAS,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KAC9C,CAAC;IAEF,SAAS,CAAC,EAAE;QACV,GAAG,CAAC,EAAE;YACJ,OAAO,CAAC,EAAE,MAAM,CAAC;YAGjB,YAAY,CAAC,EAAE,MAAM,CAAC;YAGtB,QAAQ,CAAC,EAAE,IAAI,CAAC;YAGhB,KAAK,CAAC,EAAE;gBAAE,IAAI,EAAE,MAAM,CAAC;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAE,CAAC;YAGxC,GAAG,CAAC,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAC;gBAAC,IAAI,EAAE,MAAM,CAAA;aAAE,CAAC;YACvC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;SACxB,CAAC;KACH,CAAC;IAEF,gBAAgB,CAAC,EAAE,IAAI,CAAC;IAExB,aAAa,CAAC,EAAE;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,eAAe,CAAC,EAAE;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,qBAAqB,CAAC,EAAE;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,aAAa,CAAC,EAAE;QACd,WAAW,EAAE,MAAM,CAAC;QACpB;;;WAGG;QACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;KACvB,CAAC;CACH,CAAC;AAEF,oFAAoF;AACpF,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,wDAAwD;IACxD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,qFAAqF;IACrF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,KAAK,CAAC,EAAE,IAAI,CACV,cAAc,EACd,eAAe,GAAG,iBAAiB,GAAG,uBAAuB,GAAG,eAAe,CAChF,CAAC;CACH;AAED,4DAA4D;AAC5D,KAAK,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AAE/C;;;;;;;;GAQG;AACH,qBAAa,mBAAmB;IAE5B,QAAQ,CAAC,YAAY,EAAE,kBAAkB;IACzC,sEAAsE;IACtE,QAAQ,CAAC,MAAM;gBAFN,YAAY,GAAE,kBAA6C;IACpE,sEAAsE;IAC7D,MAAM,UAAQ;IAGzB,MAAM,CAAC,GAAG,CACR,YAAY,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,EACtD,MAAM,UAAQ,GACb,mBAAmB;IAItB;;;;OAIG;IACH,OAAO,KAAK,SAAS,GAEpB;IAED;;;OAGG;IACH,OAAO,CAAC,WAAW;IAInB;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CACV,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,cAAc,GAAG,SAAS,EACxC,GAAG,GAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAO,GACvD,cAAc;IAQjB,+BAA+B;IAC/B,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,YAAY;IAQ3E,8FAA8F;IAC9F,QAAQ,CACN,OAAO,EAAE,OAAO,EAChB,GAAG,CAAC,EAAE,MAAM,GACX;QACD,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,EAAE,eAAe,EAAE,CAAC;QAC3B,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;KAChC;IAUD;;;OAGG;IACH,QAAQ,CACN,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAC;QAAC,cAAc,CAAC,EAAE,eAAe,EAAE,CAAA;KAAO,GAC1F,cAAc;IA0BjB,6DAA6D;IAC7D,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,cAAc;IAc1D;;;;;;OAMG;IACH,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM;;;;;;;;;IAarF;;;;;OAKG;IACH,kBAAkB,CAChB,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;QACP,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,cAAc,CAAC,EAAE,eAAe,EAAE,CAAC;QACnC,cAAc,CAAC,EAAE,gBAAgB,EAAE,CAAC;QACpC,IAAI,CAAC,EAAE,cAAc,CAAC;QACtB,4EAA4E;QAC5E,eAAe,CAAC,EAAE,eAAe,EAAE,CAAC;KAChC,GACL,wBAAwB,CAAC,UAAU,CAAC;IAmCvC,kCAAkC;IAClC,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,eAAe;IAqBzF,+EAA+E;IAC/E,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,cAAc;IAIzF,OAAO,CAAC,cAAc;IA0DtB;;;;;OAKG;IACH,MAAM,CACJ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,cAAc,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAO,GACzF,cAAc,EAAE;IA2EnB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAWvB;;;;;OAKG;IACG,UAAU,CACd,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM,CAAC,EACrC,YAAY,EAAE,OAAO,EACrB,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IA4BtC;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KAChD,GAAG,cAAc;IAyBlB;;;;OAIG;IACH,gBAAgB,CAAC,MAAM,EAAE;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,cAAc;IA2BlB;;;;;;;;;OASG;IACH,UAAU,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,cAAc;IAkB3F;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,GAAG,SAAS;IAWjF;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,GAAG,cAAc;IAsBlB;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO;IAgBzD;;;;OAIG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,eAAe,EAAE;IAS1E;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,cAAc;CA2BtF;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAStF"}
|
|
@@ -10,12 +10,13 @@ import { grepPath } from "./reporters/search.js";
|
|
|
10
10
|
/** The id suffix of the call that clears the plan file of an approved plan for AIR. */
|
|
11
11
|
const PLAN_FILE_CLEAR_SUFFIX = ":plan-file-clear";
|
|
12
12
|
/**
|
|
13
|
-
* ACP v2's `cancelled` tool call
|
|
14
|
-
* the agent builds its reports in v1 types, so
|
|
15
|
-
* a v2 client gets
|
|
16
|
-
* (`src/v2/tool-call.ts`).
|
|
13
|
+
* ACP v2's `cancelled` and `paused` tool call statuses. v1's statuses have no
|
|
14
|
+
* such values, and the agent builds its reports in v1 types, so they travel as
|
|
15
|
+
* v1 statuses. Only a v2 client gets them, and the v2 surface sends them as
|
|
16
|
+
* they are (`src/v2/tool-call.ts`).
|
|
17
17
|
*/
|
|
18
|
-
const V2_CANCELLED = "cancelled";
|
|
18
|
+
export const V2_CANCELLED = "cancelled";
|
|
19
|
+
export const V2_PAUSED = "paused";
|
|
19
20
|
/** Whether `status` ends a tool call: `completed`, `failed`, or, on v2, `cancelled`. */
|
|
20
21
|
export function isFinalToolCallStatus(status) {
|
|
21
22
|
return status === "completed" || status === "failed" || status === V2_CANCELLED;
|
package/dist/v2/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/v2/agent.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,MAAM,mDAAmD,CAAC;AACxE,OAAO,EAAE,cAAc,EAAkB,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAsB9E;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GACvC,EAAE,CAAC,QAAQ,
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/v2/agent.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,MAAM,mDAAmD,CAAC;AACxE,OAAO,EAAE,cAAc,EAAkB,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAsB9E;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GACvC,EAAE,CAAC,QAAQ,CAyIb"}
|
package/dist/v2/agent.js
CHANGED
|
@@ -67,10 +67,11 @@ export function v2AgentApp(logger, onAgent) {
|
|
|
67
67
|
// v2 requires a snapshot of the foreground state after the replay and
|
|
68
68
|
// before the response, also without a replay: a resumed live session can
|
|
69
69
|
// be running a turn, or waiting on a permission request. The current
|
|
70
|
-
// state of each subagent and
|
|
71
|
-
// requires. The subagents' go again after the response (see below).
|
|
70
|
+
// state of each subagent, terminal and tool call it lists comes first,
|
|
71
|
+
// as v2 requires. The subagents' go again after the response (see below).
|
|
72
72
|
await agent.publishLiveSubagents(params.sessionId, client.background.listedSubagents(params.sessionId));
|
|
73
|
-
|
|
73
|
+
await agent.publishBackgroundToolCalls(params.sessionId, client.background.listedToolCalls(params.sessionId));
|
|
74
|
+
for (const notification of client.background.currentItems(params.sessionId)) {
|
|
74
75
|
void client.send(notification);
|
|
75
76
|
}
|
|
76
77
|
void client.send({
|
|
@@ -121,6 +122,10 @@ export function v2AgentApp(logger, onAgent) {
|
|
|
121
122
|
.onRequest(v2.methods.agent.terminal.cancel, async ({ params }) => {
|
|
122
123
|
await agent.cancelBackgroundTerminal(params);
|
|
123
124
|
return {};
|
|
125
|
+
})
|
|
126
|
+
.onRequest(v2.methods.agent.toolCall.cancel, async ({ params }) => {
|
|
127
|
+
await agent.cancelBackgroundToolCall(params);
|
|
128
|
+
return {};
|
|
124
129
|
})
|
|
125
130
|
.onNotification(v2.methods.agent.session.cancel, ({ params }) => agent.cancel(params));
|
|
126
131
|
}
|
package/dist/v2/background.d.ts
CHANGED
|
@@ -20,6 +20,12 @@ export declare class V2Background {
|
|
|
20
20
|
* session carried it, and the parent of a subagent session.
|
|
21
21
|
*/
|
|
22
22
|
private readonly sessions;
|
|
23
|
+
/**
|
|
24
|
+
* The tool calls that advertise `cancel`, by session and tool call. Like a
|
|
25
|
+
* terminal's (see `V2Terminals.advertiseCancel`), the capability goes with
|
|
26
|
+
* the final status.
|
|
27
|
+
*/
|
|
28
|
+
private readonly cancellableToolCalls;
|
|
23
29
|
constructor(terminals: V2Terminals);
|
|
24
30
|
/**
|
|
25
31
|
* `notification` with the session's list, when it is a `state_update` of a
|
|
@@ -31,9 +37,10 @@ export declare class V2Background {
|
|
|
31
37
|
/**
|
|
32
38
|
* Records the new list of a session, and returns the updates that report it:
|
|
33
39
|
*
|
|
34
|
-
* - For each terminal that the list adds, a `terminal_update`
|
|
35
|
-
* client cancel it. It
|
|
36
|
-
*
|
|
40
|
+
* - For each terminal or tool call that the list adds, a `terminal_update`
|
|
41
|
+
* or `tool_call_update` that lets the client cancel it. It comes before
|
|
42
|
+
* the first list that names it, as v2 requires of an announcement: its
|
|
43
|
+
* own updates came earlier.
|
|
37
44
|
* - Once a state of the session carried a list, the state again with the
|
|
38
45
|
* new list, without a stop reason: a repeated `idle` is no new
|
|
39
46
|
* completion. A subagent's goes to its parent's mirror first, as its
|
|
@@ -42,10 +49,21 @@ export declare class V2Background {
|
|
|
42
49
|
changed(report: BackgroundReport): v2.UpdateSessionNotification[];
|
|
43
50
|
/**
|
|
44
51
|
* The current `terminal_update` of each terminal that the session
|
|
45
|
-
* `sessionId` lists
|
|
46
|
-
*
|
|
52
|
+
* `sessionId` lists, and the `cancel` capability of each tool call that it
|
|
53
|
+
* lists, whose other fields the agent sends (see
|
|
54
|
+
* `ClaudeAcpAgent.publishBackgroundToolCalls`). v2 requires them before the
|
|
55
|
+
* state snapshot of `session/resume`, as a replay may not have delivered
|
|
56
|
+
* them.
|
|
57
|
+
*/
|
|
58
|
+
currentItems(sessionId: string): v2.UpdateSessionNotification[];
|
|
59
|
+
/** The tool calls that the session `sessionId` lists. */
|
|
60
|
+
listedToolCalls(sessionId: string): string[];
|
|
61
|
+
/**
|
|
62
|
+
* The update that lets the client cancel the listed terminal or tool call
|
|
63
|
+
* `item`, unless it advertises that already. `again` sends it anyway, as
|
|
64
|
+
* the item's current state.
|
|
47
65
|
*/
|
|
48
|
-
|
|
66
|
+
private advertiseCancel;
|
|
49
67
|
/** The subagent sessions that the session `sessionId` lists. */
|
|
50
68
|
listedSubagents(sessionId: string): string[];
|
|
51
69
|
/** Forgets the list of a session, and those of its subagent sessions. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"background.d.ts","sourceRoot":"","sources":["../../src/v2/background.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,KAAK,EAAE,MAAM,mDAAmD,CAAC;AAC7E,OAAO,KAAK,EAAkB,gBAAgB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAUjD,mFAAmF;AACnF,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,EAAE,CAAC,aAAa,CAElE;
|
|
1
|
+
{"version":3,"file":"background.d.ts","sourceRoot":"","sources":["../../src/v2/background.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,KAAK,EAAE,MAAM,mDAAmD,CAAC;AAC7E,OAAO,KAAK,EAAkB,gBAAgB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAUjD,mFAAmF;AACnF,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,EAAE,CAAC,aAAa,CAElE;AAUD,qBAAa,YAAY;IAiBX,OAAO,CAAC,QAAQ,CAAC,SAAS;IAhBtC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAGrB;IAEJ;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAqB;gBAE7B,SAAS,EAAE,WAAW;IAEnD;;;;;OAKG;IACH,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,yBAAyB,GAAG,EAAE,CAAC,yBAAyB;IAiC/E;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,MAAM,EAAE,gBAAgB,GAAG,EAAE,CAAC,yBAAyB,EAAE;IAyBjE;;;;;;;OAOG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,EAAE,CAAC,yBAAyB,EAAE;IAM/D,yDAAyD;IACzD,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAM5C;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAyBvB,gEAAgE;IAChE,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAM5C,yEAAyE;IACzE,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;CAShC"}
|
package/dist/v2/background.js
CHANGED
|
@@ -16,6 +16,8 @@ export function stateUpdate(state) {
|
|
|
16
16
|
function withBackground(state, background) {
|
|
17
17
|
return { ...state, background };
|
|
18
18
|
}
|
|
19
|
+
/** The final tool call statuses. */
|
|
20
|
+
const FINAL_STATUSES = new Set(["completed", "failed", "cancelled"]);
|
|
19
21
|
export class V2Background {
|
|
20
22
|
terminals;
|
|
21
23
|
/**
|
|
@@ -23,6 +25,12 @@ export class V2Background {
|
|
|
23
25
|
* session carried it, and the parent of a subagent session.
|
|
24
26
|
*/
|
|
25
27
|
sessions = new Map();
|
|
28
|
+
/**
|
|
29
|
+
* The tool calls that advertise `cancel`, by session and tool call. Like a
|
|
30
|
+
* terminal's (see `V2Terminals.advertiseCancel`), the capability goes with
|
|
31
|
+
* the final status.
|
|
32
|
+
*/
|
|
33
|
+
cancellableToolCalls = new Set();
|
|
26
34
|
constructor(terminals) {
|
|
27
35
|
this.terminals = terminals;
|
|
28
36
|
}
|
|
@@ -34,6 +42,12 @@ export class V2Background {
|
|
|
34
42
|
*/
|
|
35
43
|
stamp(notification) {
|
|
36
44
|
const { sessionId, update } = notification;
|
|
45
|
+
if (update.sessionUpdate === "tool_call_update" &&
|
|
46
|
+
FINAL_STATUSES.has(String(update.status)) &&
|
|
47
|
+
this.cancellableToolCalls.delete(`${sessionId} ${update.toolCallId}`)) {
|
|
48
|
+
// A tool call that reached its final status can no longer be cancelled.
|
|
49
|
+
return { ...notification, update: { ...update, capabilities: null } };
|
|
50
|
+
}
|
|
37
51
|
if (update.sessionUpdate === "state_update") {
|
|
38
52
|
const session = this.sessions.get(sessionId);
|
|
39
53
|
if (!session)
|
|
@@ -60,9 +74,10 @@ export class V2Background {
|
|
|
60
74
|
/**
|
|
61
75
|
* Records the new list of a session, and returns the updates that report it:
|
|
62
76
|
*
|
|
63
|
-
* - For each terminal that the list adds, a `terminal_update`
|
|
64
|
-
* client cancel it. It
|
|
65
|
-
*
|
|
77
|
+
* - For each terminal or tool call that the list adds, a `terminal_update`
|
|
78
|
+
* or `tool_call_update` that lets the client cancel it. It comes before
|
|
79
|
+
* the first list that names it, as v2 requires of an announcement: its
|
|
80
|
+
* own updates came earlier.
|
|
66
81
|
* - Once a state of the session carried a list, the state again with the
|
|
67
82
|
* new list, without a stop reason: a repeated `idle` is no new
|
|
68
83
|
* completion. A subagent's goes to its parent's mirror first, as its
|
|
@@ -77,13 +92,8 @@ export class V2Background {
|
|
|
77
92
|
reported: session?.reported ?? false,
|
|
78
93
|
parent: parentSessionId ?? session?.parent,
|
|
79
94
|
});
|
|
80
|
-
const known = new Set((session?.items ?? []).
|
|
81
|
-
const updates = items.flatMap((item) =>
|
|
82
|
-
if (item.type !== "terminal" || known.has(item.terminalId))
|
|
83
|
-
return [];
|
|
84
|
-
const update = this.terminals.advertiseCancel(sessionId, item.terminalId);
|
|
85
|
-
return update ? [{ sessionId, update }] : [];
|
|
86
|
-
});
|
|
95
|
+
const known = new Set((session?.items ?? []).map((item) => JSON.stringify(item)));
|
|
96
|
+
const updates = items.flatMap((item) => known.has(JSON.stringify(item)) ? [] : this.advertiseCancel(sessionId, item, false));
|
|
87
97
|
if (session?.reported && state && !unchanged) {
|
|
88
98
|
if (parentSessionId) {
|
|
89
99
|
updates.push({
|
|
@@ -97,16 +107,45 @@ export class V2Background {
|
|
|
97
107
|
}
|
|
98
108
|
/**
|
|
99
109
|
* The current `terminal_update` of each terminal that the session
|
|
100
|
-
* `sessionId` lists
|
|
101
|
-
*
|
|
110
|
+
* `sessionId` lists, and the `cancel` capability of each tool call that it
|
|
111
|
+
* lists, whose other fields the agent sends (see
|
|
112
|
+
* `ClaudeAcpAgent.publishBackgroundToolCalls`). v2 requires them before the
|
|
113
|
+
* state snapshot of `session/resume`, as a replay may not have delivered
|
|
114
|
+
* them.
|
|
115
|
+
*/
|
|
116
|
+
currentItems(sessionId) {
|
|
117
|
+
return (this.sessions.get(sessionId)?.items ?? []).flatMap((item) => this.advertiseCancel(sessionId, item, true));
|
|
118
|
+
}
|
|
119
|
+
/** The tool calls that the session `sessionId` lists. */
|
|
120
|
+
listedToolCalls(sessionId) {
|
|
121
|
+
return (this.sessions.get(sessionId)?.items ?? []).flatMap((item) => item.type === "tool_call" ? [item.toolCallId] : []);
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* The update that lets the client cancel the listed terminal or tool call
|
|
125
|
+
* `item`, unless it advertises that already. `again` sends it anyway, as
|
|
126
|
+
* the item's current state.
|
|
102
127
|
*/
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
return [];
|
|
107
|
-
const update = this.terminals.advertiseCancel(sessionId, item.terminalId, true);
|
|
128
|
+
advertiseCancel(sessionId, item, again) {
|
|
129
|
+
if (item.type === "terminal") {
|
|
130
|
+
const update = this.terminals.advertiseCancel(sessionId, item.terminalId, again);
|
|
108
131
|
return update ? [{ sessionId, update }] : [];
|
|
109
|
-
}
|
|
132
|
+
}
|
|
133
|
+
if (item.type !== "tool_call")
|
|
134
|
+
return [];
|
|
135
|
+
const key = `${sessionId} ${item.toolCallId}`;
|
|
136
|
+
if (this.cancellableToolCalls.has(key) && !again)
|
|
137
|
+
return [];
|
|
138
|
+
this.cancellableToolCalls.add(key);
|
|
139
|
+
return [
|
|
140
|
+
{
|
|
141
|
+
sessionId,
|
|
142
|
+
update: {
|
|
143
|
+
sessionUpdate: "tool_call_update",
|
|
144
|
+
toolCallId: item.toolCallId,
|
|
145
|
+
capabilities: { cancel: {} },
|
|
146
|
+
},
|
|
147
|
+
},
|
|
148
|
+
];
|
|
110
149
|
}
|
|
111
150
|
/** The subagent sessions that the session `sessionId` lists. */
|
|
112
151
|
listedSubagents(sessionId) {
|
|
@@ -115,6 +154,10 @@ export class V2Background {
|
|
|
115
154
|
/** Forgets the list of a session, and those of its subagent sessions. */
|
|
116
155
|
forget(sessionId) {
|
|
117
156
|
this.sessions.delete(sessionId);
|
|
157
|
+
for (const key of this.cancellableToolCalls) {
|
|
158
|
+
if (key.startsWith(`${sessionId} `))
|
|
159
|
+
this.cancellableToolCalls.delete(key);
|
|
160
|
+
}
|
|
118
161
|
for (const [child, { parent }] of this.sessions) {
|
|
119
162
|
if (parent === sessionId)
|
|
120
163
|
this.forget(child);
|
package/package.json
CHANGED