Skip to main content

InferenceEvent

Enum InferenceEvent 

Source
pub enum InferenceEvent {
Show 22 variants Token(String), MutedToken(String), Thought(String), VoiceStatus(String), ToolCallStart { id: String, name: String, args: String, }, ToolCallResult { id: String, name: String, output: String, is_error: bool, }, ApprovalRequired { id: String, name: String, display: String, diff: Option<String>, responder: Sender<bool>, }, Done, Error(String), ProviderStatus { state: ProviderRuntimeState, summary: String, }, OperatorCheckpoint { state: OperatorCheckpointState, summary: String, }, RecoveryRecipe { summary: String, }, McpStatus { state: McpRuntimeState, summary: String, }, CompactionPressure { estimated_tokens: usize, threshold_tokens: usize, percent: u8, }, PromptPressure { estimated_input_tokens: usize, reserved_output_tokens: usize, estimated_total_tokens: usize, context_length: usize, percent: u8, }, TaskProgress { id: String, label: String, progress: u8, }, UsageUpdate(TokenUsage), RuntimeProfile { model_id: String, context_length: usize, }, VeinStatus { file_count: usize, embedded_count: usize, docs_only: bool, }, VeinContext { paths: Vec<String>, }, SoulReroll { species: String, rarity: String, shiny: bool, personality: String, }, EmbedProfile { model_id: Option<String>, },
}

Variants§

§

Token(String)

A text token to append to the current assistant message.

§

MutedToken(String)

A text token to be displayed on screen but NOT spoken (e.g. startup greeting).

§

Thought(String)

Internal model reasoning (shown in side panel, not dialogue).

§

VoiceStatus(String)

Critical diagnostic feedback from the voice synthesis engine.

§

ToolCallStart

A tool call is starting – show a status line in the TUI.

Fields

§name: String
§args: String
§

ToolCallResult

A tool call completed – show result in the TUI.

Fields

§name: String
§output: String
§is_error: bool
§

ApprovalRequired

A risky tool requires explicit user approval. The TUI must send true (approved) or false (rejected) via responder. When diff is Some, the modal renders a coloured before/after diff preview.

Fields

§name: String
§display: String
§diff: Option<String>

Pre-formatted diff: lines starting with “- “ are removals, “+ “ are additions, “—” is a file header. None means a plain high-risk approval (no diff).

§responder: Sender<bool>
§

Done

The current agent turn is complete.

§

Error(String)

An error occurred during inference.

§

ProviderStatus

Compact provider/runtime state for the operator surface.

Fields

§summary: String
§

OperatorCheckpoint

Typed operator checkpoint/blocker state for SPECULAR and recovery UIs.

Fields

§summary: String
§

RecoveryRecipe

Typed recovery recipe summary for operator/debug surfaces.

Fields

§summary: String
§

McpStatus

Compact MCP/runtime server health for the operator surface.

Fields

§summary: String
§

CompactionPressure

Current compaction pressure against the adaptive threshold.

Fields

§estimated_tokens: usize
§threshold_tokens: usize
§percent: u8
§

PromptPressure

Current total prompt-budget pressure against the live context window.

Fields

§estimated_input_tokens: usize
§reserved_output_tokens: usize
§estimated_total_tokens: usize
§context_length: usize
§percent: u8
§

TaskProgress

A generic task progress update (e.g. for single-agent tool execution).

Fields

§label: String
§progress: u8
§

UsageUpdate(TokenUsage)

Real-time token usage update from the API.

§

RuntimeProfile

The current runtime profile detected from LM Studio.

Fields

§model_id: String
§context_length: usize
§

VeinStatus

Vein index status after each incremental re-index.

Fields

§file_count: usize
§embedded_count: usize
§docs_only: bool
§

VeinContext

File paths the Vein surfaced as relevant to the current turn. Used to populate ACTIVE CONTEXT with retrieval results.

Fields

§paths: Vec<String>
§

SoulReroll

A new companion was hatched mid-session via /reroll.

Fields

§species: String
§rarity: String
§shiny: bool
§personality: String
§

EmbedProfile

Embed model loaded/unloaded mid-session.

Fields

§model_id: Option<String>

Trait Implementations§

Source§

impl Debug for InferenceEvent

Source§

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

Formats the value using the given formatter. 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<S> FromSample<S> for S

Source§

fn from_sample_(s: S) -> S

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> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<F, T> IntoSample<T> for F
where T: FromSample<F>,

Source§

fn into_sample(self) -> T

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> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> ToSample<U> for T
where U: FromSample<T>,

Source§

fn to_sample_(self) -> U

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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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
Source§

impl<S, T> Duplex<S> for T
where T: FromSample<S> + ToSample<S>,