pub struct TokenBudget {
pub max_tokens: usize,
pub trim_trigger: f32,
pub truncation_marker: String,
}Expand description
Configurable token budget. Default 60_000 tokens with a 70% trim
trigger.
Fields§
§max_tokens: usize§trim_trigger: f32When total estimate exceeds trim_trigger * max_tokens, start
truncating tool results.
truncation_marker: StringReplacement text inserted in place of truncated tool result content.
Trait Implementations§
Source§impl Clone for TokenBudget
impl Clone for TokenBudget
Source§fn clone(&self) -> TokenBudget
fn clone(&self) -> TokenBudget
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl ContextTransform for TokenBudget
impl ContextTransform for TokenBudget
fn transform<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
messages: Vec<AgentMessage>,
cx: &'life1 TransformContext<'life2>,
) -> Pin<Box<dyn Future<Output = Vec<AgentMessage>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§fn should_run(
&self,
_messages: &[AgentMessage],
_cx: &TransformContext<'_>,
) -> bool
fn should_run( &self, _messages: &[AgentMessage], _cx: &TransformContext<'_>, ) -> bool
Cheap predicate the loop consults before invoking
transform.
Default returns true — preserves existing behavior. Plugins that
can decide locally that they have nothing to do (no browser
snapshots in history, history under budget, idle timer not
elapsed, no queued recovery notice, …) should override to return
false in those states. Read moreSource§impl Debug for TokenBudget
impl Debug for TokenBudget
Source§impl Default for TokenBudget
impl Default for TokenBudget
Source§impl Plugin for TokenBudget
impl Plugin for TokenBudget
Source§fn capabilities(&self) -> PluginCapabilities
fn capabilities(&self) -> PluginCapabilities
Which capabilities this plugin implements. Default: none — meaning
pure observation by inheriting from
EventObserver. Override and
return the relevant set when adding behavior.Auto Trait Implementations§
impl Freeze for TokenBudget
impl RefUnwindSafe for TokenBudget
impl Send for TokenBudget
impl Sync for TokenBudget
impl Unpin for TokenBudget
impl UnsafeUnpin for TokenBudget
impl UnwindSafe for TokenBudget
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