pub struct RunnerConfig {
pub app_name: String,
pub agent: Arc<dyn Agent>,
pub session_service: Arc<dyn SessionService>,
pub artifact_service: Option<Arc<dyn ArtifactService>>,
pub memory_service: Option<Arc<dyn Memory>>,
pub plugin_manager: Option<Arc<PluginManager>>,
pub run_config: Option<RunConfig>,
pub compaction_config: Option<EventsCompactionConfig>,
pub context_cache_config: Option<ContextCacheConfig>,
pub cache_capable: Option<Arc<dyn CacheCapable>>,
pub request_context: Option<RequestContext>,
pub cancellation_token: Option<CancellationToken>,
}runner only.Fields§
§app_name: String§agent: Arc<dyn Agent>§session_service: Arc<dyn SessionService>§artifact_service: Option<Arc<dyn ArtifactService>>§memory_service: Option<Arc<dyn Memory>>§plugin_manager: Option<Arc<PluginManager>>§run_config: Option<RunConfig>Optional run configuration (streaming mode, etc.) If not provided, uses default (SSE streaming)
compaction_config: Option<EventsCompactionConfig>Optional context compaction configuration. When set, the runner will periodically summarize older events to reduce context size sent to the LLM.
context_cache_config: Option<ContextCacheConfig>Optional context cache configuration for automatic prompt caching lifecycle.
When set alongside cache_capable, the runner will automatically create and
manage cached content resources for supported providers.
When cache_capable is set but this field is None, the runner
automatically uses ContextCacheConfig::default() (4096 min tokens,
600s TTL, refresh every 3 invocations).
cache_capable: Option<Arc<dyn CacheCapable>>Optional cache-capable model reference for automatic cache management. Set this to the same model used by the agent if it supports caching.
request_context: Option<RequestContext>Optional request context from the server’s auth middleware bridge.
When set, the runner passes it to InvocationContext so that
user_scopes() and user_id() reflect the authenticated identity.
cancellation_token: Option<CancellationToken>Optional cooperative cancellation token for externally managed runs.
Auto Trait Implementations§
impl Freeze for RunnerConfig
impl !RefUnwindSafe for RunnerConfig
impl Send for RunnerConfig
impl Sync for RunnerConfig
impl Unpin for RunnerConfig
impl UnsafeUnpin for RunnerConfig
impl !UnwindSafe for RunnerConfig
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> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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