@aman_asmuei/amem 0.11.1 → 0.12.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.
- package/dist/cli.js +82 -23
- package/dist/cli.js.map +1 -1
- package/dist/dashboard.js +62 -0
- package/dist/dashboard.js.map +1 -1
- package/dist/embeddings.d.ts +6 -0
- package/dist/embeddings.js +74 -4
- package/dist/embeddings.js.map +1 -1
- package/dist/hooks.d.ts +1 -0
- package/dist/hooks.js +159 -12
- package/dist/hooks.js.map +1 -1
- package/dist/index.js +29 -0
- package/dist/index.js.map +1 -1
- package/dist/sync.d.ts +26 -0
- package/dist/sync.js +82 -0
- package/dist/sync.js.map +1 -1
- package/dist/tools/memory.js +10 -2
- package/dist/tools/memory.js.map +1 -1
- package/package.json +1 -1
package/dist/hooks.js
CHANGED
|
@@ -38,6 +38,16 @@ export function generateHooksConfig(config) {
|
|
|
38
38
|
}],
|
|
39
39
|
}];
|
|
40
40
|
}
|
|
41
|
+
if (config.captureSessionStart) {
|
|
42
|
+
hooks.SessionStart = [{
|
|
43
|
+
matcher: "",
|
|
44
|
+
hooks: [{
|
|
45
|
+
type: "command",
|
|
46
|
+
command: getSessionStartCommand(),
|
|
47
|
+
timeout: 10000,
|
|
48
|
+
}],
|
|
49
|
+
}];
|
|
50
|
+
}
|
|
41
51
|
return hooks;
|
|
42
52
|
}
|
|
43
53
|
function getPostToolUseCommand() {
|
|
@@ -48,6 +58,10 @@ function getStopCommand() {
|
|
|
48
58
|
const scriptPath = getHookScriptPath("session-end.mjs");
|
|
49
59
|
return `node "${scriptPath}"`;
|
|
50
60
|
}
|
|
61
|
+
function getSessionStartCommand() {
|
|
62
|
+
const scriptPath = getHookScriptPath("session-start.mjs");
|
|
63
|
+
return `node "${scriptPath}"`;
|
|
64
|
+
}
|
|
51
65
|
function getHookScriptPath(name) {
|
|
52
66
|
const amemDir = process.env.AMEM_DIR || path.join(os.homedir(), ".amem");
|
|
53
67
|
return path.join(amemDir, "hooks", name);
|
|
@@ -75,6 +89,13 @@ export function installHooks(config) {
|
|
|
75
89
|
fs.chmodSync(scriptPath, 0o755);
|
|
76
90
|
installed.push("session-end.mjs");
|
|
77
91
|
}
|
|
92
|
+
if (config.captureSessionStart) {
|
|
93
|
+
const scriptPath = path.join(hooksDir, "session-start.mjs");
|
|
94
|
+
fs.writeFileSync(scriptPath, getSessionStartScript(dbPath));
|
|
95
|
+
if (process.platform !== "win32")
|
|
96
|
+
fs.chmodSync(scriptPath, 0o755);
|
|
97
|
+
installed.push("session-start.mjs");
|
|
98
|
+
}
|
|
78
99
|
// Update Claude Code settings.json with hook configuration
|
|
79
100
|
const claudeDir = path.join(os.homedir(), ".claude");
|
|
80
101
|
const settingsPath = path.join(claudeDir, "settings.json");
|
|
@@ -110,7 +131,7 @@ export function uninstallHooks() {
|
|
|
110
131
|
const amemDir = process.env.AMEM_DIR || path.join(os.homedir(), ".amem");
|
|
111
132
|
const hooksDir = path.join(amemDir, "hooks");
|
|
112
133
|
const removed = [];
|
|
113
|
-
for (const name of ["post-tool-use.mjs", "session-end.mjs"]) {
|
|
134
|
+
for (const name of ["post-tool-use.mjs", "session-end.mjs", "session-start.mjs"]) {
|
|
114
135
|
const scriptPath = path.join(hooksDir, name);
|
|
115
136
|
if (fs.existsSync(scriptPath)) {
|
|
116
137
|
fs.unlinkSync(scriptPath);
|
|
@@ -144,28 +165,61 @@ export function uninstallHooks() {
|
|
|
144
165
|
function getPostToolUseScript(dbPath) {
|
|
145
166
|
const escaped = dbPath.replace(/\\/g, "\\\\").replace(/'/g, "\\'");
|
|
146
167
|
return `#!/usr/bin/env node
|
|
147
|
-
// amem PostToolUse hook
|
|
168
|
+
// amem PostToolUse hook — enhanced passive capture with pattern detection
|
|
148
169
|
// Auto-generated by amem. Do not edit manually.
|
|
149
170
|
|
|
150
171
|
import { createRequire } from 'node:module';
|
|
151
|
-
import { randomUUID } from 'node:crypto';
|
|
172
|
+
import { randomUUID, createHash } from 'node:crypto';
|
|
152
173
|
|
|
153
174
|
const toolName = process.env.TOOL_NAME || '';
|
|
154
175
|
const toolInput = process.env.TOOL_INPUT || '';
|
|
176
|
+
const toolOutput = process.env.TOOL_OUTPUT || '';
|
|
155
177
|
|
|
156
178
|
// Skip amem's own tools to avoid infinite loops
|
|
157
179
|
if (toolName.startsWith('memory_') || toolName.startsWith('reminder_')) {
|
|
158
180
|
process.exit(0);
|
|
159
181
|
}
|
|
160
182
|
|
|
161
|
-
|
|
162
|
-
const SKIP_TOOLS = new Set(['Read', 'Glob', 'Grep', 'LS', 'Bash']);
|
|
163
|
-
if (SKIP_TOOLS.has(toolName)) {
|
|
183
|
+
if (!toolName || !toolInput || toolInput.length < 10) {
|
|
164
184
|
process.exit(0);
|
|
165
185
|
}
|
|
166
186
|
|
|
167
|
-
|
|
168
|
-
|
|
187
|
+
// ── Pattern detection for auto-extraction ──────────────────
|
|
188
|
+
// Detect memory-worthy signals from user messages in tool input
|
|
189
|
+
const CORRECTION_PATTERNS = [
|
|
190
|
+
/\\b(?:don'?t|never|stop|wrong|incorrect|mistake|instead of)\\b/i,
|
|
191
|
+
/\\b(?:always use|must use|should use|prefer|no,\\s|actually,?)\\b/i,
|
|
192
|
+
];
|
|
193
|
+
|
|
194
|
+
const DECISION_PATTERNS = [
|
|
195
|
+
/\\b(?:let'?s go with|we'?ll use|decided to|choosing|went with|decision)\\b/i,
|
|
196
|
+
/\\b(?:architecture|approach|strategy|design)\\b/i,
|
|
197
|
+
];
|
|
198
|
+
|
|
199
|
+
const PREFERENCE_PATTERNS = [
|
|
200
|
+
/\\b(?:i prefer|i like|i want|please use|my preference|i always)\\b/i,
|
|
201
|
+
];
|
|
202
|
+
|
|
203
|
+
function detectMemorySignal(text) {
|
|
204
|
+
const lower = text.toLowerCase();
|
|
205
|
+
for (const p of CORRECTION_PATTERNS) {
|
|
206
|
+
if (p.test(text)) return { type: 'correction', confidence: 0.7 };
|
|
207
|
+
}
|
|
208
|
+
for (const p of DECISION_PATTERNS) {
|
|
209
|
+
if (p.test(text)) return { type: 'decision', confidence: 0.6 };
|
|
210
|
+
}
|
|
211
|
+
for (const p of PREFERENCE_PATTERNS) {
|
|
212
|
+
if (p.test(text)) return { type: 'preference', confidence: 0.6 };
|
|
213
|
+
}
|
|
214
|
+
return null;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
// ── Extractive compression for large observations ──────────
|
|
218
|
+
function compress(text, maxLen) {
|
|
219
|
+
if (!text || text.length <= maxLen) return text || '';
|
|
220
|
+
// Keep first and last portions, skip the middle
|
|
221
|
+
const half = Math.floor(maxLen / 2) - 10;
|
|
222
|
+
return text.slice(0, half) + '\\n[...compressed...]\\n' + text.slice(-half);
|
|
169
223
|
}
|
|
170
224
|
|
|
171
225
|
try {
|
|
@@ -175,20 +229,113 @@ try {
|
|
|
175
229
|
db.pragma('journal_mode = WAL');
|
|
176
230
|
db.pragma('busy_timeout = 2000');
|
|
177
231
|
|
|
178
|
-
const id = randomUUID();
|
|
179
232
|
const now = Date.now();
|
|
180
233
|
const sessionId = process.env.CLAUDE_SESSION_ID || 'hook-' + new Date().toISOString().slice(0, 10);
|
|
181
234
|
const project = process.env.AMEM_PROJECT || 'global';
|
|
182
235
|
|
|
183
|
-
|
|
184
|
-
const
|
|
236
|
+
// Compress large tool output for log storage (10x reduction target)
|
|
237
|
+
const compressedOutput = compress(toolOutput, 500);
|
|
238
|
+
const content = 'Tool: ' + toolName + '\\nInput: ' + compress(toolInput, 300) + (compressedOutput ? '\\nOutput: ' + compressedOutput : '');
|
|
239
|
+
const metadata = JSON.stringify({ hook: 'PostToolUse', tool: toolName, inputLen: toolInput.length, outputLen: toolOutput.length });
|
|
185
240
|
|
|
241
|
+
// Log all tool uses (compressed)
|
|
186
242
|
db.prepare(
|
|
187
243
|
'INSERT INTO conversation_log (id, session_id, role, content, timestamp, project, metadata) VALUES (?, ?, ?, ?, ?, ?, ?)'
|
|
188
|
-
).run(
|
|
244
|
+
).run(randomUUID(), sessionId, 'system', content, now, project, metadata);
|
|
245
|
+
|
|
246
|
+
// ── Auto-extract memories from detected patterns ──────────
|
|
247
|
+
const signal = detectMemorySignal(toolInput);
|
|
248
|
+
if (signal) {
|
|
249
|
+
// Extract the key content — use first 500 chars of the input as the memory
|
|
250
|
+
const memContent = toolInput.slice(0, 500).trim();
|
|
251
|
+
const contentHash = createHash('sha256').update(memContent).digest('hex');
|
|
252
|
+
|
|
253
|
+
// Check for duplicates by content hash
|
|
254
|
+
const existing = db.prepare('SELECT id FROM memories WHERE content_hash = ?').get(contentHash);
|
|
255
|
+
if (!existing) {
|
|
256
|
+
const memId = randomUUID();
|
|
257
|
+
db.prepare(
|
|
258
|
+
'INSERT INTO memories (id, content, content_hash, type, tags, confidence, access_count, created_at, last_accessed, source, scope, valid_from, tier) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'
|
|
259
|
+
).run(memId, memContent, contentHash, signal.type, '["auto-captured"]', signal.confidence, 0, now, now, 'hook:PostToolUse', project, now, 'archival');
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
db.close();
|
|
264
|
+
} catch {
|
|
265
|
+
process.exit(0);
|
|
266
|
+
}
|
|
267
|
+
`;
|
|
268
|
+
}
|
|
269
|
+
function getSessionStartScript(dbPath) {
|
|
270
|
+
const escaped = dbPath.replace(/\\/g, "\\\\").replace(/'/g, "\\'");
|
|
271
|
+
return `#!/usr/bin/env node
|
|
272
|
+
// amem SessionStart hook — auto-injects core memories at session start
|
|
273
|
+
// Auto-generated by amem. Do not edit manually.
|
|
274
|
+
|
|
275
|
+
import { createRequire } from 'node:module';
|
|
276
|
+
|
|
277
|
+
try {
|
|
278
|
+
const require = createRequire(import.meta.url);
|
|
279
|
+
const Database = require('better-sqlite3');
|
|
280
|
+
const db = new Database('${escaped}');
|
|
281
|
+
db.pragma('journal_mode = WAL');
|
|
282
|
+
db.pragma('busy_timeout = 2000');
|
|
283
|
+
|
|
284
|
+
const now = Date.now();
|
|
285
|
+
|
|
286
|
+
// Load core tier memories (always-on context)
|
|
287
|
+
const coreMemories = db.prepare(
|
|
288
|
+
"SELECT content, type, confidence FROM memories WHERE tier = 'core' AND (valid_until IS NULL OR valid_until > ?) ORDER BY CASE type WHEN 'correction' THEN 0 WHEN 'decision' THEN 1 ELSE 2 END, confidence DESC"
|
|
289
|
+
).all(now);
|
|
290
|
+
|
|
291
|
+
// Load recent corrections (even if not in core tier)
|
|
292
|
+
const corrections = db.prepare(
|
|
293
|
+
"SELECT content, confidence FROM memories WHERE type = 'correction' AND tier != 'core' AND (valid_until IS NULL OR valid_until > ?) ORDER BY confidence DESC LIMIT 10"
|
|
294
|
+
).all(now);
|
|
295
|
+
|
|
296
|
+
// Load overdue reminders
|
|
297
|
+
const reminders = db.prepare(
|
|
298
|
+
"SELECT content, due_at FROM reminders WHERE completed = 0 AND due_at IS NOT NULL AND due_at <= ? ORDER BY due_at ASC LIMIT 5"
|
|
299
|
+
).all(now);
|
|
300
|
+
|
|
301
|
+
// Build injection context
|
|
302
|
+
const lines = [];
|
|
303
|
+
|
|
304
|
+
if (coreMemories.length > 0) {
|
|
305
|
+
lines.push('## Core Context (always active)');
|
|
306
|
+
for (const m of coreMemories) {
|
|
307
|
+
const prefix = m.type === 'correction' ? 'CONSTRAINT' : m.type.toUpperCase();
|
|
308
|
+
lines.push('- [' + prefix + '] ' + m.content);
|
|
309
|
+
}
|
|
310
|
+
lines.push('');
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
if (corrections.length > 0) {
|
|
314
|
+
lines.push('## Active Corrections');
|
|
315
|
+
for (const c of corrections) {
|
|
316
|
+
lines.push('- ' + c.content);
|
|
317
|
+
}
|
|
318
|
+
lines.push('');
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
if (reminders.length > 0) {
|
|
322
|
+
lines.push('## Overdue Reminders');
|
|
323
|
+
for (const r of reminders) {
|
|
324
|
+
const due = new Date(r.due_at).toISOString().slice(0, 10);
|
|
325
|
+
lines.push('- [DUE ' + due + '] ' + r.content);
|
|
326
|
+
}
|
|
327
|
+
lines.push('');
|
|
328
|
+
}
|
|
189
329
|
|
|
190
330
|
db.close();
|
|
331
|
+
|
|
332
|
+
if (lines.length > 0) {
|
|
333
|
+
// Output to stdout — Claude Code captures this as context
|
|
334
|
+
console.log('[amem] Session context loaded:');
|
|
335
|
+
console.log(lines.join('\\n'));
|
|
336
|
+
}
|
|
191
337
|
} catch {
|
|
338
|
+
// Silent failure — don't block session start
|
|
192
339
|
process.exit(0);
|
|
193
340
|
}
|
|
194
341
|
`;
|
package/dist/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -64,6 +64,35 @@ function detectProject() {
|
|
|
64
64
|
const db = createDatabase(DB_PATH);
|
|
65
65
|
ensureSecurePermissions(DB_PATH);
|
|
66
66
|
const currentProject = detectProject();
|
|
67
|
+
// Pre-warm embeddings in the background so first query is fast
|
|
68
|
+
import { preloadEmbeddings, generateEmbedding } from "./embeddings.js";
|
|
69
|
+
preloadEmbeddings();
|
|
70
|
+
// Background task: generate embeddings for memories that don't have them yet
|
|
71
|
+
async function backfillEmbeddings() {
|
|
72
|
+
try {
|
|
73
|
+
const all = db.getAll();
|
|
74
|
+
const missing = all.filter(m => !m.embedding);
|
|
75
|
+
if (missing.length === 0)
|
|
76
|
+
return;
|
|
77
|
+
let filled = 0;
|
|
78
|
+
for (const mem of missing.slice(0, 50)) { // Process up to 50 per startup
|
|
79
|
+
const emb = await generateEmbedding(mem.content);
|
|
80
|
+
if (emb) {
|
|
81
|
+
db.updateEmbedding(mem.id, emb);
|
|
82
|
+
filled++;
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
break; // Embeddings not available
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
if (filled > 0) {
|
|
89
|
+
console.error(`[amem] Backfilled embeddings for ${filled} memories`);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
catch { }
|
|
93
|
+
}
|
|
94
|
+
// Run after a short delay to not block startup
|
|
95
|
+
setTimeout(() => { backfillEmbeddings().catch(() => { }); }, 3000);
|
|
67
96
|
const server = new McpServer({
|
|
68
97
|
name: "amem-mcp-server",
|
|
69
98
|
version: pkg.version,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/sync.d.ts
CHANGED
|
@@ -56,4 +56,30 @@ export interface SyncResult {
|
|
|
56
56
|
* @param dryRun - preview without writing (default: false)
|
|
57
57
|
*/
|
|
58
58
|
export declare function syncFromClaude(db: AmemDatabase, projectFilter?: string, dryRun?: boolean): Promise<SyncResult>;
|
|
59
|
+
export interface TeamExportOptions {
|
|
60
|
+
userId: string;
|
|
61
|
+
includeTypes?: string[];
|
|
62
|
+
minConfidence?: number;
|
|
63
|
+
}
|
|
64
|
+
export interface TeamImportOptions {
|
|
65
|
+
dryRun?: boolean;
|
|
66
|
+
}
|
|
67
|
+
export interface TeamImportResult {
|
|
68
|
+
imported: number;
|
|
69
|
+
skipped: number;
|
|
70
|
+
from: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Export shareable memories as a JSON file for team sync.
|
|
74
|
+
* Filters out private/personal memories (type=preference with non-global scope).
|
|
75
|
+
*/
|
|
76
|
+
export declare function exportForTeam(db: AmemDatabase, outputDir: string, options: TeamExportOptions): Promise<{
|
|
77
|
+
file: string;
|
|
78
|
+
count: number;
|
|
79
|
+
}>;
|
|
80
|
+
/**
|
|
81
|
+
* Import a teammate's exported memory file.
|
|
82
|
+
* Deduplicates by content hash and lowers confidence by 0.1 for second-hand memories.
|
|
83
|
+
*/
|
|
84
|
+
export declare function importFromTeam(db: AmemDatabase, filePath: string, options?: TeamImportOptions): Promise<TeamImportResult>;
|
|
59
85
|
export {};
|
package/dist/sync.js
CHANGED
|
@@ -219,4 +219,86 @@ export async function syncFromClaude(db, projectFilter, dryRun = false) {
|
|
|
219
219
|
}
|
|
220
220
|
return result;
|
|
221
221
|
}
|
|
222
|
+
/**
|
|
223
|
+
* Export shareable memories as a JSON file for team sync.
|
|
224
|
+
* Filters out private/personal memories (type=preference with non-global scope).
|
|
225
|
+
*/
|
|
226
|
+
export async function exportForTeam(db, outputDir, options) {
|
|
227
|
+
const { userId, includeTypes, minConfidence } = options;
|
|
228
|
+
const allowedTypes = includeTypes ?? ["correction", "decision", "pattern", "topology", "fact"];
|
|
229
|
+
const all = db.getAll();
|
|
230
|
+
const filtered = all.filter((m) => {
|
|
231
|
+
// Filter out private/personal preferences (non-global scope)
|
|
232
|
+
if (m.type === "preference" && m.scope !== "global")
|
|
233
|
+
return false;
|
|
234
|
+
// Only include allowed types
|
|
235
|
+
if (!allowedTypes.includes(m.type))
|
|
236
|
+
return false;
|
|
237
|
+
// Min confidence filter
|
|
238
|
+
if (minConfidence !== undefined && m.confidence < minConfidence)
|
|
239
|
+
return false;
|
|
240
|
+
return true;
|
|
241
|
+
});
|
|
242
|
+
const memories = filtered.map((m) => ({
|
|
243
|
+
content: m.content,
|
|
244
|
+
type: m.type,
|
|
245
|
+
tags: m.tags,
|
|
246
|
+
confidence: m.confidence,
|
|
247
|
+
source: m.source,
|
|
248
|
+
scope: m.scope,
|
|
249
|
+
createdAt: m.createdAt,
|
|
250
|
+
}));
|
|
251
|
+
const exportData = {
|
|
252
|
+
version: 1,
|
|
253
|
+
userId,
|
|
254
|
+
exportedAt: Date.now(),
|
|
255
|
+
memories,
|
|
256
|
+
};
|
|
257
|
+
const timestamp = Date.now();
|
|
258
|
+
const fileName = `amem-team-${userId}-${timestamp}.json`;
|
|
259
|
+
const filePath = path.join(outputDir, fileName);
|
|
260
|
+
fs.mkdirSync(outputDir, { recursive: true });
|
|
261
|
+
fs.writeFileSync(filePath, JSON.stringify(exportData, null, 2) + "\n");
|
|
262
|
+
return { file: filePath, count: memories.length };
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Import a teammate's exported memory file.
|
|
266
|
+
* Deduplicates by content hash and lowers confidence by 0.1 for second-hand memories.
|
|
267
|
+
*/
|
|
268
|
+
export async function importFromTeam(db, filePath, options) {
|
|
269
|
+
const dryRun = options?.dryRun ?? false;
|
|
270
|
+
const raw = fs.readFileSync(filePath, "utf-8");
|
|
271
|
+
const data = JSON.parse(raw);
|
|
272
|
+
const fromUser = data.userId;
|
|
273
|
+
let imported = 0;
|
|
274
|
+
let skipped = 0;
|
|
275
|
+
for (const entry of data.memories) {
|
|
276
|
+
// Dedup: skip if content already exists
|
|
277
|
+
const existing = db.findByContentHash(entry.content);
|
|
278
|
+
if (existing) {
|
|
279
|
+
skipped++;
|
|
280
|
+
continue;
|
|
281
|
+
}
|
|
282
|
+
if (dryRun) {
|
|
283
|
+
imported++;
|
|
284
|
+
continue;
|
|
285
|
+
}
|
|
286
|
+
// Lower confidence by 0.1 for second-hand memories, floor at 0.1
|
|
287
|
+
const confidence = Math.max(0.1, entry.confidence - 0.1);
|
|
288
|
+
// Tag with team-sync and the original userId
|
|
289
|
+
const tags = [...entry.tags, "team-sync", `from:${fromUser}`];
|
|
290
|
+
const embedding = await generateEmbedding(entry.content);
|
|
291
|
+
db.insertMemory({
|
|
292
|
+
content: entry.content,
|
|
293
|
+
type: entry.type,
|
|
294
|
+
tags,
|
|
295
|
+
confidence,
|
|
296
|
+
source: `team-sync:${fromUser}`,
|
|
297
|
+
embedding,
|
|
298
|
+
scope: entry.scope,
|
|
299
|
+
});
|
|
300
|
+
imported++;
|
|
301
|
+
}
|
|
302
|
+
return { imported, skipped, from: fromUser };
|
|
303
|
+
}
|
|
222
304
|
//# sourceMappingURL=sync.js.map
|
package/dist/sync.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/memory.js
CHANGED
|
@@ -64,14 +64,22 @@ Returns:
|
|
|
64
64
|
continue;
|
|
65
65
|
const sim = cosineSimilarity(embedding, mem.embedding);
|
|
66
66
|
if (sim > 0.85) {
|
|
67
|
-
// Near-duplicate — conflict resolution
|
|
67
|
+
// Near-duplicate — smart conflict resolution
|
|
68
68
|
const conflict = detectConflict(content, mem.content, sim);
|
|
69
69
|
if (conflict.isConflict) {
|
|
70
|
+
// If the new memory is a correction or higher confidence, supersede the old one
|
|
71
|
+
const isSuperseding = type === "correction" || confidence > mem.confidence;
|
|
72
|
+
if (isSuperseding) {
|
|
73
|
+
// Auto-expire the old memory and store the new one
|
|
74
|
+
db.expireMemory(mem.id);
|
|
75
|
+
db.snapshotVersion(mem.id, `superseded by new ${type} memory`);
|
|
76
|
+
break; // Fall through to store the new memory below
|
|
77
|
+
}
|
|
70
78
|
db.updateConfidence(mem.id, Math.max(mem.confidence, confidence));
|
|
71
79
|
return {
|
|
72
80
|
content: [{
|
|
73
81
|
type: "text",
|
|
74
|
-
text: `
|
|
82
|
+
text: `Similar memory exists (${(sim * 100).toFixed(0)}% match):\n OLD: "${mem.content}"\n NEW: "${content}"\n\nUpdated confidence of existing memory. To replace it, store as a correction or with higher confidence. To keep both, rephrase to be more distinct.`,
|
|
75
83
|
}],
|
|
76
84
|
structuredContent: {
|
|
77
85
|
action: "conflict_resolved",
|