pub enum SessionSelection {
Ephemeral,
New {
dir: PathBuf,
name: Option<String>,
},
Latest {
dir: PathBuf,
},
ById {
id: String,
dir: PathBuf,
},
ByExactId {
id: String,
dir: PathBuf,
},
Fork {
source: String,
},
}Expand description
How the user asked to select a session. v1 honors NoSession (ephemeral
InMemorySessionStorage), New (a fresh JSONL file), and — new this pass —
Latest / ById, which restore an existing JSONL session on launch
(--continue/-c, --resume/-r, --session <id|path>). The restored
transcript renders into the TUI on startup and the run continues appending
to the same file.
Variants§
Ephemeral
--no-session: ephemeral, in-memory, nothing persisted.
New
Fresh durable JSONL session under --session-dir (or the default dir).
Latest
-c / -r: restore the most recent session in the default dir.
ById
--session <id|path>: restore the session whose id matches, or whose
file name contains the id.
ByExactId
--session-id <id>: use the EXACT session id, creating it if missing.
Fork
--fork <path|id>: fork the given session into a new one and start in
the fork.
Trait Implementations§
Source§impl Clone for SessionSelection
impl Clone for SessionSelection
Auto Trait Implementations§
impl Freeze for SessionSelection
impl RefUnwindSafe for SessionSelection
impl Send for SessionSelection
impl Sync for SessionSelection
impl Unpin for SessionSelection
impl UnsafeUnpin for SessionSelection
impl UnwindSafe for SessionSelection
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