StandardDefinition

Struct StandardDefinition 

Source
pub struct StandardDefinition {
Show 27 fields pub name: String, pub package_name: Option<String>, pub description: String, pub version: Option<String>, pub instructions: String, pub mcp_servers: Option<Vec<McpDefinition>>, pub model_settings: ModelSettings, pub analysis_model_settings: Option<ModelSettings>, pub history_size: Option<usize>, pub strategy: Option<AgentStrategy>, pub icon_url: Option<String>, pub max_iterations: Option<usize>, pub skills: Vec<AgentSkill>, pub sub_agents: Vec<String>, pub tool_format: ToolCallFormat, pub tools: Option<ToolsConfig>, pub file_system: FileSystemMode, pub partials: HashMap<String, String>, pub write_large_tool_responses_to_fs: Option<bool>, pub enable_reflection: Option<bool>, pub enable_todos: Option<bool>, pub browser_config: Option<BrowserAgentConfig>, pub browser_hooks: Option<BrowserHooksConfig>, pub context_size: Option<u32>, pub append_default_instructions: Option<bool>, pub include_scratchpad: Option<bool>, pub hooks: Vec<String>,
}
Expand description

Agent definition - complete configuration for an agent

Fields§

§name: String

The name of the agent.

§package_name: Option<String>

Optional package name that registered this agent (workspace/plugin metadata)

§description: String

A brief description of the agent’s purpose.

§version: Option<String>

The version of the agent.

§instructions: String

Instructions for the agent - serves as an introduction defining what the agent is and does.

§mcp_servers: Option<Vec<McpDefinition>>

A list of MCP server definitions associated with the agent.

§model_settings: ModelSettings

Settings related to the model used by the agent.

§analysis_model_settings: Option<ModelSettings>

Optional lower-level model settings for lightweight analysis helpers

§history_size: Option<usize>

The size of the history to maintain for the agent.

§strategy: Option<AgentStrategy>

The new strategy configuration for the agent.

§icon_url: Option<String>

A2A-specific fields

§max_iterations: Option<usize>§skills: Vec<AgentSkill>§sub_agents: Vec<String>

List of sub-agents that this agent can transfer control to

§tool_format: ToolCallFormat

Tool calling configuration

§tools: Option<ToolsConfig>

Tools configuration for this agent

§file_system: FileSystemMode

Where filesystem and artifact tools should run (server or local)

§partials: HashMap<String, String>

Custom handlebars partials (name -> template path) for use in custom prompts

§write_large_tool_responses_to_fs: Option<bool>

Whether to write large tool responses to filesystem as artifacts (default: false)

§enable_reflection: Option<bool>

Whether to enable reflection using a subagent (default: false)

§enable_todos: Option<bool>

Whether to enable TODO management functionality

§browser_config: Option<BrowserAgentConfig>

Browser configuration for this agent (enables shared Chromium automation)

§browser_hooks: Option<BrowserHooksConfig>

Browser hook configuration (API vs local)

§context_size: Option<u32>

Context size override for this agent (overrides model_settings.context_size)

§append_default_instructions: Option<bool>

Strategy for prompt construction (append default template vs fully custom)

§include_scratchpad: Option<bool>

Whether to include the built-in scratchpad/history in prompts (default: true)

§hooks: Vec<String>

Optional hook names to attach to this agent

Implementations§

Source§

impl StandardDefinition

Source

pub fn should_write_large_tool_responses_to_fs(&self) -> bool

Check if large tool responses should be written to filesystem (default: false)

Source

pub fn should_use_browser(&self) -> bool

Check if browser should be initialized automatically in orchestrator (default: false)

Source

pub fn browser_settings(&self) -> Option<&BrowserAgentConfig>

Returns browser config if defined

Source

pub fn browser_runtime_config(&self) -> Option<DistriBrowserConfig>

Returns the runtime Chromium driver configuration if enabled

Source

pub fn should_persist_browser_session(&self) -> bool

Should browser session state be serialized after tool runs

Source

pub fn is_reflection_enabled(&self) -> bool

Check if reflection is enabled (default: false)

Source

pub fn is_todos_enabled(&self) -> bool

Check if TODO management functionality is enabled (default: false)

Source

pub fn get_effective_context_size(&self) -> u32

Get the effective context size (agent-level override or model settings)

Source

pub fn analysis_model_settings_config(&self) -> ModelSettings

Model settings to use for lightweight browser analysis helpers (e.g., observe_summary commands)

Source

pub fn include_scratchpad(&self) -> bool

Whether to include the persistent scratchpad/history in prompts

Source

pub fn apply_overrides(&mut self, overrides: DefinitionOverrides)

Apply definition overrides to this agent definition

Source§

impl StandardDefinition

Source

pub fn validate(&self) -> Result<()>

Trait Implementations§

Source§

impl Clone for StandardDefinition

Source§

fn clone(&self) -> StandardDefinition

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for StandardDefinition

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for StandardDefinition

Source§

fn default() -> StandardDefinition

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for StandardDefinition

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl From<StandardDefinition> for LlmDefinition

Source§

fn from(definition: StandardDefinition) -> Self

Converts to this type from the input type.
Source§

impl JsonSchema for StandardDefinition

Source§

fn schema_name() -> Cow<'static, str>

The name of the generated JSON Schema. Read more
Source§

fn schema_id() -> Cow<'static, str>

Returns a string that uniquely identifies the schema produced by this type. Read more
Source§

fn json_schema(generator: &mut SchemaGenerator) -> Schema

Generates a JSON Schema for this type. Read more
Source§

fn inline_schema() -> bool

Whether JSON Schemas generated for this type should be included directly in parent schemas, rather than being re-used where possible using the $ref keyword. Read more
Source§

impl Serialize for StandardDefinition

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,