pub struct Agent {Show 24 fields
pub id: String,
pub name: String,
pub version: String,
pub description: String,
pub framework: AgentFramework,
pub mode: AgentMode,
pub model_provider: String,
pub model_name: String,
pub backup_provider: Option<String>,
pub backup_model: Option<String>,
pub system_prompt: Option<String>,
pub max_turns: Option<u32>,
pub skills: Vec<String>,
pub guardrails: Vec<Guardrail>,
pub a2a_endpoint: Option<String>,
pub ingredients: Vec<Ingredient>,
pub tags: Vec<String>,
pub status: AgentStatus,
pub kitchen_id: Option<String>,
pub resolved_config: Option<Value>,
pub created_by: Option<String>,
pub created_at: DateTime<Utc>,
pub updated_at: DateTime<Utc>,
pub metadata: Option<Value>,
}Expand description
An Agent registered in AgentOven — a versioned, deployable AI unit.
Fields§
§id: StringUnique identifier.
name: StringHuman-readable name (must be unique within a kitchen/workspace).
version: StringSemantic version (e.g., “1.0.0”).
description: StringDescription of what this agent does.
framework: AgentFrameworkThe framework used to build this agent.
mode: AgentModeAgent mode: managed (AgentOven executor) or external (A2A proxy).
model_provider: StringPrimary model provider name.
model_name: StringPrimary model name.
backup_provider: Option<String>Backup model provider for failover.
backup_model: Option<String>Backup model name for failover.
system_prompt: Option<String>System prompt / instructions.
max_turns: Option<u32>Maximum turns for managed agentic loop.
skills: Vec<String>Agent skills/capabilities.
guardrails: Vec<Guardrail>Guardrails applied to this agent.
a2a_endpoint: Option<String>A2A endpoint for external agents.
ingredients: Vec<Ingredient>Ingredients: models, tools, prompts, and data sources.
Tags for categorization and search.
status: AgentStatusCurrent deployment status.
kitchen_id: Option<String>The kitchen (workspace) this agent belongs to. Accepts both “kitchen” and “kitchen_id” from JSON.
resolved_config: Option<Value>Resolved configuration (populated by the control plane after baking).
created_by: Option<String>Who created this agent.
created_at: DateTime<Utc>When this version was created.
updated_at: DateTime<Utc>When this version was last updated.
metadata: Option<Value>Optional metadata.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Agent
impl<'de> Deserialize<'de> for Agent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for Agent
impl RefUnwindSafe for Agent
impl Send for Agent
impl Sync for Agent
impl Unpin for Agent
impl UnsafeUnpin for Agent
impl UnwindSafe for Agent
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request