mntn/cli.rs
1use clap::{Parser, Subcommand};
2
3#[derive(Parser)]
4#[command(
5 name = "mntn",
6 version = env!("CARGO_PKG_VERSION"),
7 about = "Rust-based macOS maintenance CLI"
8)]
9pub struct Cli {
10 #[command(subcommand)]
11 pub command: Option<Commands>,
12}
13
14#[derive(Subcommand)]
15pub enum Commands {
16 /// Backup global packages (e.g. brew, npm, uv, cargo, bun)
17 Backup,
18 /// Clean system junk safely
19 Clean,
20 /// Purge unused launch agents/daemons
21 Purge,
22 /// Install launch agents and perform backup+clean
23 Install,
24 /// Create symlinks for dotfiles
25 Link,
26 /// Remove an app bundle and its related files
27 Delete,
28 /// Use Touch ID to enable sudo in your terminal
29 BiometricSudo,
30}