by SamurAIGPT
A personal knowledge base that builds and maintains itself. Drop in sources — Claude (or Codex/Gemini) reads them, extracts knowledge, and maintains a persistent interlinked wiki. Works with Claude Code, Codex, OpenCode, Gemini CLI. No API key needed.
# Add to your Claude Code skills
git clone https://github.com/SamurAIGPT/llm-wiki-agentGuides for using cli tools skills like llm-wiki-agent.
Last scanned: 4/24/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-04-24T06:08:51.804Z",
"semgrepRan": false,
"npmAuditRan": true,
"pipAuditRan": false
}A coding agent skill. Drop source documents into raw/ and tell the agent to ingest them — it reads them, extracts knowledge, and builds a persistent interlinked wiki. Every new source makes the wiki richer. You never write it.
Most knowledge tools make you search your own notes. This one reads everything you've collected and writes a structured wiki that compounds over time — cross-references already built, contradictions already flagged, synthesis already done.
ingest raw/papers/attention-is-all-you-need.md
wiki/
├── index.md catalog of all pages — updated on every ingest
├── log.md append-only record of every operation
├── overview.md living synthesis across all sources
├── sources/ one summary page per source document
├── entities/ people, companies, projects — auto-created
├── concepts/ ideas, frameworks, methods — auto-created
└── syntheses/ query answers filed back as wiki pages
graph/
├── graph.json persistent node/edge data (SHA256-cached)
└── graph.html interactive vis.js visualization — open in any browser
Requires: Claude Code, Codex, Gemini CLI, or any agent that reads a config file.
git clone https://github.com/SamurAIGPT/llm-wiki-agent.git
cd llm-wiki-agent
Open in your agent — no API key or Python setup needed:
claude # reads CLAUDE.md + .claude/commands/ (slash commands available)
codex # reads AGENTS.md
opencode # reads AGENTS.md
gemini # reads GEMINI.md
All agents understand natural language and shorthand triggers:
ingest raw/papers/my-paper.md # ingest a markdown source
ingest report.pdf # auto-converts to .md, then ingests
ingest slides.pptx notes.docx # batch, mixed formats
query: what are the main themes? # synthesize answer from wiki pages
lint # find orphans, contradictions, gaps
build graph # build graph.html from all wikilinks
Plain English works too:
"Ingest this paper: raw/papers/llama2.md"
"What does the wiki say about attention mechanisms?"
"Check for contradictions across sources"
"Build the knowledge graph and tell me the most connected nodes"
Claude Code also provides /wiki-ingest, /wiki-query, /wiki-lint, /wiki-graph as slash commands (via .claude/commands/). These are Claude Code-specific — other agents use the natural language triggers above, which work identically.
Works with markdown, PDF, DOCX, PPTX, XLSX, HTML, TXT, CSV, JSON, XML, RST, EPUB, and more. Non-markdown files are auto-converted via markitdown at ingest time — no separate step needed.
Persistent wiki — structured markdown pages that accumulate across sessions. Unlike chat, nothing is lost.
Entity pages — auto-created for every person, company, or project mentioned across sources. Updated each time a new source references them.
Concept pages — auto-created for every key idea or framework. Cross-referenced to every source that discusses them.
Living overview — wiki/overview.md is revised on every ingest to reflect the current synthesis across everything you've read.
Contradiction flags — when a new source contradicts an existing claim, it's flagged at ingest time, not buried until query time.
Knowledge graph — graph.html shows every wiki page as a node, every [[wikilink]] as an edge, and Claude-inferred implicit relationships as dotted edges. Community detection clusters related topics.
Lint reports — orphan pages, broken links, missing entity pages, data gaps with suggested sources to fill them.
Going deep on a topic over weeks — reading papers, articles, reports.
/wiki-ingest raw/papers/attention-is-all-you-need.md
/wiki-ingest raw/papers/llama2.md
/wiki-ingest raw/papers/rag-survey.md
# Wiki builds entity pages (Meta AI, Google Brain) and
# concept pages (Attention, RLHF, Context Window) automatically.
/wiki-query "What are the main approaches to reducing hallucination?"
/wiki-query "How has context window size evolved across models?"
/wiki-lint
# → "No sources on mixture-of-experts — consider the Mixtral paper"
By the end you have a structured, interlinked reference — not a folder of PDFs you'll never reopen.
File each chapter as you go. Build out pages for characters, themes, arguments.
/wiki-ingest raw/book/chapter-01.md
/wiki-ingest raw/book/chapter-02.md
# Wiki creates entity and theme pages automatically.
/wiki-query "How has the protagonist's motivation evolved?"
/wiki-query "What contradictions exist in the author's argument so far?"
/wiki-graph # → graph.html shows every character/theme and how they connect
Think fan wikis like Tolkien Gateway — built as you read, with the agent doing all the cross-referencing.
Track goals, health, habits, self-improvement — file journal entries, articles, podcast notes.
/wiki-ingest raw/journal/2026-01-week1.md
/wiki-ingest raw/articles/huberman-sleep-protocol.md
/wiki-ingest raw/articles/atomic-habits-summary.md
/wiki-query "What patterns show up in my journal entries about energy?"
/wiki-query "What habits have I tried and what was the outcome?"
The wiki builds a structured picture over time. Concepts like "Sleep", "Exercise", "Deep Work" accumulate evidence from every source filed.
Feed in meeting transcripts, project docs, customer calls.
/wiki-ingest raw/meetings/q1-planning-transcript.md
/wiki-ingest raw/docs/product-roadmap-2026.md
/wiki-ingest raw/calls/customer-interview-acme.md
/wiki-query "What feature requests have come up most across customer calls?"
/wiki-query "What decisions were made in Q1 and what was the rationale?"
/wiki-lint
# → "Project X mentioned in 5 pages but no dedicated page"
# → "Roadmap contradicts customer interview on priority of feature Y"
The wiki stays current because the agent does the maintenance no one wants to do.
Track a company, market, or technology over time.
/wiki-ingest raw/competitors/openai-announcements.md
/wiki-ingest raw/market/ai-funding-report-q1.md
/wiki-query "How do OpenAI and Anthropic differ on safety approach?"
/wiki-query "Which companies announced multimodal models in the last 6 months?"
/wiki-query "Competitive landscape summary as of today"
# → agent shows the answer, then asks if you want to save it as a synthesis page
Two-pass build:
[[wikilinks]] across wiki pages → edges tagged EXTRACTEDINFERRED (with confidence score) or AMBIGUOUSLouvain community detection clusters nodes by topic. SHA256 cache means only changed pages are reprocessed. Output is a self-contained graph.html — no server, opens in any browser.
The schema file tells the agent how to maintain the wiki — page formats, ingest/query/lint/graph workflows, naming conventions. This is the key config file. Edit it to customize behavior for your domain.
| Agent | Schema file |
|---|---|
| Claude Code | CLAUDE.md |
| Codex / OpenCode | AGENTS.md |
| Gemini CLI | GEMINI.md |
| RAG | LLM Wiki Agent | |---|---| | Re-derives knowledge every query | Compiles once, keeps current | | Raw chunks as retrieval unit | Structured wiki pages | | No cross-references | Cross-references pre-built | | Contradictions surface at query time (maybe) | Flagged at ingest time | | No accumulation | Every source makes the wiki richer |
The wiki is designed to be browsed seamlessly in Obsidian. Since the agent maintains consistent [[wikilinks]], you get a naturally growing knowledge graph in your vault.
If you want to keep the LLM Wiki Agent repository separate from your main personal vault, use symlinks:
~/llm-wiki-agentln -sfn ~/llm-wiki-agent/wiki ~/your-obsidian-vault/wiki
raw/ in the agent repo to queue items for ingestion.Note: If you ever move your local repo directory, remember to update the symlink, otherwise the
wiki/directory will appear missing in Obsidian.
index.md and log.md (e.g. -file:index.md -file:log.md) to avoid them becoming gravity wells in your Obsidian graph.type: source, tags: [diary]).Drop any supported file directly into ingest — no separate conversion step needed:
# These all work — auto-converted at ingest time
ingest report.pdf
ingest meeting-notes.docx
ingest slides.pptx
ingest data.xlsx
ingest page.html
ingest raw/mixed-folder/ # recursively finds all supported files
Supported formats:
.md .pdf .docx .pptx .xlsx .xls .html .htm .txt .csv .json .xml .rst .rtf .epub .ipynb .yaml .yml .tsv .wav .mp3
Non-markdown files are auto-converted via markitdown. Use --no-convert to skip auto-conversion and process o
No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
Based on votes and bookmarks from developers who liked this skill