pub struct ManageSkillTool { /* private fields */ }Expand description
Tool for managing skills at runtime.
Allows the Agent to create, list, and remove skills, forming the minimal self-bootstrap loop: Agent writes a skill → skill is loaded into the registry → next generation includes the skill in the system prompt.
Implementations§
Source§impl ManageSkillTool
impl ManageSkillTool
Sourcepub fn new(registry: Arc<SkillRegistry>, skills_dir: PathBuf) -> Self
pub fn new(registry: Arc<SkillRegistry>, skills_dir: PathBuf) -> Self
Create a new ManageSkillTool.
registry: shared skill registry for the active agent sessionskills_dir: directory where skill .md files are persisted
Trait Implementations§
Source§impl Tool for ManageSkillTool
impl Tool for ManageSkillTool
Source§fn description(&self) -> &str
fn description(&self) -> &str
Human-readable description for LLM
Source§fn parameters(&self) -> Value
fn parameters(&self) -> Value
JSON Schema for tool parameters
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
args: &'life1 Value,
_ctx: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolOutput>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
args: &'life1 Value,
_ctx: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolOutput>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Execute the tool with given arguments
Auto Trait Implementations§
impl Freeze for ManageSkillTool
impl RefUnwindSafe for ManageSkillTool
impl Send for ManageSkillTool
impl Sync for ManageSkillTool
impl Unpin for ManageSkillTool
impl UnsafeUnpin for ManageSkillTool
impl UnwindSafe for ManageSkillTool
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> 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> 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