pub struct Settings {Show 33 fields
pub default_provider: Option<String>,
pub default_model: Option<String>,
pub default_thinking_level: Option<String>,
pub transport: Transport,
pub hide_thinking_block: bool,
pub theme: Option<String>,
pub quiet_startup: bool,
pub default_project_trust: ProjectTrustDefault,
pub compaction: CompactionSettings,
pub experimental_context_file: bool,
pub reasoning_effort: ReasoningEffortSettings,
pub retry: RetrySettings,
pub cache_warming: CacheWarmingMode,
pub subagents: SubagentSettings,
pub workflows: WorkflowSettings,
pub steering_mode: QueueMode,
pub follow_up_mode: QueueMode,
pub shell_path: Option<String>,
pub shell_command_prefix: Option<String>,
pub session_dir: Option<String>,
pub enabled_models: Option<Vec<String>>,
pub default_tools: Option<Vec<String>>,
pub external_editor: Option<String>,
pub skills: Vec<String>,
pub prompts: Vec<String>,
pub themes: Vec<String>,
pub enable_skill_commands: Option<bool>,
pub auto_recap: Option<bool>,
pub voice_language: Option<String>,
pub voice_backend: Option<String>,
pub markdown: MarkdownSettings,
pub webmcp: WebMcpSettings,
pub extra: Map<String, Value>,
}Fields§
§default_provider: Option<String>§default_model: Option<String>§default_thinking_level: Option<String>§transport: Transport§hide_thinking_block: bool§theme: Option<String>§quiet_startup: bool§default_project_trust: ProjectTrustDefault§compaction: CompactionSettings§experimental_context_file: boolLet the model edit its live conversation through a private JSON file.
reasoning_effort: ReasoningEffortSettings§retry: RetrySettings§cache_warming: CacheWarmingMode§subagents: SubagentSettings§workflows: WorkflowSettings§steering_mode: QueueMode§follow_up_mode: QueueMode§shell_path: Option<String>§shell_command_prefix: Option<String>§session_dir: Option<String>§enabled_models: Option<Vec<String>>§default_tools: Option<Vec<String>>§external_editor: Option<String>§skills: Vec<String>§prompts: Vec<String>§themes: Vec<String>§enable_skill_commands: Option<bool>§auto_recap: Option<bool>None preserves the default-on behavior for existing settings files.
voice_language: Option<String>§voice_backend: Option<String>§markdown: MarkdownSettings§webmcp: WebMcpSettings§extra: Map<String, Value>Unknown keys survive load/save.
Implementations§
Source§impl Settings
impl Settings
Sourcepub fn get_or_create_device_id() -> Result<String>
pub fn get_or_create_device_id() -> Result<String>
Read only user settings when creating the installation ID.
pub fn auto_recap_enabled(&self) -> bool
Sourcepub fn load(cwd: &Path, project_trusted: bool) -> Settings
pub fn load(cwd: &Path, project_trusted: bool) -> Settings
Load global settings, overlaying project settings when trusted.
pub fn save_global(&self) -> Result<()>
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Settings
impl<'de> Deserialize<'de> for Settings
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>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Settings
Auto Trait Implementations§
impl Freeze for Settings
impl RefUnwindSafe for Settings
impl Send for Settings
impl Sync for Settings
impl Unpin for Settings
impl UnsafeUnpin for Settings
impl UnwindSafe for Settings
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
Mutably borrows from an owned value. Read more
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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> ⓘ
Converts
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> ⓘ
Converts
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 moreCreates a shared type from an unshared type.