@steventsao/agent-session 0.1.4 → 0.1.6

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/client.d.ts CHANGED
@@ -20,6 +20,10 @@ export interface AgentSessionClientOptions {
20
20
  pingInterval?: number;
21
21
  /** Auto-connect on instantiation (default: false) */
22
22
  autoConnect?: boolean;
23
+ /** Initial lastEventId for resumption (loaded from storage) */
24
+ lastEventId?: string;
25
+ /** Callback when lastEventId changes (for persistence) */
26
+ onEventIdChange?: (eventId: string) => void;
23
27
  }
24
28
  export declare class AgentSessionClient {
25
29
  private ws;
@@ -33,12 +37,20 @@ export declare class AgentSessionClient {
33
37
  private maxReconnectAttempts;
34
38
  private autoReconnect;
35
39
  private pingInterval;
40
+ private lastEventId;
41
+ private onEventIdChange;
36
42
  private handlers;
37
43
  private globalHandlers;
38
44
  constructor(options: AgentSessionClientOptions);
39
45
  connect(): void;
40
46
  disconnect(): void;
41
47
  get isConnected(): boolean;
48
+ /** Get current event cursor for persistence */
49
+ getLastEventId(): string | null;
50
+ /** Set event cursor (load from storage before connect) */
51
+ setLastEventId(eventId: string | null): void;
52
+ /** Clear event cursor (for new chat/reset) */
53
+ clearEventId(): void;
42
54
  on<T extends ServerEvent['type']>(eventType: T, handler: ServerEventHandler<Extract<ServerEvent, {
43
55
  type: T;
44
56
  }>>): () => void;
@@ -46,6 +58,7 @@ export declare class AgentSessionClient {
46
58
  off(eventType: ServerEvent['type']): void;
47
59
  offAll(): void;
48
60
  private handleMessage;
61
+ private updateEventId;
49
62
  private emit;
50
63
  send(message: ClientEvent): void;
51
64
  init(metadata?: Record<string, unknown>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE/E,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;AAEzF,MAAM,WAAW,yBAAyB;IACxC,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,+BAA+B;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mDAAmD;IACnD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qDAAqD;IACrD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,cAAc,CAA+C;IACrE,OAAO,CAAC,gBAAgB,CAA8C;IACtE,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,YAAY,CAAS;IAG7B,OAAO,CAAC,QAAQ,CAAmD;IACnE,OAAO,CAAC,cAAc,CAAsC;gBAEhD,OAAO,EAAE,yBAAyB;IAiB9C,OAAO,IAAI,IAAI;IAiDf,UAAU,IAAI,IAAI;IAQlB,IAAI,WAAW,IAAI,OAAO,CAEzB;IAMD,EAAE,CAAC,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,EAC9B,SAAS,EAAE,CAAC,EACZ,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC,GAC7D,MAAM,IAAI;IAQb,KAAK,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,IAAI;IAK9C,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI;IAIzC,MAAM,IAAI,IAAI;IAKd,OAAO,CAAC,aAAa;IAqBrB,OAAO,CAAC,IAAI;IAQZ,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAQhC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI9C,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAIrC,WAAW,IAAI,IAAI;IAInB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAIrC,gBAAgB,CACd,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EACzC,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE;YAAE,WAAW,CAAC,EAAE,MAAM,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACtD,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,IAAI;IAWP,SAAS,IAAI,IAAI;IAIjB,UAAU,IAAI,IAAI;IAQlB,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;CAevB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -15,6 +15,9 @@ export class AgentSessionClient {
15
15
  maxReconnectAttempts;
16
16
  autoReconnect;
17
17
  pingInterval;
18
+ // Event resumption (Manus pattern)
19
+ lastEventId = null;
20
+ onEventIdChange = null;
18
21
  // Event handlers
19
22
  handlers = new Map();
20
23
  globalHandlers = new Set();
@@ -25,6 +28,8 @@ export class AgentSessionClient {
25
28
  this.maxReconnectAttempts = options.maxReconnectAttempts ?? 5;
26
29
  this.autoReconnect = options.autoReconnect ?? true;
27
30
  this.pingInterval = options.pingInterval ?? 30000;
31
+ this.lastEventId = options.lastEventId || null;
32
+ this.onEventIdChange = options.onEventIdChange || null;
28
33
  if (options.autoConnect) {
29
34
  this.connect();
30
35
  }
@@ -50,6 +55,11 @@ export class AgentSessionClient {
50
55
  console.log('[AgentSession] Connected');
51
56
  this.reconnectAttempts = 0;
52
57
  this.startPing();
58
+ // Send JOIN_SESSION for event resumption (Manus pattern)
59
+ this.send({
60
+ type: 'JOIN_SESSION',
61
+ lastEventId: this.lastEventId || undefined,
62
+ });
53
63
  };
54
64
  this.ws.onmessage = (event) => {
55
65
  if (thisSocketId !== this.socketId)
@@ -88,6 +98,18 @@ export class AgentSessionClient {
88
98
  get isConnected() {
89
99
  return this.ws?.readyState === WebSocket.OPEN;
90
100
  }
101
+ /** Get current event cursor for persistence */
102
+ getLastEventId() {
103
+ return this.lastEventId;
104
+ }
105
+ /** Set event cursor (load from storage before connect) */
106
+ setLastEventId(eventId) {
107
+ this.lastEventId = eventId;
108
+ }
109
+ /** Clear event cursor (for new chat/reset) */
110
+ clearEventId() {
111
+ this.lastEventId = null;
112
+ }
91
113
  // ==========================================================================
92
114
  // Event Handling
93
115
  // ==========================================================================
@@ -110,6 +132,24 @@ export class AgentSessionClient {
110
132
  this.globalHandlers.clear();
111
133
  }
112
134
  handleMessage(event) {
135
+ // Handle EVENTS_BATCH by replaying each event (Manus pattern)
136
+ if (event.type === 'EVENTS_BATCH') {
137
+ const batchEvent = event;
138
+ console.log(`[AgentSession] Replaying ${batchEvent.count} events from batch`);
139
+ for (const batchedEvent of batchEvent.events) {
140
+ this.handleMessage(batchedEvent);
141
+ }
142
+ // Update cursor to latest from batch
143
+ if (batchEvent.lastEventId) {
144
+ this.updateEventId(batchEvent.lastEventId);
145
+ }
146
+ return;
147
+ }
148
+ // Track eventId for cursor-based resumption
149
+ const eventWithMeta = event;
150
+ if (eventWithMeta.eventId) {
151
+ this.updateEventId(eventWithMeta.eventId);
152
+ }
113
153
  const handlers = this.handlers.get(event.type);
114
154
  if (handlers) {
115
155
  for (const handler of handlers) {
@@ -130,6 +170,10 @@ export class AgentSessionClient {
130
170
  }
131
171
  }
132
172
  }
173
+ updateEventId(eventId) {
174
+ this.lastEventId = eventId;
175
+ this.onEventIdChange?.(eventId);
176
+ }
133
177
  emit(event) {
134
178
  this.handleMessage(event);
135
179
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/slice.d.ts CHANGED
@@ -17,6 +17,9 @@ interface AgentSessionState {
17
17
  isConnected: boolean;
18
18
  clientId: string | null;
19
19
  sessionId: string | null;
20
+ lastEventId: string | null;
21
+ lastServerInteraction: number;
22
+ connectionHealth: 'healthy' | 'stale' | 'dead';
20
23
  sandboxStatus: SandboxStatus;
21
24
  sandboxId: string | null;
22
25
  sandboxUrl: string | null;
@@ -35,10 +38,13 @@ declare class SessionSocketManager {
35
38
  private currentSessionId;
36
39
  private currentUserId;
37
40
  private pingInterval;
41
+ private healthCheckInterval;
38
42
  private reconnectTimeout;
39
43
  private reconnectAttempts;
40
44
  private maxReconnectAttempts;
41
45
  private socketId;
46
+ private lastServerInteraction;
47
+ private lastEventId;
42
48
  setDispatch(dispatch: Dispatch): void;
43
49
  setBaseUrl(url: string): void;
44
50
  connect(sessionId: string, userId?: string): void;
@@ -61,6 +67,27 @@ declare class SessionSocketManager {
61
67
  resetAgent(): void;
62
68
  private startPing;
63
69
  private stopPing;
70
+ /**
71
+ * Start health check interval (tldraw pattern)
72
+ * Monitors time since last server interaction and resets connection if stale
73
+ */
74
+ private startHealthCheck;
75
+ private stopHealthCheck;
76
+ /**
77
+ * Check connection health based on time since last server interaction
78
+ * Inspired by tldraw's MAX_TIME_TO_WAIT_FOR_SERVER_INTERACTION_BEFORE_RESETTING_CONNECTION
79
+ */
80
+ private checkConnectionHealth;
81
+ /**
82
+ * Record server interaction timestamp
83
+ * Called on any meaningful server message (not just PONG)
84
+ */
85
+ private recordServerInteraction;
86
+ /**
87
+ * Force reconnect - closes current socket and reconnects immediately
88
+ * Used when connection is detected as dead
89
+ */
90
+ forceReconnect(): void;
64
91
  private clearReconnect;
65
92
  private maybeReconnect;
66
93
  }
@@ -96,10 +123,15 @@ export declare const sendAgentMessage: import("@reduxjs/toolkit").AsyncThunk<voi
96
123
  }, import("@reduxjs/toolkit").AsyncThunkConfig>;
97
124
  export declare const stopAgent: import("@reduxjs/toolkit").AsyncThunk<void, void, import("@reduxjs/toolkit").AsyncThunkConfig>;
98
125
  export declare const resetAgent: import("@reduxjs/toolkit").AsyncThunk<void, void, import("@reduxjs/toolkit").AsyncThunkConfig>;
126
+ /**
127
+ * Force reconnect - useful when connection is stale/dead
128
+ * Inspired by tldraw's restart() method
129
+ */
130
+ export declare const forceReconnect: import("@reduxjs/toolkit").AsyncThunk<void, void, import("@reduxjs/toolkit").AsyncThunkConfig>;
99
131
  export declare const setConnected: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
100
132
  clientId: string;
101
133
  sessionId: string;
102
- }, "agentSession/setConnected">, setDisconnected: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"agentSession/setDisconnected">, setReady: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
134
+ }, "agentSession/setConnected">, setDisconnected: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"agentSession/setDisconnected">, setLastEventId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "agentSession/setLastEventId">, updateLastServerInteraction: import("@reduxjs/toolkit").ActionCreatorWithPayload<number, "agentSession/updateLastServerInteraction">, setConnectionHealth: import("@reduxjs/toolkit").ActionCreatorWithPayload<"healthy" | "stale" | "dead", "agentSession/setConnectionHealth">, setReady: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
103
135
  sandboxId?: string;
104
136
  sandboxUrl?: string;
105
137
  }, "agentSession/setReady">, setSandboxStatus: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
@@ -123,6 +155,9 @@ type RootState = {
123
155
  export declare const selectIsConnected: (state: RootState) => boolean;
124
156
  export declare const selectClientId: (state: RootState) => string | null;
125
157
  export declare const selectSessionId: (state: RootState) => string | null;
158
+ export declare const selectLastEventId: (state: RootState) => string | null;
159
+ export declare const selectLastServerInteraction: (state: RootState) => number;
160
+ export declare const selectConnectionHealth: (state: RootState) => "healthy" | "stale" | "dead";
126
161
  export declare const selectSandboxStatus: (state: RootState) => SandboxStatus;
127
162
  export declare const selectSandboxId: (state: RootState) => string | null;
128
163
  export declare const selectSandboxUrl: (state: RootState) => string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../src/slice.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAEV,gBAAgB,EAChB,aAAa,EACb,YAAY,EAEb,MAAM,gCAAgC,CAAC;AAOxC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,iBAAiB;IAEzB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAGzB,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAGhC,WAAW,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;IAC5C,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,YAAY,EAAE,CAAC;IAGzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAqBD,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;AAEtC,cAAM,oBAAoB;IACxB,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,YAAY,CAA+C;IACnE,OAAO,CAAC,gBAAgB,CAA8C;IACtE,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,QAAQ,CAAK;IAErB,WAAW,CAAC,QAAQ,EAAE,QAAQ;IAI9B,UAAU,CAAC,GAAG,EAAE,MAAM;IAItB,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;IAoE1C,UAAU;IAWV,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,OAAO,CAAC,aAAa;IAgErB,IAAI,CAAC,OAAO,EAAE,MAAM;IASpB,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIvC,YAAY,CACV,QAAQ,CAAC,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,OAAO,gCAAgC,EAAE,uBAAuB;IAK9E,WAAW;IAIX,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAI9B,gBAAgB,CACd,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EACzC,MAAM,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,EACrD,YAAY,CAAC,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM;IAYpB,SAAS;IAIT,UAAU;IAIV,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;CAkBvB;AAGD,eAAO,MAAM,oBAAoB,sBAA6B,CAAC;AAM/D,eAAO,MAAM,cAAc;SAElB,MAAM;eAAa,MAAM;aAAW,MAAM;+CAKjD,CAAC;AAEH,eAAO,MAAM,iBAAiB,gGAK7B,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,gCAAgC,EAAE,uBAAuB,CAAC;CAC9E;AAED,eAAO,MAAM,YAAY,oIAaxB,CAAC;AAEF,eAAO,MAAM,WAAW,gGAKvB,CAAC;AAEF,eAAO,MAAM,WAAW;SAAiC,MAAM;UAAQ,MAAM;+CAK5E,CAAC;AAEF,eAAO,MAAM,gBAAgB;aAGhB,MAAM;YACP;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;aAChC;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE;mBACtC,MAAM;gBACT,MAAM;+CAOpB,CAAC;AAEH,eAAO,MAAM,SAAS,gGAKrB,CAAC;AAEF,eAAO,MAAM,UAAU,gGAMtB,CAAC;AAiHF,eAAO,MACL,YAAY;cAvG8C,MAAM;eAAa,MAAM;iCAwGnF,eAAe,0FACf,QAAQ;gBA7FgD,MAAM;iBAAe,MAAM;6BA8FnF,gBAAgB;YAzFJ,aAAa;gBACT,MAAM;iBACL,MAAM;YACX,MAAM;qCAuFlB,YAAY;WAhF2C,gBAAgB;cAAY,MAAM;iCAiFzF,YAAY,uFACZ,kBAAkB;aAnE6C,YAAY,EAAE;uCAoE7E,SAAS;gBA9DgD,MAAM;8BA+D/D,UAAU;WA3D2C,MAAM;+BA4D3D,cAAc,8FACd,QAAQ,wFACR,aAAa,wFACb,iBAAiB,4FACjB,UAAU,qFACV,iBAAiB,0FACU,CAAC;AAM9B,KAAK,SAAS,GAAG;IAAE,YAAY,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAErD,eAAO,MAAM,iBAAiB,GAAI,OAAO,SAAS,YAAmC,CAAC;AACtF,eAAO,MAAM,cAAc,GAAI,OAAO,SAAS,kBAAgC,CAAC;AAChF,eAAO,MAAM,eAAe,GAAI,OAAO,SAAS,kBAAiC,CAAC;AAClF,eAAO,MAAM,mBAAmB,GAAI,OAAO,SAAS,kBAAqC,CAAC;AAC1F,eAAO,MAAM,eAAe,GAAI,OAAO,SAAS,kBAAiC,CAAC;AAClF,eAAO,MAAM,gBAAgB,GAAI,OAAO,SAAS,kBAAkC,CAAC;AACpF,eAAO,MAAM,eAAe,GAAI,OAAO,SAAS,qBAAiC,CAAC;AAClF,eAAO,MAAM,sBAAsB,GAAI,OAAO,SAAS,kBAAwC,CAAC;AAChG,eAAO,MAAM,iBAAiB,GAAI,OAAO,SAAS,mCAAmC,CAAC;AACtF,eAAO,MAAM,oBAAoB,GAAI,OAAO,SAAS,kBAAsC,CAAC;AAC5F,eAAO,MAAM,cAAc,GAAI,OAAO,SAAS,mBAAgC,CAAC;AAChF,eAAO,MAAM,WAAW,GAAI,OAAO,SAAS,kBAA6B,CAAC;;AAE1E,wBAAyC"}
1
+ {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../src/slice.ts"],"names":[],"mappings":"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"}
package/dist/slice.js CHANGED
@@ -11,6 +11,9 @@ const initialState = {
11
11
  isConnected: false,
12
12
  clientId: null,
13
13
  sessionId: null,
14
+ lastEventId: null,
15
+ lastServerInteraction: 0,
16
+ connectionHealth: 'healthy',
14
17
  sandboxStatus: 'idle',
15
18
  sandboxId: null,
16
19
  sandboxUrl: null,
@@ -21,6 +24,10 @@ const initialState = {
21
24
  messages: [],
22
25
  error: null,
23
26
  };
27
+ // Connection health constants (inspired by tldraw)
28
+ const STALE_THRESHOLD_MS = 45_000; // 45s without server interaction = stale
29
+ const DEAD_THRESHOLD_MS = 90_000; // 90s = dead, force reconnect
30
+ const HEALTH_CHECK_INTERVAL_MS = 10_000; // Check every 10s
24
31
  class SessionSocketManager {
25
32
  ws = null;
26
33
  dispatch = null;
@@ -28,10 +35,13 @@ class SessionSocketManager {
28
35
  currentSessionId = null;
29
36
  currentUserId = null;
30
37
  pingInterval = null;
38
+ healthCheckInterval = null;
31
39
  reconnectTimeout = null;
32
40
  reconnectAttempts = 0;
33
41
  maxReconnectAttempts = 5;
34
42
  socketId = 0; // Prevents stale handlers
43
+ lastServerInteraction = 0; // Track last meaningful server response
44
+ lastEventId = null; // Track last event ID for session resumption
35
45
  setDispatch(dispatch) {
36
46
  this.dispatch = dispatch;
37
47
  }
@@ -58,6 +68,14 @@ class SessionSocketManager {
58
68
  this.currentSessionId = sessionId;
59
69
  this.currentUserId = userId || null;
60
70
  this.reconnectAttempts = 0;
71
+ // Load cursor from localStorage for session resumption
72
+ if (typeof window !== 'undefined') {
73
+ const storedCursor = localStorage.getItem(`agent-session-cursor:${sessionId}`);
74
+ if (storedCursor) {
75
+ this.lastEventId = storedCursor;
76
+ console.log('[SessionSocket] Loaded cursor from localStorage:', storedCursor);
77
+ }
78
+ }
61
79
  const thisSocketId = ++this.socketId;
62
80
  const params = new URLSearchParams();
63
81
  if (userId)
@@ -70,7 +88,14 @@ class SessionSocketManager {
70
88
  return;
71
89
  console.log('[SessionSocket] Connected');
72
90
  this.reconnectAttempts = 0;
91
+ this.lastServerInteraction = Date.now(); // Initialize on connect
73
92
  this.startPing();
93
+ this.startHealthCheck();
94
+ // Send JOIN_SESSION for event resumption
95
+ this.send({
96
+ type: 'JOIN_SESSION',
97
+ lastEventId: this.lastEventId,
98
+ });
74
99
  };
75
100
  this.ws.onmessage = (event) => {
76
101
  if (thisSocketId !== this.socketId)
@@ -90,6 +115,7 @@ class SessionSocketManager {
90
115
  }
91
116
  console.log('[SessionSocket] Disconnected:', event.code);
92
117
  this.stopPing();
118
+ this.stopHealthCheck();
93
119
  this.dispatch?.(setDisconnected());
94
120
  this.maybeReconnect();
95
121
  };
@@ -101,6 +127,7 @@ class SessionSocketManager {
101
127
  }
102
128
  disconnect() {
103
129
  this.stopPing();
130
+ this.stopHealthCheck();
104
131
  this.clearReconnect();
105
132
  this.socketId++;
106
133
  this.ws?.close();
@@ -115,6 +142,19 @@ class SessionSocketManager {
115
142
  handleMessage(event) {
116
143
  if (!this.dispatch)
117
144
  return;
145
+ // Record server interaction for ALL messages (health check)
146
+ this.recordServerInteraction();
147
+ // Extract and store eventId from any event that has it
148
+ const eventWithId = event;
149
+ if (eventWithId.eventId) {
150
+ const eventId = eventWithId.eventId;
151
+ this.lastEventId = eventId;
152
+ this.dispatch(setLastEventId(eventId));
153
+ // Persist to localStorage
154
+ if (typeof window !== 'undefined' && this.currentSessionId) {
155
+ localStorage.setItem(`agent-session-cursor:${this.currentSessionId}`, eventId);
156
+ }
157
+ }
118
158
  switch (event.type) {
119
159
  case 'CONNECTED':
120
160
  this.dispatch(setConnected({
@@ -160,6 +200,23 @@ class SessionSocketManager {
160
200
  this.dispatch(setError(event.msg));
161
201
  break;
162
202
  case 'PONG':
203
+ // PONG already recorded above, nothing else to do
204
+ break;
205
+ case 'EVENTS_BATCH':
206
+ // Replay batched events to rebuild state
207
+ const batchEvent = event;
208
+ console.log('[SessionSocket] Replaying', batchEvent.events.length, 'batched events');
209
+ for (const batchedEvent of batchEvent.events) {
210
+ this.handleMessage(batchedEvent);
211
+ }
212
+ if (batchEvent.lastEventId) {
213
+ this.lastEventId = batchEvent.lastEventId;
214
+ this.dispatch(setLastEventId(this.lastEventId));
215
+ // Persist to localStorage
216
+ if (typeof window !== 'undefined' && this.currentSessionId) {
217
+ localStorage.setItem(`agent-session-cursor:${this.currentSessionId}`, this.lastEventId);
218
+ }
219
+ }
163
220
  break;
164
221
  default:
165
222
  console.log('[SessionSocket] Event:', event.type);
@@ -213,6 +270,72 @@ class SessionSocketManager {
213
270
  this.pingInterval = null;
214
271
  }
215
272
  }
273
+ /**
274
+ * Start health check interval (tldraw pattern)
275
+ * Monitors time since last server interaction and resets connection if stale
276
+ */
277
+ startHealthCheck() {
278
+ this.stopHealthCheck();
279
+ this.healthCheckInterval = setInterval(() => {
280
+ this.checkConnectionHealth();
281
+ }, HEALTH_CHECK_INTERVAL_MS);
282
+ }
283
+ stopHealthCheck() {
284
+ if (this.healthCheckInterval) {
285
+ clearInterval(this.healthCheckInterval);
286
+ this.healthCheckInterval = null;
287
+ }
288
+ }
289
+ /**
290
+ * Check connection health based on time since last server interaction
291
+ * Inspired by tldraw's MAX_TIME_TO_WAIT_FOR_SERVER_INTERACTION_BEFORE_RESETTING_CONNECTION
292
+ */
293
+ checkConnectionHealth() {
294
+ if (!this.isConnected)
295
+ return;
296
+ const now = Date.now();
297
+ const timeSinceLastInteraction = now - this.lastServerInteraction;
298
+ if (timeSinceLastInteraction > DEAD_THRESHOLD_MS) {
299
+ console.warn(`[SessionSocket] Connection dead (${timeSinceLastInteraction}ms since last interaction), forcing reconnect`);
300
+ this.dispatch?.(setConnectionHealth('dead'));
301
+ this.forceReconnect();
302
+ }
303
+ else if (timeSinceLastInteraction > STALE_THRESHOLD_MS) {
304
+ console.warn(`[SessionSocket] Connection stale (${timeSinceLastInteraction}ms since last interaction)`);
305
+ this.dispatch?.(setConnectionHealth('stale'));
306
+ // Send a ping to try to revive it
307
+ this.send({ type: 'PING' });
308
+ }
309
+ else {
310
+ this.dispatch?.(setConnectionHealth('healthy'));
311
+ }
312
+ }
313
+ /**
314
+ * Record server interaction timestamp
315
+ * Called on any meaningful server message (not just PONG)
316
+ */
317
+ recordServerInteraction() {
318
+ this.lastServerInteraction = Date.now();
319
+ this.dispatch?.(updateLastServerInteraction(this.lastServerInteraction));
320
+ }
321
+ /**
322
+ * Force reconnect - closes current socket and reconnects immediately
323
+ * Used when connection is detected as dead
324
+ */
325
+ forceReconnect() {
326
+ if (!this.currentSessionId)
327
+ return;
328
+ console.log('[SessionSocket] Force reconnecting...');
329
+ // Close current socket without triggering normal reconnect logic
330
+ this.stopPing();
331
+ this.stopHealthCheck();
332
+ this.socketId++;
333
+ this.ws?.close();
334
+ this.ws = null;
335
+ // Reset attempts and reconnect immediately
336
+ this.reconnectAttempts = 0;
337
+ this.connect(this.currentSessionId, this.currentUserId || undefined);
338
+ }
216
339
  clearReconnect() {
217
340
  if (this.reconnectTimeout) {
218
341
  clearTimeout(this.reconnectTimeout);
@@ -282,6 +405,13 @@ export const resetAgent = createAsyncThunk('agentSession/resetAgent', async (_,
282
405
  sessionSocketManager.resetAgent();
283
406
  dispatch(clearAgentSession());
284
407
  });
408
+ /**
409
+ * Force reconnect - useful when connection is stale/dead
410
+ * Inspired by tldraw's restart() method
411
+ */
412
+ export const forceReconnect = createAsyncThunk('agentSession/forceReconnect', async () => {
413
+ sessionSocketManager.forceReconnect();
414
+ });
285
415
  // =============================================================================
286
416
  // Slice
287
417
  // =============================================================================
@@ -299,11 +429,30 @@ const agentSessionSlice = createSlice({
299
429
  setDisconnected: (state) => {
300
430
  state.isConnected = false;
301
431
  state.clientId = null;
432
+ state.connectionHealth = 'healthy'; // Reset health on disconnect
433
+ },
434
+ setLastEventId: (state, action) => {
435
+ state.lastEventId = action.payload;
436
+ },
437
+ // Connection health (tldraw pattern)
438
+ updateLastServerInteraction: (state, action) => {
439
+ state.lastServerInteraction = action.payload;
440
+ },
441
+ setConnectionHealth: (state, action) => {
442
+ state.connectionHealth = action.payload;
302
443
  },
303
444
  // Sandbox
304
445
  setReady: (state, action) => {
305
- if (action.payload.sandboxId)
446
+ if (action.payload.sandboxId) {
306
447
  state.sandboxId = action.payload.sandboxId;
448
+ // If sandbox already exists on reconnect, set status to ready immediately.
449
+ // This prevents the auto-start effect from firing unnecessarily.
450
+ //
451
+ // Trust relationship: Server validates sandbox health via checkSandboxHealth()
452
+ // before including sandboxId in READY message. If sandboxId is present, server
453
+ // already confirmed the sandbox is alive. See session-socket.ts constructor.
454
+ state.sandboxStatus = 'ready';
455
+ }
307
456
  if (action.payload.sandboxUrl)
308
457
  state.sandboxUrl = action.payload.sandboxUrl;
309
458
  },
@@ -388,10 +537,13 @@ const agentSessionSlice = createSlice({
388
537
  },
389
538
  },
390
539
  });
391
- export const { setConnected, setDisconnected, setReady, setSandboxStatus, setLifecycle, agentStarted, updateAgentMessage, agentDone, agentError, addUserMessage, setError, clearMessages, clearAgentSession, resetState, resetSessionState, } = agentSessionSlice.actions;
540
+ export const { setConnected, setDisconnected, setLastEventId, updateLastServerInteraction, setConnectionHealth, setReady, setSandboxStatus, setLifecycle, agentStarted, updateAgentMessage, agentDone, agentError, addUserMessage, setError, clearMessages, clearAgentSession, resetState, resetSessionState, } = agentSessionSlice.actions;
392
541
  export const selectIsConnected = (state) => state.agentSession.isConnected;
393
542
  export const selectClientId = (state) => state.agentSession.clientId;
394
543
  export const selectSessionId = (state) => state.agentSession.sessionId;
544
+ export const selectLastEventId = (state) => state.agentSession.lastEventId;
545
+ export const selectLastServerInteraction = (state) => state.agentSession.lastServerInteraction;
546
+ export const selectConnectionHealth = (state) => state.agentSession.connectionHealth;
395
547
  export const selectSandboxStatus = (state) => state.agentSession.sandboxStatus;
396
548
  export const selectSandboxId = (state) => state.agentSession.sandboxId;
397
549
  export const selectSandboxUrl = (state) => state.agentSession.sandboxUrl;
package/dist/slice.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"slice.js","sourceRoot":"","sources":["../src/slice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slice.js","sourceRoot":"","sources":["../src/slice.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steventsao/agent-session",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "description": "Client SDK for agent-session - WebSocket sessions with E2B sandboxes and AI agents",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -22,8 +22,12 @@
22
22
  "files": [
23
23
  "dist"
24
24
  ],
25
+ "scripts": {
26
+ "build": "tsc",
27
+ "dev": "tsc --watch"
28
+ },
25
29
  "dependencies": {
26
- "@steventsao/agent-session-core": "^0.1.1"
30
+ "@steventsao/agent-session-core": "^0.1.5"
27
31
  },
28
32
  "devDependencies": {
29
33
  "@reduxjs/toolkit": "^2.0.0",
@@ -50,9 +54,5 @@
50
54
  "claude",
51
55
  "react"
52
56
  ],
53
- "license": "MIT",
54
- "scripts": {
55
- "build": "tsc",
56
- "dev": "tsc --watch"
57
- }
58
- }
57
+ "license": "MIT"
58
+ }