1use std::path::PathBuf;
4
5use clap::Parser;
6
7#[derive(Debug, Parser)]
9#[command(name = "opi", version, about = "AI coding agent")]
10pub struct Cli {
11 #[arg(short = 'm', long)]
13 pub model: Option<String>,
14
15 #[arg(short = 'c', long)]
17 pub config: Option<PathBuf>,
18
19 #[arg(short = 's', long)]
21 pub system: Option<PathBuf>,
22
23 #[arg(long)]
25 pub non_interactive: bool,
26
27 #[arg(long)]
29 pub allow_mutating: bool,
30
31 #[arg(short = 'v', long)]
33 pub verbose: bool,
34
35 #[arg(trailing_var_arg = true, allow_hyphen_values = true)]
37 pub prompt: Vec<String>,
38}