stellar-memory 0.8.4 → 1.0.0

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 (139) hide show
  1. package/dist/api/routes/memories.js +5 -4
  2. package/dist/api/routes/memories.js.map +1 -1
  3. package/dist/api/websocket.d.ts +0 -6
  4. package/dist/api/websocket.js +1 -1
  5. package/dist/api/websocket.js.map +1 -1
  6. package/dist/engine/analytics.js +4 -33
  7. package/dist/engine/analytics.js.map +1 -1
  8. package/dist/engine/conflict.js +2 -4
  9. package/dist/engine/conflict.js.map +1 -1
  10. package/dist/engine/consolidation.js +3 -21
  11. package/dist/engine/consolidation.js.map +1 -1
  12. package/dist/engine/constellation.js +6 -14
  13. package/dist/engine/constellation.js.map +1 -1
  14. package/dist/engine/corona.js +3 -1
  15. package/dist/engine/corona.js.map +1 -1
  16. package/dist/engine/multiproject.js +6 -73
  17. package/dist/engine/multiproject.js.map +1 -1
  18. package/dist/engine/observation.d.ts +1 -42
  19. package/dist/engine/observation.js +4 -23
  20. package/dist/engine/observation.js.map +1 -1
  21. package/dist/engine/orbit.js +50 -11
  22. package/dist/engine/orbit.js.map +1 -1
  23. package/dist/engine/planet.d.ts +3 -0
  24. package/dist/engine/planet.js +16 -11
  25. package/dist/engine/planet.js.map +1 -1
  26. package/dist/engine/procedural.d.ts +0 -13
  27. package/dist/engine/procedural.js +2 -47
  28. package/dist/engine/procedural.js.map +1 -1
  29. package/dist/engine/services/commit-service.d.ts +29 -0
  30. package/dist/engine/services/commit-service.js +35 -0
  31. package/dist/engine/services/commit-service.js.map +1 -0
  32. package/dist/engine/services/index.d.ts +4 -0
  33. package/dist/engine/services/index.js +4 -0
  34. package/dist/engine/services/index.js.map +1 -0
  35. package/dist/engine/services/memory-service.d.ts +48 -0
  36. package/dist/engine/services/memory-service.js +85 -0
  37. package/dist/engine/services/memory-service.js.map +1 -0
  38. package/dist/engine/services/recall-service.d.ts +31 -0
  39. package/dist/engine/services/recall-service.js +35 -0
  40. package/dist/engine/services/recall-service.js.map +1 -0
  41. package/dist/engine/sun.d.ts +9 -5
  42. package/dist/engine/sun.js +111 -12
  43. package/dist/engine/sun.js.map +1 -1
  44. package/dist/engine/temporal.js +8 -67
  45. package/dist/engine/temporal.js.map +1 -1
  46. package/dist/engine/types.d.ts +0 -15
  47. package/dist/engine/types.js +0 -7
  48. package/dist/engine/types.js.map +1 -1
  49. package/dist/mcp/server.js +88 -123
  50. package/dist/mcp/server.js.map +1 -1
  51. package/dist/mcp/tools/analytics-handlers.d.ts +20 -0
  52. package/dist/mcp/tools/analytics-handlers.js +292 -0
  53. package/dist/mcp/tools/analytics-handlers.js.map +1 -0
  54. package/dist/mcp/tools/graph-handlers.d.ts +20 -0
  55. package/dist/mcp/tools/graph-handlers.js +126 -0
  56. package/dist/mcp/tools/graph-handlers.js.map +1 -0
  57. package/dist/mcp/tools/memory-handlers.d.ts +27 -0
  58. package/dist/mcp/tools/memory-handlers.js +177 -0
  59. package/dist/mcp/tools/memory-handlers.js.map +1 -0
  60. package/dist/mcp/tools/memory-tools.d.ts +19 -117
  61. package/dist/mcp/tools/memory-tools.js +19 -1049
  62. package/dist/mcp/tools/memory-tools.js.map +1 -1
  63. package/dist/mcp/tools/observation-handlers.d.ts +15 -0
  64. package/dist/mcp/tools/observation-handlers.js +74 -0
  65. package/dist/mcp/tools/observation-handlers.js.map +1 -0
  66. package/dist/mcp/tools/shared.d.ts +36 -0
  67. package/dist/mcp/tools/shared.js +71 -0
  68. package/dist/mcp/tools/shared.js.map +1 -0
  69. package/dist/mcp/tools/sun-handler.d.ts +12 -0
  70. package/dist/mcp/tools/sun-handler.js +35 -0
  71. package/dist/mcp/tools/sun-handler.js.map +1 -0
  72. package/dist/mcp/tools/system-handlers.d.ts +27 -0
  73. package/dist/mcp/tools/system-handlers.js +259 -0
  74. package/dist/mcp/tools/system-handlers.js.map +1 -0
  75. package/dist/mcp/tools/temporal-handlers.d.ts +15 -0
  76. package/dist/mcp/tools/temporal-handlers.js +82 -0
  77. package/dist/mcp/tools/temporal-handlers.js.map +1 -0
  78. package/dist/scanner/local/filesystem.d.ts +0 -2
  79. package/dist/scanner/local/filesystem.js +1 -5
  80. package/dist/scanner/local/filesystem.js.map +1 -1
  81. package/dist/scanner/local/git.d.ts +0 -5
  82. package/dist/scanner/local/git.js +1 -1
  83. package/dist/scanner/local/git.js.map +1 -1
  84. package/dist/scanner/metadata-scanner.d.ts +3 -14
  85. package/dist/scanner/metadata-scanner.js +10 -10
  86. package/dist/scanner/metadata-scanner.js.map +1 -1
  87. package/dist/service/scheduler.js +32 -13
  88. package/dist/service/scheduler.js.map +1 -1
  89. package/dist/storage/database.js +81 -2
  90. package/dist/storage/database.js.map +1 -1
  91. package/dist/storage/queries/analytics-queries.d.ts +59 -0
  92. package/dist/storage/queries/analytics-queries.js +265 -0
  93. package/dist/storage/queries/analytics-queries.js.map +1 -0
  94. package/dist/storage/queries/conflict-queries.d.ts +16 -0
  95. package/dist/storage/queries/conflict-queries.js +56 -0
  96. package/dist/storage/queries/conflict-queries.js.map +1 -0
  97. package/dist/storage/queries/constellation-queries.d.ts +18 -0
  98. package/dist/storage/queries/constellation-queries.js +101 -0
  99. package/dist/storage/queries/constellation-queries.js.map +1 -0
  100. package/dist/storage/queries/datasource-queries.d.ts +9 -0
  101. package/dist/storage/queries/datasource-queries.js +53 -0
  102. package/dist/storage/queries/datasource-queries.js.map +1 -0
  103. package/dist/storage/queries/memory-queries.d.ts +53 -0
  104. package/dist/storage/queries/memory-queries.js +415 -0
  105. package/dist/storage/queries/memory-queries.js.map +1 -0
  106. package/dist/storage/queries/observation-queries.d.ts +7 -0
  107. package/dist/storage/queries/observation-queries.js +23 -0
  108. package/dist/storage/queries/observation-queries.js.map +1 -0
  109. package/dist/storage/queries/orbit-queries.d.ts +7 -0
  110. package/dist/storage/queries/orbit-queries.js +23 -0
  111. package/dist/storage/queries/orbit-queries.js.map +1 -0
  112. package/dist/storage/queries/shared.d.ts +106 -0
  113. package/dist/storage/queries/shared.js +120 -0
  114. package/dist/storage/queries/shared.js.map +1 -0
  115. package/dist/storage/queries/sun-queries.d.ts +9 -0
  116. package/dist/storage/queries/sun-queries.js +43 -0
  117. package/dist/storage/queries/sun-queries.js.map +1 -0
  118. package/dist/storage/queries/temporal-queries.d.ts +32 -0
  119. package/dist/storage/queries/temporal-queries.js +112 -0
  120. package/dist/storage/queries/temporal-queries.js.map +1 -0
  121. package/dist/storage/queries.d.ts +15 -84
  122. package/dist/storage/queries.js +15 -896
  123. package/dist/storage/queries.js.map +1 -1
  124. package/dist/storage/vec.d.ts +5 -1
  125. package/dist/storage/vec.js +48 -24
  126. package/dist/storage/vec.js.map +1 -1
  127. package/dist/utils/config.d.ts +0 -1
  128. package/dist/utils/config.js +1 -1
  129. package/dist/utils/config.js.map +1 -1
  130. package/dist/utils/logger.d.ts +0 -2
  131. package/dist/utils/logger.js +0 -2
  132. package/dist/utils/logger.js.map +1 -1
  133. package/dist/utils/stopwords.d.ts +6 -0
  134. package/dist/utils/stopwords.js +22 -0
  135. package/dist/utils/stopwords.js.map +1 -0
  136. package/dist/utils/tokenizer.d.ts +2 -1
  137. package/dist/utils/tokenizer.js +7 -5
  138. package/dist/utils/tokenizer.js.map +1 -1
  139. package/package.json +78 -78
@@ -1 +1 @@
1
- {"version":3,"file":"sun.js","sourceRoot":"","sources":["../../src/engine/sun.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sun.js","sourceRoot":"","sources":["../../src/engine/sun.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,7 @@
7
7
  *
8
8
  * All functions are pure (no classes), following the project style.
9
9
  */
10
- import { getDatabase } from '../storage/database.js';
11
- import { getMemoriesAtTime, supersedMemory as queriesSupersedMemory, getSupersessionChain, } from '../storage/queries.js';
10
+ import { getMemoriesAtTime, supersedMemory as queriesSupersedMemory, getSupersessionChain, setTemporalBoundsQuery, findSupersessionChainRoot, getTemporalStats, } from '../storage/queries.js';
12
11
  import { createLogger } from '../utils/logger.js';
13
12
  const log = createLogger('temporal');
14
13
  // ---------------------------------------------------------------------------
@@ -21,20 +20,7 @@ const log = createLogger('temporal');
21
20
  * - validUntil: ISO date string. Setting this marks the fact as no longer current.
22
21
  */
23
22
  export function setTemporalBounds(memoryId, validFrom, validUntil) {
24
- const db = getDatabase();
25
- const now = new Date().toISOString();
26
- const sets = ['updated_at = ?'];
27
- const values = [now];
28
- if (validFrom !== undefined) {
29
- sets.push('valid_from = ?');
30
- values.push(validFrom);
31
- }
32
- if (validUntil !== undefined) {
33
- sets.push('valid_until = ?');
34
- values.push(validUntil);
35
- }
36
- values.push(memoryId);
37
- db.prepare(`UPDATE memories SET ${sets.join(', ')} WHERE id = ?`).run(...values);
23
+ setTemporalBoundsQuery(memoryId, validFrom, validUntil);
38
24
  log.debug('Temporal bounds set', { memoryId, validFrom, validUntil });
39
25
  }
40
26
  // ---------------------------------------------------------------------------
@@ -76,33 +62,11 @@ export function getContextAtTime(project, timestamp) {
76
62
  * Returns the full lineage in chronological order (oldest first).
77
63
  */
78
64
  export function getEvolutionChain(memoryId) {
79
- // First find the root (walk backward via content search is not feasible —
80
- // we look for any memory whose superseded_by points to our target, recursively).
81
- const root = findChainRoot(memoryId);
82
- // Now walk forward from root using getSupersessionChain (follows superseded_by).
65
+ // Walk backward to find the root, then forward using getSupersessionChain.
66
+ const root = findSupersessionChainRoot(memoryId);
83
67
  const chain = getSupersessionChain(root);
84
- // Sort chronologically by created_at
85
68
  return chain.sort((a, b) => a.created_at.localeCompare(b.created_at));
86
69
  }
87
- /**
88
- * Walk backward to find the oldest ancestor in the supersession chain.
89
- * A memory is a root if no other non-deleted memory has superseded_by = its id.
90
- */
91
- function findChainRoot(memoryId) {
92
- const db = getDatabase();
93
- let currentId = memoryId;
94
- for (let depth = 0; depth < 50; depth++) {
95
- const row = db.prepare(`
96
- SELECT id FROM memories
97
- WHERE superseded_by = ? AND deleted_at IS NULL
98
- LIMIT 1
99
- `).get(currentId);
100
- if (!row)
101
- break;
102
- currentId = row.id;
103
- }
104
- return currentId;
105
- }
106
70
  // ---------------------------------------------------------------------------
107
71
  // Auto-detect supersession
108
72
  // ---------------------------------------------------------------------------
@@ -187,36 +151,13 @@ export function detectSupersession(newMemory, existingMemories) {
187
151
  * - Recent supersession events (last 5)
188
152
  */
189
153
  export function getTemporalSummary(project) {
190
- const db = getDatabase();
191
- const now = new Date().toISOString();
192
- // Active: not deleted, valid_from ≤ now, valid_until IS NULL or > now
193
- const activeRow = db.prepare(`
194
- SELECT COUNT(*) as count FROM memories
195
- WHERE project = ?
196
- AND deleted_at IS NULL
197
- AND (valid_from IS NULL OR valid_from <= ?)
198
- AND (valid_until IS NULL OR valid_until > ?)
199
- `).get(project, now, now);
200
- // Superseded: has superseded_by set
201
- const supersededRow = db.prepare(`
202
- SELECT COUNT(*) as count FROM memories
203
- WHERE project = ? AND deleted_at IS NULL AND superseded_by IS NOT NULL
204
- `).get(project);
205
- // Recent supersessions
206
- const recentRows = db.prepare(`
207
- SELECT id, summary, superseded_by, updated_at FROM memories
208
- WHERE project = ?
209
- AND deleted_at IS NULL
210
- AND superseded_by IS NOT NULL
211
- ORDER BY updated_at DESC
212
- LIMIT 5
213
- `).all(project);
154
+ const { activeCount, supersededCount, recentSupersessions } = getTemporalStats(project);
214
155
  const lines = [
215
- `Temporal: ${activeRow.count} active, ${supersededRow.count} superseded`,
156
+ `Temporal: ${activeCount} active, ${supersededCount} superseded`,
216
157
  ];
217
- if (recentRows.length > 0) {
158
+ if (recentSupersessions.length > 0) {
218
159
  lines.push('Recent supersessions:');
219
- for (const row of recentRows) {
160
+ for (const row of recentSupersessions) {
220
161
  const date = row.updated_at.slice(0, 10);
221
162
  lines.push(` [${date}] "${row.summary}" → superseded by ${row.superseded_by.slice(0, 8)}`);
222
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"temporal.js","sourceRoot":"","sources":["../../src/engine/temporal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"temporal.js","sourceRoot":"","sources":["../../src/engine/temporal.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,iBAAiB,EACjB,cAAc,IAAI,qBAAqB,EACvC,oBAAoB,EAEpB,sBAAsB,EACtB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,GAAG,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAErC,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAgB,EAChB,SAAkB,EAClB,UAAmB;IAEnB,sBAAsB,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IACxD,GAAG,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,WAAmB,EAAE,WAAmB;IACtE,qBAAqB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAChD,GAAG,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,SAAiB;IACjE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACvD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;AAC9D,CAAC;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAChD,2EAA2E;IAC3E,MAAM,IAAI,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAAiB,EACjB,gBAA0B;IAE1B,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAEjD,kDAAkD;IAClD,MAAM,eAAe,GAAG;QACtB,2BAA2B;QAC3B,oBAAoB;QACpB,uBAAuB;QACvB,qCAAqC;QACrC,2BAA2B;QAC3B,8BAA8B;KAC/B,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;QACxC,mCAAmC;QACnC,IAAI,QAAQ,CAAC,aAAa;YAAE,SAAS;QACrC,YAAY;QACZ,IAAI,QAAQ,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE;YAAE,SAAS;QAE3C,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,aAAa,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;QAErD,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAErD,iCAAiC;QACjC,IAAI,OAAO,GAAG,GAAG;YAAE,SAAS;QAE5B,uEAAuE;QACvE,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC;YACvF,GAAG,CAAC,KAAK,CAAC,6DAA6D,EAAE;gBACvE,UAAU,EAAE,QAAQ,CAAC,EAAE;gBACvB,OAAO;aACR,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,mFAAmF;QACnF,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;oBACzC,GAAG,CAAC,KAAK,CAAC,+CAA+C,EAAE;wBACzD,UAAU,EAAE,QAAQ,CAAC,EAAE;wBACvB,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;wBAC3B,YAAY;qBACb,CAAC,CAAC;oBACH,OAAO,QAAQ,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;QAED,8CAA8C;QAC9C,IAAI,OAAO,IAAI,GAAG,IAAI,iBAAiB,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,KAAK,CAAC,gDAAgD,EAAE;gBAC1D,UAAU,EAAE,QAAQ,CAAC,EAAE;gBACvB,OAAO;aACR,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,mCAAmC;AACnC,8EAA8E;AAE9E;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAExF,MAAM,KAAK,GAAa;QACtB,aAAa,WAAW,YAAY,eAAe,aAAa;KACjE,CAAC;IAEF,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACpC,KAAK,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,OAAO,qBAAqB,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;QACzB,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO;QACnE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;QACnE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK;QACjE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ;QACnE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK;QAC/D,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;KACpE,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IACnD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,CAAc,EAAE,CAAc;IACjD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,EAAE,CAAC;IAC5B,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzC,OAAO,MAAM,GAAG,KAAK,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,OAAe,EAAE,YAAoB;IAC9D,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;IAC7F,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAExF,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe;YAAE,SAAS;QAE/B,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;QACnF,IAAI,cAAc;YAAE,OAAO,IAAI,CAAC;IAClC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -33,12 +33,6 @@ export declare const ORBIT_ZONES: {
33
33
  };
34
34
  export type OrbitZone = keyof typeof ORBIT_ZONES;
35
35
  export declare const IMPACT_DEFAULTS: Record<MemoryType, number>;
36
- export declare const DEFAULT_WEIGHTS: {
37
- readonly recency: 0.3;
38
- readonly frequency: 0.2;
39
- readonly impact: 0.3;
40
- readonly relevance: 0.2;
41
- };
42
36
  export type MemoryValidityState = 'active' | 'future' | 'expired' | 'superseded';
43
37
  export interface Memory {
44
38
  id: string;
@@ -69,10 +63,6 @@ export interface Memory {
69
63
  quality_score?: number;
70
64
  is_universal?: boolean;
71
65
  }
72
- export interface VectorSearchResult {
73
- memoryId: string;
74
- distance: number;
75
- }
76
66
  export interface SunState {
77
67
  project: string;
78
68
  content: string;
@@ -117,11 +107,6 @@ export interface ConstellationEdge {
117
107
  created_at: string;
118
108
  metadata?: Record<string, unknown>;
119
109
  }
120
- export interface TemporalInfo {
121
- valid_from?: string;
122
- valid_until?: string;
123
- superseded_by?: string;
124
- }
125
110
  export interface MemoryConflict {
126
111
  id: string;
127
112
  memory_id: string;
@@ -17,11 +17,4 @@ export const IMPACT_DEFAULTS = {
17
17
  observation: 0.3,
18
18
  procedural: 0.5,
19
19
  };
20
- // Importance weights
21
- export const DEFAULT_WEIGHTS = {
22
- recency: 0.30,
23
- frequency: 0.20,
24
- impact: 0.30,
25
- relevance: 0.20,
26
- };
27
20
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/engine/types.ts"],"names":[],"mappings":"AAGA,cAAc;AACd,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAO,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,GAAG,EAAG,KAAK,EAAE,aAAa,EAAE;IACzD,IAAI,EAAO,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,GAAG,EAAG,KAAK,EAAE,eAAe,EAAE;IAC3D,MAAM,EAAK,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,OAAO,EAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,MAAM,EAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE;CACvD,CAAC;AAIX,gCAAgC;AAChC,MAAM,CAAC,MAAM,eAAe,GAA+B;IACzD,QAAQ,EAAK,GAAG;IAChB,SAAS,EAAI,GAAG;IAChB,KAAK,EAAQ,GAAG;IAChB,IAAI,EAAS,GAAG;IAChB,OAAO,EAAM,GAAG;IAChB,WAAW,EAAE,GAAG;IAChB,UAAU,EAAG,GAAG;CACjB,CAAC;AAEF,qBAAqB;AACrB,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAI,IAAI;IACf,SAAS,EAAE,IAAI;IACf,MAAM,EAAK,IAAI;IACf,SAAS,EAAE,IAAI;CACP,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/engine/types.ts"],"names":[],"mappings":"AAGA,cAAc;AACd,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAO,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,GAAG,EAAG,KAAK,EAAE,aAAa,EAAE;IACzD,IAAI,EAAO,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,GAAG,EAAG,KAAK,EAAE,eAAe,EAAE;IAC3D,MAAM,EAAK,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,OAAO,EAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,MAAM,EAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE;CACvD,CAAC;AAIX,gCAAgC;AAChC,MAAM,CAAC,MAAM,eAAe,GAA+B;IACzD,QAAQ,EAAK,GAAG;IAChB,SAAS,EAAI,GAAG;IAChB,KAAK,EAAQ,GAAG;IAChB,IAAI,EAAS,GAAG;IAChB,OAAO,EAAM,GAAG;IAChB,WAAW,EAAE,GAAG;IAChB,UAAU,EAAG,GAAG;CACjB,CAAC"}
@@ -12,11 +12,27 @@
12
12
  */
13
13
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
14
14
  import { z } from 'zod';
15
- import { handleStatus, handleCommit, handleRecall, handleRemember, handleOrbit, handleForget, handleExport, handleConstellation, handleGalaxy, handleAnalytics, handleSunResource, handleObserve, handleConsolidate, handleResolveConflict, handleTemporal, } from './tools/memory-tools.js';
15
+ import { handleStatus, handleCommit, handleOrbit, handleExport } from './tools/system-handlers.js';
16
+ import { handleRemember, handleRecall, handleForget } from './tools/memory-handlers.js';
17
+ import { handleConstellation, handleResolveConflict } from './tools/graph-handlers.js';
18
+ import { handleAnalytics, handleGalaxy } from './tools/analytics-handlers.js';
19
+ import { handleObserve, handleConsolidate } from './tools/observation-handlers.js';
20
+ import { handleTemporal } from './tools/temporal-handlers.js';
21
+ import { handleSunResource } from './tools/sun-handler.js';
22
+ import { trackBgError } from './tools/shared.js';
16
23
  import { handleScan } from './tools/ingestion-tools.js';
17
24
  import { handleDaemon } from './tools/daemon-tool.js';
18
25
  import { getSunContent } from '../engine/sun.js';
19
26
  import { getCurrentProject } from '../engine/multiproject.js';
27
+ import { setErrorReporter } from '../engine/planet.js';
28
+ // Wire the error reporter callback: planet.ts (engine) calls back into the MCP
29
+ // layer's trackBgError without creating a circular import.
30
+ setErrorReporter((category) => {
31
+ const key = category;
32
+ if (key === 'embedding' || key === 'constellation' || key === 'consolidation') {
33
+ trackBgError(key);
34
+ }
35
+ });
20
36
  // ---------------------------------------------------------------------------
21
37
  // Server factory
22
38
  // ---------------------------------------------------------------------------
@@ -48,225 +64,174 @@ export function createStellarServer() {
48
64
  }
49
65
  // ── Resource: stellar://sun ───────────────────────────────────────────────
50
66
  server.resource('sun', 'stellar://sun', {
51
- description: 'Current working context (the Sun). Contains the active project state, recent decisions, ' +
52
- 'next steps, and the most important memories in the core orbital zone. ' +
53
- 'Reading this resource restores full session context instantly. ' +
54
- 'Read it at the start of every conversation to know what was being worked on.',
67
+ description: 'Current working context: project state, decisions, next steps, and core memories.',
55
68
  mimeType: 'text/plain',
56
69
  }, (uri) => handleSunResource(uri.href));
57
70
  // ── Tool: status ──────────────────────────────────────────────────────────
58
- server.tool('status', 'View the current state of your stellar memory system. Shows memories grouped by orbital zone ' +
59
- '(core = most important, forgotten = least relevant), and optionally lists registered data sources. ' +
60
- 'Call this at the start of a session to see the full memory landscape.', {
71
+ server.tool('status', 'View memories grouped by orbital zone.', {
61
72
  zone: z.enum(['all', 'core', 'near', 'active', 'archive', 'fading', 'forgotten'])
62
73
  .optional()
63
- .describe('Filter memories to a specific orbital zone. Defaults to "all".'),
74
+ .describe('Filter to a specific orbital zone.'),
64
75
  limit: z.number().int().min(1).max(200)
65
76
  .optional()
66
- .describe('Maximum number of memories to return. Defaults to 50.'),
77
+ .describe('Max memories to return.'),
67
78
  show: z.enum(['memories', 'sources', 'all'])
68
79
  .optional()
69
- .describe('What to display: memories, data sources, or both. Default: "memories".'),
80
+ .describe('Show memories, data sources, or both.'),
70
81
  }, async (args) => withSessionContext(await handleStatus(args)));
71
82
  // ── Tool: commit ──────────────────────────────────────────────────────────
72
- server.tool('commit', 'Save the current session state into the Sun (working context). ' +
73
- 'Preserves current work, decisions made, next steps, and active errors for the next session. ' +
74
- 'Call this before ending a conversation or switching tasks to ensure nothing is lost.', {
83
+ server.tool('commit', 'Save session state (work, decisions, next steps, errors) to the Sun.', {
75
84
  current_work: z.string().min(1)
76
- .describe('A clear description of what you are currently working on.'),
85
+ .describe('What is currently being worked on.'),
77
86
  decisions: z.array(z.string()).optional()
78
- .describe('Key decisions made during this session.'),
87
+ .describe('Decisions made this session.'),
79
88
  next_steps: z.array(z.string()).optional()
80
- .describe('Concrete next actions to take in future sessions.'),
89
+ .describe('Concrete next actions for future sessions.'),
81
90
  errors: z.array(z.string()).optional()
82
- .describe('Active errors or blockers that need attention.'),
91
+ .describe('Active errors or blockers.'),
83
92
  context: z.string().optional()
84
- .describe('Additional background context for the project.'),
93
+ .describe('Additional project background.'),
85
94
  }, (args) => handleCommit(args));
86
95
  // ── Tool: recall ──────────────────────────────────────────────────────────
87
- server.tool('recall', 'Search memories by content and pull relevant ones closer to the Sun. ' +
88
- 'Uses hybrid FTS5 + vector search for best results. ' +
89
- 'Call this when starting work on a specific topic to surface relevant past context.', {
96
+ server.tool('recall', 'Search memories. Matching results are pulled closer to the Sun.', {
90
97
  query: z.string().min(1)
91
- .describe('Search query to find relevant memories.'),
98
+ .describe('Search query.'),
92
99
  type: z.enum(['all', 'decision', 'observation', 'task', 'context', 'error', 'milestone'])
93
100
  .optional()
94
- .describe('Filter by memory type. Defaults to "all".'),
101
+ .describe('Filter by memory type.'),
95
102
  max_au: z.number().min(0.1).max(100).optional()
96
- .describe('Only return memories within this distance in AU.'),
103
+ .describe('Max distance in AU.'),
97
104
  limit: z.number().int().min(1).max(50).optional()
98
- .describe('Maximum number of memories to return. Defaults to 10.'),
105
+ .describe('Max results to return.'),
99
106
  include_universal: z.boolean().optional()
100
- .describe('Also include universal memories from other projects. Default: false.'),
107
+ .describe('Include universal memories from other projects.'),
101
108
  at: z.string().optional()
102
- .describe('ISO date string. If provided, returns memories that were active at this point in time (temporal query) instead of normal recall.'),
109
+ .describe('ISO date return memories active at this point in time instead.'),
103
110
  }, async (args) => withSessionContext(await handleRecall(args)));
104
111
  // ── Tool: remember ────────────────────────────────────────────────────────
105
- server.tool('remember', 'Store a new memory in the stellar system. Memories are automatically placed in an orbital zone ' +
106
- 'based on their type and impact. ' +
107
- 'Store memories immediately when: a design decision is made, a bug is resolved, ' +
108
- 'a feature milestone is reached, or important technical context is discovered. ' +
109
- 'Do not wait — store memories as soon as the information becomes clear.', {
112
+ server.tool('remember', 'Store a new memory. Auto-placed by type and impact.', {
110
113
  content: z.string().min(1)
111
- .describe('The full content of the memory to store.'),
114
+ .describe('Full memory content.'),
112
115
  summary: z.string().optional()
113
- .describe('A short one-line summary. If omitted, first 50 chars of content are used.'),
116
+ .describe('One-line summary (default: first 50 chars of content).'),
114
117
  type: z.enum(['decision', 'observation', 'task', 'context', 'error', 'milestone'])
115
118
  .optional()
116
- .describe('Memory type. Defaults to "observation".'),
119
+ .describe('Memory type.'),
117
120
  impact: z.number().min(0).max(1).optional()
118
- .describe('Impact score 0.0–1.0 affecting orbital distance.'),
121
+ .describe('Impact score 0.0–1.0.'),
119
122
  tags: z.array(z.string()).optional()
120
- .describe('Tags for categorizing and searching this memory.'),
123
+ .describe('Tags for search and categorization.'),
121
124
  }, (args) => handleRemember(args));
122
125
  // ── Tool: orbit ───────────────────────────────────────────────────────────
123
- server.tool('orbit', 'Force a recalculation of all orbital positions for the project. ' +
124
- 'Call this after storing 5 or more memories in a single session to keep distances accurate.', {}, () => handleOrbit({}));
126
+ server.tool('orbit', 'Recalculate all memory positions based on current importance.', {}, () => handleOrbit({}));
125
127
  // ── Tool: forget ──────────────────────────────────────────────────────────
126
- server.tool('forget', 'Push a memory into a distant orbit (soft forget) or permanently delete it. ' +
127
- 'Use "push" to move a memory to the Oort cloud (it still exists but is deprioritized). ' +
128
- 'Use "delete" to permanently remove it.', {
128
+ server.tool('forget', 'Push a memory further from the Sun or soft-delete it.', {
129
129
  id: z.string().min(1)
130
- .describe('The ID of the memory to forget.'),
130
+ .describe('Memory ID to forget.'),
131
131
  mode: z.enum(['push', 'delete']).optional()
132
- .describe('"push" moves to Oort Cloud; "delete" permanently removes. Defaults to "push".'),
132
+ .describe('"push" moves to Oort Cloud; "delete" permanently removes.'),
133
133
  }, (args) => handleForget(args));
134
134
  // ── Tool: scan ────────────────────────────────────────────────────────────
135
- server.tool('scan', 'Scan a local directory and automatically convert files into memories. ' +
136
- 'Files already indexed (same content hash) are skipped — scanning is idempotent.', {
135
+ server.tool('scan', 'Register and scan local data sources.', {
137
136
  path: z.string().min(1)
138
- .describe('Absolute or relative path to the directory to scan.'),
137
+ .describe('Directory path to scan.'),
139
138
  recursive: z.boolean().optional()
140
- .describe('Recurse into subdirectories. Defaults to true.'),
139
+ .describe('Recurse into subdirectories.'),
141
140
  git: z.boolean().optional()
142
- .describe('Also import recent git commit history as memories. Defaults to true.'),
141
+ .describe('Also import git commit history.'),
143
142
  max_kb: z.number().int().min(1).max(10240).optional()
144
- .describe('Maximum individual file size in KB to process. Defaults to 1024 KB.'),
143
+ .describe('Max file size in KB to process.'),
145
144
  }, (args) => handleScan(args));
146
145
  // ── Tool: daemon ──────────────────────────────────────────────────────────
147
- server.tool('daemon', 'Control the background scheduler daemon. ' +
148
- 'The scheduler automatically recalculates orbits, runs local scans, ' +
149
- 'and cleans up the Oort cloud on configurable intervals.', {
146
+ server.tool('daemon', 'Start or stop the background scheduler.', {
150
147
  action: z.enum(['status', 'start', 'stop'])
151
- .describe('"status" show state, "start" — start scheduler, "stop" — stop scheduler.'),
148
+ .describe('Action to perform.'),
152
149
  }, (args) => handleDaemon(args));
153
150
  // ── Tool: constellation ───────────────────────────────────────────────────
154
- server.tool('constellation', 'Explore the Knowledge Graph (constellation) of relationships between memories. ' +
155
- 'Use action="graph" to see the full graph around a memory, "related" to list connected memories, ' +
156
- 'or "extract" to auto-discover relationships from content similarity.', {
151
+ server.tool('constellation', 'Explore the knowledge graph between memories.', {
157
152
  id: z.string().min(1)
158
- .describe('The memory ID to explore.'),
153
+ .describe('Memory ID to explore.'),
159
154
  action: z.enum(['graph', 'related', 'extract']).optional()
160
- .describe('"graph" — show constellation graph (default). "related" list related memories. "extract" — auto-extract relationships.'),
155
+ .describe('"graph" (default), "related", or "extract".'),
161
156
  depth: z.number().int().min(1).max(3).optional()
162
- .describe('Graph traversal depth for action="graph". Default: 1.'),
157
+ .describe('Graph traversal depth.'),
163
158
  limit: z.number().int().min(1).max(50).optional()
164
- .describe('Max memories to return for action="related". Default: 10.'),
159
+ .describe('Max related memories to return.'),
165
160
  }, (args) => handleConstellation(args));
166
161
  // ── Tool: export ──────────────────────────────────────────────────────────
167
- server.tool('export', 'Export all memories as JSON or Markdown for backup or migration.', {
162
+ server.tool('export', 'Export memories as JSON or Markdown.', {
168
163
  type: z.enum(['all', 'decision', 'observation', 'task', 'context', 'error', 'milestone'])
169
164
  .optional()
170
- .describe('Filter by memory type. Defaults to all.'),
165
+ .describe('Filter by memory type.'),
171
166
  zone: z.enum(['all', 'core', 'near', 'active', 'archive', 'fading', 'forgotten'])
172
167
  .optional()
173
- .describe('Filter by orbital zone. Defaults to all.'),
168
+ .describe('Filter by orbital zone.'),
174
169
  format: z.enum(['json', 'markdown']).optional()
175
- .describe('Output format. Defaults to json.'),
170
+ .describe('Output format.'),
176
171
  }, (args) => handleExport(args));
177
172
  // ── Tool: galaxy ───────────────────────────────────────────────────────────
178
- server.tool('galaxy', 'Manage multiple projects (star systems) in your stellar memory galaxy.\n\n' +
179
- 'Actions:\n' +
180
- ' switch — switch the active project at runtime (no restart needed)\n' +
181
- ' list — list all projects with memory counts and stats\n' +
182
- ' create — create a new project\n' +
183
- ' stats — detailed statistics for a project\n' +
184
- ' mark_universal — mark a memory as universal (visible in all projects)\n' +
185
- ' universal_context — retrieve universal memories from other projects\n' +
186
- ' candidates — detect memories that are good candidates to become universal', {
173
+ server.tool('galaxy', 'Manage projects: switch, list, create, stats, or universal memories.', {
187
174
  action: z.enum(['switch', 'list', 'create', 'stats', 'mark_universal', 'universal_context', 'candidates'])
188
175
  .describe('Action to perform.'),
189
176
  project: z.string().optional()
190
- .describe('Project name. Required for switch/create; optional for stats/universal_context/candidates (defaults to current).'),
177
+ .describe('Project name (required for switch/create).'),
191
178
  memory_id: z.string().optional()
192
- .describe('Memory ID. Required for mark_universal.'),
179
+ .describe('Memory ID (required for mark_universal).'),
193
180
  is_universal: z.boolean().optional()
194
- .describe('Whether to mark as universal (true) or project-specific (false). Default: true.'),
181
+ .describe('Mark as universal (true) or project-specific (false).'),
195
182
  limit: z.number().int().min(1).max(100).optional()
196
- .describe('Maximum results to return for universal_context. Default: 10.'),
183
+ .describe('Max results for universal_context.'),
197
184
  }, (args) => handleGalaxy(args));
198
185
  // ── Tool: analytics ───────────────────────────────────────────────────────
199
- server.tool('analytics', 'Get insights and analytics about your memory system. Includes survival curves, topic clusters, ' +
200
- 'health metrics, and recommendations.\n\n' +
201
- 'Reports:\n' +
202
- ' summary — full analytics summary (zone/type distribution, quality, recall rate)\n' +
203
- ' health — health metrics + actionable recommendations\n' +
204
- ' topics — topic cluster heatmap (most active topics)\n' +
205
- ' survival — memory survival curve by age bucket\n' +
206
- ' movements — orbit movement timeline (which memories moved most)\n' +
207
- ' full — full text report combining all analytics', {
186
+ server.tool('analytics', 'Memory analytics: health, topics, survival, or movements.', {
208
187
  report: z.enum(['summary', 'health', 'topics', 'survival', 'movements', 'full'])
209
- .describe('Type of analytics report to generate.'),
188
+ .describe('Report type.'),
210
189
  project: z.string().optional()
211
- .describe('Project to analyse. Defaults to the current active project.'),
190
+ .describe('Project to analyse.'),
212
191
  days: z.number().int().min(1).max(365).optional()
213
- .describe('Lookback window in days for report="movements". Default: 30.'),
192
+ .describe('Lookback window in days (for movements report).'),
214
193
  }, (args) => handleAnalytics(args));
215
194
  // ── Tool: observe ─────────────────────────────────────────────────────────
216
- server.tool('observe', 'Process a conversation chunk to automatically extract and store memories. ' +
217
- 'The Observer phase extracts key facts, decisions, and errors. ' +
218
- 'The Reflector phase compares against existing memories to categorize as novel, reinforcing, or conflicting.', {
195
+ server.tool('observe', 'Extract memories from conversation text automatically.', {
219
196
  conversation: z.string().min(1)
220
- .describe('The conversation text to observe and extract memories from.'),
197
+ .describe('Conversation text to extract memories from.'),
221
198
  project: z.string().optional()
222
- .describe('Project context. Defaults to the current active project.'),
199
+ .describe('Target project.'),
223
200
  }, (args) => handleObserve(args));
224
201
  // ── Tool: consolidate ─────────────────────────────────────────────────────
225
- server.tool('consolidate', 'Find and merge similar memories to reduce redundancy and improve quality. ' +
226
- 'Memories with high similarity are combined into richer single memories. ' +
227
- 'Use dry_run=true (default) to preview candidates before merging.', {
202
+ server.tool('consolidate', 'Merge similar memories to reduce noise.', {
228
203
  project: z.string().optional()
229
- .describe('Project context. Defaults to the current active project.'),
204
+ .describe('Target project.'),
230
205
  dry_run: z.boolean().optional()
231
- .describe('If true, only report candidates without merging. Default: true.'),
206
+ .describe('Preview candidates without merging.'),
232
207
  }, (args) => handleConsolidate(args));
233
208
  // ── Tool: resolve_conflict ────────────────────────────────────────────────
234
- server.tool('resolve_conflict', 'View and resolve memory conflicts. Conflicts are detected when new memories contradict existing ones.\n\n' +
235
- 'Actions:\n' +
236
- ' list — list all unresolved conflicts\n' +
237
- ' resolve — resolve a conflict (supersede, dismiss, or keep_both)\n' +
238
- ' dismiss — dismiss a conflict without changes', {
209
+ server.tool('resolve_conflict', 'List, resolve, or dismiss memory conflicts.', {
239
210
  action: z.enum(['list', 'resolve', 'dismiss'])
240
- .describe('Action to perform: list conflicts, resolve one, or dismiss one.'),
211
+ .describe('Action to perform.'),
241
212
  conflict_id: z.string().optional()
242
- .describe('Conflict ID. Required for resolve/dismiss actions.'),
213
+ .describe('Conflict ID (required for resolve/dismiss).'),
243
214
  resolution: z.string().optional()
244
- .describe('Human-readable description of how the conflict was resolved.'),
215
+ .describe('How the conflict was resolved.'),
245
216
  resolve_action: z.enum(['supersede', 'dismiss', 'keep_both']).optional()
246
- .describe('How to resolve: supersede the older memory, dismiss without changes, or keep both. Default: supersede.'),
217
+ .describe('"supersede", "dismiss", or "keep_both".'),
247
218
  project: z.string().optional()
248
- .describe('Project context. Defaults to the current active project.'),
219
+ .describe('Target project.'),
249
220
  }, (args) => handleResolveConflict(args));
250
221
  // ── Tool: temporal ────────────────────────────────────────────────────────
251
- server.tool('temporal', 'Query memories at a specific point in time or view how knowledge has evolved. ' +
252
- 'Supports temporal browsing and evolution chain tracking.\n\n' +
253
- 'Actions:\n' +
254
- ' at — get memories that were active at a specific timestamp\n' +
255
- ' chain — view the full evolution chain of a memory\n' +
256
- ' summary — temporal summary (active vs superseded counts)\n' +
257
- ' set_bounds — set valid_from / valid_until bounds on a memory', {
222
+ server.tool('temporal', 'Time-based queries: point-in-time recall, evolution chains, or bounds.', {
258
223
  action: z.enum(['at', 'chain', 'summary', 'set_bounds'])
259
224
  .describe('Action to perform.'),
260
225
  timestamp: z.string().optional()
261
- .describe('ISO date string. Required for action="at".'),
226
+ .describe('ISO date (required for action="at").'),
262
227
  memory_id: z.string().optional()
263
- .describe('Memory ID. Required for action="chain" and "set_bounds".'),
228
+ .describe('Memory ID (required for chain/set_bounds).'),
264
229
  valid_from: z.string().optional()
265
- .describe('ISO date. For set_bounds — when the memory became valid.'),
230
+ .describe('ISO date — when the memory became valid.'),
266
231
  valid_until: z.string().optional()
267
- .describe('ISO date. For set_bounds — when the memory stopped being valid.'),
232
+ .describe('ISO date — when the memory stopped being valid.'),
268
233
  project: z.string().optional()
269
- .describe('Project context. Defaults to the current active project.'),
234
+ .describe('Target project.'),
270
235
  }, (args) => handleTemporal(args));
271
236
  return server;
272
237
  }