pub struct CliArgs {Show 18 fields
pub command: Option<Commands>,
pub provider: Option<String>,
pub model: Option<String>,
pub prompt: Vec<String>,
pub interactive: bool,
pub thinking: Option<String>,
pub extensions: Vec<PathBuf>,
pub mode: Option<String>,
pub tools: Option<String>,
pub append_system_prompt: Option<PathBuf>,
pub print: bool,
pub no_session: bool,
pub timeout: Option<u64>,
pub continue_session: bool,
pub enable_routing: bool,
pub prefer_cost_efficient: bool,
pub fallback_chain: Vec<String>,
pub disable_fallback: bool,
}Expand description
CLI arguments
Fields§
§command: Option<Commands>pub.
provider: Option<String>Provider to use (e.g., anthropic, openai, google, deepseek)
model: Option<String>Model to use (e.g., claude-sonnet-4-20250514, gpt-4o)
prompt: Vec<String>Initial prompt (non-interactive mode)
interactive: boolInteractive mode (default when no prompt is given)
thinking: Option<String>Thinking level (none, minimal, standard, thorough)
extensions: Vec<PathBuf>Load an extension from a shared library (.so / .dll / .dylib). Can be specified multiple times.
mode: Option<String>Output mode: text or json (newline-delimited JSON events)
tools: Option<String>Comma-separated list of tools to enable. Default: all builtins.
append_system_prompt: Option<PathBuf>Append system prompt from a file
print: boolSingle-shot print mode (non-interactive)
no_session: boolDisable session persistence
timeout: Option<u64>Timeout in seconds for print mode
continue_session: boolResume the most recent session for this project
enable_routing: boolEnable automatic model routing (falls back to cost-efficient models on errors)
prefer_cost_efficient: boolPrefer cost-efficient models when routing is enabled
fallback_chain: Vec<String>Fallback chain: comma-separated list of provider/model IDs (can be specified multiple times)
disable_fallback: boolDisable automatic fallback (fail fast on errors instead of trying alternatives)
Trait Implementations§
Source§impl Args for CliArgs
impl Args for CliArgs
Source§fn augment_args<'b>(__clap_app: Command) -> Command
fn augment_args<'b>(__clap_app: Command) -> Command
Source§fn augment_args_for_update<'b>(__clap_app: Command) -> Command
fn augment_args_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§impl CommandFactory for CliArgs
impl CommandFactory for CliArgs
Source§impl FromArgMatches for CliArgs
impl FromArgMatches for CliArgs
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§impl Parser for CliArgs
impl Parser for CliArgs
Source§fn parse_from<I, T>(itr: I) -> Self
fn parse_from<I, T>(itr: I) -> Self
Source§fn try_parse_from<I, T>(itr: I) -> Result<Self, Error>
fn try_parse_from<I, T>(itr: I) -> Result<Self, Error>
Source§fn update_from<I, T>(&mut self, itr: I)
fn update_from<I, T>(&mut self, itr: I)
Auto Trait Implementations§
impl Freeze for CliArgs
impl RefUnwindSafe for CliArgs
impl Send for CliArgs
impl Sync for CliArgs
impl Unpin for CliArgs
impl UnsafeUnpin for CliArgs
impl UnwindSafe for CliArgs
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<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
self file descriptor. Read moreSource§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