pub struct ExecuteRequest {Show 19 fields
pub initial_message: String,
pub event_tx: Sender<AgentEvent>,
pub cancel_token: CancellationToken,
pub tools: Option<Arc<dyn ToolExecutor>>,
pub provider_override: Option<Arc<dyn LLMProvider>>,
pub model_roster: ModelRoster,
pub reasoning_effort: Option<ReasoningEffort>,
pub auxiliary_model_resolver: Option<Arc<dyn Fn() -> AuxiliaryModelConfig + Send + Sync>>,
pub disabled_filter_resolver: Option<Arc<dyn Fn() -> (BTreeSet<String>, BTreeSet<String>) + 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 image_fallback: Option<ImageFallbackConfig>,
pub gold_config: Option<GoldConfig>,
pub guardian_config: Option<GuardianConfig>,
pub guardian_spawner: Option<Arc<dyn GuardianSpawner>>,
pub bash_resume_hook: Option<Arc<dyn BashResumeHook>>,
pub app_data_dir: Option<PathBuf>,
}Expand description
Per-request parameters for agent execution.
Required fields (initial_message, event_tx, cancel_token) must always
be provided. The provider is taken from AgentRuntime::provider; tools
default to AgentRuntime::default_tools when None.
Fields§
§initial_message: String§event_tx: Sender<AgentEvent>§cancel_token: CancellationToken§tools: Option<Arc<dyn ToolExecutor>>Override runtime’s default_tools. When None, uses the runtime’s
default tool executor.
provider_override: Option<Arc<dyn LLMProvider>>Override the LLM provider for this execution. When None, uses the
runtime’s shared provider handle.
model_roster: ModelRosterCohesive primary + auxiliary model/provider selection. Replaces the old
model / provider_name / provider_type / fast_model(+provider) /
background_model(+provider) / summarization_model(+provider) clump.
Per-role None preserves the same None → Config::get_* fallbacks
applied during AgentRuntime::execute.
reasoning_effort: Option<ReasoningEffort>§auxiliary_model_resolver: Option<Arc<dyn Fn() -> AuxiliaryModelConfig + Send + Sync>>Optional per-round resolver for auxiliary model settings that should be re-read from live global config between rounds.
disabled_filter_resolver: Option<Arc<dyn Fn() -> (BTreeSet<String>, BTreeSet<String>) + Send + Sync>>Optional per-round live resolver for the disabled tool/skill sets (#136).
When None, the snapshotted disabled_tools/disabled_skill_ids are used.
disabled_tools: Option<BTreeSet<String>>When None, falls back to Config::disabled_tool_names().
disabled_skill_ids: Option<BTreeSet<String>>When None, falls back to Config::disabled_skill_ids().
selected_skill_ids: Option<Vec<String>>§selected_skill_mode: Option<String>§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 spawner for the guardian reviewer child (wired by the server; the runner cannot construct a child directly).
bash_resume_hook: Option<Arc<dyn BashResumeHook>>Late-bound hook that arranges a self-resume after a background-bash suspend (issue #84 Phase 2b). Wired by the server.
app_data_dir: Option<PathBuf>Bamboo application data directory (typically ~/.bamboo).