#[repr(u32)]pub enum EventTag {
Show 36 variants
ProjectTrust = 0,
ResourcesDiscover = 1,
SessionStart = 2,
SessionInfoChanged = 3,
SessionBeforeSwitch = 4,
SessionBeforeFork = 5,
SessionBeforeCompact = 6,
SessionCompact = 7,
SessionShutdown = 8,
SessionBeforeTree = 9,
SessionTree = 10,
Context = 11,
BeforeProviderRequest = 12,
BeforeProviderHeaders = 13,
AfterProviderResponse = 14,
BeforeAgentStart = 15,
AgentStart = 16,
AgentEnd = 17,
AgentSettled = 18,
TurnStart = 19,
TurnEnd = 20,
MessageStart = 21,
MessageUpdate = 22,
MessageEnd = 23,
ToolExecutionStart = 24,
ToolExecutionUpdate = 25,
ToolExecutionEnd = 26,
ModelSelect = 27,
ThinkingLevelSelect = 28,
ToolCall = 29,
ToolResult = 30,
UserBash = 31,
Input = 32,
BeforeTuiStart = 33,
UiPromptStart = 34,
UiPromptEnd = 35,
}Expand description
Discriminant for StablePluginEvent, one variant per pi on() category
(33 total) plus one rpi-specific category (34 total). #[repr(u32)] pins
the discriminant width.
The 33 Pi categories (verified against extensions/types.ts:1203-1244):
project_trust, resources_discover, session_start, session_info_changed,
session_before_switch, session_before_fork, session_before_compact,
session_compact, session_shutdown, session_before_tree, session_tree,
context, before_provider_request, before_provider_headers,
after_provider_response, before_agent_start, agent_start, agent_end,
agent_settled, turn_start, turn_end, message_start, message_update,
message_end, tool_execution_start, tool_execution_update,
tool_execution_end, model_select, thinking_level_select, tool_call,
tool_result, user_bash, input.
BeforeTuiStart is rpi-specific (not a Pi category): dispatched once
before the interactive TUI is initialized, so extensions can prepare
(connect a server, load a resource) before the UI starts. Appended last so
existing discriminants keep their values (ABI-safe for already-compiled
plugins).
Variants§
ProjectTrust = 0
ResourcesDiscover = 1
SessionStart = 2
SessionInfoChanged = 3
SessionBeforeSwitch = 4
SessionBeforeFork = 5
SessionBeforeCompact = 6
SessionCompact = 7
SessionShutdown = 8
SessionBeforeTree = 9
SessionTree = 10
Context = 11
BeforeProviderRequest = 12
BeforeProviderHeaders = 13
AfterProviderResponse = 14
BeforeAgentStart = 15
AgentStart = 16
AgentEnd = 17
AgentSettled = 18
TurnStart = 19
TurnEnd = 20
MessageStart = 21
MessageUpdate = 22
MessageEnd = 23
ToolExecutionStart = 24
ToolExecutionUpdate = 25
ToolExecutionEnd = 26
ModelSelect = 27
ThinkingLevelSelect = 28
ToolCall = 29
ToolResult = 30
UserBash = 31
Input = 32
BeforeTuiStart = 33
rpi-specific: dispatched before the interactive TUI initializes (not a
Pi on() category). Appended last so existing discriminants are stable.
UiPromptStart = 34
Pi on() category: dispatched when the TUI shows an interactive prompt
(selector, dialog, etc.) that blocks agent work.
UiPromptEnd = 35
Pi on() category: dispatched when the TUI prompt is dismissed.
Trait Implementations§
impl Copy for EventTag
impl Eq for EventTag
impl StructuralPartialEq for EventTag
Auto Trait Implementations§
impl Freeze for EventTag
impl RefUnwindSafe for EventTag
impl Send for EventTag
impl Sync for EventTag
impl Unpin for EventTag
impl UnsafeUnpin for EventTag
impl UnwindSafe for EventTag
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.