gnosys 4.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 (188) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1387 -0
  3. package/dist/cli.d.ts +7 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +3753 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/index.d.ts +8 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +2267 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/lib/archive.d.ts +95 -0
  12. package/dist/lib/archive.d.ts.map +1 -0
  13. package/dist/lib/archive.js +311 -0
  14. package/dist/lib/archive.js.map +1 -0
  15. package/dist/lib/ask.d.ts +77 -0
  16. package/dist/lib/ask.d.ts.map +1 -0
  17. package/dist/lib/ask.js +316 -0
  18. package/dist/lib/ask.js.map +1 -0
  19. package/dist/lib/audit.d.ts +47 -0
  20. package/dist/lib/audit.d.ts.map +1 -0
  21. package/dist/lib/audit.js +136 -0
  22. package/dist/lib/audit.js.map +1 -0
  23. package/dist/lib/bootstrap.d.ts +56 -0
  24. package/dist/lib/bootstrap.d.ts.map +1 -0
  25. package/dist/lib/bootstrap.js +163 -0
  26. package/dist/lib/bootstrap.js.map +1 -0
  27. package/dist/lib/config.d.ts +239 -0
  28. package/dist/lib/config.d.ts.map +1 -0
  29. package/dist/lib/config.js +371 -0
  30. package/dist/lib/config.js.map +1 -0
  31. package/dist/lib/dashboard.d.ts +81 -0
  32. package/dist/lib/dashboard.d.ts.map +1 -0
  33. package/dist/lib/dashboard.js +314 -0
  34. package/dist/lib/dashboard.js.map +1 -0
  35. package/dist/lib/db.d.ts +182 -0
  36. package/dist/lib/db.d.ts.map +1 -0
  37. package/dist/lib/db.js +620 -0
  38. package/dist/lib/db.js.map +1 -0
  39. package/dist/lib/dbSearch.d.ts +65 -0
  40. package/dist/lib/dbSearch.d.ts.map +1 -0
  41. package/dist/lib/dbSearch.js +239 -0
  42. package/dist/lib/dbSearch.js.map +1 -0
  43. package/dist/lib/dbWrite.d.ts +56 -0
  44. package/dist/lib/dbWrite.d.ts.map +1 -0
  45. package/dist/lib/dbWrite.js +171 -0
  46. package/dist/lib/dbWrite.js.map +1 -0
  47. package/dist/lib/dream.d.ts +170 -0
  48. package/dist/lib/dream.d.ts.map +1 -0
  49. package/dist/lib/dream.js +706 -0
  50. package/dist/lib/dream.js.map +1 -0
  51. package/dist/lib/embeddings.d.ts +84 -0
  52. package/dist/lib/embeddings.d.ts.map +1 -0
  53. package/dist/lib/embeddings.js +226 -0
  54. package/dist/lib/embeddings.js.map +1 -0
  55. package/dist/lib/export.d.ts +92 -0
  56. package/dist/lib/export.d.ts.map +1 -0
  57. package/dist/lib/export.js +362 -0
  58. package/dist/lib/export.js.map +1 -0
  59. package/dist/lib/federated.d.ts +113 -0
  60. package/dist/lib/federated.d.ts.map +1 -0
  61. package/dist/lib/federated.js +346 -0
  62. package/dist/lib/federated.js.map +1 -0
  63. package/dist/lib/graph.d.ts +50 -0
  64. package/dist/lib/graph.d.ts.map +1 -0
  65. package/dist/lib/graph.js +118 -0
  66. package/dist/lib/graph.js.map +1 -0
  67. package/dist/lib/history.d.ts +39 -0
  68. package/dist/lib/history.d.ts.map +1 -0
  69. package/dist/lib/history.js +112 -0
  70. package/dist/lib/history.js.map +1 -0
  71. package/dist/lib/hybridSearch.d.ts +80 -0
  72. package/dist/lib/hybridSearch.d.ts.map +1 -0
  73. package/dist/lib/hybridSearch.js +296 -0
  74. package/dist/lib/hybridSearch.js.map +1 -0
  75. package/dist/lib/import.d.ts +52 -0
  76. package/dist/lib/import.d.ts.map +1 -0
  77. package/dist/lib/import.js +365 -0
  78. package/dist/lib/import.js.map +1 -0
  79. package/dist/lib/ingest.d.ts +51 -0
  80. package/dist/lib/ingest.d.ts.map +1 -0
  81. package/dist/lib/ingest.js +144 -0
  82. package/dist/lib/ingest.js.map +1 -0
  83. package/dist/lib/lensing.d.ts +35 -0
  84. package/dist/lib/lensing.d.ts.map +1 -0
  85. package/dist/lib/lensing.js +85 -0
  86. package/dist/lib/lensing.js.map +1 -0
  87. package/dist/lib/llm.d.ts +84 -0
  88. package/dist/lib/llm.d.ts.map +1 -0
  89. package/dist/lib/llm.js +386 -0
  90. package/dist/lib/llm.js.map +1 -0
  91. package/dist/lib/lock.d.ts +28 -0
  92. package/dist/lib/lock.d.ts.map +1 -0
  93. package/dist/lib/lock.js +145 -0
  94. package/dist/lib/lock.js.map +1 -0
  95. package/dist/lib/maintenance.d.ts +124 -0
  96. package/dist/lib/maintenance.d.ts.map +1 -0
  97. package/dist/lib/maintenance.js +587 -0
  98. package/dist/lib/maintenance.js.map +1 -0
  99. package/dist/lib/migrate.d.ts +19 -0
  100. package/dist/lib/migrate.d.ts.map +1 -0
  101. package/dist/lib/migrate.js +260 -0
  102. package/dist/lib/migrate.js.map +1 -0
  103. package/dist/lib/preferences.d.ts +49 -0
  104. package/dist/lib/preferences.d.ts.map +1 -0
  105. package/dist/lib/preferences.js +149 -0
  106. package/dist/lib/preferences.js.map +1 -0
  107. package/dist/lib/projectIdentity.d.ts +66 -0
  108. package/dist/lib/projectIdentity.d.ts.map +1 -0
  109. package/dist/lib/projectIdentity.js +148 -0
  110. package/dist/lib/projectIdentity.js.map +1 -0
  111. package/dist/lib/recall.d.ts +82 -0
  112. package/dist/lib/recall.d.ts.map +1 -0
  113. package/dist/lib/recall.js +289 -0
  114. package/dist/lib/recall.js.map +1 -0
  115. package/dist/lib/resolver.d.ts +116 -0
  116. package/dist/lib/resolver.d.ts.map +1 -0
  117. package/dist/lib/resolver.js +372 -0
  118. package/dist/lib/resolver.js.map +1 -0
  119. package/dist/lib/retry.d.ts +24 -0
  120. package/dist/lib/retry.d.ts.map +1 -0
  121. package/dist/lib/retry.js +60 -0
  122. package/dist/lib/retry.js.map +1 -0
  123. package/dist/lib/rulesGen.d.ts +51 -0
  124. package/dist/lib/rulesGen.d.ts.map +1 -0
  125. package/dist/lib/rulesGen.js +167 -0
  126. package/dist/lib/rulesGen.js.map +1 -0
  127. package/dist/lib/search.d.ts +51 -0
  128. package/dist/lib/search.d.ts.map +1 -0
  129. package/dist/lib/search.js +190 -0
  130. package/dist/lib/search.js.map +1 -0
  131. package/dist/lib/staticSearch.d.ts +70 -0
  132. package/dist/lib/staticSearch.d.ts.map +1 -0
  133. package/dist/lib/staticSearch.js +162 -0
  134. package/dist/lib/staticSearch.js.map +1 -0
  135. package/dist/lib/store.d.ts +79 -0
  136. package/dist/lib/store.d.ts.map +1 -0
  137. package/dist/lib/store.js +227 -0
  138. package/dist/lib/store.js.map +1 -0
  139. package/dist/lib/structuredIngest.d.ts +37 -0
  140. package/dist/lib/structuredIngest.d.ts.map +1 -0
  141. package/dist/lib/structuredIngest.js +208 -0
  142. package/dist/lib/structuredIngest.js.map +1 -0
  143. package/dist/lib/tags.d.ts +26 -0
  144. package/dist/lib/tags.d.ts.map +1 -0
  145. package/dist/lib/tags.js +109 -0
  146. package/dist/lib/tags.js.map +1 -0
  147. package/dist/lib/timeline.d.ts +34 -0
  148. package/dist/lib/timeline.d.ts.map +1 -0
  149. package/dist/lib/timeline.js +116 -0
  150. package/dist/lib/timeline.js.map +1 -0
  151. package/dist/lib/trace.d.ts +42 -0
  152. package/dist/lib/trace.d.ts.map +1 -0
  153. package/dist/lib/trace.js +338 -0
  154. package/dist/lib/trace.js.map +1 -0
  155. package/dist/lib/webIndex.d.ts +28 -0
  156. package/dist/lib/webIndex.d.ts.map +1 -0
  157. package/dist/lib/webIndex.js +208 -0
  158. package/dist/lib/webIndex.js.map +1 -0
  159. package/dist/lib/webIngest.d.ts +51 -0
  160. package/dist/lib/webIngest.d.ts.map +1 -0
  161. package/dist/lib/webIngest.js +533 -0
  162. package/dist/lib/webIngest.js.map +1 -0
  163. package/dist/lib/wikilinks.d.ts +63 -0
  164. package/dist/lib/wikilinks.d.ts.map +1 -0
  165. package/dist/lib/wikilinks.js +146 -0
  166. package/dist/lib/wikilinks.js.map +1 -0
  167. package/dist/sandbox/client.d.ts +82 -0
  168. package/dist/sandbox/client.d.ts.map +1 -0
  169. package/dist/sandbox/client.js +128 -0
  170. package/dist/sandbox/client.js.map +1 -0
  171. package/dist/sandbox/helper-template.d.ts +14 -0
  172. package/dist/sandbox/helper-template.d.ts.map +1 -0
  173. package/dist/sandbox/helper-template.js +285 -0
  174. package/dist/sandbox/helper-template.js.map +1 -0
  175. package/dist/sandbox/index.d.ts +10 -0
  176. package/dist/sandbox/index.d.ts.map +1 -0
  177. package/dist/sandbox/index.js +10 -0
  178. package/dist/sandbox/index.js.map +1 -0
  179. package/dist/sandbox/manager.d.ts +40 -0
  180. package/dist/sandbox/manager.d.ts.map +1 -0
  181. package/dist/sandbox/manager.js +220 -0
  182. package/dist/sandbox/manager.js.map +1 -0
  183. package/dist/sandbox/server.d.ts +44 -0
  184. package/dist/sandbox/server.d.ts.map +1 -0
  185. package/dist/sandbox/server.js +661 -0
  186. package/dist/sandbox/server.js.map +1 -0
  187. package/package.json +103 -0
  188. package/prompts/synthesize.md +21 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dream.js","sourceRoot":"","sources":["../../src/lib/dream.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Gnosys Embeddings — Lazy-loaded semantic embedding engine.
3
+ * Uses @xenova/transformers (ONNX, pure Node) with all-MiniLM-L6-v2.
4
+ * Model (~80 MB) is downloaded only on first use and cached.
5
+ * Embeddings are stored in SQLite as regeneratable sidecar data.
6
+ */
7
+ declare const EMBEDDING_DIM = 384;
8
+ export declare class GnosysEmbeddings {
9
+ private pipeline;
10
+ private db;
11
+ private storePath;
12
+ private modelReady;
13
+ constructor(storePath: string);
14
+ /**
15
+ * Lazily initialize the embedding model. Downloads on first use (~80 MB).
16
+ * Cached in ~/.cache/gnosys or GNOSYS_CACHE_DIR.
17
+ */
18
+ init(): Promise<void>;
19
+ /**
20
+ * Open (or create) the embeddings SQLite table.
21
+ * Stored in the same .config/search.db used by FTS5 search,
22
+ * or a separate embeddings.db if search.db isn't writable.
23
+ */
24
+ openDb(): any;
25
+ /**
26
+ * Embed a single text string. Returns a Float32Array of dimension 384.
27
+ */
28
+ embed(text: string): Promise<Float32Array>;
29
+ /**
30
+ * Embed multiple texts in a batch.
31
+ */
32
+ embedBatch(texts: string[]): Promise<Float32Array[]>;
33
+ /**
34
+ * Store an embedding in SQLite.
35
+ */
36
+ storeEmbedding(filePath: string, embedding: Float32Array, contentHash: string): void;
37
+ /**
38
+ * Get a stored embedding by file path.
39
+ */
40
+ getEmbedding(filePath: string): Float32Array | null;
41
+ /**
42
+ * Get all stored embeddings.
43
+ */
44
+ getAllEmbeddings(): {
45
+ filePath: string;
46
+ embedding: Float32Array;
47
+ contentHash: string;
48
+ }[];
49
+ /**
50
+ * Check if an embedding exists and is up to date.
51
+ */
52
+ isUpToDate(filePath: string, contentHash: string): boolean;
53
+ /**
54
+ * Count stored embeddings.
55
+ */
56
+ count(): number;
57
+ /**
58
+ * Check if embeddings exist (without loading the model).
59
+ */
60
+ hasEmbeddings(): boolean;
61
+ /**
62
+ * Clear all embeddings.
63
+ */
64
+ clear(): void;
65
+ /**
66
+ * Cosine similarity between two vectors.
67
+ * Assumes both are normalized (which all-MiniLM-L6-v2 with normalize=true gives us).
68
+ */
69
+ static cosineSimilarity(a: Float32Array, b: Float32Array): number;
70
+ /**
71
+ * Simple content hash for change detection.
72
+ */
73
+ static contentHash(content: string): string;
74
+ /**
75
+ * Get embedding index statistics.
76
+ */
77
+ getStats(): {
78
+ count: number;
79
+ dbSizeMB: number;
80
+ };
81
+ close(): void;
82
+ }
83
+ export { EMBEDDING_DIM };
84
+ //# sourceMappingURL=embeddings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddings.d.ts","sourceRoot":"","sources":["../../src/lib/embeddings.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,QAAA,MAAM,aAAa,MAAM,CAAC;AAE1B,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAyB;IAEzC,OAAO,CAAC,EAAE,CAAa;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAS;gBAEf,SAAS,EAAE,MAAM;IAI7B;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAuB3B;;;;OAIG;IACH,MAAM,IAAI,GAAG;IAyBb;;OAEG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAShD;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAmB1D;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAQpF;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IASnD;;OAEG;IACH,gBAAgB,IAAI;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,YAAY,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE;IAexF;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAQ1D;;OAEG;IACH,KAAK,IAAI,MAAM;IAMf;;OAEG;IACH,aAAa,IAAI,OAAO;IAQxB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,MAAM;IAQjE;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAU3C;;OAEG;IACH,QAAQ,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IAc/C,KAAK,IAAI,IAAI;CAQd;AAED,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,226 @@
1
+ /**
2
+ * Gnosys Embeddings — Lazy-loaded semantic embedding engine.
3
+ * Uses @xenova/transformers (ONNX, pure Node) with all-MiniLM-L6-v2.
4
+ * Model (~80 MB) is downloaded only on first use and cached.
5
+ * Embeddings are stored in SQLite as regeneratable sidecar data.
6
+ */
7
+ // Dynamic import — gracefully handles missing native module (dlopen failures)
8
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
+ let Database = null;
10
+ try {
11
+ Database = (await import("better-sqlite3")).default;
12
+ }
13
+ catch {
14
+ // better-sqlite3 native module not available — embeddings features disabled
15
+ }
16
+ import path from "path";
17
+ import fs from "fs/promises";
18
+ import { enableWAL } from "./lock.js";
19
+ const MODEL_NAME = "Xenova/all-MiniLM-L6-v2";
20
+ const EMBEDDING_DIM = 384;
21
+ export class GnosysEmbeddings {
22
+ pipeline = null;
23
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
24
+ db = null;
25
+ storePath;
26
+ modelReady = false;
27
+ constructor(storePath) {
28
+ this.storePath = storePath;
29
+ }
30
+ /**
31
+ * Lazily initialize the embedding model. Downloads on first use (~80 MB).
32
+ * Cached in ~/.cache/gnosys or GNOSYS_CACHE_DIR.
33
+ */
34
+ async init() {
35
+ if (this.modelReady)
36
+ return;
37
+ // Set cache directory before importing transformers
38
+ const cacheDir = process.env.GNOSYS_CACHE_DIR ||
39
+ path.join(process.env.HOME || process.env.USERPROFILE || "/tmp", ".cache", "gnosys");
40
+ await fs.mkdir(cacheDir, { recursive: true });
41
+ process.env.TRANSFORMERS_CACHE = cacheDir;
42
+ // Dynamic import — keeps @xenova/transformers out of the main bundle
43
+ const { pipeline } = await import("@xenova/transformers");
44
+ this.pipeline = (await pipeline("feature-extraction", MODEL_NAME, {
45
+ quantized: true,
46
+ }));
47
+ this.modelReady = true;
48
+ }
49
+ /**
50
+ * Open (or create) the embeddings SQLite table.
51
+ * Stored in the same .config/search.db used by FTS5 search,
52
+ * or a separate embeddings.db if search.db isn't writable.
53
+ */
54
+ openDb() {
55
+ if (this.db)
56
+ return this.db;
57
+ if (!Database)
58
+ return null; // Native module not available
59
+ const dbPath = path.join(this.storePath, ".config", "embeddings.db");
60
+ try {
61
+ this.db = new Database(dbPath);
62
+ enableWAL(this.db);
63
+ }
64
+ catch {
65
+ // Fallback to in-memory
66
+ this.db = new Database(":memory:");
67
+ }
68
+ this.db.exec(`
69
+ CREATE TABLE IF NOT EXISTS embeddings (
70
+ file_path TEXT PRIMARY KEY,
71
+ embedding BLOB NOT NULL,
72
+ content_hash TEXT NOT NULL,
73
+ updated_at TEXT NOT NULL
74
+ );
75
+ `);
76
+ return this.db;
77
+ }
78
+ /**
79
+ * Embed a single text string. Returns a Float32Array of dimension 384.
80
+ */
81
+ async embed(text) {
82
+ await this.init();
83
+ if (!this.pipeline)
84
+ throw new Error("Embedding model not initialized");
85
+ const output = await this.pipeline([text], { pooling: "mean", normalize: true });
86
+ const nested = output.tolist();
87
+ return new Float32Array(nested[0]);
88
+ }
89
+ /**
90
+ * Embed multiple texts in a batch.
91
+ */
92
+ async embedBatch(texts) {
93
+ if (texts.length === 0)
94
+ return [];
95
+ await this.init();
96
+ if (!this.pipeline)
97
+ throw new Error("Embedding model not initialized");
98
+ const results = [];
99
+ // Process in batches of 32 to manage memory
100
+ const batchSize = 32;
101
+ for (let i = 0; i < texts.length; i += batchSize) {
102
+ const batch = texts.slice(i, i + batchSize);
103
+ const output = await this.pipeline(batch, { pooling: "mean", normalize: true });
104
+ const nested = output.tolist();
105
+ for (const vec of nested) {
106
+ results.push(new Float32Array(vec));
107
+ }
108
+ }
109
+ return results;
110
+ }
111
+ /**
112
+ * Store an embedding in SQLite.
113
+ */
114
+ storeEmbedding(filePath, embedding, contentHash) {
115
+ const db = this.openDb();
116
+ const buffer = Buffer.from(embedding.buffer);
117
+ db.prepare("INSERT OR REPLACE INTO embeddings (file_path, embedding, content_hash, updated_at) VALUES (?, ?, ?, ?)").run(filePath, buffer, contentHash, new Date().toISOString());
118
+ }
119
+ /**
120
+ * Get a stored embedding by file path.
121
+ */
122
+ getEmbedding(filePath) {
123
+ const db = this.openDb();
124
+ const row = db.prepare("SELECT embedding FROM embeddings WHERE file_path = ?").get(filePath);
125
+ if (!row)
126
+ return null;
127
+ return new Float32Array(row.embedding.buffer, row.embedding.byteOffset, row.embedding.byteLength / 4);
128
+ }
129
+ /**
130
+ * Get all stored embeddings.
131
+ */
132
+ getAllEmbeddings() {
133
+ const db = this.openDb();
134
+ const rows = db.prepare("SELECT file_path, embedding, content_hash FROM embeddings").all();
135
+ return rows.map((r) => ({
136
+ filePath: r.file_path,
137
+ embedding: new Float32Array(r.embedding.buffer, r.embedding.byteOffset, r.embedding.byteLength / 4),
138
+ contentHash: r.content_hash,
139
+ }));
140
+ }
141
+ /**
142
+ * Check if an embedding exists and is up to date.
143
+ */
144
+ isUpToDate(filePath, contentHash) {
145
+ const db = this.openDb();
146
+ const row = db.prepare("SELECT content_hash FROM embeddings WHERE file_path = ?").get(filePath);
147
+ return row?.content_hash === contentHash;
148
+ }
149
+ /**
150
+ * Count stored embeddings.
151
+ */
152
+ count() {
153
+ const db = this.openDb();
154
+ const row = db.prepare("SELECT COUNT(*) as cnt FROM embeddings").get();
155
+ return row.cnt;
156
+ }
157
+ /**
158
+ * Check if embeddings exist (without loading the model).
159
+ */
160
+ hasEmbeddings() {
161
+ try {
162
+ return this.count() > 0;
163
+ }
164
+ catch {
165
+ return false;
166
+ }
167
+ }
168
+ /**
169
+ * Clear all embeddings.
170
+ */
171
+ clear() {
172
+ const db = this.openDb();
173
+ db.exec("DELETE FROM embeddings");
174
+ }
175
+ /**
176
+ * Cosine similarity between two vectors.
177
+ * Assumes both are normalized (which all-MiniLM-L6-v2 with normalize=true gives us).
178
+ */
179
+ static cosineSimilarity(a, b) {
180
+ let dot = 0;
181
+ for (let i = 0; i < a.length; i++) {
182
+ dot += a[i] * b[i];
183
+ }
184
+ return dot;
185
+ }
186
+ /**
187
+ * Simple content hash for change detection.
188
+ */
189
+ static contentHash(content) {
190
+ // Simple FNV-1a hash — fast, good enough for change detection
191
+ let hash = 2166136261;
192
+ for (let i = 0; i < content.length; i++) {
193
+ hash ^= content.charCodeAt(i);
194
+ hash = (hash * 16777619) >>> 0;
195
+ }
196
+ return hash.toString(36);
197
+ }
198
+ /**
199
+ * Get embedding index statistics.
200
+ */
201
+ getStats() {
202
+ const db = this.openDb();
203
+ const row = db.prepare("SELECT COUNT(*) as count FROM embeddings").get();
204
+ const dbPath = path.join(this.storePath, ".config", "embeddings.db");
205
+ let dbSizeMB = 0;
206
+ try {
207
+ const stat = require("fs").statSync(dbPath);
208
+ dbSizeMB = stat.size / (1024 * 1024);
209
+ }
210
+ catch {
211
+ // File might not exist yet
212
+ }
213
+ return { count: row.count, dbSizeMB };
214
+ }
215
+ close() {
216
+ try {
217
+ this.db?.close();
218
+ }
219
+ catch {
220
+ // ignore
221
+ }
222
+ this.db = null;
223
+ }
224
+ }
225
+ export { EMBEDDING_DIM };
226
+ //# sourceMappingURL=embeddings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddings.js","sourceRoot":"","sources":["../../src/lib/embeddings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Gnosys Obsidian Export Bridge — One-way export from gnosys.db to Obsidian vault.
3
+ *
4
+ * Converts the agent-native SQLite store into human-friendly atomic Markdown
5
+ * files with YAML frontmatter, [[wikilinks]], and proper folder structure.
6
+ *
7
+ * This is a completely separate module — it reads from gnosys.db and writes
8
+ * to a target directory. It never modifies gnosys.db.
9
+ *
10
+ * Output structure:
11
+ * target/
12
+ * category/
13
+ * memory-title.md (YAML frontmatter + content + wikilinks)
14
+ * _summaries/
15
+ * category.md (category-level summaries from dream mode)
16
+ * _review/
17
+ * suggested-reviews.md (review suggestions from dream mode)
18
+ * _graph/
19
+ * relationships.md (relationship index)
20
+ */
21
+ import { GnosysDB } from "./db.js";
22
+ export interface ExportOptions {
23
+ /** Target directory for export (will be created if needed) */
24
+ targetDir: string;
25
+ /** Only export active tier (default: true) */
26
+ activeOnly?: boolean;
27
+ /** Include summaries from dream mode */
28
+ includeSummaries?: boolean;
29
+ /** Include review suggestions */
30
+ includeReviews?: boolean;
31
+ /** Include relationship graph */
32
+ includeGraph?: boolean;
33
+ /** Overwrite existing files (default: false — skip existing) */
34
+ overwrite?: boolean;
35
+ /** Progress callback */
36
+ onProgress?: (current: number, total: number, file: string) => void;
37
+ }
38
+ export interface ExportReport {
39
+ memoriesExported: number;
40
+ memoriesSkipped: number;
41
+ summariesExported: number;
42
+ reviewsExported: boolean;
43
+ graphExported: boolean;
44
+ targetDir: string;
45
+ errors: string[];
46
+ }
47
+ export declare class GnosysExporter {
48
+ private db;
49
+ constructor(db: GnosysDB);
50
+ /**
51
+ * Export gnosys.db contents to an Obsidian-compatible vault structure.
52
+ */
53
+ export(options: ExportOptions): Promise<ExportReport>;
54
+ /**
55
+ * Export a single memory as a Markdown file with YAML frontmatter.
56
+ * Returns true if exported, false if skipped (already exists).
57
+ */
58
+ private exportMemory;
59
+ /**
60
+ * Export category summaries from the summaries table.
61
+ */
62
+ private exportSummaries;
63
+ /**
64
+ * Export review suggestions from dream mode.
65
+ */
66
+ private exportReviews;
67
+ /**
68
+ * Export the relationship graph as a navigable index with wikilinks.
69
+ */
70
+ private exportGraph;
71
+ /**
72
+ * Get all relationships for a memory (both directions).
73
+ */
74
+ private getMemoryRelationships;
75
+ /**
76
+ * Build [[wikilinks]] from relationships.
77
+ */
78
+ private buildWikilinks;
79
+ /**
80
+ * Parse tags from JSON string.
81
+ */
82
+ private parseTags;
83
+ /**
84
+ * Slugify a title for use as a filename.
85
+ */
86
+ private slugify;
87
+ }
88
+ /**
89
+ * Format an export report as human-readable text.
90
+ */
91
+ export declare function formatExportReport(report: ExportReport): string;
92
+ //# sourceMappingURL=export.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/lib/export.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,QAAQ,EAAuC,MAAM,SAAS,CAAC;AAMxE,MAAM,WAAW,aAAa;IAC5B,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wCAAwC;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iCAAiC;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iCAAiC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wBAAwB;IACxB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACrE;AAED,MAAM,WAAW,YAAY;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAID,qBAAa,cAAc;IACzB,OAAO,CAAC,EAAE,CAAW;gBAET,EAAE,EAAE,QAAQ;IAIxB;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;IA+E3D;;;OAGG;YACW,YAAY;IA4D1B;;OAEG;YACW,eAAe;IA4C7B;;OAEG;YACW,aAAa;IAmD3B;;OAEG;YACW,WAAW;IA2DzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAM9B;;OAEG;IACH,OAAO,CAAC,cAAc;IAoBtB;;OAEG;IACH,OAAO,CAAC,SAAS;IAUjB;;OAEG;IACH,OAAO,CAAC,OAAO;CAOhB;AAID;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAsB/D"}