pub struct Session {
pub id: String,
pub title: String,
pub model: String,
pub slug: Option<String>,
pub created_at: String,
pub compact_summary: Option<String>,
pub compact_through: i64,
pub web_mode: bool,
pub swarm_mode: bool,
pub kind: String,
pub research_parent_id: Option<String>,
}Expand description
One chat session (conversation) within a space.
Fields§
§id: String§title: String§model: String§slug: Option<String>Short human-readable id (kebab slug), generated by the model. None until
generated — display falls back to a prefix of the uuid.
created_at: String§compact_summary: Option<String>Caveman-compressed digest of the session’s earlier messages, if it’s
ever been auto-compacted. None until the first compaction.
compact_through: i64How many of the session’s raw messages (in created_at order) are
folded into compact_summary. Messages after this point are still
sent verbatim; 0 means nothing has been compacted yet.
web_mode: bool/web answer mode: force search-first, inline-cited replies.
swarm_mode: bool/swarm mode: turns replace a single reply with a multi-persona
roundtable (see swarm_personas).
kind: String"chat" or "research" — determines what’s available.
research_parent_id: Option<String>If this is a research session spawned from an existing chat, the original session’s id.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Session
impl RefUnwindSafe for Session
impl Send for Session
impl Sync for Session
impl Unpin for Session
impl UnsafeUnpin for Session
impl UnwindSafe for Session
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.