pub struct SwarmConfig {
pub enabled: bool,
pub max_agents: usize,
pub worktrees: bool,
pub isolation: Option<String>,
}Expand description
Concurrent multi-agent work (swarm tool).
When worktrees is on (default) and the project is a git repo, each worker
runs in a detached git worktree under .whycodes/swarm/. Changes merge back
into the main checkout with three-way conflict detection. File claims still
gate same-checkout mode and pre-declared path ownership.
Fields§
§enabled: boolAdvertise and run the swarm tool. Default on.
max_agents: usizeMax concurrent workers (hard-capped at 8 in the agent). Default 4.
worktrees: boolIsolate writers in git worktrees (default on). Falls back to same-checkout
- file claims when the project is not a git repo.
isolation: Option<String>worktree or checkout. When set, overrides worktrees.
Implementations§
Source§impl SwarmConfig
impl SwarmConfig
Sourcepub fn use_worktrees(&self) -> bool
pub fn use_worktrees(&self) -> bool
Whether to try git worktrees for this run.
Trait Implementations§
Source§impl Clone for SwarmConfig
impl Clone for SwarmConfig
Source§impl Debug for SwarmConfig
impl Debug for SwarmConfig
Source§impl Default for SwarmConfig
impl Default for SwarmConfig
Source§impl<'de> Deserialize<'de> for SwarmConfig
impl<'de> Deserialize<'de> for SwarmConfig
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
Auto Trait Implementations§
impl Freeze for SwarmConfig
impl RefUnwindSafe for SwarmConfig
impl Send for SwarmConfig
impl Sync for SwarmConfig
impl Unpin for SwarmConfig
impl UnsafeUnpin for SwarmConfig
impl UnwindSafe for SwarmConfig
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
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 more