By obra
Index Obsidian vaults into a local knowledge graph to enable semantic searches, path finding between concepts, community detection, graph analysis, and claim proving or disproving using integrated tools like kg_search and kg_paths—all running via a TypeScript Node.js MCP server.
npx claudepluginhub obra/knowledge-graphQuery and traverse an Obsidian vault as a knowledge graph. Semantic search, path finding, community detection, and graph analysis — all local, no cloud APIs.
Parses an Obsidian vault into an untyped graph (files = nodes, wiki links = edges), indexes it into SQLite with vector embeddings and full-text search, and exposes 10 operations via CLI and MCP server.
Search: Semantic search via local embeddings, full-text keyword search via FTS5.
Traverse: Find paths between nodes, shared connections, N-hop neighborhoods, local subgraphs.
Analyze: Community detection (Louvain), bridge nodes (betweenness centrality), central nodes (PageRank).
git clone https://github.com/obra/knowledge-graph.git
cd knowledge-graph
npm install
Set your vault path:
export KG_VAULT_PATH=/path/to/your/obsidian/vault
Optionally set the data directory (defaults to ~/.local/share/knowledge-graph):
export KG_DATA_DIR=/path/to/data
Index your vault (first run downloads a 22MB embedding model):
npx tsx src/cli/index.ts index
Then query:
# Look up a node (brief mode — metadata + connections)
npx tsx src/cli/index.ts node "Alice Smith"
# Full content + edge context
npx tsx src/cli/index.ts node "Alice Smith" --full
# Semantic search
npx tsx src/cli/index.ts search "distributed systems framework"
# Full-text keyword search
npx tsx src/cli/index.ts search "distributed systems" --fulltext
# Find paths between two nodes
npx tsx src/cli/index.ts paths "Alice Smith" "Widget Theory"
# Shared connections
npx tsx src/cli/index.ts common "Alice Smith" "Bob Jones"
# Local neighborhood
npx tsx src/cli/index.ts neighbors "Alice Smith" --depth 2
# Subgraph extraction
npx tsx src/cli/index.ts subgraph "Widget Theory" --depth 1
# Community detection
npx tsx src/cli/index.ts communities
# Bridge nodes (connectors between clusters)
npx tsx src/cli/index.ts bridges --limit 10
# Central nodes (PageRank)
npx tsx src/cli/index.ts central --limit 10
All commands return JSON. Names are fuzzy-matched (title, aliases, substring). You can also pass full node IDs (file paths).
This repo is also a Claude Code plugin. Add it to your plugins and the MCP server starts automatically, exposing all 10 operations as tools (kg_node, kg_search, kg_paths, etc.).
The prove-claim skill teaches the agent a structured workflow for investigating claims: decompose into entities, find them via search, trace connections via path traversal, read the evidence, assess and report with citations.
No LLM inside the tool — the agent does the reasoning, the tool provides the data infrastructure.
.md files, extracts YAML frontmatter (via gray-matter), wiki links, inline #tags, and enclosing paragraphs as edge context. Handles malformed YAML gracefully.Xenova/all-MiniLM-L6-v2 via @huggingface/transformers. Runs locally, 22MB quantized model, 384-dimensional embeddings computed from title + tags + first paragraph.--force for a full rebuild.| Role | Package |
|---|---|
| Graph algorithms | graphology |
| Persistence | better-sqlite3 |
| Vector search | sqlite-vec |
| Full-text search | SQLite FTS5 |
| Embeddings | @huggingface/transformers |
| MCP server | @modelcontextprotocol/sdk |
| Tests | vitest (76 tests) |
WHERE embedding MATCH ? AND k = ?, not LIMIT.MIT
A compile step for knowledge bases — gives your agent a concept graph of your content
Admin access level
Server config contains admin-level keywords
Share bugs, ideas, or general feedback.
Second Brain automation for Obsidian vaults — entity management, ingestion, compression, and sync via Claude Code skills
Claude + Obsidian knowledge companion. Sets up a persistent, compounding wiki vault. Covers memory management, session notetaking, knowledge organization, and agent context across projects. Based on Andrej Karpathy's LLM Wiki pattern. Optional DragonScale Memory extension adds hierarchical log folds, deterministic page addresses, embedding-based semantic tiling lint, and boundary-first autoresearch topic selection.
Quality assurance and linting tool for second brain knowledge systems ensuring consistency and structure. Knowledge base maintenance utility.
LLM-maintained knowledge base skill — structured wiki with Obsidian, milestone-based source clustering, proactive write-back, and autonomous lint
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.