Configuration
What LiveFolio OSS configures for you, and the few things you can change — AI provider keys, ports, tunnels, and the data directory.
You probably need to configure nothing
A self-hosted LiveFolio runs with no .env file, no database, and no
account. The defaults are correct for local use out of the box.
There are two things you may want to change: which AI model you use, and where your data lives.
AI providers
You can supply keys two ways. They're independent — use whichever suits you.
In the app (recommended)
Open Settings → General and paste keys for OpenAI, Anthropic, Gemini, or DeepSeek, or point at a local Ollama.
Keys entered this way are stored in your browser's localStorage and sent only to your own local server with each chat request. They are never written to disk on the server and never leave your machine beyond the provider call itself. Your chat's model menu picks them up immediately.
Via environment variables
Server-side keys work too, and act as a fallback when no browser key is set — handy for a shared machine or a server you start once:
# .env (optional)
GEMINI_API_KEY=... # https://ai.google.dev
ANTHROPIC_API_KEY=... # https://console.anthropic.com
OPENAI_API_KEY=... # https://platform.openai.com
DEEPSEEK_API_KEY=... # https://platform.deepseek.com
Ollama needs no key at all — it runs on your machine.
Full provider setup, including Ollama models and how routing works, is in AI Providers.
Data directory
| Install method | Default location |
|---|---|
npx @livefolio-cloud/cli | ~/.livefolio/data |
| From source | ./database.json in the repo |
With the CLI, move it with --data-dir or the LIVEFOLIO_DATA_DIR
environment variable:
LIVEFOLIO_DATA_DIR=~/my-folios npx @livefolio-cloud/cli
See Database for the file layout and backups.
Port
| Command | Port |
|---|---|
npm run dev | 3001 (pinned, so it sits beside your other projects) |
npm start | 3000 — set PORT to change it |
npx @livefolio-cloud/cli | any free port — or pin one with --port |
PORT=8080 npm start
npx @livefolio-cloud/cli --port 3001
Settings file
Two runtime settings live in settings.json at the project root. Both are
managed from the UI — you rarely edit this file by hand:
{
"mcpKey": "…",
"customTunnelUrl": "https://my-folios.example.com"
}
| Field | Description |
|---|---|
mcpKey | The master key MCP clients present to your local server. Generate or rotate it in Settings → Integrations. |
customTunnelUrl | Optional fixed domain used instead of the random Cloudflare URL when sharing — Settings → Sharing / Tunnel. |
The current MCP key is shown in Settings → Integrations and copied into your agent's
mcp.json. Regenerating it invalidates the old one.
Environment reference
Everything LiveFolio OSS reads. All optional:
# ── AI providers (optional — or set keys in the UI) ──────────
GEMINI_API_KEY=
ANTHROPIC_API_KEY=
OPENAI_API_KEY=
DEEPSEEK_API_KEY=
# ── Data location ────────────────────────────────────────────
LIVEFOLIO_DATA_DIR=
# ── Server ───────────────────────────────────────────────────
PORT=
.env.example in the repo lists additional variables — those are for the
hosted Cloud edition and are ignored by a local install.