Skip to main content

vtcode_core/cli/args/
plugins.rs

1use clap::Subcommand;
2use std::path::PathBuf;
3
4/// Agent Plugins subcommands
5#[derive(Debug, Subcommand, Clone)]
6pub enum PluginsSubcommand {
7    /// List installed Agent Plugins
8    #[command(name = "list")]
9    List,
10
11    /// Show plugin details
12    #[command(name = "info")]
13    Info {
14        /// Plugin name or path
15        name: String,
16    },
17
18    /// Validate a plugin directory
19    #[command(name = "validate")]
20    Validate {
21        /// Path to plugin directory
22        path: PathBuf,
23    },
24
25    /// Install a plugin from a git URL
26    #[command(name = "add")]
27    Add {
28        /// Git URL or local path to plugin
29        source: String,
30        /// Plugin name (defaults to directory name)
31        #[arg(long)]
32        name: Option<String>,
33    },
34
35    /// Remove an installed plugin
36    #[command(name = "remove")]
37    Remove {
38        /// Plugin name to remove
39        name: String,
40    },
41}