pub struct AgentConfig {Show 14 fields
pub name: String,
pub max_tool_iterations: usize,
pub auto_update_check: bool,
pub instruction_files: Vec<PathBuf>,
pub instruction_auto_detect: bool,
pub max_tool_retries: usize,
pub tool_repeat_threshold: usize,
pub max_retry_duration_secs: u64,
pub focus: FocusConfig,
pub tool_filter: ToolFilterConfig,
pub budget_hint_enabled: bool,
pub supervisor: TaskSupervisorConfig,
pub time_reminder_enabled: bool,
pub time_reminder_interval_requests: u32,
}Expand description
Core agent behavior configuration, nested under [agent] in TOML.
Controls the agent’s name, tool-loop limits, instruction loading, and retry
behavior. All fields have sensible defaults; only name is typically changed
by end users.
§Example (TOML)
[agent]
name = "Zeph"
max_tool_iterations = 15
max_tool_retries = 3Fields§
§name: StringHuman-readable agent name surfaced in the TUI and Telegram header. Default: "Zeph".
max_tool_iterations: usizeMaximum number of tool-call iterations per agent turn before the loop is aborted.
Must be <= 100. Default: 10.
auto_update_check: boolCheck for new Zeph releases at startup. Default: true.
instruction_files: Vec<PathBuf>Additional instruction files to always load, regardless of provider.
instruction_auto_detect: boolWhen true, automatically detect provider-specific instruction files
(e.g. CLAUDE.md for Claude, AGENTS.md for OpenAI).
max_tool_retries: usizeMaximum retry attempts for transient tool errors (0 to disable).
tool_repeat_threshold: usizeNumber of identical tool+args calls within the recent window to trigger repeat-detection abort (0 to disable).
max_retry_duration_secs: u64Maximum total wall-clock time (seconds) to spend on retries for a single tool call.
focus: FocusConfigFocus-based active context compression configuration (#1850).
tool_filter: ToolFilterConfigDynamic tool schema filtering configuration (#2020).
budget_hint_enabled: boolInject a <budget> XML block into the volatile system prompt section so the LLM
can self-regulate tool calls and cost. Self-suppresses when no budget data is
available (#2267).
supervisor: TaskSupervisorConfigBackground task supervisor tuning. Controls concurrency limits and turn-boundary abort.
time_reminder_enabled: boolInject a <current_time> reminder into the volatile system prompt block every N agent
turns (#6361, spec 070 FR-003). Opt-in — defaults to false so existing prompt content
and token budget are unaffected unless explicitly enabled (NFR-005). Complementary to
the always-available get_current_time tool, which covers time-awareness within a
single long-running turn where this per-turn injection cannot re-fire.
time_reminder_interval_requests: u32Number of agent turns between <current_time> reminder injections when
time_reminder_enabled = true (#6361, spec 070 FR-004). Named after Codex’s
reminder_interval_model_requests, but counts agent turn-cycles (sidequest.turn_counter)
rather than individual model requests — the mandated injection hook
(rebuild_system_prompt) runs once per turn, before the tool loop, so a literal
per-model-request cadence is unreachable there.