#[repr(u32)]pub enum RuntimeActionId {
Show 23 variants
SendMessage = 0,
SendUserMessage = 1,
AppendEntry = 2,
SetSessionName = 3,
GetActiveTools = 4,
SetActiveTools = 5,
SetModel = 6,
GetThinkingLevel = 7,
SetThinkingLevel = 8,
Compact = 9,
GetSystemPrompt = 10,
NewSession = 11,
Fork = 12,
NavigateTree = 13,
SwitchSession = 14,
Reload = 15,
GetCliFlag = 16,
UiDialog = 17,
SetStatus = 18,
SetEditorText = 19,
GetSessionBranch = 20,
StdioLifecycle = 21,
UiComponent = 22,
}Expand description
Identifier for a host runtime action the plugin may invoke via
PluginApi::runtime_action. One slot dispatches all actions; the numeric
id crosses the FFI boundary as a u32 and the host validates it with
TryFrom<u32> before constructing this enum. Args/results cross as JSON
strings.
Variants§
SendMessage = 0
SendUserMessage = 1
AppendEntry = 2
SetSessionName = 3
GetActiveTools = 4
SetActiveTools = 5
SetModel = 6
GetThinkingLevel = 7
SetThinkingLevel = 8
Compact = 9
GetSystemPrompt = 10
NewSession = 11
Fork = 12
SwitchSession = 14
Reload = 15
GetCliFlag = 16
Read a parsed CLI flag by name. Args: {"name":"flag"}; result:
{"value": <bool|string|null>}.
UiDialog = 17
Open/poll/cancel a host-provided interactive UI request. The payload is
a JSON object with op (open, poll, or cancel) and a unique
requestId; hosts without an attached TUI return an explicit error.
SetStatus = 18
Publish a short status string for the host’s UI (TUI footer).
Args: {"key":"langfuse","value":"langfuse ✓ (trace sent)"}; an
empty/absent value clears that key. Result: {"ok":true,"changed":bool}.
Headless hosts accept the write but have nothing to render.
Legacy footer text (key, value). Use UiComponent for registered UI.
SetEditorText = 19
Put text into the interactive editor (the prompt input box) instead of
sending it. Args: {"text":"...", "mode":"append"|"replace", "autoSendMs": 3000} (omit/0 for manual send only). Result:
{"ok":true,"chars":N}. A headless host has no editor and accepts the
write without rendering it, mirroring RuntimeActionId::SetStatus.
GetSessionBranch = 20
Return the current session branch entries oldest-first as JSON.
Args: {}; result: {"entries":[...]}.
StdioLifecycle = 21
Inspect or finish a plugin-owned stdio server lifecycle. Args:
{"op":"status"} or {"op":"finish","exitCode":0}. Only the
declaring owner may finish; the host performs normal session shutdown.
UiComponent = 22
Plugin-owned text component lifecycle and content updates.
Trait Implementations§
Source§impl Clone for RuntimeActionId
impl Clone for RuntimeActionId
impl Copy for RuntimeActionId
Source§impl Debug for RuntimeActionId
impl Debug for RuntimeActionId
impl Eq for RuntimeActionId
Source§impl From<RuntimeActionId> for u32
impl From<RuntimeActionId> for u32
Source§fn from(value: RuntimeActionId) -> Self
fn from(value: RuntimeActionId) -> Self
Source§impl PartialEq for RuntimeActionId
impl PartialEq for RuntimeActionId
impl StructuralPartialEq for RuntimeActionId
Auto Trait Implementations§
impl Freeze for RuntimeActionId
impl RefUnwindSafe for RuntimeActionId
impl Send for RuntimeActionId
impl Sync for RuntimeActionId
impl Unpin for RuntimeActionId
impl UnsafeUnpin for RuntimeActionId
impl UnwindSafe for RuntimeActionId
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.