I've been building MaruCheck, an independent, open-source QA verification tool aimed to solve the issues that arise when coding agents like codex, claude, cursor make semantic issues that has heavy ramifications.
Take the example where the requirements says a free user gets 5 uploads. The code changes this behavior to 10. Test generated from the implementation may simply start expecting 10. But Marucheck treats the existing approved requirements as a separate evidence and flags the behavior change.
Some of the things implemented currently are Quality contracts, repository and stack scanning, Git diff/change- impact analysis, risk based analysis, semantic drift detection, QA memory for previous bugs/regression, CLI workflows, integration for coding agents, Github/CI verification etc etc..
Another area I’m experimenting with is QA Memory.
If six months ago a bug existed because users could access another customer’s invoice by changing an invoice ID, MaruCheck can associate that regression with the relevant files/contracts. If those areas change again later, that previous failure becomes part of the new verification plan.
The project is local-first and I’m trying not to reinvent existing testing infrastructure unnecessarily. The idea is to orchestrate tools like Playwright/Vitest/security/Jest tooling rather than build another browser automation framework from scratch.
Currently it's on NPM and you can runit using npx or npm by writiing npx --yes marucheck@0.3.0 init and all the information and docs are available on the site marucheck.dev.
I have decided to build it in the open and I'm especially interested in feedback on all aspects. Contributors are very welcome as well - issues, adapters, testing, docs, bug reports, architecture criticisms, all of it.
Thanks