claude-conversation-memory-mcp 1.5.1 → 1.6.5

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 (45) hide show
  1. package/dist/embeddings/VectorStore.d.ts +10 -0
  2. package/dist/embeddings/VectorStore.d.ts.map +1 -1
  3. package/dist/embeddings/VectorStore.js +76 -0
  4. package/dist/embeddings/VectorStore.js.map +1 -1
  5. package/dist/index.js +0 -0
  6. package/dist/parsers/CodexConversationParser.d.ts +1 -1
  7. package/dist/parsers/CodexConversationParser.d.ts.map +1 -1
  8. package/dist/parsers/CodexConversationParser.js +27 -5
  9. package/dist/parsers/CodexConversationParser.js.map +1 -1
  10. package/dist/parsers/ConversationParser.d.ts +18 -0
  11. package/dist/parsers/ConversationParser.d.ts.map +1 -1
  12. package/dist/parsers/ConversationParser.js +62 -1
  13. package/dist/parsers/ConversationParser.js.map +1 -1
  14. package/dist/search/SemanticSearch.d.ts +6 -2
  15. package/dist/search/SemanticSearch.d.ts.map +1 -1
  16. package/dist/search/SemanticSearch.js +78 -35
  17. package/dist/search/SemanticSearch.js.map +1 -1
  18. package/dist/storage/ConversationStorage.d.ts +10 -0
  19. package/dist/storage/ConversationStorage.d.ts.map +1 -1
  20. package/dist/storage/ConversationStorage.js +34 -0
  21. package/dist/storage/ConversationStorage.js.map +1 -1
  22. package/dist/storage/SQLiteManager.d.ts.map +1 -1
  23. package/dist/storage/SQLiteManager.js +87 -17
  24. package/dist/storage/SQLiteManager.js.map +1 -1
  25. package/dist/storage/migrations.d.ts.map +1 -1
  26. package/dist/storage/migrations.js +41 -8
  27. package/dist/storage/migrations.js.map +1 -1
  28. package/dist/storage/schema.sql +1 -1
  29. package/dist/tools/ToolDefinitions.d.ts +15 -0
  30. package/dist/tools/ToolDefinitions.d.ts.map +1 -1
  31. package/dist/tools/ToolDefinitions.js +16 -1
  32. package/dist/tools/ToolDefinitions.js.map +1 -1
  33. package/dist/tools/ToolHandlers.d.ts.map +1 -1
  34. package/dist/tools/ToolHandlers.js +133 -31
  35. package/dist/tools/ToolHandlers.js.map +1 -1
  36. package/dist/types/ToolTypes.d.ts +5 -0
  37. package/dist/types/ToolTypes.d.ts.map +1 -1
  38. package/dist/utils/ProjectMigration.d.ts.map +1 -1
  39. package/dist/utils/ProjectMigration.js +4 -3
  40. package/dist/utils/ProjectMigration.js.map +1 -1
  41. package/dist/utils/sanitization.d.ts +10 -0
  42. package/dist/utils/sanitization.d.ts.map +1 -1
  43. package/dist/utils/sanitization.js +33 -0
  44. package/dist/utils/sanitization.js.map +1 -1
  45. package/package.json +2 -2
@@ -23,6 +23,16 @@ export declare class VectorStore {
23
23
  * Check if vec extension is enabled
24
24
  */
25
25
  isVecEnabled(): boolean;
26
+ /**
27
+ * Get set of message IDs that already have embeddings.
28
+ * Queries both BLOB fallback table and sqlite-vec table.
29
+ */
30
+ getExistingMessageEmbeddingIds(): Set<string>;
31
+ /**
32
+ * Get set of decision IDs that already have embeddings.
33
+ * Queries both BLOB fallback table and sqlite-vec table.
34
+ */
35
+ getExistingDecisionEmbeddingIds(): Set<string>;
26
36
  /**
27
37
  * Ensure vec tables exist with correct dimensions
28
38
  */
@@ -1 +1 @@
1
- {"version":3,"file":"VectorStore.d.ts","sourceRoot":"","sources":["../../src/embeddings/VectorStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGjE,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,oBAAoB,CAAkB;gBAElC,aAAa,EAAE,aAAa;IAMxC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACG,qBAAqB,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,IAAI,CAAC;IAuChB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAqBxB;;OAEG;IACG,sBAAsB,CAC1B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,IAAI,CAAC;IAehB;;OAEG;IACG,cAAc,CAClB,cAAc,EAAE,YAAY,EAC5B,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAQhC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAoC9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA8BxB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAkBxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAO3B;;OAEG;IACH,kBAAkB,IAAI,IAAI;CAY3B"}
1
+ {"version":3,"file":"VectorStore.d.ts","sourceRoot":"","sources":["../../src/embeddings/VectorStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGjE,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,oBAAoB,CAAkB;gBAElC,aAAa,EAAE,aAAa;IAMxC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;;OAGG;IACH,8BAA8B,IAAI,GAAG,CAAC,MAAM,CAAC;IAoC7C;;;OAGG;IACH,+BAA+B,IAAI,GAAG,CAAC,MAAM,CAAC;IAoC9C;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACG,qBAAqB,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,IAAI,CAAC;IAuChB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAqBxB;;OAEG;IACG,sBAAsB,CAC1B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,IAAI,CAAC;IAehB;;OAEG;IACG,cAAc,CAClB,cAAc,EAAE,YAAY,EAC5B,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAQhC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAoC9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA8BxB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAkBxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAO3B;;OAEG;IACH,kBAAkB,IAAI,IAAI;CAY3B"}
@@ -34,6 +34,82 @@ export class VectorStore {
34
34
  isVecEnabled() {
35
35
  return this.hasVecExtension;
36
36
  }
37
+ /**
38
+ * Get set of message IDs that already have embeddings.
39
+ * Queries both BLOB fallback table and sqlite-vec table.
40
+ */
41
+ getExistingMessageEmbeddingIds() {
42
+ const ids = new Set();
43
+ // Query BLOB fallback table (always exists)
44
+ try {
45
+ const rows = this.db
46
+ .prepare("SELECT message_id FROM message_embeddings")
47
+ .all();
48
+ for (const row of rows) {
49
+ ids.add(row.message_id);
50
+ }
51
+ }
52
+ catch (_e) {
53
+ // Table might not exist yet
54
+ }
55
+ // Also query sqlite-vec table if extension is available
56
+ // Vec table stores IDs as "msg_<messageId>", so we strip the prefix
57
+ if (this.hasVecExtension) {
58
+ try {
59
+ const vecRows = this.db
60
+ .prepare("SELECT id FROM vec_message_embeddings")
61
+ .all();
62
+ for (const row of vecRows) {
63
+ // Strip "msg_" prefix to get actual message ID
64
+ if (row.id.startsWith("msg_")) {
65
+ ids.add(row.id.substring(4));
66
+ }
67
+ }
68
+ }
69
+ catch (_e) {
70
+ // Vec table might not exist yet
71
+ }
72
+ }
73
+ return ids;
74
+ }
75
+ /**
76
+ * Get set of decision IDs that already have embeddings.
77
+ * Queries both BLOB fallback table and sqlite-vec table.
78
+ */
79
+ getExistingDecisionEmbeddingIds() {
80
+ const ids = new Set();
81
+ // Query BLOB fallback table
82
+ try {
83
+ const rows = this.db
84
+ .prepare("SELECT decision_id FROM decision_embeddings")
85
+ .all();
86
+ for (const row of rows) {
87
+ ids.add(row.decision_id);
88
+ }
89
+ }
90
+ catch (_e) {
91
+ // Table might not exist yet
92
+ }
93
+ // Also query sqlite-vec table if extension is available
94
+ // Vec table stores IDs as "dec_<decisionId>", so we strip the prefix
95
+ if (this.hasVecExtension) {
96
+ try {
97
+ const vecRows = this.db
98
+ .prepare("SELECT id FROM vec_decision_embeddings")
99
+ .all();
100
+ for (const row of vecRows) {
101
+ // Strip "dec_" prefix to get actual decision ID
102
+ if (row.id.startsWith("dec_")) {
103
+ ids.add(row.id.substring(4));
104
+ }
105
+ }
106
+ }
107
+ catch (_e) {
108
+ // Vec table might not exist yet
109
+ }
110
+ }
111
+ return ids;
112
+ }
37
113
  /**
38
114
  * Ensure vec tables exist with correct dimensions
39
115
  */
@@ -1 +1 @@
1
- {"version":3,"file":"VectorStore.js","sourceRoot":"","sources":["../../src/embeddings/VectorStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VectorStore.js","sourceRoot":"","sources":["../../src/embeddings/VectorStore.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
File without changes
@@ -38,7 +38,7 @@ export declare class CodexConversationParser {
38
38
  * @param sessionId - Optional specific session ID to parse
39
39
  * @returns ParseResult with all extracted entities
40
40
  */
41
- parseSession(codexPath: string, sessionId?: string): ParseResult;
41
+ parseSession(codexPath: string, sessionId?: string, lastIndexedMs?: number): ParseResult;
42
42
  /**
43
43
  * Recursively find all .jsonl session files.
44
44
  */
@@ -1 +1 @@
1
- {"version":3,"file":"CodexConversationParser.d.ts","sourceRoot":"","sources":["../../src/parsers/CodexConversationParser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAKH,OAAO,KAAK,EAOV,WAAW,EACZ,MAAM,yBAAyB,CAAC;AAwCjC;;;;;GAKG;AACH,qBAAa,uBAAuB;IAClC;;;;;;;;OAQG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,WAAW;IAoEhE;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;OAEG;IACH,OAAO,CAAC,gBAAgB;CA6KzB"}
1
+ {"version":3,"file":"CodexConversationParser.d.ts","sourceRoot":"","sources":["../../src/parsers/CodexConversationParser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAKH,OAAO,KAAK,EAOV,WAAW,EACZ,MAAM,yBAAyB,CAAC;AAwCjC;;;;;GAKG;AACH,qBAAa,uBAAuB;IAClC;;;;;;;;OAQG;IACH,YAAY,CACV,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,WAAW;IA0Fd;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;OAEG;IACH,OAAO,CAAC,gBAAgB;CA6KzB"}
@@ -40,7 +40,7 @@ export class CodexConversationParser {
40
40
  * @param sessionId - Optional specific session ID to parse
41
41
  * @returns ParseResult with all extracted entities
42
42
  */
43
- parseSession(codexPath, sessionId) {
43
+ parseSession(codexPath, sessionId, lastIndexedMs) {
44
44
  const sessionsDir = join(codexPath, "sessions");
45
45
  if (!existsSync(sessionsDir)) {
46
46
  throw new Error(`Codex sessions directory not found: ${sessionsDir}`);
@@ -52,20 +52,39 @@ export class CodexConversationParser {
52
52
  const file_edits = [];
53
53
  const thinking_blocks = [];
54
54
  const indexed_folders = [];
55
+ let skippedCount = 0;
55
56
  // Recursively find all .jsonl files in date-hierarchical structure
56
57
  const sessionFiles = this.findSessionFiles(sessionsDir);
57
58
  for (const sessionFile of sessionFiles) {
58
59
  try {
60
+ // Skip unchanged files in incremental mode
61
+ if (lastIndexedMs) {
62
+ const stats = statSync(sessionFile);
63
+ if (stats.mtimeMs < lastIndexedMs) {
64
+ skippedCount++;
65
+ continue;
66
+ }
67
+ }
59
68
  // Extract session ID from filename: rollout-{timestamp}-{uuid}.jsonl
60
69
  const filename = sessionFile.split("/").pop();
61
70
  if (!filename) {
62
71
  continue;
63
72
  }
64
- const match = filename.match(/rollout-\d+-(.+)\.jsonl$/);
65
- if (!match) {
66
- continue;
73
+ // Match rollout-{timestamp}-{uuid}.jsonl where timestamp is like 2025-11-03T20-35-04
74
+ // UUID format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
75
+ const match = filename.match(/rollout-.+-([0-9a-f]+-[0-9a-f]+-[0-9a-f]+-[0-9a-f]+-[0-9a-f]+)\.jsonl$/i);
76
+ let extractedSessionId;
77
+ if (match) {
78
+ extractedSessionId = match[1];
79
+ }
80
+ else {
81
+ // Fallback: just strip "rollout-" prefix and ".jsonl" suffix
82
+ const fallbackId = filename.replace(/^rollout-/, "").replace(/\.jsonl$/, "");
83
+ if (!fallbackId) {
84
+ continue;
85
+ }
86
+ extractedSessionId = fallbackId;
67
87
  }
68
- const extractedSessionId = match[1];
69
88
  // Skip if filtering by session ID
70
89
  if (sessionId && extractedSessionId !== sessionId) {
71
90
  continue;
@@ -87,6 +106,9 @@ export class CodexConversationParser {
87
106
  console.warn(`Failed to parse Codex session file ${sessionFile}:`, error);
88
107
  }
89
108
  }
109
+ if (skippedCount > 0) {
110
+ console.log(`⏭ Skipped ${skippedCount} unchanged Codex session file(s)`);
111
+ }
90
112
  return {
91
113
  conversations,
92
114
  messages,
@@ -1 +1 @@
1
- {"version":3,"file":"CodexConversationParser.js","sourceRoot":"","sources":["../../src/parsers/CodexConversationParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodexConversationParser.js","sourceRoot":"","sources":["../../src/parsers/CodexConversationParser.ts"],"names":[],"mappings":"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"}
@@ -163,6 +163,24 @@ export declare class ConversationParser {
163
163
  * ```
164
164
  */
165
165
  parseProject(projectPath: string, sessionId?: string): ParseResult;
166
+ /**
167
+ * Parse conversations directly from a Claude projects folder.
168
+ *
169
+ * This method is used when you already have the path to the conversation
170
+ * folder (e.g., ~/.claude/projects/-Users-me-my-project) rather than
171
+ * a project path that needs to be converted.
172
+ *
173
+ * @param folderPath - Absolute path to the Claude projects folder
174
+ * @param projectIdentifier - Optional identifier to use as project_path in records (defaults to folder path)
175
+ * @returns ParseResult containing all extracted entities
176
+ *
177
+ * @example
178
+ * ```typescript
179
+ * const parser = new ConversationParser();
180
+ * const result = parser.parseFromFolder('~/.claude/projects/-Users-me-my-project');
181
+ * ```
182
+ */
183
+ parseFromFolder(folderPath: string, projectIdentifier?: string, lastIndexedMs?: number): ParseResult;
166
184
  /**
167
185
  * Parse a single .jsonl file
168
186
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationParser.d.ts","sourceRoot":"","sources":["../../src/parsers/ConversationParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConversationParser.d.ts","sourceRoot":"","sources":["../../src/parsers/ConversationParser.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@
24
24
  * console.log(`Extracted ${result.tool_uses.length} tool uses`);
25
25
  * ```
26
26
  */
27
- import { readFileSync, readdirSync, existsSync } from "fs";
27
+ import { readFileSync, readdirSync, existsSync, statSync } from "fs";
28
28
  import { join } from "path";
29
29
  import { nanoid } from "nanoid";
30
30
  import { pathToProjectFolderName } from "../utils/sanitization.js";
@@ -137,6 +137,67 @@ export class ConversationParser {
137
137
  console.log(`Parsed ${result.conversations.length} conversations, ${result.messages.length} messages`);
138
138
  return result;
139
139
  }
140
+ /**
141
+ * Parse conversations directly from a Claude projects folder.
142
+ *
143
+ * This method is used when you already have the path to the conversation
144
+ * folder (e.g., ~/.claude/projects/-Users-me-my-project) rather than
145
+ * a project path that needs to be converted.
146
+ *
147
+ * @param folderPath - Absolute path to the Claude projects folder
148
+ * @param projectIdentifier - Optional identifier to use as project_path in records (defaults to folder path)
149
+ * @returns ParseResult containing all extracted entities
150
+ *
151
+ * @example
152
+ * ```typescript
153
+ * const parser = new ConversationParser();
154
+ * const result = parser.parseFromFolder('~/.claude/projects/-Users-me-my-project');
155
+ * ```
156
+ */
157
+ parseFromFolder(folderPath, projectIdentifier, lastIndexedMs) {
158
+ const result = {
159
+ conversations: [],
160
+ messages: [],
161
+ tool_uses: [],
162
+ tool_results: [],
163
+ file_edits: [],
164
+ thinking_blocks: [],
165
+ indexed_folders: [folderPath],
166
+ };
167
+ // Use folder path as project identifier if not provided
168
+ const projectPath = projectIdentifier || folderPath;
169
+ if (!existsSync(folderPath)) {
170
+ console.warn(`⚠️ Folder does not exist: ${folderPath}`);
171
+ return result;
172
+ }
173
+ // Get all .jsonl files in the folder
174
+ const files = readdirSync(folderPath).filter((f) => f.endsWith(".jsonl"));
175
+ console.log(`Found ${files.length} conversation file(s) in ${folderPath}`);
176
+ // Parse each file, optionally skipping unchanged files in incremental mode
177
+ let skippedCount = 0;
178
+ for (const file of files) {
179
+ const filePath = join(folderPath, file);
180
+ // Skip unchanged files in incremental mode
181
+ if (lastIndexedMs) {
182
+ try {
183
+ const stats = statSync(filePath);
184
+ if (stats.mtimeMs < lastIndexedMs) {
185
+ skippedCount++;
186
+ continue;
187
+ }
188
+ }
189
+ catch (_e) {
190
+ // If we can't stat the file, try to parse it anyway
191
+ }
192
+ }
193
+ this.parseFile(filePath, result, projectPath);
194
+ }
195
+ if (skippedCount > 0) {
196
+ console.log(`⏭ Skipped ${skippedCount} unchanged file(s)`);
197
+ }
198
+ console.log(`Parsed ${result.conversations.length} conversations, ${result.messages.length} messages`);
199
+ return result;
200
+ }
140
201
  /**
141
202
  * Parse a single .jsonl file
142
203
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationParser.js","sourceRoot":"","sources":["../../src/parsers/ConversationParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConversationParser.js","sourceRoot":"","sources":["../../src/parsers/ConversationParser.ts"],"names":[],"mappings":"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"}
@@ -28,12 +28,16 @@ export declare class SemanticSearch {
28
28
  constructor(sqliteManager: SQLiteManager);
29
29
  /**
30
30
  * Index all messages for semantic search
31
+ * @param messages - Messages to index
32
+ * @param incremental - If true, skip messages that already have embeddings (default: true for fast re-indexing)
31
33
  */
32
- indexMessages(messages: Message[]): Promise<void>;
34
+ indexMessages(messages: Message[], incremental?: boolean): Promise<void>;
33
35
  /**
34
36
  * Index decisions for semantic search
37
+ * @param decisions - Decisions to index
38
+ * @param incremental - If true, skip decisions that already have embeddings (default: true for fast re-indexing)
35
39
  */
36
- indexDecisions(decisions: Decision[]): Promise<void>;
40
+ indexDecisions(decisions: Decision[], incremental?: boolean): Promise<void>;
37
41
  /**
38
42
  * Search conversations using natural language query
39
43
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SemanticSearch.d.ts","sourceRoot":"","sources":["../../src/search/SemanticSearch.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGjE,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAGhE,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,EAAE,CAAgB;gBAEd,aAAa,EAAE,aAAa;IAKxC;;OAEG;IACG,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCvD;;OAEG;IACG,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B1D;;OAEG;IACG,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAW,EAClB,MAAM,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,YAAY,EAAE,CAAC;IA6C1B;;OAEG;IACG,eAAe,CACnB,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAsClC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4D9B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAsC9B;;OAEG;IACH,OAAO,CAAC,WAAW;IAyBnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAsBvB;;OAEG;IACH,OAAO,CAAC,UAAU;IAgBlB;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;OAEG;IACH,OAAO,CAAC,WAAW;IAgBnB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;OAEG;IACH,QAAQ,IAAI;QACV,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,OAAO,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC;CAUF"}
1
+ {"version":3,"file":"SemanticSearch.d.ts","sourceRoot":"","sources":["../../src/search/SemanticSearch.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGjE,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAGhE,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,EAAE,CAAgB;gBAEd,aAAa,EAAE,aAAa;IAKxC;;;;OAIG;IACG,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,WAAW,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAgDpF;;;;OAIG;IACG,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,WAAW,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAgDvF;;OAEG;IACG,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAW,EAClB,MAAM,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,YAAY,EAAE,CAAC;IAyD1B;;OAEG;IACG,eAAe,CACnB,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAsClC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4D9B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAsC9B;;OAEG;IACH,OAAO,CAAC,WAAW;IAyBnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAsBvB;;OAEG;IACH,OAAO,CAAC,UAAU;IAgBlB;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;OAEG;IACH,OAAO,CAAC,WAAW;IAgBnB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;OAEG;IACH,QAAQ,IAAI;QACV,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,OAAO,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC;CAUF"}
@@ -13,8 +13,10 @@ export class SemanticSearch {
13
13
  }
14
14
  /**
15
15
  * Index all messages for semantic search
16
+ * @param messages - Messages to index
17
+ * @param incremental - If true, skip messages that already have embeddings (default: true for fast re-indexing)
16
18
  */
17
- async indexMessages(messages) {
19
+ async indexMessages(messages, incremental = true) {
18
20
  console.log(`Indexing ${messages.length} messages...`);
19
21
  const embedder = await getEmbeddingGenerator();
20
22
  if (!embedder.isAvailable()) {
@@ -22,8 +24,21 @@ export class SemanticSearch {
22
24
  return;
23
25
  }
24
26
  // Filter messages with content
25
- const messagesToIndex = messages.filter((m) => !!m.content && m.content.trim().length > 0);
26
- console.log(`Generating embeddings for ${messagesToIndex.length} messages...`);
27
+ const messagesWithContent = messages.filter((m) => !!m.content && m.content.trim().length > 0);
28
+ // In incremental mode, skip messages that already have embeddings
29
+ let messagesToIndex = messagesWithContent;
30
+ if (incremental) {
31
+ const existingIds = this.vectorStore.getExistingMessageEmbeddingIds();
32
+ messagesToIndex = messagesWithContent.filter((m) => !existingIds.has(m.id));
33
+ if (messagesToIndex.length === 0) {
34
+ console.log(`⏭ All ${messagesWithContent.length} messages already have embeddings`);
35
+ return;
36
+ }
37
+ if (existingIds.size > 0) {
38
+ console.log(`⏭ Skipping ${messagesWithContent.length - messagesToIndex.length} already-embedded messages`);
39
+ }
40
+ }
41
+ console.log(`Generating embeddings for ${messagesToIndex.length} ${incremental ? "new " : ""}messages...`);
27
42
  // Generate embeddings in batches
28
43
  const texts = messagesToIndex.map((m) => m.content);
29
44
  const embeddings = await embedder.embedBatch(texts, 32);
@@ -35,16 +50,32 @@ export class SemanticSearch {
35
50
  }
36
51
  /**
37
52
  * Index decisions for semantic search
53
+ * @param decisions - Decisions to index
54
+ * @param incremental - If true, skip decisions that already have embeddings (default: true for fast re-indexing)
38
55
  */
39
- async indexDecisions(decisions) {
56
+ async indexDecisions(decisions, incremental = true) {
40
57
  console.log(`Indexing ${decisions.length} decisions...`);
41
58
  const embedder = await getEmbeddingGenerator();
42
59
  if (!embedder.isAvailable()) {
43
60
  console.warn("Embeddings not available - skipping decision indexing");
44
61
  return;
45
62
  }
63
+ // In incremental mode, skip decisions that already have embeddings
64
+ let decisionsToIndex = decisions;
65
+ if (incremental) {
66
+ const existingIds = this.vectorStore.getExistingDecisionEmbeddingIds();
67
+ decisionsToIndex = decisions.filter((d) => !existingIds.has(d.id));
68
+ if (decisionsToIndex.length === 0) {
69
+ console.log(`⏭ All ${decisions.length} decisions already have embeddings`);
70
+ return;
71
+ }
72
+ if (existingIds.size > 0) {
73
+ console.log(`⏭ Skipping ${decisions.length - decisionsToIndex.length} already-embedded decisions`);
74
+ }
75
+ }
76
+ console.log(`Generating embeddings for ${decisionsToIndex.length} ${incremental ? "new " : ""}decisions...`);
46
77
  // Generate embeddings for decision text + rationale
47
- const texts = decisions.map((d) => {
78
+ const texts = decisionsToIndex.map((d) => {
48
79
  const parts = [d.decision_text];
49
80
  if (d.rationale) {
50
81
  parts.push(d.rationale);
@@ -56,8 +87,8 @@ export class SemanticSearch {
56
87
  });
57
88
  const embeddings = await embedder.embedBatch(texts, 32);
58
89
  // Store embeddings
59
- for (let i = 0; i < decisions.length; i++) {
60
- await this.vectorStore.storeDecisionEmbedding(decisions[i].id, embeddings[i]);
90
+ for (let i = 0; i < decisionsToIndex.length; i++) {
91
+ await this.vectorStore.storeDecisionEmbedding(decisionsToIndex[i].id, embeddings[i]);
61
92
  }
62
93
  console.log("✓ Decision indexing complete");
63
94
  }
@@ -70,39 +101,51 @@ export class SemanticSearch {
70
101
  console.warn("Embeddings not available - falling back to full-text search");
71
102
  return this.fallbackFullTextSearch(query, limit, filter);
72
103
  }
73
- // Generate query embedding
74
- const queryEmbedding = await embedder.embed(query);
75
- // Search vector store
76
- const vectorResults = await this.vectorStore.searchMessages(queryEmbedding, limit * 2 // Get more results for filtering
77
- );
78
- // Enrich with message and conversation data
79
- const enrichedResults = [];
80
- for (const vecResult of vectorResults) {
81
- const message = this.getMessage(vecResult.id);
82
- if (!message) {
83
- continue;
84
- }
85
- // Apply filters
86
- if (filter) {
87
- if (!this.applyFilter(message, filter)) {
104
+ try {
105
+ // Generate query embedding
106
+ const queryEmbedding = await embedder.embed(query);
107
+ // Search vector store
108
+ const vectorResults = await this.vectorStore.searchMessages(queryEmbedding, limit * 2 // Get more results for filtering
109
+ );
110
+ // Enrich with message and conversation data
111
+ const enrichedResults = [];
112
+ for (const vecResult of vectorResults) {
113
+ const message = this.getMessage(vecResult.id);
114
+ if (!message) {
88
115
  continue;
89
116
  }
117
+ // Apply filters
118
+ if (filter) {
119
+ if (!this.applyFilter(message, filter)) {
120
+ continue;
121
+ }
122
+ }
123
+ const conversation = this.getConversation(message.conversation_id);
124
+ if (!conversation) {
125
+ continue;
126
+ }
127
+ enrichedResults.push({
128
+ message,
129
+ conversation,
130
+ similarity: vecResult.similarity,
131
+ snippet: this.generateSnippet(vecResult.content, query),
132
+ });
133
+ if (enrichedResults.length >= limit) {
134
+ break;
135
+ }
90
136
  }
91
- const conversation = this.getConversation(message.conversation_id);
92
- if (!conversation) {
93
- continue;
94
- }
95
- enrichedResults.push({
96
- message,
97
- conversation,
98
- similarity: vecResult.similarity,
99
- snippet: this.generateSnippet(vecResult.content, query),
100
- });
101
- if (enrichedResults.length >= limit) {
102
- break;
137
+ // Fall back to FTS if vector search returned no results
138
+ if (enrichedResults.length === 0) {
139
+ console.warn("Vector search returned no results - falling back to FTS");
140
+ return this.fallbackFullTextSearch(query, limit, filter);
103
141
  }
142
+ return enrichedResults;
143
+ }
144
+ catch (error) {
145
+ // If embedding fails, fall back to FTS
146
+ console.warn("Embedding error, falling back to FTS:", error.message);
147
+ return this.fallbackFullTextSearch(query, limit, filter);
104
148
  }
105
- return enrichedResults;
106
149
  }
107
150
  /**
108
151
  * Search for decisions