# cargo-plugin-utils
[](https://crates.io/crates/cargo-plugin-utils)
[](https://docs.rs/cargo-plugin-utils)
[](https://github.com/legra-ai/cargo-plugin-utils/actions/workflows/ci.yml)
[](LICENSE-MIT)
[](https://crates.io/crates/cargo-plugin-utils)
Shared utilities for cargo plugins, including logger with subprocess
handling, common functions for package detection and repository
discovery.
## Features
- **Logger**: Cargo-style progress and status messages with subprocess
support
- **Subprocess Runner**: Run subprocesses with PTY mode, scrolling
regions, and ANSI color preservation
- **Common Utilities**: Package detection, repository discovery, and
other shared functionality
## Usage
Add to your `Cargo.toml`:
```toml
[dependencies]
cargo-plugin-utils = "0.0.30"
```
## Development
The repository uses Rhusky to install its tracked `.githooks/` when Cargo
builds the root package. The explicit `RHUSKY_REPOSITORY_ROOT` setting in
`.cargo/config.toml` confines installation to this checkout; builds performed
while this crate is a dependency do not alter a consumer's Git hooks.
## License
Copyright © 2026 DataRoad Inc, Delaware, USA, trading as Legra.
Licensed under either the [MIT license](LICENSE-MIT) or the
[Apache License, Version 2.0](LICENSE-APACHE), at your option.