openclaw-cortex-memory 0.1.0-Alpha.8 → 0.1.0-Alpha.9

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 (50) hide show
  1. package/README.md +34 -43
  2. package/SKILL.md +46 -51
  3. package/dist/index.d.ts +24 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +127 -11
  6. package/dist/index.js.map +1 -1
  7. package/dist/openclaw.plugin.json +1 -1
  8. package/dist/src/engine/memory_engine.d.ts +2 -1
  9. package/dist/src/engine/memory_engine.d.ts.map +1 -1
  10. package/dist/src/engine/ts_engine.d.ts +59 -0
  11. package/dist/src/engine/ts_engine.d.ts.map +1 -1
  12. package/dist/src/engine/ts_engine.js +609 -0
  13. package/dist/src/engine/ts_engine.js.map +1 -1
  14. package/dist/src/engine/types.d.ts +7 -0
  15. package/dist/src/engine/types.d.ts.map +1 -1
  16. package/dist/src/session/session_end.d.ts.map +1 -1
  17. package/dist/src/session/session_end.js +18 -4
  18. package/dist/src/session/session_end.js.map +1 -1
  19. package/dist/src/store/archive_store.d.ts +24 -0
  20. package/dist/src/store/archive_store.d.ts.map +1 -1
  21. package/dist/src/store/archive_store.js +217 -24
  22. package/dist/src/store/archive_store.js.map +1 -1
  23. package/dist/src/store/embedding_utils.d.ts +32 -0
  24. package/dist/src/store/embedding_utils.d.ts.map +1 -0
  25. package/dist/src/store/embedding_utils.js +173 -0
  26. package/dist/src/store/embedding_utils.js.map +1 -0
  27. package/dist/src/store/read_store.d.ts +20 -0
  28. package/dist/src/store/read_store.d.ts.map +1 -1
  29. package/dist/src/store/read_store.js +336 -21
  30. package/dist/src/store/read_store.js.map +1 -1
  31. package/dist/src/store/vector_store.d.ts +13 -0
  32. package/dist/src/store/vector_store.d.ts.map +1 -1
  33. package/dist/src/store/vector_store.js +59 -1
  34. package/dist/src/store/vector_store.js.map +1 -1
  35. package/dist/src/store/write_store.d.ts +35 -0
  36. package/dist/src/store/write_store.d.ts.map +1 -1
  37. package/dist/src/store/write_store.js +163 -14
  38. package/dist/src/store/write_store.js.map +1 -1
  39. package/dist/src/sync/session_sync.d.ts +44 -2
  40. package/dist/src/sync/session_sync.d.ts.map +1 -1
  41. package/dist/src/sync/session_sync.js +364 -31
  42. package/dist/src/sync/session_sync.js.map +1 -1
  43. package/dist/src/utils/runtime_env.d.ts +4 -0
  44. package/dist/src/utils/runtime_env.d.ts.map +1 -0
  45. package/dist/src/utils/runtime_env.js +51 -0
  46. package/dist/src/utils/runtime_env.js.map +1 -0
  47. package/openclaw.plugin.json +1 -1
  48. package/package.json +3 -2
  49. package/scripts/cli.js +13 -13
  50. package/scripts/uninstall.js +7 -1
@@ -85,11 +85,97 @@ function safeReadTailLines(filePath, maxLines) {
85
85
  function computeHash(text) {
86
86
  return crypto.createHash("sha256").update(text).digest("hex");
87
87
  }
88
+ function estimateTokenCount(text) {
89
+ const parts = text
90
+ .split(/[\s,.;:!?,。;:!?、()()[\]{}"'`~]+/)
91
+ .map(part => part.trim())
92
+ .filter(Boolean);
93
+ return parts.length;
94
+ }
88
95
  function normalizeBaseUrl(value) {
89
96
  if (!value)
90
97
  return "";
91
98
  return value.endsWith("/") ? value.slice(0, -1) : value;
92
99
  }
100
+ function splitTextChunks(text, chunkSize, chunkOverlap) {
101
+ const normalizedSize = Number.isFinite(chunkSize) && chunkSize >= 200 ? Math.floor(chunkSize) : 600;
102
+ const normalizedOverlap = Number.isFinite(chunkOverlap) && chunkOverlap >= 0
103
+ ? Math.floor(chunkOverlap)
104
+ : 100;
105
+ const overlap = Math.min(normalizedOverlap, Math.max(0, normalizedSize - 50));
106
+ const output = [];
107
+ if (!text.trim()) {
108
+ return output;
109
+ }
110
+ let cursor = 0;
111
+ let index = 0;
112
+ const punctuationSet = new Set(["。", "!", "?", ".", "!", "?", "\n", ";", ";"]);
113
+ while (cursor < text.length) {
114
+ const rawEnd = Math.min(text.length, cursor + normalizedSize);
115
+ let end = rawEnd;
116
+ if (rawEnd < text.length) {
117
+ const backwardStart = Math.max(cursor + Math.floor(normalizedSize * 0.45), cursor + 1);
118
+ let found = -1;
119
+ for (let i = rawEnd - 1; i >= backwardStart; i -= 1) {
120
+ if (punctuationSet.has(text[i])) {
121
+ found = i + 1;
122
+ break;
123
+ }
124
+ }
125
+ if (found < 0) {
126
+ const forwardEnd = Math.min(text.length, rawEnd + Math.floor(normalizedSize * 0.2));
127
+ for (let i = rawEnd; i < forwardEnd; i += 1) {
128
+ if (punctuationSet.has(text[i])) {
129
+ found = i + 1;
130
+ break;
131
+ }
132
+ }
133
+ }
134
+ if (found > cursor) {
135
+ end = found;
136
+ }
137
+ }
138
+ if (end <= cursor) {
139
+ end = Math.min(text.length, cursor + normalizedSize);
140
+ }
141
+ const chunkText = text.slice(cursor, end).trim();
142
+ if (chunkText) {
143
+ output.push({ index, start: cursor, end, text: chunkText });
144
+ index += 1;
145
+ }
146
+ if (end >= text.length) {
147
+ break;
148
+ }
149
+ const nextCursor = Math.max(cursor + 1, end - overlap);
150
+ if (nextCursor <= cursor) {
151
+ cursor = end;
152
+ }
153
+ else {
154
+ cursor = nextCursor;
155
+ }
156
+ }
157
+ return output;
158
+ }
159
+ async function mapWithConcurrency(items, maxConcurrency, mapper) {
160
+ if (items.length === 0) {
161
+ return [];
162
+ }
163
+ const concurrency = Math.max(1, Math.min(maxConcurrency, items.length));
164
+ const results = new Array(items.length);
165
+ let cursor = 0;
166
+ async function worker() {
167
+ while (true) {
168
+ const current = cursor;
169
+ cursor += 1;
170
+ if (current >= items.length) {
171
+ break;
172
+ }
173
+ results[current] = await mapper(items[current], current);
174
+ }
175
+ }
176
+ await Promise.all(Array.from({ length: concurrency }, () => worker()));
177
+ return results;
178
+ }
93
179
  async function requestEmbedding(args) {
94
180
  const endpoint = args.baseUrl.endsWith("/embeddings") ? args.baseUrl : `${args.baseUrl}/embeddings`;
95
181
  const body = {
@@ -182,34 +268,97 @@ function createWriteStore(options) {
182
268
  role: args.role || "user",
183
269
  source: args.source || "message",
184
270
  content: cleaned,
271
+ layer: "active",
272
+ embedding_status: "pending",
273
+ llm_gate_decision: "active_only",
185
274
  quality_level: quality.level,
186
275
  quality_score: quality.score,
187
276
  text_hash: textHash,
277
+ char_count: cleaned.length,
278
+ token_count: estimateTokenCount(cleaned),
188
279
  };
189
280
  const embeddingModel = options.embedding?.model || "";
190
281
  const embeddingApiKey = options.embedding?.apiKey || "";
191
282
  const embeddingBaseUrl = normalizeBaseUrl(options.embedding?.baseURL || options.embedding?.baseUrl);
192
- if (embeddingModel && embeddingApiKey && embeddingBaseUrl) {
283
+ const chunkSize = options.vectorChunking?.chunkSize ?? 600;
284
+ const chunkOverlap = options.vectorChunking?.chunkOverlap ?? 100;
285
+ const maxParallel = 6;
286
+ const vectorStore = options.vectorStore;
287
+ if (embeddingModel && embeddingApiKey && embeddingBaseUrl && vectorStore) {
288
+ const chunks = splitTextChunks(cleaned, chunkSize, chunkOverlap);
289
+ record.vector_chunks_total = chunks.length;
290
+ record.vector_chunks_ok = 0;
193
291
  try {
194
- const embedding = await requestEmbedding({
195
- text: cleaned,
196
- model: embeddingModel,
197
- apiKey: embeddingApiKey,
198
- baseUrl: embeddingBaseUrl,
199
- dimensions: options.embedding?.dimensions,
200
- timeoutMs: options.embedding?.timeoutMs,
201
- maxRetries: options.embedding?.maxRetries,
202
- });
203
- if (embedding && embedding.length > 0) {
204
- record.embedding = embedding;
205
- }
292
+ await vectorStore.deleteBySourceMemory({ layer: "active", sourceMemoryId: record.id });
206
293
  }
207
294
  catch (error) {
208
- options.logger.warn(`Embedding request failed, fallback to lexical store: ${error}`);
295
+ options.logger.warn(`Active vector cleanup failed before upsert: ${error}`);
209
296
  }
297
+ const chunkEmbeddings = await mapWithConcurrency(chunks, maxParallel, async (chunk) => {
298
+ try {
299
+ const embedding = await requestEmbedding({
300
+ text: chunk.text,
301
+ model: embeddingModel,
302
+ apiKey: embeddingApiKey,
303
+ baseUrl: embeddingBaseUrl,
304
+ dimensions: options.embedding?.dimensions,
305
+ timeoutMs: options.embedding?.timeoutMs,
306
+ maxRetries: options.embedding?.maxRetries,
307
+ });
308
+ if (!embedding || embedding.length === 0) {
309
+ return null;
310
+ }
311
+ return { chunk, embedding };
312
+ }
313
+ catch (error) {
314
+ options.logger.warn(`Active chunk embedding failed id=${record.id} chunk=${chunk.index} error=${error}`);
315
+ return null;
316
+ }
317
+ });
318
+ const validEmbeddings = chunkEmbeddings
319
+ .filter((item) => Boolean(item))
320
+ .sort((a, b) => a.chunk.index - b.chunk.index);
321
+ if (validEmbeddings.length > 0) {
322
+ record.embedding = validEmbeddings[0].embedding;
323
+ }
324
+ const upsertStatus = await mapWithConcurrency(validEmbeddings, maxParallel, async (item) => {
325
+ const { chunk, embedding } = item;
326
+ try {
327
+ await vectorStore.upsert({
328
+ id: `vec_${record.id}_c${chunk.index}`,
329
+ session_id: record.session_id,
330
+ event_type: "message",
331
+ summary: chunk.text,
332
+ timestamp: record.timestamp,
333
+ layer: "active",
334
+ source_memory_id: record.id,
335
+ source_memory_canonical_id: record.id,
336
+ embedding,
337
+ quality_score: record.quality_score,
338
+ char_count: chunk.text.length,
339
+ token_count: estimateTokenCount(chunk.text),
340
+ chunk_index: chunk.index,
341
+ chunk_total: chunks.length,
342
+ chunk_start: chunk.start,
343
+ chunk_end: chunk.end,
344
+ });
345
+ return true;
346
+ }
347
+ catch (error) {
348
+ options.logger.warn(`Active chunk embedding failed id=${record.id} chunk=${chunk.index} error=${error}`);
349
+ return false;
350
+ }
351
+ });
352
+ record.vector_chunks_ok = upsertStatus.filter(Boolean).length;
353
+ record.embedding_status = record.vector_chunks_total > 0 && record.vector_chunks_ok === record.vector_chunks_total
354
+ ? "ok"
355
+ : "failed";
210
356
  }
211
357
  ensureDirForFile(activeSessionsPath);
212
358
  fs.appendFileSync(activeSessionsPath, `${JSON.stringify(record)}\n`, "utf-8");
359
+ if (record.vector_chunks_total && record.vector_chunks_total > 0) {
360
+ options.logger.info(`active_vector_chunks source=${record.id} ok=${record.vector_chunks_ok || 0}/${record.vector_chunks_total}`);
361
+ }
213
362
  options.logger.info(`TS write stored message for session ${args.sessionId}`);
214
363
  return { status: "ok", memory_id: id, quality };
215
364
  }
@@ -1 +1 @@
1
- {"version":3,"file":"write_store.js","sourceRoot":"","sources":["../../../src/store/write_store.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2KA,4CA4EC;AAvPD,+CAAiC;AACjC,uCAAyB;AACzB,2CAA6B;AAuD7B,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC;IACrD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,MAAM,IAAI,EAAE;QAAE,KAAK,IAAI,IAAI,CAAC;IAChC,IAAI,MAAM,IAAI,EAAE;QAAE,KAAK,IAAI,GAAG,CAAC;IAC/B,IAAI,MAAM,IAAI,GAAG;QAAE,KAAK,IAAI,GAAG,CAAC;IAChC,IAAI,WAAW,IAAI,EAAE;QAAE,KAAK,IAAI,IAAI,CAAC;IACrC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,KAAK,IAAI,IAAI,CAAC;IACnC,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,KAAK,IAAI,IAAI,CAAC;IACtD,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACnD,CAAC;IACD,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAgB,EAAE,QAAgB;IAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAQ/B;IACC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,aAAa,CAAC;IACpG,MAAM,IAAI,GAA4B;QACpC,KAAK,EAAE,IAAI,CAAC,IAAI;QAChB,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC;IACF,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;QACnG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACpC,CAAC;IACD,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI;QAC/G,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;QAC5B,CAAC,CAAC,KAAK,CAAC;IACV,MAAM,UAAU,GAAG,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC;QAChH,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC,CAAC;IACN,IAAI,SAAS,GAAY,IAAI,CAAC;IAC9B,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,UAAU,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QACzD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;gBACrC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;iBACvC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC1B,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YACH,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,SAAS,GAAG,IAAI,KAAK,CAAC,kBAAkB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC3D,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAgD,CAAC;YACjF,MAAM,SAAS,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;YAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrD,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YACzD,CAAC;YACD,SAAS,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;QACD,IAAI,OAAO,GAAG,UAAU,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,SAAS,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,gBAAgB,CAAC,OAA0B;IACzD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpH,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAEzF,KAAK,UAAU,WAAW,CAAC,IAAqB;QAC9C,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QACzE,CAAC;QAED,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;YAC5B,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QACnF,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;YAC7D,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;oBAC3D,IACE,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,SAAS;wBACpC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;wBACzB,MAAM,CAAC,SAAS,KAAK,QAAQ,EAC7B,CAAC;wBACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;oBACjF,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACZ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,mDAAmD,KAAK,EAAE,CAAC,CAAC;QAClF,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,MAAM,GAAoB;YAC9B,EAAE;YACF,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,SAAS;YAChC,OAAO,EAAE,OAAO;YAChB,aAAa,EAAE,OAAO,CAAC,KAAK;YAC5B,aAAa,EAAE,OAAO,CAAC,KAAK;YAC5B,SAAS,EAAE,QAAQ;SACpB,CAAC;QACF,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC;QACtD,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,EAAE,MAAM,IAAI,EAAE,CAAC;QACxD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,IAAI,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACpG,IAAI,cAAc,IAAI,eAAe,IAAI,gBAAgB,EAAE,CAAC;YAC1D,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC;oBACvC,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,cAAc;oBACrB,MAAM,EAAE,eAAe;oBACvB,OAAO,EAAE,gBAAgB;oBACzB,UAAU,EAAE,OAAO,CAAC,SAAS,EAAE,UAAU;oBACzC,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,SAAS;oBACvC,UAAU,EAAE,OAAO,CAAC,SAAS,EAAE,UAAU;iBAC1C,CAAC,CAAC;gBACH,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC/B,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,wDAAwD,KAAK,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAED,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QACrC,EAAE,CAAC,cAAc,CAAC,kBAAkB,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9E,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC7E,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;IAClD,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,UAAU,EAAE,CAAC,CAAC;IACpE,OAAO,EAAE,WAAW,EAAE,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"write_store.js","sourceRoot":"","sources":["../../../src/store/write_store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import type { WriteMemoryResult } from "../store/write_store";
2
1
  interface LoggerLike {
3
2
  debug: (message: string, ...args: unknown[]) => void;
4
3
  info: (message: string, ...args: unknown[]) => void;
@@ -8,13 +7,48 @@ interface SessionSyncOptions {
8
7
  projectRoot: string;
9
8
  dbPath?: string;
10
9
  logger: LoggerLike;
10
+ llm?: {
11
+ model?: string;
12
+ apiKey?: string;
13
+ baseURL?: string;
14
+ baseUrl?: string;
15
+ };
16
+ archiveStore: {
17
+ storeEvents(events: Array<{
18
+ event_type: string;
19
+ summary: string;
20
+ entities?: string[];
21
+ relations?: Array<{
22
+ source: string;
23
+ target: string;
24
+ type: string;
25
+ }>;
26
+ outcome?: string;
27
+ session_id: string;
28
+ source_file: string;
29
+ confidence?: number;
30
+ source_event_id?: string;
31
+ actor?: string;
32
+ }>): Promise<{
33
+ stored: Array<{
34
+ id: string;
35
+ }>;
36
+ skipped: Array<{
37
+ summary: string;
38
+ reason: string;
39
+ }>;
40
+ }>;
41
+ };
11
42
  writeStore: {
12
43
  writeMemory(args: {
13
44
  text: string;
14
45
  role: string;
15
46
  source: string;
16
47
  sessionId: string;
17
- }): Promise<WriteMemoryResult>;
48
+ }): Promise<{
49
+ status: "ok" | "skipped";
50
+ reason?: string;
51
+ }>;
18
52
  };
19
53
  }
20
54
  export declare function createSessionSync(options: SessionSyncOptions): {
@@ -24,11 +58,19 @@ export declare function createSessionSync(options: SessionSyncOptions): {
24
58
  filesProcessed: number;
25
59
  summaryImported: number;
26
60
  summarySkipped: number;
61
+ llmDecisions: number;
62
+ activeOnly: number;
63
+ archiveEvent: number;
64
+ skipReasons: Record<string, number>;
27
65
  }>;
28
66
  syncDailySummaries(): Promise<{
29
67
  imported: number;
30
68
  skipped: number;
31
69
  filesProcessed: number;
70
+ llmDecisions: number;
71
+ activeOnly: number;
72
+ archiveEvent: number;
73
+ skipReasons: Record<string, number>;
32
74
  }>;
33
75
  };
34
76
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"session_sync.d.ts","sourceRoot":"","sources":["../../../src/sync/session_sync.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,UAAU,UAAU;IAClB,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACrD,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpD,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACrD;AAOD,UAAU,kBAAkB;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE;QACV,WAAW,CAAC,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;KAClH,CAAC;CACH;AA8KD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG;IAC9D,UAAU,IAAI,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtI,kBAAkB,IAAI,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9F,CAgIA"}
1
+ {"version":3,"file":"session_sync.d.ts","sourceRoot":"","sources":["../../../src/sync/session_sync.ts"],"names":[],"mappings":"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"}