Platform

Code Remediation

Confirmed findings come back as reviewable pull requests: internally verified, ready for your developers to approve.

Schedule a Technical Demo →
Keygraph code remediation showing a verified patch and reviewable pull request

From finding to reviewable PR, autonomously. Click a finding in Keygraph. An agent reads the evidence, writes the fix, runs it past the original scanner to prove the vulnerability is gone, and opens a draft pull request under a Keygraph bot identity. Your developers review and merge, just like any other change.

Works across your scanners and your stack.

Code Remediation operates on the scan types where an automated patch is honest and high-confidence, and lands in the source control your team already uses.

Findings it patches
Agentic SAST

Point issues, data-flow vulnerabilities, and confirmed business-logic findings.

IaC scanning

Misconfigurations and policy violations across Terraform, Kubernetes manifests, Dockerfiles, and CI workflows.

Whitebox & Blackbox pentest

Confirmed exploits from the agentic pentester come back as patches with the exploit record attached as evidence.

SCA, Secrets, and Container remediation are on the roadmap.

Source control coverage
GitHub
Cloud + Enterprise Cloud

Patches open as draft PRs in your existing GitHub Cloud or GitHub Enterprise Cloud organization. Self-hosted GHES support is on the roadmap.

GitLab
.com, Dedicated, Self-Managed

All GitLab hosting modes are supported, including GitLab Self-Managed (CE and EE) at modern versions. Patches arrive as merge requests in the same project.

Verified before it ships.

Before a pull request is ever opened, the patch has to prove it closed the original vulnerability. If it doesn't, no PR. No noise in your queue.

Step 01
Re-run the original signal.

Keygraph re-runs the same scanner that produced the finding against the patched code, scoped to the affected files. The vulnerability has to actually disappear.

Step 02
Bounded retries, then stop.

If the first attempt doesn't land, the agent gets a bounded number of retries with the verifier's feedback. If it still can't fix it cleanly, no PR opens and the failure is surfaced for a human.

Verification bundle
Receipts attached to every PR Keygraph opens.

Every PR ships with the proof: scanner output before, scanner output after, and the diff that closed the gap. When a patch attempt can't open a PR, you get a structured failure reason instead of a silent skip.

The review gate stays yours.

Patching removes authoring cost, not the human approval. No PR is ever auto-merged. No merged patch is ever auto-reverted. Your developers stay in the driver's seat.

Draft PR, bot identity

Patches arrive as draft pull requests under a clearly labeled Keygraph bot. Easy to spot, easy to attribute.

Reviewed where you already review

No second review surface. The PR sits in your existing GitHub or GitLab queue alongside every other change.

User-initiated only

Patching never spawns automatically. Someone clicks the finding in Keygraph. That's the trigger.

No partial fixes

A PR opens only when every instance of the vulnerability inside its default scope is patched and verified. All-or-nothing.

Stop shipping the finding. Ship the fix.

Schedule a demo and watch Code Remediation turn a real vulnerability in your codebase into a draft pull request.