For installation and common tasks, see the CLI overview. This reference is generated from development CLI help; run packslip verify --help for your installed version.

packslip verify

Verify a packslip, or a release list, against a pinned identity or key

Check the signature, log evidence, and statement structure. With –artifact, also check local files against signed digests and artifact sizes. Without it, only the bundle is checked. Nothing is downloaded: remote artifacts and linked provenance are not fetched.

Choose what to trust. By default, the identity policy comes from the project the document claims, if it is on github.com or gitlab.com: that forge’s issuer and any workflow of that repository. Any other project needs –pubkey or an identity flag. For a keyless release, –issuer with –identity-prefix (any workflow of a repository, such as https://github.com/owner/repo/) or –identity (one exact certificate identity, including its ref) replaces the derived policy, and only the flags you pass are checked: –issuer alone accepts any signer from that issuer. For a release signed through another repository’s reusable workflow, –issuer with –source-repository requires the certificate to record that repository as its source, whichever workflow signed. For a key-signed release, pass –pubkey. –pin adds a check on top of the identity policy: the signing repository must have that signer fingerprint.

Then match the verified project and version to what you meant to install. For a release list, the command does not check the expiry or compare the sequence with an earlier list. See https://packslip.dev/docs/verifying/.

Arguments

Flags

Trust

Output

Exit Status

CodeMeaning
0The bundle verified, and every –artifact matched it
1Verification failed, or an input was unusable: a file could not be read, a key or fingerprint is malformed, or the trust flags conflict or are missing
2The command line is invalid

Examples

Verify a GitHub release against its repository

packslip verify packslip.sigstore.json \
        --identity-prefix https://github.com/owner/repo/ \
        --issuer https://token.actions.githubusercontent.com \
        --artifact mytool-1.2.3-linux-x64.tar.gz

Verify hk 2.3.0 against its signer fingerprint

packslip verify packslip.sigstore.json \
        --pin ps1_snirenkjwr7m5ozgcufameodnm \
        --artifact hk-x86_64-unknown-linux-gnu.tar.gz

Verify a key-signed release

packslip verify packslip.sigstore.json \
        --pubkey release.pub \
        --artifact mytool-1.2.3-linux-x64.tar.gz