AI · LLM-maintained knowledge base + chatbot
ABrain
A personal knowledge base maintained by an AI agent — and the live backend for the chatbot on this site.
Inspired by Andrej Karpathy's idea of a living knowledge system. I drop sources — documents, papers, notes — into a raw/ folder; an agent ingests them, extracts entities, concepts, and claims, and builds a structured wiki of interlinked markdown pages. Unlike ChatGPT or NotebookLM, knowledge compounds: connections are pre-built, contradictions are pre-flagged, and every page stays consistent with the whole. The wiki also doubles as the source of truth for the 'Ask Annie' chatbot on this site — when you talk to it, you're talking to me through my own knowledge base.
Inside the build
Four core operations — Ingest, Query, Lint, Maintain — each a directed agent pass that reads the current wiki state before writing, keeping the knowledge graph internally consistent as it grows.
Markdown-native storage readable directly in Obsidian. No database, no vendor lock-in — every page is a human-editable .md file with YAML frontmatter and wikilinks, fully versioned in git.
Powers the chatbot on this site. The wiki is pulled in as a git submodule, sanitized at build time (names filtered, private pages excluded), bundled with a hand-authored extras file, and streamed to visitors via Claude Haiku 4.5 with prompt caching.
Index and change log updated on every run — the system always knows what it knows, when it learned it, and what changed. Full history lives in git.
Stack
Claude (Anthropic) · Markdown · Obsidian · YAML · Git · Next.js · Vercel
Live at
github.com