Skip to Content
ReferenceSettings

Settings

Generated from agentdeck/runtime/settings.py’s LayeredSettings subclasses — this page cannot drift from the code because make check regenerates it and fails if the result differs (scripts/generate_docs_reference.py). Every variable is also settable in the shared config.yaml, under the section derived from its env-var prefix (openai:, runner:, …); an env var wins over the file.

OpenAISettings

OpenAI-compatible endpoint configuration.

Env varTypeDefaultDescription
OPENAI_MODELstrrequiredModel name passed to the host Agents SDK runner. No default — always required.
OPENAI_API_KEYstr''API key for the endpoint. What empty does depends on ca_bundle: unset (the common case), the OpenAI client falls through to its own OPENAI_API_KEY process-env lookup and errors on the first model call if that’s empty too; with ca_bundle set, the empty value is passed straight through instead and just sends no Authorization header — the self-hosted/corporate-CA case doesn’t need a placeholder value the way the common path does.
OPENAI_BASE_URLstr''OpenAI-compatible endpoint base URL. Empty uses the SDK default, api.openai.com.
OPENAI_CA_BUNDLEstr''Path to a CA/certificate bundle for verifying the endpoint’s TLS certificate. Empty uses the system’s default trust store.

RunnerSettings

Defaults for the host-side Agents SDK runner.

Env varTypeDefaultDescription
AGENTDECK_RUNNER_WORKFLOW_NAMEstr'local-sandbox-repl'Name recorded on the host Agents SDK run (RunConfig.workflow_name) — identifies which workflow produced a run in tracing/observability.
AGENTDECK_RUNNER_TEMPERATUREfloat1.0Sampling temperature for the host agent loop’s model.
AGENTDECK_RUNNER_MAX_TURNSint30Maximum turns Runner.run/run_streamed may take before giving up.
AGENTDECK_RUNNER_MAX_TOKENSint or NoneNoneCap on tokens per response for the host agent loop’s ModelSettings. None means the model’s own default (uncapped).

RuntimeSettings

Knobs the Runtime itself reads.

Env varTypeDefaultDescription
AGENTDECK_RUNTIME_STALE_RUN_AFTER_SECONDSfloat3600.0How long, in seconds, an open run may go without writing an event before it is treated as abandoned and its session ownership is released for another worker to claim. Must be positive; set it above the longest gap a healthy turn can go quiet.

LangfuseSettings

Langfuse LLM-observability export config.

Env varTypeDefaultDescription
AGENTDECK_LANGFUSE_PUBLIC_KEYstr''Langfuse public key. Tracing stays off unless this and secret_key are both set.
AGENTDECK_LANGFUSE_SECRET_KEYstr''Langfuse secret key. Tracing stays off unless this and public_key are both set.
AGENTDECK_LANGFUSE_BASE_URLstr'http://localhost:3000'Langfuse endpoint.
AGENTDECK_LANGFUSE_ENVIRONMENTstr'local'Langfuse environment tag attached to every exported span.
AGENTDECK_LANGFUSE_DEBUGboolFalseEnable the Langfuse SDK’s own debug logging.
AGENTDECK_LANGFUSE_SAMPLE_RATEfloat1.0Fraction of traces exported to Langfuse, from 0.0 to 1.0.
AGENTDECK_LANGFUSE_SERVICE_NAMEstr'agentdeck'OpenTelemetry resource service.name for every exported span. Without it, spans fall back to unknown_service and are unattributed in the Langfuse UI.

TavilySettings

Tavily web-search API. One knob: TAVILY_API_KEY env var (or YAML tavily: api_key:).

Env varTypeDefaultDescription
TAVILY_API_KEYstr''Tavily web-search API key. Empty makes the web_search tool return an error: string instead of raising — it degrades the same way an unavailable MCP server does, rather than disappearing.

CheckpointSettings

LangGraph checkpointer backend for durable=True workflows, as one scheme-shaped URL.

Env varTypeDefaultDescription
AGENTDECK_CHECKPOINTstr'sqlite://.agentdeck/checkpoints.sqlite3'LangGraph checkpointer for durable=True workflows: sqlite://<path> for dev (this default), postgresql://<dsn> for prod, or memory:// for tests (never persists past the process). The scheme names the backend.

EventsSettings

Where the Runtime’s canonical event log is written, as one scheme-shaped URL.

Env varTypeDefaultDescription
AGENTDECK_EVENTSstr'memory://'Where the Runtime’s canonical event log is written: memory:// (default, in-process, gone when the process exits), sqlite://<path>, redis://<url>/rediss://<url>, or postgresql://<dsn> (needs the [durability] extra). The scheme names the backend.

ControlSettings

Where a run’s pending control signals live — what pause and cancel are written to.

Env varTypeDefaultDescription
AGENTDECK_CONTROLstr'memory://'Where a run’s pending control signals live: memory:// (default, reachable only from this process) or sqlite://<path> (crosses process boundaries — required for the agentdeck runs signal CLI to reach a run). The scheme names the backend.

SessionSettings

Configuration for Redis-backed agent conversation memory.

Env varTypeDefaultDescription
AGENTDECK_SESSIONstr or NoneNoneRedis URL for RedisSession-backed agent conversation memory (agentdeck.adapters.engines.openai_agents.sessions.SessionFactory). None falls back to one in-process SQLiteSession per session key — no persistence across a restart, no sharing across workers.
AGENTDECK_SESSION_REDIS_KEY_PREFIXstr'agents:session'Key prefix under which RedisSession stores conversations in Redis.
AGENTDECK_SESSION_REDIS_TTLint or NoneNonePer-session TTL in seconds for Redis-backed conversations. None means sessions persist indefinitely.
Last updated on