Kerno is a self-hosted personal AI assistant. You install it on a machine you control — Docker on your laptop, a Mac mini, a VPS, Railway — and configure it through a stepped browser wizard. No .env editing, no command-line flags.
These docs walk through the install, the wizard, every connector, and the few advanced situations (reverse proxies, external databases). If you hit something not covered, reply to your trial email — it goes straight to the founder.
New here? Start with Quickstart. Then walk through the Setup wizard.
How it works in one paragraph
You run a single Docker image. On first boot it bootstraps its own encryption key, generates an internal API token, and brings up an empty Postgres alongside. You open /setup, paste an LLM key (Mistral, OpenAI, anything OpenAI-compatible), connect the services you actually use, and start chatting. Everything you save is encrypted at rest in the bundled database. Your data never leaves your server.
Explore
Quickstart →
Pull the image, bring the stack up, open the wizard.
Setup wizard →
Walk through every step of the first-boot wizard.
Deployment options →
Bundled Postgres, external Postgres, or engine-only — which fits your infra.
Connecting services →
Where to grab credentials for Google, Slack, Linear, Notion, GitHub.
Local LLM models →
Ollama, llama.cpp, vLLM. Run Kerno fully offline. Zero data egress.
License keys & trial →
Trial / valid / grace / locked — how the licence state machine works.
Behind a reverse proxy →
Run Kerno behind nginx, Caddy, or Cloudflare Tunnel.
External Postgres →
Use Supabase, Neon, or Railway instead of the bundled DB.
Updating →
Pull a new image without losing data.
Backup & data →
Where state lives, how to dump and restore it.
Troubleshooting →
Common symptoms and what to fix.