Catch the apply that destroys your infrastructure.
bumper reads your Terraform plan and flags the changes that would expose or destroy your AWS, GCP, or Azure account — before terraform apply runs. A single static Go binary. The verdict is 100% deterministic.
One command. The whole verdict.
A real bumper --explain plan.json run on a plan that opens and destroys production. Every finding gets a plain-English line and a one-line fix.
Your AI agent can no longer
silently destroy your infrastructure.
Initialize bumper inside Claude Code, Codex, opencode, auggie or gemini and it installs a pre-apply hook. The agent cannot run terraform apply without piping the plan through bumper first.
Critical and destructive findings are a hard stop — the agent waits for an explicit human decision before it can proceed. Lower severities are surfaced but overridable, so the gate stays useful instead of becoming noise. bumper gates; it doesn't hold apply hostage.
Three things most plan scanners miss.
It reads the transition, not the result.
Most scanners check the config you'd end up with. bumper reads the plan's create / delete / replacemoves — so it catches “this apply will destroy your production database,” not just “this bucket is misconfigured.”
Zero-setup AI enrichment.
Every finding can be translated into plain English by an AI CLI you already have — claude, gemini, codex, opencode, auggie. No API key. No vendor account. No new dependency to install.
The deterministic core stands alone.
The verdict never depends on a model. It's 100% deterministic — the same plan always yields the same result — so you can safely block a merge on it. AI is optional polish, never a requirement.
Search the rule catalog, right here.
The same corpus bumper search indexes — 112 enforced rules plus ~2,600 advisory entries federated from Trivy, Checkov, KICS and Prowler. Below is a real run; under it, the same search live in your browser — click any result to get the full record.
get its full record · full corpus via the hosted Advisor ↓A knowledge MCP your agent can phone for best practice.
bumper's scanner is offline and deterministic — that never changes. The Advisor is the optional other half: a hosted Model Context Protocol server your AI tools can query for remediation guidance across AWS, GCP and Azure.
A free, hosted knowledge MCP
Point your editor or agent at the Advisor and it can semantically search every rule we know — 2,596+ entries from Trivy, Checkov, KICS and Prowler, merged with bumper's enforced set. Hosted on our box, free to use, no account.
Lookup, never upload
The Advisor answers questions about best practice — it never sees your plan, state, or code. scan, verify and guard stay 100% local on your machine; only the knowledge lookup is remote.
Always current
The catalog refreshes server-side as the upstream sources publish new rules — so the guidance keeps improving without you shipping a new binary or pulling a multi-megabyte database.
Same contract as local
The hosted search_rules tool returns the exact shape the offline binary does — the local index is lexical BM25; the Advisor adds real vector + hybrid semantic ranking. Swap one for the other with a single config line.
# one line wires the hosted Advisor into any MCP client { "mcpServers": { "bumper-advisor": { "type": "http", "url": "https://advisor.bumper.sh/mcp" } } } # or let bumper write it for you: $ bumper init --advisor
Drop it into the pull request.
One step in your workflow. The check runs on every plan and reports where developers already look.
SARIF to the Security tab
Findings upload as SARIF, so they appear inline in GitHub's Security tab — annotated on the exact line of Terraform.
One sticky PR comment
A single comment, updated in place on every push. No thread spam, no walls of duplicate output.
Fails on high+
Exits non-zero when a high or critical finding is present, so the check blocks the merge — configurable per repo.
# fail the PR before a destructive apply ever merges name: bumper on: [pull_request] jobs: scan: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: gnana997/bumper@v1 with: plan-json: plan.json fail-severity: high # high + critical block the merge