[/]patchward
local-first security agent

Security fixes that show their work.

AI can produce a plausible patch around an unsafe import, dependency, or exception path in seconds. Plausible is not verified. Patchward runs five real scanners on your Python repo and opens one bounded fix PR at a time — with a receipt that states exactly what it checked.

Request a pilot →See how it works
mechanism

Five scanners, one focused fix, three gates.

Static analysis runs entirely on-premise in a network-isolated sandbox. Findings are normalized, triaged, and handed to a fix generator that writes one targeted patch — validated before it ever reaches a pull request.

semgrep+bandit+pip-audit+trivy+eslintsarif
gate 1re-scan confirms the flagged rule no longer fires✓ pass
gate 2diff-bounds check confirms the edit stays within authorised lines✓ pass
gate 3your test suite runs, on your machine, against your tests✓ pass
the verification receipt

Every PR states which gates ran. Every time.

CLI, run by Yehor directly against the customer's own repository. Gate 3 runs in the normal case. The disclosed-skip path exists for the hosted environment and is drawn with equal weight, not hidden.

gate 3 · normal case
✓ pass

Gate 3 (test suite): PASS — your test suite ran and passed. All three gates verified.

gate 3 · disclosed edge case
– skipped

Gate 3 (test suite): SKIPPED — no test runner was available in this environment, so this fix was not validated against your tests. Gates 1 and 2 passed: the flagged rule no longer fires, and the change stays inside the authorised lines. Run your suite before merging.

// status is never colour alone — every state ships as word + icon + colour.
proof

565 passed, 3 skipped · 91.20% coverage

Pulled live from the site's own canonical facts ledger — not hand-typed into this page. If it goes stale, it's wrong in exactly one place to fix.