pub struct BoundaryGuide;Expand description
Tells the agent to lead with the limitation and stop there.
Deliberately phrased as a test the model applies — “would this act on the world?” — rather than a list of forbidden verbs. A list is a thing to be outside of; the question generalises to whatever the app’s tool belt does not cover.
Trait Implementations§
Source§impl Guide for BoundaryGuide
impl Guide for BoundaryGuide
fn id(&self) -> &GuideId
fn kind(&self) -> Execution
fn scope(&self) -> &GuideScope
Source§fn apply<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ctx: &'life1 mut Context,
_w: &'life2 World,
) -> Pin<Box<dyn Future<Output = Result<(), GuideError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn apply<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ctx: &'life1 mut Context,
_w: &'life2 World,
) -> Pin<Box<dyn Future<Output = Result<(), GuideError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Called ONCE per session, at the start, before the first model call.
Use for content that doesn’t change across iterations (profile,
skills catalogue, static instructions).
Source§fn apply_before_iter<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_ctx: &'life1 mut Context,
_world: &'life2 World,
) -> Pin<Box<dyn Future<Output = Result<(), GuideError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn apply_before_iter<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_ctx: &'life1 mut Context,
_world: &'life2 World,
) -> Pin<Box<dyn Future<Output = Result<(), GuideError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Called BEFORE every
model.complete() call within a session
(default: no-op). Override to inject content that should adapt to
the current conversation state — most useful for recall-style guides
that want to re-query an external store based on the last user
message. Read moreAuto Trait Implementations§
impl Freeze for BoundaryGuide
impl RefUnwindSafe for BoundaryGuide
impl Send for BoundaryGuide
impl Sync for BoundaryGuide
impl Unpin for BoundaryGuide
impl UnsafeUnpin for BoundaryGuide
impl UnwindSafe for BoundaryGuide
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