Skip to content

Deployment

The feltnerai-server binary serves both the API (/api/v1) and the embedded web app. This page covers configuring it for a real deployment.

VariableDefaultPurpose
FELTNERAI_DATA_DIROS user data directoryOverride for SQLite, encryption key, and persistent state
FELTNERAI_BIND127.0.0.1:8080Server listen address
FELTNERAI_PUBLIC_URLunsetCanonical HTTPS URL; overrides the stored value at startup
FELTNERAI_LOGfeltnerai=info,tower_http=infoRust tracing filter
FELTNERAI_LOG_JSONfalseEmit JSON logs
FELTNERAI_TRUSTED_PROXIESunsetComma-separated exact proxy IPs allowed to supply X-Forwarded-For

Without an override, FeltnerAI follows operating-system conventions:

  • Windows: %LOCALAPPDATA%\FeltnerAI\FeltnerAI Server\data
  • macOS: ~/Library/Application Support/ai.FeltnerAI.FeltnerAI-Server
  • Linux: $XDG_DATA_HOME/feltnerai-server or ~/.local/share/feltnerai-server

When an upgraded server first starts with the new default, it looks for a legacy data directory beside the executable and in the working directory. If found, it copies that directory into the OS location and preserves the legacy copy as an extra safeguard.

Terminate TLS at a reverse proxy and bind FeltnerAI to loopback. Example Caddy configuration:

ai.example.com {
reverse_proxy 127.0.0.1:8080
}

Then set:

FELTNERAI_PUBLIC_URL=https://ai.example.com
FELTNERAI_TRUSTED_PROXIES=127.0.0.1

On Windows, administrators can enable Open FeltnerAI Server when I sign in to Windows from Admin → Server. This registers the current executable under the current user’s standard Windows Run key.