@sumicom/quicksave 0.6.3 → 0.6.4

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 (55) hide show
  1. package/dist/ai/cardBuilder.d.ts +27 -0
  2. package/dist/ai/cardBuilder.d.ts.map +1 -1
  3. package/dist/ai/cardBuilder.js +69 -0
  4. package/dist/ai/cardBuilder.js.map +1 -1
  5. package/dist/ai/claudeCliProvider.d.ts +1 -0
  6. package/dist/ai/claudeCliProvider.d.ts.map +1 -1
  7. package/dist/ai/claudeCliProvider.js +136 -19
  8. package/dist/ai/claudeCliProvider.js.map +1 -1
  9. package/dist/ai/claudeSdkProvider.d.ts.map +1 -1
  10. package/dist/ai/claudeSdkProvider.js +17 -6
  11. package/dist/ai/claudeSdkProvider.js.map +1 -1
  12. package/dist/ai/commitSummary.d.ts.map +1 -1
  13. package/dist/ai/commitSummary.js +37 -9
  14. package/dist/ai/commitSummary.js.map +1 -1
  15. package/dist/ai/commitSummaryCli.d.ts +67 -0
  16. package/dist/ai/commitSummaryCli.d.ts.map +1 -0
  17. package/dist/ai/commitSummaryCli.js +416 -0
  18. package/dist/ai/commitSummaryCli.js.map +1 -0
  19. package/dist/ai/commitSummaryStore.d.ts +53 -0
  20. package/dist/ai/commitSummaryStore.d.ts.map +1 -0
  21. package/dist/ai/commitSummaryStore.js +136 -0
  22. package/dist/ai/commitSummaryStore.js.map +1 -0
  23. package/dist/ai/provider.d.ts +7 -2
  24. package/dist/ai/provider.d.ts.map +1 -1
  25. package/dist/ai/sessionManager.d.ts +14 -2
  26. package/dist/ai/sessionManager.d.ts.map +1 -1
  27. package/dist/ai/sessionManager.js +141 -30
  28. package/dist/ai/sessionManager.js.map +1 -1
  29. package/dist/config.d.ts +4 -0
  30. package/dist/config.d.ts.map +1 -1
  31. package/dist/config.js +15 -5
  32. package/dist/config.js.map +1 -1
  33. package/dist/handlers/messageHandler.d.ts +32 -0
  34. package/dist/handlers/messageHandler.d.ts.map +1 -1
  35. package/dist/handlers/messageHandler.js +386 -164
  36. package/dist/handlers/messageHandler.js.map +1 -1
  37. package/dist/index.js +3 -3
  38. package/dist/index.js.map +1 -1
  39. package/dist/service/ipcClient.js +1 -1
  40. package/dist/service/pushClient.d.ts +69 -0
  41. package/dist/service/pushClient.d.ts.map +1 -0
  42. package/dist/service/pushClient.js +119 -0
  43. package/dist/service/pushClient.js.map +1 -0
  44. package/dist/service/run.d.ts.map +1 -1
  45. package/dist/service/run.js +102 -15
  46. package/dist/service/run.js.map +1 -1
  47. package/dist/service/types.d.ts +1 -0
  48. package/dist/service/types.d.ts.map +1 -1
  49. package/dist/service/types.js +1 -1
  50. package/dist/service/types.js.map +1 -1
  51. package/dist/storage/eventStore.d.ts +65 -0
  52. package/dist/storage/eventStore.d.ts.map +1 -0
  53. package/dist/storage/eventStore.js +122 -0
  54. package/dist/storage/eventStore.js.map +1 -0
  55. package/package.json +5 -2
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/service/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA8BH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAqR/C"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/service/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAgCH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAkX/C"}
@@ -20,13 +20,15 @@ import { MessageHandler } from '../handlers/messageHandler.js';
20
20
  import { GitOperations } from '../git/operations.js';
21
21
  import { IpcServer } from './ipcServer.js';
22
22
  import { DebugHttpServer } from './debugHttpServer.js';
23
+ import { PushClient, httpBaseFromSignalingUrl } from './pushClient.js';
23
24
  import { acquireLock, ensureDirectories, getSocketPath, getRunDir, cleanStaleRuntime, } from './singleton.js';
24
25
  import { writeServiceState, removeServiceState } from './stateStore.js';
25
26
  import { IPC_VERSION, BUILD_ID, isDebugEnabled } from './types.js';
26
27
  import { createMessage } from '@sumicom/quicksave-shared';
27
28
  import { getSessionRegistry } from '../ai/sessionRegistry.js';
29
+ import { getEventStore } from '../storage/eventStore.js';
28
30
  const HEARTBEAT_INTERVAL_MS = 30_000;
29
- const PACKAGE_VERSION = '0.6.3';
31
+ const PACKAGE_VERSION = '0.6.4';
30
32
  export async function runDaemon() {
31
33
  ensureDirectories();
32
34
  // Prevent unhandled rejections from silently killing the daemon
@@ -66,6 +68,14 @@ export async function runDaemon() {
66
68
  });
67
69
  const isProduction = !BUILD_ID.startsWith('dev-');
68
70
  const messageHandler = new MessageHandler(validRepos, config.license, codingPaths, isProduction);
71
+ // Signed HTTP side-channel to the relay for Web Push. The relay's default
72
+ // push HTTP origin is derived from the signaling URL; PWAs may override per
73
+ // offer for dev/staging relays.
74
+ const pushClient = new PushClient({
75
+ signKeyPair: config.signKeyPair,
76
+ defaultRelayHttpUrl: httpBaseFromSignalingUrl(config.signalingServer),
77
+ });
78
+ messageHandler.setPushClient(pushClient);
69
79
  // Self-restart after update: spawn a detached launcher that
70
80
  // 1. sanity-checks the new binary (--version)
71
81
  // 2. only then kills the old daemon
@@ -105,26 +115,95 @@ export async function runDaemon() {
105
115
  connection.sendToSession(event.sessionId, createMessage('claude:card-event', event));
106
116
  });
107
117
  claudeService.on('card-stream-end', (result) => {
108
- connection.sendToSession(result.sessionId, createMessage('claude:card-stream-end', result));
109
- // Update session registry with cost/message count
118
+ const peersSent = connection.sendToSession(result.sessionId, createMessage('claude:card-stream-end', result));
119
+ // Web Push trigger: session went idle while no PWA is watching. Skip when
120
+ // the turn paused for user input — the user-input-request handler already
121
+ // notified (and the `tag` would collapse anyway, but the extra round-trip
122
+ // is wasted). Also skip when the agent was explicitly interrupted.
123
+ if (peersSent === 0
124
+ && !result.interrupted
125
+ && !claudeService.hasPendingInputForSession(result.sessionId)) {
126
+ pushClient.notify(result.sessionId, {
127
+ title: 'Quicksave',
128
+ body: 'Session is ready for your next instruction',
129
+ tag: result.sessionId,
130
+ agentId: config.agentId,
131
+ }).catch((err) => console.warn('[push] notify (idle) failed', err));
132
+ }
110
133
  const cwd = claudeService.getSessionCwd(result.sessionId);
111
- if (cwd) {
112
- const registry = getSessionRegistry();
113
- const entry = registry.getEntry(cwd, result.sessionId);
114
- if (entry) {
115
- registry.updateEntry(cwd, result.sessionId, {
116
- messageCount: (entry.messageCount ?? 0) + 1,
117
- totalCostUsd: (entry.totalCostUsd ?? 0) + (result.totalCostUsd ?? 0),
118
- lastAccessedAt: Date.now(),
119
- });
134
+ const inputTokens = result.tokenUsage?.input ?? 0;
135
+ const outputTokens = result.tokenUsage?.output ?? 0;
136
+ const cacheCreationTokens = result.tokenUsage?.cacheCreation ?? 0;
137
+ const cacheReadTokens = result.tokenUsage?.cacheRead ?? 0;
138
+ const costUsd = result.totalCostUsd ?? 0;
139
+ // Fetch the CLI's context-window breakdown before recording the turn.
140
+ // Only the Claude Code CLI responds; other providers return null quickly.
141
+ // Fire-and-record to avoid blocking the peer notification above.
142
+ (async () => {
143
+ const contextUsage = await claudeService.getSessionContextUsage(result.sessionId).catch(() => null);
144
+ getEventStore().record({
145
+ type: 'turn_ended',
146
+ sessionId: result.sessionId,
147
+ cwd: cwd ?? null,
148
+ data: {
149
+ success: result.success,
150
+ interrupted: result.interrupted ?? false,
151
+ error: result.error,
152
+ inputTokens,
153
+ outputTokens,
154
+ cacheCreationTokens,
155
+ cacheReadTokens,
156
+ costUsd,
157
+ ...(contextUsage ? { contextUsage: { ...contextUsage, capturedAt: Date.now() } } : {}),
158
+ },
159
+ });
160
+ // Update session registry with cost/message count
161
+ if (cwd) {
162
+ const registry = getSessionRegistry();
163
+ const entry = registry.getEntry(cwd, result.sessionId);
164
+ if (entry) {
165
+ registry.updateEntry(cwd, result.sessionId, {
166
+ messageCount: (entry.messageCount ?? 0) + 1,
167
+ totalCostUsd: (entry.totalCostUsd ?? 0) + costUsd,
168
+ lastAccessedAt: Date.now(),
169
+ });
170
+ }
120
171
  }
121
- }
172
+ })().catch((err) => {
173
+ console.error(`[turn_ended] failed to record turn for session=${result.sessionId.slice(0, 8)}:`, err);
174
+ });
122
175
  });
123
176
  claudeService.on('user-input-request', (request) => {
124
- connection.sendToSession(request.sessionId, createMessage('claude:user-input-request', request));
177
+ const peersSent = connection.sendToSession(request.sessionId, createMessage('claude:user-input-request', request));
178
+ // Web Push trigger: agent is blocked on user input and nobody is watching.
179
+ if (peersSent === 0) {
180
+ const body = request.inputType === 'permission'
181
+ ? 'Permission required to continue'
182
+ : 'Input required to continue';
183
+ pushClient.notify(request.sessionId, {
184
+ title: request.title || 'Quicksave',
185
+ body,
186
+ tag: request.sessionId,
187
+ agentId: config.agentId,
188
+ }).catch((err) => console.warn('[push] notify (input-request) failed', err));
189
+ }
190
+ getEventStore().record({
191
+ type: 'permission_requested',
192
+ sessionId: request.sessionId,
193
+ data: {
194
+ requestId: request.requestId,
195
+ inputType: request.inputType,
196
+ title: request.title,
197
+ },
198
+ });
125
199
  });
126
200
  claudeService.on('user-input-resolved', (info) => {
127
201
  connection.sendToSession(info.sessionId, createMessage('claude:user-input-resolved', info));
202
+ getEventStore().record({
203
+ type: 'permission_resolved',
204
+ sessionId: info.sessionId,
205
+ data: { requestId: info.requestId },
206
+ });
128
207
  });
129
208
  claudeService.on('session-updated', (info) => {
130
209
  // session-updated goes to all peers (needed for session list status dots)
@@ -136,6 +215,12 @@ export async function runDaemon() {
136
215
  claudeService.on('session-config-updated', (payload) => {
137
216
  connection.broadcast(createMessage('session:config-updated', payload));
138
217
  });
218
+ // Per-repo commit-summary state (agent-owned, broadcast to all peers so each
219
+ // PWA can mirror the pending suggestion + generation progress).
220
+ const commitSummaryStore = messageHandler.getCommitSummaryStore();
221
+ commitSummaryStore.on('state-updated', (state) => {
222
+ connection.broadcast(createMessage('ai:commit-summary:updated', state));
223
+ });
139
224
  // Init preferences from the last session's JSONL (best-effort, non-blocking)
140
225
  claudeService.initPreferences().catch(() => { });
141
226
  // Init session registry (loads all entries from disk)
@@ -281,10 +366,12 @@ export async function runDaemon() {
281
366
  function registerDaemonMethods(ipcServer, connection, messageHandler, config) {
282
367
  // get-pairing-info
283
368
  ipcServer.registerMethod('get-pairing-info', () => {
284
- const pairingUrl = `https://quicksave.dev/#/connect/${config.agentId}?pk=${encodeURIComponent(config.keyPair.publicKey)}&name=${encodeURIComponent(hostname())}`;
369
+ const signPk = config.signKeyPair.publicKey;
370
+ const pairingUrl = `https://quicksave.dev/#/connect/${config.agentId}?pk=${encodeURIComponent(config.keyPair.publicKey)}&spk=${encodeURIComponent(signPk)}&name=${encodeURIComponent(hostname())}`;
285
371
  return {
286
372
  agentId: config.agentId,
287
373
  publicKey: config.keyPair.publicKey,
374
+ signPublicKey: signPk,
288
375
  pairingUrl,
289
376
  connectionState: connection.hasPeers() ? 'connected' : 'disconnected',
290
377
  peerCount: connection.getPeerCount(),
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/service/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/service/run.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,7 @@ export interface ServiceState {
87
87
  export interface PairingInfoResult {
88
88
  agentId: string;
89
89
  publicKey: string;
90
+ signPublicKey: string;
90
91
  pairingUrl: string;
91
92
  connectionState: 'connected' | 'connecting' | 'disconnected';
92
93
  peerCount: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/service/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/service/types.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ export const IPC_VERSION = 1;
18
18
  * In dev mode (placeholder unreplaced), hashes source file mtimes so the
19
19
  * value only changes when code actually changes — avoids spurious daemon restarts.
20
20
  */
21
- const _PLACEHOLDER = '41525c7e5f3f';
21
+ const _PLACEHOLDER = '00fb68129cfe';
22
22
  export const BUILD_ID = _PLACEHOLDER === '__BUILD' + '_ID__'
23
23
  ? devBuildId()
24
24
  : _PLACEHOLDER;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/service/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/service/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,oDAAoD;AACpD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC;AAE7B;;;;GAIG;AACH,MAAM,YAAY,GAAG,cAAc,CAAC;AACpC,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,KAAK,SAAS,GAAG,OAAO;IAC1D,CAAC,CAAC,UAAU,EAAE;IACd,CAAC,CAAC,YAAY,CAAC;AAEjB,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC,SAAS,IAAI,CAAC,GAAW;YACxB,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC1D,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc;oBAAE,SAAS;gBAClE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,CAAC,CAAC,WAAW,EAAE;oBAAE,IAAI,CAAC,CAAC,CAAC,CAAC;qBACxB,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACX,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAkCD,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,wBAAwB;IACxB,WAAW,EAAE,CAAC,KAAK;IACnB,eAAe,EAAE,CAAC,KAAK;IACvB,gBAAgB,EAAE,CAAC,KAAK;IACxB,cAAc,EAAE,CAAC,KAAK;IAEtB,uBAAuB;IACvB,iBAAiB,EAAE,CAAC,KAAK;IACzB,kBAAkB,EAAE,CAAC,KAAK;IAC1B,mBAAmB,EAAE,CAAC,KAAK;IAC3B,kBAAkB,EAAE,CAAC,KAAK;IAC1B,oBAAoB,EAAE,CAAC,KAAK;CACpB,CAAC;AAgIX,MAAM,UAAU,mBAAmB,CACjC,MAAmB,EACnB,GAA4C;IAE5C,IAAI,MAAM,CAAC,gBAAgB,KAAK,GAAG,CAAC,UAAU,EAAE,CAAC;QAC/C,OAAO,MAAM,CAAC,gBAAgB,GAAG,GAAG,CAAC,UAAU;YAC7C,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE;YACvB,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;IAClC,CAAC;IACD,IAAI,KAAK,EAAE,IAAI,MAAM,CAAC,aAAa,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC;QACpD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC/B,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,KAAK;IACZ,OAAO,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,CAAC;AAC/E,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IACtD,OAAO,KAAK,EAAE,CAAC;AACjB,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Event store — append-only SQLite log of session activity.
3
+ *
4
+ * Storage: ~/.quicksave/state/quicksave.db
5
+ *
6
+ * Schema:
7
+ * events (id, time, session_id, cwd, type, data)
8
+ * Indexes on (session_id, time), (type, time), (time).
9
+ *
10
+ * Intended as a long-lived audit/analytics log. Derived stats (cumulative
11
+ * tokens, cost, last prompt time) are computed via aggregate queries.
12
+ */
13
+ export type EventType = 'prompt_sent' | 'turn_ended' | 'permission_requested' | 'permission_resolved' | 'session_cancelled';
14
+ export interface EventRecord {
15
+ id: number;
16
+ time: number;
17
+ sessionId: string | null;
18
+ cwd: string | null;
19
+ type: EventType;
20
+ data: unknown;
21
+ }
22
+ export interface SessionStats {
23
+ turnCount: number;
24
+ totalInputTokens: number;
25
+ totalOutputTokens: number;
26
+ totalCostUsd: number;
27
+ lastPromptAt: number | null;
28
+ lastTurnEndedAt: number | null;
29
+ }
30
+ export interface LastTurnInfo {
31
+ time: number;
32
+ inputTokens: number;
33
+ outputTokens: number;
34
+ cacheCreationTokens: number;
35
+ cacheReadTokens: number;
36
+ costUsd: number;
37
+ /** Category-level context-window breakdown from the provider. Shape mirrors
38
+ * `ContextUsageBreakdown` in @sumicom/quicksave-shared. Present only when
39
+ * the CLI answered `get_context_usage` successfully at turn end. */
40
+ contextUsage?: unknown;
41
+ }
42
+ export declare class EventStore {
43
+ private db;
44
+ private insertStmt;
45
+ private statsStmt;
46
+ private lastPromptStmt;
47
+ private sessionEventsStmt;
48
+ private lastTurnStmt;
49
+ constructor(dbPath: string);
50
+ record(params: {
51
+ type: EventType;
52
+ sessionId?: string | null;
53
+ cwd?: string | null;
54
+ data?: unknown;
55
+ time?: number;
56
+ }): void;
57
+ getSessionStats(sessionId: string): SessionStats;
58
+ getSessionEvents(sessionId: string, limit?: number, offset?: number): EventRecord[];
59
+ getLastTurn(sessionId: string): LastTurnInfo | null;
60
+ close(): void;
61
+ }
62
+ export declare function getEventStore(): EventStore;
63
+ /** Reset the singleton — only for tests. */
64
+ export declare function resetEventStore(): void;
65
+ //# sourceMappingURL=eventStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventStore.d.ts","sourceRoot":"","sources":["../../src/storage/eventStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,YAAY,GACZ,sBAAsB,GACtB,qBAAqB,GACrB,mBAAmB,CAAC;AAExB,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB;;wEAEoE;IACpE,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAWD,qBAAa,UAAU;IACrB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,YAAY,CAAqB;gBAE7B,MAAM,EAAE,MAAM;IAkD1B,MAAM,CAAC,MAAM,EAAE;QACb,IAAI,EAAE,SAAS,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,IAAI;IAMR,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY;IAmBhD,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAM,EAAE,MAAM,SAAI,GAAG,WAAW,EAAE;IAK3E,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAenD,KAAK,IAAI,IAAI;CAGd;AAeD,wBAAgB,aAAa,IAAI,UAAU,CAK1C;AAED,4CAA4C;AAC5C,wBAAgB,eAAe,IAAI,IAAI,CAGtC"}
@@ -0,0 +1,122 @@
1
+ /**
2
+ * Event store — append-only SQLite log of session activity.
3
+ *
4
+ * Storage: ~/.quicksave/state/quicksave.db
5
+ *
6
+ * Schema:
7
+ * events (id, time, session_id, cwd, type, data)
8
+ * Indexes on (session_id, time), (type, time), (time).
9
+ *
10
+ * Intended as a long-lived audit/analytics log. Derived stats (cumulative
11
+ * tokens, cost, last prompt time) are computed via aggregate queries.
12
+ */
13
+ import Database from 'better-sqlite3';
14
+ import { mkdirSync, existsSync } from 'fs';
15
+ import { join, dirname } from 'path';
16
+ import { getStateDir } from '../service/singleton.js';
17
+ export class EventStore {
18
+ db;
19
+ insertStmt;
20
+ statsStmt;
21
+ lastPromptStmt;
22
+ sessionEventsStmt;
23
+ lastTurnStmt;
24
+ constructor(dbPath) {
25
+ const dir = dirname(dbPath);
26
+ if (!existsSync(dir))
27
+ mkdirSync(dir, { recursive: true });
28
+ this.db = new Database(dbPath);
29
+ this.db.pragma('journal_mode = WAL');
30
+ this.db.pragma('synchronous = NORMAL');
31
+ this.db.exec(`
32
+ CREATE TABLE IF NOT EXISTS events (
33
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
34
+ time INTEGER NOT NULL,
35
+ session_id TEXT,
36
+ cwd TEXT,
37
+ type TEXT NOT NULL,
38
+ data TEXT
39
+ );
40
+ CREATE INDEX IF NOT EXISTS idx_events_session_time ON events(session_id, time);
41
+ CREATE INDEX IF NOT EXISTS idx_events_type_time ON events(type, time);
42
+ CREATE INDEX IF NOT EXISTS idx_events_time ON events(time);
43
+ `);
44
+ this.insertStmt = this.db.prepare('INSERT INTO events (time, session_id, cwd, type, data) VALUES (?, ?, ?, ?, ?)');
45
+ this.statsStmt = this.db.prepare(`
46
+ SELECT
47
+ COUNT(*) AS turnCount,
48
+ COALESCE(SUM(CAST(json_extract(data, '$.inputTokens') AS INTEGER)), 0) AS totalInputTokens,
49
+ COALESCE(SUM(CAST(json_extract(data, '$.outputTokens') AS INTEGER)), 0) AS totalOutputTokens,
50
+ COALESCE(SUM(CAST(json_extract(data, '$.costUsd') AS REAL)), 0) AS totalCostUsd,
51
+ MAX(time) AS lastTurnEndedAt
52
+ FROM events
53
+ WHERE session_id = ? AND type = 'turn_ended'
54
+ `);
55
+ this.lastPromptStmt = this.db.prepare(`SELECT MAX(time) AS lastPromptAt FROM events WHERE session_id = ? AND type = 'prompt_sent'`);
56
+ this.sessionEventsStmt = this.db.prepare(`SELECT id, time, session_id, cwd, type, data FROM events WHERE session_id = ? ORDER BY time ASC, id ASC LIMIT ? OFFSET ?`);
57
+ this.lastTurnStmt = this.db.prepare(`SELECT time, data FROM events WHERE session_id = ? AND type = 'turn_ended' ORDER BY time DESC, id DESC LIMIT 1`);
58
+ }
59
+ record(params) {
60
+ const time = params.time ?? Date.now();
61
+ const data = params.data === undefined ? null : JSON.stringify(params.data);
62
+ this.insertStmt.run(time, params.sessionId ?? null, params.cwd ?? null, params.type, data);
63
+ }
64
+ getSessionStats(sessionId) {
65
+ const turnRow = this.statsStmt.get(sessionId);
66
+ const promptRow = this.lastPromptStmt.get(sessionId);
67
+ return {
68
+ turnCount: turnRow.turnCount,
69
+ totalInputTokens: turnRow.totalInputTokens,
70
+ totalOutputTokens: turnRow.totalOutputTokens,
71
+ totalCostUsd: turnRow.totalCostUsd,
72
+ lastPromptAt: promptRow.lastPromptAt,
73
+ lastTurnEndedAt: turnRow.lastTurnEndedAt,
74
+ };
75
+ }
76
+ getSessionEvents(sessionId, limit = 500, offset = 0) {
77
+ const rows = this.sessionEventsStmt.all(sessionId, limit, offset);
78
+ return rows.map(rowToRecord);
79
+ }
80
+ getLastTurn(sessionId) {
81
+ const row = this.lastTurnStmt.get(sessionId);
82
+ if (!row)
83
+ return null;
84
+ const data = row.data ? JSON.parse(row.data) : {};
85
+ return {
86
+ time: row.time,
87
+ inputTokens: Number(data.inputTokens ?? 0),
88
+ outputTokens: Number(data.outputTokens ?? 0),
89
+ cacheCreationTokens: Number(data.cacheCreationTokens ?? 0),
90
+ cacheReadTokens: Number(data.cacheReadTokens ?? 0),
91
+ costUsd: Number(data.costUsd ?? 0),
92
+ contextUsage: data.contextUsage ?? undefined,
93
+ };
94
+ }
95
+ close() {
96
+ this.db.close();
97
+ }
98
+ }
99
+ function rowToRecord(row) {
100
+ return {
101
+ id: row.id,
102
+ time: row.time,
103
+ sessionId: row.session_id,
104
+ cwd: row.cwd,
105
+ type: row.type,
106
+ data: row.data ? JSON.parse(row.data) : null,
107
+ };
108
+ }
109
+ let instance = null;
110
+ export function getEventStore() {
111
+ if (!instance) {
112
+ instance = new EventStore(join(getStateDir(), 'quicksave.db'));
113
+ }
114
+ return instance;
115
+ }
116
+ /** Reset the singleton — only for tests. */
117
+ export function resetEventStore() {
118
+ if (instance)
119
+ instance.close();
120
+ instance = null;
121
+ }
122
+ //# sourceMappingURL=eventStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventStore.js","sourceRoot":"","sources":["../../src/storage/eventStore.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sumicom/quicksave",
3
- "version": "0.6.3",
3
+ "version": "0.6.4",
4
4
  "description": "Quicksave agent - remote git control CLI",
5
5
  "repository": {
6
6
  "type": "git",
@@ -34,14 +34,17 @@
34
34
  "@anthropic-ai/sdk": "^0.71.2",
35
35
  "@modelcontextprotocol/sdk": "^1.29.0",
36
36
  "@openai/codex-sdk": "^0.120.0",
37
+ "better-sqlite3": "^12.9.0",
37
38
  "commander": "^12.0.0",
38
39
  "qrcode-terminal": "^0.12.0",
39
40
  "simple-git": "^3.22.0",
41
+ "tweetnacl": "^1.0.3",
40
42
  "ws": "^8.16.0",
41
43
  "zod": "^4.3.6",
42
- "@sumicom/quicksave-shared": "0.6.3"
44
+ "@sumicom/quicksave-shared": "0.6.4"
43
45
  },
44
46
  "devDependencies": {
47
+ "@types/better-sqlite3": "^7.6.13",
45
48
  "@types/node": "^20.11.0",
46
49
  "@types/ws": "^8.5.10",
47
50
  "@vitest/coverage-v8": "^1.6.1",