pub struct SessionView {Show 31 fields
pub id: SessionId,
pub id_short: String,
pub agent_type: String,
pub model: String,
pub status: SessionStatus,
pub status_label: String,
pub activity_detail: Option<String>,
pub should_blink: bool,
pub status_icon: String,
pub context_percentage: f64,
pub context_display: String,
pub context_warning: bool,
pub context_critical: bool,
pub cost_display: String,
pub cost_usd: f64,
pub duration_display: String,
pub duration_seconds: f64,
pub lines_display: String,
pub working_directory: Option<String>,
pub needs_attention: bool,
pub last_activity_display: String,
pub age_display: String,
pub started_at: String,
pub last_activity: String,
pub tmux_pane: Option<String>,
pub project_root: Option<String>,
pub worktree_path: Option<String>,
pub worktree_branch: Option<String>,
pub parent_session_id: Option<SessionId>,
pub child_session_ids: Vec<SessionId>,
pub first_prompt: Option<String>,
}Expand description
Read-only view of a session for TUI display.
Immutable snapshot created from SessionDomain. Implements Clone for easy distribution to multiple UI components.
Fields§
§id: SessionIdSession identifier
id_short: StringShort ID for display (first 8 chars)
agent_type: StringAgent type label
model: StringModel display name
status: SessionStatusCurrent status (3-state model)
status_label: StringStatus label for display
activity_detail: Option<String>Activity detail (tool name or context)
should_blink: boolWhether this status should blink
status_icon: StringStatus icon
context_percentage: f64Context usage percentage
context_display: StringContext usage formatted string
context_warning: boolWhether context is in warning state
context_critical: boolWhether context is in critical state
cost_display: StringCost formatted string
cost_usd: f64Cost in USD (for sorting)
duration_display: StringDuration formatted string
duration_seconds: f64Duration in seconds (for sorting)
lines_display: StringLines changed formatted string
working_directory: Option<String>Working directory (shortened for display)
needs_attention: boolWhether session needs attention (permission wait, high context)
last_activity_display: StringTime since last activity (formatted)
age_display: StringSession age (formatted)
started_at: StringSession start time (ISO 8601)
last_activity: StringLast activity time (ISO 8601)
tmux_pane: Option<String>Tmux pane ID (e.g., “%5”) if session is running in tmux
project_root: Option<String>Git project root (for grouping in tree view)
worktree_path: Option<String>Git worktree path
worktree_branch: Option<String>Git branch name for this worktree
parent_session_id: Option<SessionId>Parent session ID (if this is a subagent)
child_session_ids: Vec<SessionId>Child subagent session IDs
first_prompt: Option<String>First user prompt (for preview summary)
Implementations§
Source§impl SessionView
impl SessionView
Sourcepub fn from_domain(session: &SessionDomain) -> Self
pub fn from_domain(session: &SessionDomain) -> Self
Creates a SessionView from a SessionDomain.
Trait Implementations§
Source§impl Clone for SessionView
impl Clone for SessionView
Source§fn clone(&self) -> SessionView
fn clone(&self) -> SessionView
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more