Code review for AI-written software

Know what is in the code before production does.

Your teams and their coding agents ship more than anyone can read. TrueMend reads every function, names what is not production-ready, and applies the fixes it can prove are safe. It runs on your machines, in the terminal, in CI and inside the coding agents themselves.

What it is

TrueMend is a code scanner for software written with AI assistance. It parses a codebase locally, scores every function, and reports what a careful reviewer would have caught: unchecked model output, error handling that hides failures, placeholder logic left in place.

Roughly a third of what it finds it fixes on its own, with a verified diff. The rest comes back priced, as a bounded refactor or as a decision for a person, so the backlog reads as a budget rather than a list.

Nothing is uploaded to run it. The same engine works from the terminal, in CI, and inside Claude Code, Cursor and Copilot, so one standard covers every team and every agent.

Why teams run it

Four things that go wrong when nobody reads the code.

Each one is a pattern in the library, caught at the line, on the first run.

01 · Error handling that hides failures

The catch block that hid an outage.

The retries kept failing. The catch block caught every one, rethrew nothing useful, and the dashboard stayed green for most of a day.

The engine names the wrapper at its line on the first run. The deterministic fix removes it with a diff and a re-parse, so the next failure is a failure you can see.

Patternunnecessary_try_catch
Fix tierDeterministic, applied for you. How the tiers work →
02 · An unpriced backlog

Cleanup ate the sprint.

The agent shipped the feature in three days. The rest of the sprint went to what it left behind, and nobody could say in advance how much that was.

The report prices the backlog before the sprint is planned: a third applied for free, the rest as bounded refactors and decisions, each with a cost attached.

Patternper finding · three tiers
Fix tierAll three, costed. Read the sample report →
03 · Unchecked model output

The reply that became a row.

The tool returned JSON. The handler parsed it and wrote it straight to the database. One malformed reply later, the vendors table held a row nobody had asked for.

The engine flags every place a completion or tool result is used as truth, high severity, at the line, inside the review where it can still be caught.

Patternai_unchecked_tool_output
Fix tierBounded refactor, opt-in. The LLM and agent SDKs it covers →
pull request · #412 · src/api/handler.py
m.okafor reviewed
LGTM, tests pass. Merging so the demo has data.
T
truemend-bot · line 88
high · ai_unchecked_tool_output
The tool’s reply is parsed and written with no validation between. Bounded refactor available: one function, reviewed diff.
04 · One standard across agents

Two teams, two standards.

One team reviewed by hand. The other let its agent merge. The agents ran on different prompts, and the same mistake passed in one repository and failed in the next.

One engine runs in the terminal, inside every supported agent and in CI, so a finding carries the same name, severity and tier wherever it appears. Nobody negotiates a second standard.

Pattern4,808 patterns · one library
Fix tierSame tier in every surface. Setup and MCP →
Core features

Six things it does, and the figure behind each one.

Pick a tab, or step through them in order.

4,808
patterns
146
framework specs
26
languages

It reads every function.

The engine parses a codebase to a syntax tree and scores each function against a library written for code produced with a model in the loop. No model decides what is wrong, so the same input gives the same answer every time.

How big the library is

15 head-to-head benchmarks. 14 wins, 1 loss, all published.

The audit has to hold up. Judged blind, against each language's own linter. The number is how often a finding does not hold up. Shorter bar is better.

TypeScript / React
vs Biome
Win
Truemend3.0%
Biome8.4%
Java
vs SpotBugs + Checkstyle + PMD
Win
Truemend18.6%
SpotBugs + Checkstyle + PMD60.8%
C# / .NET
vs Roslynator
Win
Truemend9.1%
Roslynator42.0%
Python / Django
vs Bandit + Pylint + Ruff
Loss
Truemend25.0%
Bandit + Pylint + Ruff23.0%