@andespindola/brainlink 0.1.0-beta.9 → 0.1.0-beta.90
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/AGENTS.md +8 -5
- package/CHANGELOG.md +26 -2
- package/CONTRIBUTING.md +2 -2
- package/COPYRIGHT.md +5 -0
- package/README.md +146 -17
- package/SECURITY.md +1 -1
- package/dist/application/analyze-vault.js +7 -7
- package/dist/application/build-context.js +56 -1
- package/dist/application/dedupe-notes.js +226 -0
- package/dist/application/frontend/client-css.js +154 -102
- package/dist/application/frontend/client-html.js +49 -40
- package/dist/application/frontend/client-js.js +3130 -166
- package/dist/application/frontend/client-worker-js.js +66 -0
- package/dist/application/get-graph-layout.js +18 -6
- package/dist/application/get-graph-node.js +12 -0
- package/dist/application/get-graph-summary.js +12 -0
- package/dist/application/get-graph.js +3 -3
- package/dist/application/import-legacy-sqlite.js +296 -0
- package/dist/application/index-vault.js +252 -19
- package/dist/application/list-agents.js +3 -3
- package/dist/application/list-links.js +5 -5
- package/dist/application/offline-pack-backup.js +44 -0
- package/dist/application/search-graph-node-ids.js +12 -0
- package/dist/application/search-knowledge.js +25 -10
- package/dist/application/server/routes.js +102 -1
- package/dist/application/start-server.js +75 -4
- package/dist/application/watch-vault.js +23 -2
- package/dist/benchmarks/large-vault.js +1 -1
- package/dist/cli/commands/agent-commands.js +20 -3
- package/dist/cli/commands/write-commands.js +818 -8
- package/dist/domain/context.js +53 -11
- package/dist/domain/embeddings.js +2 -1
- package/dist/domain/graph-layout.js +67 -16
- package/dist/domain/middle-out.js +18 -0
- package/dist/infrastructure/config.js +38 -0
- package/dist/infrastructure/file-index.js +358 -0
- package/dist/infrastructure/file-system-vault.js +15 -0
- package/dist/infrastructure/index-state.js +56 -0
- package/dist/infrastructure/private-pack-codec.js +134 -0
- package/dist/infrastructure/search-packs.js +452 -0
- package/dist/infrastructure/session-state.js +57 -2
- package/dist/mcp/server.js +11 -1
- package/dist/mcp/tools.js +215 -3
- package/docs/AGENT_USAGE.md +103 -16
- package/docs/ARCHITECTURE.md +25 -26
- package/docs/QUICKSTART.md +9 -1
- package/package.json +6 -4
- package/dist/infrastructure/sqlite/document-writer.js +0 -51
- package/dist/infrastructure/sqlite/graph-reader.js +0 -120
- package/dist/infrastructure/sqlite/schema.js +0 -111
- package/dist/infrastructure/sqlite/search-reader.js +0 -156
- package/dist/infrastructure/sqlite/types.js +0 -1
- package/dist/infrastructure/sqlite-index.js +0 -25
|
@@ -9,54 +9,49 @@ export const createClientHtml = () => `<!doctype html>
|
|
|
9
9
|
<body>
|
|
10
10
|
<main class="shell">
|
|
11
11
|
<section class="workspace" aria-label="Knowledge graph">
|
|
12
|
-
<
|
|
13
|
-
|
|
14
|
-
<div>
|
|
12
|
+
<header class="graph-header" aria-label="Graph actions">
|
|
13
|
+
<div class="brand-block">
|
|
15
14
|
<strong>Brainlink</strong>
|
|
16
|
-
<span
|
|
15
|
+
<span class="eyebrow">Knowledge Graph</span>
|
|
16
|
+
</div>
|
|
17
|
+
<div class="floating-metrics" aria-label="Graph totals">
|
|
18
|
+
<div class="metric-chip">
|
|
19
|
+
<strong id="nodeCount">0</strong>
|
|
20
|
+
<small>Notes</small>
|
|
21
|
+
</div>
|
|
22
|
+
<div class="metric-chip">
|
|
23
|
+
<strong id="edgeCount">0</strong>
|
|
24
|
+
<small>Links</small>
|
|
25
|
+
</div>
|
|
26
|
+
<div class="metric-chip">
|
|
27
|
+
<strong id="tagCount">0</strong>
|
|
28
|
+
<small>Tags</small>
|
|
29
|
+
</div>
|
|
17
30
|
</div>
|
|
18
31
|
<label class="search">
|
|
19
32
|
<input id="search" type="search" placeholder="Filter notes, tags or paths" autocomplete="off" />
|
|
20
33
|
</label>
|
|
21
|
-
<
|
|
22
|
-
<
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
34
|
+
<div class="header-actions">
|
|
35
|
+
<label class="agent-filter">
|
|
36
|
+
<select id="agent"></select>
|
|
37
|
+
</label>
|
|
38
|
+
<div class="toolbar" aria-label="Graph controls">
|
|
39
|
+
<button id="zoomIn" type="button" title="Zoom in">+</button>
|
|
40
|
+
<button id="zoomOut" type="button" title="Zoom out">-</button>
|
|
41
|
+
<button id="fit" type="button" title="Focus central hub">◎</button>
|
|
42
|
+
<button id="reset" type="button" title="Reset view">⌂</button>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
</header>
|
|
46
|
+
<div class="graph-stage">
|
|
47
|
+
<canvas id="graphGl" aria-hidden="true"></canvas>
|
|
48
|
+
<canvas id="graph" aria-label="Brainlink knowledge graph"></canvas>
|
|
29
49
|
</div>
|
|
30
50
|
</section>
|
|
31
|
-
<aside class="inspector" aria-label="Selected note">
|
|
32
|
-
<div>
|
|
33
|
-
<span class="eyebrow">Selected note</span>
|
|
34
|
-
<h1 id="title">Graph Overview</h1>
|
|
35
|
-
<p id="path">Select a node to inspect links and backlinks.</p>
|
|
36
|
-
</div>
|
|
37
|
-
<div class="metrics">
|
|
38
|
-
<div><span id="nodeCount">0</span><small>Notes</small></div>
|
|
39
|
-
<div><span id="edgeCount">0</span><small>Links</small></div>
|
|
40
|
-
<div><span id="tagCount">0</span><small>Tags</small></div>
|
|
41
|
-
</div>
|
|
42
|
-
<section>
|
|
43
|
-
<h2>Tags</h2>
|
|
44
|
-
<div id="tags" class="tags"></div>
|
|
45
|
-
</section>
|
|
46
|
-
<section>
|
|
47
|
-
<h2>Notes</h2>
|
|
48
|
-
<ul id="notes"></ul>
|
|
49
|
-
</section>
|
|
50
|
-
<section>
|
|
51
|
-
<h2>Outgoing</h2>
|
|
52
|
-
<ul id="outgoing"></ul>
|
|
53
|
-
</section>
|
|
54
|
-
<section>
|
|
55
|
-
<h2>Backlinks</h2>
|
|
56
|
-
<ul id="incoming"></ul>
|
|
57
|
-
</section>
|
|
58
|
-
</aside>
|
|
59
51
|
</main>
|
|
52
|
+
<footer class="app-footer" aria-label="Copyright notice">
|
|
53
|
+
<small>Copyright © 2026 Substructa</small>
|
|
54
|
+
</footer>
|
|
60
55
|
<dialog id="contentDialog" class="content-dialog" aria-labelledby="contentTitle">
|
|
61
56
|
<article>
|
|
62
57
|
<header>
|
|
@@ -67,6 +62,20 @@ export const createClientHtml = () => `<!doctype html>
|
|
|
67
62
|
</div>
|
|
68
63
|
<button id="contentClose" type="button">Close</button>
|
|
69
64
|
</header>
|
|
65
|
+
<div class="content-meta">
|
|
66
|
+
<section class="content-meta-section">
|
|
67
|
+
<h3>Tags</h3>
|
|
68
|
+
<div id="contentTags" class="tags"></div>
|
|
69
|
+
</section>
|
|
70
|
+
<section class="content-meta-section">
|
|
71
|
+
<h3>Outgoing</h3>
|
|
72
|
+
<ul id="contentOutgoing"></ul>
|
|
73
|
+
</section>
|
|
74
|
+
<section class="content-meta-section">
|
|
75
|
+
<h3>Backlinks</h3>
|
|
76
|
+
<ul id="contentIncoming"></ul>
|
|
77
|
+
</section>
|
|
78
|
+
</div>
|
|
70
79
|
<pre id="contentBody" class="note-content"></pre>
|
|
71
80
|
</article>
|
|
72
81
|
</dialog>
|