Usage
Gatecheck is a lightweight CLI for security reports. It summarizes a report, checks it against a config, downloads EPSS and KEV data, and packs reports into one bundle.
Running gatecheck with no arguments prints nothing and exits 0. gatecheck --help lists the commands. gatecheck config, gatecheck bundle, and gatecheck download print the help for their subcommands.
Commands:
gatecheck versionprints the build information.gatecheck --versiondoes the same. The--versionflag is only on the root command.gatecheck config initprints a default config.gatecheck config convertrewrites one into another format.gatecheck list(aliaseslsandprint) prints one report.gatecheck list-allprints several.gatecheck validatecompares one report, or one bundle, to the config.gatecheck bundle create,bundle add, andbundle removemanage a bundle.gatecheck download epssandgatecheck download kevwrite the upstream data to standard output. EPSS files are cached until the published date changes.gatecheck bootstrapinstalls Grype, Syft, Gitleaks, semgrep’s experimental osemgrep CLI, Trivy, and osv-scanner.gatecheck grype,syft,gitleaks,semgrep,osemgrep,trivy, andosv-scannerrun those programs. See Bootstrap.gatecheck update(aliasesself-updateandupgrade) replaces this binary with a GitHub release after checking the archive checksum.gatecheck update --checkonly prints the current and latest versions.gatecheck agent-guide(aliasllm) prints a markdown guide for coding agents.gatecheck completionprints a shell completion script.gatecheck help [command]prints help for that command.
list and validate decide the report type from the file contents. The filename is the fallback when the contents are ambiguous. See Supported Reports.
Logs go to standard error. Tables, downloaded data, and config init go to standard output.
Exit status:
0when the command succeeds. Withvalidate --audit, an error returned by the check also exits 0.1when a report misses a configured threshold and--auditis off.255for a missing file, a rejected command line, or a check error when--auditis off.- The scanner commands return that program’s own status. A scanner that is neither installed nor on
PATHexits 255.
Validation lists which validate failures are which status.
--verbose (-v) prints debug logs. --silent hides debug, info, and warning logs, and errors are still printed. The two flags cannot be used together. They are available on every command.