pub struct SessionExecutionArgs {Show 23 fields
pub agent: Arc<Agent>,
pub session_id: String,
pub session: Session,
pub tools_override: Option<Arc<dyn ToolExecutor>>,
pub provider_override: Option<Arc<dyn LLMProvider>>,
pub model_roster: ModelRoster,
pub reasoning_effort: Option<ReasoningEffort>,
pub reasoning_effort_source: String,
pub auxiliary_model_resolver: Option<Arc<dyn Fn() -> AuxiliaryModelConfig + Send + Sync>>,
pub disabled_tools: Option<BTreeSet<String>>,
pub disabled_skill_ids: Option<BTreeSet<String>>,
pub selected_skill_ids: Option<Vec<String>>,
pub selected_skill_mode: Option<String>,
pub cancel_token: CancellationToken,
pub mpsc_tx: Sender<AgentEvent>,
pub image_fallback: Option<ImageFallbackConfig>,
pub gold_config: Option<GoldConfig>,
pub guardian_config: Option<GuardianConfig>,
pub guardian_spawner: Option<Arc<dyn GuardianSpawner>>,
pub app_data_dir: Option<PathBuf>,
pub runners: Arc<RwLock<HashMap<String, AgentRunner>>>,
pub sessions_cache: SessionCache,
pub on_complete: Option<SessionCompletionHook>,
}Expand description
Arguments for spawning a background agent execution.
This is the crate-agnostic equivalent of the server’s SpawnAgentExecution.
It holds everything needed to run the agent loop and persist the result,
without depending on HTTP types or AppState.
Fields§
§agent: Arc<Agent>§session_id: String§session: Session§tools_override: Option<Arc<dyn ToolExecutor>>§provider_override: Option<Arc<dyn LLMProvider>>§model_roster: ModelRosterCohesive primary + auxiliary model/provider selection. The primary
model is required for a spawn (see ModelRoster::model); the three
auxiliary roles default to their Config::get_* fallbacks when None.
reasoning_effort: Option<ReasoningEffort>§reasoning_effort_source: String§auxiliary_model_resolver: Option<Arc<dyn Fn() -> AuxiliaryModelConfig + Send + Sync>>§disabled_tools: Option<BTreeSet<String>>§disabled_skill_ids: Option<BTreeSet<String>>§selected_skill_ids: Option<Vec<String>>§selected_skill_mode: Option<String>§cancel_token: CancellationToken§mpsc_tx: Sender<AgentEvent>§image_fallback: Option<ImageFallbackConfig>§gold_config: Option<GoldConfig>§guardian_config: Option<GuardianConfig>Optional guardian adversarial-review gate configuration.
guardian_spawner: Option<Arc<dyn GuardianSpawner>>Late-bound guardian reviewer spawner (server-provided; the runner cannot construct a child directly).
app_data_dir: Option<PathBuf>§runners: Arc<RwLock<HashMap<String, AgentRunner>>>§sessions_cache: SessionCache§on_complete: Option<SessionCompletionHook>Optional bespoke finalization, run after the runner is finalized and
before the session is persisted. See SessionCompletionHook.
Auto Trait Implementations§
impl !RefUnwindSafe for SessionExecutionArgs
impl !Sync for SessionExecutionArgs
impl !UnwindSafe for SessionExecutionArgs
impl Freeze for SessionExecutionArgs
impl Send for SessionExecutionArgs
impl Unpin for SessionExecutionArgs
impl UnsafeUnpin for SessionExecutionArgs
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more