@foothill/agent-move 1.0.10 → 1.0.12

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 (60) hide show
  1. package/.github/screenshot.png +0 -0
  2. package/package.json +1 -1
  3. package/packages/client/dist/assets/{BufferResource-Dfd5uHKt.js → BufferResource-Dhljy8H8.js} +1 -1
  4. package/packages/client/dist/assets/{CanvasRenderer-7Cv6xZVP.js → CanvasRenderer-Bpr11iOT.js} +1 -1
  5. package/packages/client/dist/assets/{Filter-CBX7EB7j.js → Filter-DL2yN3-o.js} +1 -1
  6. package/packages/client/dist/assets/{RenderTargetSystem-ko-v73NG.js → RenderTargetSystem-BTwylEdr.js} +1 -1
  7. package/packages/client/dist/assets/{WebGLRenderer-vhPQEPUG.js → WebGLRenderer-wH1P7d1x.js} +1 -1
  8. package/packages/client/dist/assets/{WebGPURenderer-Dwywvwqe.js → WebGPURenderer-C7n8jUXC.js} +1 -1
  9. package/packages/client/dist/assets/{browserAll-QyCAT8_K.js → browserAll-CgAMpWnT.js} +1 -1
  10. package/packages/client/dist/assets/index-DG7HqEmM.js +1338 -0
  11. package/packages/client/dist/assets/index-Nz5TZeB1.css +1 -0
  12. package/packages/client/dist/assets/{webworkerAll-hM-gNP7L.js → webworkerAll-wrP2P1GC.js} +1 -1
  13. package/packages/client/dist/index.html +16 -2
  14. package/packages/server/dist/index.d.ts.map +1 -1
  15. package/packages/server/dist/index.js +954 -31
  16. package/packages/server/dist/index.js.map +1 -1
  17. package/packages/server/dist/routes/sessions-api.d.ts +5 -0
  18. package/packages/server/dist/routes/sessions-api.d.ts.map +1 -0
  19. package/packages/server/dist/routes/sessions-api.js +88 -0
  20. package/packages/server/dist/routes/sessions-api.js.map +1 -0
  21. package/packages/server/dist/state/activity-processor.d.ts.map +1 -1
  22. package/packages/server/dist/state/activity-processor.js +0 -2
  23. package/packages/server/dist/state/activity-processor.js.map +1 -1
  24. package/packages/server/dist/state/agent-state-manager.d.ts.map +1 -1
  25. package/packages/server/dist/state/agent-state-manager.js +3 -5
  26. package/packages/server/dist/state/agent-state-manager.js.map +1 -1
  27. package/packages/server/dist/state/identity-manager.d.ts.map +1 -1
  28. package/packages/server/dist/state/identity-manager.js +0 -3
  29. package/packages/server/dist/state/identity-manager.js.map +1 -1
  30. package/packages/server/dist/storage/session-recorder.d.ts +38 -0
  31. package/packages/server/dist/storage/session-recorder.d.ts.map +1 -0
  32. package/packages/server/dist/storage/session-recorder.js +941 -0
  33. package/packages/server/dist/storage/session-recorder.js.map +1 -0
  34. package/packages/server/dist/storage/session-store.d.ts +60 -0
  35. package/packages/server/dist/storage/session-store.d.ts.map +1 -0
  36. package/packages/server/dist/storage/session-store.js +330 -0
  37. package/packages/server/dist/storage/session-store.js.map +1 -0
  38. package/packages/server/dist/watcher/opencode/opencode-watcher.d.ts +15 -0
  39. package/packages/server/dist/watcher/opencode/opencode-watcher.d.ts.map +1 -1
  40. package/packages/server/dist/watcher/opencode/opencode-watcher.js +61 -4
  41. package/packages/server/dist/watcher/opencode/opencode-watcher.js.map +1 -1
  42. package/packages/server/dist/ws/broadcaster.d.ts.map +1 -1
  43. package/packages/server/dist/ws/broadcaster.js +3 -18
  44. package/packages/server/dist/ws/broadcaster.js.map +1 -1
  45. package/packages/shared/dist/constants/tools.d.ts +4 -0
  46. package/packages/shared/dist/constants/tools.d.ts.map +1 -1
  47. package/packages/shared/dist/constants/tools.js +4 -0
  48. package/packages/shared/dist/constants/tools.js.map +1 -1
  49. package/packages/shared/dist/index.d.ts +2 -1
  50. package/packages/shared/dist/index.d.ts.map +1 -1
  51. package/packages/shared/dist/index.js +1 -1
  52. package/packages/shared/dist/index.js.map +1 -1
  53. package/packages/shared/dist/types/session-record.d.ts +87 -0
  54. package/packages/shared/dist/types/session-record.d.ts.map +1 -0
  55. package/packages/shared/dist/types/session-record.js +2 -0
  56. package/packages/shared/dist/types/session-record.js.map +1 -0
  57. package/packages/shared/dist/types/websocket.d.ts +3 -0
  58. package/packages/shared/dist/types/websocket.d.ts.map +1 -1
  59. package/packages/client/dist/assets/index-BPJtz4FL.js +0 -722
  60. package/packages/client/dist/assets/index-CMmR_RuS.css +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-recorder.js","sourceRoot":"","sources":["../../src/storage/session-recorder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import type { RecordedSession, RecordedTimelineEvent, SessionSummary, LiveSessionSummary } from '@agent-move/shared';
2
+ export declare class SessionStore {
3
+ private db;
4
+ constructor(dbPath?: string);
5
+ private initSchema;
6
+ /** Save a complete recorded session with its timeline */
7
+ saveSession(session: RecordedSession, timeline: RecordedTimelineEvent[]): void;
8
+ /** List sessions with optional filtering */
9
+ listSessions(opts?: {
10
+ project?: string;
11
+ limit?: number;
12
+ offset?: number;
13
+ }): SessionSummary[];
14
+ /** Get a full session by ID (without timeline) */
15
+ getSession(id: string): RecordedSession | null;
16
+ /** Get timeline events for a session */
17
+ getTimeline(sessionId: string, opts?: {
18
+ limit?: number;
19
+ offset?: number;
20
+ }): RecordedTimelineEvent[];
21
+ /** Delete a session and its timeline */
22
+ deleteSession(id: string): boolean;
23
+ /** Update session label */
24
+ updateLabel(id: string, label: string | null): boolean;
25
+ /** Update session tags */
26
+ updateTags(id: string, tags: string[]): boolean;
27
+ /** Get total session count (for pagination) */
28
+ getSessionCount(project?: string): number;
29
+ /** Create or update a live session entry */
30
+ upsertLiveSession(rootSessionId: string, data: {
31
+ sessionId: string;
32
+ source: 'claude' | 'opencode';
33
+ projectName: string;
34
+ projectPath: string;
35
+ startedAt: number;
36
+ }): void;
37
+ /** Update the agent snapshot for a live session */
38
+ updateLiveAgents(rootSessionId: string, agentsJson: string): void;
39
+ /** Append a timeline event to the live buffer */
40
+ appendLiveTimelineEvent(rootSessionId: string, evt: RecordedTimelineEvent): void;
41
+ /** Get all live timeline events for a root session */
42
+ getLiveTimeline(rootSessionId: string): RecordedTimelineEvent[];
43
+ /** Remove live session data after finalization (atomic to prevent orphans on crash) */
44
+ removeLiveSession(rootSessionId: string): void;
45
+ /** List currently active (in-progress) live sessions */
46
+ listLiveSessions(): LiveSessionSummary[];
47
+ /** Get all orphaned live sessions (for crash recovery on startup) */
48
+ getOrphanedLiveSessions(): Array<{
49
+ rootSessionId: string;
50
+ sessionId: string;
51
+ source: 'claude' | 'opencode';
52
+ projectName: string;
53
+ projectPath: string;
54
+ startedAt: number;
55
+ lastActivityAt: number;
56
+ agentsJson: string;
57
+ }>;
58
+ close(): void;
59
+ }
60
+ //# sourceMappingURL=session-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../../src/storage/session-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,eAAe,EAEf,qBAAqB,EACrB,cAAc,EACd,kBAAkB,EAEnB,MAAM,oBAAoB,CAAC;AAO5B,qBAAa,YAAY;IACvB,OAAO,CAAC,EAAE,CAAoB;gBAElB,MAAM,CAAC,EAAE,MAAM;IAQ3B,OAAO,CAAC,UAAU;IAuFlB,yDAAyD;IACzD,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,qBAAqB,EAAE,GAAG,IAAI;IAmE9E,4CAA4C;IAC5C,YAAY,CAAC,IAAI,CAAC,EAAE;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,cAAc,EAAE;IAwCpB,kDAAkD;IAClD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IAsC9C,wCAAwC;IACxC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,qBAAqB,EAAE;IA8BnG,wCAAwC;IACxC,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAUlC,2BAA2B;IAC3B,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IAKtD,0BAA0B;IAC1B,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO;IAK/C,+CAA+C;IAC/C,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAWzC,4CAA4C;IAC5C,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE;QAC7C,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAC;QAC9B,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,IAAI;IAaR,mDAAmD;IACnD,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAMjE,iDAAiD;IACjD,uBAAuB,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,GAAG,IAAI;IAkBhF,sDAAsD;IACtD,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,qBAAqB,EAAE;IAuB/D,uFAAuF;IACvF,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAO9C,wDAAwD;IACxD,gBAAgB,IAAI,kBAAkB,EAAE;IAuBxC,qEAAqE;IACrE,uBAAuB,IAAI,KAAK,CAAC;QAC/B,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAC;QAC9B,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IAiBF,KAAK,IAAI,IAAI;CAGd"}
@@ -0,0 +1,330 @@
1
+ // dist/storage/session-store.js
2
+ import { mkdirSync } from "fs";
3
+ import { join } from "path";
4
+ import { homedir } from "os";
5
+ import Database from "better-sqlite3";
6
+ var DB_DIR = join(homedir(), ".agent-move");
7
+ var DB_PATH = join(DB_DIR, "sessions.db");
8
+ var SCHEMA_VERSION = 2;
9
+ var SessionStore = class {
10
+ db;
11
+ constructor(dbPath) {
12
+ mkdirSync(DB_DIR, { recursive: true });
13
+ this.db = new Database(dbPath ?? DB_PATH);
14
+ this.db.pragma("journal_mode = WAL");
15
+ this.db.pragma("busy_timeout = 5000");
16
+ this.initSchema();
17
+ }
18
+ initSchema() {
19
+ this.db.exec(`CREATE TABLE IF NOT EXISTS schema_version (version INTEGER NOT NULL)`);
20
+ const row = this.db.prepare("SELECT version FROM schema_version").get();
21
+ const currentVersion = row?.version ?? 0;
22
+ if (currentVersion < SCHEMA_VERSION) {
23
+ this.db.exec(`
24
+ CREATE TABLE IF NOT EXISTS sessions (
25
+ id TEXT PRIMARY KEY,
26
+ source TEXT NOT NULL,
27
+ root_session_id TEXT NOT NULL,
28
+ project_name TEXT NOT NULL,
29
+ project_path TEXT NOT NULL,
30
+ started_at INTEGER NOT NULL,
31
+ ended_at INTEGER NOT NULL,
32
+ duration_ms INTEGER NOT NULL,
33
+ total_cost REAL NOT NULL DEFAULT 0,
34
+ total_input_tokens INTEGER NOT NULL DEFAULT 0,
35
+ total_output_tokens INTEGER NOT NULL DEFAULT 0,
36
+ total_cache_read_tokens INTEGER NOT NULL DEFAULT 0,
37
+ total_cache_creation_tokens INTEGER NOT NULL DEFAULT 0,
38
+ total_tool_uses INTEGER NOT NULL DEFAULT 0,
39
+ agent_count INTEGER NOT NULL DEFAULT 0,
40
+ model TEXT,
41
+ label TEXT,
42
+ tags TEXT NOT NULL DEFAULT '[]',
43
+ agents_json TEXT NOT NULL DEFAULT '[]',
44
+ tool_chain_json TEXT NOT NULL DEFAULT '{}'
45
+ );
46
+
47
+ CREATE TABLE IF NOT EXISTS timeline_events (
48
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
49
+ session_id TEXT NOT NULL,
50
+ timestamp INTEGER NOT NULL,
51
+ agent_id TEXT NOT NULL,
52
+ kind TEXT NOT NULL,
53
+ zone TEXT,
54
+ tool TEXT,
55
+ tool_args TEXT,
56
+ text_content TEXT,
57
+ input_tokens INTEGER,
58
+ output_tokens INTEGER
59
+ );
60
+
61
+ -- Live (in-progress) sessions: written incrementally so data survives crashes
62
+ CREATE TABLE IF NOT EXISTS live_sessions (
63
+ root_session_id TEXT PRIMARY KEY,
64
+ session_id TEXT NOT NULL,
65
+ source TEXT NOT NULL DEFAULT 'claude',
66
+ project_name TEXT NOT NULL,
67
+ project_path TEXT NOT NULL,
68
+ started_at INTEGER NOT NULL,
69
+ last_activity_at INTEGER NOT NULL,
70
+ agents_json TEXT NOT NULL DEFAULT '[]'
71
+ );
72
+
73
+ CREATE TABLE IF NOT EXISTS live_timeline_events (
74
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
75
+ root_session_id TEXT NOT NULL,
76
+ timestamp INTEGER NOT NULL,
77
+ agent_id TEXT NOT NULL,
78
+ kind TEXT NOT NULL,
79
+ zone TEXT,
80
+ tool TEXT,
81
+ tool_args TEXT,
82
+ text_content TEXT,
83
+ input_tokens INTEGER,
84
+ output_tokens INTEGER
85
+ );
86
+
87
+ CREATE INDEX IF NOT EXISTS idx_timeline_session ON timeline_events(session_id);
88
+ CREATE INDEX IF NOT EXISTS idx_timeline_timestamp ON timeline_events(session_id, timestamp);
89
+ CREATE INDEX IF NOT EXISTS idx_sessions_project ON sessions(project_name);
90
+ CREATE INDEX IF NOT EXISTS idx_sessions_started ON sessions(started_at DESC);
91
+ CREATE INDEX IF NOT EXISTS idx_live_timeline_root ON live_timeline_events(root_session_id);
92
+ `);
93
+ if (currentVersion === 0) {
94
+ this.db.prepare("INSERT INTO schema_version (version) VALUES (?)").run(SCHEMA_VERSION);
95
+ } else {
96
+ this.db.prepare("UPDATE schema_version SET version = ?").run(SCHEMA_VERSION);
97
+ }
98
+ }
99
+ }
100
+ /** Save a complete recorded session with its timeline */
101
+ saveSession(session, timeline) {
102
+ const insertSession = this.db.prepare(`
103
+ INSERT OR REPLACE INTO sessions (
104
+ id, source, root_session_id, project_name, project_path,
105
+ started_at, ended_at, duration_ms,
106
+ total_cost, total_input_tokens, total_output_tokens,
107
+ total_cache_read_tokens, total_cache_creation_tokens,
108
+ total_tool_uses, agent_count, model, label, tags,
109
+ agents_json, tool_chain_json
110
+ ) VALUES (
111
+ ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?
112
+ )
113
+ `);
114
+ const insertEvent = this.db.prepare(`
115
+ INSERT INTO timeline_events (
116
+ session_id, timestamp, agent_id, kind, zone, tool, tool_args,
117
+ text_content, input_tokens, output_tokens
118
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
119
+ `);
120
+ const txn = this.db.transaction(() => {
121
+ this.db.prepare("DELETE FROM timeline_events WHERE session_id = ?").run(session.id);
122
+ insertSession.run(session.id, session.source, session.rootSessionId, session.projectName, session.projectPath, session.startedAt, session.endedAt, session.durationMs, session.totalCost, session.totalInputTokens, session.totalOutputTokens, session.totalCacheReadTokens, session.totalCacheCreationTokens, session.totalToolUses, session.agentCount, session.model, session.label, JSON.stringify(session.tags), JSON.stringify(session.agents), JSON.stringify(session.toolChain));
123
+ for (const evt of timeline) {
124
+ insertEvent.run(session.id, evt.timestamp, evt.agentId, evt.kind, evt.zone ?? null, evt.tool ?? null, evt.toolArgs ?? null, evt.text ?? null, evt.inputTokens ?? null, evt.outputTokens ?? null);
125
+ }
126
+ });
127
+ txn();
128
+ }
129
+ /** List sessions with optional filtering */
130
+ listSessions(opts) {
131
+ const limit = opts?.limit ?? 50;
132
+ const offset = opts?.offset ?? 0;
133
+ let sql = `SELECT id, source, project_name, started_at, ended_at, duration_ms,
134
+ total_cost, total_tool_uses, agent_count, model, label, tags
135
+ FROM sessions`;
136
+ const params = [];
137
+ if (opts?.project) {
138
+ sql += " WHERE project_name = ?";
139
+ params.push(opts.project);
140
+ }
141
+ sql += " ORDER BY started_at DESC LIMIT ? OFFSET ?";
142
+ params.push(limit, offset);
143
+ const rows = this.db.prepare(sql).all(...params);
144
+ return rows.map((r) => ({
145
+ id: r.id,
146
+ source: r.source,
147
+ projectName: r.project_name,
148
+ startedAt: r.started_at,
149
+ endedAt: r.ended_at,
150
+ durationMs: r.duration_ms,
151
+ totalCost: r.total_cost,
152
+ totalToolUses: r.total_tool_uses,
153
+ agentCount: r.agent_count,
154
+ model: r.model,
155
+ label: r.label,
156
+ tags: JSON.parse(r.tags)
157
+ }));
158
+ }
159
+ /** Get a full session by ID (without timeline) */
160
+ getSession(id) {
161
+ const row = this.db.prepare("SELECT * FROM sessions WHERE id = ?").get(id);
162
+ if (!row)
163
+ return null;
164
+ return {
165
+ id: row.id,
166
+ source: row.source,
167
+ rootSessionId: row.root_session_id,
168
+ projectName: row.project_name,
169
+ projectPath: row.project_path,
170
+ startedAt: row.started_at,
171
+ endedAt: row.ended_at,
172
+ durationMs: row.duration_ms,
173
+ totalCost: row.total_cost,
174
+ totalInputTokens: row.total_input_tokens,
175
+ totalOutputTokens: row.total_output_tokens,
176
+ totalCacheReadTokens: row.total_cache_read_tokens,
177
+ totalCacheCreationTokens: row.total_cache_creation_tokens,
178
+ totalToolUses: row.total_tool_uses,
179
+ agentCount: row.agent_count,
180
+ model: row.model,
181
+ label: row.label,
182
+ tags: JSON.parse(row.tags),
183
+ agents: JSON.parse(row.agents_json),
184
+ toolChain: JSON.parse(row.tool_chain_json)
185
+ };
186
+ }
187
+ /** Get timeline events for a session */
188
+ getTimeline(sessionId, opts) {
189
+ const limit = opts?.limit ?? 1e4;
190
+ const offset = opts?.offset ?? 0;
191
+ const rows = this.db.prepare(`
192
+ SELECT timestamp, agent_id, kind, zone, tool, tool_args, text_content,
193
+ input_tokens, output_tokens
194
+ FROM timeline_events
195
+ WHERE session_id = ?
196
+ ORDER BY timestamp ASC
197
+ LIMIT ? OFFSET ?
198
+ `).all(sessionId, limit, offset);
199
+ return rows.map((r) => ({
200
+ timestamp: r.timestamp,
201
+ agentId: r.agent_id,
202
+ kind: r.kind,
203
+ ...r.zone && { zone: r.zone },
204
+ ...r.tool && { tool: r.tool },
205
+ ...r.tool_args && { toolArgs: r.tool_args },
206
+ ...r.text_content && { text: r.text_content },
207
+ ...r.input_tokens != null && { inputTokens: r.input_tokens },
208
+ ...r.output_tokens != null && { outputTokens: r.output_tokens }
209
+ }));
210
+ }
211
+ /** Delete a session and its timeline */
212
+ deleteSession(id) {
213
+ let changed = false;
214
+ this.db.transaction(() => {
215
+ this.db.prepare("DELETE FROM timeline_events WHERE session_id = ?").run(id);
216
+ const result = this.db.prepare("DELETE FROM sessions WHERE id = ?").run(id);
217
+ changed = result.changes > 0;
218
+ })();
219
+ return changed;
220
+ }
221
+ /** Update session label */
222
+ updateLabel(id, label) {
223
+ const result = this.db.prepare("UPDATE sessions SET label = ? WHERE id = ?").run(label, id);
224
+ return result.changes > 0;
225
+ }
226
+ /** Update session tags */
227
+ updateTags(id, tags) {
228
+ const result = this.db.prepare("UPDATE sessions SET tags = ? WHERE id = ?").run(JSON.stringify(tags), id);
229
+ return result.changes > 0;
230
+ }
231
+ /** Get total session count (for pagination) */
232
+ getSessionCount(project) {
233
+ if (project) {
234
+ const row2 = this.db.prepare("SELECT COUNT(*) as count FROM sessions WHERE project_name = ?").get(project);
235
+ return row2.count;
236
+ }
237
+ const row = this.db.prepare("SELECT COUNT(*) as count FROM sessions").get();
238
+ return row.count;
239
+ }
240
+ // ── Live session methods (incremental writes for crash safety) ──
241
+ /** Create or update a live session entry */
242
+ upsertLiveSession(rootSessionId, data) {
243
+ this.db.prepare(`
244
+ INSERT INTO live_sessions (root_session_id, session_id, source, project_name, project_path, started_at, last_activity_at)
245
+ VALUES (?, ?, ?, ?, ?, ?, ?)
246
+ ON CONFLICT(root_session_id) DO UPDATE SET
247
+ session_id = excluded.session_id,
248
+ source = excluded.source,
249
+ project_name = excluded.project_name,
250
+ project_path = excluded.project_path,
251
+ last_activity_at = excluded.last_activity_at
252
+ `).run(rootSessionId, data.sessionId, data.source, data.projectName, data.projectPath, data.startedAt, Date.now());
253
+ }
254
+ /** Update the agent snapshot for a live session */
255
+ updateLiveAgents(rootSessionId, agentsJson) {
256
+ this.db.prepare(`
257
+ UPDATE live_sessions SET agents_json = ?, last_activity_at = ? WHERE root_session_id = ?
258
+ `).run(agentsJson, Date.now(), rootSessionId);
259
+ }
260
+ /** Append a timeline event to the live buffer */
261
+ appendLiveTimelineEvent(rootSessionId, evt) {
262
+ this.db.prepare(`
263
+ INSERT INTO live_timeline_events (root_session_id, timestamp, agent_id, kind, zone, tool, tool_args, text_content, input_tokens, output_tokens)
264
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
265
+ `).run(rootSessionId, evt.timestamp, evt.agentId, evt.kind, evt.zone ?? null, evt.tool ?? null, evt.toolArgs ?? null, evt.text ?? null, evt.inputTokens ?? null, evt.outputTokens ?? null);
266
+ }
267
+ /** Get all live timeline events for a root session */
268
+ getLiveTimeline(rootSessionId) {
269
+ const rows = this.db.prepare(`
270
+ SELECT timestamp, agent_id, kind, zone, tool, tool_args, text_content, input_tokens, output_tokens
271
+ FROM live_timeline_events WHERE root_session_id = ? ORDER BY timestamp ASC
272
+ `).all(rootSessionId);
273
+ return rows.map((r) => ({
274
+ timestamp: r.timestamp,
275
+ agentId: r.agent_id,
276
+ kind: r.kind,
277
+ ...r.zone && { zone: r.zone },
278
+ ...r.tool && { tool: r.tool },
279
+ ...r.tool_args && { toolArgs: r.tool_args },
280
+ ...r.text_content && { text: r.text_content },
281
+ ...r.input_tokens != null && { inputTokens: r.input_tokens },
282
+ ...r.output_tokens != null && { outputTokens: r.output_tokens }
283
+ }));
284
+ }
285
+ /** Remove live session data after finalization (atomic to prevent orphans on crash) */
286
+ removeLiveSession(rootSessionId) {
287
+ this.db.transaction(() => {
288
+ this.db.prepare("DELETE FROM live_timeline_events WHERE root_session_id = ?").run(rootSessionId);
289
+ this.db.prepare("DELETE FROM live_sessions WHERE root_session_id = ?").run(rootSessionId);
290
+ })();
291
+ }
292
+ /** List currently active (in-progress) live sessions */
293
+ listLiveSessions() {
294
+ const rows = this.db.prepare("SELECT root_session_id, source, project_name, started_at, last_activity_at, agents_json FROM live_sessions ORDER BY started_at DESC").all();
295
+ return rows.map((r) => {
296
+ let agentCount = 0;
297
+ try {
298
+ agentCount = JSON.parse(r.agents_json).length;
299
+ } catch {
300
+ }
301
+ return {
302
+ rootSessionId: r.root_session_id,
303
+ source: r.source,
304
+ projectName: r.project_name,
305
+ startedAt: r.started_at,
306
+ lastActivityAt: r.last_activity_at,
307
+ agentCount
308
+ };
309
+ });
310
+ }
311
+ /** Get all orphaned live sessions (for crash recovery on startup) */
312
+ getOrphanedLiveSessions() {
313
+ return this.db.prepare("SELECT * FROM live_sessions").all().map((r) => ({
314
+ rootSessionId: r.root_session_id,
315
+ sessionId: r.session_id,
316
+ source: r.source,
317
+ projectName: r.project_name,
318
+ projectPath: r.project_path,
319
+ startedAt: r.started_at,
320
+ lastActivityAt: r.last_activity_at,
321
+ agentsJson: r.agents_json
322
+ }));
323
+ }
324
+ close() {
325
+ this.db.close();
326
+ }
327
+ };
328
+ export {
329
+ SessionStore
330
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-store.js","sourceRoot":"","sources":["../../src/storage/session-store.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,19 @@ export declare class OpenCodeWatcher implements AgentWatcher {
26
26
  private seenCallIds;
27
27
  /** row id → true — deduplicates text/token events */
28
28
  private seenIds;
29
+ /**
30
+ * Per-session idle timers: after step-finish, if no new step-start
31
+ * arrives within this window, call hookStop to idle the agent.
32
+ */
33
+ private stepFinishTimers;
34
+ private static readonly STEP_FINISH_IDLE_MS;
35
+ /**
36
+ * Per-session shutdown timers: after step-finish, if no new activity
37
+ * arrives within this longer window, call hookSessionEnd to fully shut
38
+ * down the agent and finalize the session. This handles /exit and closed terminals.
39
+ */
40
+ private sessionEndTimers;
41
+ private static readonly SESSION_END_MS;
29
42
  private stmtAllSessions;
30
43
  private stmtRecentSessions;
31
44
  private stmtMessagesBySession;
@@ -42,6 +55,8 @@ export declare class OpenCodeWatcher implements AgentWatcher {
42
55
  private poll;
43
56
  private processMessageRow;
44
57
  private processPartRow;
58
+ private cancelStepFinishTimer;
59
+ private cancelSessionEndTimer;
45
60
  private getSessionInfo;
46
61
  private prefixed;
47
62
  private fallbackSession;
@@ -1 +1 @@
1
- {"version":3,"file":"opencode-watcher.d.ts","sourceRoot":"","sources":["../../../src/watcher/opencode/opencode-watcher.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAU5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAkBxD;;;;;;;;GAQG;AACH,qBAAa,eAAgB,YAAW,YAAY;IA2BtC,OAAO,CAAC,YAAY;IA1BhC,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,EAAE,CAAkC;IAC5C,OAAO,CAAC,MAAM,CAAwB;IAEtC,uDAAuD;IACvD,OAAO,CAAC,aAAa,CAAK;IAC1B,oFAAoF;IACpF,OAAO,CAAC,iBAAiB,CAAK;IAE9B,oCAAoC;IACpC,OAAO,CAAC,QAAQ,CAAkC;IAClD,4CAA4C;IAC5C,OAAO,CAAC,QAAQ,CAA0C;IAC1D,gEAAgE;IAChE,OAAO,CAAC,WAAW,CAAqB;IACxC,qDAAqD;IACrD,OAAO,CAAC,OAAO,CAAqB;IAGpC,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,qBAAqB,CAAsB;IACnD,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,YAAY,CAAsB;gBAEtB,YAAY,EAAE,iBAAiB;IAE7C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA+C5B,IAAI;IAWJ,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,IAAI;IAkCZ,OAAO,CAAC,iBAAiB;IA2BzB,OAAO,CAAC,cAAc;IA2CtB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,eAAe;CAGxB"}
1
+ {"version":3,"file":"opencode-watcher.d.ts","sourceRoot":"","sources":["../../../src/watcher/opencode/opencode-watcher.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAU5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAkBxD;;;;;;;;GAQG;AACH,qBAAa,eAAgB,YAAW,YAAY;IAwCtC,OAAO,CAAC,YAAY;IAvChC,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,EAAE,CAAkC;IAC5C,OAAO,CAAC,MAAM,CAAwB;IAEtC,uDAAuD;IACvD,OAAO,CAAC,aAAa,CAAK;IAC1B,oFAAoF;IACpF,OAAO,CAAC,iBAAiB,CAAK;IAE9B,oCAAoC;IACpC,OAAO,CAAC,QAAQ,CAAkC;IAClD,4CAA4C;IAC5C,OAAO,CAAC,QAAQ,CAA0C;IAC1D,gEAAgE;IAChE,OAAO,CAAC,WAAW,CAAqB;IACxC,qDAAqD;IACrD,OAAO,CAAC,OAAO,CAAqB;IACpC;;;OAGG;IACH,OAAO,CAAC,gBAAgB,CAAoD;IAC5E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAQ;IACnD;;;;OAIG;IACH,OAAO,CAAC,gBAAgB,CAAoD;IAC5E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAW;IAGjD,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,qBAAqB,CAAsB;IACnD,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,YAAY,CAAsB;gBAEtB,YAAY,EAAE,iBAAiB;IAE7C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA+C5B,IAAI;IAeJ,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,IAAI;IAkCZ,OAAO,CAAC,iBAAiB;IA4BzB,OAAO,CAAC,cAAc;IAsEtB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,eAAe;CAGxB"}
@@ -342,7 +342,7 @@ var OpenCodeParser = class {
342
342
  };
343
343
  }
344
344
  };
345
- var OpenCodeWatcher = class {
345
+ var OpenCodeWatcher = class _OpenCodeWatcher {
346
346
  stateManager;
347
347
  watcher = null;
348
348
  db = null;
@@ -359,6 +359,19 @@ var OpenCodeWatcher = class {
359
359
  seenCallIds = /* @__PURE__ */ new Set();
360
360
  /** row id → true — deduplicates text/token events */
361
361
  seenIds = /* @__PURE__ */ new Set();
362
+ /**
363
+ * Per-session idle timers: after step-finish, if no new step-start
364
+ * arrives within this window, call hookStop to idle the agent.
365
+ */
366
+ stepFinishTimers = /* @__PURE__ */ new Map();
367
+ static STEP_FINISH_IDLE_MS = 4e3;
368
+ /**
369
+ * Per-session shutdown timers: after step-finish, if no new activity
370
+ * arrives within this longer window, call hookSessionEnd to fully shut
371
+ * down the agent and finalize the session. This handles /exit and closed terminals.
372
+ */
373
+ sessionEndTimers = /* @__PURE__ */ new Map();
374
+ static SESSION_END_MS = 18e4;
362
375
  // Prepared statements (initialised after DB opens)
363
376
  stmtAllSessions;
364
377
  stmtRecentSessions;
@@ -409,6 +422,12 @@ var OpenCodeWatcher = class {
409
422
  this.messages.clear();
410
423
  this.seenCallIds.clear();
411
424
  this.seenIds.clear();
425
+ for (const t of this.stepFinishTimers.values())
426
+ clearTimeout(t);
427
+ this.stepFinishTimers.clear();
428
+ for (const t of this.sessionEndTimers.values())
429
+ clearTimeout(t);
430
+ this.sessionEndTimers.clear();
412
431
  }
413
432
  // ── Prepared statements ────────────────────────────────────────────────────
414
433
  prepareStatements() {
@@ -497,8 +516,11 @@ var OpenCodeWatcher = class {
497
516
  const activity = this.parser.parseTokenUsage(data);
498
517
  if (!activity)
499
518
  return;
519
+ const prefixedId = this.prefixed(row.session_id);
520
+ this.cancelStepFinishTimer(prefixedId);
521
+ this.cancelSessionEndTimer(prefixedId);
500
522
  const sessionInfo = this.getSessionInfo(row.session_id);
501
- this.stateManager.processMessage(this.prefixed(row.session_id), activity, sessionInfo);
523
+ this.stateManager.processMessage(prefixedId, activity, sessionInfo);
502
524
  }
503
525
  processPartRow(row) {
504
526
  let data;
@@ -512,7 +534,25 @@ var OpenCodeWatcher = class {
512
534
  if (this.seenIds.has(row.id))
513
535
  return;
514
536
  this.seenIds.add(row.id);
515
- this.stateManager.heartbeat(this.prefixed(row.session_id));
537
+ const prefixedId2 = this.prefixed(row.session_id);
538
+ if (data.type === "step-start") {
539
+ this.cancelStepFinishTimer(prefixedId2);
540
+ this.cancelSessionEndTimer(prefixedId2);
541
+ this.stateManager.heartbeat(prefixedId2);
542
+ } else {
543
+ this.cancelStepFinishTimer(prefixedId2);
544
+ this.cancelSessionEndTimer(prefixedId2);
545
+ const idleTimer = setTimeout(() => {
546
+ this.stepFinishTimers.delete(prefixedId2);
547
+ this.stateManager.hookStop(prefixedId2);
548
+ }, _OpenCodeWatcher.STEP_FINISH_IDLE_MS);
549
+ this.stepFinishTimers.set(prefixedId2, idleTimer);
550
+ const endTimer = setTimeout(() => {
551
+ this.sessionEndTimers.delete(prefixedId2);
552
+ this.stateManager.hookSessionEnd(prefixedId2);
553
+ }, _OpenCodeWatcher.SESSION_END_MS);
554
+ this.sessionEndTimers.set(prefixedId2, endTimer);
555
+ }
516
556
  return;
517
557
  }
518
558
  if (data.type === "tool" && data.callID) {
@@ -527,10 +567,27 @@ var OpenCodeWatcher = class {
527
567
  const activity = this.parser.parsePart(data, messageData);
528
568
  if (!activity)
529
569
  return;
570
+ const prefixedId = this.prefixed(row.session_id);
571
+ this.cancelStepFinishTimer(prefixedId);
572
+ this.cancelSessionEndTimer(prefixedId);
530
573
  const sessionInfo = this.getSessionInfo(row.session_id);
531
- this.stateManager.processMessage(this.prefixed(row.session_id), activity, sessionInfo);
574
+ this.stateManager.processMessage(prefixedId, activity, sessionInfo);
532
575
  }
533
576
  // ── Helpers ────────────────────────────────────────────────────────────────
577
+ cancelStepFinishTimer(prefixedId) {
578
+ const timer = this.stepFinishTimers.get(prefixedId);
579
+ if (timer) {
580
+ clearTimeout(timer);
581
+ this.stepFinishTimers.delete(prefixedId);
582
+ }
583
+ }
584
+ cancelSessionEndTimer(prefixedId) {
585
+ const timer = this.sessionEndTimers.get(prefixedId);
586
+ if (timer) {
587
+ clearTimeout(timer);
588
+ this.sessionEndTimers.delete(prefixedId);
589
+ }
590
+ }
534
591
  getSessionInfo(sessionId) {
535
592
  const cached = this.sessions.get(sessionId);
536
593
  if (cached)
@@ -1 +1 @@
1
- {"version":3,"file":"opencode-watcher.js","sourceRoot":"","sources":["../../../src/watcher/opencode/opencode-watcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opencode-watcher.js","sourceRoot":"","sources":["../../../src/watcher/opencode/opencode-watcher.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"broadcaster.d.ts","sourceRoot":"","sources":["../../src/ws/broadcaster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAA6E,MAAM,oBAAoB,CAAC;AAEnI,qBAAa,WAAW;IAIV,OAAO,CAAC,YAAY;IAHhC,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,cAAc,CAA0I;gBAE5I,YAAY,EAAE,iBAAiB,EAAE,WAAW,CAAC,EAAE,gBAAgB;IAiFnF,SAAS,CAAC,EAAE,EAAE,SAAS;IAiDvB,oDAAoD;IACpD,oBAAoB,IAAI,IAAI;IAI5B,0CAA0C;IAC1C,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI;IAMzD,OAAO,IAAI,IAAI;IAQf,OAAO,CAAC,SAAS;CAYlB"}
1
+ {"version":3,"file":"broadcaster.d.ts","sourceRoot":"","sources":["../../src/ws/broadcaster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAA6E,MAAM,oBAAoB,CAAC;AAEnI,qBAAa,WAAW;IAIV,OAAO,CAAC,YAAY;IAHhC,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,cAAc,CAA0I;gBAE5I,YAAY,EAAE,iBAAiB,EAAE,WAAW,CAAC,EAAE,gBAAgB;IAiFnF,SAAS,CAAC,EAAE,EAAE,SAAS;IA4BvB,oDAAoD;IACpD,oBAAoB,IAAI,IAAI;IAI5B,0CAA0C;IAC1C,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI;IAMzD,OAAO,IAAI,IAAI;IAQf,OAAO,CAAC,SAAS;CAYlB"}