# Reapr > Reapr is mutation testing for your AI agents, and for every pull request: kill the mutants your tests miss. The `rpr` CLI and the `reapr-corp/run` GitHub Action run the project's own mutation engine config (StrykerJS or cargo-mutants) on the diff and report the diff's mutation score and every surviving mutant, as text for people and JSON for agents. - Current release: rpr 0.4.0, Linux x86_64 and aarch64. macOS and Windows are planned. - Engines: StrykerJS (JavaScript, TypeScript) and cargo-mutants 26.2 to 27.x (Rust) are supported; PIT, Infection, mutmut and Stryker.NET are planned. - Reapr never edits the engine config. For StrykerJS it overrides only `mutate`, `reporters` (adds `json`) and `jsonReporter.fileName` in a wrapper config; for cargo-mutants it uses the project's own `.cargo/mutants.toml`. - Free and open source (FSL-1.1-ALv2 core and CLI, MIT adapters, Action and agent skill). Reapr Cloud, a hosted layer, is planned and not built. - Numbers on reapr.dev come from one measured case, documented in the bench report linked below. ## Docs - [Overview](https://reapr.dev/index.md): what Reapr is, how it works, install, the reference measurement and FAQ. - [README](https://github.com/reapr-corp/reapr#readme): install, flags, output and JSON schema, run record, exit codes. - [GitHub Action](https://github.com/reapr-corp/run#readme): inputs, outputs and monorepo `configs` for `reapr-corp/run@v1`. - [Telemetry](https://reapr.dev/telemetry.md): the one anonymous event `rpr` sends per run, every property, and how to turn it off. ## Guides - [How to speed up a slow Stryker run](https://reapr.dev/guides/speed-up-stryker.md): Where a small StrykerJS run spends its time, and the ignorePatterns, checker, logLevel and concurrency settings that change it. - [Mutation testing on pull requests](https://reapr.dev/guides/mutation-testing-pull-requests.md): Why mutation testing belongs on the pull request diff, and how to scope a StrykerJS run to it, with or without Reapr. - [Why Stryker's incremental score covers the whole package](https://reapr.dev/guides/stryker-incremental-score.md): Why StrykerJS with incremental true and --mutate ranges reports a package-wide score, and how Reapr gets the score of the diff. - [Mutation testing for AI-generated code](https://reapr.dev/guides/mutation-testing-ai-generated-code.md): Why coverage cannot check tests that an agent wrote, how surviving mutants can, and the rules Reapr's mutation-audit agent skill follows. ## Agents - [mutation-audit skill: install and usage](https://reapr.dev/skill.md): self-contained steps to install the agent skill (Claude Code plugin, or AGENTS.md for other agents) and run it. - [mutation-audit skill](https://github.com/reapr-corp/reapr/blob/main/plugins/reapr/skills/mutation-audit/SKILL.md): workflow and hard rules for an agent that turns surviving mutants into tests. - [AGENTS.md](https://github.com/reapr-corp/reapr/blob/main/plugins/reapr/AGENTS.md): the same rules for Cursor, Codex, Copilot and other agents. ## Optional - [Bench report](https://github.com/reapr-corp/reapr/blob/main/bench/results/2026-11-02-turborepo-monorepo.md): where the wall time of a diff-scoped Stryker run goes, phase by phase. - [Privacy](https://reapr.dev/privacy.md): what reapr.dev and the Reapr Cloud waitlist collect. - [Full text](https://reapr.dev/llms-full.txt): every page above in one file.