Assistants generate more code than anyone reviews, and the gap between generation and review is where the injection flaw lives. Putting the scanner behind a tool call closes it: the assistant writes, scans, reads its own findings and rewrites, before any of it reaches a branch. The browser-testing half is the same instinct pointed at behaviour — record what a flow should do, and let the assistant find out the moment it stops doing it.
A server that gives an AI coding assistant a security pass over its own output. It runs static analysis with Semgrep and dynamic checks with tools such as Nuclei or ZAP against running components, and returns each finding with its vulnerability class, its location in the code, a severity, the evidence and a suggested remediation — in a shape the assistant can act on rather than a report a person has to triage. The same server also records browser tests from a description in words, replays them deterministically with Playwright, and heals them when the page changes underneath.
- A security scan of code an assistant has just generated or changed, returning vulnerability class, location, severity, evidence and a suggested fix
- A browser test recorded from a description in plain language, saved as a replayable file
- Recorded tests re-run on demand, with failures, screenshots and console logs returned to the assistant
- Test steps discovered by crawling a site, suggested per page
- The tests already recorded, listed
- Tests that repair themselves as the code changes, and assertions Playwright cannot express directly, such as whether text is overflowing its container
- Visual regression checks, by pixel comparison and by a vision model
Build from source — clone the repository and build it, then point your client at the binary
