pub struct SessionMetadata {Show 13 fields
pub directory: Option<PathBuf>,
pub model: Option<String>,
pub knowledge_snapshot: Option<PathBuf>,
pub provenance: Option<ExecutionProvenance>,
pub auto_apply_edits: bool,
pub allow_network: bool,
pub slash_autocomplete: bool,
pub use_worktree: bool,
pub shared: bool,
pub share_url: Option<String>,
pub rlm: RlmConfig,
pub subcall_provider: Option<Arc<dyn Provider>>,
pub subcall_model_name: Option<String>,
}Expand description
Persistent, user-facing configuration for a Session.
Fields§
§directory: Option<PathBuf>Workspace directory the session operates in.
model: Option<String>Model selector in "provider/model" or "model" form.
knowledge_snapshot: Option<PathBuf>Optional snapshot of the workspace knowledge graph.
provenance: Option<ExecutionProvenance>Execution provenance for audit/traceability.
auto_apply_edits: boolWhen true, pending edit previews are auto-confirmed in the TUI.
allow_network: boolWhen true, network-reaching tools are allowed.
slash_autocomplete: boolWhen true, the TUI shows slash-command autocomplete.
use_worktree: boolWhen true, the CLI runs inside an isolated git worktree.
Whether this session has been shared publicly.
Public share URL, if any.
rlm: RlmConfigRLM (Recursive Language Model) settings active for this session.
Seeded from crate::config::Config::rlm at session creation
(via crate::session::Session::apply_config) and persisted on
disk so subsequent runs honour the same thresholds, models, and
iteration limits. Existing sessions without this field load with
crate::rlm::RlmConfig::default.
subcall_provider: Option<Arc<dyn Provider>>Pre-resolved subcall provider from
RlmConfig::subcall_model.
Not serialised — re-resolved from the provider registry each time
Session::apply_config runs. When None, all RLM iterations
use the root provider.
subcall_model_name: Option<String>Model name resolved alongside Self::subcall_provider.
Not serialised.
Trait Implementations§
Source§impl Clone for SessionMetadata
impl Clone for SessionMetadata
Source§fn clone(&self) -> SessionMetadata
fn clone(&self) -> SessionMetadata
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SessionMetadata
impl Debug for SessionMetadata
Source§impl Default for SessionMetadata
impl Default for SessionMetadata
Source§fn default() -> SessionMetadata
fn default() -> SessionMetadata
Source§impl<'de> Deserialize<'de> for SessionMetadata
impl<'de> Deserialize<'de> for SessionMetadata
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for SessionMetadata
impl !RefUnwindSafe for SessionMetadata
impl Send for SessionMetadata
impl Sync for SessionMetadata
impl Unpin for SessionMetadata
impl UnsafeUnpin for SessionMetadata
impl !UnwindSafe for SessionMetadata
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> 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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request