12 stable releases
Uses new Rust 2024
| new 2.0.3 | Apr 12, 2026 |
|---|---|
| 1.12.0 | Feb 20, 2026 |
| 0.0.6 | Feb 6, 2026 |
#189 in Cargo plugins
555KB
13K
SLoC
cargo-governor
CLI and public integration surface for cargo-governor.
cargo-governor is the executable crate in the workspace. It provides:
ownerscommands for crates.io owner managementreleasecommands for semantic versioning, changelog generation, publish, and push- JSON output for CI and agents
- MCP transport and agent context export
The CLI is the main end-user interface. If you need programmatic use
inside Rust code, prefer the governor-application crate.
Installation
cargo install cargo-governor
Then authenticate with crates.io once:
cargo login
The token is stored in ~/.cargo/credentials.toml and used automatically
by cargo-governor.
Release Workflow
The default UX is commit-first:
git commit -m "fix: complete release flow"
cargo-governor --dry-run release full --format json
cargo-governor release full --format json
Mutating release commands reject dirty worktrees and manifest/tag version drift by default. That keeps the release path predictable and lets the tool own the release commit, tag, and changelog changes.
Command Groups
Owners
cargo-governor owners show
cargo-governor owners check
cargo-governor owners sync --dry-run
Release
cargo-governor release status --format json
cargo-governor release analyze --format json
cargo-governor release plan --format json
cargo-governor release bump --format json
cargo-governor release publish --format json
cargo-governor release full --format json
Agent And MCP
cargo-governor agent context --format json
cargo-governor agent export-docs --output-dir .
cargo-governor mcp serve
JSON Output
Every machine-oriented command returns the same outer envelope:
{
"schema_version": 2,
"success": true,
"command": "release.analyze",
"workspace": "my-workspace",
"data": {},
"errors": [],
"metrics": {
"execution_time_ms": 12
}
}
Owners Configuration
[workspace.metadata.governor.owners]
users = ["org-bot"]
[workspace.metadata.governor.owners.groups]
core = ["alice", "github:myorg:core-team"]
[package.metadata.governor.owners]
users = ["bob"]
groups = ["core"]
strategy = "merge"
License
MIT OR Apache-2.0
Dependencies
~22–32MB
~588K SLoC