pub struct RuntimeConfig {
pub max_context_tokens: usize,
pub system_prompt: String,
pub auto_summarize: bool,
pub keep_recent_count: usize,
pub workspace: WorkspaceConfig,
pub max_concurrent_subagents: usize,
pub max_subagent_depth: usize,
pub default_subagent_timeout: Duration,
pub spark_seed: Option<SparkConfig>,
pub spark_file: Option<PathBuf>,
}Expand description
Configuration for the agent runtime.
Fields§
§max_context_tokens: usizeMaximum context tokens.
system_prompt: StringSystem prompt.
auto_summarize: boolWhether to auto-summarize on context overflow.
keep_recent_count: usizeNumber of recent messages to keep when summarizing.
workspace: WorkspaceConfigWorkspace configuration for operational boundaries.
max_concurrent_subagents: usizeMaximum concurrent sub-agents.
max_subagent_depth: usizeMaximum sub-agent nesting depth.
default_subagent_timeout: DurationDefault sub-agent timeout.
spark_seed: Option<SparkConfig>Static spark seed from [spark] in config (fallback when spark.toml missing).
spark_file: Option<PathBuf>Path to the living spark file (~/.astrid/spark.toml).
Note: When a spark identity is configured (either from this file or
from spark_seed), the spark preamble is prepended to the system prompt
on every LLM call for non-sub-agent sessions. If system_prompt is set
to a custom value, the spark preamble is still prepended. Sub-agent
sessions skip spark injection to avoid double-identity conflicts.
Trait Implementations§
Source§impl Clone for RuntimeConfig
impl Clone for RuntimeConfig
Source§fn clone(&self) -> RuntimeConfig
fn clone(&self) -> RuntimeConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RuntimeConfig
impl Debug for RuntimeConfig
Auto Trait Implementations§
impl Freeze for RuntimeConfig
impl RefUnwindSafe for RuntimeConfig
impl Send for RuntimeConfig
impl Sync for RuntimeConfig
impl Unpin for RuntimeConfig
impl UnsafeUnpin for RuntimeConfig
impl UnwindSafe for RuntimeConfig
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> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
self file descriptor. Read moreSource§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