Skip to main content
llmwiki is a Node.js CLI that you install once globally with npm. After installation, you point it at an LLM provider by setting a handful of environment variables - or in some cases, no variables at all if you’re already logged into Claude Code. This page covers the full installation process and every supported provider.

Requirements

llmwiki requires Node.js >= 24. This is a hard minimum - the package will not run on earlier versions. Check your current version with node --version and update via nodejs.org or a version manager (nvm, fnm) if needed.
  • 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 the llm-wiki-compiler package globally. The package registers the llmwiki binary on your PATH:
Verify the installation:

Provider Setup

llmwiki calls an LLM during the compile and query phases. It does not require credentials for ingest, 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 is the default provider - no LLMWIKI_PROVIDER variable is needed. Set either ANTHROPIC_API_KEY or ANTHROPIC_AUTH_TOKEN; one is sufficient.
To use a custom proxy or Anthropic-compatible endpoint, set ANTHROPIC_BASE_URL:
Zero-export shortcut. If you already have Claude Code configured, llmwiki falls back to reading 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:
  1. Shell environment / local .env
  2. Claude Code settings fallback (~/.claude/settings.json → env block)
  3. 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:
A self-hosted endpoint needs no API key. Without 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, set LLMWIKI_MODEL:
This works with any provider and is applied globally to all compile and query calls in the current session.

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:
Variables in the shell environment take precedence over .env values.

Next Steps

Upgrading an existing 0.11 project? Follow Upgrading from 0.11 to 1.0 for the compatibility checks and one-time embedding index transition. For a full reference on every provider option, proxy configuration, request timeouts, and output language settings, see Provider Configuration. Ready to compile your first wiki? Head to the Quickstart.