@downcity/agent 1.1.22 → 1.1.25

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.
Files changed (112) hide show
  1. package/README.md +6 -5
  2. package/bin/core/AgentContextTypes.d.ts +21 -2
  3. package/bin/core/AgentContextTypes.d.ts.map +1 -1
  4. package/bin/index.d.ts +6 -3
  5. package/bin/index.d.ts.map +1 -1
  6. package/bin/index.js.map +1 -1
  7. package/bin/runtime/server/http/Server.d.ts +1 -1
  8. package/bin/runtime/server/http/Server.d.ts.map +1 -1
  9. package/bin/runtime/server/http/Server.js +4 -0
  10. package/bin/runtime/server/http/Server.js.map +1 -1
  11. package/bin/runtime/server/http/control/ExecuteBySession.js +1 -1
  12. package/bin/runtime/server/http/control/ExecuteBySession.js.map +1 -1
  13. package/bin/runtime/server/http/control/SessionRoutes.d.ts.map +1 -1
  14. package/bin/runtime/server/http/control/SessionRoutes.js +0 -27
  15. package/bin/runtime/server/http/control/SessionRoutes.js.map +1 -1
  16. package/bin/runtime/server/http/execute/execute.js +1 -1
  17. package/bin/runtime/server/http/execute/execute.js.map +1 -1
  18. package/bin/runtime/server/http/sdk/Router.d.ts +14 -0
  19. package/bin/runtime/server/http/sdk/Router.d.ts.map +1 -0
  20. package/bin/runtime/server/http/sdk/Router.js +18 -0
  21. package/bin/runtime/server/http/sdk/Router.js.map +1 -0
  22. package/bin/runtime/server/http/sdk/SessionRoutes.d.ts +15 -0
  23. package/bin/runtime/server/http/sdk/SessionRoutes.d.ts.map +1 -0
  24. package/bin/runtime/server/http/sdk/SessionRoutes.js +190 -0
  25. package/bin/runtime/server/http/sdk/SessionRoutes.js.map +1 -0
  26. package/bin/sdk/AgentSdkTypes.d.ts +1 -124
  27. package/bin/sdk/AgentSdkTypes.d.ts.map +1 -1
  28. package/bin/sdk/RemoteAgent.d.ts +27 -8
  29. package/bin/sdk/RemoteAgent.d.ts.map +1 -1
  30. package/bin/sdk/RemoteAgent.js +266 -38
  31. package/bin/sdk/RemoteAgent.js.map +1 -1
  32. package/bin/sdk/Session.d.ts +31 -10
  33. package/bin/sdk/Session.d.ts.map +1 -1
  34. package/bin/sdk/Session.js +181 -73
  35. package/bin/sdk/Session.js.map +1 -1
  36. package/bin/sdk/SessionEventMapper.d.ts +32 -0
  37. package/bin/sdk/SessionEventMapper.d.ts.map +1 -0
  38. package/bin/sdk/{StreamEvents.js → SessionEventMapper.js} +43 -28
  39. package/bin/sdk/SessionEventMapper.js.map +1 -0
  40. package/bin/sdk/session/ServicePort.d.ts +51 -4
  41. package/bin/sdk/session/ServicePort.d.ts.map +1 -1
  42. package/bin/sdk/session/ServicePort.js +17 -10
  43. package/bin/sdk/session/ServicePort.js.map +1 -1
  44. package/bin/sdk/session/runtime/SessionEventHub.d.ts +24 -0
  45. package/bin/sdk/session/runtime/SessionEventHub.d.ts.map +1 -0
  46. package/bin/sdk/session/runtime/SessionEventHub.js +39 -0
  47. package/bin/sdk/session/runtime/SessionEventHub.js.map +1 -0
  48. package/bin/sdk/session/runtime/SessionPromptRuntime.d.ts +68 -0
  49. package/bin/sdk/session/runtime/SessionPromptRuntime.d.ts.map +1 -0
  50. package/bin/sdk/session/runtime/SessionPromptRuntime.js +170 -0
  51. package/bin/sdk/session/runtime/SessionPromptRuntime.js.map +1 -0
  52. package/bin/service/builtins/chat/runtime/ChatQueueWorker.js +1 -1
  53. package/bin/service/builtins/chat/runtime/ChatQueueWorker.js.map +1 -1
  54. package/bin/service/builtins/chat/runtime/ChatSession.d.ts +1 -1
  55. package/bin/service/builtins/chat/runtime/ChatSession.js +1 -1
  56. package/bin/service/builtins/contact/runtime/ChatRuntime.js +1 -1
  57. package/bin/service/builtins/contact/runtime/ChatRuntime.js.map +1 -1
  58. package/bin/types/sdk/AgentSessionEvent.d.ts +160 -0
  59. package/bin/types/sdk/AgentSessionEvent.d.ts.map +1 -0
  60. package/bin/types/sdk/AgentSessionEvent.js +9 -0
  61. package/bin/types/sdk/AgentSessionEvent.js.map +1 -0
  62. package/bin/types/sdk/AgentSessionPrompt.d.ts +21 -0
  63. package/bin/types/sdk/AgentSessionPrompt.d.ts.map +1 -0
  64. package/bin/types/sdk/AgentSessionPrompt.js +9 -0
  65. package/bin/types/sdk/AgentSessionPrompt.js.map +1 -0
  66. package/bin/types/sdk/AgentSessionTurn.d.ts +59 -0
  67. package/bin/types/sdk/AgentSessionTurn.d.ts.map +1 -0
  68. package/bin/types/sdk/AgentSessionTurn.js +10 -0
  69. package/bin/types/sdk/AgentSessionTurn.js.map +1 -0
  70. package/bin/types/sdk/InternalUiChunkEvent.d.ts +100 -0
  71. package/bin/types/sdk/InternalUiChunkEvent.d.ts.map +1 -0
  72. package/bin/types/sdk/InternalUiChunkEvent.js +9 -0
  73. package/bin/types/sdk/InternalUiChunkEvent.js.map +1 -0
  74. package/package.json +2 -1
  75. package/scripts/session-prompt-runtime.test.mjs +167 -0
  76. package/src/core/AgentContextTypes.ts +24 -2
  77. package/src/index.ts +11 -8
  78. package/src/runtime/server/http/Server.ts +5 -1
  79. package/src/runtime/server/http/control/ExecuteBySession.ts +1 -1
  80. package/src/runtime/server/http/control/SessionRoutes.ts +0 -27
  81. package/src/runtime/server/http/execute/execute.ts +1 -1
  82. package/src/runtime/server/http/sdk/Router.ts +22 -0
  83. package/src/runtime/server/http/sdk/SessionRoutes.ts +232 -0
  84. package/src/sdk/AgentSdkTypes.ts +1 -137
  85. package/src/sdk/RemoteAgent.ts +368 -49
  86. package/src/sdk/Session.ts +235 -86
  87. package/src/sdk/{StreamEvents.ts → SessionEventMapper.ts} +50 -40
  88. package/src/sdk/session/ServicePort.ts +74 -12
  89. package/src/sdk/session/runtime/SessionEventHub.ts +47 -0
  90. package/src/sdk/session/runtime/SessionPromptRuntime.ts +269 -0
  91. package/src/service/builtins/chat/runtime/ChatQueueWorker.ts +1 -1
  92. package/src/service/builtins/chat/runtime/ChatSession.ts +1 -1
  93. package/src/service/builtins/contact/runtime/ChatRuntime.ts +1 -1
  94. package/src/session/README.md +8 -7
  95. package/src/types/sdk/AgentSessionEvent.ts +195 -0
  96. package/src/types/sdk/AgentSessionPrompt.ts +21 -0
  97. package/src/types/sdk/AgentSessionTurn.ts +65 -0
  98. package/src/types/sdk/InternalUiChunkEvent.ts +108 -0
  99. package/tsconfig.tsbuildinfo +1 -1
  100. package/bin/runtime/server/http/control/StreamBySession.d.ts +0 -22
  101. package/bin/runtime/server/http/control/StreamBySession.d.ts.map +0 -1
  102. package/bin/runtime/server/http/control/StreamBySession.js +0 -135
  103. package/bin/runtime/server/http/control/StreamBySession.js.map +0 -1
  104. package/bin/sdk/AsyncQueue.d.ts +0 -26
  105. package/bin/sdk/AsyncQueue.d.ts.map +0 -1
  106. package/bin/sdk/AsyncQueue.js +0 -75
  107. package/bin/sdk/AsyncQueue.js.map +0 -1
  108. package/bin/sdk/StreamEvents.d.ts +0 -36
  109. package/bin/sdk/StreamEvents.d.ts.map +0 -1
  110. package/bin/sdk/StreamEvents.js.map +0 -1
  111. package/src/runtime/server/http/control/StreamBySession.ts +0 -198
  112. package/src/sdk/AsyncQueue.ts +0 -92
@@ -0,0 +1,190 @@
1
+ /**
2
+ * SDK HTTP session 路由。
3
+ *
4
+ * 关键点(中文)
5
+ * - 这组路由面向 `RemoteAgent`,只暴露最小 Session actor 使用面。
6
+ * - 当前公开输入收口到 `prompt()`,公开输出收口到 `events` 长连接。
7
+ * - 不复用 control API 的控制台语义,避免 transport 面混入非 SDK 约束。
8
+ */
9
+ const NDJSON_CONTENT_TYPE = "application/x-ndjson; charset=utf-8";
10
+ const SDK_EVENTS_READY_FRAME = {
11
+ type: "sdk-events-ready",
12
+ };
13
+ /**
14
+ * 注册 SDK session 路由。
15
+ */
16
+ export function registerSdkSessionRoutes(app, core) {
17
+ app.get("/api/sdk/sessions", async (c) => {
18
+ try {
19
+ const sessions = await core.sessions();
20
+ return c.json({
21
+ success: true,
22
+ sessions,
23
+ });
24
+ }
25
+ catch (error) {
26
+ return c.json({
27
+ success: false,
28
+ error: error instanceof Error ? error.message : String(error),
29
+ }, 500);
30
+ }
31
+ });
32
+ app.post("/api/sdk/sessions", async (c) => {
33
+ try {
34
+ const body = (await c.req.json().catch(() => ({})));
35
+ const rawSessionId = String(body.sessionId || "").trim();
36
+ const session = await core.session(rawSessionId || undefined);
37
+ return c.json({
38
+ success: true,
39
+ session: await session.toMetadata(),
40
+ });
41
+ }
42
+ catch (error) {
43
+ return c.json({
44
+ success: false,
45
+ error: error instanceof Error ? error.message : String(error),
46
+ }, 500);
47
+ }
48
+ });
49
+ app.post("/api/sdk/sessions/:sessionId/prompt", async (c) => {
50
+ try {
51
+ const sessionId = String(c.req.param("sessionId") || "").trim();
52
+ if (!sessionId) {
53
+ return c.json({ success: false, error: "Missing sessionId" }, 400);
54
+ }
55
+ const body = (await c.req.json());
56
+ const session = await core.session(sessionId);
57
+ const turn = await session.prompt(body);
58
+ return c.json({
59
+ success: true,
60
+ turn: {
61
+ id: turn.id,
62
+ },
63
+ });
64
+ }
65
+ catch (error) {
66
+ return c.json({
67
+ success: false,
68
+ error: error instanceof Error ? error.message : String(error),
69
+ }, 500);
70
+ }
71
+ });
72
+ app.get("/api/sdk/sessions/:sessionId/events", async (c) => {
73
+ const sessionId = String(c.req.param("sessionId") || "").trim();
74
+ if (!sessionId) {
75
+ return c.json({ success: false, error: "Missing sessionId" }, 400);
76
+ }
77
+ try {
78
+ const session = await core.session(sessionId);
79
+ const encoder = new TextEncoder();
80
+ const requestSignal = c.req.raw.signal;
81
+ let cleanupEventsConnection = () => { };
82
+ const stream = new ReadableStream({
83
+ cancel() {
84
+ cleanupEventsConnection();
85
+ },
86
+ start(controller) {
87
+ const writeLine = (value) => {
88
+ controller.enqueue(encoder.encode(`${JSON.stringify(value)}\n`));
89
+ };
90
+ const unsubscribe = session.subscribe((event) => {
91
+ writeLine(event);
92
+ });
93
+ const closeStream = () => {
94
+ cleanupEventsConnection();
95
+ try {
96
+ controller.close();
97
+ }
98
+ catch {
99
+ // ignore duplicate close attempts
100
+ }
101
+ };
102
+ cleanupEventsConnection = () => {
103
+ unsubscribe();
104
+ requestSignal.removeEventListener("abort", closeStream);
105
+ };
106
+ if (requestSignal.aborted) {
107
+ closeStream();
108
+ return;
109
+ }
110
+ requestSignal.addEventListener("abort", closeStream, { once: true });
111
+ writeLine(SDK_EVENTS_READY_FRAME);
112
+ },
113
+ });
114
+ return new Response(stream, {
115
+ status: 200,
116
+ headers: {
117
+ "Content-Type": NDJSON_CONTENT_TYPE,
118
+ "Cache-Control": "no-cache, no-transform",
119
+ "X-Accel-Buffering": "no",
120
+ },
121
+ });
122
+ }
123
+ catch (error) {
124
+ return c.json({
125
+ success: false,
126
+ error: error instanceof Error ? error.message : String(error),
127
+ }, 500);
128
+ }
129
+ });
130
+ app.get("/api/sdk/sessions/:sessionId/messages", async (c) => {
131
+ try {
132
+ const sessionId = String(c.req.param("sessionId") || "").trim();
133
+ if (!sessionId) {
134
+ return c.json({ success: false, error: "Missing sessionId" }, 400);
135
+ }
136
+ const session = await core.session(sessionId);
137
+ return c.json({
138
+ success: true,
139
+ messages: await session.history(),
140
+ });
141
+ }
142
+ catch (error) {
143
+ return c.json({
144
+ success: false,
145
+ error: error instanceof Error ? error.message : String(error),
146
+ }, 500);
147
+ }
148
+ });
149
+ app.get("/api/sdk/sessions/:sessionId/system", async (c) => {
150
+ try {
151
+ const sessionId = String(c.req.param("sessionId") || "").trim();
152
+ if (!sessionId) {
153
+ return c.json({ success: false, error: "Missing sessionId" }, 400);
154
+ }
155
+ const session = await core.session(sessionId);
156
+ return c.json({
157
+ success: true,
158
+ system: await session.system(),
159
+ });
160
+ }
161
+ catch (error) {
162
+ return c.json({
163
+ success: false,
164
+ error: error instanceof Error ? error.message : String(error),
165
+ }, 500);
166
+ }
167
+ });
168
+ app.post("/api/sdk/sessions/:sessionId/fork", async (c) => {
169
+ try {
170
+ const sessionId = String(c.req.param("sessionId") || "").trim();
171
+ if (!sessionId) {
172
+ return c.json({ success: false, error: "Missing sessionId" }, 400);
173
+ }
174
+ const body = (await c.req.json().catch(() => ({})));
175
+ const session = await core.session(sessionId);
176
+ const forked = await session.fork(String(body.messageId || "").trim() || undefined);
177
+ return c.json({
178
+ success: true,
179
+ session: await forked.toMetadata(),
180
+ });
181
+ }
182
+ catch (error) {
183
+ return c.json({
184
+ success: false,
185
+ error: error instanceof Error ? error.message : String(error),
186
+ }, 500);
187
+ }
188
+ });
189
+ }
190
+ //# sourceMappingURL=SessionRoutes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRoutes.js","sourceRoot":"","sources":["../../../../../src/runtime/server/http/sdk/SessionRoutes.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,7 @@
8
8
  */
9
9
  import type { LanguageModel, Tool } from "ai";
10
10
  import type { BaseService } from "../service/builtins/BaseService.js";
11
- import type { JsonValue } from "../types/common/Json.js";
12
11
  import type { Plugin } from "../plugin/types/Plugin.js";
13
- import type { SessionMessageV1 } from "../session/types/SessionMessages.js";
14
12
  import type { AgentPlatformRuntime } from "../types/runtime/host/AgentHost.js";
15
13
  import type { LocalRpcServerHandle } from "../types/runtime/rpc/LocalRpc.js";
16
14
  import type { ServerInstance } from "../runtime/server/http/Server.js";
@@ -258,127 +256,6 @@ export interface AgentSessionConfigSnapshot {
258
256
  */
259
257
  modelLabel?: string;
260
258
  }
261
- /**
262
- * Session 运行输入。
263
- */
264
- export interface AgentSessionRunInput {
265
- /**
266
- * 当前轮用户查询文本。
267
- */
268
- query: string;
269
- }
270
- /**
271
- * Session 运行结果。
272
- */
273
- export interface AgentSessionRunResult {
274
- /**
275
- * 本轮执行是否成功。
276
- */
277
- success: boolean;
278
- /**
279
- * 失败时的错误文本。
280
- */
281
- error?: string;
282
- /**
283
- * 最终 assistant 文本。
284
- */
285
- text: string;
286
- /**
287
- * 最终 assistant 原始 UIMessage。
288
- */
289
- assistantMessage: SessionMessageV1;
290
- }
291
- /**
292
- * SDK 对外的流式事件。
293
- */
294
- export type AgentSessionStreamEvent = {
295
- /**
296
- * 文本增量事件。
297
- */
298
- type: "text-delta";
299
- /**
300
- * 当前追加的文本片段。
301
- */
302
- text: string;
303
- } | {
304
- /**
305
- * reasoning 增量事件。
306
- */
307
- type: "reasoning-delta";
308
- /**
309
- * 当前追加的 reasoning 文本片段。
310
- */
311
- text: string;
312
- } | {
313
- /**
314
- * 工具调用可用事件。
315
- */
316
- type: "tool-call";
317
- /**
318
- * 当前工具调用唯一标识。
319
- */
320
- toolCallId: string;
321
- /**
322
- * 工具名称。
323
- */
324
- toolName: string;
325
- /**
326
- * 工具输入参数。
327
- */
328
- args: JsonValue;
329
- } | {
330
- /**
331
- * 工具调用结果事件。
332
- */
333
- type: "tool-result";
334
- /**
335
- * 当前工具调用唯一标识。
336
- */
337
- toolCallId: string;
338
- /**
339
- * 工具名称。
340
- */
341
- toolName: string;
342
- /**
343
- * 工具输出结果。
344
- */
345
- result: JsonValue;
346
- } | {
347
- /**
348
- * 工具调用失败事件。
349
- */
350
- type: "tool-error";
351
- /**
352
- * 当前工具调用唯一标识。
353
- */
354
- toolCallId: string;
355
- /**
356
- * 工具名称。
357
- */
358
- toolName: string;
359
- /**
360
- * 错误文本。
361
- */
362
- error: string;
363
- } | {
364
- /**
365
- * 运行结束事件。
366
- */
367
- type: "finish";
368
- /**
369
- * 最终完成原因(若底层可提供)。
370
- */
371
- finishReason?: string;
372
- } | {
373
- /**
374
- * 运行错误事件。
375
- */
376
- type: "error";
377
- /**
378
- * 错误文本。
379
- */
380
- error: string;
381
- };
382
259
  /**
383
260
  * Session system block 来源类型。
384
261
  */
@@ -431,7 +308,7 @@ export interface AgentSessionSystemSessionInfo {
431
308
  *
432
309
  * 关键点(中文)
433
310
  * - 这是 session 初始化时落盘的稳定参考时间,按 Date/ISO 字符串对外展示。
434
- * - 它不是每轮运行的当前时间,不会随着 `run()` / `stream()` 改变。
311
+ * - 它不是每轮运行的当前时间,不会随着后续 turn 执行而改变。
435
312
  */
436
313
  createdAt: string;
437
314
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AgentSdkTypes.d.ts","sourceRoot":"","sources":["../../src/sdk/AgentSdkTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentSdkTypes.d.ts","sourceRoot":"","sources":["../../src/sdk/AgentSdkTypes.ts"],"names":[],"mappings":"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"}
@@ -3,25 +3,40 @@
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - 面向已通过 `agent.start({ http: { ... } })` 暴露出来的远程/本地 HTTP 服务。
6
- * - 与本地 `Agent` 尽量保持同一套 session 使用面。
6
+ * - 与本地 `Session` 保持同一套 Session actor 使用面:`prompt()` + `subscribe()`。
7
+ * - `RemoteAgent` 只负责 transport 与本地 turn handle 合成,不重复实现第二套会话编排器。
7
8
  */
8
- import type { AgentSessionMetadata, AgentSessionRunInput, AgentSessionRunResult, AgentSessionSetInput, AgentSessionStreamEvent, AgentSessionSystemSnapshot, RemoteAgentOptions } from "../sdk/AgentSdkTypes.js";
9
+ import type { AgentSessionMetadata, AgentSessionSetInput, AgentSessionSystemSnapshot, RemoteAgentOptions } from "../sdk/AgentSdkTypes.js";
9
10
  import type { SessionMessageV1 } from "../session/types/SessionMessages.js";
11
+ import type { AgentSessionSubscriber, AgentSessionUnsubscribe } from "../types/sdk/AgentSessionEvent.js";
12
+ import type { AgentSessionPromptInput } from "../types/sdk/AgentSessionPrompt.js";
13
+ import type { AgentSessionTurnHandle } from "../types/sdk/AgentSessionTurn.js";
10
14
  /**
11
15
  * 远程 Session 客户端。
12
16
  */
13
17
  declare class RemoteSession {
14
18
  readonly id: string;
15
19
  private readonly baseUrl;
20
+ private readonly eventHub;
21
+ private readonly turnsById;
22
+ private readonly completedTurnIds;
23
+ private eventPumpConnectPromise;
24
+ private eventPumpAbortController;
25
+ private eventPumpRunning;
26
+ private eventSubscriberCount;
16
27
  constructor(baseUrl: string, sessionId: string);
17
28
  /**
18
29
  * 远程 session 当前不支持直接注入本地模型实例。
19
30
  */
20
31
  set(_input: AgentSessionSetInput): Promise<void>;
21
32
  /**
22
- * 执行一轮非流式请求。
33
+ * 向当前远程 session 追加一条新的 prompt。
23
34
  */
24
- run(input: AgentSessionRunInput): Promise<AgentSessionRunResult>;
35
+ prompt(input: AgentSessionPromptInput): Promise<AgentSessionTurnHandle>;
36
+ /**
37
+ * 订阅当前远程 session 的 future 事件。
38
+ */
39
+ subscribe(subscriber: AgentSessionSubscriber): AgentSessionUnsubscribe;
25
40
  /**
26
41
  * 读取远程消息历史。
27
42
  */
@@ -34,10 +49,14 @@ declare class RemoteSession {
34
49
  * 分叉远程 session。
35
50
  */
36
51
  fork(messageId?: string): Promise<RemoteSession>;
37
- /**
38
- * 执行一轮流式请求。
39
- */
40
- stream(input: AgentSessionRunInput): AsyncIterable<AgentSessionStreamEvent>;
52
+ private ensureEventPump;
53
+ private consumeEventConnection;
54
+ private handleEventLine;
55
+ private handleEvent;
56
+ private ensureTurnLifecycle;
57
+ private failPendingTurns;
58
+ private rememberCompletedTurn;
59
+ private maybeStopEventPump;
41
60
  }
42
61
  /**
43
62
  * RemoteAgent:远程 Agent 客户端。
@@ -1 +1 @@
1
- {"version":3,"file":"RemoteAgent.d.ts","sourceRoot":"","sources":["../../src/sdk/RemoteAgent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAE3E;;GAEG;AACH,cAAM,aAAa;IACjB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAK9C;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMtD;;OAEG;IACG,GAAG,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAmBtE;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAe5C;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAoBnD;;OAEG;IACG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAwBtD;;OAEG;IACI,MAAM,CACX,KAAK,EAAE,oBAAoB,GAC1B,aAAa,CAAC,uBAAuB,CAAC;CAsC1C;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,EAAE,kBAAkB;IAQvC;;OAEG;IACG,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAqBzD;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;CAYlD"}
1
+ {"version":3,"file":"RemoteAgent.d.ts","sourceRoot":"","sources":["../../src/sdk/RemoteAgent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAEV,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,KAAK,EACV,sBAAsB,EAEvB,MAAM,iCAAiC,CAAC;AAmDzC;;GAEG;AACH,cAAM,aAAa;IACjB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0C;IACpE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;IACjD,OAAO,CAAC,uBAAuB,CAA8B;IAC7D,OAAO,CAAC,wBAAwB,CAAgC;IAChE,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,oBAAoB,CAAK;gBAErB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAK9C;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMtD;;OAEG;IACG,MAAM,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAmC7E;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,sBAAsB,GAAG,uBAAuB;IAgBtE;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAe5C;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAoBnD;;OAEG;IACG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;YAwBxC,eAAe;YAoDf,sBAAsB;IAmDpC,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,WAAW;IAuBnB,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,kBAAkB;CAO3B;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,EAAE,kBAAkB;IAQvC;;OAEG;IACG,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAqBzD;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;CAYlD"}