memonaut 0.0.0 → 0.2.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 (81) hide show
  1. package/LICENSE +661 -0
  2. package/dist/cli-main.d.ts +14 -0
  3. package/dist/cli-main.d.ts.map +1 -0
  4. package/dist/cli-main.js +551 -0
  5. package/dist/cli-main.js.map +1 -0
  6. package/dist/cli.d.ts +3 -0
  7. package/dist/cli.d.ts.map +1 -0
  8. package/dist/cli.js +16 -0
  9. package/dist/cli.js.map +1 -0
  10. package/dist/config.d.ts +38 -0
  11. package/dist/config.d.ts.map +1 -0
  12. package/dist/config.js +86 -0
  13. package/dist/config.js.map +1 -0
  14. package/dist/db.d.ts +37 -0
  15. package/dist/db.d.ts.map +1 -0
  16. package/dist/db.js +184 -0
  17. package/dist/db.js.map +1 -0
  18. package/dist/format.d.ts +22 -0
  19. package/dist/format.d.ts.map +1 -0
  20. package/dist/format.js +143 -0
  21. package/dist/format.js.map +1 -0
  22. package/dist/glob.d.ts +17 -0
  23. package/dist/glob.d.ts.map +1 -0
  24. package/dist/glob.js +77 -0
  25. package/dist/glob.js.map +1 -0
  26. package/dist/index.d.ts +13 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +15 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/indexer.d.ts +50 -0
  31. package/dist/indexer.d.ts.map +1 -0
  32. package/dist/indexer.js +404 -0
  33. package/dist/indexer.js.map +1 -0
  34. package/dist/lineage.d.ts +31 -0
  35. package/dist/lineage.d.ts.map +1 -0
  36. package/dist/lineage.js +94 -0
  37. package/dist/lineage.js.map +1 -0
  38. package/dist/model.d.ts +121 -0
  39. package/dist/model.d.ts.map +1 -0
  40. package/dist/model.js +41 -0
  41. package/dist/model.js.map +1 -0
  42. package/dist/pi-source.d.ts +47 -0
  43. package/dist/pi-source.d.ts.map +1 -0
  44. package/dist/pi-source.js +309 -0
  45. package/dist/pi-source.js.map +1 -0
  46. package/dist/quiet.d.ts +7 -0
  47. package/dist/quiet.d.ts.map +1 -0
  48. package/dist/quiet.js +19 -0
  49. package/dist/quiet.js.map +1 -0
  50. package/dist/regex.d.ts +75 -0
  51. package/dist/regex.d.ts.map +1 -0
  52. package/dist/regex.js +242 -0
  53. package/dist/regex.js.map +1 -0
  54. package/dist/ripgrep.d.ts +52 -0
  55. package/dist/ripgrep.d.ts.map +1 -0
  56. package/dist/ripgrep.js +217 -0
  57. package/dist/ripgrep.js.map +1 -0
  58. package/dist/search.d.ts +114 -0
  59. package/dist/search.d.ts.map +1 -0
  60. package/dist/search.js +309 -0
  61. package/dist/search.js.map +1 -0
  62. package/dist/silence-sqlite-warning.d.ts +2 -0
  63. package/dist/silence-sqlite-warning.d.ts.map +1 -0
  64. package/dist/silence-sqlite-warning.js +9 -0
  65. package/dist/silence-sqlite-warning.js.map +1 -0
  66. package/package.json +57 -2
  67. package/src/cli-main.ts +618 -0
  68. package/src/cli.ts +17 -0
  69. package/src/config.ts +130 -0
  70. package/src/db.ts +213 -0
  71. package/src/format.ts +185 -0
  72. package/src/glob.ts +79 -0
  73. package/src/index.ts +19 -0
  74. package/src/indexer.ts +534 -0
  75. package/src/lineage.ts +111 -0
  76. package/src/model.ts +157 -0
  77. package/src/pi-source.ts +328 -0
  78. package/src/quiet.ts +22 -0
  79. package/src/regex.ts +378 -0
  80. package/src/ripgrep.ts +263 -0
  81. package/src/search.ts +504 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
package/dist/search.js ADDED
@@ -0,0 +1,309 @@
1
+ import { matcher } from './glob.js';
2
+ import { KIND_WEIGHT } from './model.js';
3
+ export function loadFiles(db) {
4
+ const rows = db
5
+ .prepare(`SELECT id, path, source, session_uuid, cwd, project, name, parent_id, lineage_id,
6
+ lineage_depth, orphaned, private, started, last_activity, entry_count
7
+ FROM file`)
8
+ .all();
9
+ const out = new Map();
10
+ for (const row of rows)
11
+ out.set(Number(row.id), row);
12
+ return out;
13
+ }
14
+ /** Quote every token, turning a hostile string into a valid FTS5 AND query. */
15
+ export function quoteQuery(text) {
16
+ const tokens = text.match(/[^\s]+/g) ?? [];
17
+ const quoted = tokens.map((t) => '"' + t.replace(/"/g, '""') + '"');
18
+ return quoted.join(' ');
19
+ }
20
+ /**
21
+ * Which transcripts a query is allowed to see.
22
+ *
23
+ * Visibility is decided per THREAD, because a lineage can in principle span
24
+ * working directories; the lineage set is only a prefilter. Both the FTS and
25
+ * the regex path go through here, so `private` and the cwd/project filters
26
+ * cannot drift apart between them.
27
+ */
28
+ export function visibleSets(files, query) {
29
+ const cwdMatch = query.cwd && query.cwd.length ? matcher(query.cwd) : null;
30
+ const projectMatch = query.project && query.project.length ? new Set(query.project) : null;
31
+ const visibleFiles = new Set();
32
+ const visibleLineages = new Set();
33
+ const totalLineages = new Set();
34
+ for (const file of files.values()) {
35
+ if (file.lineage_id !== null)
36
+ totalLineages.add(Number(file.lineage_id));
37
+ if (!query.includePrivate && file.private)
38
+ continue;
39
+ if (cwdMatch && !cwdMatch(file.cwd))
40
+ continue;
41
+ if (projectMatch && !(file.project && projectMatch.has(file.project)))
42
+ continue;
43
+ visibleFiles.add(Number(file.id));
44
+ if (file.lineage_id !== null)
45
+ visibleLineages.add(Number(file.lineage_id));
46
+ }
47
+ return {
48
+ files: visibleFiles,
49
+ lineages: visibleLineages,
50
+ totalLineages,
51
+ };
52
+ }
53
+ function inList(column, values) {
54
+ if (!values || values.length === 0)
55
+ return { sql: '', args: [] };
56
+ const placeholders = values.map(() => '?').join(', ');
57
+ return { sql: ` AND ${column} IN (${placeholders})`, args: values };
58
+ }
59
+ function recencyBoost(ts, now) {
60
+ if (!ts)
61
+ return 1;
62
+ const t = Date.parse(ts);
63
+ if (Number.isNaN(t))
64
+ return 1;
65
+ const ageDays = Math.max(0, (now - t) / 86_400_000);
66
+ // A gentle nudge, not a sort: 1.25x for today, ~1.0x after a year.
67
+ return 1 + 0.25 * Math.exp(-ageDays / 120);
68
+ }
69
+ export function search(db, query, now = Date.now()) {
70
+ const limit = query.limit ?? 20;
71
+ const threadLimit = query.threadLimit ?? 3;
72
+ const files = loadFiles(db);
73
+ const { files: visibleFiles, lineages: visibleLineages, totalLineages, } = visibleSets(files, query);
74
+ const clauses = [];
75
+ const args = [];
76
+ for (const part of [
77
+ inList('e.role', query.role),
78
+ inList('e.tool', query.tool),
79
+ inList('c.kind', query.kind),
80
+ ]) {
81
+ if (part.sql) {
82
+ clauses.push(part.sql);
83
+ args.push(...part.args);
84
+ }
85
+ }
86
+ if (query.since) {
87
+ clauses.push(' AND e.ts >= ?');
88
+ args.push(query.since);
89
+ }
90
+ if (query.until) {
91
+ clauses.push(' AND e.ts <= ?');
92
+ args.push(query.until);
93
+ }
94
+ // Only push the lineage set into SQL when it actually narrows things down;
95
+ // a 3,000-element IN list to exclude nothing is a waste.
96
+ if (visibleLineages.size > 0 &&
97
+ visibleLineages.size < totalLineages.size * 0.5) {
98
+ const ids = [...visibleLineages];
99
+ clauses.push(` AND e.lineage_id IN (${ids.map(() => '?').join(', ')})`);
100
+ args.push(...ids);
101
+ }
102
+ // Over-fetch: grouping by lineage and re-weighting by kind both collapse rows.
103
+ const fetch = Math.min(2000, Math.max(200, limit * 20));
104
+ const sql = `
105
+ SELECT e.id AS entry_id, e.entry_key, e.lineage_id, e.role, e.tool, e.ts,
106
+ c.kind AS kind,
107
+ bm25(chunk_fts) AS bm,
108
+ snippet(chunk_fts, 0, '\u0001', '\u0002', '…', 14) AS snip
109
+ FROM chunk_fts
110
+ JOIN chunk c ON c.id = chunk_fts.rowid
111
+ JOIN entry e ON e.id = c.entry_id
112
+ WHERE chunk_fts MATCH ?${clauses.join('')}
113
+ ORDER BY bm
114
+ LIMIT ?
115
+ `;
116
+ let usedQuery = query.text;
117
+ let quotedFallback = false;
118
+ let rows;
119
+ try {
120
+ rows = db
121
+ .prepare(sql)
122
+ .all(usedQuery, ...args, fetch);
123
+ }
124
+ catch (err) {
125
+ if (query.raw)
126
+ throw new Error(`invalid FTS5 query: ${err.message}`);
127
+ usedQuery = quoteQuery(query.text);
128
+ quotedFallback = true;
129
+ if (!usedQuery)
130
+ throw new Error('empty query');
131
+ rows = db
132
+ .prepare(sql)
133
+ .all(usedQuery, ...args, fetch);
134
+ }
135
+ const memberStmt = db.prepare('SELECT file_id, seq FROM membership WHERE entry_id = ?');
136
+ const groups = new Map();
137
+ const order = [];
138
+ for (const row of rows) {
139
+ const kind = row.kind;
140
+ const weight = KIND_WEIGHT[kind] ?? 1;
141
+ const score = -Number(row.bm) *
142
+ weight *
143
+ (query.noRecency ? 1 : recencyBoost(row.ts, now));
144
+ const lineageId = Number(row.lineage_id);
145
+ const existing = groups.get(lineageId);
146
+ if (existing) {
147
+ existing.otherHits++;
148
+ if (score > existing.score) {
149
+ // A better hit in the same lineage takes over the group, keeping the
150
+ // count of everything it displaced.
151
+ const otherHits = existing.otherHits;
152
+ const replaced = buildHit(row, kind, score, memberStmt, files, visibleFiles, threadLimit);
153
+ if (replaced) {
154
+ replaced.otherHits = otherHits;
155
+ groups.set(lineageId, replaced);
156
+ }
157
+ }
158
+ continue;
159
+ }
160
+ const hit = buildHit(row, kind, score, memberStmt, files, visibleFiles, threadLimit);
161
+ if (!hit)
162
+ continue;
163
+ groups.set(lineageId, hit);
164
+ order.push(lineageId);
165
+ }
166
+ const hits = order
167
+ .map((id) => groups.get(id))
168
+ .filter((h) => Boolean(h))
169
+ .sort((a, b) => b.score - a.score);
170
+ return {
171
+ hits: hits.slice(0, limit),
172
+ usedQuery,
173
+ scanned: hits.length,
174
+ quotedFallback,
175
+ };
176
+ }
177
+ /**
178
+ * Fan one entry back out to every visible thread that carries it.
179
+ *
180
+ * Shared by the FTS and the regex path, because they must produce identical
181
+ * thread lists: an entry is stored once and `membership` is what turns it back
182
+ * into "the twelve threads that inherited this".
183
+ */
184
+ export function collectThreads(entryId, memberStmt, files, visibleFiles) {
185
+ const members = memberStmt.all(entryId);
186
+ const threads = [];
187
+ for (const m of members) {
188
+ const fileId = Number(m.file_id);
189
+ if (!visibleFiles.has(fileId))
190
+ continue;
191
+ const file = files.get(fileId);
192
+ if (!file)
193
+ continue;
194
+ threads.push({
195
+ fileId,
196
+ path: file.path,
197
+ name: file.name,
198
+ cwd: file.cwd,
199
+ project: file.project,
200
+ lastActivity: file.last_activity,
201
+ entryCount: Number(file.entry_count),
202
+ seq: Number(m.seq),
203
+ after: Math.max(0, Number(file.entry_count) - Number(m.seq) - 1),
204
+ isRoot: Number(file.lineage_id) === fileId,
205
+ });
206
+ }
207
+ // Every visible thread that inherited this entry is a result. Most recently
208
+ // active first: when a fork family matches on shared history, the thread you
209
+ // touched last is the one you almost always mean.
210
+ threads.sort((a, b) => (b.lastActivity ?? '').localeCompare(a.lastActivity ?? ''));
211
+ return threads;
212
+ }
213
+ function buildHit(row, kind, score, memberStmt, files, visibleFiles, threadLimit) {
214
+ const threads = collectThreads(Number(row.entry_id), memberStmt, files, visibleFiles);
215
+ if (threads.length === 0)
216
+ return null;
217
+ return {
218
+ entryId: Number(row.entry_id),
219
+ entryKey: row.entry_key,
220
+ lineageId: Number(row.lineage_id),
221
+ role: row.role,
222
+ tool: row.tool,
223
+ ts: row.ts,
224
+ kind,
225
+ snippet: row.snip,
226
+ score,
227
+ threads: threadLimit < 0 ? threads : threads.slice(0, Math.max(threadLimit, 1)),
228
+ threadTotal: threads.length,
229
+ otherHits: 0,
230
+ };
231
+ }
232
+ /** Resolve a user-supplied reference to a thread: file id, uuid prefix, or path. */
233
+ export function resolveThread(db, ref) {
234
+ if (/^\d+$/.test(ref)) {
235
+ const byId = db
236
+ .prepare('SELECT * FROM file WHERE id = ?')
237
+ .get(Number(ref));
238
+ if (byId)
239
+ return byId;
240
+ }
241
+ const byPath = db
242
+ .prepare('SELECT * FROM file WHERE path = ?')
243
+ .get(ref);
244
+ if (byPath)
245
+ return byPath;
246
+ const byUuid = db
247
+ .prepare('SELECT * FROM file WHERE session_uuid LIKE ? ORDER BY last_activity DESC LIMIT 1')
248
+ .get(ref + '%');
249
+ if (byUuid)
250
+ return byUuid;
251
+ const byName = db
252
+ .prepare('SELECT * FROM file WHERE name = ? ORDER BY last_activity DESC LIMIT 1')
253
+ .get(ref);
254
+ return byName ?? null;
255
+ }
256
+ /**
257
+ * Read one thread back in order.
258
+ *
259
+ * `ownerPath` + byte range is the pointer back to the source transcript. The
260
+ * index deliberately stores tool output truncated (or not at all), so anything
261
+ * that needs full fidelity re-reads those bytes instead of trusting the cache.
262
+ */
263
+ export function readThread(db, fileId, from = 0, limit = 50) {
264
+ const rows = db
265
+ .prepare(`SELECT m.seq AS seq, e.id AS entry_id, e.entry_key, e.role, e.tool, e.ts,
266
+ e.first_file, e.byte_offset, e.byte_len, f.path AS owner_path
267
+ FROM membership m
268
+ JOIN entry e ON e.id = m.entry_id
269
+ LEFT JOIN file f ON f.id = e.first_file
270
+ WHERE m.file_id = ? AND m.seq >= ?
271
+ ORDER BY m.seq LIMIT ?`)
272
+ .all(fileId, from, limit);
273
+ const chunkStmt = db.prepare('SELECT kind, text FROM chunk WHERE entry_id = ? ORDER BY part');
274
+ return rows.map((r) => ({
275
+ seq: Number(r.seq),
276
+ entryId: Number(r.entry_id),
277
+ entryKey: r.entry_key,
278
+ role: r.role,
279
+ tool: r.tool,
280
+ ts: r.ts,
281
+ shared: Number(r.first_file) !== fileId,
282
+ ownerPath: r.owner_path,
283
+ byteOffset: Number(r.byte_offset),
284
+ byteLength: Number(r.byte_len),
285
+ texts: chunkStmt.all(r.entry_id),
286
+ }));
287
+ }
288
+ export function indexStats(db) {
289
+ const one = (sql) => db.prepare(sql).get();
290
+ const counts = one(`SELECT COUNT(*) AS files,
291
+ COUNT(DISTINCT lineage_id) AS lineages,
292
+ SUM(CASE WHEN parent_id IS NOT NULL THEN 1 ELSE 0 END) AS forks,
293
+ SUM(private) AS privateFiles,
294
+ SUM(orphaned) AS orphans,
295
+ COUNT(DISTINCT project) AS projects,
296
+ MIN(started) AS oldest,
297
+ MAX(last_activity) AS newest
298
+ FROM file`);
299
+ const entries = one('SELECT COUNT(*) AS n FROM entry').n;
300
+ const memberships = one('SELECT COUNT(*) AS n FROM membership').n;
301
+ const chunks = one('SELECT COUNT(*) AS n FROM chunk').n;
302
+ return {
303
+ ...counts,
304
+ entries: Number(entries),
305
+ memberships: Number(memberships),
306
+ chunks: Number(chunks),
307
+ };
308
+ }
309
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=silence-sqlite-warning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"silence-sqlite-warning.d.ts","sourceRoot":"","sources":["../src/silence-sqlite-warning.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { silenceSqliteWarning } from './quiet.js';
2
+ /**
3
+ * Side-effect module. Imported FIRST by the CLI so the patch is installed
4
+ * before `node:sqlite` is ever loaded: ES modules evaluate all imports before
5
+ * the importing module's body runs, so calling the function from `main()` would
6
+ * be far too late.
7
+ */
8
+ silenceSqliteWarning();
9
+ //# sourceMappingURL=silence-sqlite-warning.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"silence-sqlite-warning.js","sourceRoot":"","sources":["../src/silence-sqlite-warning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,YAAY,CAAC;AAEhD;;;;;GAKG;AACH,oBAAoB,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,62 @@
1
1
  {
2
2
  "name": "memonaut",
3
- "version": "0.0.0",
3
+ "version": "0.2.0",
4
+ "description": "Index and search AI agent conversation transcripts (pi sessions and friends) from the CLI, from agents, and from your own code",
5
+ "license": "AGPL-3.0-only",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/wighawag/memonaut.git",
9
+ "directory": "packages/memonaut"
10
+ },
11
+ "bugs": {
12
+ "url": "https://github.com/wighawag/memonaut/issues"
13
+ },
14
+ "homepage": "https://github.com/wighawag/memonaut#readme",
15
+ "keywords": [
16
+ "search",
17
+ "index",
18
+ "transcripts",
19
+ "conversations",
20
+ "sessions",
21
+ "agent",
22
+ "sqlite",
23
+ "fts5",
24
+ "cli"
25
+ ],
4
26
  "publishConfig": {
5
27
  "access": "public"
28
+ },
29
+ "type": "module",
30
+ "exports": {
31
+ ".": {
32
+ "types": "./dist/index.d.ts",
33
+ "default": "./dist/index.js"
34
+ }
35
+ },
36
+ "bin": {
37
+ "memonaut": "./dist/cli.js",
38
+ "recall": "./dist/cli.js"
39
+ },
40
+ "files": [
41
+ "dist",
42
+ "src"
43
+ ],
44
+ "engines": {
45
+ "node": ">=22.5.0"
46
+ },
47
+ "dependencies": {},
48
+ "devDependencies": {
49
+ "@types/node": "^25.2.0",
50
+ "as-soon": "^0.1.5",
51
+ "tsx": "^4.21.0",
52
+ "typescript": "^5.3.3",
53
+ "vitest": "^4.0.18"
54
+ },
55
+ "scripts": {
56
+ "build": "tsc",
57
+ "dev": "as-soon -w src pnpm build",
58
+ "cli": "tsx src/cli.ts",
59
+ "test": "vitest run",
60
+ "test:watch": "vitest"
6
61
  }
7
- }
62
+ }