shipper-cli 0.3.0-rc.2

CLI adapter for Shipper. Install with `cargo install shipper --locked`; this crate is for embedders who want the exact CLI surface programmatically.
Documentation

shipper-cli

CLI adapter crate for Shipper. Owns clap parsing, subcommand dispatch, help text, and progress rendering. Exposes pub fn run() -> anyhow::Result<()> as the embedding entry point; the shipper-cli binary is a three-line wrapper over run.

Use the shipper crate to install

Most users should install the product via the shipper crate:

cargo install shipper --locked

That installs a binary named shipper that forwards to the same run function in this crate.

When to depend on shipper-cli directly

Reach for this crate when you need the exact CLI surface programmatically — for example, a wrapper that invokes Shipper after extra preflight steps of your own:

fn main() -> anyhow::Result<()> {
    // ... custom preflight ...
    shipper_cli::run()
}

For programmatic use without a clap dependency graph, depend on shipper-core instead — that's where the engine lives.

Installing the adapter directly

The shipper-cli crate ships its own shipper-cli binary, a three-line wrapper over shipper_cli::run() — the same entry point the shipper install uses. Install the adapter directly when you want the shipper-cli binary name (e.g., existing pipelines, or you prefer the adapter crate explicitly):

# From crates.io — same code path as `cargo install shipper`
cargo install shipper-cli --locked

# From this repository
cargo install --path crates/shipper-cli --locked

Most users should prefer cargo install shipper --locked, which installs a binary named shipper against the same adapter.

Core commands

  • shipper plan — print publish order and skipped packages.
  • shipper preflight — run checks without publishing.
  • shipper publish — execute publish and persist state.
  • shipper resume — continue from previous state.
  • shipper status — compare local versions to registry versions.
  • shipper doctor — print environment and auth diagnostics.
  • shipper rehearse — package + verify + publish to a rehearsal registry.
  • shipper yank / shipper plan-yank — receipt-driven containment.
  • shipper fix-forward — plan a minimal repair of a partial release.

Architecture

shipper (install face — `cargo install shipper`)
  -> shipper-cli (this crate — CLI adapter, pub fn run())
       -> shipper-core (engine — library only)

Related crates and docs