@aman_asmuei/amem 0.18.1 → 0.20.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/README.md +83 -11
- package/dist/cli.js +6 -7
- package/dist/cli.js.map +1 -1
- package/dist/dashboard.d.ts +1 -1
- package/dist/dashboard.js +1 -1
- package/dist/dashboard.js.map +1 -1
- package/dist/index.js +3 -7
- package/dist/index.js.map +1 -1
- package/dist/tools/advanced.d.ts +1 -1
- package/dist/tools/advanced.js +167 -4
- package/dist/tools/advanced.js.map +1 -1
- package/dist/tools/graph.d.ts +1 -1
- package/dist/tools/graph.js +1 -2
- package/dist/tools/graph.js.map +1 -1
- package/dist/tools/index.d.ts +2 -2
- package/dist/tools/index.js +2 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/log.d.ts +1 -1
- package/dist/tools/log.js +1 -2
- package/dist/tools/log.js.map +1 -1
- package/dist/tools/memory.d.ts +1 -2
- package/dist/tools/memory.js +35 -19
- package/dist/tools/memory.js.map +1 -1
- package/dist/tools/reminders.d.ts +1 -1
- package/dist/tools/reminders.js +4 -5
- package/dist/tools/reminders.js.map +1 -1
- package/dist/tools/versions.d.ts +1 -1
- package/dist/tools/versions.js +3 -4
- package/dist/tools/versions.js.map +1 -1
- package/dist/tools.test.js +1 -2
- package/dist/tools.test.js.map +1 -1
- package/package.json +3 -9
- package/dist/ann.d.ts +0 -26
- package/dist/ann.js +0 -155
- package/dist/ann.js.map +0 -1
- package/dist/auto-relate.d.ts +0 -14
- package/dist/auto-relate.js +0 -47
- package/dist/auto-relate.js.map +0 -1
- package/dist/config.d.ts +0 -51
- package/dist/config.js +0 -130
- package/dist/config.js.map +0 -1
- package/dist/database.d.ts +0 -146
- package/dist/database.js +0 -746
- package/dist/database.js.map +0 -1
- package/dist/database.test.d.ts +0 -1
- package/dist/database.test.js +0 -275
- package/dist/database.test.js.map +0 -1
- package/dist/doctor.d.ts +0 -23
- package/dist/doctor.js +0 -107
- package/dist/doctor.js.map +0 -1
- package/dist/embeddings.d.ts +0 -38
- package/dist/embeddings.js +0 -251
- package/dist/embeddings.js.map +0 -1
- package/dist/embeddings.test.d.ts +0 -1
- package/dist/embeddings.test.js +0 -106
- package/dist/embeddings.test.js.map +0 -1
- package/dist/extractor.d.ts +0 -13
- package/dist/extractor.js +0 -89
- package/dist/extractor.js.map +0 -1
- package/dist/memory.d.ts +0 -133
- package/dist/memory.js +0 -432
- package/dist/memory.js.map +0 -1
- package/dist/memory.test.d.ts +0 -1
- package/dist/memory.test.js +0 -172
- package/dist/memory.test.js.map +0 -1
- package/dist/query-expand.d.ts +0 -9
- package/dist/query-expand.js +0 -71
- package/dist/query-expand.js.map +0 -1
- package/dist/repair.d.ts +0 -8
- package/dist/repair.js +0 -90
- package/dist/repair.js.map +0 -1
- package/dist/schemas.d.ts +0 -885
- package/dist/schemas.js +0 -268
- package/dist/schemas.js.map +0 -1
- package/dist/sync.d.ts +0 -85
- package/dist/sync.js +0 -304
- package/dist/sync.js.map +0 -1
- package/dist/tools/helpers.d.ts +0 -7
- package/dist/tools/helpers.js +0 -23
- package/dist/tools/helpers.js.map +0 -1
package/dist/ann.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ann.js","sourceRoot":"","sources":["../src/ann.ts"],"names":[],"mappings":"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"}
|
package/dist/auto-relate.d.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { AmemDatabase } from "./database.js";
|
|
2
|
-
export interface AutoRelateOptions {
|
|
3
|
-
minSimilarity?: number;
|
|
4
|
-
maxRelations?: number;
|
|
5
|
-
maxCandidates?: number;
|
|
6
|
-
}
|
|
7
|
-
export interface AutoRelateResult {
|
|
8
|
-
created: number;
|
|
9
|
-
relations: Array<{
|
|
10
|
-
toId: string;
|
|
11
|
-
similarity: number;
|
|
12
|
-
}>;
|
|
13
|
-
}
|
|
14
|
-
export declare function autoRelateMemory(db: AmemDatabase, newMemoryId: string, options?: AutoRelateOptions): AutoRelateResult;
|
package/dist/auto-relate.js
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { cosineSimilarity } from "./embeddings.js";
|
|
2
|
-
export function autoRelateMemory(db, newMemoryId, options) {
|
|
3
|
-
const minSimilarity = options?.minSimilarity ?? 0.6;
|
|
4
|
-
const maxRelations = options?.maxRelations ?? 3;
|
|
5
|
-
const maxCandidates = options?.maxCandidates ?? 200;
|
|
6
|
-
const empty = { created: 0, relations: [] };
|
|
7
|
-
// 1. Get the new memory, return early if no embedding
|
|
8
|
-
const newMemory = db.getById(newMemoryId);
|
|
9
|
-
if (!newMemory?.embedding)
|
|
10
|
-
return empty;
|
|
11
|
-
// 2. Get recent memories with embeddings (up to maxCandidates)
|
|
12
|
-
const candidates = db.getRecentWithEmbeddings(maxCandidates);
|
|
13
|
-
// 3. Score each by cosine similarity, filter >= minSimilarity and < 0.95 (skip near-dupes)
|
|
14
|
-
const scored = [];
|
|
15
|
-
for (const mem of candidates) {
|
|
16
|
-
if (mem.id === newMemoryId)
|
|
17
|
-
continue;
|
|
18
|
-
if (!mem.embedding)
|
|
19
|
-
continue;
|
|
20
|
-
const sim = cosineSimilarity(newMemory.embedding, mem.embedding);
|
|
21
|
-
if (sim >= minSimilarity && sim < 0.95) {
|
|
22
|
-
scored.push({ id: mem.id, similarity: sim });
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
// 4. Sort descending, take top maxRelations
|
|
26
|
-
scored.sort((a, b) => b.similarity - a.similarity);
|
|
27
|
-
const top = scored.slice(0, maxRelations);
|
|
28
|
-
// 5. Check existing relations to avoid duplicates, then create edges
|
|
29
|
-
const existingRelations = db.getRelations(newMemoryId);
|
|
30
|
-
const existingTargets = new Set(existingRelations.map((r) => (r.fromId === newMemoryId ? r.toId : r.fromId)));
|
|
31
|
-
const created = [];
|
|
32
|
-
for (const candidate of top) {
|
|
33
|
-
if (existingTargets.has(candidate.id))
|
|
34
|
-
continue;
|
|
35
|
-
// 6. Create "related_to" edges with similarity as strength
|
|
36
|
-
try {
|
|
37
|
-
db.addRelation(newMemoryId, candidate.id, "related_to", candidate.similarity);
|
|
38
|
-
created.push({ toId: candidate.id, similarity: candidate.similarity });
|
|
39
|
-
}
|
|
40
|
-
catch {
|
|
41
|
-
// UNIQUE constraint may fire — safe to ignore
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
// 7. Return count and details
|
|
45
|
-
return { created: created.length, relations: created };
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=auto-relate.js.map
|
package/dist/auto-relate.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auto-relate.js","sourceRoot":"","sources":["../src/auto-relate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAanD,MAAM,UAAU,gBAAgB,CAC9B,EAAgB,EAChB,WAAmB,EACnB,OAA2B;IAE3B,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,GAAG,CAAC;IACpD,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,IAAI,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,GAAG,CAAC;IAEpD,MAAM,KAAK,GAAqB,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAE9D,sDAAsD;IACtD,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1C,IAAI,CAAC,SAAS,EAAE,SAAS;QAAE,OAAO,KAAK,CAAC;IAExC,+DAA+D;IAC/D,MAAM,UAAU,GAAG,EAAE,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;IAE7D,2FAA2F;IAC3F,MAAM,MAAM,GAA8C,EAAE,CAAC;IAC7D,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,IAAI,GAAG,CAAC,EAAE,KAAK,WAAW;YAAE,SAAS;QACrC,IAAI,CAAC,GAAG,CAAC,SAAS;YAAE,SAAS;QAC7B,MAAM,GAAG,GAAG,gBAAgB,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QACjE,IAAI,GAAG,IAAI,aAAa,IAAI,GAAG,GAAG,IAAI,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,4CAA4C;IAC5C,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IAE1C,qEAAqE;IACrE,MAAM,iBAAiB,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAC7E,CAAC;IAEF,MAAM,OAAO,GAAgD,EAAE,CAAC;IAChE,KAAK,MAAM,SAAS,IAAI,GAAG,EAAE,CAAC;QAC5B,IAAI,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAAE,SAAS;QAChD,2DAA2D;QAC3D,IAAI,CAAC;YACH,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,EAAE,YAAY,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;YAC9E,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;QACzE,CAAC;QAAC,MAAM,CAAC;YACP,8CAA8C;QAChD,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AACzD,CAAC"}
|
package/dist/config.d.ts
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
export interface AmemConfig {
|
|
2
|
-
embeddingModel: string;
|
|
3
|
-
embeddingDimensions: number;
|
|
4
|
-
embeddingCacheSize: number;
|
|
5
|
-
retrieval: {
|
|
6
|
-
semanticWeight: number;
|
|
7
|
-
ftsWeight: number;
|
|
8
|
-
graphWeight: number;
|
|
9
|
-
temporalWeight: number;
|
|
10
|
-
maxCandidates: number;
|
|
11
|
-
rerankerEnabled: boolean;
|
|
12
|
-
rerankerTopK: number;
|
|
13
|
-
};
|
|
14
|
-
consolidation: {
|
|
15
|
-
maxStaleDays: number;
|
|
16
|
-
minConfidence: number;
|
|
17
|
-
minAccessCount: number;
|
|
18
|
-
enableDecay: boolean;
|
|
19
|
-
decayFactor: number;
|
|
20
|
-
};
|
|
21
|
-
privacy: {
|
|
22
|
-
enablePrivateTags: boolean;
|
|
23
|
-
redactPatterns: string[];
|
|
24
|
-
};
|
|
25
|
-
hooks: {
|
|
26
|
-
enabled: boolean;
|
|
27
|
-
captureToolUse: boolean;
|
|
28
|
-
captureSessionEnd: boolean;
|
|
29
|
-
autoExtractInterval: number;
|
|
30
|
-
};
|
|
31
|
-
tiers: {
|
|
32
|
-
coreMaxTokens: number;
|
|
33
|
-
workingMaxTokens: number;
|
|
34
|
-
};
|
|
35
|
-
team: {
|
|
36
|
-
enabled: boolean;
|
|
37
|
-
syncPath: string | null;
|
|
38
|
-
syncInterval: number;
|
|
39
|
-
userId: string | null;
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
export declare function getConfigPath(): string;
|
|
43
|
-
export declare function loadConfig(): AmemConfig;
|
|
44
|
-
export declare function saveConfig(config: Partial<AmemConfig>): void;
|
|
45
|
-
export declare function getDefaultConfig(): AmemConfig;
|
|
46
|
-
export declare function resetConfigCache(): void;
|
|
47
|
-
/**
|
|
48
|
-
* Strip <private>...</private> tags and redact patterns from content before storage.
|
|
49
|
-
* Returns cleaned content, or null if the entire content is private.
|
|
50
|
-
*/
|
|
51
|
-
export declare function sanitizeContent(content: string, config?: AmemConfig): string | null;
|
package/dist/config.js
DELETED
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import os from "node:os";
|
|
3
|
-
import fs from "node:fs";
|
|
4
|
-
const DEFAULT_CONFIG = {
|
|
5
|
-
embeddingModel: "Xenova/bge-small-en-v1.5",
|
|
6
|
-
embeddingDimensions: 384,
|
|
7
|
-
embeddingCacheSize: 128,
|
|
8
|
-
retrieval: {
|
|
9
|
-
semanticWeight: 0.4,
|
|
10
|
-
ftsWeight: 0.3,
|
|
11
|
-
graphWeight: 0.15,
|
|
12
|
-
temporalWeight: 0.15,
|
|
13
|
-
maxCandidates: 50000,
|
|
14
|
-
rerankerEnabled: false,
|
|
15
|
-
rerankerTopK: 20,
|
|
16
|
-
},
|
|
17
|
-
consolidation: {
|
|
18
|
-
maxStaleDays: 60,
|
|
19
|
-
minConfidence: 0.3,
|
|
20
|
-
minAccessCount: 2,
|
|
21
|
-
enableDecay: false,
|
|
22
|
-
decayFactor: 0.95,
|
|
23
|
-
},
|
|
24
|
-
privacy: {
|
|
25
|
-
enablePrivateTags: true,
|
|
26
|
-
redactPatterns: [
|
|
27
|
-
"(?:api[_-]?key|secret|token|password|passwd|credential)\\s*[:=]\\s*['\"]?[A-Za-z0-9_\\-\\.]{8,}",
|
|
28
|
-
],
|
|
29
|
-
},
|
|
30
|
-
hooks: {
|
|
31
|
-
enabled: true,
|
|
32
|
-
captureToolUse: true,
|
|
33
|
-
captureSessionEnd: true,
|
|
34
|
-
autoExtractInterval: 0,
|
|
35
|
-
},
|
|
36
|
-
tiers: {
|
|
37
|
-
coreMaxTokens: 500,
|
|
38
|
-
workingMaxTokens: 2000,
|
|
39
|
-
},
|
|
40
|
-
team: {
|
|
41
|
-
enabled: false,
|
|
42
|
-
syncPath: null,
|
|
43
|
-
syncInterval: 30,
|
|
44
|
-
userId: null,
|
|
45
|
-
},
|
|
46
|
-
};
|
|
47
|
-
let loadedConfig = null;
|
|
48
|
-
export function getConfigPath() {
|
|
49
|
-
const amemDir = process.env.AMEM_DIR || path.join(os.homedir(), ".amem");
|
|
50
|
-
return path.join(amemDir, "config.json");
|
|
51
|
-
}
|
|
52
|
-
export function loadConfig() {
|
|
53
|
-
if (loadedConfig)
|
|
54
|
-
return loadedConfig;
|
|
55
|
-
const configPath = getConfigPath();
|
|
56
|
-
try {
|
|
57
|
-
if (fs.existsSync(configPath)) {
|
|
58
|
-
const raw = fs.readFileSync(configPath, "utf-8").trim();
|
|
59
|
-
if (raw) {
|
|
60
|
-
const userConfig = JSON.parse(raw);
|
|
61
|
-
loadedConfig = deepMerge(DEFAULT_CONFIG, userConfig);
|
|
62
|
-
return loadedConfig;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
catch (error) {
|
|
67
|
-
console.error("[amem] Failed to load config, using defaults:", error instanceof Error ? error.message : String(error));
|
|
68
|
-
}
|
|
69
|
-
loadedConfig = { ...DEFAULT_CONFIG };
|
|
70
|
-
return loadedConfig;
|
|
71
|
-
}
|
|
72
|
-
export function saveConfig(config) {
|
|
73
|
-
const configPath = getConfigPath();
|
|
74
|
-
const dir = path.dirname(configPath);
|
|
75
|
-
fs.mkdirSync(dir, { recursive: true });
|
|
76
|
-
// Merge with existing config
|
|
77
|
-
const existing = loadConfig();
|
|
78
|
-
const merged = deepMerge(existing, config);
|
|
79
|
-
fs.writeFileSync(configPath, JSON.stringify(merged, null, 2) + "\n");
|
|
80
|
-
loadedConfig = merged;
|
|
81
|
-
}
|
|
82
|
-
export function getDefaultConfig() {
|
|
83
|
-
return { ...DEFAULT_CONFIG };
|
|
84
|
-
}
|
|
85
|
-
export function resetConfigCache() {
|
|
86
|
-
loadedConfig = null;
|
|
87
|
-
}
|
|
88
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
89
|
-
function deepMerge(base, override) {
|
|
90
|
-
const result = { ...base };
|
|
91
|
-
for (const key of Object.keys(override)) {
|
|
92
|
-
const val = override[key];
|
|
93
|
-
if (val !== undefined && val !== null) {
|
|
94
|
-
if (typeof val === "object" && !Array.isArray(val) && typeof result[key] === "object" && !Array.isArray(result[key])) {
|
|
95
|
-
result[key] = deepMerge(result[key], val);
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
result[key] = val;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
return result;
|
|
103
|
-
}
|
|
104
|
-
// ── Privacy helpers ─────────────────────────────────────
|
|
105
|
-
/**
|
|
106
|
-
* Strip <private>...</private> tags and redact patterns from content before storage.
|
|
107
|
-
* Returns cleaned content, or null if the entire content is private.
|
|
108
|
-
*/
|
|
109
|
-
export function sanitizeContent(content, config) {
|
|
110
|
-
const cfg = config ?? loadConfig();
|
|
111
|
-
if (!cfg.privacy.enablePrivateTags)
|
|
112
|
-
return content;
|
|
113
|
-
// Strip <private>...</private> blocks
|
|
114
|
-
let cleaned = content.replace(/<private>[\s\S]*?<\/private>/gi, "[REDACTED]");
|
|
115
|
-
// If entire content was private, return null (don't store)
|
|
116
|
-
if (cleaned.trim() === "[REDACTED]" || cleaned.trim() === "")
|
|
117
|
-
return null;
|
|
118
|
-
// Apply regex redaction patterns
|
|
119
|
-
for (const pattern of cfg.privacy.redactPatterns) {
|
|
120
|
-
try {
|
|
121
|
-
const regex = new RegExp(pattern, "g");
|
|
122
|
-
cleaned = cleaned.replace(regex, "[REDACTED]");
|
|
123
|
-
}
|
|
124
|
-
catch {
|
|
125
|
-
// Invalid regex pattern — skip
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
return cleaned;
|
|
129
|
-
}
|
|
130
|
-
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/database.d.ts
DELETED
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
import type { Memory, MemoryTypeValue } from "./memory.js";
|
|
2
|
-
export interface MemoryInput {
|
|
3
|
-
content: string;
|
|
4
|
-
type: MemoryTypeValue;
|
|
5
|
-
tags: string[];
|
|
6
|
-
confidence: number;
|
|
7
|
-
source: string;
|
|
8
|
-
embedding: Float32Array | null;
|
|
9
|
-
scope: string;
|
|
10
|
-
validFrom?: number;
|
|
11
|
-
validUntil?: number;
|
|
12
|
-
tier?: string;
|
|
13
|
-
}
|
|
14
|
-
export interface SessionSummary {
|
|
15
|
-
id: string;
|
|
16
|
-
sessionId: string;
|
|
17
|
-
summary: string;
|
|
18
|
-
keyDecisions: string[];
|
|
19
|
-
keyCorrections: string[];
|
|
20
|
-
memoriesExtracted: number;
|
|
21
|
-
project: string;
|
|
22
|
-
createdAt: number;
|
|
23
|
-
}
|
|
24
|
-
export interface MemoryStats {
|
|
25
|
-
total: number;
|
|
26
|
-
byType: Record<string, number>;
|
|
27
|
-
}
|
|
28
|
-
export interface LogEntry {
|
|
29
|
-
id: string;
|
|
30
|
-
sessionId: string;
|
|
31
|
-
role: "user" | "assistant" | "system";
|
|
32
|
-
content: string;
|
|
33
|
-
timestamp: number;
|
|
34
|
-
project: string;
|
|
35
|
-
metadata: Record<string, unknown>;
|
|
36
|
-
}
|
|
37
|
-
export interface LogEntryInput {
|
|
38
|
-
sessionId: string;
|
|
39
|
-
role: "user" | "assistant" | "system";
|
|
40
|
-
content: string;
|
|
41
|
-
project: string;
|
|
42
|
-
metadata?: Record<string, unknown>;
|
|
43
|
-
}
|
|
44
|
-
export interface MemoryVersion {
|
|
45
|
-
versionId: string;
|
|
46
|
-
memoryId: string;
|
|
47
|
-
content: string;
|
|
48
|
-
confidence: number;
|
|
49
|
-
editedAt: number;
|
|
50
|
-
reason: string;
|
|
51
|
-
}
|
|
52
|
-
export interface MemoryRelation {
|
|
53
|
-
id: string;
|
|
54
|
-
fromId: string;
|
|
55
|
-
toId: string;
|
|
56
|
-
relationshipType: string;
|
|
57
|
-
strength: number;
|
|
58
|
-
createdAt: number;
|
|
59
|
-
validFrom?: number | null;
|
|
60
|
-
validUntil?: number | null;
|
|
61
|
-
}
|
|
62
|
-
export interface PatchInput {
|
|
63
|
-
field: "content" | "confidence" | "tags" | "type";
|
|
64
|
-
value: string | number | string[];
|
|
65
|
-
reason: string;
|
|
66
|
-
skipSnapshot?: boolean;
|
|
67
|
-
}
|
|
68
|
-
export interface AmemDatabase {
|
|
69
|
-
insertMemory(input: MemoryInput): string;
|
|
70
|
-
findByContentHash(content: string): Memory | null;
|
|
71
|
-
getById(id: string): Memory | null;
|
|
72
|
-
searchByType(type: MemoryTypeValue): Memory[];
|
|
73
|
-
searchByTag(tag: string): Memory[];
|
|
74
|
-
getAllWithEmbeddings(): Memory[];
|
|
75
|
-
getRecentWithEmbeddings(limit: number): Memory[];
|
|
76
|
-
getAll(): Memory[];
|
|
77
|
-
updateConfidence(id: string, confidence: number): void;
|
|
78
|
-
updateEmbedding(id: string, embedding: Float32Array): void;
|
|
79
|
-
touchAccess(id: string): void;
|
|
80
|
-
deleteMemory(id: string): void;
|
|
81
|
-
getStats(): MemoryStats;
|
|
82
|
-
searchByScope(scope: string): Memory[];
|
|
83
|
-
getAllForProject(project: string): Memory[];
|
|
84
|
-
listTables(): string[];
|
|
85
|
-
close(): void;
|
|
86
|
-
appendLog(entry: LogEntryInput): string;
|
|
87
|
-
getLogBySession(sessionId: string): LogEntry[];
|
|
88
|
-
searchLog(query: string, limit?: number): LogEntry[];
|
|
89
|
-
getRecentLog(limit: number, project?: string): LogEntry[];
|
|
90
|
-
deleteLogBefore(timestamp: number): number;
|
|
91
|
-
getLogCount(): number;
|
|
92
|
-
snapshotVersion(memoryId: string, reason: string): void;
|
|
93
|
-
getVersionHistory(memoryId: string): MemoryVersion[];
|
|
94
|
-
patchMemory(id: string, patch: PatchInput): boolean;
|
|
95
|
-
addRelation(fromId: string, toId: string, type: string, strength?: number): string;
|
|
96
|
-
getRelations(memoryId: string): MemoryRelation[];
|
|
97
|
-
removeRelation(relationId: string): void;
|
|
98
|
-
getRelatedMemories(memoryId: string): Memory[];
|
|
99
|
-
getMemoriesByDateRange(from: number, to: number): Memory[];
|
|
100
|
-
getMemoriesSince(timestamp: number): Memory[];
|
|
101
|
-
fullTextSearch(query: string, limit?: number, scopeProject?: string): Memory[];
|
|
102
|
-
insertReminder(content: string, dueAt: number | null, scope: string): string;
|
|
103
|
-
listReminders(includeCompleted?: boolean, scope?: string): Array<{
|
|
104
|
-
id: string;
|
|
105
|
-
content: string;
|
|
106
|
-
dueAt: number | null;
|
|
107
|
-
completed: boolean;
|
|
108
|
-
createdAt: number;
|
|
109
|
-
scope: string;
|
|
110
|
-
}>;
|
|
111
|
-
checkReminders(): Array<{
|
|
112
|
-
id: string;
|
|
113
|
-
content: string;
|
|
114
|
-
dueAt: number | null;
|
|
115
|
-
status: "overdue" | "today" | "upcoming";
|
|
116
|
-
scope: string;
|
|
117
|
-
}>;
|
|
118
|
-
completeReminder(id: string): boolean;
|
|
119
|
-
getConfidenceStats(): {
|
|
120
|
-
high: number;
|
|
121
|
-
medium: number;
|
|
122
|
-
low: number;
|
|
123
|
-
};
|
|
124
|
-
getEmbeddingCount(): number;
|
|
125
|
-
transaction(fn: () => void): void;
|
|
126
|
-
resolveId(partialId: string): string | null;
|
|
127
|
-
resolveReminderId(partialId: string): string | null;
|
|
128
|
-
getAllRelations(): MemoryRelation[];
|
|
129
|
-
expireMemory(id: string, timestamp?: number): void;
|
|
130
|
-
getValidMemories(asOf?: number): Memory[];
|
|
131
|
-
updateTier(id: string, tier: string): void;
|
|
132
|
-
getByTier(tier: string, scope?: string): Memory[];
|
|
133
|
-
insertSummary(input: {
|
|
134
|
-
sessionId: string;
|
|
135
|
-
summary: string;
|
|
136
|
-
keyDecisions: string[];
|
|
137
|
-
keyCorrections: string[];
|
|
138
|
-
memoriesExtracted: number;
|
|
139
|
-
project: string;
|
|
140
|
-
}): string;
|
|
141
|
-
getSummaryBySession(sessionId: string): SessionSummary | null;
|
|
142
|
-
getRecentSummaries(project: string, limit?: number): SessionSummary[];
|
|
143
|
-
expireRelation(relationId: string, timestamp?: number): void;
|
|
144
|
-
getValidRelations(asOf?: number): MemoryRelation[];
|
|
145
|
-
}
|
|
146
|
-
export declare function createDatabase(dbPath: string): AmemDatabase;
|