stellavault 0.4.4 → 0.5.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 +52 -16
- package/SECURITY.md +50 -0
- package/dist/stellavault.js +8968 -0
- package/package.json +70 -33
- package/.env.example +0 -12
- package/CHANGELOG.md +0 -106
- package/CLAUDE.md +0 -42
- package/CONTRIBUTING.md +0 -65
- package/index.html +0 -509
- package/packages/cli/bin/ekh.js +0 -2
- package/packages/cli/bin/stellavault.js +0 -2
- package/packages/cli/dist/commands/adr-cmd.d.ts +0 -7
- package/packages/cli/dist/commands/adr-cmd.js +0 -45
- package/packages/cli/dist/commands/ask-cmd.d.ts +0 -5
- package/packages/cli/dist/commands/ask-cmd.js +0 -36
- package/packages/cli/dist/commands/autopilot-cmd.d.ts +0 -4
- package/packages/cli/dist/commands/autopilot-cmd.js +0 -76
- package/packages/cli/dist/commands/brief-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/brief-cmd.js +0 -82
- package/packages/cli/dist/commands/capture-cmd.d.ts +0 -7
- package/packages/cli/dist/commands/capture-cmd.js +0 -31
- package/packages/cli/dist/commands/card-cmd.d.ts +0 -4
- package/packages/cli/dist/commands/card-cmd.js +0 -26
- package/packages/cli/dist/commands/clip-cmd.d.ts +0 -4
- package/packages/cli/dist/commands/clip-cmd.js +0 -151
- package/packages/cli/dist/commands/cloud-cmd.d.ts +0 -4
- package/packages/cli/dist/commands/cloud-cmd.js +0 -64
- package/packages/cli/dist/commands/compile-cmd.d.ts +0 -6
- package/packages/cli/dist/commands/compile-cmd.js +0 -30
- package/packages/cli/dist/commands/contradictions-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/contradictions-cmd.js +0 -34
- package/packages/cli/dist/commands/decay-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/decay-cmd.js +0 -48
- package/packages/cli/dist/commands/digest-cmd.d.ts +0 -5
- package/packages/cli/dist/commands/digest-cmd.js +0 -136
- package/packages/cli/dist/commands/draft-cmd.d.ts +0 -6
- package/packages/cli/dist/commands/draft-cmd.js +0 -110
- package/packages/cli/dist/commands/duplicates-cmd.d.ts +0 -4
- package/packages/cli/dist/commands/duplicates-cmd.js +0 -30
- package/packages/cli/dist/commands/federate-cmd.d.ts +0 -5
- package/packages/cli/dist/commands/federate-cmd.js +0 -247
- package/packages/cli/dist/commands/fleeting-cmd.d.ts +0 -4
- package/packages/cli/dist/commands/fleeting-cmd.js +0 -45
- package/packages/cli/dist/commands/flush-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/flush-cmd.js +0 -58
- package/packages/cli/dist/commands/gaps-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/gaps-cmd.js +0 -33
- package/packages/cli/dist/commands/graph-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/graph-cmd.js +0 -89
- package/packages/cli/dist/commands/index-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/index-cmd.js +0 -57
- package/packages/cli/dist/commands/ingest-cmd.d.ts +0 -9
- package/packages/cli/dist/commands/ingest-cmd.js +0 -195
- package/packages/cli/dist/commands/init-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/init-cmd.js +0 -161
- package/packages/cli/dist/commands/learn-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/learn-cmd.js +0 -48
- package/packages/cli/dist/commands/lint-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/lint-cmd.js +0 -61
- package/packages/cli/dist/commands/pack-cmd.d.ts +0 -15
- package/packages/cli/dist/commands/pack-cmd.js +0 -93
- package/packages/cli/dist/commands/review-cmd.d.ts +0 -4
- package/packages/cli/dist/commands/review-cmd.js +0 -107
- package/packages/cli/dist/commands/search-cmd.d.ts +0 -4
- package/packages/cli/dist/commands/search-cmd.js +0 -38
- package/packages/cli/dist/commands/serve-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/serve-cmd.js +0 -14
- package/packages/cli/dist/commands/session-cmd.d.ts +0 -7
- package/packages/cli/dist/commands/session-cmd.js +0 -95
- package/packages/cli/dist/commands/status-cmd.d.ts +0 -2
- package/packages/cli/dist/commands/status-cmd.js +0 -33
- package/packages/cli/dist/commands/sync-cmd.d.ts +0 -5
- package/packages/cli/dist/commands/sync-cmd.js +0 -62
- package/packages/cli/dist/commands/vault-cmd.d.ts +0 -10
- package/packages/cli/dist/commands/vault-cmd.js +0 -54
- package/packages/cli/dist/index.d.ts +0 -2
- package/packages/cli/dist/index.js +0 -233
- package/packages/cli/package.json +0 -24
- package/packages/core/dist/api/dashboard.d.ts +0 -3
- package/packages/core/dist/api/dashboard.js +0 -135
- package/packages/core/dist/api/graph-data.d.ts +0 -11
- package/packages/core/dist/api/graph-data.js +0 -255
- package/packages/core/dist/api/pwa.d.ts +0 -3
- package/packages/core/dist/api/pwa.js +0 -77
- package/packages/core/dist/api/server.d.ts +0 -16
- package/packages/core/dist/api/server.js +0 -1122
- package/packages/core/dist/capture/voice.d.ts +0 -24
- package/packages/core/dist/capture/voice.js +0 -135
- package/packages/core/dist/cloud/index.d.ts +0 -3
- package/packages/core/dist/cloud/index.js +0 -2
- package/packages/core/dist/cloud/sync.d.ts +0 -29
- package/packages/core/dist/cloud/sync.js +0 -137
- package/packages/core/dist/config.d.ts +0 -35
- package/packages/core/dist/config.js +0 -63
- package/packages/core/dist/federation/credits.d.ts +0 -26
- package/packages/core/dist/federation/credits.js +0 -56
- package/packages/core/dist/federation/identity.d.ts +0 -14
- package/packages/core/dist/federation/identity.js +0 -74
- package/packages/core/dist/federation/index.d.ts +0 -7
- package/packages/core/dist/federation/index.js +0 -5
- package/packages/core/dist/federation/node.d.ts +0 -31
- package/packages/core/dist/federation/node.js +0 -216
- package/packages/core/dist/federation/privacy.d.ts +0 -8
- package/packages/core/dist/federation/privacy.js +0 -40
- package/packages/core/dist/federation/reputation.d.ts +0 -37
- package/packages/core/dist/federation/reputation.js +0 -139
- package/packages/core/dist/federation/search.d.ts +0 -19
- package/packages/core/dist/federation/search.js +0 -101
- package/packages/core/dist/federation/sharing.d.ts +0 -72
- package/packages/core/dist/federation/sharing.js +0 -246
- package/packages/core/dist/federation/trust.d.ts +0 -15
- package/packages/core/dist/federation/trust.js +0 -60
- package/packages/core/dist/federation/types.d.ts +0 -40
- package/packages/core/dist/federation/types.js +0 -3
- package/packages/core/dist/i18n/index.d.ts +0 -6
- package/packages/core/dist/i18n/index.js +0 -81
- package/packages/core/dist/i18n/note-strings.d.ts +0 -5
- package/packages/core/dist/i18n/note-strings.js +0 -94
- package/packages/core/dist/index.d.ts +0 -123
- package/packages/core/dist/index.js +0 -74
- package/packages/core/dist/indexer/chunker.d.ts +0 -14
- package/packages/core/dist/indexer/chunker.js +0 -148
- package/packages/core/dist/indexer/embedder.d.ts +0 -8
- package/packages/core/dist/indexer/embedder.js +0 -3
- package/packages/core/dist/indexer/index.d.ts +0 -28
- package/packages/core/dist/indexer/index.js +0 -74
- package/packages/core/dist/indexer/local-embedder.d.ts +0 -3
- package/packages/core/dist/indexer/local-embedder.js +0 -29
- package/packages/core/dist/indexer/scanner.d.ts +0 -11
- package/packages/core/dist/indexer/scanner.js +0 -148
- package/packages/core/dist/indexer/watcher.d.ts +0 -19
- package/packages/core/dist/indexer/watcher.js +0 -49
- package/packages/core/dist/intelligence/ask-engine.d.ts +0 -24
- package/packages/core/dist/intelligence/ask-engine.js +0 -142
- package/packages/core/dist/intelligence/auto-linker.d.ts +0 -19
- package/packages/core/dist/intelligence/auto-linker.js +0 -126
- package/packages/core/dist/intelligence/code-linker.d.ts +0 -20
- package/packages/core/dist/intelligence/code-linker.js +0 -88
- package/packages/core/dist/intelligence/contradiction-detector.d.ts +0 -20
- package/packages/core/dist/intelligence/contradiction-detector.js +0 -115
- package/packages/core/dist/intelligence/decay-engine.d.ts +0 -27
- package/packages/core/dist/intelligence/decay-engine.js +0 -190
- package/packages/core/dist/intelligence/draft-generator.d.ts +0 -25
- package/packages/core/dist/intelligence/draft-generator.js +0 -277
- package/packages/core/dist/intelligence/duplicate-detector.d.ts +0 -20
- package/packages/core/dist/intelligence/duplicate-detector.js +0 -55
- package/packages/core/dist/intelligence/file-extractors.d.ts +0 -13
- package/packages/core/dist/intelligence/file-extractors.js +0 -155
- package/packages/core/dist/intelligence/fsrs.d.ts +0 -43
- package/packages/core/dist/intelligence/fsrs.js +0 -70
- package/packages/core/dist/intelligence/gap-detector.d.ts +0 -25
- package/packages/core/dist/intelligence/gap-detector.js +0 -78
- package/packages/core/dist/intelligence/ingest-pipeline.d.ts +0 -32
- package/packages/core/dist/intelligence/ingest-pipeline.js +0 -245
- package/packages/core/dist/intelligence/knowledge-lint.d.ts +0 -27
- package/packages/core/dist/intelligence/knowledge-lint.js +0 -132
- package/packages/core/dist/intelligence/learning-path.d.ts +0 -31
- package/packages/core/dist/intelligence/learning-path.js +0 -53
- package/packages/core/dist/intelligence/notifications.d.ts +0 -31
- package/packages/core/dist/intelligence/notifications.js +0 -65
- package/packages/core/dist/intelligence/predictive-gaps.d.ts +0 -14
- package/packages/core/dist/intelligence/predictive-gaps.js +0 -74
- package/packages/core/dist/intelligence/semantic-versioning.d.ts +0 -37
- package/packages/core/dist/intelligence/semantic-versioning.js +0 -68
- package/packages/core/dist/intelligence/types.d.ts +0 -28
- package/packages/core/dist/intelligence/types.js +0 -3
- package/packages/core/dist/intelligence/wiki-compiler.d.ts +0 -30
- package/packages/core/dist/intelligence/wiki-compiler.js +0 -222
- package/packages/core/dist/intelligence/youtube-extractor.d.ts +0 -29
- package/packages/core/dist/intelligence/youtube-extractor.js +0 -321
- package/packages/core/dist/intelligence/zettelkasten.d.ts +0 -59
- package/packages/core/dist/intelligence/zettelkasten.js +0 -234
- package/packages/core/dist/mcp/custom-tools.d.ts +0 -29
- package/packages/core/dist/mcp/custom-tools.js +0 -70
- package/packages/core/dist/mcp/index.d.ts +0 -2
- package/packages/core/dist/mcp/index.js +0 -2
- package/packages/core/dist/mcp/server.d.ts +0 -51
- package/packages/core/dist/mcp/server.js +0 -174
- package/packages/core/dist/mcp/tools/agentic-graph.d.ts +0 -93
- package/packages/core/dist/mcp/tools/agentic-graph.js +0 -116
- package/packages/core/dist/mcp/tools/ask.d.ts +0 -29
- package/packages/core/dist/mcp/tools/ask.js +0 -43
- package/packages/core/dist/mcp/tools/brief.d.ts +0 -31
- package/packages/core/dist/mcp/tools/brief.js +0 -39
- package/packages/core/dist/mcp/tools/decay.d.ts +0 -33
- package/packages/core/dist/mcp/tools/decay.js +0 -32
- package/packages/core/dist/mcp/tools/decision-journal.d.ts +0 -78
- package/packages/core/dist/mcp/tools/decision-journal.js +0 -79
- package/packages/core/dist/mcp/tools/detect-gaps.d.ts +0 -24
- package/packages/core/dist/mcp/tools/detect-gaps.js +0 -47
- package/packages/core/dist/mcp/tools/export.d.ts +0 -29
- package/packages/core/dist/mcp/tools/export.js +0 -60
- package/packages/core/dist/mcp/tools/federated-search.d.ts +0 -29
- package/packages/core/dist/mcp/tools/federated-search.js +0 -36
- package/packages/core/dist/mcp/tools/generate-claude-md.d.ts +0 -35
- package/packages/core/dist/mcp/tools/generate-claude-md.js +0 -107
- package/packages/core/dist/mcp/tools/generate-draft.d.ts +0 -34
- package/packages/core/dist/mcp/tools/generate-draft.js +0 -120
- package/packages/core/dist/mcp/tools/get-document.d.ts +0 -35
- package/packages/core/dist/mcp/tools/get-document.js +0 -25
- package/packages/core/dist/mcp/tools/get-evolution.d.ts +0 -28
- package/packages/core/dist/mcp/tools/get-evolution.js +0 -70
- package/packages/core/dist/mcp/tools/get-related.d.ts +0 -32
- package/packages/core/dist/mcp/tools/get-related.js +0 -33
- package/packages/core/dist/mcp/tools/learning-path.d.ts +0 -23
- package/packages/core/dist/mcp/tools/learning-path.js +0 -45
- package/packages/core/dist/mcp/tools/link-code.d.ts +0 -34
- package/packages/core/dist/mcp/tools/link-code.js +0 -44
- package/packages/core/dist/mcp/tools/list-topics.d.ts +0 -15
- package/packages/core/dist/mcp/tools/list-topics.js +0 -18
- package/packages/core/dist/mcp/tools/search.d.ts +0 -39
- package/packages/core/dist/mcp/tools/search.js +0 -29
- package/packages/core/dist/mcp/tools/snapshot.d.ts +0 -47
- package/packages/core/dist/mcp/tools/snapshot.js +0 -84
- package/packages/core/dist/multi-vault/index.d.ts +0 -26
- package/packages/core/dist/multi-vault/index.js +0 -80
- package/packages/core/dist/pack/creator.d.ts +0 -21
- package/packages/core/dist/pack/creator.js +0 -105
- package/packages/core/dist/pack/exporter.d.ts +0 -4
- package/packages/core/dist/pack/exporter.js +0 -18
- package/packages/core/dist/pack/importer.d.ts +0 -10
- package/packages/core/dist/pack/importer.js +0 -55
- package/packages/core/dist/pack/index.d.ts +0 -6
- package/packages/core/dist/pack/index.js +0 -5
- package/packages/core/dist/pack/marketplace.d.ts +0 -14
- package/packages/core/dist/pack/marketplace.js +0 -90
- package/packages/core/dist/pack/pii-masker.d.ts +0 -7
- package/packages/core/dist/pack/pii-masker.js +0 -29
- package/packages/core/dist/pack/types.d.ts +0 -36
- package/packages/core/dist/pack/types.js +0 -3
- package/packages/core/dist/plugins/index.d.ts +0 -35
- package/packages/core/dist/plugins/index.js +0 -57
- package/packages/core/dist/plugins/webhooks.d.ts +0 -30
- package/packages/core/dist/plugins/webhooks.js +0 -79
- package/packages/core/dist/search/adaptive.d.ts +0 -16
- package/packages/core/dist/search/adaptive.js +0 -67
- package/packages/core/dist/search/bm25.d.ts +0 -4
- package/packages/core/dist/search/bm25.js +0 -10
- package/packages/core/dist/search/index.d.ts +0 -15
- package/packages/core/dist/search/index.js +0 -64
- package/packages/core/dist/search/rrf.d.ts +0 -7
- package/packages/core/dist/search/rrf.js +0 -21
- package/packages/core/dist/search/semantic.d.ts +0 -5
- package/packages/core/dist/search/semantic.js +0 -6
- package/packages/core/dist/store/index.d.ts +0 -3
- package/packages/core/dist/store/index.js +0 -2
- package/packages/core/dist/store/sqlite-vec.d.ts +0 -6
- package/packages/core/dist/store/sqlite-vec.js +0 -251
- package/packages/core/dist/store/types.d.ts +0 -20
- package/packages/core/dist/store/types.js +0 -3
- package/packages/core/dist/team/index.d.ts +0 -25
- package/packages/core/dist/team/index.js +0 -97
- package/packages/core/dist/types/chunk.d.ts +0 -23
- package/packages/core/dist/types/chunk.js +0 -3
- package/packages/core/dist/types/document.d.ts +0 -23
- package/packages/core/dist/types/document.js +0 -3
- package/packages/core/dist/types/graph.d.ts +0 -39
- package/packages/core/dist/types/graph.js +0 -3
- package/packages/core/dist/types/index.d.ts +0 -5
- package/packages/core/dist/types/index.js +0 -2
- package/packages/core/dist/types/search.d.ts +0 -39
- package/packages/core/dist/types/search.js +0 -3
- package/packages/core/dist/utils/retry.d.ts +0 -25
- package/packages/core/dist/utils/retry.js +0 -59
- package/packages/core/package.json +0 -67
package/package.json
CHANGED
|
@@ -1,33 +1,70 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "stellavault",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "
|
|
5
|
-
"repository": {
|
|
6
|
-
"type": "git",
|
|
7
|
-
"url": "https://github.com/Evanciel/stellavault"
|
|
8
|
-
},
|
|
9
|
-
"homepage": "https://github.com/Evanciel/stellavault",
|
|
10
|
-
"bugs": "https://github.com/Evanciel/stellavault/issues",
|
|
11
|
-
"keywords": ["obsidian", "knowledge-graph", "3d-visualization", "vector-search", "mcp", "fsrs", "ai"],
|
|
12
|
-
"license": "MIT",
|
|
13
|
-
"author": "Evan",
|
|
14
|
-
"type": "module",
|
|
15
|
-
"
|
|
16
|
-
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
"
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "stellavault",
|
|
3
|
+
"version": "0.5.0",
|
|
4
|
+
"description": "Drop anything. It compiles itself into knowledge. Claude remembers everything you know. Local-first MCP server, vault files never modified.",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "https://github.com/Evanciel/stellavault"
|
|
8
|
+
},
|
|
9
|
+
"homepage": "https://github.com/Evanciel/stellavault",
|
|
10
|
+
"bugs": "https://github.com/Evanciel/stellavault/issues",
|
|
11
|
+
"keywords": ["obsidian", "knowledge-graph", "3d-visualization", "vector-search", "mcp", "fsrs", "ai", "zettelkasten", "claude"],
|
|
12
|
+
"license": "MIT",
|
|
13
|
+
"author": "Evan",
|
|
14
|
+
"type": "module",
|
|
15
|
+
"main": "./dist/stellavault.js",
|
|
16
|
+
"bin": {
|
|
17
|
+
"stellavault": "./dist/stellavault.js",
|
|
18
|
+
"sv": "./dist/stellavault.js"
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"dist/stellavault.js",
|
|
22
|
+
"README.md",
|
|
23
|
+
"LICENSE",
|
|
24
|
+
"SECURITY.md"
|
|
25
|
+
],
|
|
26
|
+
"workspaces": [
|
|
27
|
+
"packages/sync",
|
|
28
|
+
"packages/core",
|
|
29
|
+
"packages/cli",
|
|
30
|
+
"packages/graph"
|
|
31
|
+
],
|
|
32
|
+
"scripts": {
|
|
33
|
+
"build": "npm run build --workspaces --if-present && npm run bundle",
|
|
34
|
+
"bundle": "node scripts/bundle-cli.mjs",
|
|
35
|
+
"test": "npm run test --workspaces --if-present",
|
|
36
|
+
"sync": "npm run sync --workspace=@stellavault/sync",
|
|
37
|
+
"dev:core": "npm run dev --workspace=@stellavault/core"
|
|
38
|
+
},
|
|
39
|
+
"engines": {
|
|
40
|
+
"node": ">=20.0.0"
|
|
41
|
+
},
|
|
42
|
+
"dependencies": {
|
|
43
|
+
"@anthropic-ai/sdk": "^0.82.0",
|
|
44
|
+
"@modelcontextprotocol/sdk": "^1.28.0",
|
|
45
|
+
"@xenova/transformers": "^2.17.2",
|
|
46
|
+
"better-sqlite3": "^12.8.0",
|
|
47
|
+
"chalk": "^5.6.2",
|
|
48
|
+
"chokidar": "^5.0.0",
|
|
49
|
+
"commander": "^14.0.3",
|
|
50
|
+
"cors": "^2.8.6",
|
|
51
|
+
"express": "^5.2.1",
|
|
52
|
+
"gray-matter": "^4.0.3",
|
|
53
|
+
"mammoth": "^1.12.0",
|
|
54
|
+
"multer": "^2.1.1",
|
|
55
|
+
"officeparser": "^6.0.7",
|
|
56
|
+
"open": "^11.0.0",
|
|
57
|
+
"ora": "^9.3.0",
|
|
58
|
+
"sqlite-vec": "^0.1.7",
|
|
59
|
+
"unpdf": "^1.4.0",
|
|
60
|
+
"xlsx": "^0.18.5"
|
|
61
|
+
},
|
|
62
|
+
"optionalDependencies": {
|
|
63
|
+
"b4a": "^1.8.0",
|
|
64
|
+
"hyperswarm": "^4.17.0"
|
|
65
|
+
},
|
|
66
|
+
"devDependencies": {
|
|
67
|
+
"esbuild": "^0.24.0",
|
|
68
|
+
"playwright": "^1.58.2"
|
|
69
|
+
}
|
|
70
|
+
}
|
package/.env.example
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
# Stellavault - Environment Variables
|
|
2
|
-
# Copy this file to .env and fill in your values
|
|
3
|
-
|
|
4
|
-
# Required: Path to your Obsidian vault
|
|
5
|
-
OBSIDIAN_PATH=/path/to/your/obsidian/vault
|
|
6
|
-
|
|
7
|
-
# Optional: Custom database path (default: ~/.stellavault/index.db)
|
|
8
|
-
# STELLAVAULT_DB_PATH=/custom/path/to/index.db
|
|
9
|
-
|
|
10
|
-
# Optional: Notion integration (for sync feature)
|
|
11
|
-
# NOTION_TOKEN=your_notion_integration_token
|
|
12
|
-
# NOTION_DATABASE_ID=your_database_id
|
package/CHANGELOG.md
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
## [0.4.2] - 2026-04-07
|
|
4
|
-
|
|
5
|
-
### Features — Karpathy Architecture Complete
|
|
6
|
-
- **Session Hooks** — `stellavault session-save`: auto-capture session summaries to daily logs
|
|
7
|
-
- Pipe via stdin or --summary flag
|
|
8
|
-
- Creates `raw/_daily-logs/daily-log-YYYY-MM-DD.md`
|
|
9
|
-
- Auto-compiles wiki after save
|
|
10
|
-
- Works with Claude Code hooks (PreCompact, Stop)
|
|
11
|
-
- **Flush Process** — `stellavault flush`: daily logs → wiki compilation
|
|
12
|
-
- Extracts concepts and connections from all daily logs
|
|
13
|
-
- Rebuilds wiki index with backlinks
|
|
14
|
-
- Karpathy's "source code → executable" compilation
|
|
15
|
-
- **Wikilink Auto-Connect** — Auto-insert [[wikilinks]] matching existing note titles on ingest
|
|
16
|
-
- **Hooks Setup Guide** — `docs/hooks-setup.md` with Claude Code settings.json config
|
|
17
|
-
|
|
18
|
-
### The Compounding Loop
|
|
19
|
-
```
|
|
20
|
-
Session → session-save → daily-log → flush → wiki
|
|
21
|
-
↑ ↓
|
|
22
|
-
└── Claude reads wiki via MCP for better answers ←┘
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
## [0.4.1] - 2026-04-07
|
|
26
|
-
|
|
27
|
-
### Features
|
|
28
|
-
- **Binary File Ingest** — PDF (unpdf), DOCX (mammoth), PPTX (officeparser), XLSX (SheetJS) text extraction
|
|
29
|
-
- **Auto Pipeline** — `ingest` now auto-runs `compile` → wiki generated automatically
|
|
30
|
-
- **Web File Upload** — Drag & drop files in browser (POST /api/ingest/file, 50MB limit)
|
|
31
|
-
- **Mobile/PWA** — Responsive IngestPanel, service worker registration, installable as app
|
|
32
|
-
- **Express: stellavault draft** — Generate blog/report/outline from vault knowledge
|
|
33
|
-
- **MCP generate-draft** — 20th MCP tool: Claude writes drafts using vault context (free in Claude Code)
|
|
34
|
-
- **CLI --ai flag** — `stellavault draft --ai` uses Claude API for full AI-generated drafts
|
|
35
|
-
- **Configurable folders** — Override raw/_wiki/_literature/ in .stellavault.json
|
|
36
|
-
- **Multilingual embeddings** — paraphrase-multilingual-MiniLM-L12-v2 (50+ languages)
|
|
37
|
-
|
|
38
|
-
### Changes
|
|
39
|
-
- Binary files default to fleeting stage (Zettelkasten principle: all inputs start as fleeting)
|
|
40
|
-
- Repositioned as "Self-compiling knowledge MCP server"
|
|
41
|
-
- .npmignore excludes PDF (was 16MB in npm package)
|
|
42
|
-
- MCP tools: 19 → 20
|
|
43
|
-
|
|
44
|
-
### Fixes
|
|
45
|
-
- CLI YouTube ingest now properly calls extractYouTubeContent
|
|
46
|
-
- officeparser type cast fix (OfficeParserAST → string)
|
|
47
|
-
- unpdf text array handling (pages returned as array, not string)
|
|
48
|
-
|
|
49
|
-
## [0.4.0] - 2026-04-06
|
|
50
|
-
|
|
51
|
-
### Features
|
|
52
|
-
- **i18n Global Service** — Full EN/KO/JA/ZH language switcher for web UI; saved notes follow user's language setting
|
|
53
|
-
- **Web UI Ingest Panel** — Add knowledge from browser (+) button, no terminal needed
|
|
54
|
-
- **YouTube Deep Extraction** — Full description, transcript with clickable timestamps, auto-summary, metadata (channel, views, duration)
|
|
55
|
-
- **YouTube Transcript via yt-dlp** — Fallback to yt-dlp when YouTube bot protection blocks direct caption fetch
|
|
56
|
-
- **Edit/Delete Notes from Web** — Edit and delete notes directly from web UI, syncs to Obsidian vault
|
|
57
|
-
- **Ask Q&A Web UI** — Intelligence > Ask tab for querying your knowledge base from the browser
|
|
58
|
-
- **Reindex from Web** — One-click reindex button, no terminal needed
|
|
59
|
-
- **Recent Saves Navigation** — Click recent saves to navigate to node in 3D graph
|
|
60
|
-
- **Auto-index after Ingest** — New notes are automatically indexed and graph refreshes
|
|
61
|
-
- **Onboarding Guide** — 4-step walkthrough for new users
|
|
62
|
-
- **LLM Knowledge Base** — `stellavault ask` (Q&A + auto-filing), `compile` (raw→wiki), `lint` (health check), `digest --visual` (Mermaid charts)
|
|
63
|
-
- **Zettelkasten System** — Luhmann-style index codes, frontmatter scan, inbox zero, atomicity verification, orphan/broken link detection
|
|
64
|
-
- **Unified Ingest Pipeline** — URL/file/text auto-classification, `stellavault ingest`, `promote`, `autopilot` flywheel
|
|
65
|
-
- **Fleeting Capture** — `stellavault fleeting` for quick thoughts
|
|
66
|
-
|
|
67
|
-
### Fixes
|
|
68
|
-
- YouTube extractor v2 — HTML entities, tags cleanup, summary quality, duplicate frontmatter removal
|
|
69
|
-
- YouTube full description extraction (shortDescription JSON parsing)
|
|
70
|
-
- CLI YouTube ingest now properly calls extractYouTubeContent instead of basic HTML scrape
|
|
71
|
-
- Strict node matching — exact title/path only, no partial match
|
|
72
|
-
- React hooks order in Layout, ConstellationView, MultiverseView
|
|
73
|
-
- Natural Korean translations (감쇠→잊고 있는 것, 갭→빠진 지식)
|
|
74
|
-
- Reindex API — pass vaultPath, use all-MiniLM-L6-v2, error details
|
|
75
|
-
|
|
76
|
-
### Security
|
|
77
|
-
- Path traversal protection (archiveFile, ingest)
|
|
78
|
-
- YAML injection prevention (sanitizeYaml)
|
|
79
|
-
- SSRF protection (private IP blocking)
|
|
80
|
-
- Empty catch blocks → proper error logging
|
|
81
|
-
|
|
82
|
-
### Infrastructure
|
|
83
|
-
- MCP: 19 tools | CLI: 36+ commands | Tests: 127 ALL PASS
|
|
84
|
-
- Hardcoded Korean removed — core modules default to English
|
|
85
|
-
- Subpath exports for youtube-extractor module
|
|
86
|
-
|
|
87
|
-
## [0.3.0] - 2026-04-04
|
|
88
|
-
|
|
89
|
-
### Features
|
|
90
|
-
- 3D Knowledge Graph with Three.js / React Three Fiber
|
|
91
|
-
- Hybrid search (vector + keyword + RRF)
|
|
92
|
-
- Memory decay tracking (FSRS algorithm)
|
|
93
|
-
- MCP server with 16 tools
|
|
94
|
-
- Notion ↔ Obsidian sync (packages/sync)
|
|
95
|
-
- Web UI with constellation/multiverse views
|
|
96
|
-
|
|
97
|
-
## [0.2.0] - 2026-04-03
|
|
98
|
-
|
|
99
|
-
- Initial Obsidian vault indexer
|
|
100
|
-
- Vector store with all-MiniLM-L6-v2
|
|
101
|
-
- Basic CLI commands
|
|
102
|
-
|
|
103
|
-
## [0.1.0] - 2026-04-02
|
|
104
|
-
|
|
105
|
-
- Project inception
|
|
106
|
-
- Notion-Obsidian sync tool
|
package/CLAUDE.md
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
# Stellavault — Project Rules
|
|
2
|
-
|
|
3
|
-
## Project Info
|
|
4
|
-
- **Name**: Stellavault — Self-compiling knowledge MCP server
|
|
5
|
-
- **Version**: 0.4.2
|
|
6
|
-
- **GitHub**: https://github.com/Evanciel/stellavault
|
|
7
|
-
- **npm**: stellavault (171KB)
|
|
8
|
-
- **Stack**: Node.js 20+, TypeScript, ESM, Monorepo (npm workspaces)
|
|
9
|
-
- **Packages**: core (21 MCP tools), cli (39+ commands), graph (3D UI), sync
|
|
10
|
-
- **Architecture**: Karpathy self-compiling KB (ingest→compile→wiki→session→flush loop)
|
|
11
|
-
|
|
12
|
-
## Autopilot 추가 규칙
|
|
13
|
-
|
|
14
|
-
### Threat Model Gate (Phase 6 필수)
|
|
15
|
-
|
|
16
|
-
모든 기능 구현 후 Quality Gate에서 반드시 아래 질문을 검증할 것:
|
|
17
|
-
|
|
18
|
-
1. **악의적 입력**: 이 기능에 가짜/오염된 데이터를 넣으면 어떻게 되는가?
|
|
19
|
-
2. **서비스 거부**: 이 기능을 대량으로 호출하면 시스템이 멈추는가?
|
|
20
|
-
3. **프라이버시 유출**: 이 기능이 의도치 않게 개인 정보를 노출하는가?
|
|
21
|
-
4. **신뢰 악용**: 이 기능의 신뢰 메커니즘을 우회할 수 있는가?
|
|
22
|
-
5. **데이터 무결성**: 이 기능이 기존 데이터를 손상시킬 수 있는가?
|
|
23
|
-
|
|
24
|
-
위협 발견 시:
|
|
25
|
-
- Critical → 구현 중단, 방어 로직 추가 후 재검증
|
|
26
|
-
- Medium → Phase 7(Iterate)에서 방어 추가
|
|
27
|
-
- Low → 이슈로 기록, 다음 사이클에서 처리
|
|
28
|
-
|
|
29
|
-
### Federation 보안 원칙
|
|
30
|
-
|
|
31
|
-
- 원문 텍스트는 절대 네트워크 전송 금지
|
|
32
|
-
- 검색 결과: 제목 + 유사도 + 50자 스니펫만
|
|
33
|
-
- blocked 노드(reputation=0)의 결과는 필터링
|
|
34
|
-
- 새 노드는 neutral(40점)에서 시작, 자동 평판 적립
|
|
35
|
-
|
|
36
|
-
### 코드 컨벤션
|
|
37
|
-
|
|
38
|
-
- Design reference: `// Design Ref: §{section} — {rationale}`
|
|
39
|
-
- Success criteria: `// Plan SC: {criteria being addressed}`
|
|
40
|
-
- Federation 메시지: JSON + newline delimiter
|
|
41
|
-
- 에러 처리: StellavaultError with code + suggestion
|
|
42
|
-
- i18n: 사용자 노출 문자열은 t() 함수 사용 권장
|
package/CONTRIBUTING.md
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
# Contributing to Evan Knowledge Hub
|
|
2
|
-
|
|
3
|
-
Thank you for your interest in contributing!
|
|
4
|
-
|
|
5
|
-
## Development Setup
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
# Clone the repository
|
|
9
|
-
git clone https://github.com/your-username/evan-knowledge-hub.git
|
|
10
|
-
cd evan-knowledge-hub
|
|
11
|
-
|
|
12
|
-
# Install dependencies
|
|
13
|
-
npm install
|
|
14
|
-
|
|
15
|
-
# Run tests
|
|
16
|
-
npm test
|
|
17
|
-
|
|
18
|
-
# Start the graph visualization (requires indexed vault)
|
|
19
|
-
npm run dev:core
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## Project Structure
|
|
23
|
-
|
|
24
|
-
```
|
|
25
|
-
packages/
|
|
26
|
-
core/ Core engine (indexer, search, MCP server, API)
|
|
27
|
-
cli/ CLI commands (ekh index/search/serve/graph/card/pack)
|
|
28
|
-
graph/ 3D Knowledge Graph (React Three Fiber)
|
|
29
|
-
sync/ Notion-Obsidian sync
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
## Code Conventions
|
|
33
|
-
|
|
34
|
-
- **Language**: TypeScript strict mode, ESM modules
|
|
35
|
-
- **File naming**: kebab-case.ts
|
|
36
|
-
- **Components**: PascalCase.tsx, functional + hooks
|
|
37
|
-
- **Testing**: Vitest
|
|
38
|
-
- **Import order**: node: builtins > external > internal
|
|
39
|
-
|
|
40
|
-
## Pull Request Process
|
|
41
|
-
|
|
42
|
-
1. Fork the repo and create your branch from `main`
|
|
43
|
-
2. Write tests for new functionality
|
|
44
|
-
3. Ensure all 92+ tests pass (`npm test`)
|
|
45
|
-
4. Keep PRs focused on a single change
|
|
46
|
-
5. Add Design Ref comments for architectural decisions:
|
|
47
|
-
```typescript
|
|
48
|
-
// Design Ref: SS{section} - {rationale}
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## Architecture
|
|
52
|
-
|
|
53
|
-
The project follows **Option C (Pragmatic Split)**:
|
|
54
|
-
- `core/` = engine + MCP (Clean Architecture layers)
|
|
55
|
-
- `cli/` = user-facing commands
|
|
56
|
-
- `graph/` = React Three Fiber visualization
|
|
57
|
-
|
|
58
|
-
Key patterns:
|
|
59
|
-
- Dependency Injection via `createKnowledgeHub()` factory
|
|
60
|
-
- Zustand for graph state management
|
|
61
|
-
- BM25 + Cosine + RRF hybrid search
|
|
62
|
-
|
|
63
|
-
## License
|
|
64
|
-
|
|
65
|
-
MIT
|