Skip to contentllms.txt

syllago moat sign

syllago moat sign [flags]

Assemble a sigstore v0.3 bundle for a manifest.json.

Online mode (—rekor-raw required): Assembles a bundle from a raw Rekor API response captured from a real Publisher Action run. The Rekor entry must have signed sha256(manifest.json). The bundle is verified against the trusted root before being written.

Dev/offline mode (—dev-trusted-root <dir>): Uses an ephemeral offline CA to sign the manifest without any network calls. Writes both signature.bundle (at —out) and trusted_root.json (in <dir>). The resulting trusted root is development-only — never use it in production.

The —identity flag (online mode only) accepts a JSON file with {“issuer”: ”…”, “subject”: ”…”} matching the expected signing identity. When omitted, the identity is auto-extracted from the Rekor entry cert.

FlagTypeDefaultRequiredDescription
--dev-trusted-rootstring—NoDirectory for dev-mode: writes trusted_root.json here and signs with an offline CA (mutually exclusive with —rekor-raw)
--identitystring—NoPath to signing identity JSON {“issuer”:”…”,“subject”:”…”} (online mode, auto-extracted when omitted)
--manifeststring—YesPath to manifest.json (required)
--outstring—NoOutput path for signature.bundle (default: <manifest>.sigstore)
--rekor-rawstring—NoPath to raw Rekor API response JSON (online mode)
--trusted-rootstring—NoPath to trusted-root.json for round-trip verify (online mode, default: bundled root)
FlagTypeDefaultRequiredDescription
--jsonbool—NoOutput in JSON format
--no-colorbool—NoDisable color output
-q, --quietbool—NoSuppress non-essential output
-v, --verbosebool—NoVerbose output
Terminal window
# Online: sign with a real Rekor raw response
syllago moat sign \
--manifest ./registry/manifest.json \
--rekor-raw ./ci-artifacts/rekor-response.json \
--out ./registry/manifest.json.sigstore
# Dev/offline: generate a smoke fixture bundle + dev trusted root
syllago moat sign \
--manifest ./test-registry/manifest.json \
--dev-trusted-root ./test-registry \
--out ./test-registry/manifest.json.sigstore

Source