pub struct AgentManifest {Show 15 fields
pub name: String,
pub version: String,
pub description: String,
pub role: AgentRole,
pub capabilities: AgentCapabilities,
pub agency: Agency,
pub tools: Vec<String>,
pub topics_publish: Vec<String>,
pub topics_subscribe: Vec<String>,
pub resources: AgentResources,
pub interface: AgentInterface,
pub health: AgentHealth,
pub dependencies: AgentDependencies,
pub filesystem_access: Vec<String>,
pub labels: HashMap<String, String>,
}Expand description
Agent manifest, parsed from .agent.toml files.
Describes what an agent does, what capabilities it needs, and how to communicate with it. Analogous to systemd unit files but for AI agents.
Fields§
§name: StringAgent name (unique within the OS).
version: StringSemantic version.
description: StringHuman-readable description.
role: AgentRoleAgent role.
capabilities: AgentCapabilitiesCapabilities this agent needs.
agency: AgencyAgency configuration (spawn permissions).
tools: Vec<String>Tools this agent is allowed to use.
topics_publish: Vec<String>IPC topics this agent publishes to.
topics_subscribe: Vec<String>IPC topics this agent subscribes to.
resources: AgentResourcesResource limits.
interface: AgentInterfaceCommunication interface.
health: AgentHealthHealth check configuration.
dependencies: AgentDependenciesDependencies on other agents.
filesystem_access: Vec<String>Filesystem paths this agent can access.
labels: HashMap<String, String>Additional labels/metadata.
Trait Implementations§
Source§impl Clone for AgentManifest
impl Clone for AgentManifest
Source§impl Debug for AgentManifest
impl Debug for AgentManifest
Source§impl<'de> Deserialize<'de> for AgentManifest
impl<'de> Deserialize<'de> for AgentManifest
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for AgentManifest
impl RefUnwindSafe for AgentManifest
impl Send for AgentManifest
impl Sync for AgentManifest
impl Unpin for AgentManifest
impl UnsafeUnpin for AgentManifest
impl UnwindSafe for AgentManifest
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more