Ship code.
Patchy ships
the security.
A swarm of AI agents lives inside your GitHub — scanning every push, writing surgical patches, and answering questions in-thread. Zero config. Zero context switching.
SECURING PRs AT TEAMS LIKE
A team of agents,
not a single model.
Each agent specializes. They hand off context. You get fixes, not tickets.
Scanner Agent
Static analysis + semantic reasoning on every push. Finds injection flaws, secrets, insecure deps, and logic bugs Semgrep misses.
auth.js:88SQLiapi.py:12CSRFutils.ts:5Weak RNGPatcher Agent
Writes minimal, reviewable diffs. Preserves style. Adds tests when possible.
Responder Agent
@mention in any issue or PR. Explains CVEs, justifies fixes, suggests alternatives.
Triager Agent
Ranks every finding by exploitability in *your* codebase. No noise. No 200-item dashboards. Only what actually matters this sprint.
From push to patch in seconds.
You push
Commit to any branch. Webhook fires.
Agents swarm
Scanner + Triager + Patcher spin up in parallel.
PR appears
Ready-to-merge patch with tests and rationale.
Patchy in a pull request.
@patchy why not use a prepared statement cache here?
Good call. `database/sql` already caches prepared statements per-connection. Adding an explicit `db.Prepare` cache buys <1ms here and adds lifecycle complexity. Want me to benchmark both?
Plays nice with your tools.
Things devs ask first.
Does Patchy train on my code?+
No. Your code is never used for training. Scans run ephemerally and logs auto-purge in 7 days.
Which languages?+
Go, Python, TypeScript/JS, Java, Ruby, Rust, PHP, C#. More shipping weekly.
How is this different from Dependabot or Snyk?+
Those flag. Patchy flags, fixes, explains, and merges. Agents handle the full loop.
Self-hosted?+
Yes — Docker or K8s. Bring your own LLM endpoint.
Your next PR deserves
an agent on it.
Free for public repos. 2-click install. Zero config.
Detected SQL Injection in
handlers/user.go:42. Fix uses parameterized query — no behavior change, no new deps.