llm-wiki-stack 1.0.3 → 1.0.4
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 +66 -27
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,58 +2,97 @@ English | [中文](README_ZH.md)
|
|
|
2
2
|
|
|
3
3
|
# llm-wiki-stack
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
[](https://www.npmjs.com/package/llm-wiki-stack)
|
|
6
|
+
[](https://www.npmjs.com/package/llm-wiki-stack)
|
|
7
|
+
[](LICENSE)
|
|
6
8
|
|
|
7
|
-
|
|
9
|
+
**Turn fragmented reading into a growing concept network.** An Obsidian knowledge base compiler that transforms raw source notes into structured, linked, queryable knowledge — maintained by LLMs, driven by your questions.
|
|
8
10
|
|
|
9
|
-
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## The Problem
|
|
14
|
+
|
|
15
|
+
You read. You bookmark. You clip. You highlight. Months later, you have hundreds of notes but can't find what you need. When you do find something, you can't remember how it connects to everything else. Your notes are a pile, not a network.
|
|
16
|
+
|
|
17
|
+
Most PKM tools solve the *writing* problem. They don't solve the *synthesis* problem — the work of connecting, reconciling, and evolving your understanding across dozens or hundreds of sources.
|
|
18
|
+
|
|
19
|
+
**llm-wiki-stack solves the synthesis problem.**
|
|
20
|
+
|
|
21
|
+
## How It Works
|
|
22
|
+
|
|
23
|
+
Think of it as a **compiler** for knowledge. Source notes go in, a structured concept network comes out.
|
|
10
24
|
|
|
11
25
|
```
|
|
12
|
-
01 raw/
|
|
13
|
-
(source
|
|
26
|
+
01 raw/ ──compile──> 02 wiki/ ──dialogue──> 03 outputs/
|
|
27
|
+
(source notes) (concept network) (your opinions)
|
|
14
28
|
```
|
|
15
29
|
|
|
16
|
-
|
|
30
|
+
Each layer has a clear role:
|
|
31
|
+
|
|
32
|
+
| Layer | Owned by | What happens |
|
|
33
|
+
|-------|----------|--------------|
|
|
34
|
+
| `01 raw/` | **You** | Save articles, clippings, thoughts. LLM never touches the body text. |
|
|
35
|
+
| `02 wiki/` | **LLM** | Extracts concepts, tracks how your understanding evolves, builds bidirectional links |
|
|
36
|
+
| `03 outputs/` | **You + LLM** | You ask questions. LLM reveals structural relationships. You write the conclusion. |
|
|
17
37
|
|
|
18
|
-
|
|
38
|
+
The result: every concept has a page. Every page links to its sources. Every source is traceable. Every change in understanding is recorded.
|
|
39
|
+
|
|
40
|
+
## Quick Start
|
|
19
41
|
|
|
20
42
|
```bash
|
|
21
43
|
npx llm-wiki-stack
|
|
22
44
|
```
|
|
23
45
|
|
|
24
|
-
|
|
46
|
+
This installs the five commands below into `~/.claude/skills/`. Then open Claude Code in your Obsidian vault and:
|
|
47
|
+
|
|
48
|
+
1. **Once**: `/kb-init` — bootstraps the three-layer structure
|
|
49
|
+
2. **Often**: `/wiki-compile` — turns your raw notes into linked wiki pages
|
|
50
|
+
3. **When curious**: `/wiki-topic` — ask a question, get a structured analysis from your own notes
|
|
51
|
+
4. **Monthly**: `/wiki-lint` — health report: orphan concepts, fragile dependencies, evolution timeline
|
|
52
|
+
|
|
53
|
+
Stop there. You'll know if this is for you.
|
|
25
54
|
|
|
26
55
|
## Commands
|
|
27
56
|
|
|
28
|
-
| Command |
|
|
29
|
-
|
|
30
|
-
| `/kb-init` | Bootstrap
|
|
31
|
-
| `/wiki-compile` |
|
|
32
|
-
| `/wiki-topic` | Question-driven
|
|
33
|
-
| `/wiki-lint` |
|
|
57
|
+
| Command | Role | Action |
|
|
58
|
+
|---------|------|--------|
|
|
59
|
+
| `/kb-init` | Architect | Bootstrap vault structure, generate `AGENTS.md`, compile existing raw notes |
|
|
60
|
+
| `/wiki-compile` | Compiler | Extract concepts from new raw notes, enforce independence tests, build cross-references |
|
|
61
|
+
| `/wiki-topic` | Analyst | Question-driven synthesis — LLM reveals causal chains, tensions, analogies, hypotheses |
|
|
62
|
+
| `/wiki-lint` | Inspector | Monthly health check: broken links, orphans, fragile dependencies, concept evolution |
|
|
34
63
|
|
|
35
|
-
##
|
|
64
|
+
## The Mechanisms That Make It Work
|
|
36
65
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
66
|
+
### Concept Independence Test
|
|
67
|
+
Every new concept must earn its page. Before creating a wiki entry, the LLM checks:
|
|
68
|
+
- **Definability** — can it be clearly stated in 1-2 sentences without circular jargon?
|
|
69
|
+
- **Single core** — is this one concept, or "A and B" glued together? Compound concepts are split.
|
|
70
|
+
- **Multi-source** — does it appear in at least two different source notes with independent perspectives?
|
|
41
71
|
|
|
42
|
-
|
|
72
|
+
This prevents the two diseases of knowledge bases: overgeneralized tags ("Technology", "Society") and one-off specifics that should have stayed in the raw layer.
|
|
43
73
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
- Single core: is it one concept, or "A and B" glued together?
|
|
47
|
-
- Multi-source verification: does it appear in at least two different source notes?
|
|
74
|
+
### Concept Evolution (Never Overwrite)
|
|
75
|
+
New information appends by default. Core definitions change only when new evidence **explicitly corrects** an old factual error — and when that happens, the old understanding is archived with a timestamp. Conflicts are recorded side-by-side in a "Different Perspectives" section. Your intellectual history is preserved, not erased.
|
|
48
76
|
|
|
49
|
-
|
|
77
|
+
### Cross-Reference Integrity
|
|
78
|
+
Every claim links to its raw source. Every wiki link is bidirectional. `linked_count` is verified on each compile. Broken links are surfaced in the health report. There is no hidden state — everything is plain Markdown with YAML frontmatter.
|
|
50
79
|
|
|
51
|
-
|
|
80
|
+
## Design Principles
|
|
81
|
+
|
|
82
|
+
- **Connect the dots** — fragmented information → organized network → personal opinions
|
|
83
|
+
- **Human judges, LLM compiles** — you handle creativity, judgment, and questions; the LLM handles compilation, linking, and health checks
|
|
84
|
+
- **Occam's Razor** — no complexity beyond folders + Markdown + Obsidian native features
|
|
85
|
+
- **Compound interest** — knowledge compiled once, appreciated continuously
|
|
52
86
|
|
|
53
87
|
## Requirements
|
|
54
88
|
|
|
55
89
|
- [Claude Code](https://docs.anthropic.com/en/docs/claude-code) or compatible AI agent
|
|
90
|
+
- [Obsidian](https://obsidian.md/) (recommended — graph view makes the concept network visible)
|
|
56
91
|
|
|
57
92
|
## License
|
|
58
93
|
|
|
59
|
-
MIT
|
|
94
|
+
MIT. Free forever. Go build your knowledge.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
*Inspired by [Karpathy's llm-wiki](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f) concept.*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "llm-wiki-stack",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "Obsidian knowledge base compiler — three-layer architecture (raw → wiki → outputs) with concept evolution, cross-reference integrity, and health checks. Command-driven, AI-maintained, plain Markdown.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|