Skip to main content

ReminderTracker

Struct ReminderTracker 

Source
pub struct ReminderTracker { /* private fields */ }
Expand description

Tracks tool usage for periodic reminder generation.

This tracker monitors which tools are used, how often, and whether actions are being repeated. It provides the data needed to generate contextual reminders at appropriate times.

Implementations§

Source§

impl ReminderTracker

Source

pub fn new() -> Self

Creates a new reminder tracker.

Source

pub fn record_tool_use(&mut self, tool_name: &str, input: &Value)

Records that a tool was used with the given input.

This updates the last-used turn for the tool and tracks whether the same action is being repeated.

Source

pub const fn current_turn(&self) -> usize

Returns the current turn number.

Source

pub fn tool_last_used(&self, tool_name: &str) -> Option<usize>

Returns the turn when a tool was last used, if ever.

Source

pub const fn repeated_action_count(&self) -> usize

Returns the number of times the current action has been repeated.

Source

pub fn get_periodic_reminders(&self, config: &ReminderConfig) -> Vec<String>

Generates periodic reminders based on current state.

This checks various conditions and returns appropriate reminders:

  • TodoWrite reminder if not used for several turns
  • Repeated action warning if same action performed multiple times
Source

pub const fn advance_turn(&mut self)

Advances to the next turn.

Source

pub fn reset(&mut self)

Resets the tracker to initial state.

Trait Implementations§

Source§

impl Debug for ReminderTracker

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for ReminderTracker

Source§

fn default() -> ReminderTracker

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more