CLI reference
wrap
Attest any command execution automatically.
treeship wrap runs a command as a subprocess and produces a signed artifact recording what happened.
Usage
treeship wrap [OPTIONS] -- <command> [args...]What gets captured automatically
| Field | Value |
|---|---|
| actor | From --actor flag or TREESHIP_ACTOR env var |
| action | The binary name of the command (or --action override) |
| exit_code | The subprocess exit code |
| elapsed_ms | Elapsed time in milliseconds |
| timestamp | RFC 3339 at the moment of signing |
| parent_id | From --parent flag or TREESHIP_PARENT |
Examples
treeship wrap -- npm testtreeship wrap --actor agent://ci-runner -- cargo build --releasetreeship wrap \
--actor agent://deployer \
--parent art_previous \
-- kubectl apply -f deploy.yamltreeship wrap --push -- npm testThe --push flag pushes the artifact to the Hub immediately after attesting.
Options
| Option | Description |
|---|---|
--actor <uri> | Override default actor |
--action <label> | Override action label (default: executable name) |
--parent <id> | Parent artifact ID for chain linking |
--push | Push to Hub immediately after attesting |
treeship wrap always propagates the subprocess exit code. If your command exits 1, treeship wrap exits 1. The artifact is still signed and stored -- even failed runs are attested.