Installation & setup
Get wiki-builder installed and running in a few minutes.
Requirements
- Python 3.9 or higher
- An API key for Anthropic or OpenAI
pdftotext(optional) — required only if you want to ingest PDFs directly
Install
pip install wiki-builder
This installs the wiki command into your environment.
To install from source:
git clone https://github.com/Turi-Labs/wiki-builder
cd wiki-builder
pip install -e .
Set an API key
wiki-builder needs an API key to call the LLM. You can provide it in three ways:
Option 1 — environment variable (recommended)
# Anthropic
export ANTHROPIC_API_KEY=sk-ant-...
# OpenAI
export OPENAI_API_KEY=sk-...
Add the export to your ~/.zshrc or ~/.bashrc to persist it across sessions.
Option 2 — CLI config
wiki config --provider anthropic --api-key sk-ant-...
# or
wiki config --provider openai --api-key sk-...
This saves the key to ~/.wiki-builder/config.json.
Option 3 — per-command flag
wiki ingest raw/paper.md --provider openai
The tool resolves provider and key in this order: CLI flags → environment variables → saved config → defaults.
Quickstart
Initialize a project, add a document, ingest it, and query the result.
# 1. Create a new wiki
wiki init my-research/ --name "AI Research"
# 2. Copy in a source document
cp ~/papers/paper.md my-research/raw/
# 3. Ingest the document
cd my-research
wiki ingest raw/paper.md
# 4. Query your knowledge base
wiki query "what are the main contributions of this paper?"
# 5. Check wiki health
wiki status
wiki lint
What wiki init creates
my-research/
├── schema.md # LLM behavioral spec (you can edit this)
├── .gitignore
├── raw/ # drop source documents here
│ └── assets/
└── wiki/
├── index.md # master catalog
├── log.md # operation log
├── concepts/
├── entities/
└── sources/
PDF support
To ingest PDFs, install pdftotext from the Poppler utilities package:
# macOS
brew install poppler
# Ubuntu / Debian
sudo apt install poppler-utils
Then pass a PDF directly to wiki ingest:
wiki ingest raw/paper.pdf
# Delete the PDF after converting to text
wiki ingest raw/paper.pdf --delete-pdf
Tips
- Ingest one source at a time. The LLM produces better synthesis when it focuses on a single document.
- Edit
schema.mdas you go. Changing naming conventions or adding page types is just a text edit. - Keep
raw/immutable. It's your source of truth. The LLM only writes insidewiki/. - Use git. Every ingest and query-save is a natural commit point. You get full history and easy rollback.
- Open the wiki in Obsidian. The graph view and Dataview plugin work great with this layout.
Next: Command reference