pub struct AgentConfig {
pub backend: Option<String>,
pub claude_code: BackendOverrides,
pub codex: BackendOverrides,
pub aider: BackendOverrides,
pub gemini: BackendOverrides,
}Expand description
[agent] section — backend selection plus per-backend overrides.
The backend field is the canonical lowercase string form of
crate::agent::backend::BackendKind (e.g., "claude_code", "codex").
It is left as a String here rather than the enum directly so the
config layer stays decoupled from the agent layer’s parser; the factory
in crate::agent::build_agent handles validation and surfaces a clear
error if the value is unknown. None means “use the default backend”
(today, Claude Code).
The four sub-tables (claude_code, codex, aider, gemini) all share
the same base shape (binary, extra_args, model), plus backend-specific
policy overrides, and all four are active:
crate::agent::build_agent reads whichever sub-table matches the selected
backend and forwards its overrides to the constructed agent.
Fields§
§backend: Option<String>Which backend to dispatch through. None selects the default
(claude_code) so a workspace with no [agent] section keeps
today’s behavior.
claude_code: BackendOverridesOverrides applied when the active backend is claude_code.
codex: BackendOverridesOverrides applied when the active backend is codex.
aider: BackendOverridesOverrides applied when the active backend is aider.
gemini: BackendOverridesOverrides applied when the active backend is gemini.
Trait Implementations§
Source§impl Clone for AgentConfig
impl Clone for AgentConfig
Source§fn clone(&self) -> AgentConfig
fn clone(&self) -> AgentConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AgentConfig
impl Debug for AgentConfig
Source§impl Default for AgentConfig
impl Default for AgentConfig
Source§fn default() -> AgentConfig
fn default() -> AgentConfig
Source§impl<'de> Deserialize<'de> for AgentConfigwhere
AgentConfig: Default,
impl<'de> Deserialize<'de> for AgentConfigwhere
AgentConfig: Default,
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>,
Source§impl PartialEq for AgentConfig
impl PartialEq for AgentConfig
Source§fn eq(&self, other: &AgentConfig) -> bool
fn eq(&self, other: &AgentConfig) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for AgentConfig
impl Serialize for AgentConfig
impl Eq for AgentConfig
impl StructuralPartialEq for AgentConfig
Auto Trait Implementations§
impl Freeze for AgentConfig
impl RefUnwindSafe for AgentConfig
impl Send for AgentConfig
impl Sync for AgentConfig
impl Unpin for AgentConfig
impl UnsafeUnpin for AgentConfig
impl UnwindSafe for AgentConfig
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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