pub struct AppManifest {
pub name: String,
pub version: String,
pub description: String,
pub author: Option<String>,
pub license: Option<String>,
pub agents: Vec<AgentSpec>,
pub tools: Vec<ToolSpec>,
pub services: Vec<ServiceSpec>,
pub capabilities: AppCapabilities,
pub hooks: AppHooks,
}Expand description
Application manifest, parsed from weftapp.toml or weftapp.json.
Declares the agents, tools, services, capabilities, and lifecycle hooks for a WeftOS application.
Fields§
§name: StringApplication name (unique identifier).
version: StringSemantic version string.
description: StringHuman-readable description.
Application author.
license: Option<String>License identifier (SPDX).
agents: Vec<AgentSpec>Agent specifications.
tools: Vec<ToolSpec>Tool specifications.
services: Vec<ServiceSpec>Service specifications (containers, processes).
capabilities: AppCapabilitiesApplication-level capability requirements.
hooks: AppHooksLifecycle hooks.
Implementations§
Source§impl AppManifest
impl AppManifest
Sourcepub fn from_json_str(json: &str) -> Result<Self, AppError>
pub fn from_json_str(json: &str) -> Result<Self, AppError>
Parse an AppManifest from a JSON string.
The manifest is validated after parsing; structural errors
(empty name, duplicate IDs, etc.) are returned as
AppError::ManifestInvalid.
Trait Implementations§
Source§impl Clone for AppManifest
impl Clone for AppManifest
Source§fn clone(&self) -> AppManifest
fn clone(&self) -> AppManifest
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AppManifest
impl Debug for AppManifest
Source§impl<'de> Deserialize<'de> for AppManifest
impl<'de> Deserialize<'de> for AppManifest
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 AppManifest
impl RefUnwindSafe for AppManifest
impl Send for AppManifest
impl Sync for AppManifest
impl Unpin for AppManifest
impl UnsafeUnpin for AppManifest
impl UnwindSafe for AppManifest
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,
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