Guide

Get a live wiki from your repo in five minutes.

Install

Nothing to install if you just want to try it — run it straight from npm, in the root of any repo:

$ npx wikipilot init

For repeat use, install it globally. Needs Node.js 18 or newer, and nothing else — no config file, no account, no API key.

$ npm install -g wikipilot

Prefer to run the unreleased version, or hack on it? Build from source:

$ git clone https://github.com/guymoyal/wikipilot $ cd wikipilot && npm install && npm run build $ npm link # now the wikipilot command runs from ./dist

Initialize

Run this from the root of the repo you want documented. It asks who the wiki is for, then drafts real pages from your repo's own content — no blank templates to fill in.

$ wikipilot init What kind of wiki should this be? 1) Technical For people working on this codebase — architecture, dependencies, internals. 2) User guide For people using what it produces — install, guides, FAQ, troubleshooting. 3) Everything Both audiences in one wiki.

Your answer decides which sections get drafted:

  • Technicalstart-here, how-it-works, technologies, reference, cookbook
  • User guidestart-here, getting-started, guides, faq, troubleshooting
  • Everything — all nine, ordered from onboarding through to lookup material

The choice is saved to wikipilot.config.json, so later builds and the sync skill both know what belongs in this wiki.

  • --preset <technical|user-guide|all> — answer up front and skip the question
  • -y, --yes — take the default (technical); use this in CI
  • -o, --out <dir> — where to scaffold the wiki (default ./wiki)
  • --no-skill — skip scaffolding the Claude Code sync skill

The prompt only appears on an interactive terminal. Piped or non-TTY runs take the default instead of hanging, so wikipilot init is safe to put in a script.

Build & serve

The defaults line up with what init wrote, so both commands take no arguments:

$ wikipilot build # ./wiki → ./wiki-dist $ wikipilot serve # http://localhost:4400

The site is named after your project — @acme/billing-service becomes "Billing Service" — and --site-name overrides it. The output is plain HTML, CSS, and JS: search, theme toggle, and Mermaid diagrams all work with no server-side code, so you can host it anywhere.

Ask-the-wiki assistant

Run a small local API that grounds a chat widget in your wiki's own content only.

$ export ANTHROPIC_API_KEY=sk-... $ wikipilot agent --port 4402

Pass --agent-port 4402 to wikipilot build and the built site's chat widget will call it automatically. If the API lives somewhere else — a Worker, a container, another domain — use --agent-url https://api.example.com/api/chat instead. The wiki itself stays static either way; the assistant is the only part that talks to a server, and the API key never leaves it.

Deploy

Today: host the wiki-dist/ output anywhere that serves static files — GitHub Pages, S3, your own nginx box. Soon: skip that step entirely.

# coming with Pro — not live yet $ wikipilot login $ wikipilot deploy

Join the hosted-wiki waitlist →

Next steps

  • Star the repo and skim the source — it's a plain TypeScript CLI, nothing exotic.
  • Open an issue if a command behaves differently than this guide says — that's a bug in one of us.
  • Wire wikipilot init's scaffolded skill into your normal workflow so the wiki stays synced without a separate chore.

View source on GitHub