No description
Find a file
OpenCode Agent bc7796c709 v0.2 enrich pass: entity edges + LLM-named category clusters (D9, D10)
- livewiki/enrich.py: entity extraction via [models].enrich role, cached by
  content hash (entities table); shared-entity edges, spread-capped;
  Leiden communities (nx backend dispatch, Louvain fallback) -> LLM-named
  category:<slug> hub nodes. Write-time only, index-only edges (SPEC §3).
- Privacy at the seam (SPEC §5): network provider skips privacy:local pages
  and excludes their titles from cluster-naming prompts.
- CLI: livewiki enrich [--model --no-entities --no-categories].
- UI: category hubs rendered (purple, legend chip, member panel).
- E2e: live claude -p run named "Embedded Rust", cache rerun extracted=0.
- 43 tests green, ruff clean.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 21:27:36 +02:00
livewiki v0.2 enrich pass: entity edges + LLM-named category clusters (D9, D10) 2026-07-17 21:27:36 +02:00
tests v0.2 enrich pass: entity edges + LLM-named category clusters (D9, D10) 2026-07-17 21:27:36 +02:00
.gitignore M1: vault core — spec, parser, incremental indexer, hybrid recall, CLI 2026-07-17 18:25:41 +02:00
DESIGN.md M1: vault core — spec, parser, incremental indexer, hybrid recall, CLI 2026-07-17 18:25:41 +02:00
pyproject.toml M3: graph explorer UI — the Obsidian view 2026-07-17 18:47:14 +02:00
README.md v0.2 enrich pass: entity edges + LLM-named category clusters (D9, D10) 2026-07-17 21:27:36 +02:00
SESSION_STATE.md v0.2 enrich pass: entity edges + LLM-named category clusters (D9, D10) 2026-07-17 21:27:36 +02:00
SPEC.md M1: vault core — spec, parser, incremental indexer, hybrid recall, CLI 2026-07-17 18:25:41 +02:00

livewiki

A live, growing personal wiki. One memory for humans and agents.

Stop telling your agents "You are a great assistant." Start telling them "You are me."

What it is

  • Files first. Your vault is plain markdown + frontmatter — Obsidian-compatible. Every index is derived and rebuildable. Delete .livewiki/ anytime; nothing is lost.
  • Hybrid recall. bm25 keywords + local embeddings + knowledge-graph expansion. No LLM in the query path: reads are fast and free.
  • Agent-native. An MCP server exposes your memory to any agent runtime (Claude Code, OpenCode, Goose, …).
  • Provider-agnostic. OCR/enrichment models are configurable: OpenAI, Anthropic, claude CLI, Ollama, vLLM, OpenRouter — your choice, per role.
  • Privacy-tainted. privacy: local pages never leave your machine. Enforced structurally at the model seam, not by discipline.

Quick start

pip install -e .
livewiki init ~/vault
cd ~/vault && livewiki reindex --semantic
livewiki recall "that embedded clock bug"
livewiki watch          # keep index hot on every save
livewiki enrich         # LLM entity edges + named category clusters ([models].enrich)

Works offline with zero API keys out of the box. For semantic-quality embeddings:

pip install -e ".[embed-local]"   # local sentence-transformers

Docs

  • DESIGN.md — architecture and locked decisions
  • SPEC.md — the vault format specification

Development

python3 -m venv .venv && .venv/bin/pip install -e ".[dev]"
.venv/bin/pytest

Code-structure questions: use graphify (graphify . → queryable code graph). Dev tool only — never a livewiki dependency. SESSION_STATE.md stays brief because of it.

Status

v0.1 shipped: M1 core · M2 MCP server · M3 graph UI · M4 ingestion . v0.2 in progress: enrich pass (entity edges + emergent LLM-named categories).