Pika is a minimal, web-based AI-assisted editor for writers who want to stay in control of their text. It runs locally, stores everything on your machine, and keeps AI in a supporting role — available when you need it, out of the way when you don't.
Built for personal use and open-sourced because good tools should be shared.
{{variable}} template support.md files on disk for contentUbuntu/Debian (system packages are often too old for Node — use nvm instead):
sudo apt install golang
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
nvm install 22
./start.sh
Then open http://localhost:5173. Ctrl+C stops both processes.
Backend flags pass through:
./start.sh -addr :9090 -workspace ~/writing
| Flag | Default | Description |
|---|---|---|
-addr |
:8080 |
Listen address |
-db |
pika.db |
SQLite database path |
-workspace |
~/pika/projects |
Directory for .md files |
# Backend
cd backend && go run ./cmd/pika
# Frontend (separate terminal)
cd frontend && npm install && npm run dev
Open Global Settings from the left panel to configure:
{{before}}, {{after}}, {{selection}} as template variablesProject-level overrides (name, system prompt, model) are set per project and take precedence over global defaults.
Open Global Settings → Memory to configure:
https://host/mcp)Once configured, a sync button appears in the editor next to the drafts panel. Clicking it pushes the current document to Mnem-O-Matic under a namespace derived from the project name (the project-slug). Empty documents are not synced. The server must have a valid TLS certificate trusted by the host system.
MIT — see LICENSE.