Skip to main content

vtcode_core/cli/args/
dependencies.rs

1use clap::{Subcommand, ValueEnum};
2
3/// Optional VT Code dependency names
4#[derive(Debug, Clone, Copy, ValueEnum, PartialEq, Eq)]
5pub enum ManagedDependency {
6    #[value(name = "search-tools")]
7    SearchTools,
8    #[value(name = "ripgrep")]
9    Ripgrep,
10    #[value(name = "ast-grep")]
11    AstGrep,
12}
13
14/// Dependency management subcommands
15#[derive(Debug, Subcommand, Clone)]
16pub enum DependenciesSubcommand {
17    /// Install or update an optional dependency
18    #[command(name = "install")]
19    Install {
20        /// Dependency to install
21        dependency: ManagedDependency,
22    },
23
24    /// Show current status for an optional dependency
25    #[command(name = "status")]
26    Status {
27        /// Dependency to inspect
28        dependency: ManagedDependency,
29    },
30}