@letta-ai/letta-agent-sdk 0.3.2 → 0.5.0

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 (70) hide show
  1. package/AGENTS.md +44 -0
  2. package/README.md +29 -0
  3. package/dist/app-server-management.d.ts +3 -48
  4. package/dist/app-server-management.d.ts.map +1 -1
  5. package/dist/app-server-session.d.ts +0 -6
  6. package/dist/app-server-session.d.ts.map +1 -1
  7. package/dist/client-base.d.ts +7 -15
  8. package/dist/client-base.d.ts.map +1 -1
  9. package/dist/client-entry.js +979 -1010
  10. package/dist/client-entry.js.map +15 -11
  11. package/dist/client.d.ts +3 -3
  12. package/dist/client.d.ts.map +1 -1
  13. package/dist/cloud-sandbox.d.ts +33 -0
  14. package/dist/cloud-sandbox.d.ts.map +1 -0
  15. package/dist/cloud-session.d.ts.map +1 -1
  16. package/dist/cloud-status-transport.d.ts +53 -0
  17. package/dist/cloud-status-transport.d.ts.map +1 -0
  18. package/dist/index.d.ts +7 -16
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +3242 -4298
  21. package/dist/index.js.map +20 -17
  22. package/dist/local-app-server-session.d.ts +1 -1
  23. package/dist/local-app-server-session.d.ts.map +1 -1
  24. package/dist/local-app-server.d.ts +11 -0
  25. package/dist/local-app-server.d.ts.map +1 -1
  26. package/dist/management.d.ts +0 -7
  27. package/dist/management.d.ts.map +1 -1
  28. package/dist/remote-client-session-core.d.ts +6 -93
  29. package/dist/remote-client-session-core.d.ts.map +1 -1
  30. package/dist/remote-session-protocol.d.ts +132 -0
  31. package/dist/remote-session-protocol.d.ts.map +1 -0
  32. package/dist/remote-turn-coordinator.d.ts +49 -0
  33. package/dist/remote-turn-coordinator.d.ts.map +1 -0
  34. package/dist/types.d.ts +59 -86
  35. package/dist/types.d.ts.map +1 -1
  36. package/dist/validation.d.ts.map +1 -1
  37. package/package.json +6 -3
  38. package/src/app-server-management.ts +405 -0
  39. package/src/app-server-session.ts +916 -0
  40. package/src/cli-resolver.ts +46 -0
  41. package/src/client-base.ts +456 -0
  42. package/src/client-entry.ts +31 -0
  43. package/src/client.ts +99 -0
  44. package/src/cloud-management.ts +360 -0
  45. package/src/cloud-sandbox.ts +117 -0
  46. package/src/cloud-session.ts +1055 -0
  47. package/src/cloud-status-transport.ts +305 -0
  48. package/src/index.ts +422 -0
  49. package/src/interactiveToolPolicy.ts +62 -0
  50. package/src/local-app-server-session.ts +49 -0
  51. package/src/local-app-server.ts +231 -0
  52. package/src/management-types.ts +133 -0
  53. package/src/management.ts +199 -0
  54. package/src/remote-client-session-core.ts +786 -0
  55. package/src/remote-session-protocol.ts +674 -0
  56. package/src/remote-turn-coordinator.ts +523 -0
  57. package/src/remote.ts +177 -0
  58. package/src/repositories.ts +340 -0
  59. package/src/request-ids.ts +33 -0
  60. package/src/stream-events.ts +88 -0
  61. package/src/tool-helpers.ts +147 -0
  62. package/src/types.ts +1281 -0
  63. package/src/validation.ts +238 -0
  64. package/src/websocket.ts +22 -0
  65. package/dist/protocol.d.ts +0 -205
  66. package/dist/protocol.d.ts.map +0 -1
  67. package/dist/session.d.ts +0 -155
  68. package/dist/session.d.ts.map +0 -1
  69. package/dist/transport.d.ts +0 -53
  70. package/dist/transport.d.ts.map +0 -1
@@ -1,4 +1,4 @@
1
1
  import { AppServerSession, type AppServerSessionMode } from "./app-server-session.js";
2
2
  import type { LettaCodeLocalAppServerOptions } from "./types.js";
3
- export declare function createLocalAppServerSession(options: LettaCodeLocalAppServerOptions | undefined, mode: AppServerSessionMode, beforeConnect?: () => Promise<void>): AppServerSession;
3
+ export declare function createLocalAppServerSession(options: LettaCodeLocalAppServerOptions | undefined, mode: AppServerSessionMode): AppServerSession;
4
4
  //# sourceMappingURL=local-app-server-session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"local-app-server-session.d.ts","sourceRoot":"","sources":["../src/local-app-server-session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,KAAK,oBAAoB,EAE1B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAEjE,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,8BAA8B,GAAG,SAAS,EACnD,IAAI,EAAE,oBAAoB,EAC1B,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAClC,gBAAgB,CA0BlB"}
1
+ {"version":3,"file":"local-app-server-session.d.ts","sourceRoot":"","sources":["../src/local-app-server-session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,KAAK,oBAAoB,EAE1B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAEV,8BAA8B,EAC/B,MAAM,YAAY,CAAC;AAEpB,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,8BAA8B,GAAG,SAAS,EACnD,IAAI,EAAE,oBAAoB,GACzB,gBAAgB,CAkClB"}
@@ -1,3 +1,4 @@
1
+ import { type MemoryConfinementLauncherInput, type MemoryConfinementLauncherResult } from "@letta-ai/letta-code/memory-confinement";
1
2
  export interface LocalAppServerHandle {
2
3
  url: string;
3
4
  close(): void;
@@ -8,10 +9,20 @@ export interface StartLocalAppServerOptions {
8
9
  startupTimeoutMs?: number;
9
10
  cliPath?: string;
10
11
  env?: Record<string, string | undefined>;
12
+ filesystemConfinement?: "memory";
13
+ agentId?: string;
11
14
  }
15
+ interface LocalAppServerProcess {
16
+ command: string;
17
+ args: string[];
18
+ env: NodeJS.ProcessEnv;
19
+ }
20
+ type MemoryConfinementLauncher = (input: MemoryConfinementLauncherInput) => MemoryConfinementLauncherResult;
12
21
  export declare function buildLocalAppServerArgs(cliPath: string, options?: Pick<StartLocalAppServerOptions, "backend" | "listen">): string[];
22
+ export declare function buildLocalAppServerProcess(cliPath: string, options?: StartLocalAppServerOptions, confineMemory?: MemoryConfinementLauncher): LocalAppServerProcess;
13
23
  /**
14
24
  * Spawn an SDK-owned Letta Code app-server on an ephemeral loopback port.
15
25
  */
16
26
  export declare function startLocalAppServer(options?: StartLocalAppServerOptions): Promise<LocalAppServerHandle>;
27
+ export {};
17
28
  //# sourceMappingURL=local-app-server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"local-app-server.d.ts","sourceRoot":"","sources":["../src/local-app-server.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,IAAI,IAAI,CAAC;CACf;AAED,MAAM,WAAW,0BAA0B;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CAC1C;AAeD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,IAAI,CAAC,0BAA0B,EAAE,SAAS,GAAG,QAAQ,CAAM,GACnE,MAAM,EAAE,CAQV;AAYD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,oBAAoB,CAAC,CA+E/B"}
1
+ {"version":3,"file":"local-app-server.d.ts","sourceRoot":"","sources":["../src/local-app-server.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,8BAA8B,EACnC,KAAK,+BAA+B,EACrC,MAAM,yCAAyC,CAAC;AAGjD,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,IAAI,IAAI,CAAC;CACf;AAED,MAAM,WAAW,0BAA0B;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC,qBAAqB,CAAC,EAAE,QAAQ,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;CACxB;AAED,KAAK,yBAAyB,GAAG,CAC/B,KAAK,EAAE,8BAA8B,KAClC,+BAA+B,CAAC;AA6DrC,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,IAAI,CAAC,0BAA0B,EAAE,SAAS,GAAG,QAAQ,CAAM,GACnE,MAAM,EAAE,CAQV;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,0BAA+B,EACxC,aAAa,GAAE,yBAA2D,GACzE,qBAAqB,CAuBvB;AAYD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,oBAAoB,CAAC,CA+E/B"}
@@ -12,13 +12,6 @@ export interface ManagementTransport {
12
12
  createConversation(body: Record<string, unknown>): Promise<LettaConversation>;
13
13
  updateConversation(conversationId: string, body: Record<string, unknown>): Promise<LettaConversation>;
14
14
  listConversationMessages(conversationId: string, query: ManagementQuery): Promise<ConversationMessagesResult>;
15
- /**
16
- * Release the pooled connection, waiting for in-flight work when necessary,
17
- * so other clients of the same backend (for example sessions, which compete
18
- * for the app-server's single control-client slot) can connect. Optional;
19
- * transports whose backend has no such contention (Cloud REST) omit it.
20
- */
21
- releaseIdleConnection?(): Promise<void> | void;
22
15
  }
23
16
  type TransportProvider = () => ManagementTransport;
24
17
  export declare function createAgentsClient(transport: TransportProvider): AgentsClient;
@@ -1 +1 @@
1
- {"version":3,"file":"management.d.ts","sourceRoot":"","sources":["../src/management.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,0BAA0B,EAE1B,UAAU,EACV,iBAAiB,EAGjB,YAAY,EAIb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,MAAM,eAAe,GAAG,MAAM,CAClC,MAAM,EACN,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,CACxD,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC1D,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACpD,WAAW,CACT,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,UAAU,CAAC,CAAC;IACvB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxC,iBAAiB,CACf,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAChC,oBAAoB,CAClB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9B,kBAAkB,CAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9B,kBAAkB,CAChB,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9B,wBAAwB,CACtB,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACvC;;;;;OAKG;IACH,qBAAqB,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAChD;AAED,KAAK,iBAAiB,GAAG,MAAM,mBAAmB,CAAC;AAwGnD,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,iBAAiB,GAC3B,YAAY,CAYd;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,iBAAiB,GAC3B,YAAY,CAId;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,iBAAiB,GAC3B,mBAAmB,CAmBrB"}
1
+ {"version":3,"file":"management.d.ts","sourceRoot":"","sources":["../src/management.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,0BAA0B,EAE1B,UAAU,EACV,iBAAiB,EAGjB,YAAY,EAIb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,MAAM,eAAe,GAAG,MAAM,CAClC,MAAM,EACN,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,CACxD,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC1D,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACpD,WAAW,CACT,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,UAAU,CAAC,CAAC;IACvB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxC,iBAAiB,CACf,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAChC,oBAAoB,CAClB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9B,kBAAkB,CAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9B,kBAAkB,CAChB,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9B,wBAAwB,CACtB,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,0BAA0B,CAAC,CAAC;CACxC;AAED,KAAK,iBAAiB,GAAG,MAAM,mBAAmB,CAAC;AAwGnD,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,iBAAiB,GAC3B,YAAY,CAYd;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,iBAAiB,GAC3B,YAAY,CAId;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,iBAAiB,GAC3B,mBAAmB,CAmBrB"}
@@ -1,80 +1,13 @@
1
- import type { BootstrapStateOptions, BootstrapStateResult, ChangeDeviceStateOptions, CreateAgentOptions, GetDeviceStatusOptions, LettaCodeClientSessionOptions, LettaCodeSession, ListModelsResult, ListMessagesOptions, ListMessagesResult, MessageContentItem, RecoverPendingApprovalsOptions, RecoverPendingApprovalsResult, RemoveQueuedMessageResult, RunTurnOptions, SDKErrorCode, SDKInitMessage, SDKMessage, SDKProtocolCommand, SDKProtocolMessage, SDKResultMessage, SendCommandOptions, SendMessage, SessionDeviceStatus, SkillSource, UpdateModelOptions, UpdateModelResult } from "./types.js";
2
- export type RuntimeScope = {
3
- agent_id: string;
4
- conversation_id: string;
5
- };
6
- export type ProtocolMessage = Record<string, unknown> & {
7
- type: string;
8
- request_id?: string;
9
- runtime?: RuntimeScope;
10
- };
11
- export type RuntimeSessionMode = {
12
- kind: "create-agent";
13
- options: CreateAgentOptions;
14
- } | {
15
- kind: "session";
16
- agentId?: string;
17
- conversationId?: string;
18
- newConversation?: boolean;
19
- defaultConversation?: boolean;
20
- options: LettaCodeClientSessionOptions;
21
- };
22
- export type RuntimeTurnResult = {
23
- runtime: RuntimeScope;
24
- stopReason: string | null;
25
- runIds: string[];
26
- success?: boolean;
27
- detail?: string;
28
- errorCode?: SDKErrorCode;
29
- };
30
- export type RuntimeSendTurnOptions = {
31
- clientMessageId: string;
32
- };
33
- export type RuntimeRequestOptions = {
34
- timeoutMs?: number;
35
- predicate?: (message: ProtocolMessage) => boolean;
36
- };
37
- export interface RemoteClientRuntimeController {
38
- onMessage(handler: (message: ProtocolMessage, channel?: string) => void): () => void;
39
- send(command: Record<string, unknown>): void;
40
- sendTurnMessage(runtime: RuntimeScope, message: SendMessage, options: RuntimeSendTurnOptions): void;
41
- abort(runtime: RuntimeScope): Promise<void>;
42
- request(type: string, body: Record<string, unknown>, options?: RuntimeRequestOptions): Promise<ProtocolMessage>;
43
- recoverPendingApprovals(runtime: RuntimeScope, options?: RecoverPendingApprovalsOptions): Promise<RecoverPendingApprovalsResult>;
44
- listMessages(conversationId: string, options?: ListMessagesOptions): Promise<ListMessagesResult>;
45
- listModels(): Promise<ListModelsResult>;
46
- updateModel(runtime: RuntimeScope, payload: {
47
- model_id?: string;
48
- model_handle?: string;
49
- }): Promise<UpdateModelResult>;
50
- close(): void;
51
- }
52
- export type RuntimeSessionInit = {
53
- controller: RemoteClientRuntimeController;
54
- runtime: RuntimeScope;
55
- model?: string | null;
56
- modelSettings?: Record<string, unknown> | null;
57
- tools?: string[];
58
- /** Effective runtime skill source override, when explicitly requested. */
59
- skillSources?: SkillSource[];
60
- };
61
- type RemoteClientSessionCoreConfig = {
62
- label: string;
63
- requestTimeoutMs?: number;
64
- };
65
- type LegacyPermissionMode = "default" | "bypassPermissions" | "fullAccess";
66
- export declare function normalizePermissionMode(mode: LettaCodeClientSessionOptions["permissionMode"] | LegacyPermissionMode | undefined): LettaCodeClientSessionOptions["permissionMode"] | undefined;
67
- export declare function mapPermissionMode(mode: LettaCodeClientSessionOptions["permissionMode"] | LegacyPermissionMode | undefined): string | undefined;
68
- export declare function isUnrestrictedPermissionMode(mode: LettaCodeClientSessionOptions["permissionMode"] | LegacyPermissionMode | undefined): boolean;
69
- export declare function ensureSuccess(message: Record<string, unknown>, fallback: string): void;
70
- export declare function normalizeSendMessage(message: SendMessage): string | MessageContentItem[];
1
+ import type { BootstrapStateOptions, BootstrapStateResult, ChangeDeviceStateOptions, CreateAgentOptions, GetDeviceStatusOptions, LettaCodeClientSessionOptions, LettaCodeSession, ListModelsResult, ListMessagesOptions, ListMessagesResult, RecoverPendingApprovalsOptions, RecoverPendingApprovalsResult, RemoveQueuedMessageResult, RunTurnOptions, SDKInitMessage, SDKMessage, SDKProtocolCommand, SDKProtocolMessage, SDKResultMessage, SendCommandOptions, SendMessage, SessionDeviceStatus, UpdateModelOptions, UpdateModelResult } from "./types.js";
2
+ export { ensureSuccess, isUnrestrictedPermissionMode, mapPermissionMode, normalizePermissionMode, normalizeSendMessage, } from "./remote-session-protocol.js";
3
+ import { type RemoteClientSessionCoreConfig, type RemoteClientRuntimeController, type RuntimeScope, type RuntimeSessionInit, type RuntimeSessionMode } from "./remote-session-protocol.js";
4
+ export type { ProtocolMessage, RemoteClientRuntimeController, RuntimeRequestOptions, RuntimeScope, RuntimeSendTurnOptions, RuntimeSessionInit, RuntimeSessionMode, RuntimeTurnResult, } from "./remote-session-protocol.js";
71
5
  export declare abstract class RemoteClientSessionCore implements LettaCodeSession {
72
6
  protected readonly mode: RuntimeSessionMode;
73
7
  protected controller: RemoteClientRuntimeController | null;
74
8
  protected runtime: RuntimeScope | null;
75
9
  protected initialized: boolean;
76
10
  protected closed: boolean;
77
- protected activeTurnStartedAt: number;
78
11
  protected _agentId: string | null;
79
12
  protected _sessionId: string | null;
80
13
  protected _conversationId: string | null;
@@ -83,14 +16,8 @@ export declare abstract class RemoteClientSessionCore implements LettaCodeSessio
83
16
  private readonly label;
84
17
  private readonly requestTimeoutMs;
85
18
  private initializePromise;
86
- private streamQueue;
87
- private streamResolvers;
88
19
  private removeMessageHandler;
89
- private activeTurn;
90
- private pendingTurns;
91
- private nextTurnId;
92
- private messageCounter;
93
- private clientMessageCounter;
20
+ private readonly turns;
94
21
  private toolNames;
95
22
  private deviceStatusListeners;
96
23
  private deviceStatusRefreshCancels;
@@ -143,22 +70,8 @@ export declare abstract class RemoteClientSessionCore implements LettaCodeSessio
143
70
  protected shouldEnableMemfs(options: LettaCodeClientSessionOptions | CreateAgentOptions): boolean;
144
71
  protected enableMemfsBody(): Record<string, unknown>;
145
72
  protected setModel(model: string): void;
146
- private trackSentTurn;
147
- private activateTurn;
148
- private activateNextTurnFromProtocol;
149
- private removeTrackedTurn;
150
- private failTurn;
151
- private completeActiveTurn;
152
73
  private resolveUpdateModelPayload;
153
74
  protected applyPostInitializeOptions(): Promise<void>;
154
- private handleProtocolMessage;
155
- private handleLoopStatusMessage;
156
- private handleTurnTerminalDelta;
157
- private transformStreamDelta;
158
- private resultFromTurn;
159
- private enqueue;
160
- private nextMessage;
161
- private resolveAll;
75
+ private emitDeviceStatus;
162
76
  }
163
- export {};
164
77
  //# sourceMappingURL=remote-client-session-core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote-client-session-core.d.ts","sourceRoot":"","sources":["../src/remote-client-session-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote-client-session-core.d.ts","sourceRoot":"","sources":["../src/remote-client-session-core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,132 @@
1
+ import type { CreateAgentOptions, LettaCodeClientSessionOptions, LettaCodeModelEntry, ListMessagesOptions, ListMessagesResult, ListModelsResult, MessageContentItem, RecoverPendingApprovalsOptions, RecoverPendingApprovalsResult, ReasoningEffort, SDKErrorCode, SDKQueueItem, SendMessage, SessionDeviceStatus, SkillSource, UpdateModelOptions, UpdateModelResult } from "./types.js";
2
+ export type RuntimeScope = {
3
+ agent_id: string;
4
+ conversation_id: string;
5
+ };
6
+ export type ProtocolMessage = Record<string, unknown> & {
7
+ type: string;
8
+ request_id?: string;
9
+ runtime?: RuntimeScope;
10
+ };
11
+ export type RuntimeSessionMode = {
12
+ kind: "create-agent";
13
+ options: CreateAgentOptions;
14
+ } | {
15
+ kind: "session";
16
+ agentId?: string;
17
+ conversationId?: string;
18
+ newConversation?: boolean;
19
+ defaultConversation?: boolean;
20
+ options: LettaCodeClientSessionOptions;
21
+ };
22
+ export type RuntimeTurnResult = {
23
+ runtime: RuntimeScope;
24
+ stopReason: string | null;
25
+ runIds: string[];
26
+ success?: boolean;
27
+ detail?: string;
28
+ errorCode?: SDKErrorCode;
29
+ };
30
+ export type RuntimeSendTurnOptions = {
31
+ clientMessageId: string;
32
+ };
33
+ export type RuntimeRequestOptions = {
34
+ timeoutMs?: number;
35
+ predicate?: (message: ProtocolMessage) => boolean;
36
+ };
37
+ export interface RemoteClientRuntimeController {
38
+ onMessage(handler: (message: ProtocolMessage, channel?: string) => void): () => void;
39
+ send(command: Record<string, unknown>): void;
40
+ sendTurnMessage(runtime: RuntimeScope, message: SendMessage, options: RuntimeSendTurnOptions): void;
41
+ abort(runtime: RuntimeScope): Promise<void>;
42
+ request(type: string, body: Record<string, unknown>, options?: RuntimeRequestOptions): Promise<ProtocolMessage>;
43
+ recoverPendingApprovals(runtime: RuntimeScope, options?: RecoverPendingApprovalsOptions): Promise<RecoverPendingApprovalsResult>;
44
+ listMessages(conversationId: string, options?: ListMessagesOptions): Promise<ListMessagesResult>;
45
+ listModels(): Promise<ListModelsResult>;
46
+ updateModel(runtime: RuntimeScope, payload: {
47
+ model_id?: string;
48
+ model_handle?: string;
49
+ }): Promise<UpdateModelResult>;
50
+ close(): void;
51
+ }
52
+ export type RuntimeSessionInit = {
53
+ controller: RemoteClientRuntimeController;
54
+ runtime: RuntimeScope;
55
+ model?: string | null;
56
+ modelSettings?: Record<string, unknown> | null;
57
+ tools?: string[];
58
+ /** Effective runtime skill source override, when explicitly requested. */
59
+ skillSources?: SkillSource[];
60
+ };
61
+ export type RemoteClientSessionCoreConfig = {
62
+ label: string;
63
+ requestTimeoutMs?: number;
64
+ };
65
+ type ReflectionSettings = {
66
+ trigger: "off" | "step-count" | "compaction-event";
67
+ step_count: number;
68
+ };
69
+ export type UpdateModelPayload = {
70
+ model_id?: string;
71
+ model_handle?: string;
72
+ };
73
+ export type NormalizedUpdateModelInput = {
74
+ model?: string;
75
+ modelId?: string;
76
+ modelHandle?: string;
77
+ reasoningEffort?: ReasoningEffort;
78
+ };
79
+ export type TurnTracker = {
80
+ id: number;
81
+ runtime: RuntimeScope;
82
+ clientMessageId: string;
83
+ queuedAt: number;
84
+ startedAt: number;
85
+ assistantText: string;
86
+ runIds: Set<string>;
87
+ observedTurnEvidence: boolean;
88
+ observedRequiresApprovalStop: boolean;
89
+ abortRequested: boolean;
90
+ timeout: ReturnType<typeof setTimeout> | null;
91
+ };
92
+ export declare const FAILURE_STOP_REASONS: Set<string>;
93
+ type LegacyPermissionMode = "default" | "bypassPermissions" | "fullAccess";
94
+ export declare function normalizePermissionMode(mode: LettaCodeClientSessionOptions["permissionMode"] | LegacyPermissionMode | undefined): LettaCodeClientSessionOptions["permissionMode"] | undefined;
95
+ export declare function mapPermissionMode(mode: LettaCodeClientSessionOptions["permissionMode"] | LegacyPermissionMode | undefined): string | undefined;
96
+ export declare function isUnrestrictedPermissionMode(mode: LettaCodeClientSessionOptions["permissionMode"] | LegacyPermissionMode | undefined): boolean;
97
+ export declare function ensureSuccess(message: Record<string, unknown>, fallback: string): void;
98
+ export declare function toSdkErrorCode(value: string | null | undefined): SDKErrorCode | undefined;
99
+ export declare function normalizeUpdateModelInput(update: string | UpdateModelOptions): NormalizedUpdateModelInput;
100
+ export declare function modelPayloadWithoutReasoning(input: NormalizedUpdateModelInput): UpdateModelPayload;
101
+ export declare function toBaseModelHandle(handle: string | undefined, byokProviderAliases: Record<string, string> | undefined): string | undefined;
102
+ export declare function getContextWindow(value: Record<string, unknown> | null | undefined): number | undefined;
103
+ export declare function getReasoningEffort(entry: LettaCodeModelEntry): string | undefined;
104
+ export declare function sameContextCandidates(candidates: LettaCodeModelEntry[], contextWindow: number | undefined): LettaCodeModelEntry[];
105
+ export declare function isApprovalConflictSignal(params: {
106
+ detail?: string;
107
+ message?: string;
108
+ stopReason?: string | null;
109
+ }): boolean;
110
+ export declare function resolveDreamingSettings(dreaming: LettaCodeClientSessionOptions["dreaming"]): ReflectionSettings | null;
111
+ export declare function extractTextFromContent(content: unknown): string | null;
112
+ export declare function toolInputFromArguments(args: unknown): {
113
+ input: Record<string, unknown>;
114
+ raw?: string;
115
+ };
116
+ export declare function firstToolCall(delta: Record<string, unknown>): Record<string, unknown> | undefined;
117
+ export declare function firstToolReturn(delta: Record<string, unknown>): Record<string, unknown> | undefined;
118
+ export declare function sameRuntime(message: ProtocolMessage, runtime: RuntimeScope): boolean;
119
+ export declare function streamDeltaRecord(message: ProtocolMessage): Record<string, unknown> | null;
120
+ export declare function streamDeltaMessageType(delta: Record<string, unknown>): string | undefined;
121
+ export declare function streamDeltaRunId(delta: Record<string, unknown>): string | undefined;
122
+ export declare function streamDeltaOtid(delta: Record<string, unknown>): string | null | undefined;
123
+ export declare function streamDeltaSeqId(delta: Record<string, unknown>): number | undefined;
124
+ export declare function streamDeltaStopReason(delta: Record<string, unknown>): string | null | undefined;
125
+ export declare function loopStatusValue(message: ProtocolMessage): string | undefined;
126
+ export declare function loopStatusRunIds(message: ProtocolMessage): string[];
127
+ export declare function queueItems(message: ProtocolMessage): SDKQueueItem[];
128
+ export declare function deviceStatusRecord(message: ProtocolMessage): Record<string, unknown> | null;
129
+ export declare function toSessionDeviceStatus(status: Record<string, unknown>): SessionDeviceStatus | null;
130
+ export declare function normalizeSendMessage(message: SendMessage): string | MessageContentItem[];
131
+ export {};
132
+ //# sourceMappingURL=remote-session-protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-session-protocol.d.ts","sourceRoot":"","sources":["../src/remote-session-protocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,6BAA6B,EAC7B,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,8BAA8B,EAC9B,6BAA6B,EAC7B,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,mBAAmB,EAKnB,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,kBAAkB,CAAA;CAAE,GACrD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,OAAO,EAAE,6BAA6B,CAAC;CACxC,CAAC;AAEN,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,YAAY,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC;CACnD,CAAC;AAEF,MAAM,WAAW,6BAA6B;IAC5C,SAAS,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IACrF,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7C,eAAe,CACb,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,sBAAsB,GAC9B,IAAI,CAAC;IACR,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,OAAO,CACL,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,eAAe,CAAC,CAAC;IAC5B,uBAAuB,CACrB,OAAO,EAAE,YAAY,EACrB,OAAO,CAAC,EAAE,8BAA8B,GACvC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC1C,YAAY,CACV,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/B,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxC,WAAW,CACT,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GACpD,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9B,KAAK,IAAI,IAAI,CAAC;CACf;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,EAAE,6BAA6B,CAAC;IAC1C,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,KAAK,GAAG,YAAY,GAAG,kBAAkB,CAAC;IACnD,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,YAAY,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,4BAA4B,EAAE,OAAO,CAAC;IACtC,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,IAAI,CAAC;CAC/C,CAAC;AAEF,eAAO,MAAM,oBAAoB,aAO/B,CAAC;AAoBH,KAAK,oBAAoB,GAAG,SAAS,GAAG,mBAAmB,GAAG,YAAY,CAAC;AAE3E,wBAAgB,uBAAuB,CACrC,IAAI,EACA,6BAA6B,CAAC,gBAAgB,CAAC,GAC/C,oBAAoB,GACpB,SAAS,GACZ,6BAA6B,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAe7D;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EACA,6BAA6B,CAAC,gBAAgB,CAAC,GAC/C,oBAAoB,GACpB,SAAS,GACZ,MAAM,GAAG,SAAS,CAEpB;AAED,wBAAgB,4BAA4B,CAC1C,IAAI,EACA,6BAA6B,CAAC,gBAAgB,CAAC,GAC/C,oBAAoB,GACpB,SAAS,GACZ,OAAO,CAET;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAItF;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,CAKzF;AAcD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,GAAG,0BAA0B,CAqCzG;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,0BAA0B,GAAG,kBAAkB,CASlG;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,GACtD,MAAM,GAAG,SAAS,CAQpB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAGtG;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,GAAG,SAAS,CAGjF;AAED,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,mBAAmB,EAAE,EACjC,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,mBAAmB,EAAE,CAMvB;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,GAAG,OAAO,CAWV;AAED,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,6BAA6B,CAAC,UAAU,CAAC,GAClD,kBAAkB,GAAG,IAAI,CAM3B;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAwBtE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAetG;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAWjG;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAOnG;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAwBpF;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAM1F;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAEzF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAEnF;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,MAAM,GAAG,IAAI,GAAG,SAAS,CAI3B;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,MAAM,GAAG,SAAS,CAEpB;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAE/F;AAUD,wBAAgB,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAG5E;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,EAAE,CAKnE;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,eAAe,GAAG,YAAY,EAAE,CAmBnE;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAM3F;AA6HD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,mBAAmB,GAAG,IAAI,CAyB5B;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,GAAG,kBAAkB,EAAE,CAExF"}
@@ -0,0 +1,49 @@
1
+ import type { SDKMessage, SessionDeviceStatus } from "./types.js";
2
+ import { type ProtocolMessage, type RuntimeScope, type TurnTracker } from "./remote-session-protocol.js";
3
+ type RemoteTurnCoordinatorConfig = {
4
+ label: string;
5
+ requestTimeoutMs?: number;
6
+ onDeviceStatus(status: SessionDeviceStatus): void;
7
+ };
8
+ /**
9
+ * Owns the portable session's turn correlation and stream queue.
10
+ *
11
+ * Transport setup and public SDK methods stay in RemoteClientSessionCore.
12
+ * This class only translates protocol events into SDK messages and correlates
13
+ * those events with active or queued turns.
14
+ */
15
+ export declare class RemoteTurnCoordinator {
16
+ private readonly label;
17
+ private readonly requestTimeoutMs;
18
+ private readonly onDeviceStatus;
19
+ private streamQueue;
20
+ private streamResolvers;
21
+ private activeTurn;
22
+ private pendingTurns;
23
+ private nextTurnId;
24
+ private messageCounter;
25
+ private clientMessageCounter;
26
+ private closed;
27
+ private _activeTurnStartedAt;
28
+ constructor(config: RemoteTurnCoordinatorConfig);
29
+ get activeTurnStartedAt(): number;
30
+ hasInFlightTurn(): boolean;
31
+ trackSentTurn(runtime: RuntimeScope): TurnTracker;
32
+ removeTrackedTurn(turn: TurnTracker): void;
33
+ markAbortRequested(): void;
34
+ handleProtocolMessage(message: ProtocolMessage, runtime: RuntimeScope): void;
35
+ nextMessage(): Promise<SDKMessage | null>;
36
+ close(): void;
37
+ private activateTurn;
38
+ private activateNextTurnFromProtocol;
39
+ private failTurn;
40
+ private completeActiveTurn;
41
+ private handleLoopStatusMessage;
42
+ private handleTurnTerminalDelta;
43
+ private transformStreamDelta;
44
+ private resultFromTurn;
45
+ private enqueue;
46
+ private resolveAll;
47
+ }
48
+ export {};
49
+ //# sourceMappingURL=remote-turn-coordinator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-turn-coordinator.d.ts","sourceRoot":"","sources":["../src/remote-turn-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EAIV,mBAAmB,EACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAoBL,KAAK,eAAe,EACpB,KAAK,YAAY,EAEjB,KAAK,WAAW,EACjB,MAAM,8BAA8B,CAAC;AAEtC,KAAK,2BAA2B,GAAG;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;CACnD,CAAC;AAEF;;;;;;GAMG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqB;IACtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwC;IACvE,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,eAAe,CAAmD;IAC1E,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,oBAAoB,CAAK;gBAErB,MAAM,EAAE,2BAA2B;IAM/C,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IAED,eAAe,IAAI,OAAO;IAI1B,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW;IAuBjD,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAU1C,kBAAkB,IAAI,IAAI;IAI1B,qBAAqB,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAsC5E,WAAW,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IASzC,KAAK,IAAI,IAAI;IAYb,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,4BAA4B;IAQpC,OAAO,CAAC,QAAQ;IAoBhB,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,uBAAuB;IA8C/B,OAAO,CAAC,uBAAuB;IAiC/B,OAAO,CAAC,oBAAoB;IA0K5B,OAAO,CAAC,cAAc;IAqCtB,OAAO,CAAC,OAAO;IASf,OAAO,CAAC,UAAU;CAKnB"}