pub enum Commands {
Show 14 variants
Init {
paths: Vec<String>,
},
Link {
path: String,
quiet: bool,
},
Unlink {
path: String,
missing: bool,
},
Undo,
Run {
target_path: Option<String>,
daemon: bool,
only: Option<String>,
skip: Option<String>,
min_size: Option<u64>,
except: Option<String>,
json: bool,
},
Status {
json: bool,
},
Caches {
json: bool,
},
Config {
action: Option<ConfigAction>,
},
Restore {
path: Option<String>,
last_run: bool,
},
Update {
offline: bool,
},
Skill,
Setup {
status: bool,
},
Doctor {
path: Option<String>,
},
Uninstall {
deep: bool,
},
}Variants§
Init
Workspace onboarding & discovery: crawl paths for Git repositories and register them.
Link
Register a single Git repository for pruning (defaults to current directory .).
Fields
Unlink
Remove a repository from the dev-prune registry (does not delete workspace files).
Fields
Undo
Revert the most recent init or link action.
Run
Run a prune pass across all registered repositories or a target directory (devp run .).
Fields
target_path: Option<String>Optional target workspace path. If omitted, runs across all registered repositories.
daemon: boolMark this as the scheduled background pass. Repositories that set
disable_daemon in .devprune.json are skipped. Set by the installed scheduler.
only: Option<String>Act only on these package managers (comma-separated),
e.g. --only npm,pnpm. Unknown names are an error.
Status
View system dashboard: registered repos, background daemon, Git hooks & space metrics.
Caches
Report the size of every package manager cache on this machine (read-only, deletes nothing).
Config
Manage global settings, background daemon, Git hooks, custom icons, or per-project .devprune.json.
Fields
action: Option<ConfigAction>Restore
Restore dependencies in a project using its lockfile (npm ci, pnpm install, uv sync).
Fields
Update
Print the installed version, check for a newer release, and show how to upgrade.
Fields
Skill
Export SKILL.md and display ready-to-copy AI Agent onboarding & skill import prompts.
Setup
Install whatever dev-prune integration is missing: alias, SKILL.md, Git hooks, scheduler.
Doctor
Diagnose the installation, or one repository if given a path (devp doctor .).
Uninstall
Uninstall background daemon, Git hooks, and optionally wipe configuration.
Trait Implementations§
Source§impl FromArgMatches for Commands
impl FromArgMatches for Commands
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut<'b>(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§impl Subcommand for Commands
impl Subcommand for Commands
Source§fn augment_subcommands<'b>(__clap_app: Command) -> Command
fn augment_subcommands<'b>(__clap_app: Command) -> Command
Source§fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§fn has_subcommand(__clap_name: &str) -> bool
fn has_subcommand(__clap_name: &str) -> bool
Self can parse a specific subcommandAuto Trait Implementations§
impl Freeze for Commands
impl RefUnwindSafe for Commands
impl Send for Commands
impl Sync for Commands
impl Unpin for Commands
impl UnsafeUnpin for Commands
impl UnwindSafe for Commands
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more