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.
- package/LICENSE +21 -0
- package/README.md +1387 -0
- package/dist/cli.d.ts +7 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +3753 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2267 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/archive.d.ts +95 -0
- package/dist/lib/archive.d.ts.map +1 -0
- package/dist/lib/archive.js +311 -0
- package/dist/lib/archive.js.map +1 -0
- package/dist/lib/ask.d.ts +77 -0
- package/dist/lib/ask.d.ts.map +1 -0
- package/dist/lib/ask.js +316 -0
- package/dist/lib/ask.js.map +1 -0
- package/dist/lib/audit.d.ts +47 -0
- package/dist/lib/audit.d.ts.map +1 -0
- package/dist/lib/audit.js +136 -0
- package/dist/lib/audit.js.map +1 -0
- package/dist/lib/bootstrap.d.ts +56 -0
- package/dist/lib/bootstrap.d.ts.map +1 -0
- package/dist/lib/bootstrap.js +163 -0
- package/dist/lib/bootstrap.js.map +1 -0
- package/dist/lib/config.d.ts +239 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/config.js +371 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/dashboard.d.ts +81 -0
- package/dist/lib/dashboard.d.ts.map +1 -0
- package/dist/lib/dashboard.js +314 -0
- package/dist/lib/dashboard.js.map +1 -0
- package/dist/lib/db.d.ts +182 -0
- package/dist/lib/db.d.ts.map +1 -0
- package/dist/lib/db.js +620 -0
- package/dist/lib/db.js.map +1 -0
- package/dist/lib/dbSearch.d.ts +65 -0
- package/dist/lib/dbSearch.d.ts.map +1 -0
- package/dist/lib/dbSearch.js +239 -0
- package/dist/lib/dbSearch.js.map +1 -0
- package/dist/lib/dbWrite.d.ts +56 -0
- package/dist/lib/dbWrite.d.ts.map +1 -0
- package/dist/lib/dbWrite.js +171 -0
- package/dist/lib/dbWrite.js.map +1 -0
- package/dist/lib/dream.d.ts +170 -0
- package/dist/lib/dream.d.ts.map +1 -0
- package/dist/lib/dream.js +706 -0
- package/dist/lib/dream.js.map +1 -0
- package/dist/lib/embeddings.d.ts +84 -0
- package/dist/lib/embeddings.d.ts.map +1 -0
- package/dist/lib/embeddings.js +226 -0
- package/dist/lib/embeddings.js.map +1 -0
- package/dist/lib/export.d.ts +92 -0
- package/dist/lib/export.d.ts.map +1 -0
- package/dist/lib/export.js +362 -0
- package/dist/lib/export.js.map +1 -0
- package/dist/lib/federated.d.ts +113 -0
- package/dist/lib/federated.d.ts.map +1 -0
- package/dist/lib/federated.js +346 -0
- package/dist/lib/federated.js.map +1 -0
- package/dist/lib/graph.d.ts +50 -0
- package/dist/lib/graph.d.ts.map +1 -0
- package/dist/lib/graph.js +118 -0
- package/dist/lib/graph.js.map +1 -0
- package/dist/lib/history.d.ts +39 -0
- package/dist/lib/history.d.ts.map +1 -0
- package/dist/lib/history.js +112 -0
- package/dist/lib/history.js.map +1 -0
- package/dist/lib/hybridSearch.d.ts +80 -0
- package/dist/lib/hybridSearch.d.ts.map +1 -0
- package/dist/lib/hybridSearch.js +296 -0
- package/dist/lib/hybridSearch.js.map +1 -0
- package/dist/lib/import.d.ts +52 -0
- package/dist/lib/import.d.ts.map +1 -0
- package/dist/lib/import.js +365 -0
- package/dist/lib/import.js.map +1 -0
- package/dist/lib/ingest.d.ts +51 -0
- package/dist/lib/ingest.d.ts.map +1 -0
- package/dist/lib/ingest.js +144 -0
- package/dist/lib/ingest.js.map +1 -0
- package/dist/lib/lensing.d.ts +35 -0
- package/dist/lib/lensing.d.ts.map +1 -0
- package/dist/lib/lensing.js +85 -0
- package/dist/lib/lensing.js.map +1 -0
- package/dist/lib/llm.d.ts +84 -0
- package/dist/lib/llm.d.ts.map +1 -0
- package/dist/lib/llm.js +386 -0
- package/dist/lib/llm.js.map +1 -0
- package/dist/lib/lock.d.ts +28 -0
- package/dist/lib/lock.d.ts.map +1 -0
- package/dist/lib/lock.js +145 -0
- package/dist/lib/lock.js.map +1 -0
- package/dist/lib/maintenance.d.ts +124 -0
- package/dist/lib/maintenance.d.ts.map +1 -0
- package/dist/lib/maintenance.js +587 -0
- package/dist/lib/maintenance.js.map +1 -0
- package/dist/lib/migrate.d.ts +19 -0
- package/dist/lib/migrate.d.ts.map +1 -0
- package/dist/lib/migrate.js +260 -0
- package/dist/lib/migrate.js.map +1 -0
- package/dist/lib/preferences.d.ts +49 -0
- package/dist/lib/preferences.d.ts.map +1 -0
- package/dist/lib/preferences.js +149 -0
- package/dist/lib/preferences.js.map +1 -0
- package/dist/lib/projectIdentity.d.ts +66 -0
- package/dist/lib/projectIdentity.d.ts.map +1 -0
- package/dist/lib/projectIdentity.js +148 -0
- package/dist/lib/projectIdentity.js.map +1 -0
- package/dist/lib/recall.d.ts +82 -0
- package/dist/lib/recall.d.ts.map +1 -0
- package/dist/lib/recall.js +289 -0
- package/dist/lib/recall.js.map +1 -0
- package/dist/lib/resolver.d.ts +116 -0
- package/dist/lib/resolver.d.ts.map +1 -0
- package/dist/lib/resolver.js +372 -0
- package/dist/lib/resolver.js.map +1 -0
- package/dist/lib/retry.d.ts +24 -0
- package/dist/lib/retry.d.ts.map +1 -0
- package/dist/lib/retry.js +60 -0
- package/dist/lib/retry.js.map +1 -0
- package/dist/lib/rulesGen.d.ts +51 -0
- package/dist/lib/rulesGen.d.ts.map +1 -0
- package/dist/lib/rulesGen.js +167 -0
- package/dist/lib/rulesGen.js.map +1 -0
- package/dist/lib/search.d.ts +51 -0
- package/dist/lib/search.d.ts.map +1 -0
- package/dist/lib/search.js +190 -0
- package/dist/lib/search.js.map +1 -0
- package/dist/lib/staticSearch.d.ts +70 -0
- package/dist/lib/staticSearch.d.ts.map +1 -0
- package/dist/lib/staticSearch.js +162 -0
- package/dist/lib/staticSearch.js.map +1 -0
- package/dist/lib/store.d.ts +79 -0
- package/dist/lib/store.d.ts.map +1 -0
- package/dist/lib/store.js +227 -0
- package/dist/lib/store.js.map +1 -0
- package/dist/lib/structuredIngest.d.ts +37 -0
- package/dist/lib/structuredIngest.d.ts.map +1 -0
- package/dist/lib/structuredIngest.js +208 -0
- package/dist/lib/structuredIngest.js.map +1 -0
- package/dist/lib/tags.d.ts +26 -0
- package/dist/lib/tags.d.ts.map +1 -0
- package/dist/lib/tags.js +109 -0
- package/dist/lib/tags.js.map +1 -0
- package/dist/lib/timeline.d.ts +34 -0
- package/dist/lib/timeline.d.ts.map +1 -0
- package/dist/lib/timeline.js +116 -0
- package/dist/lib/timeline.js.map +1 -0
- package/dist/lib/trace.d.ts +42 -0
- package/dist/lib/trace.d.ts.map +1 -0
- package/dist/lib/trace.js +338 -0
- package/dist/lib/trace.js.map +1 -0
- package/dist/lib/webIndex.d.ts +28 -0
- package/dist/lib/webIndex.d.ts.map +1 -0
- package/dist/lib/webIndex.js +208 -0
- package/dist/lib/webIndex.js.map +1 -0
- package/dist/lib/webIngest.d.ts +51 -0
- package/dist/lib/webIngest.d.ts.map +1 -0
- package/dist/lib/webIngest.js +533 -0
- package/dist/lib/webIngest.js.map +1 -0
- package/dist/lib/wikilinks.d.ts +63 -0
- package/dist/lib/wikilinks.d.ts.map +1 -0
- package/dist/lib/wikilinks.js +146 -0
- package/dist/lib/wikilinks.js.map +1 -0
- package/dist/sandbox/client.d.ts +82 -0
- package/dist/sandbox/client.d.ts.map +1 -0
- package/dist/sandbox/client.js +128 -0
- package/dist/sandbox/client.js.map +1 -0
- package/dist/sandbox/helper-template.d.ts +14 -0
- package/dist/sandbox/helper-template.d.ts.map +1 -0
- package/dist/sandbox/helper-template.js +285 -0
- package/dist/sandbox/helper-template.js.map +1 -0
- package/dist/sandbox/index.d.ts +10 -0
- package/dist/sandbox/index.d.ts.map +1 -0
- package/dist/sandbox/index.js +10 -0
- package/dist/sandbox/index.js.map +1 -0
- package/dist/sandbox/manager.d.ts +40 -0
- package/dist/sandbox/manager.d.ts.map +1 -0
- package/dist/sandbox/manager.js +220 -0
- package/dist/sandbox/manager.js.map +1 -0
- package/dist/sandbox/server.d.ts +44 -0
- package/dist/sandbox/server.d.ts.map +1 -0
- package/dist/sandbox/server.js +661 -0
- package/dist/sandbox/server.js.map +1 -0
- package/package.json +103 -0
- package/prompts/synthesize.md +21 -0
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gnosys Dashboard — Aggregated system status in a pretty terminal display.
|
|
3
|
+
* Combines memory stats, maintenance health, graph stats, and LLM routing.
|
|
4
|
+
*/
|
|
5
|
+
import { resolveTaskModel, ALL_PROVIDERS, } from "./config.js";
|
|
6
|
+
import { isProviderAvailable } from "./llm.js";
|
|
7
|
+
import { GnosysEmbeddings } from "./embeddings.js";
|
|
8
|
+
import fs from "fs/promises";
|
|
9
|
+
import path from "path";
|
|
10
|
+
// ─── Data Collection ────────────────────────────────────────────────────
|
|
11
|
+
export async function collectDashboardData(resolver, config, version, gnosysDb) {
|
|
12
|
+
const stores = resolver.getStores();
|
|
13
|
+
// v2.0: GnosysDB stats
|
|
14
|
+
let gnosysDbData = null;
|
|
15
|
+
if (gnosysDb?.isAvailable() && gnosysDb?.isMigrated()) {
|
|
16
|
+
const counts = gnosysDb.getMemoryCount();
|
|
17
|
+
const embCount = gnosysDb.getAllEmbeddings().length;
|
|
18
|
+
const categories = gnosysDb.getCategories();
|
|
19
|
+
gnosysDbData = {
|
|
20
|
+
migrated: true,
|
|
21
|
+
schemaVersion: gnosysDb.getSchemaVersion(),
|
|
22
|
+
activeCount: counts.active,
|
|
23
|
+
archivedCount: counts.archived,
|
|
24
|
+
totalCount: counts.total,
|
|
25
|
+
embeddingCount: embCount,
|
|
26
|
+
categories,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
// Memory counts
|
|
30
|
+
const storeData = [];
|
|
31
|
+
let totalMemories = 0;
|
|
32
|
+
for (const s of stores) {
|
|
33
|
+
const memories = await s.store.getAllMemories();
|
|
34
|
+
storeData.push({ label: s.label, path: s.path, memoryCount: memories.length });
|
|
35
|
+
totalMemories += memories.length;
|
|
36
|
+
}
|
|
37
|
+
// Archive stats
|
|
38
|
+
let archive = null;
|
|
39
|
+
if (stores.length > 0) {
|
|
40
|
+
try {
|
|
41
|
+
const { GnosysArchive, getArchiveEligible } = await import("./archive.js");
|
|
42
|
+
const arch = new GnosysArchive(stores[0].path);
|
|
43
|
+
if (arch.isAvailable()) {
|
|
44
|
+
const stats = arch.getStats();
|
|
45
|
+
// Count eligible for archiving
|
|
46
|
+
const allMems = await stores[0].store.getAllMemories();
|
|
47
|
+
const eligible = getArchiveEligible(allMems, config);
|
|
48
|
+
archive = {
|
|
49
|
+
totalArchived: stats.totalArchived,
|
|
50
|
+
dbSizeMB: stats.dbSizeMB,
|
|
51
|
+
archiveEligible: eligible.length,
|
|
52
|
+
};
|
|
53
|
+
arch.close();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
// Archive not available
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
// Maintenance health
|
|
61
|
+
let maintenance = null;
|
|
62
|
+
if (stores.length > 0) {
|
|
63
|
+
try {
|
|
64
|
+
const { GnosysMaintenanceEngine } = await import("./maintenance.js");
|
|
65
|
+
const engine = new GnosysMaintenanceEngine(resolver, config);
|
|
66
|
+
const health = await engine.getHealthReport();
|
|
67
|
+
maintenance = {
|
|
68
|
+
staleCount: health.staleCount,
|
|
69
|
+
avgConfidence: health.avgConfidence,
|
|
70
|
+
avgDecayedConfidence: health.avgDecayedConfidence,
|
|
71
|
+
neverReinforced: health.neverReinforced,
|
|
72
|
+
totalReinforcements: health.totalReinforcements,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
// Maintenance not available
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
// Embeddings
|
|
80
|
+
let embeddings = null;
|
|
81
|
+
if (stores.length > 0) {
|
|
82
|
+
try {
|
|
83
|
+
const emb = new GnosysEmbeddings(stores[0].path);
|
|
84
|
+
const stats = emb.getStats();
|
|
85
|
+
if (stats.count > 0) {
|
|
86
|
+
embeddings = { count: stats.count, dbSizeMB: stats.dbSizeMB };
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
// Embeddings not initialized
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
// Graph stats
|
|
94
|
+
let graph = null;
|
|
95
|
+
if (stores.length > 0) {
|
|
96
|
+
try {
|
|
97
|
+
const graphPath = path.join(stores[0].path, "graph.json");
|
|
98
|
+
const raw = await fs.readFile(graphPath, "utf-8");
|
|
99
|
+
const graphData = JSON.parse(raw);
|
|
100
|
+
const nodes = graphData.nodes?.length || 0;
|
|
101
|
+
const edges = graphData.edges?.length || 0;
|
|
102
|
+
const orphans = graphData.nodes?.filter((n) => n.edges === 0).length || 0;
|
|
103
|
+
const sorted = [...(graphData.nodes || [])].sort((a, b) => b.edges - a.edges);
|
|
104
|
+
const mostConnected = sorted.length > 0 ? sorted[0].id : null;
|
|
105
|
+
graph = { nodes, edges, orphans, mostConnected };
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
// No graph file
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
// SOC status
|
|
112
|
+
const structuring = resolveTaskModel(config, "structuring");
|
|
113
|
+
const synthesis = resolveTaskModel(config, "synthesis");
|
|
114
|
+
const providerStatus = [];
|
|
115
|
+
for (const p of ALL_PROVIDERS) {
|
|
116
|
+
const status = isProviderAvailable(config, p);
|
|
117
|
+
providerStatus.push({
|
|
118
|
+
name: p,
|
|
119
|
+
available: status.available,
|
|
120
|
+
note: status.available ? "ready" : (status.error || "not configured"),
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
// Performance benchmarks (quick probe of search/archive latency)
|
|
124
|
+
let performance = null;
|
|
125
|
+
if (stores.length > 0) {
|
|
126
|
+
try {
|
|
127
|
+
const { GnosysSearch: SearchClass } = await import("./search.js");
|
|
128
|
+
const testSearch = new SearchClass(stores[0].path);
|
|
129
|
+
await testSearch.addStoreMemories(stores[0].store);
|
|
130
|
+
// Active search benchmark
|
|
131
|
+
const t1 = Date.now();
|
|
132
|
+
testSearch.search("test benchmark probe", 5);
|
|
133
|
+
const activeSearchMs = Date.now() - t1;
|
|
134
|
+
// Archive search benchmark
|
|
135
|
+
let archiveSearchMs = 0;
|
|
136
|
+
try {
|
|
137
|
+
const { GnosysArchive: ArchClass } = await import("./archive.js");
|
|
138
|
+
const arch = new ArchClass(stores[0].path);
|
|
139
|
+
if (arch.isAvailable()) {
|
|
140
|
+
const t2 = Date.now();
|
|
141
|
+
arch.searchArchive("test benchmark probe", 5);
|
|
142
|
+
archiveSearchMs = Date.now() - t2;
|
|
143
|
+
arch.close();
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
catch {
|
|
147
|
+
// Archive not available
|
|
148
|
+
}
|
|
149
|
+
// Recall benchmark (active search only)
|
|
150
|
+
const t3 = Date.now();
|
|
151
|
+
testSearch.discover("test benchmark probe", 8);
|
|
152
|
+
const recallMs = Date.now() - t3;
|
|
153
|
+
performance = { activeSearchMs, archiveSearchMs, recallMs };
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
// Performance probe failed
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return {
|
|
160
|
+
stores: storeData,
|
|
161
|
+
totalMemories,
|
|
162
|
+
gnosysDb: gnosysDbData,
|
|
163
|
+
archive,
|
|
164
|
+
maintenance,
|
|
165
|
+
embeddings,
|
|
166
|
+
graph,
|
|
167
|
+
soc: {
|
|
168
|
+
defaultProvider: config.llm.defaultProvider,
|
|
169
|
+
structuring,
|
|
170
|
+
synthesis,
|
|
171
|
+
providerStatus,
|
|
172
|
+
},
|
|
173
|
+
recall: {
|
|
174
|
+
aggressive: config.recall?.aggressive !== false,
|
|
175
|
+
maxMemories: config.recall?.maxMemories ?? 8,
|
|
176
|
+
minRelevance: config.recall?.minRelevance ?? 0.4,
|
|
177
|
+
},
|
|
178
|
+
performance,
|
|
179
|
+
version,
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
// ─── Pretty Terminal Formatting ─────────────────────────────────────────
|
|
183
|
+
export function formatDashboard(data) {
|
|
184
|
+
const lines = [];
|
|
185
|
+
lines.push("╔══════════════════════════════════════════════════════╗");
|
|
186
|
+
lines.push(`║ GNOSYS DASHBOARD v${data.version.padEnd(24)}║`);
|
|
187
|
+
lines.push("╠══════════════════════════════════════════════════════╣");
|
|
188
|
+
// v2.0 GnosysDB stats (show first when available)
|
|
189
|
+
if (data.gnosysDb) {
|
|
190
|
+
lines.push("║ GNOSYS DB (v2.0 AGENT-NATIVE CORE) ║");
|
|
191
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
192
|
+
const schema = ` Schema v${data.gnosysDb.schemaVersion} — migrated ✓`.padEnd(53);
|
|
193
|
+
lines.push(`║${schema}║`);
|
|
194
|
+
const counts = ` Active: ${data.gnosysDb.activeCount} | Archived: ${data.gnosysDb.archivedCount} | Total: ${data.gnosysDb.totalCount}`.padEnd(53);
|
|
195
|
+
lines.push(`║${counts}║`);
|
|
196
|
+
const emb = ` Embeddings: ${data.gnosysDb.embeddingCount} inline vectors`.padEnd(53);
|
|
197
|
+
lines.push(`║${emb}║`);
|
|
198
|
+
const cats = ` Categories: ${data.gnosysDb.categories.join(", ")}`.substring(0, 53).padEnd(53);
|
|
199
|
+
lines.push(`║${cats}║`);
|
|
200
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
201
|
+
}
|
|
202
|
+
// Memory Stats
|
|
203
|
+
lines.push("║ MEMORY STORES ║");
|
|
204
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
205
|
+
for (const s of data.stores) {
|
|
206
|
+
const label = ` ${s.label}: ${s.memoryCount} memories`.padEnd(53);
|
|
207
|
+
lines.push(`║${label}║`);
|
|
208
|
+
}
|
|
209
|
+
const total = ` Total: ${data.totalMemories} active memories`.padEnd(53);
|
|
210
|
+
lines.push(`║${total}║`);
|
|
211
|
+
// Archive (Two-Tier Memory)
|
|
212
|
+
if (data.archive) {
|
|
213
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
214
|
+
lines.push("║ ARCHIVE (TWO-TIER MEMORY) ║");
|
|
215
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
216
|
+
const archived = ` Archived: ${data.archive.totalArchived} memories (${data.archive.dbSizeMB.toFixed(1)} MB)`.padEnd(53);
|
|
217
|
+
lines.push(`║${archived}║`);
|
|
218
|
+
const eligible = ` Eligible for archiving: ${data.archive.archiveEligible}`.padEnd(53);
|
|
219
|
+
lines.push(`║${eligible}║`);
|
|
220
|
+
}
|
|
221
|
+
// Maintenance Health
|
|
222
|
+
if (data.maintenance) {
|
|
223
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
224
|
+
lines.push("║ MAINTENANCE HEALTH ║");
|
|
225
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
226
|
+
const m = data.maintenance;
|
|
227
|
+
const conf = ` Confidence: ${m.avgConfidence.toFixed(3)} raw / ${m.avgDecayedConfidence.toFixed(3)} decayed`.padEnd(53);
|
|
228
|
+
lines.push(`║${conf}║`);
|
|
229
|
+
const stale = ` Stale: ${m.staleCount} | Never reinforced: ${m.neverReinforced}`.padEnd(53);
|
|
230
|
+
lines.push(`║${stale}║`);
|
|
231
|
+
const reinf = ` Total reinforcements: ${m.totalReinforcements}`.padEnd(53);
|
|
232
|
+
lines.push(`║${reinf}║`);
|
|
233
|
+
}
|
|
234
|
+
// Embeddings
|
|
235
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
236
|
+
lines.push("║ EMBEDDINGS ║");
|
|
237
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
238
|
+
if (data.embeddings) {
|
|
239
|
+
const emb = ` ${data.embeddings.count} vectors (${data.embeddings.dbSizeMB.toFixed(1)} MB)`.padEnd(53);
|
|
240
|
+
lines.push(`║${emb}║`);
|
|
241
|
+
}
|
|
242
|
+
else {
|
|
243
|
+
lines.push("║ Not initialized (run gnosys reindex) ║");
|
|
244
|
+
}
|
|
245
|
+
// Graph
|
|
246
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
247
|
+
lines.push("║ WIKILINK GRAPH ║");
|
|
248
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
249
|
+
if (data.graph) {
|
|
250
|
+
const g = data.graph;
|
|
251
|
+
const stats = ` ${g.nodes} nodes, ${g.edges} edges, ${g.orphans} orphans`.padEnd(53);
|
|
252
|
+
lines.push(`║${stats}║`);
|
|
253
|
+
if (g.mostConnected) {
|
|
254
|
+
const mc = ` Most connected: ${g.mostConnected}`.substring(0, 53).padEnd(53);
|
|
255
|
+
lines.push(`║${mc}║`);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
lines.push("║ Not built (run gnosys reindex-graph) ║");
|
|
260
|
+
}
|
|
261
|
+
// Recall
|
|
262
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
263
|
+
lines.push("║ RECALL (AUTOMATIC MEMORY INJECTION) ║");
|
|
264
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
265
|
+
const recallMode = data.recall.aggressive ? "aggressive" : "filtered";
|
|
266
|
+
const recallLine = ` Mode: ${recallMode} | Max: ${data.recall.maxMemories} | Min relevance: ${data.recall.minRelevance}`.padEnd(53);
|
|
267
|
+
lines.push(`║${recallLine}║`);
|
|
268
|
+
// SOC
|
|
269
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
270
|
+
lines.push("║ SYSTEM OF COGNITION (SOC) ║");
|
|
271
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
272
|
+
const defP = ` Default: ${data.soc.defaultProvider}`.padEnd(53);
|
|
273
|
+
lines.push(`║${defP}║`);
|
|
274
|
+
const strLine = ` Structuring → ${data.soc.structuring.provider}/${data.soc.structuring.model}`.substring(0, 53).padEnd(53);
|
|
275
|
+
lines.push(`║${strLine}║`);
|
|
276
|
+
const synLine = ` Synthesis → ${data.soc.synthesis.provider}/${data.soc.synthesis.model}`.substring(0, 53).padEnd(53);
|
|
277
|
+
lines.push(`║${synLine}║`);
|
|
278
|
+
lines.push("║ ║");
|
|
279
|
+
for (const p of data.soc.providerStatus) {
|
|
280
|
+
const icon = p.available ? "✓" : "—";
|
|
281
|
+
// Shorten common error messages to fit the box
|
|
282
|
+
let note = p.note;
|
|
283
|
+
if (note.includes("Add to environment or gnosys.json")) {
|
|
284
|
+
note = "no API key";
|
|
285
|
+
}
|
|
286
|
+
const pLine = ` ${icon} ${p.name}: ${note}`.substring(0, 53).padEnd(53);
|
|
287
|
+
lines.push(`║${pLine}║`);
|
|
288
|
+
}
|
|
289
|
+
// Performance
|
|
290
|
+
if (data.performance) {
|
|
291
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
292
|
+
lines.push("║ PERFORMANCE (ENTERPRISE) ║");
|
|
293
|
+
lines.push("╟──────────────────────────────────────────────────────╢");
|
|
294
|
+
const perf = data.performance;
|
|
295
|
+
const recallLine = ` Recall: ${perf.recallMs}ms${perf.recallMs > 50 ? " ⚠ SLOW" : " ✓"}`.padEnd(53);
|
|
296
|
+
lines.push(`║${recallLine}║`);
|
|
297
|
+
const activeLine = ` Active search: ${perf.activeSearchMs}ms`.padEnd(53);
|
|
298
|
+
lines.push(`║${activeLine}║`);
|
|
299
|
+
const archiveLine = ` Archive search: ${perf.archiveSearchMs}ms`.padEnd(53);
|
|
300
|
+
lines.push(`║${archiveLine}║`);
|
|
301
|
+
if (perf.recallMs > 50) {
|
|
302
|
+
lines.push("║ ⚠ Recall exceeds 50ms target for enterprise use ║");
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
lines.push("╚══════════════════════════════════════════════════════╝");
|
|
306
|
+
return lines.join("\n");
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Format dashboard data as structured JSON for MCP tool consumption.
|
|
310
|
+
*/
|
|
311
|
+
export function formatDashboardJSON(data) {
|
|
312
|
+
return JSON.stringify(data, null, 2);
|
|
313
|
+
}
|
|
314
|
+
//# sourceMappingURL=dashboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/lib/dashboard.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/db.d.ts
ADDED
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gnosys DB — Agent-native SQLite core.
|
|
3
|
+
*
|
|
4
|
+
* v2.0: Single gnosys.db per project (.gnosys/gnosys.db)
|
|
5
|
+
* v3.0: Central gnosys.db at ~/.gnosys/gnosys.db with project_id + scope columns
|
|
6
|
+
*
|
|
7
|
+
* 5 tables: memories, memories_fts, relationships, summaries, audit_log.
|
|
8
|
+
* + projects table (v3.0) for project identity registry.
|
|
9
|
+
*/
|
|
10
|
+
export interface DbMemory {
|
|
11
|
+
id: string;
|
|
12
|
+
title: string;
|
|
13
|
+
category: string;
|
|
14
|
+
content: string;
|
|
15
|
+
summary: string | null;
|
|
16
|
+
tags: string;
|
|
17
|
+
relevance: string;
|
|
18
|
+
author: string;
|
|
19
|
+
authority: string;
|
|
20
|
+
confidence: number;
|
|
21
|
+
reinforcement_count: number;
|
|
22
|
+
content_hash: string;
|
|
23
|
+
status: string;
|
|
24
|
+
tier: string;
|
|
25
|
+
supersedes: string | null;
|
|
26
|
+
superseded_by: string | null;
|
|
27
|
+
last_reinforced: string | null;
|
|
28
|
+
created: string;
|
|
29
|
+
modified: string;
|
|
30
|
+
embedding: Buffer | null;
|
|
31
|
+
source_path: string | null;
|
|
32
|
+
project_id: string | null;
|
|
33
|
+
scope: string;
|
|
34
|
+
}
|
|
35
|
+
/** v3.0: Project identity stored in central DB */
|
|
36
|
+
export interface DbProject {
|
|
37
|
+
id: string;
|
|
38
|
+
name: string;
|
|
39
|
+
working_directory: string;
|
|
40
|
+
user: string;
|
|
41
|
+
agent_rules_target: string | null;
|
|
42
|
+
obsidian_vault: string | null;
|
|
43
|
+
created: string;
|
|
44
|
+
modified: string;
|
|
45
|
+
}
|
|
46
|
+
export type MemoryScope = "project" | "user" | "global";
|
|
47
|
+
export interface DbRelationship {
|
|
48
|
+
source_id: string;
|
|
49
|
+
target_id: string;
|
|
50
|
+
rel_type: string;
|
|
51
|
+
label: string | null;
|
|
52
|
+
confidence: number;
|
|
53
|
+
created: string;
|
|
54
|
+
}
|
|
55
|
+
export interface DbSummary {
|
|
56
|
+
id: string;
|
|
57
|
+
scope: string;
|
|
58
|
+
scope_key: string;
|
|
59
|
+
content: string;
|
|
60
|
+
source_ids: string;
|
|
61
|
+
created: string;
|
|
62
|
+
modified: string;
|
|
63
|
+
}
|
|
64
|
+
export interface DbAuditEntry {
|
|
65
|
+
id: number;
|
|
66
|
+
timestamp: string;
|
|
67
|
+
operation: string;
|
|
68
|
+
memory_id: string | null;
|
|
69
|
+
details: string | null;
|
|
70
|
+
duration_ms: number | null;
|
|
71
|
+
trace_id: string | null;
|
|
72
|
+
}
|
|
73
|
+
export interface MigrationStats {
|
|
74
|
+
memoriesMigrated: number;
|
|
75
|
+
archiveMigrated: number;
|
|
76
|
+
relationshipsCreated: number;
|
|
77
|
+
ftsBuild: boolean;
|
|
78
|
+
}
|
|
79
|
+
declare function fnv1a(str: string): string;
|
|
80
|
+
export declare class GnosysDB {
|
|
81
|
+
private db;
|
|
82
|
+
private storePath;
|
|
83
|
+
private available;
|
|
84
|
+
private dbFilePath;
|
|
85
|
+
/**
|
|
86
|
+
* Get the central DB directory (~/.gnosys/).
|
|
87
|
+
* Creates it if it doesn't exist.
|
|
88
|
+
*/
|
|
89
|
+
static getCentralDbDir(): string;
|
|
90
|
+
/**
|
|
91
|
+
* Get the central DB file path (~/.gnosys/gnosys.db).
|
|
92
|
+
*/
|
|
93
|
+
static getCentralDbPath(): string;
|
|
94
|
+
/**
|
|
95
|
+
* Open the central DB at ~/.gnosys/gnosys.db.
|
|
96
|
+
* Creates ~/.gnosys/ directory if needed.
|
|
97
|
+
*/
|
|
98
|
+
static openCentral(): GnosysDB;
|
|
99
|
+
constructor(storePath: string, opts?: {
|
|
100
|
+
retries?: number;
|
|
101
|
+
retryDelayMs?: number;
|
|
102
|
+
});
|
|
103
|
+
/**
|
|
104
|
+
* Create a backup of the database file.
|
|
105
|
+
* Returns the backup file path.
|
|
106
|
+
*/
|
|
107
|
+
backup(backupDir?: string): Promise<string>;
|
|
108
|
+
/**
|
|
109
|
+
* Restore from a backup file. Closes current DB, copies backup over, re-opens.
|
|
110
|
+
*/
|
|
111
|
+
static restore(backupPath: string, targetDir?: string): GnosysDB;
|
|
112
|
+
private applySchema;
|
|
113
|
+
/**
|
|
114
|
+
* Incremental schema migration.
|
|
115
|
+
* Each version bump adds columns/tables without dropping existing data.
|
|
116
|
+
*/
|
|
117
|
+
private migrateSchema;
|
|
118
|
+
isAvailable(): boolean;
|
|
119
|
+
getDbPath(): string;
|
|
120
|
+
getStorePath(): string;
|
|
121
|
+
insertMemory(mem: Omit<DbMemory, "embedding"> & {
|
|
122
|
+
embedding?: Buffer | null;
|
|
123
|
+
}): void;
|
|
124
|
+
getMemory(id: string): DbMemory | null;
|
|
125
|
+
getActiveMemories(): DbMemory[];
|
|
126
|
+
getAllMemories(): DbMemory[];
|
|
127
|
+
getMemoriesByTier(tier: string): DbMemory[];
|
|
128
|
+
getMemoriesByCategory(category: string): DbMemory[];
|
|
129
|
+
updateMemory(id: string, updates: Partial<DbMemory>): void;
|
|
130
|
+
deleteMemory(id: string): void;
|
|
131
|
+
getMemoryCount(): {
|
|
132
|
+
active: number;
|
|
133
|
+
archived: number;
|
|
134
|
+
total: number;
|
|
135
|
+
};
|
|
136
|
+
getCategories(): string[];
|
|
137
|
+
/**
|
|
138
|
+
* Get active memories scoped to a specific project.
|
|
139
|
+
*/
|
|
140
|
+
getMemoriesByProject(projectId: string): DbMemory[];
|
|
141
|
+
/**
|
|
142
|
+
* Get memories by scope (project, user, global).
|
|
143
|
+
*/
|
|
144
|
+
getMemoriesByScope(scope: MemoryScope): DbMemory[];
|
|
145
|
+
insertProject(project: DbProject): void;
|
|
146
|
+
getProject(id: string): DbProject | null;
|
|
147
|
+
getProjectByDirectory(dir: string): DbProject | null;
|
|
148
|
+
getAllProjects(): DbProject[];
|
|
149
|
+
updateProject(id: string, updates: Partial<DbProject>): void;
|
|
150
|
+
searchFts(query: string, limit?: number): Array<{
|
|
151
|
+
id: string;
|
|
152
|
+
title: string;
|
|
153
|
+
snippet: string;
|
|
154
|
+
rank: number;
|
|
155
|
+
}>;
|
|
156
|
+
discoverFts(query: string, limit?: number): Array<{
|
|
157
|
+
id: string;
|
|
158
|
+
title: string;
|
|
159
|
+
relevance: string;
|
|
160
|
+
rank: number;
|
|
161
|
+
}>;
|
|
162
|
+
insertRelationship(rel: DbRelationship): void;
|
|
163
|
+
getRelationshipsFrom(id: string): DbRelationship[];
|
|
164
|
+
getRelationshipsTo(id: string): DbRelationship[];
|
|
165
|
+
upsertSummary(summary: DbSummary): void;
|
|
166
|
+
getSummary(scope: string, scopeKey: string): DbSummary | null;
|
|
167
|
+
getAllSummaries(): DbSummary[];
|
|
168
|
+
logAudit(entry: Omit<DbAuditEntry, "id">): void;
|
|
169
|
+
updateEmbedding(id: string, embedding: Buffer): void;
|
|
170
|
+
getEmbedding(id: string): Buffer | null;
|
|
171
|
+
getAllEmbeddings(): Array<{
|
|
172
|
+
id: string;
|
|
173
|
+
embedding: Buffer;
|
|
174
|
+
}>;
|
|
175
|
+
getEmbeddingCount(): number;
|
|
176
|
+
transaction<T>(fn: () => T): T;
|
|
177
|
+
close(): void;
|
|
178
|
+
isMigrated(): boolean;
|
|
179
|
+
getSchemaVersion(): number;
|
|
180
|
+
}
|
|
181
|
+
export { fnv1a };
|
|
182
|
+
//# sourceMappingURL=db.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/lib/db.ts"],"names":[],"mappings":"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"}
|