@aeriondyseti/vector-memory-mcp 1.1.0-dev.3 → 1.1.0-dev.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +24 -11
  2. package/dist/package.json +1 -2
  3. package/dist/src/db/conversation.repository.d.ts.map +1 -1
  4. package/dist/src/db/conversation.repository.js +2 -1
  5. package/dist/src/db/conversation.repository.js.map +1 -1
  6. package/dist/src/db/conversation.schema.js +1 -1
  7. package/dist/src/db/conversation.schema.js.map +1 -1
  8. package/dist/src/db/lancedb-utils.d.ts +12 -0
  9. package/dist/src/db/lancedb-utils.d.ts.map +1 -1
  10. package/dist/src/db/lancedb-utils.js +18 -0
  11. package/dist/src/db/lancedb-utils.js.map +1 -1
  12. package/dist/src/db/memory.repository.d.ts +1 -0
  13. package/dist/src/db/memory.repository.d.ts.map +1 -1
  14. package/dist/src/db/memory.repository.js +15 -4
  15. package/dist/src/db/memory.repository.js.map +1 -1
  16. package/dist/src/db/schema.d.ts.map +1 -1
  17. package/dist/src/db/schema.js +1 -1
  18. package/dist/src/db/schema.js.map +1 -1
  19. package/dist/src/http/server.d.ts.map +1 -1
  20. package/dist/src/http/server.js +12 -17
  21. package/dist/src/http/server.js.map +1 -1
  22. package/dist/src/mcp/handlers.d.ts +2 -2
  23. package/dist/src/mcp/handlers.d.ts.map +1 -1
  24. package/dist/src/mcp/handlers.js +22 -28
  25. package/dist/src/mcp/handlers.js.map +1 -1
  26. package/dist/src/mcp/tools.d.ts +2 -2
  27. package/dist/src/mcp/tools.d.ts.map +1 -1
  28. package/dist/src/mcp/tools.js +10 -10
  29. package/dist/src/mcp/tools.js.map +1 -1
  30. package/dist/src/services/memory.service.d.ts +3 -2
  31. package/dist/src/services/memory.service.d.ts.map +1 -1
  32. package/dist/src/services/memory.service.js +28 -14
  33. package/dist/src/services/memory.service.js.map +1 -1
  34. package/package.json +1 -2
  35. package/src/db/conversation.repository.ts +2 -1
  36. package/src/db/conversation.schema.ts +1 -1
  37. package/src/db/lancedb-utils.ts +17 -0
  38. package/src/db/memory.repository.ts +15 -4
  39. package/src/db/schema.ts +1 -1
  40. package/src/http/server.ts +12 -18
  41. package/src/mcp/handlers.ts +23 -28
  42. package/src/mcp/tools.ts +10 -10
  43. package/src/services/memory.service.ts +35 -14
  44. package/hooks/session-start.ts +0 -118
@@ -222,9 +222,9 @@ export const reportMemoryUsefulnessTool = {
222
222
  required: ["memory_id", "useful"],
223
223
  },
224
224
  };
225
- export const storeCheckpointTool = {
226
- name: "store_checkpoint",
227
- description: `Save session state for seamless resumption later. Use at end of work sessions or before context switches.
225
+ export const setWaypointTool = {
226
+ name: "set_waypoint",
227
+ description: `Save session waypoint for seamless resumption later. Use at end of work sessions or before context switches.
228
228
 
229
229
  Creates a structured snapshot with:
230
230
  - summary: 2-3 sentences on goal and current status
@@ -234,7 +234,7 @@ Creates a structured snapshot with:
234
234
  - next_steps: concrete, actionable items
235
235
  - memory_ids: link to related memories stored this session
236
236
 
237
- Retrievable via get_checkpoint. Only one checkpoint per project—new checkpoints overwrite previous.`,
237
+ Retrievable via get_waypoint. Only one waypoint per project—new waypoints overwrite previous.`,
238
238
  inputSchema: {
239
239
  type: "object",
240
240
  properties: {
@@ -264,7 +264,7 @@ Retrievable via get_checkpoint. Only one checkpoint per project—new checkpoint
264
264
  memory_ids: {
265
265
  type: "array",
266
266
  items: { type: "string" },
267
- description: "Memory IDs referenced by this checkpoint.",
267
+ description: "Memory IDs referenced by this waypoint.",
268
268
  },
269
269
  metadata: {
270
270
  type: "object",
@@ -275,9 +275,9 @@ Retrievable via get_checkpoint. Only one checkpoint per project—new checkpoint
275
275
  required: ["project", "summary"],
276
276
  },
277
277
  };
278
- export const getCheckpointTool = {
279
- name: "get_checkpoint",
280
- description: "Load the current project checkpoint snapshot. Call at conversation start or when resuming a project.",
278
+ export const getWaypointTool = {
279
+ name: "get_waypoint",
280
+ description: "Load the current project waypoint snapshot. Call at conversation start or when resuming a project.",
281
281
  inputSchema: {
282
282
  type: "object",
283
283
  properties: {},
@@ -343,8 +343,8 @@ export const tools = [
343
343
  searchMemoriesTool,
344
344
  getMemoriesTool,
345
345
  reportMemoryUsefulnessTool,
346
- storeCheckpointTool,
347
- getCheckpointTool,
346
+ setWaypointTool,
347
+ getWaypointTool,
348
348
  indexConversationsTool,
349
349
  listIndexedSessionsTool,
350
350
  reindexSessionTool,
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export declare class MemoryService {
12
12
  getConversationService(): ConversationHistoryService | null;
13
13
  store(content: string, metadata?: Record<string, unknown>, embeddingText?: string): Promise<Memory>;
14
14
  get(id: string): Promise<Memory | null>;
15
+ getMultiple(ids: string[]): Promise<Memory[]>;
15
16
  delete(id: string): Promise<boolean>;
16
17
  update(id: string, updates: {
17
18
  content?: string;
@@ -23,7 +24,7 @@ export declare class MemoryService {
23
24
  search(query: string, intent: SearchIntent, limit?: number, includeDeleted?: boolean, options?: SearchOptions): Promise<SearchResult[]>;
24
25
  trackAccess(ids: string[]): Promise<void>;
25
26
  private static readonly UUID_ZERO;
26
- storeCheckpoint(args: {
27
+ setWaypoint(args: {
27
28
  project: string;
28
29
  branch?: string;
29
30
  summary: string;
@@ -34,6 +35,6 @@ export declare class MemoryService {
34
35
  memory_ids?: string[];
35
36
  metadata?: Record<string, unknown>;
36
37
  }): Promise<Memory>;
37
- getLatestCheckpoint(): Promise<Memory | null>;
38
+ getLatestWaypoint(): Promise<Memory | null>;
38
39
  }
39
40
  //# sourceMappingURL=memory.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.service.d.ts","sourceRoot":"","sources":["../../../src/services/memory.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAA4B,MAAM,oBAAoB,CAAC;AAEzF,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAY5E,qBAAa,aAAa;IAItB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAJpB,OAAO,CAAC,mBAAmB,CAA2C;gBAG5D,UAAU,EAAE,gBAAgB,EAC5B,UAAU,EAAE,iBAAiB;IAGvC,sBAAsB,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI;IAIjE,sBAAsB,IAAI,0BAA0B,GAAG,IAAI;IAIrD,KAAK,CACT,OAAO,EAAE,MAAM,EACf,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EACtC,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC;IAuBZ,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAiBvC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIpC,MAAM,CACV,EAAE,EAAE,MAAM,EACV,OAAO,EAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GACA,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA4BnB,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAmB7D,OAAO,CAAC,kBAAkB;IAuBpB,MAAM,CACV,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,YAAY,EACpB,KAAK,GAAE,MAAW,EAClB,cAAc,GAAE,OAAe,EAC/B,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,YAAY,EAAE,CAAC;IA4EpB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAc/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CACQ;IAEnC,eAAe,CAAC,IAAI,EAAE;QAC1B,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC/B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAAG,OAAO,CAAC,MAAM,CAAC;IAgEb,mBAAmB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAGpD"}
1
+ {"version":3,"file":"memory.service.d.ts","sourceRoot":"","sources":["../../../src/services/memory.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAA4B,MAAM,oBAAoB,CAAC;AAEzF,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAY5E,qBAAa,aAAa;IAItB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,UAAU;IAJpB,OAAO,CAAC,mBAAmB,CAA2C;gBAG5D,UAAU,EAAE,gBAAgB,EAC5B,UAAU,EAAE,iBAAiB;IAGvC,sBAAsB,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI;IAIjE,sBAAsB,IAAI,0BAA0B,GAAG,IAAI;IAIrD,KAAK,CACT,OAAO,EAAE,MAAM,EACf,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EACtC,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC;IAuBZ,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAiBvC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAkB7C,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIpC,MAAM,CACV,EAAE,EAAE,MAAM,EACV,OAAO,EAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GACA,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA4BnB,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAmB7D,OAAO,CAAC,kBAAkB;IAuBpB,MAAM,CACV,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,YAAY,EACpB,KAAK,GAAE,MAAW,EAClB,cAAc,GAAE,OAAe,EAC/B,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,YAAY,EAAE,CAAC;IA4EpB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CACQ;IAEnC,WAAW,CAAC,IAAI,EAAE;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC/B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAAG,OAAO,CAAC,MAAM,CAAC;IAgEb,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAGlD"}
@@ -56,6 +56,20 @@ export class MemoryService {
56
56
  await this.repository.upsert(updatedMemory);
57
57
  return updatedMemory;
58
58
  }
59
+ async getMultiple(ids) {
60
+ if (ids.length === 0)
61
+ return [];
62
+ const memories = await this.repository.findByIds(ids);
63
+ // Track access in bulk
64
+ const now = new Date();
65
+ const live = memories.filter((m) => !isDeleted(m));
66
+ await Promise.all(live.map((m) => this.repository.upsert({
67
+ ...m,
68
+ accessCount: m.accessCount + 1,
69
+ lastAccessed: now,
70
+ })));
71
+ return live;
72
+ }
59
73
  async delete(id) {
60
74
  return await this.repository.markDeleted(id);
61
75
  }
@@ -167,20 +181,20 @@ export class MemoryService {
167
181
  return merged.slice(0, limit);
168
182
  }
169
183
  async trackAccess(ids) {
184
+ if (ids.length === 0)
185
+ return;
186
+ const memories = await this.repository.findByIds(ids);
170
187
  const now = new Date();
171
- for (const id of ids) {
172
- const memory = await this.repository.findById(id);
173
- if (memory && !isDeleted(memory)) {
174
- await this.repository.upsert({
175
- ...memory,
176
- accessCount: memory.accessCount + 1,
177
- lastAccessed: now,
178
- });
179
- }
180
- }
188
+ await Promise.all(memories
189
+ .filter((m) => !isDeleted(m))
190
+ .map((m) => this.repository.upsert({
191
+ ...m,
192
+ accessCount: m.accessCount + 1,
193
+ lastAccessed: now,
194
+ })));
181
195
  }
182
196
  static UUID_ZERO = "00000000-0000-0000-0000-000000000000";
183
- async storeCheckpoint(args) {
197
+ async setWaypoint(args) {
184
198
  // Track access for utilized memories
185
199
  if (args.memory_ids && args.memory_ids.length > 0) {
186
200
  await this.trackAccess(args.memory_ids);
@@ -194,7 +208,7 @@ export class MemoryService {
194
208
  }
195
209
  return items.map((i) => `- ${i}`).join("\n");
196
210
  };
197
- const content = `# Checkpoint - ${args.project}
211
+ const content = `# Waypoint - ${args.project}
198
212
  **Date:** ${date} ${time} | **Branch:** ${args.branch ?? "unknown"}
199
213
 
200
214
  ## Summary
@@ -216,7 +230,7 @@ ${list(args.next_steps)}
216
230
  ${list(args.memory_ids)}`;
217
231
  const metadata = {
218
232
  ...(args.metadata ?? {}),
219
- type: "checkpoint",
233
+ type: "waypoint",
220
234
  project: args.project,
221
235
  date,
222
236
  branch: args.branch ?? "unknown",
@@ -237,7 +251,7 @@ ${list(args.memory_ids)}`;
237
251
  await this.repository.upsert(memory);
238
252
  return memory;
239
253
  }
240
- async getLatestCheckpoint() {
254
+ async getLatestWaypoint() {
241
255
  return await this.get(MemoryService.UUID_ZERO);
242
256
  }
243
257
  }
@@ -1 +1 @@
1
- {"version":3,"file":"memory.service.js","sourceRoot":"","sources":["../../../src/services/memory.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.service.js","sourceRoot":"","sources":["../../../src/services/memory.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aeriondyseti/vector-memory-mcp",
3
- "version": "1.1.0-dev.3",
3
+ "version": "1.1.0-dev.6",
4
4
  "description": "A zero-configuration RAG memory server for MCP clients",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",
@@ -11,7 +11,6 @@
11
11
  "dist",
12
12
  "src",
13
13
  "scripts",
14
- "hooks",
15
14
  "README.md",
16
15
  "LICENSE"
17
16
  ],
@@ -4,6 +4,7 @@ import {
4
4
  CONVERSATION_TABLE_NAME,
5
5
  conversationSchema,
6
6
  } from "./conversation.schema.js";
7
+ import { arrowTimestampToDate } from "./lancedb-utils.js";
7
8
  import type {
8
9
  ConversationHybridRow,
9
10
  HistoryFilters,
@@ -49,7 +50,7 @@ export class ConversationRepository {
49
50
  id: row.id as string,
50
51
  content: row.content as string,
51
52
  metadata,
52
- createdAt: new Date(row.created_at as number),
53
+ createdAt: arrowTimestampToDate(row.created_at),
53
54
  rrfScore: (row._relevance_score as number) ?? 0,
54
55
  };
55
56
  }
@@ -22,7 +22,7 @@ export const conversationSchema = new Schema([
22
22
  new Field("metadata", new Utf8(), false), // JSON string
23
23
  new Field(
24
24
  "created_at",
25
- new Timestamp(TimeUnit.MILLISECOND),
25
+ new Timestamp(TimeUnit.MILLISECOND, "UTC"),
26
26
  false
27
27
  ),
28
28
  new Field("session_id", new Utf8(), false),
@@ -27,6 +27,23 @@ export function arrowVectorToArray(value: unknown): number[] {
27
27
  : (Array.from(value as Iterable<number>) as number[]);
28
28
  }
29
29
 
30
+ /**
31
+ * Converts an Arrow Timestamp value to a JavaScript Date.
32
+ *
33
+ * LanceDB/Arrow can return timestamp column values as:
34
+ * - number (most common: raw int64 ms since epoch, fits in JS float64)
35
+ * - BigInt (large int64 values that overflow float64 — rare for timestamps)
36
+ * - Date (hypothetical: some future Arrow-JS build may decode for us)
37
+ *
38
+ * Doing `new Date(row.ts as number)` is a TypeScript lie that silently breaks
39
+ * when Arrow returns a BigInt. This helper handles all three cases safely.
40
+ */
41
+ export function arrowTimestampToDate(value: unknown): Date {
42
+ if (value instanceof Date) return new Date(value.getTime());
43
+ if (typeof value === "bigint") return new Date(Number(value));
44
+ return new Date(value as number);
45
+ }
46
+
30
47
  /**
31
48
  * Safely parse a JSON string into an object, returning an empty object on failure.
32
49
  */
@@ -1,7 +1,7 @@
1
1
  import * as lancedb from "@lancedb/lancedb";
2
2
  import { type Table } from "@lancedb/lancedb";
3
3
  import { TABLE_NAME, memorySchema } from "./schema.js";
4
- import { arrowVectorToArray, createFtsMutex, createRerankerMutex, escapeSql, safeParseJsonObject } from "./lancedb-utils.js";
4
+ import { arrowTimestampToDate, arrowVectorToArray, createFtsMutex, createRerankerMutex, escapeSql, safeParseJsonObject } from "./lancedb-utils.js";
5
5
  import {
6
6
  type Memory,
7
7
  type HybridRow,
@@ -84,13 +84,13 @@ export class MemoryRepository {
84
84
  content: row.content as string,
85
85
  embedding: arrowVectorToArray(row.vector),
86
86
  metadata: safeParseJsonObject(row.metadata as string),
87
- createdAt: new Date(row.created_at as number),
88
- updatedAt: new Date(row.updated_at as number),
87
+ createdAt: arrowTimestampToDate(row.created_at),
88
+ updatedAt: arrowTimestampToDate(row.updated_at),
89
89
  supersededBy: row.superseded_by as string | null,
90
90
  usefulness: (row.usefulness as number) ?? 0,
91
91
  accessCount: (row.access_count as number) ?? 0,
92
92
  lastAccessed: row.last_accessed
93
- ? new Date(row.last_accessed as number)
93
+ ? arrowTimestampToDate(row.last_accessed)
94
94
  : null,
95
95
  };
96
96
  }
@@ -148,6 +148,17 @@ export class MemoryRepository {
148
148
  return this.rowToMemory(results[0] as Record<string, unknown>);
149
149
  }
150
150
 
151
+ async findByIds(ids: string[]): Promise<Memory[]> {
152
+ if (ids.length === 0) return [];
153
+ const table = await this.getTable();
154
+ const inList = ids.map((id) => `'${escapeSql(id)}'`).join(", ");
155
+ const results = await table
156
+ .query()
157
+ .where(`id IN (${inList})`)
158
+ .toArray();
159
+ return results.map((row) => this.rowToMemory(row as Record<string, unknown>));
160
+ }
161
+
151
162
  async markDeleted(id: string): Promise<boolean> {
152
163
  const table = await this.getTable();
153
164
 
package/src/db/schema.ts CHANGED
@@ -20,7 +20,7 @@ export const vectorField = () =>
20
20
  );
21
21
 
22
22
  export const timestampField = (name: string, nullable = false) =>
23
- new Field(name, new Timestamp(TimeUnit.MILLISECOND), nullable);
23
+ new Field(name, new Timestamp(TimeUnit.MILLISECOND, "UTC"), nullable);
24
24
 
25
25
  export const TABLE_NAME = "memories";
26
26
 
@@ -163,31 +163,25 @@ export function createHttpApp(memoryService: MemoryService, config: Config): Hon
163
163
  }
164
164
  });
165
165
 
166
- // Get latest checkpoint
167
- app.get("/checkpoint", async (c) => {
166
+ // Get latest waypoint
167
+ app.get("/waypoint", async (c) => {
168
168
  try {
169
- const checkpoint = await memoryService.getLatestCheckpoint();
169
+ const waypoint = await memoryService.getLatestWaypoint();
170
170
 
171
- if (!checkpoint) {
172
- return c.json({ error: "No checkpoint found" }, 404);
171
+ if (!waypoint) {
172
+ return c.json({ error: "No waypoint found" }, 404);
173
173
  }
174
174
 
175
- // Fetch referenced memories if any
176
- const memoryIds = (checkpoint.metadata.memory_ids as string[] | undefined) ?? [];
177
- const referencedMemories: Array<{ id: string; content: string }> = [];
178
-
179
- for (const id of memoryIds) {
180
- const memory = await memoryService.get(id);
181
- if (memory && !isDeleted(memory)) {
182
- referencedMemories.push({ id: memory.id, content: memory.content });
183
- }
184
- }
175
+ // Fetch referenced memories in a single query
176
+ const memoryIds = (waypoint.metadata.memory_ids as string[] | undefined) ?? [];
177
+ const memories = await memoryService.getMultiple(memoryIds);
178
+ const referencedMemories = memories.map((m) => ({ id: m.id, content: m.content }));
185
179
 
186
180
  return c.json({
187
- content: checkpoint.content,
188
- metadata: checkpoint.metadata,
181
+ content: waypoint.content,
182
+ metadata: waypoint.metadata,
189
183
  referencedMemories,
190
- updatedAt: checkpoint.updatedAt.toISOString(),
184
+ updatedAt: waypoint.updatedAt.toISOString(),
191
185
  });
192
186
  } catch (error) {
193
187
  const message = error instanceof Error ? error.message : "Unknown error";
@@ -168,11 +168,11 @@ export async function handleGetMemories(
168
168
  ): Promise<CallToolResult> {
169
169
  const ids = args?.ids as string[];
170
170
 
171
- const blocks: string[] = [];
172
- for (const id of ids) {
173
- const memory = await service.get(id);
174
- blocks.push(formatMemoryDetail(id, memory));
175
- }
171
+ const memories = await service.getMultiple(ids);
172
+ const memoryMap = new Map(memories.map((m) => [m.id, m]));
173
+
174
+ // Preserve requested order; show "not found" for missing IDs
175
+ const blocks = ids.map((id) => formatMemoryDetail(id, memoryMap.get(id) ?? null));
176
176
 
177
177
  return {
178
178
  content: [{ type: "text", text: blocks.join("\n\n---\n\n") }],
@@ -205,11 +205,11 @@ export async function handleReportMemoryUsefulness(
205
205
  };
206
206
  }
207
207
 
208
- export async function handleStoreCheckpoint(
208
+ export async function handleSetWaypoint(
209
209
  args: Record<string, unknown> | undefined,
210
210
  service: MemoryService
211
211
  ): Promise<CallToolResult> {
212
- const memory = await service.storeCheckpoint({
212
+ const memory = await service.setWaypoint({
213
213
  project: args?.project as string,
214
214
  branch: args?.branch as string | undefined,
215
215
  summary: args?.summary as string,
@@ -222,41 +222,36 @@ export async function handleStoreCheckpoint(
222
222
  });
223
223
 
224
224
  return {
225
- content: [{ type: "text", text: `Checkpoint stored with memory ID: ${memory.id}` }],
225
+ content: [{ type: "text", text: `Waypoint stored with memory ID: ${memory.id}` }],
226
226
  };
227
227
  }
228
228
 
229
- export async function handleGetCheckpoint(
229
+ export async function handleGetWaypoint(
230
230
  _args: Record<string, unknown> | undefined,
231
231
  service: MemoryService
232
232
  ): Promise<CallToolResult> {
233
- const checkpoint = await service.getLatestCheckpoint();
233
+ const waypoint = await service.getLatestWaypoint();
234
234
 
235
- if (!checkpoint) {
235
+ if (!waypoint) {
236
236
  return {
237
- content: [{ type: "text", text: "No stored checkpoint found." }],
237
+ content: [{ type: "text", text: "No stored waypoint found." }],
238
238
  };
239
239
  }
240
240
 
241
- // Fetch referenced memories if any
242
- const memoryIds = (checkpoint.metadata.memory_ids as string[] | undefined) ?? [];
241
+ // Fetch referenced memories in batch
242
+ const memoryIds = (waypoint.metadata.memory_ids as string[] | undefined) ?? [];
243
243
  let memoriesSection = "";
244
244
 
245
245
  if (memoryIds.length > 0) {
246
- const memories: string[] = [];
247
- for (const id of memoryIds) {
248
- const memory = await service.get(id);
249
- if (memory) {
250
- memories.push(`### Memory: ${id}\n${memory.content}`);
251
- }
252
- }
253
- if (memories.length > 0) {
254
- memoriesSection = `\n\n## Referenced Memories\n\n${memories.join("\n\n")}`;
246
+ const fetched = await service.getMultiple(memoryIds);
247
+ const blocks = fetched.map((m) => `### Memory: ${m.id}\n${m.content}`);
248
+ if (blocks.length > 0) {
249
+ memoriesSection = `\n\n## Referenced Memories\n\n${blocks.join("\n\n")}`;
255
250
  }
256
251
  }
257
252
 
258
253
  return {
259
- content: [{ type: "text", text: checkpoint.content + memoriesSection }],
254
+ content: [{ type: "text", text: waypoint.content + memoriesSection }],
260
255
  };
261
256
  }
262
257
 
@@ -414,10 +409,10 @@ export async function handleToolCall(
414
409
  return handleGetMemories(args, service);
415
410
  case "report_memory_usefulness":
416
411
  return handleReportMemoryUsefulness(args, service);
417
- case "store_checkpoint":
418
- return handleStoreCheckpoint(args, service);
419
- case "get_checkpoint":
420
- return handleGetCheckpoint(args, service);
412
+ case "set_waypoint":
413
+ return handleSetWaypoint(args, service);
414
+ case "get_waypoint":
415
+ return handleGetWaypoint(args, service);
421
416
  case "index_conversations":
422
417
  return handleIndexConversations(args, service);
423
418
  case "list_indexed_sessions":
package/src/mcp/tools.ts CHANGED
@@ -237,9 +237,9 @@ export const reportMemoryUsefulnessTool: Tool = {
237
237
  },
238
238
  };
239
239
 
240
- export const storeCheckpointTool: Tool = {
241
- name: "store_checkpoint",
242
- description: `Save session state for seamless resumption later. Use at end of work sessions or before context switches.
240
+ export const setWaypointTool: Tool = {
241
+ name: "set_waypoint",
242
+ description: `Save session waypoint for seamless resumption later. Use at end of work sessions or before context switches.
243
243
 
244
244
  Creates a structured snapshot with:
245
245
  - summary: 2-3 sentences on goal and current status
@@ -249,7 +249,7 @@ Creates a structured snapshot with:
249
249
  - next_steps: concrete, actionable items
250
250
  - memory_ids: link to related memories stored this session
251
251
 
252
- Retrievable via get_checkpoint. Only one checkpoint per project—new checkpoints overwrite previous.`,
252
+ Retrievable via get_waypoint. Only one waypoint per project—new waypoints overwrite previous.`,
253
253
  inputSchema: {
254
254
  type: "object",
255
255
  properties: {
@@ -279,7 +279,7 @@ Retrievable via get_checkpoint. Only one checkpoint per project—new checkpoint
279
279
  memory_ids: {
280
280
  type: "array",
281
281
  items: { type: "string" },
282
- description: "Memory IDs referenced by this checkpoint.",
282
+ description: "Memory IDs referenced by this waypoint.",
283
283
  },
284
284
  metadata: {
285
285
  type: "object",
@@ -291,10 +291,10 @@ Retrievable via get_checkpoint. Only one checkpoint per project—new checkpoint
291
291
  },
292
292
  };
293
293
 
294
- export const getCheckpointTool: Tool = {
295
- name: "get_checkpoint",
294
+ export const getWaypointTool: Tool = {
295
+ name: "get_waypoint",
296
296
  description:
297
- "Load the current project checkpoint snapshot. Call at conversation start or when resuming a project.",
297
+ "Load the current project waypoint snapshot. Call at conversation start or when resuming a project.",
298
298
  inputSchema: {
299
299
  type: "object",
300
300
  properties: {},
@@ -368,8 +368,8 @@ export const tools: Tool[] = [
368
368
  searchMemoriesTool,
369
369
  getMemoriesTool,
370
370
  reportMemoryUsefulnessTool,
371
- storeCheckpointTool,
372
- getCheckpointTool,
371
+ setWaypointTool,
372
+ getWaypointTool,
373
373
  indexConversationsTool,
374
374
  listIndexedSessionsTool,
375
375
  reindexSessionTool,