Skip to main content

agentctl/
cli.rs

1use crate::debug::DebugArgs;
2use crate::diag::DiagArgs;
3use crate::provider::commands::ProviderArgs;
4use crate::workflow::WorkflowArgs;
5use clap::{Parser, Subcommand};
6
7#[derive(Parser)]
8#[command(
9    name = "agentctl",
10    version,
11    about = "Provider-neutral control plane for local agent workflows",
12    disable_help_subcommand = true
13)]
14pub struct Cli {
15    #[command(subcommand)]
16    pub command: Option<Command>,
17}
18
19#[derive(Subcommand)]
20pub enum Command {
21    /// Provider registry and selection
22    Provider(ProviderArgs),
23    /// Provider-neutral diagnostics
24    Diag(DiagArgs),
25    /// Debug bundle and troubleshooting tools
26    Debug(DebugArgs),
27    /// Declarative workflow orchestration
28    Workflow(WorkflowArgs),
29    /// Local automation integrations
30    Automation,
31}