pub struct GoalConfig {Show 14 fields
pub enabled: bool,
pub inject_into_system_prompt: bool,
pub max_text_chars: usize,
pub default_token_budget: Option<u64>,
pub max_history: usize,
pub autonomous_enabled: bool,
pub autonomous_max_turns: u32,
pub supervisor_provider: Option<ProviderName>,
pub verify_interval: u32,
pub supervisor_timeout_secs: u64,
pub max_stuck_count: u32,
pub autonomous_turn_delay_ms: u64,
pub autonomous_turn_timeout_secs: u64,
pub max_supervisor_fail_count: u32,
}Expand description
Long-horizon goal lifecycle configuration ([goals] TOML section).
When enabled, the agent tracks a single active goal across turns, injecting an
<active_goal> block into the volatile system-prompt region and accounting for
token consumption per turn.
Set autonomous_enabled = true to allow the agent to run multi-turn goal execution
without waiting for user input between turns. A supervisor LLM call periodically checks
whether the goal condition has been satisfied.
§Example (TOML)
[goals]
enabled = true
autonomous_enabled = true
autonomous_max_turns = 20
supervisor_provider = "fast"
verify_interval = 5
supervisor_timeout_secs = 30
max_stuck_count = 3
autonomous_turn_delay_ms = 500
default_token_budget = 50000Fields§
§enabled: boolEnable the goal lifecycle subsystem. Default: false.
inject_into_system_prompt: boolInject <active_goal> block into the volatile system-prompt region. Default: true.
max_text_chars: usizeMaximum characters allowed for goal text at creation time. Default: 2000.
default_token_budget: Option<u64>Default token budget for new goals (None = unlimited). Default: None.
max_history: usizeMaximum number of goals to return in /goal list. Default: 50.
autonomous_enabled: boolEnable autonomous multi-turn execution mode (/goal create ... --auto). Default: false.
autonomous_max_turns: u32Maximum number of turns the agent may run without user input per session. Default: 20.
supervisor_provider: Option<ProviderName>Provider name for the supervisor verifier LLM call (references [[llm.providers]] name).
Falls back to the main provider when None.
verify_interval: u32How many turns to execute between supervisor verification checks. Default: 5.
supervisor_timeout_secs: u64Timeout in seconds for a single supervisor verification LLM call. Default: 30.
max_stuck_count: u32Maximum consecutive stuck-turn detections before the session is aborted. Default: 3.
autonomous_turn_delay_ms: u64Delay in milliseconds between autonomous turns to avoid busy-looping. Default: 500.
autonomous_turn_timeout_secs: u64Maximum wall-clock time in seconds for a single autonomous LLM turn before it is
cancelled and the session transitions to Stuck. Default: 300 (5 minutes).
max_supervisor_fail_count: u32Maximum consecutive supervisor verification failures before the session is paused.
Default: 3.
Trait Implementations§
Source§impl Clone for GoalConfig
impl Clone for GoalConfig
Source§fn clone(&self) -> GoalConfig
fn clone(&self) -> GoalConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more