pub enum RpcResponseData {
Show 17 variants
Cancelled {
cancelled: bool,
},
SessionState(RpcSessionState),
Model(Model),
CycleModel(Option<CycleModelData>),
AvailableModels {
models: Vec<Model>,
},
CycleThinkingLevel(Option<CycleThinkingLevelData>),
Compaction(CompactionResult),
Bash(BashResult),
SessionStats(SessionStats),
ExportHtml {
path: String,
},
Fork {
text: String,
cancelled: bool,
},
ForkMessages {
messages: Vec<ForkMessage>,
},
Entries {
entries: Vec<SessionEntry>,
leaf_id: Option<String>,
},
Tree {
tree: Vec<RpcSessionTreeNode>,
leaf_id: Option<String>,
},
LastAssistantText {
text: Option<String>,
},
Messages {
messages: Vec<AgentMessage>,
},
Commands {
commands: Vec<RpcSlashCommand>,
},
}Expand description
Typed success payload for each command that returns data.
Serialization is untagged (payload is the raw data object). Deserialization
of full responses is command-directed via RpcResponse so overlapping
shapes (e.g. {cancelled} vs bash {cancelled,...}) never collide.
Variants§
Cancelled
{ cancelled } for new_session / switch_session / clone.
SessionState(RpcSessionState)
Full session state.
Model(Model)
Selected model from set_model.
CycleModel(Option<CycleModelData>)
cycle_model result (or JSON null).
AvailableModels
{ models: [...] } from get_available_models.
CycleThinkingLevel(Option<CycleThinkingLevelData>)
cycle_thinking_level result (or JSON null).
Compaction(CompactionResult)
Compaction result.
Bash(BashResult)
Bash result.
SessionStats(SessionStats)
Session stats.
ExportHtml
{ path } from export_html.
Fork
{ text, cancelled } from fork.
Fields
ForkMessages
{ messages: [{ entryId, text }] } from get_fork_messages.
Fields
messages: Vec<ForkMessage>Forkable user messages.
Entries
{ entries, leafId } from get_entries.
Tree
{ tree, leafId } from get_tree.
LastAssistantText
{ text } from get_last_assistant_text (text may be null).
Messages
{ messages } from get_messages.
Fields
messages: Vec<AgentMessage>Agent messages.
Commands
{ commands } from get_commands.
Fields
commands: Vec<RpcSlashCommand>Available slash commands.
Trait Implementations§
Source§impl Clone for RpcResponseData
impl Clone for RpcResponseData
Source§fn clone(&self) -> RpcResponseData
fn clone(&self) -> RpcResponseData
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RpcResponseData
impl Debug for RpcResponseData
Source§impl PartialEq for RpcResponseData
impl PartialEq for RpcResponseData
Source§impl Serialize for RpcResponseData
impl Serialize for RpcResponseData
impl StructuralPartialEq for RpcResponseData
Auto Trait Implementations§
impl Freeze for RpcResponseData
impl RefUnwindSafe for RpcResponseData
impl Send for RpcResponseData
impl Sync for RpcResponseData
impl Unpin for RpcResponseData
impl UnsafeUnpin for RpcResponseData
impl UnwindSafe for RpcResponseData
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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