pub struct AgentProfile {Show 20 fields
pub name: Option<String>,
pub description: Option<String>,
pub harness: Option<HarnessId>,
pub model: Option<String>,
pub mode: Option<AgentMode>,
pub model_invocable: bool,
pub user_invocable: bool,
pub had_model_invocable_field: bool,
pub had_user_invocable_field: bool,
pub approval: Option<ApprovalMode>,
pub sandbox: Option<SandboxMode>,
pub network: Option<NetworkPolicy>,
pub network_allow: PermissionSet<NetworkHost>,
pub network_deny: PermissionSet<NetworkHost>,
pub effort: Option<EffortLevel>,
pub skills: SkillsSpec,
pub subagents: Vec<String>,
pub tools: EffectiveToolPolicy,
pub harness_overrides: HarnessOverrides,
pub model_policies: Vec<ModelPolicyRule>,
}Expand description
Strongly-typed representation of an agent profile’s frontmatter.
Parsed from YAML frontmatter by read.
Used for:
- Compile-time validation (mode values, passthrough shape)
- Dual-surface routing (harness → output target)
- Per-target lowering (field lowering per agent-compilation-mapping.md)
Fields§
§name: Option<String>§description: Option<String>§harness: Option<HarnessId>§model: Option<String>§mode: Option<AgentMode>§model_invocable: bool§user_invocable: boolWhether the user can invoke this agent directly (slash command, picker, etc.).
had_model_invocable_field: booltrue when source frontmatter explicitly set model-invocable.
had_user_invocable_field: booltrue when source frontmatter explicitly set user-invocable.
approval: Option<ApprovalMode>§sandbox: Option<SandboxMode>§network: Option<NetworkPolicy>§network_allow: PermissionSet<NetworkHost>§network_deny: PermissionSet<NetworkHost>§effort: Option<EffortLevel>§skills: SkillsSpec§subagents: Vec<String>§tools: EffectiveToolPolicytools: and disallowed-tools: as one rule list. An allowlist has an explicit
'*': deny; deprecated list form only grants its entries.
harness_overrides: HarnessOverrides§model_policies: Vec<ModelPolicyRule>Implementations§
Source§impl AgentProfile
impl AgentProfile
Trait Implementations§
Source§impl Clone for AgentProfile
impl Clone for AgentProfile
Source§impl Debug for AgentProfile
impl Debug for AgentProfile
Auto Trait Implementations§
impl Forget for AgentProfile
impl Freeze for AgentProfile
impl RefUnwindSafe for AgentProfile
impl Send for AgentProfile
impl Sync for AgentProfile
impl Unpin for AgentProfile
impl UnsafeUnpin for AgentProfile
impl UnwindSafe for AgentProfile
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