@downcity/agent 1.1.315 → 1.1.320
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/bin/executor/types/SessionHistoryMeta.d.ts +2 -0
- package/bin/executor/types/SessionHistoryMeta.d.ts.map +1 -1
- package/bin/index.d.ts +1 -1
- package/bin/index.d.ts.map +1 -1
- package/bin/index.js.map +1 -1
- package/bin/remote/RemoteSession.d.ts +2 -2
- package/bin/remote/RemoteSession.d.ts.map +1 -1
- package/bin/remote/RemoteSession.js +2 -2
- package/bin/remote/RemoteSession.js.map +1 -1
- package/bin/remote/RemoteTransport.d.ts +2 -2
- package/bin/remote/RemoteTransport.d.ts.map +1 -1
- package/bin/remote/transports/HttpRemoteAgentTransport.d.ts +2 -2
- package/bin/remote/transports/HttpRemoteAgentTransport.d.ts.map +1 -1
- package/bin/remote/transports/HttpRemoteAgentTransport.js +2 -2
- package/bin/remote/transports/HttpRemoteAgentTransport.js.map +1 -1
- package/bin/remote/transports/RpcClient.d.ts +2 -2
- package/bin/remote/transports/RpcClient.d.ts.map +1 -1
- package/bin/remote/transports/RpcClient.js +2 -2
- package/bin/remote/transports/RpcClient.js.map +1 -1
- package/bin/remote/transports/RpcRemoteAgentTransport.d.ts +2 -2
- package/bin/remote/transports/RpcRemoteAgentTransport.d.ts.map +1 -1
- package/bin/remote/transports/RpcRemoteAgentTransport.js +2 -2
- package/bin/remote/transports/RpcRemoteAgentTransport.js.map +1 -1
- package/bin/session/Session.d.ts +4 -4
- package/bin/session/Session.d.ts.map +1 -1
- package/bin/session/Session.js +47 -27
- package/bin/session/Session.js.map +1 -1
- package/bin/session/SessionLoop.d.ts.map +1 -1
- package/bin/session/SessionLoop.js +4 -2
- package/bin/session/SessionLoop.js.map +1 -1
- package/bin/session/SessionMessages.d.ts +9 -2
- package/bin/session/SessionMessages.d.ts.map +1 -1
- package/bin/session/SessionMessages.js +63 -13
- package/bin/session/SessionMessages.js.map +1 -1
- package/bin/session/SessionState.d.ts +13 -1
- package/bin/session/SessionState.d.ts.map +1 -1
- package/bin/session/SessionState.js +28 -4
- package/bin/session/SessionState.js.map +1 -1
- package/bin/session/messages/SessionAssistantMessageWriter.d.ts.map +1 -1
- package/bin/session/messages/SessionAssistantMessageWriter.js +7 -6
- package/bin/session/messages/SessionAssistantMessageWriter.js.map +1 -1
- package/bin/session/storage/Metadata.d.ts.map +1 -1
- package/bin/session/storage/Metadata.js +7 -0
- package/bin/session/storage/Metadata.js.map +1 -1
- package/bin/types/agent/SessionActor.d.ts +3 -3
- package/bin/types/agent/SessionActor.d.ts.map +1 -1
- package/bin/types/agent/SessionTypes.d.ts +20 -0
- package/bin/types/agent/SessionTypes.d.ts.map +1 -1
- package/bin/types/rpc/RpcProtocol.d.ts +2 -1
- package/bin/types/rpc/RpcProtocol.d.ts.map +1 -1
- package/bin/types/session/SessionCommand.d.ts +2 -0
- package/bin/types/session/SessionCommand.d.ts.map +1 -1
- package/bin/types/session/SessionLocalState.d.ts +3 -0
- package/bin/types/session/SessionLocalState.d.ts.map +1 -1
- package/bin/types/session/SessionMessages.d.ts +2 -0
- package/bin/types/session/SessionMessages.d.ts.map +1 -1
- package/bin/types/session/SessionMutation.d.ts +17 -4
- package/bin/types/session/SessionMutation.d.ts.map +1 -1
- package/bin/types/session/SessionMutation.js.map +1 -1
- package/package.json +6 -6
- package/scripts/remote-session-reconnect.test.mjs +25 -0
- package/scripts/session-config-turn-boundary.test.mjs +185 -0
- package/scripts/session-messages.test.mjs +20 -0
- package/src/executor/types/SessionHistoryMeta.ts +2 -0
- package/src/index.ts +1 -0
- package/src/remote/RemoteSession.ts +6 -2
- package/src/remote/RemoteTransport.ts +6 -1
- package/src/remote/transports/HttpRemoteAgentTransport.ts +3 -1
- package/src/remote/transports/RpcClient.ts +3 -1
- package/src/remote/transports/RpcRemoteAgentTransport.ts +3 -1
- package/src/session/Session.ts +55 -28
- package/src/session/SessionLoop.ts +4 -1
- package/src/session/SessionMessages.ts +97 -13
- package/src/session/SessionState.ts +39 -5
- package/src/session/messages/SessionAssistantMessageWriter.ts +13 -6
- package/src/session/storage/Metadata.ts +10 -0
- package/src/types/agent/SessionActor.ts +3 -2
- package/src/types/agent/SessionTypes.ts +22 -0
- package/src/types/rpc/RpcProtocol.ts +6 -1
- package/src/types/session/SessionCommand.ts +2 -0
- package/src/types/session/SessionLocalState.ts +4 -0
- package/src/types/session/SessionMessages.ts +2 -0
- package/src/types/session/SessionMutation.ts +21 -4
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RpcProtocol.d.ts","sourceRoot":"","sources":["../../../src/types/rpc/RpcProtocol.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,sBAAsB,EAEtB,yBAAyB,EAIzB,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAEjF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,KAAK,EAAc,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAClB;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,iBAAiB;IACjB,MAAM,CAAC,EAAE,sBAAsB,CAAC;CACjC,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB;IAClB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,YAAY;IACZ,MAAM,CAAC,EAAE,uBAAuB,CAAC;CAClC,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB;IAClB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,qBAAqB;IACrB,MAAM,EAAE;QACN,qBAAqB;QACrB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB;IAClB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,YAAY;IACZ,MAAM,EAAE;QACN,qBAAqB;QACrB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,sBAAsB;IACtB,MAAM,EAAE,4BAA4B,CAAC;IACrC,iBAAiB;IACjB,MAAM,CAAC,EAAE,yBAAyB,CAAC;CACpC,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,sBAAsB;IACtB,MAAM,EAAE,6BAA6B,CAAC;CACvC,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,iBAAiB;IACjB,MAAM,EAAE;QACN,qBAAqB;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,qBAAqB;QACrB,KAAK,EAAE,uBAAuB,CAAC;KAChC,CAAC;CACH,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,yBAAyB;IACzB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,YAAY;IACZ,MAAM,EAAE;QACN,qBAAqB;QACrB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,iCAAiC;IACjC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,qBAAqB;IACrB,MAAM,EAAE;QACN,qBAAqB;QACrB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,MAAM,EAAE,uBAAuB,CAAC;IAChC,qBAAqB;IACrB,MAAM,EAAE;QACN,qBAAqB;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,qBAAqB;QACrB,KAAK,CAAC,EAAE,wBAAwB,CAAC;KAClC,CAAC;CACH,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,0CAA0C;IAC1C,MAAM,EAAE,2BAA2B,CAAC;IACpC,qBAAqB;IACrB,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CAChC,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,6BAA6B;IAC7B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,qBAAqB;IACrB,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CAChC,GACD;IACE,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,8BAA8B;IAC9B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,uBAAuB;IACvB,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"RpcProtocol.d.ts","sourceRoot":"","sources":["../../../src/types/rpc/RpcProtocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionCommand.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,4BAA4B;AAC5B,MAAM,WAAW,qBAAqB;IACpC,0BAA0B;IAC1B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,wCAAwC;IACxC,UAAU,CAAC,EAAE,wBAAwB,CAAC;CACvC;AAED,8CAA8C;AAC9C,MAAM,WAAW,wBAAwB;IACvC,iCAAiC;IACjC,IAAI,EAAE,QAAQ,CAAC;IACf,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"SessionCommand.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,4BAA4B;AAC5B,MAAM,WAAW,qBAAqB;IACpC,0BAA0B;IAC1B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,wCAAwC;IACxC,UAAU,CAAC,EAAE,wBAAwB,CAAC;CACvC;AAED,8CAA8C;AAC9C,MAAM,WAAW,wBAAwB;IACvC,iCAAiC;IACjC,IAAI,EAAE,QAAQ,CAAC;IACf,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* - 这里只保存运行态,不承载行为逻辑。
|
|
8
8
|
*/
|
|
9
9
|
import type { AgentSessionConfigSnapshot } from "../../types/agent/SessionTypes.js";
|
|
10
|
+
import type { SessionApprovalMode } from "../../types/session/SessionInteraction.js";
|
|
10
11
|
/**
|
|
11
12
|
* 本地 Session 内存状态。
|
|
12
13
|
*/
|
|
@@ -23,6 +24,8 @@ export interface SessionLocalState {
|
|
|
23
24
|
* - 该字段只在 Session step 检查点由队列 mutation 更新。
|
|
24
25
|
*/
|
|
25
26
|
effective_session_config: AgentSessionConfigSnapshot;
|
|
27
|
+
/** 当前 Session 已接受并持久化的 Shell 审批模式。 */
|
|
28
|
+
configured_approval_mode: SessionApprovalMode;
|
|
26
29
|
/**
|
|
27
30
|
* 当前 session 创建时间(毫秒时间戳)。
|
|
28
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionLocalState.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionLocalState.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"SessionLocalState.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionLocalState.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,cAAc,EAAE,0BAA0B,CAAC;IAE3C;;;;;;OAMG;IACH,wBAAwB,EAAE,0BAA0B,CAAC;IAErD,sCAAsC;IACtC,wBAAwB,EAAE,mBAAmB,CAAC;IAE9C;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAEzC;;OAEG;IACH,yBAAyB,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACjD"}
|
|
@@ -71,6 +71,8 @@ export interface OpenSessionActionMessageInput {
|
|
|
71
71
|
description?: string;
|
|
72
72
|
/** 当前 Action 附加数据。 */
|
|
73
73
|
data?: JsonObject;
|
|
74
|
+
/** Action 创建或更新后是否发布对应 Session Mutation。 */
|
|
75
|
+
publish_mutation?: boolean;
|
|
74
76
|
}
|
|
75
77
|
/** Error Message 创建参数。 */
|
|
76
78
|
export interface AppendSessionErrorMessageInput {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionMessages.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionMessages.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,KAAK,EACV,2BAA2B,EAC3B,sBAAsB,EACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE1E,4BAA4B;AAC5B,MAAM,WAAW,sBAAsB;IACrC,qBAAqB;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,KAAK,EAAE,mBAAmB,CAAC;IAC3B,+BAA+B;IAC/B,OAAO,EAAE,CAAC,QAAQ,EAAE,eAAe,KAAK,IAAI,CAAC;CAC9C;AAED,yBAAyB;AACzB,MAAM,WAAW,6BAA6B;IAC5C,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,UAAU,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC/B,qBAAqB;IACrB,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,UAAU,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;CACrC;AAED,8BAA8B;AAC9B,MAAM,WAAW,gCAAgC;IAC/C,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,0BAA0B;IAC1B,UAAU,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IACpC,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,qCAAqC;AACrC,MAAM,WAAW,oCAAoC;IACnD,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,KAAK,EAAE,2BAA2B,EAAE,CAAC;IACrC,sCAAsC;IACtC,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,0BAA0B;IAC1B,UAAU,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IACpC,kCAAkC;IAClC,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,2BAA2B;AAC3B,MAAM,WAAW,6BAA6B;IAC5C,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB;IACtB,IAAI,CAAC,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"SessionMessages.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionMessages.ts"],"names":[],"mappings":"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"}
|
|
@@ -56,12 +56,10 @@ export type SessionPartMutation = {
|
|
|
56
56
|
};
|
|
57
57
|
};
|
|
58
58
|
}[SessionAssistantMessagePart["type"]];
|
|
59
|
-
/** Assistant
|
|
60
|
-
|
|
59
|
+
/** Assistant Part 原始增量 Mutation 的公共字段。 */
|
|
60
|
+
interface SessionDeltaMutationBase extends SessionMutationBase {
|
|
61
61
|
/** Mutation 层级固定为 delta。 */
|
|
62
62
|
variant: "delta";
|
|
63
|
-
/** Delta 只允许可见文本或推理文本。 */
|
|
64
|
-
type: "text" | "reasoning";
|
|
65
63
|
/** 当前 Delta 所属 Message 标识。 */
|
|
66
64
|
message_id: string;
|
|
67
65
|
/** 当前 Mutation 所属 Turn 标识。 */
|
|
@@ -73,6 +71,20 @@ export interface SessionDeltaMutation extends SessionMutationBase {
|
|
|
73
71
|
/** 本次新增的原始文本,不是累计全文。 */
|
|
74
72
|
delta: string;
|
|
75
73
|
}
|
|
74
|
+
/** Assistant 文本或推理的原始增量 Mutation。 */
|
|
75
|
+
interface SessionTextDeltaMutation extends SessionDeltaMutationBase {
|
|
76
|
+
/** Delta 属于可见文本或推理文本。 */
|
|
77
|
+
type: "text" | "reasoning";
|
|
78
|
+
}
|
|
79
|
+
/** Assistant Tool 输入的原始增量 Mutation。 */
|
|
80
|
+
interface SessionToolInputDeltaMutation extends SessionDeltaMutationBase {
|
|
81
|
+
/** Delta 属于 Tool 输入参数原文。 */
|
|
82
|
+
type: "tool_input";
|
|
83
|
+
/** 当前 Delta 所属 Tool Call 标识。 */
|
|
84
|
+
tool_call_id: string;
|
|
85
|
+
}
|
|
86
|
+
/** Assistant 文本、推理或 Tool 输入的原始增量 Mutation。 */
|
|
87
|
+
export type SessionDeltaMutation = SessionTextDeltaMutation | SessionToolInputDeltaMutation;
|
|
76
88
|
/** Turn 生命周期 Mutation。 */
|
|
77
89
|
export type SessionTurnMutation = SessionMutationBase & {
|
|
78
90
|
/** Mutation 层级固定为 turn。 */
|
|
@@ -122,4 +134,5 @@ export type SessionMutationSubscriber = (mutation: SessionMutation) => void | Pr
|
|
|
122
134
|
export type SessionMutationUnsubscribe = () => void;
|
|
123
135
|
/** 判断未知事件是否为 Session Mutation。 */
|
|
124
136
|
export declare function is_session_mutation(input: unknown): input is SessionMutation;
|
|
137
|
+
export {};
|
|
125
138
|
//# sourceMappingURL=SessionMutation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionMutation.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionMutation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,2BAA2B,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACrG,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAEpF,iCAAiC;AACjC,MAAM,WAAW,mBAAmB;IAClC,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,iCAAiC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;CACpB;AACD,kCAAkC;AAClC,MAAM,MAAM,sBAAsB,GAAG;KAClC,KAAK,IAAI,cAAc,CAAC,MAAM,CAAC,GAAG,mBAAmB,GAAG;QACvD,8BAA8B;QAC9B,OAAO,EAAE,SAAS,CAAC;QACnB,uBAAuB;QACvB,IAAI,EAAE,KAAK,CAAC;QACZ,iCAAiC;QACjC,UAAU,EAAE,MAAM,CAAC;QACnB,8BAA8B;QAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,sCAAsC;QACtC,QAAQ,EAAE,MAAM,CAAC;QACjB,yCAAyC;QACzC,QAAQ,EAAE,MAAM,CAAC;QACjB,4BAA4B;QAC5B,OAAO,EAAE,OAAO,CAAC,cAAc,EAAE;YAAE,IAAI,EAAE,KAAK,CAAA;SAAE,CAAC,CAAC;KACnD;CACF,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;AAE1B,yCAAyC;AACzC,MAAM,MAAM,mBAAmB,GAAG;KAC/B,KAAK,IAAI,2BAA2B,CAAC,MAAM,CAAC,GAAG,mBAAmB,GAAG;QACpE,2BAA2B;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,oBAAoB;QACpB,IAAI,EAAE,KAAK,CAAC;QACZ,6BAA6B;QAC7B,UAAU,EAAE,MAAM,CAAC;QACnB,8BAA8B;QAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,yCAAyC;QACzC,QAAQ,EAAE,MAAM,CAAC;QACjB,yBAAyB;QACzB,OAAO,EAAE,MAAM,CAAC;QAChB,yBAAyB;QACzB,IAAI,EAAE,2BAA2B,GAAG;YAAE,IAAI,EAAE,KAAK,CAAA;SAAE,CAAC;KACrD;CACF,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAC;AAEvC,
|
|
1
|
+
{"version":3,"file":"SessionMutation.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionMutation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionMutation.js","sourceRoot":"","sources":["../../../src/types/session/SessionMutation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"SessionMutation.js","sourceRoot":"","sources":["../../../src/types/session/SessionMutation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAsJH,kCAAkC;AAClC,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAChD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,SAAS,GAAG,KAAqE,CAAC;IACxF,IAAI,OAAO,SAAS,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAClG,OAAO,CACL,SAAS,CAAC,OAAO,KAAK,SAAS;QAC/B,SAAS,CAAC,OAAO,KAAK,MAAM;QAC5B,SAAS,CAAC,OAAO,KAAK,OAAO;QAC7B,SAAS,CAAC,OAAO,KAAK,MAAM;QAC5B,SAAS,CAAC,OAAO,KAAK,SAAS;QAC/B,SAAS,CAAC,OAAO,KAAK,SAAS,CAChC,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@downcity/agent",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.320",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Downcity Agent 运行时 — 单 Agent 执行壳与本机 RPC 能力",
|
|
6
6
|
"main": "./bin/index.js",
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
}
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@downcity/shell": "^0.1.
|
|
20
|
-
"@downcity/type": "0.1.
|
|
19
|
+
"@downcity/shell": "^0.1.167",
|
|
20
|
+
"@downcity/type": "0.1.193",
|
|
21
21
|
"ai": "^6.0.193",
|
|
22
22
|
"commander": "^15.0.0",
|
|
23
23
|
"dotenv": "^17.4.2",
|
|
@@ -32,9 +32,9 @@
|
|
|
32
32
|
"zod": "^4.4.3"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@downcity/sandbox-linux": "^0.1.
|
|
36
|
-
"@downcity/sandbox-macos": "^0.1.
|
|
37
|
-
"@downcity/sandbox-windows-mxc": "^0.1.
|
|
35
|
+
"@downcity/sandbox-linux": "^0.1.31",
|
|
36
|
+
"@downcity/sandbox-macos": "^0.1.31",
|
|
37
|
+
"@downcity/sandbox-windows-mxc": "^0.1.31",
|
|
38
38
|
"@ai-sdk/openai": "^3.0.67",
|
|
39
39
|
"@types/fs-extra": "^11.0.4",
|
|
40
40
|
"@types/js-yaml": "^4.0.9",
|
|
@@ -11,6 +11,31 @@ import assert from "node:assert/strict";
|
|
|
11
11
|
|
|
12
12
|
import { RemoteSession } from "../bin/remote/RemoteSession.js";
|
|
13
13
|
|
|
14
|
+
test("RemoteSession forwards set observability options to its transport", async () => {
|
|
15
|
+
const calls = [];
|
|
16
|
+
const transport = {
|
|
17
|
+
async set(session_id, input, options) {
|
|
18
|
+
calls.push({ session_id, input, options });
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
const session = new RemoteSession(transport, {
|
|
22
|
+
agent_id: "agent_test",
|
|
23
|
+
session_id: "session_test",
|
|
24
|
+
message_count: 0,
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
await session.set(
|
|
28
|
+
{ security: { approval_mode: "ask" } },
|
|
29
|
+
{ persist_action: false, publish_mutation: false },
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
assert.deepEqual(calls, [{
|
|
33
|
+
session_id: "session_test",
|
|
34
|
+
input: { security: { approval_mode: "ask" } },
|
|
35
|
+
options: { persist_action: false, publish_mutation: false },
|
|
36
|
+
}]);
|
|
37
|
+
});
|
|
38
|
+
|
|
14
39
|
test("RemoteSession reconnects the event pump after transport close", async () => {
|
|
15
40
|
const subscriptions = [];
|
|
16
41
|
let prompt_count = 0;
|
|
@@ -600,6 +600,18 @@ test("running session approval mode changes stay queued until the next Session s
|
|
|
600
600
|
},
|
|
601
601
|
});
|
|
602
602
|
|
|
603
|
+
const cached_session = await agent.sessions.get(session.id);
|
|
604
|
+
assert.equal(cached_session, session);
|
|
605
|
+
assert.deepEqual(await cached_session.status(), {
|
|
606
|
+
session_id: session.id,
|
|
607
|
+
state: "running",
|
|
608
|
+
active_turn_id: first_turn.id,
|
|
609
|
+
security: {
|
|
610
|
+
approval_mode: "always-allow",
|
|
611
|
+
effective_approval_mode: "ask",
|
|
612
|
+
},
|
|
613
|
+
});
|
|
614
|
+
|
|
603
615
|
release_first_provider_request.resolve();
|
|
604
616
|
assert.equal((await first_turn.finished).success, true);
|
|
605
617
|
assert.deepEqual(await session.status(), {
|
|
@@ -639,6 +651,179 @@ test("running session approval mode changes stay queued until the next Session s
|
|
|
639
651
|
}
|
|
640
652
|
});
|
|
641
653
|
|
|
654
|
+
test("session set options independently control Action persistence and Mutation publication", async () => {
|
|
655
|
+
const agent_path = await fs.mkdtemp(
|
|
656
|
+
path.join(os.tmpdir(), "downcity-session-set-options-"),
|
|
657
|
+
);
|
|
658
|
+
const first_model = new MockLanguageModelV3({
|
|
659
|
+
modelId: "set-options-first-model",
|
|
660
|
+
doStream: async () => create_stream_text_result("first"),
|
|
661
|
+
});
|
|
662
|
+
const second_model = new MockLanguageModelV3({
|
|
663
|
+
modelId: "set-options-second-model",
|
|
664
|
+
doStream: async () => create_stream_text_result("second"),
|
|
665
|
+
});
|
|
666
|
+
const agent = new Agent({
|
|
667
|
+
id: "session_set_options_agent",
|
|
668
|
+
workspace: new Workspace({ path: agent_path }),
|
|
669
|
+
model: first_model,
|
|
670
|
+
});
|
|
671
|
+
|
|
672
|
+
try {
|
|
673
|
+
const session = await agent.sessions.create({
|
|
674
|
+
session_id: "session_set_options_session",
|
|
675
|
+
});
|
|
676
|
+
const mutations = [];
|
|
677
|
+
const unsubscribe = session.subscribe((mutation) => {
|
|
678
|
+
mutations.push(mutation);
|
|
679
|
+
});
|
|
680
|
+
|
|
681
|
+
await session.set(
|
|
682
|
+
{ model: first_model },
|
|
683
|
+
{ persist_action: false, publish_mutation: false },
|
|
684
|
+
);
|
|
685
|
+
assert.equal((await (await session.prompt({ query: "first" })).finished).success, true);
|
|
686
|
+
assert.equal(
|
|
687
|
+
(await session.messages()).items.some(
|
|
688
|
+
(message) =>
|
|
689
|
+
message.type === "action" &&
|
|
690
|
+
message.title === "Session configuration updated",
|
|
691
|
+
),
|
|
692
|
+
false,
|
|
693
|
+
);
|
|
694
|
+
|
|
695
|
+
mutations.splice(0, mutations.length);
|
|
696
|
+
await session.set(
|
|
697
|
+
{ model: second_model },
|
|
698
|
+
{ publish_mutation: false },
|
|
699
|
+
);
|
|
700
|
+
assert.equal((await (await session.prompt({ query: "second" })).finished).success, true);
|
|
701
|
+
assert.equal(
|
|
702
|
+
(await session.messages()).items.some(
|
|
703
|
+
(message) =>
|
|
704
|
+
message.type === "action" &&
|
|
705
|
+
message.description === "model: set-options-second-model",
|
|
706
|
+
),
|
|
707
|
+
true,
|
|
708
|
+
);
|
|
709
|
+
assert.equal(
|
|
710
|
+
mutations.some(
|
|
711
|
+
(mutation) =>
|
|
712
|
+
mutation.variant === "message" &&
|
|
713
|
+
mutation.type === "action",
|
|
714
|
+
),
|
|
715
|
+
false,
|
|
716
|
+
);
|
|
717
|
+
|
|
718
|
+
const before_duplicate_count = (await session.messages()).items.filter(
|
|
719
|
+
(message) =>
|
|
720
|
+
message.type === "action" &&
|
|
721
|
+
message.title === "Session configuration updated",
|
|
722
|
+
).length;
|
|
723
|
+
await session.set({ model: second_model });
|
|
724
|
+
assert.equal((await (await session.prompt({ query: "duplicate" })).finished).success, true);
|
|
725
|
+
assert.equal(
|
|
726
|
+
(await session.messages()).items.filter(
|
|
727
|
+
(message) =>
|
|
728
|
+
message.type === "action" &&
|
|
729
|
+
message.title === "Session configuration updated",
|
|
730
|
+
).length,
|
|
731
|
+
before_duplicate_count,
|
|
732
|
+
);
|
|
733
|
+
|
|
734
|
+
await assert.rejects(
|
|
735
|
+
session.set(
|
|
736
|
+
{ security: { approval_mode: "always-allow" } },
|
|
737
|
+
{ persist_action: false, publish_mutation: true },
|
|
738
|
+
),
|
|
739
|
+
/publish_mutation requires persist_action/,
|
|
740
|
+
);
|
|
741
|
+
unsubscribe();
|
|
742
|
+
} finally {
|
|
743
|
+
await agent.dispose();
|
|
744
|
+
await fs.rm(agent_path, { recursive: true, force: true });
|
|
745
|
+
}
|
|
746
|
+
});
|
|
747
|
+
|
|
748
|
+
test("restored Session rebinds the same model without emitting a configuration Mutation", async () => {
|
|
749
|
+
const agent_path = await fs.mkdtemp(
|
|
750
|
+
path.join(os.tmpdir(), "downcity-session-config-restore-"),
|
|
751
|
+
);
|
|
752
|
+
const create_model = () => new MockLanguageModelV3({
|
|
753
|
+
modelId: "restored-session-model",
|
|
754
|
+
doStream: async () => create_stream_text_result("restored"),
|
|
755
|
+
});
|
|
756
|
+
const first_agent = new Agent({
|
|
757
|
+
id: "session_config_restore_agent",
|
|
758
|
+
workspace: new Workspace({ path: agent_path }),
|
|
759
|
+
model: create_model(),
|
|
760
|
+
});
|
|
761
|
+
|
|
762
|
+
try {
|
|
763
|
+
const session = await first_agent.sessions.create({
|
|
764
|
+
session_id: "session_config_restore_session",
|
|
765
|
+
});
|
|
766
|
+
await session.set({
|
|
767
|
+
model: create_model(),
|
|
768
|
+
security: { approval_mode: "always-allow" },
|
|
769
|
+
});
|
|
770
|
+
assert.equal((await (await session.prompt({ query: "persist" })).finished).success, true);
|
|
771
|
+
} finally {
|
|
772
|
+
await first_agent.dispose();
|
|
773
|
+
}
|
|
774
|
+
|
|
775
|
+
const restored_agent = new Agent({
|
|
776
|
+
id: "session_config_restore_agent",
|
|
777
|
+
workspace: new Workspace({ path: agent_path }),
|
|
778
|
+
model: create_model(),
|
|
779
|
+
});
|
|
780
|
+
try {
|
|
781
|
+
const session = await restored_agent.sessions.get(
|
|
782
|
+
"session_config_restore_session",
|
|
783
|
+
);
|
|
784
|
+
assert.deepEqual((await session.status()).security, {
|
|
785
|
+
approval_mode: "always-allow",
|
|
786
|
+
effective_approval_mode: "always-allow",
|
|
787
|
+
});
|
|
788
|
+
const before_action_count = (await session.messages()).items.filter(
|
|
789
|
+
(message) =>
|
|
790
|
+
message.type === "action" &&
|
|
791
|
+
message.title === "Session configuration updated",
|
|
792
|
+
).length;
|
|
793
|
+
const mutations = [];
|
|
794
|
+
const unsubscribe = session.subscribe((mutation) => {
|
|
795
|
+
mutations.push(mutation);
|
|
796
|
+
});
|
|
797
|
+
|
|
798
|
+
await session.set({
|
|
799
|
+
model: create_model(),
|
|
800
|
+
security: { approval_mode: "always-allow" },
|
|
801
|
+
});
|
|
802
|
+
assert.equal((await (await session.prompt({ query: "restore" })).finished).success, true);
|
|
803
|
+
assert.equal(
|
|
804
|
+
(await session.messages()).items.filter(
|
|
805
|
+
(message) =>
|
|
806
|
+
message.type === "action" &&
|
|
807
|
+
message.title === "Session configuration updated",
|
|
808
|
+
).length,
|
|
809
|
+
before_action_count,
|
|
810
|
+
);
|
|
811
|
+
assert.equal(
|
|
812
|
+
mutations.some(
|
|
813
|
+
(mutation) =>
|
|
814
|
+
mutation.variant === "message" &&
|
|
815
|
+
mutation.type === "action" &&
|
|
816
|
+
mutation.message.title === "Session configuration updated",
|
|
817
|
+
),
|
|
818
|
+
false,
|
|
819
|
+
);
|
|
820
|
+
unsubscribe();
|
|
821
|
+
} finally {
|
|
822
|
+
await restored_agent.dispose();
|
|
823
|
+
await fs.rm(agent_path, { recursive: true, force: true });
|
|
824
|
+
}
|
|
825
|
+
});
|
|
826
|
+
|
|
642
827
|
test("config remains effective when its action message cannot be persisted", async () => {
|
|
643
828
|
const agent_path = await fs.mkdtemp(
|
|
644
829
|
path.join(os.tmpdir(), "downcity-config-action-observability-"),
|
|
@@ -203,6 +203,16 @@ test("Tool Runtime 在文本中间保持输入、审批和输出的确定顺序"
|
|
|
203
203
|
await writer.apply_chunk({ type: "text-delta", id: "text-1", delta: "before" });
|
|
204
204
|
await writer.apply_chunk({ type: "text-end", id: "text-1" });
|
|
205
205
|
await writer.apply_chunk({ type: "tool-input-start", toolCallId: "call-1", toolName: "shell_exec" });
|
|
206
|
+
await writer.apply_chunk({
|
|
207
|
+
type: "tool-input-delta",
|
|
208
|
+
toolCallId: "call-1",
|
|
209
|
+
inputTextDelta: '{"cmd":"',
|
|
210
|
+
});
|
|
211
|
+
await writer.apply_chunk({
|
|
212
|
+
type: "tool-input-delta",
|
|
213
|
+
toolCallId: "call-1",
|
|
214
|
+
inputTextDelta: 'pwd"}',
|
|
215
|
+
});
|
|
206
216
|
await writer.apply_chunk({
|
|
207
217
|
type: "tool-input-available",
|
|
208
218
|
toolCallId: "call-1",
|
|
@@ -238,7 +248,17 @@ test("Tool Runtime 在文本中间保持输入、审批和输出的确定顺序"
|
|
|
238
248
|
assert.deepEqual(assistant.parts.map((part) => part.type), ["text", "tool", "interaction", "text"]);
|
|
239
249
|
assert.deepEqual(assistant.parts.map((part) => part.sequence), [1, 2, 3, 4]);
|
|
240
250
|
assert.equal(assistant.parts[1].state, "completed");
|
|
251
|
+
assert.equal(assistant.parts[1].input_text, '{"cmd":"pwd"}');
|
|
241
252
|
assert.deepEqual(assistant.parts[1].output, { count: 1 });
|
|
253
|
+
assert.deepEqual(
|
|
254
|
+
events
|
|
255
|
+
.filter((event) => event.variant === "delta" && event.type === "tool_input")
|
|
256
|
+
.map((event) => [event.tool_call_id, event.delta]),
|
|
257
|
+
[
|
|
258
|
+
["call-1", '{"cmd":"'],
|
|
259
|
+
["call-1", 'pwd"}'],
|
|
260
|
+
],
|
|
261
|
+
);
|
|
242
262
|
assert.deepEqual(
|
|
243
263
|
events
|
|
244
264
|
.filter((event) => event.variant === "part" && event.type === "tool")
|
|
@@ -23,6 +23,8 @@ export type SessionHistoryMetaV1 = {
|
|
|
23
23
|
title?: string;
|
|
24
24
|
/** 当前 session 绑定模型的可读标签。 */
|
|
25
25
|
model_label?: string;
|
|
26
|
+
/** 当前 Session 持久化的 Shell 审批模式。 */
|
|
27
|
+
approval_mode?: "ask" | "always-allow";
|
|
26
28
|
/** 当前 session 已持久化记录数量,用于列表查询避免扫描完整历史。 */
|
|
27
29
|
message_count?: number;
|
|
28
30
|
/** 当前 session 最后一条记录的用户可见摘要,用于列表预览。 */
|
package/src/index.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
import type {
|
|
8
8
|
AgentSessionConfigSnapshot,
|
|
9
|
+
AgentSessionSetOptions,
|
|
9
10
|
AgentSessionForkInput,
|
|
10
11
|
AgentSessionInfo,
|
|
11
12
|
AgentSessionStatus,
|
|
@@ -159,8 +160,11 @@ export class RemoteSession implements RemoteAgentSession {
|
|
|
159
160
|
}
|
|
160
161
|
|
|
161
162
|
/** 更新当前远程 Session 的可序列化动态配置。 */
|
|
162
|
-
async set(
|
|
163
|
-
|
|
163
|
+
async set(
|
|
164
|
+
input: RemoteSessionSetInput,
|
|
165
|
+
options?: AgentSessionSetOptions,
|
|
166
|
+
): Promise<void> {
|
|
167
|
+
await this.transport.set(this.id, input, options);
|
|
164
168
|
}
|
|
165
169
|
|
|
166
170
|
/** 提交当前远程 Session 的 Interaction 用户响应。 */
|
|
@@ -16,6 +16,7 @@ import type {
|
|
|
16
16
|
AgentCleanArchiveResult,
|
|
17
17
|
AgentSessionForkInput,
|
|
18
18
|
AgentSessionInfo,
|
|
19
|
+
AgentSessionSetOptions,
|
|
19
20
|
AgentSessionStatus,
|
|
20
21
|
AgentSessionSummaryPage,
|
|
21
22
|
AgentSessionSystemSnapshot,
|
|
@@ -86,7 +87,11 @@ export type RemoteSessionTransport = {
|
|
|
86
87
|
/** 读取指定 Session 的运行与安全状态。 */
|
|
87
88
|
status(session_id: string): Promise<AgentSessionStatus>;
|
|
88
89
|
/** 更新指定 Session 的可序列化动态配置。 */
|
|
89
|
-
set(
|
|
90
|
+
set(
|
|
91
|
+
session_id: string,
|
|
92
|
+
input: RemoteSessionSetInput,
|
|
93
|
+
options?: AgentSessionSetOptions,
|
|
94
|
+
): Promise<void>;
|
|
90
95
|
/** 提交指定 Session 的 Interaction 用户响应。 */
|
|
91
96
|
respond(
|
|
92
97
|
session_id: string,
|
|
@@ -16,6 +16,7 @@ import type {
|
|
|
16
16
|
AgentCleanArchiveResult,
|
|
17
17
|
AgentSessionForkInput,
|
|
18
18
|
AgentSessionInfo,
|
|
19
|
+
AgentSessionSetOptions,
|
|
19
20
|
AgentSessionStatus,
|
|
20
21
|
AgentSessionSummaryPage,
|
|
21
22
|
AgentSessionSystemSnapshot,
|
|
@@ -427,6 +428,7 @@ export class HttpRemoteAgentTransport implements RemoteAgentTransport {
|
|
|
427
428
|
async set(
|
|
428
429
|
session_id: string,
|
|
429
430
|
input: RemoteSessionSetInput,
|
|
431
|
+
options?: AgentSessionSetOptions,
|
|
430
432
|
): Promise<void> {
|
|
431
433
|
const payload = await read_http_json<{
|
|
432
434
|
success?: boolean;
|
|
@@ -437,7 +439,7 @@ export class HttpRemoteAgentTransport implements RemoteAgentTransport {
|
|
|
437
439
|
headers: this.headers({
|
|
438
440
|
"Content-Type": "application/json",
|
|
439
441
|
}),
|
|
440
|
-
body: JSON.stringify(input),
|
|
442
|
+
body: JSON.stringify({ ...input, ...(options ? { options } : {}) }),
|
|
441
443
|
});
|
|
442
444
|
if (payload.success !== true || payload.queued !== true) {
|
|
443
445
|
throw new Error(String(payload.error || "Remote session set failed"));
|
|
@@ -17,6 +17,7 @@ import type {
|
|
|
17
17
|
AgentArchiveSessionsResult,
|
|
18
18
|
AgentCleanArchiveResult,
|
|
19
19
|
AgentSessionInfo,
|
|
20
|
+
AgentSessionSetOptions,
|
|
20
21
|
AgentSessionStatus,
|
|
21
22
|
AgentSessionSummaryPage,
|
|
22
23
|
AgentSessionSystemSnapshot,
|
|
@@ -257,10 +258,11 @@ export class RpcClient {
|
|
|
257
258
|
async set_session(
|
|
258
259
|
session_id: string,
|
|
259
260
|
input: RemoteSessionSetInput,
|
|
261
|
+
options?: AgentSessionSetOptions,
|
|
260
262
|
): Promise<void> {
|
|
261
263
|
await this.request<{ queued: true }>({
|
|
262
264
|
method: "sdk.sessions.set",
|
|
263
|
-
params: { session_id: session_id, input },
|
|
265
|
+
params: { session_id: session_id, input, ...(options ? { options } : {}) },
|
|
264
266
|
});
|
|
265
267
|
}
|
|
266
268
|
|
|
@@ -16,6 +16,7 @@ import type {
|
|
|
16
16
|
AgentCleanArchiveResult,
|
|
17
17
|
AgentSessionForkInput,
|
|
18
18
|
AgentSessionInfo,
|
|
19
|
+
AgentSessionSetOptions,
|
|
19
20
|
AgentSessionStatus,
|
|
20
21
|
AgentSessionSummaryPage,
|
|
21
22
|
AgentSessionSystemSnapshot,
|
|
@@ -167,8 +168,9 @@ export class RpcRemoteAgentTransport implements RemoteAgentTransport {
|
|
|
167
168
|
async set(
|
|
168
169
|
session_id: string,
|
|
169
170
|
input: RemoteSessionSetInput,
|
|
171
|
+
options?: AgentSessionSetOptions,
|
|
170
172
|
): Promise<void> {
|
|
171
|
-
await this.client.set_session(session_id, input);
|
|
173
|
+
await this.client.set_session(session_id, input, options);
|
|
172
174
|
}
|
|
173
175
|
|
|
174
176
|
async respond(
|