pub struct SpawnSpec {
pub label: Option<String>,
pub frontmatter_path: Option<PathBuf>,
pub initial_prompt: String,
pub model: Option<String>,
pub provider: Option<String>,
pub tool_allowlist: Option<Vec<String>>,
pub isolation_worktree: bool,
pub inherit_hooks: bool,
pub interactive: bool,
}Expand description
Parameters for a new sub-agent spawn (caliband SpawnSpec).
Fields§
§label: Option<String>Optional human-readable name.
frontmatter_path: Option<PathBuf>Path to a frontmatter markdown file, if any.
initial_prompt: StringInitial prompt handed to the agent.
model: Option<String>Optional model override.
provider: Option<String>Optional provider override (e.g. "anthropic", "ollama", "openai",
"google"). The caliban worker parses this to select the provider
before model resolution; without it the worker uses caliban’s default
(anthropic). Mirrors caliban SpawnSpec.provider (#93). Prospero fills
it from the repo’s stored provider config at spawn time.
tool_allowlist: Option<Vec<String>>Optional tool allowlist.
isolation_worktree: boolTrue iff the agent runs in an isolated worktree.
inherit_hooks: boolWhether to inherit parent hooks.
interactive: boolWhen true, the worker runs in interactive mode: at each end-of-run
boundary it awaits inbound operator messages over the per-agent socket
instead of finishing. Mirrors caliban SpawnSpec.interactive.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for SpawnSpec
impl<'de> Deserialize<'de> for SpawnSpec
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>,
impl Eq for SpawnSpec
impl StructuralPartialEq for SpawnSpec
Auto Trait Implementations§
impl Freeze for SpawnSpec
impl RefUnwindSafe for SpawnSpec
impl Send for SpawnSpec
impl Sync for SpawnSpec
impl Unpin for SpawnSpec
impl UnsafeUnpin for SpawnSpec
impl UnwindSafe for SpawnSpec
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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