# `Codex.RunConfig`
[🔗](https://github.com/nshkrdotcom/codex_sdk/blob/v0.16.1/lib/codex/run_config.ex#L1)

Per-run configuration applied to agent execution.

# `t`

```elixir
@type t() :: %Codex.RunConfig{
  auto_previous_response_id: boolean(),
  call_model_input_filter: function() | nil,
  conversation_id: String.t() | nil,
  file_search: Codex.FileSearch.t() | nil,
  group: term(),
  hooks: term(),
  input_guardrails: list(),
  max_turns: pos_integer(),
  model: String.t() | nil,
  model_settings: map() | struct() | nil,
  nest_handoff_history: boolean(),
  output_guardrails: list(),
  previous_response_id: String.t() | nil,
  session: term() | nil,
  session_input_callback: function() | nil,
  trace_id: term(),
  trace_include_sensitive_data: term(),
  tracing_disabled: term(),
  workflow: term()
}
```

# `new`

```elixir
@spec new(map() | keyword() | t()) :: {:ok, t()} | {:error, term()}
```

Builds a validated `%Codex.RunConfig{}` struct.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
