Configuration
Configuration is organized by setting environment variables, read from
.env (copy .env.example to start). This page documents every
variable; defaults shown are from backend/app/config.py.
Database & cache
Variable |
Default |
Description |
|---|---|---|
|
|
Database user |
|
— |
Database password (required) |
|
|
Database name |
|
derived from the above |
Full SQLAlchemy connection string; set directly to override |
|
|
Celery broker/result backend |
LLM providers
Variable |
Default |
Description |
|---|---|---|
|
|
Comma-separated, ordered list — first is primary, rest are fallbacks. Valid values: |
|
— |
Required if |
|
|
|
|
|
Set to a remote host to use Ollama running elsewhere, e.g. |
|
|
|
|
|
Used for semantic clustering regardless of which provider handles text generation — 768-dim; changing it requires a schema migration (see Clustering) |
|
|
Increase for remote or slow Ollama hosts |
|
|
How long to wait for an Anthropic Batch API job before cancelling and falling back to synchronous processing |
See LLM Providers for how the fallback chain and batch processing work.
Reddit
Variable |
Default |
Description |
|---|---|---|
|
— |
From a Reddit “personal use script” app. Can also be set per-source instead (or in addition) — see Sources. |
|
|
|
|
— |
Only needed for the OAuth “password” grant (script-type apps); without them Shoebill falls back to app-only |
Authentication
Variable |
Default |
Description |
|---|---|---|
|
|
Change this. Generate with |
|
|
Session length |
|
— |
Default admin account, created (or password-reset) on startup |
|
— |
Push notifications (Web Push / VAPID)
Variable |
Default |
Description |
|---|---|---|
|
— |
Generate with: |
|
|
Notes
Restart required for LLM config changes.
LLM_PROVIDERSand related settings are read once and cached for the process lifetime — the settings UI shows the current LLM configuration but changing it always requires editing.envand restarting, never just an API call.The backend runs from a built Docker image.
docker compose run --rm backend alembic ...does not pick up local file changes — see Development for the correct migration workflow.