Skip to content

Configuration

Every setting is an environment variable prefixed TDN_. The same variables work for tracedown-server, tracedown-worker, Docker Compose and the Helm chart (see DEPLOYMENT.md for how the chart sets them).

Variable Purpose
TDN_DB SQLite path for metadata (single-process setups)
TDN_DATABASE_URL Postgres for metadata, e.g. postgresql://user:pass@host/tracedown (TDN_DATABASE_POOL connections per process)
TDN_REDIS_URL Redis: shared read cache, live feed across replicas, ingest rate limits (TDN_CACHE_TTL, TDN_INGEST_RATE_LIMIT)
TDN_API_KEYS Bootstrap owner keys (comma-separated). Without keys, users or this, the server runs open (dev)
TDN_AUTH=required Refuse open mode even on a fresh install
TDN_JUDGE Optional LLM judge, e.g. anthropic:claude-sonnet-5-5 (most accurate on Who&When so far), anthropic:claude-haiku-5-5 (cheaper) or openai:gpt-5.4-mini (uses ANTHROPIC_API_KEY / OPENAI_API_KEY). For OpenAI-compatible servers such as vLLM or Ollama, also set OPENAI_BASE_URL
TDN_OIDC_ISSUER, _CLIENT_ID, _CLIENT_SECRET, _REDIRECT_URI, _ROLE_MAP, _ALLOWED_DOMAINS Single sign-on
TDN_SESSION_SECRET Signs SSO session cookies (set it in production)
TDN_CLICKHOUSE ClickHouse URL, or JSON router config for multi-cluster
TDN_KAFKA_BOOTSTRAP Ingest through Kafka/Redpanda; run tracedown-worker. The topic is created if missing (TDN_KAFKA_PARTITIONS, default 12)
TDN_OTLP_FORWARD, TDN_OTLP_HEADERS Forward finished runs to an OTLP endpoint
TDN_PRICES Extra or corrected model prices, USD per million tokens, as JSON or a path to a JSON file: {"model": {"input": .., "output": ..}}. Current Anthropic, OpenAI and Google models are priced out of the box (sources)
TDN_DRIFT_MIN_RUNS Runs per cohort before a drift report (default 20)
TDN_PUBLIC_URL Used in notification links and the cookie secure flag

Command-line options

tracedown-server --help, tracedown-worker --help and tracedown-import --help list the flags.