Requirements
- Node.js >= 24 (see warning above)
- npm (bundled with Node.js)
- Provider credentials - required for compile and query; ingest is credential-free (see Provider Setup below)
Install llmwiki
Version 1.2.0 includes profile-aware browsing, source and artifact drill-down, and compile/provider improvements. Windows path fixes are included, but release CI is Linux-only and full Windows filesystem-confinement guarantees remain unverified. Use Linux for untrusted projects until the Windows safety work is complete.Platform limitations in the next release
The next release adds checks for private-file reads and append-only stores when the operating system lacks native no-follow flags. A file must be regular and retain the same filesystem identity before and after opening; missing stores are created exclusively. Filesystems that cannot supply a nonzero file identity are refused rather than read without that check. This fallback has been tested through capability simulations, not on a native Windows runner. It does not establish full Windows support. Native POSIX no-follow and nonblocking behavior is unchanged. Directory-handle verification, including offline template verification and anchored tap-key reads, refuses operation where the required directory flags are unavailable. Continue using Linux for untrusted projects; the Windows CI work remains open. Install thellm-wiki-compiler package globally. The package registers the llmwiki binary on your PATH:
Provider Setup
llmwiki calls an LLM during the compile and query phases. It does not require credentials foringest, view, lint, status, or any other read-only operation. Configure your provider by setting the environment variables below - or place them in a .env file in your project directory and llmwiki will load them automatically.
- Anthropic (default)
- Claude Agent SDK
- OpenAI Codex CLI
- OpenAI-compatible
- Ollama
- GitHub Copilot
Anthropic is the default provider - no To use a custom proxy or Anthropic-compatible endpoint, set Zero-export shortcut. If you already have Claude Code configured, llmwiki falls back to reading
LLMWIKI_PROVIDER variable is needed. Set either ANTHROPIC_API_KEY or ANTHROPIC_AUTH_TOKEN; one is sufficient.ANTHROPIC_BASE_URL:ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN, ANTHROPIC_BASE_URL, and ANTHROPIC_MODEL from ~/.claude/settings.json (the env block). If those values are present there, you can run llmwiki compile with no exports at all.Configuration precedence:- Shell environment / local
.env - Claude Code settings fallback (
~/.claude/settings.json→envblock) - Built-in provider defaults
Different backends for chat and embeddings
You can serve embeddings from a different provider than chat - for example, Claude Agent SDK for generation with a local vLLM instance serving vectors:OPENAI_EMBEDDINGS_BASE_URL, you must set OPENAI_API_KEY. If the endpoint belongs to a hosted service rather than your own machine, set OPENAI_EMBEDDINGS_API_KEY too - otherwise your OPENAI_API_KEY is sent there.
Switching an existing project to a different embedding backend re-embeds every page on the next llmwiki compile, because vectors from different backends are not comparable.
See Environment Variables for the full LLMWIKI_EMBEDDING_PROVIDER credential reference.
Overriding the Model
To use a different model than the provider’s default, setLLMWIKI_MODEL:
Using a .env File
You can store provider configuration in a.env file at the root of your wiki project directory. llmwiki loads it automatically on every command:
.env values.