obsidian-zk 0.1.3 → 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.
- package/README.md +83 -42
- package/dist/db/index.d.ts +5 -1
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +143 -28
- package/dist/db/index.js.map +1 -1
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +85 -9
- package/dist/server/server.js.map +1 -1
- package/dist/tools/analysis.d.ts.map +1 -1
- package/dist/tools/analysis.js +16 -0
- package/dist/tools/analysis.js.map +1 -1
- package/dist/tools/backlinks.d.ts +30 -0
- package/dist/tools/backlinks.d.ts.map +1 -0
- package/dist/tools/backlinks.js +45 -0
- package/dist/tools/backlinks.js.map +1 -0
- package/dist/tools/capture.d.ts.map +1 -1
- package/dist/tools/capture.js +5 -4
- package/dist/tools/capture.js.map +1 -1
- package/dist/tools/literature.d.ts.map +1 -1
- package/dist/tools/literature.js +5 -4
- package/dist/tools/literature.js.map +1 -1
- package/dist/tools/manage.d.ts +19 -1
- package/dist/tools/manage.d.ts.map +1 -1
- package/dist/tools/manage.js +41 -10
- package/dist/tools/manage.js.map +1 -1
- package/dist/tools/moc.d.ts +15 -0
- package/dist/tools/moc.d.ts.map +1 -0
- package/dist/tools/moc.js +61 -0
- package/dist/tools/moc.js.map +1 -0
- package/dist/tools/permanent.d.ts +1 -0
- package/dist/tools/permanent.d.ts.map +1 -1
- package/dist/tools/permanent.js +17 -5
- package/dist/tools/permanent.js.map +1 -1
- package/dist/tools/project.d.ts +16 -0
- package/dist/tools/project.d.ts.map +1 -0
- package/dist/tools/project.js +49 -0
- package/dist/tools/project.js.map +1 -0
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +0 -3
- package/dist/tools/search.js.map +1 -1
- package/dist/vault/writer.d.ts +1 -0
- package/dist/vault/writer.d.ts.map +1 -1
- package/dist/vault/writer.js +11 -0
- package/dist/vault/writer.js.map +1 -1
- package/package.json +1 -1
- package/templates/claude/skills/zk-daily/SKILL.md +6 -3
- package/templates/claude/skills/zk-finalize/SKILL.md +26 -0
- package/templates/claude/skills/zk-moc/SKILL.md +25 -0
- package/templates/claude/skills/zk-project/SKILL.md +23 -0
- package/templates/claude/skills/zk-promote/SKILL.md +18 -7
package/README.md
CHANGED
|
@@ -6,12 +6,14 @@ Works with [Claude Code](https://claude.ai/code) — exposes tools and prompts v
|
|
|
6
6
|
|
|
7
7
|
## What it does
|
|
8
8
|
|
|
9
|
-
- **CRUD** for fleeting, literature, and
|
|
9
|
+
- **CRUD** for fleeting, literature, permanent, MOC, and project notes with proper frontmatter
|
|
10
10
|
- **Luhmann numbering** — auto-generates `zk_id` with alternating numbers/letters (`1 → 1a → 1a1 → 1a1a`)
|
|
11
|
-
- **Connection
|
|
12
|
-
- **
|
|
13
|
-
- **
|
|
14
|
-
- **
|
|
11
|
+
- **Connection scoring** — finds related notes by shared tags, keywords, Luhmann proximity, MOC overlap
|
|
12
|
+
- **Backlinks** — incoming/outgoing link tracking with path-based resolution
|
|
13
|
+
- **Vault analysis** — unprocessed notes with age warnings, orphans, emerging theme clusters
|
|
14
|
+
- **Quality pipeline** — promote fleeting/literature → permanent, finalize with quality checks
|
|
15
|
+
- **MCP skills** — guided workflows as slash commands (`/zk:capture`, `/zk:promote`, `/zk:moc`, etc.)
|
|
16
|
+
- **SQLite index** — incremental indexing with single-note updates, path-based link storage
|
|
15
17
|
|
|
16
18
|
No embeddings — Claude judges semantic relevance directly in context.
|
|
17
19
|
|
|
@@ -24,8 +26,9 @@ npx obsidian-zk init
|
|
|
24
26
|
```
|
|
25
27
|
|
|
26
28
|
Interactive wizard:
|
|
29
|
+
|
|
27
30
|
- Detects or asks for vault path
|
|
28
|
-
- Creates folder structure (`1-Fleeting/`, `2-Literature/`, `3-Permanent/`,
|
|
31
|
+
- Creates folder structure (`1-Fleeting/`, `2-Literature/`, `3-Permanent/`, `4-MOC/`, `5-Projects/`)
|
|
29
32
|
- Copies note templates, skills, and agents into `.claude/`
|
|
30
33
|
- Creates `CLAUDE.md` with project instructions
|
|
31
34
|
- Sets up SQLite database in `.zk/`
|
|
@@ -42,17 +45,22 @@ claude
|
|
|
42
45
|
|
|
43
46
|
The MCP server starts automatically. Use prompts:
|
|
44
47
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
|
48
|
-
| `/zk:
|
|
49
|
-
| `/zk:
|
|
50
|
-
| `/zk:
|
|
51
|
-
| `/zk:
|
|
52
|
-
| `/zk:
|
|
53
|
-
| `/zk:
|
|
54
|
-
| `/zk:
|
|
55
|
-
| `/zk:
|
|
48
|
+
|
|
49
|
+
| Command | What it does |
|
|
50
|
+
| ---------------- | ---------------------------------------------------- |
|
|
51
|
+
| `/zk:capture` | Quick fleeting note from a thought |
|
|
52
|
+
| `/zk:literature` | Literature note from pasted source |
|
|
53
|
+
| `/zk:permanent` | Atomic permanent note with auto Luhmann ID |
|
|
54
|
+
| `/zk:promote` | Convert fleeting/literature → permanent (single/batch) |
|
|
55
|
+
| `/zk:manage` | Edit/archive/delete by Luhmann number |
|
|
56
|
+
| `/zk:moc` | Create Map of Content — auto-pulls notes by tag |
|
|
57
|
+
| `/zk:project` | Create project note with tasks and deadlines |
|
|
58
|
+
| `/zk:finalize` | Quality-check and finalize permanent notes |
|
|
59
|
+
| `/zk:review` | Vault health report |
|
|
60
|
+
| `/zk:daily` | Morning briefing with age warnings |
|
|
61
|
+
| `/zk:connect` | Find and create connections for a note |
|
|
62
|
+
| `/zk:reflect` | Deep reflection on vault themes |
|
|
63
|
+
|
|
56
64
|
|
|
57
65
|
### 3. Update
|
|
58
66
|
|
|
@@ -69,42 +77,52 @@ Syncs skills/agents, runs DB migrations.
|
|
|
69
77
|
```
|
|
70
78
|
Claude Code ←→ MCP Server (obsidian-zk serve) ←→ SQLite DB + Vault files
|
|
71
79
|
│
|
|
72
|
-
├── Tools (zk_capture, zk_permanent,
|
|
73
|
-
└──
|
|
80
|
+
├── Tools (zk_capture, zk_permanent, zk_moc, zk_backlinks, ...)
|
|
81
|
+
└── Skills (/zk:capture, /zk:promote, /zk:finalize, ...)
|
|
74
82
|
```
|
|
75
83
|
|
|
76
84
|
### Architecture
|
|
77
85
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
|
81
|
-
|
|
|
82
|
-
|
|
|
83
|
-
|
|
|
86
|
+
|
|
87
|
+
| Component | Choice |
|
|
88
|
+
| --------------- | ---------------------------------------------------- |
|
|
89
|
+
| MCP SDK | `@modelcontextprotocol/sdk` (stdio transport) |
|
|
90
|
+
| Database | `better-sqlite3` — single `.zk/zettelkasten.db` file |
|
|
91
|
+
| Semantic search | Claude itself — no embeddings infra needed |
|
|
92
|
+
| Vault I/O | Node.js `fs` — direct file read/write |
|
|
93
|
+
|
|
84
94
|
|
|
85
95
|
### MCP Tools
|
|
86
96
|
|
|
87
97
|
**CRUD:**
|
|
98
|
+
|
|
88
99
|
- `zk_capture` — create fleeting note
|
|
89
100
|
- `zk_literature` — create literature note
|
|
90
101
|
- `zk_permanent` — create permanent note with Luhmann ID
|
|
91
|
-
- `zk_manage` — edit
|
|
92
|
-
- `zk_promote` — mark fleeting as processed
|
|
102
|
+
- `zk_manage` — edit frontmatter + body sections, archive, delete by ID
|
|
103
|
+
- `zk_promote` — mark fleeting/literature as processed, extract key ideas
|
|
104
|
+
- `zk_moc` — create Map of Content, auto-pull notes by tags
|
|
105
|
+
- `zk_project` — create project note with tasks/deadlines
|
|
93
106
|
|
|
94
107
|
**Search & connections:**
|
|
95
|
-
|
|
108
|
+
|
|
109
|
+
- `zk_find_connections` — candidates scored by tags, keywords, Luhmann proximity, MOC overlap
|
|
110
|
+
- `zk_backlinks` — incoming/outgoing links for a note (by path, title, or ID)
|
|
96
111
|
- `zk_cluster_detect` — emerging themes without MOCs
|
|
97
112
|
|
|
98
113
|
**Analysis:**
|
|
114
|
+
|
|
99
115
|
- `zk_list` — filter notes by type/status/folder
|
|
100
|
-
- `zk_unprocessed` — notes needing processing
|
|
116
|
+
- `zk_unprocessed` — notes needing processing with age and urgency tiers
|
|
101
117
|
- `zk_orphans` — notes with no incoming links
|
|
118
|
+
- `zk_finalize` — quality-check permanent notes (connections, claim, evidence, confidence)
|
|
102
119
|
- `zk_next_id` — next Luhmann ID
|
|
103
120
|
- `zk_find_by_id` — resolve ID → path
|
|
104
121
|
- `zk_list_ids` — all numbered notes
|
|
105
122
|
- `zk_review` — full vault health report
|
|
106
123
|
|
|
107
124
|
**Index:**
|
|
125
|
+
|
|
108
126
|
- `zk_reindex` — full vault re-scan
|
|
109
127
|
- `zk_status` — DB stats
|
|
110
128
|
|
|
@@ -124,19 +142,21 @@ CREATE TABLE links (
|
|
|
124
142
|
);
|
|
125
143
|
```
|
|
126
144
|
|
|
127
|
-
Incremental indexing
|
|
145
|
+
Links use **path-based resolution** — wikilink titles resolved to file paths during indexing. Incremental indexing via `content_hash`; single-note `indexNote()` for CRUD ops, full `reindex()` for vault scans.
|
|
128
146
|
|
|
129
147
|
## Zettelkasten method
|
|
130
148
|
|
|
131
149
|
### Note types
|
|
132
150
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
|
136
|
-
| `
|
|
137
|
-
| `
|
|
138
|
-
| `
|
|
139
|
-
| `
|
|
151
|
+
|
|
152
|
+
| Folder | Type | Atomic? | Lifecycle |
|
|
153
|
+
| --------------- | ----------------- | ------- | ----------------------- |
|
|
154
|
+
| `1-Fleeting/` | Raw thoughts | No | unprocessed → processed |
|
|
155
|
+
| `2-Literature/` | Source summaries | Partial | unprocessed → processed |
|
|
156
|
+
| `3-Permanent/` | One idea per note | **Yes** | draft → finalized |
|
|
157
|
+
| `4-MOC/` | Topic indexes | No | draft → active |
|
|
158
|
+
| `5-Projects/` | Active goals | No | active → completed |
|
|
159
|
+
|
|
140
160
|
|
|
141
161
|
### Luhmann numbering
|
|
142
162
|
|
|
@@ -153,16 +173,27 @@ Incremental indexing — compares `content_hash`, only updates changed files.
|
|
|
153
173
|
- **Розширює** (Extends) — builds upon another idea
|
|
154
174
|
- **Пов'язано** (Related) — topically connected
|
|
155
175
|
|
|
176
|
+
### Connection scoring
|
|
177
|
+
|
|
178
|
+
Notes are scored for connection relevance using multiple signals:
|
|
179
|
+
- Shared tags: +2 per tag
|
|
180
|
+
- Keyword overlap: +1 (4+ chars), +2 (6+ chars)
|
|
181
|
+
- Luhmann proximity: +3 (siblings), +1 (cousins)
|
|
182
|
+
- Shared MOC: +2
|
|
183
|
+
- Threshold: score ≥ 2 to appear as candidate
|
|
184
|
+
|
|
156
185
|
### Workflow
|
|
157
186
|
|
|
158
187
|
```
|
|
159
188
|
Thought → /zk:capture → Fleeting note
|
|
160
189
|
Source → /zk:literature → Literature note
|
|
161
190
|
↓
|
|
162
|
-
/zk:promote (or
|
|
191
|
+
/zk:promote (fleeting or literature)
|
|
163
192
|
↓
|
|
164
193
|
Permanent note (auto zk_id) ←→ connections
|
|
165
194
|
↓
|
|
195
|
+
/zk:finalize (quality check)
|
|
196
|
+
↓
|
|
166
197
|
MOC (when 3+ related notes cluster)
|
|
167
198
|
```
|
|
168
199
|
|
|
@@ -202,14 +233,24 @@ src/
|
|
|
202
233
|
├── vault/
|
|
203
234
|
│ ├── parser.ts # Frontmatter, wikilinks, body
|
|
204
235
|
│ ├── scanner.ts # File discovery
|
|
205
|
-
│ └── writer.ts # Note creation/editing
|
|
236
|
+
│ └── writer.ts # Note creation/editing + section updates
|
|
206
237
|
├── db/
|
|
207
|
-
│ ├── schema.ts # SQLite schema
|
|
208
|
-
│ └── index.ts # DB connection
|
|
238
|
+
│ ├── schema.ts # SQLite schema + migrations
|
|
239
|
+
│ └── index.ts # DB connection, indexing, connection scoring
|
|
209
240
|
├── tools/ # MCP tool implementations
|
|
241
|
+
│ ├── capture.ts # Fleeting notes
|
|
242
|
+
│ ├── literature.ts # Literature notes
|
|
243
|
+
│ ├── permanent.ts # Permanent notes (from fleeting or literature)
|
|
244
|
+
│ ├── manage.ts # Edit/archive/delete/finalize
|
|
245
|
+
│ ├── moc.ts # Map of Content creation
|
|
246
|
+
│ ├── project.ts # Project notes
|
|
247
|
+
│ ├── backlinks.ts # Incoming/outgoing link queries
|
|
248
|
+
│ ├── search.ts # Connection search + cluster detection
|
|
249
|
+
│ ├── analysis.ts # Unprocessed, orphans, review
|
|
250
|
+
│ └── index-mgmt.ts # Reindex, status
|
|
210
251
|
└── luhmann.ts # ID generation + sorting
|
|
211
252
|
templates/ # Copied to user vault on init
|
|
212
|
-
├── claude/skills/ #
|
|
253
|
+
├── claude/skills/ # 12 SKILL.md files
|
|
213
254
|
├── claude/agents/ # zk-analyzer agent
|
|
214
255
|
├── vault-folders/ # Default folder structure + note templates
|
|
215
256
|
└── CLAUDE.md.template # Project instructions
|
package/dist/db/index.d.ts
CHANGED
|
@@ -6,6 +6,9 @@ export declare class ZkDatabase {
|
|
|
6
6
|
db: Database.Database;
|
|
7
7
|
vaultRoot: string;
|
|
8
8
|
constructor(vaultRoot: string);
|
|
9
|
+
resolveWikilink(title: string): string | null;
|
|
10
|
+
indexNote(relPath: string): void;
|
|
11
|
+
removeNote(relPath: string): void;
|
|
9
12
|
reindex(): {
|
|
10
13
|
added: number;
|
|
11
14
|
updated: number;
|
|
@@ -28,7 +31,8 @@ export declare class ZkDatabase {
|
|
|
28
31
|
getUnprocessed(type?: string): any[];
|
|
29
32
|
getOrphans(folder?: string): any[];
|
|
30
33
|
getLinksFrom(relPath: string): any[];
|
|
31
|
-
getLinksTo(
|
|
34
|
+
getLinksTo(path: string): any[];
|
|
35
|
+
shareMoc(pathA: string, pathB: string): boolean;
|
|
32
36
|
findConnections(notePath: string): {
|
|
33
37
|
path: string;
|
|
34
38
|
title: string;
|
package/dist/db/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAiDtC,qBAAa,UAAU;IACrB,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;gBAEN,SAAS,EAAE,MAAM;IAY7B,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAK7C,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IA4ChC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAMjC,OAAO,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAoF9D,aAAa,CAAC,OAAO,EAAE,MAAM,GACkD,GAAG;IAGlF,WAAW,CAAC,IAAI,EAAE,MAAM,GACqD,GAAG;IAGhF,cAAc,CAAC,IAAI,EAAE,MAAM,GACiD,GAAG,EAAE;IAGjF,gBAAgB,CAAC,MAAM,EAAE,MAAM,GACiD,GAAG,EAAE;IAGrF,gBAAgB,CAAC,MAAM,EAAE,MAAM,GACiD,GAAG,EAAE;IAGrF,SAAS,CAAC,OAAO,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAOtB,GAAG,EAAE;IAGrD,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAO3D,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,GAKoB,GAAG,EAAE;IAGrD,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GASsB,GAAG,EAAE;IAGrD,YAAY,CAAC,OAAO,EAAE,MAAM,GACqD,GAAG,EAAE;IAGtF,UAAU,CAAC,IAAI,EAAE,MAAM,GACuD,GAAG,EAAE;IAGnF,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAU/C,eAAe,CAAC,QAAQ,EAAE,MAAM;cAOJ,MAAM;eAAS,MAAM;eAAS,MAAM;iBAAW,MAAM,EAAE;iBAAW,MAAM;cAAQ,MAAM;;IA4ClH,QAAQ;;;;;;;IASR,KAAK;CAGN"}
|
package/dist/db/index.js
CHANGED
|
@@ -8,6 +8,52 @@ import { join, dirname, basename } from "node:path";
|
|
|
8
8
|
import { CREATE_TABLES, SCHEMA_VERSION } from "./schema.js";
|
|
9
9
|
import { scanVault } from "../vault/scanner.js";
|
|
10
10
|
import { parseFrontmatter, getBody, getTags, getWikilinks } from "../vault/parser.js";
|
|
11
|
+
function extractSummary(fm, body, type) {
|
|
12
|
+
if (type === "permanent" && fm.claim) {
|
|
13
|
+
return String(fm.claim);
|
|
14
|
+
}
|
|
15
|
+
if (type === "literature") {
|
|
16
|
+
const lines = body.split("\n");
|
|
17
|
+
let para = "";
|
|
18
|
+
for (const line of lines) {
|
|
19
|
+
const trimmed = line.trim();
|
|
20
|
+
if (!trimmed || trimmed.startsWith("#")) {
|
|
21
|
+
if (para)
|
|
22
|
+
return para.slice(0, 500);
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
para += (para ? " " : "") + trimmed;
|
|
26
|
+
}
|
|
27
|
+
if (para)
|
|
28
|
+
return para.slice(0, 500);
|
|
29
|
+
}
|
|
30
|
+
if (type === "fleeting") {
|
|
31
|
+
const match = body.match(/##\s+Thought[^\n]*\n([\s\S]*?)(?=\n##|$)/);
|
|
32
|
+
if (match)
|
|
33
|
+
return match[1].trim().slice(0, 500);
|
|
34
|
+
}
|
|
35
|
+
return body.trim().slice(0, 500);
|
|
36
|
+
}
|
|
37
|
+
function luhmannProximity(idA, idB) {
|
|
38
|
+
if (!idA || !idB)
|
|
39
|
+
return 0;
|
|
40
|
+
const partsA = idA.match(/(\d+|[a-z]+)/g) ?? [];
|
|
41
|
+
const partsB = idB.match(/(\d+|[a-z]+)/g) ?? [];
|
|
42
|
+
let common = 0;
|
|
43
|
+
for (let i = 0; i < Math.min(partsA.length, partsB.length); i++) {
|
|
44
|
+
if (partsA[i] === partsB[i])
|
|
45
|
+
common++;
|
|
46
|
+
else
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
if (common === 0)
|
|
50
|
+
return 0;
|
|
51
|
+
// Siblings: share all but last segment
|
|
52
|
+
if (common >= Math.max(partsA.length, partsB.length) - 1)
|
|
53
|
+
return 3;
|
|
54
|
+
// Cousins: share at least one segment
|
|
55
|
+
return 1;
|
|
56
|
+
}
|
|
11
57
|
export class ZkDatabase {
|
|
12
58
|
db;
|
|
13
59
|
vaultRoot;
|
|
@@ -18,33 +64,71 @@ export class ZkDatabase {
|
|
|
18
64
|
mkdirSync(dbDir, { recursive: true });
|
|
19
65
|
const dbPath = join(dbDir, "zettelkasten.db");
|
|
20
66
|
this.db = new Database(dbPath);
|
|
21
|
-
// WAL mode: allows concurrent reads during writes, better for indexing while serving queries
|
|
22
67
|
this.db.pragma("journal_mode = WAL");
|
|
23
68
|
this.db.exec(CREATE_TABLES);
|
|
24
69
|
this.db.prepare("INSERT OR REPLACE INTO meta (key, value) VALUES (?, ?)").run("schema_version", String(SCHEMA_VERSION));
|
|
25
70
|
}
|
|
71
|
+
resolveWikilink(title) {
|
|
72
|
+
const row = this.db.prepare("SELECT path FROM notes WHERE title = ?").get(title);
|
|
73
|
+
return row?.path ?? null;
|
|
74
|
+
}
|
|
75
|
+
indexNote(relPath) {
|
|
76
|
+
const fullPath = join(this.vaultRoot, relPath);
|
|
77
|
+
let content;
|
|
78
|
+
try {
|
|
79
|
+
content = readFileSync(fullPath, "utf-8");
|
|
80
|
+
}
|
|
81
|
+
catch {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
const hash = createHash("md5").update(content).digest("hex");
|
|
85
|
+
const fm = parseFrontmatter(fullPath);
|
|
86
|
+
const body = getBody(fullPath);
|
|
87
|
+
const title = basename(relPath, ".md");
|
|
88
|
+
const folder = dirname(relPath).split("/")[0] || "";
|
|
89
|
+
const tags = getTags(fm);
|
|
90
|
+
const type = fm.type;
|
|
91
|
+
const summary = extractSummary(fm, body, type);
|
|
92
|
+
this.db.prepare(`
|
|
93
|
+
INSERT OR REPLACE INTO notes (path, title, zk_id, type, status, folder, tags, summary, created, modified, content_hash)
|
|
94
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
95
|
+
`).run(relPath, title, fm.zk_id || null, type || null, fm.status || null, folder, JSON.stringify(tags), summary, fm.date || null, fm.last_modified || null, hash);
|
|
96
|
+
// Rebuild links for this note
|
|
97
|
+
this.db.prepare("DELETE FROM links WHERE source = ?").run(relPath);
|
|
98
|
+
const insertLink = this.db.prepare("INSERT OR REPLACE INTO links (source, target, link_type) VALUES (?, ?, ?)");
|
|
99
|
+
const wikilinks = getWikilinks(fullPath);
|
|
100
|
+
for (const target of wikilinks) {
|
|
101
|
+
const targetPath = this.resolveWikilink(target) ?? target;
|
|
102
|
+
insertLink.run(relPath, targetPath, null);
|
|
103
|
+
}
|
|
104
|
+
this.db.prepare("INSERT OR REPLACE INTO meta (key, value) VALUES (?, ?)").run("last_index", new Date().toISOString());
|
|
105
|
+
}
|
|
106
|
+
removeNote(relPath) {
|
|
107
|
+
this.db.prepare("DELETE FROM notes WHERE path = ?").run(relPath);
|
|
108
|
+
this.db.prepare("DELETE FROM links WHERE source = ?").run(relPath);
|
|
109
|
+
this.db.prepare("DELETE FROM links WHERE target = ?").run(relPath);
|
|
110
|
+
}
|
|
26
111
|
reindex() {
|
|
27
112
|
const notes = scanVault(this.vaultRoot);
|
|
28
113
|
const currentPaths = new Set(notes.map((n) => n.relPath));
|
|
29
114
|
let added = 0, updated = 0, removed = 0;
|
|
30
|
-
// Remove deleted notes
|
|
115
|
+
// Remove deleted notes + their links
|
|
31
116
|
const dbPaths = this.db.prepare("SELECT path FROM notes").all();
|
|
32
|
-
const removePaths = dbPaths.filter((r) => !currentPaths.has(r.path));
|
|
33
117
|
const deleteNote = this.db.prepare("DELETE FROM notes WHERE path = ?");
|
|
34
118
|
const deleteLinks = this.db.prepare("DELETE FROM links WHERE source = ?");
|
|
35
|
-
for (const { path } of
|
|
119
|
+
for (const { path } of dbPaths.filter((r) => !currentPaths.has(r.path))) {
|
|
36
120
|
deleteNote.run(path);
|
|
37
121
|
deleteLinks.run(path);
|
|
38
122
|
removed++;
|
|
39
123
|
}
|
|
40
|
-
//
|
|
124
|
+
// Pass 1: upsert all notes
|
|
41
125
|
const getHash = this.db.prepare("SELECT content_hash FROM notes WHERE path = ?");
|
|
42
126
|
const upsert = this.db.prepare(`
|
|
43
127
|
INSERT OR REPLACE INTO notes (path, title, zk_id, type, status, folder, tags, summary, created, modified, content_hash)
|
|
44
128
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
45
129
|
`);
|
|
46
|
-
const
|
|
47
|
-
const
|
|
130
|
+
const changedPaths = new Set();
|
|
131
|
+
const upsertTx = this.db.transaction(() => {
|
|
48
132
|
for (const note of notes) {
|
|
49
133
|
const fullPath = join(this.vaultRoot, note.relPath);
|
|
50
134
|
let content;
|
|
@@ -54,31 +138,41 @@ export class ZkDatabase {
|
|
|
54
138
|
catch {
|
|
55
139
|
continue;
|
|
56
140
|
}
|
|
57
|
-
// Incremental indexing: skip files whose content hash hasn't changed
|
|
58
141
|
const hash = createHash("md5").update(content).digest("hex");
|
|
59
142
|
const existing = getHash.get(note.relPath);
|
|
60
143
|
if (existing?.content_hash === hash)
|
|
61
144
|
continue;
|
|
145
|
+
changedPaths.add(note.relPath);
|
|
62
146
|
const fm = parseFrontmatter(fullPath);
|
|
63
147
|
const body = getBody(fullPath);
|
|
64
148
|
const title = basename(note.relPath, ".md");
|
|
65
149
|
const folder = dirname(note.relPath).split("/")[0] || "";
|
|
66
150
|
const tags = getTags(fm);
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
deleteLinks.run(note.relPath);
|
|
71
|
-
const wikilinks = getWikilinks(fullPath);
|
|
72
|
-
for (const target of wikilinks) {
|
|
73
|
-
insertLink.run(note.relPath, target, null);
|
|
74
|
-
}
|
|
151
|
+
const type = fm.type;
|
|
152
|
+
const summary = extractSummary(fm, body, type);
|
|
153
|
+
upsert.run(note.relPath, title, fm.zk_id || null, type || null, fm.status || null, folder, JSON.stringify(tags), summary, fm.date || null, fm.last_modified || null, hash);
|
|
75
154
|
if (existing)
|
|
76
155
|
updated++;
|
|
77
156
|
else
|
|
78
157
|
added++;
|
|
79
158
|
}
|
|
80
159
|
});
|
|
81
|
-
|
|
160
|
+
upsertTx();
|
|
161
|
+
// Pass 2: rebuild links for changed notes (all notes now in DB for resolution)
|
|
162
|
+
const insertLink = this.db.prepare("INSERT OR REPLACE INTO links (source, target, link_type) VALUES (?, ?, ?)");
|
|
163
|
+
const deleteSrcLinks = this.db.prepare("DELETE FROM links WHERE source = ?");
|
|
164
|
+
const linkTx = this.db.transaction(() => {
|
|
165
|
+
for (const relPath of changedPaths) {
|
|
166
|
+
deleteSrcLinks.run(relPath);
|
|
167
|
+
const fullPath = join(this.vaultRoot, relPath);
|
|
168
|
+
const wikilinks = getWikilinks(fullPath);
|
|
169
|
+
for (const target of wikilinks) {
|
|
170
|
+
const targetPath = this.resolveWikilink(target) ?? target;
|
|
171
|
+
insertLink.run(relPath, targetPath, null);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
linkTx();
|
|
82
176
|
this.db.prepare("INSERT OR REPLACE INTO meta (key, value) VALUES (?, ?)").run("last_index", new Date().toISOString());
|
|
83
177
|
return { added, updated, removed };
|
|
84
178
|
}
|
|
@@ -133,10 +227,9 @@ export class ZkDatabase {
|
|
|
133
227
|
return this.db.prepare(sql).all(...params);
|
|
134
228
|
}
|
|
135
229
|
getOrphans(folder) {
|
|
136
|
-
// LEFT JOIN + NULL: notes where no link row matched = no incoming links
|
|
137
230
|
let sql = `
|
|
138
231
|
SELECT n.* FROM notes n
|
|
139
|
-
LEFT JOIN links l ON l.target = n.
|
|
232
|
+
LEFT JOIN links l ON l.target = n.path
|
|
140
233
|
WHERE l.target IS NULL
|
|
141
234
|
`;
|
|
142
235
|
const params = [];
|
|
@@ -150,34 +243,56 @@ export class ZkDatabase {
|
|
|
150
243
|
getLinksFrom(relPath) {
|
|
151
244
|
return this.db.prepare("SELECT * FROM links WHERE source = ?").all(relPath);
|
|
152
245
|
}
|
|
153
|
-
getLinksTo(
|
|
154
|
-
return this.db.prepare("SELECT * FROM links WHERE target = ?").all(
|
|
246
|
+
getLinksTo(path) {
|
|
247
|
+
return this.db.prepare("SELECT * FROM links WHERE target = ?").all(path);
|
|
248
|
+
}
|
|
249
|
+
shareMoc(pathA, pathB) {
|
|
250
|
+
const row = this.db.prepare(`
|
|
251
|
+
SELECT COUNT(*) as c FROM links l1
|
|
252
|
+
JOIN links l2 ON l1.source = l2.source
|
|
253
|
+
JOIN notes n ON l1.source = n.path AND n.type = 'moc'
|
|
254
|
+
WHERE l1.target = ? AND l2.target = ?
|
|
255
|
+
`).get(pathA, pathB);
|
|
256
|
+
return row.c > 0;
|
|
155
257
|
}
|
|
156
258
|
findConnections(notePath) {
|
|
157
259
|
const note = this.getNoteByPath(notePath);
|
|
158
260
|
if (!note)
|
|
159
261
|
return [];
|
|
160
262
|
const noteTags = JSON.parse(note.tags || "[]");
|
|
161
|
-
const noteTitle = note.title;
|
|
162
263
|
const existingLinks = new Set(this.getLinksFrom(notePath).map((l) => l.target));
|
|
163
264
|
const allNotes = this.db.prepare("SELECT * FROM notes WHERE path != ?").all(notePath);
|
|
164
265
|
const candidates = [];
|
|
165
266
|
for (const other of allNotes) {
|
|
166
|
-
if (existingLinks.has(other.
|
|
267
|
+
if (existingLinks.has(other.path))
|
|
167
268
|
continue;
|
|
168
269
|
let score = 0;
|
|
169
270
|
const reasons = [];
|
|
170
|
-
//
|
|
271
|
+
// Shared tags: 2pts each
|
|
171
272
|
const otherTags = JSON.parse(other.tags || "[]");
|
|
172
273
|
const shared = noteTags.filter((t) => otherTags.includes(t));
|
|
173
274
|
score += shared.length * 2;
|
|
174
275
|
reasons.push(...shared.map((t) => `tag:${t}`));
|
|
175
|
-
//
|
|
276
|
+
// Keyword overlap: 6+ chars → +2, shorter → +1
|
|
176
277
|
const noteWords = new Set((note.summary || "").toLowerCase().match(/[а-яієїґa-z]{4,}/g) ?? []);
|
|
177
278
|
const otherWords = (other.summary || "").toLowerCase().match(/[а-яієїґa-z]{4,}/g) ?? [];
|
|
178
|
-
const
|
|
179
|
-
|
|
180
|
-
|
|
279
|
+
for (const w of otherWords) {
|
|
280
|
+
if (noteWords.has(w)) {
|
|
281
|
+
score += w.length >= 6 ? 2 : 1;
|
|
282
|
+
reasons.push(`kw:${w}`);
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
// Luhmann proximity
|
|
286
|
+
const proximity = luhmannProximity(note.zk_id, other.zk_id);
|
|
287
|
+
if (proximity > 0) {
|
|
288
|
+
score += proximity;
|
|
289
|
+
reasons.push(proximity >= 3 ? "luhmann:sibling" : "luhmann:cousin");
|
|
290
|
+
}
|
|
291
|
+
// MOC boost: both notes referenced by same MOC
|
|
292
|
+
if (score >= 1 && this.shareMoc(notePath, other.path)) {
|
|
293
|
+
score += 2;
|
|
294
|
+
reasons.push("shared-moc");
|
|
295
|
+
}
|
|
181
296
|
if (score >= 2) {
|
|
182
297
|
candidates.push({ path: other.path, title: other.title, score, reasons, summary: other.summary || "", type: other.type || "" });
|
|
183
298
|
}
|
package/dist/db/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAepE,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAkYzD"}
|