pub struct CliSpec {
pub binary: &'static str,
pub provider_slug: &'static str,
pub default_model: &'static str,
pub prompt_style: PromptStyle,
pub system_flag: Option<&'static str>,
}Expand description
A static description of one CLI tool: the binary name, the argv
template, and how system prompts are passed (if at all). Used by
CliProvider::new to pick a concrete tool.
Fields§
§binary: &'static strThe executable name to look up on PATH (and to invoke).
provider_slug: &'static strProvider slug the broker routes on (matches
Effect::Llm { model: "<slug>" } exactly).
default_model: &'static strDefault model slug the worker advertises when none is configured.
prompt_style: PromptStyleHow this CLI takes its prompt on the argv.
system_flag: Option<&'static str>Shape of the system-prompt flag. None = the CLI has no system
prompt support and any system-role messages are concatenated
into the user prompt.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for CliSpec
impl RefUnwindSafe for CliSpec
impl Send for CliSpec
impl Sync for CliSpec
impl Unpin for CliSpec
impl UnsafeUnpin for CliSpec
impl UnwindSafe for CliSpec
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