agent-os: Agent for Claude Code

.claude/agents/review-test-quality.md

review-test-quality is an agent for Claude Code from saadnvd1/agent-os. It costs 69 tokens per session (1,108 once invoked), scanned A, original, MIT.

A reviewer for tests changed in an AgentOS branch. It checks whether tests verify real behaviour, including missing coverage, tests that pass for the wrong reason, excessive mocking, and differences between local and continuous-integration runs.

In plain words
What is it for?
Use it to inspect tests and their related implementation for missing cases in routes, parsers, security decisions, tools, migrations, and other new behaviour.
Why use it?
It helps catch tests that look successful but do not protect the feature, as well as failures that appear only in CI, the automated build-and-test system.

Agent for Claude Code

Written for Claude Code: installed under .claude/. Also seen: model in frontmatter; reads .claude/ paths.

This is saadnvd1/agent-os's own configuration. It tells Claude Code how to work on agent-os itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything agent-os configures →

Reuse

Borrowing it

Nothing to install: this file belongs to saadnvd1/agent-os. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/saadnvd1/agent-os/main/.claude/agents/review-test-quality.md
Clone the repo
git clone --depth 1 https://github.com/saadnvd1/agent-os

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for review-test-quality

README.md
[![agentmods](https://agentmods.dev/badge/agents/saadnvd1/agent-os/review-test-quality/github.svg)](https://agentmods.dev/agents/saadnvd1/agent-os/review-test-quality)
Your own site
<a href="https://agentmods.dev/agents/saadnvd1/agent-os/review-test-quality"><img src="https://agentmods.dev/badge/agents/saadnvd1/agent-os/review-test-quality/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for review-test-quality

Your own site · 80×15
<a href="https://agentmods.dev/agents/saadnvd1/agent-os/review-test-quality"><img src="https://agentmods.dev/badge/agents/saadnvd1/agent-os/review-test-quality.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 69 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,108 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00069 $0.01108
Opus 5.5 $0.00028 $0.00443
Sonnet 5.5 $0.00014 $0.00222
Haiku 4.5 $0.00007 $0.00111

Measured 22d ago against content hash b91d39795e1e, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

review-test-quality scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 22d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/agents/review-test-quality.md · 62 lines

How it starts

The opening of the file, as written. The whole thing — 62 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Test quality review

Tests here run under Vitest, locally in a Mac session that inherits AgentOS's environment and in CI on Ubuntu (scripts/check). Flag high-confidence problems in tests and tested code introduced or modified by this branch.

Process

  1. Changed files: use the list in your prompt. If none was given: with a PR number, gh pr diff <NUMBER> --name-only; otherwise git diff main...HEAD --name-status -M plus git status --short --untracked-files=all. Read new files whole and git diff main -- <file> for changed ones. Split them into implementation and tests (*.test.ts(x) next to the file).
  2. Read each changed implementation file with its test.
  3. Where a test's correctness is in doubt, run it (npx vitest run <file>) and read what it really asserts. Don't edit files to prove a point: other reviewers are reading the same tree.
  4. Check every rule below.
  5. Report.

Rules

Missing tests for new behaviour Flag new code with logic and no test: a merge gate, brake or approval path; an auth or trust decision in lib/security/; a parser (PR bodies, worker messages, CLI output, headers); an orchestrator tool; a migration with data movement; a stack or task state transition. Don't flag pure wiring, types, constants, or UI with no condition or handler.

Security and gate tests must cover the refusal A test of a gate, guard or parser that only checks the happy path. Each needs the input that must be refused (missing, malformed, stale, from another workspace, a proxied request on loopback) asserting the refusal, because the failure mode that matters is failing open.

Tests that pass for the wrong reason

  • The assertion is on a value the test stubbed (vi.mock returns X, the test asserts X).
  • expect(promise).rejects without await, or an async assertion never awaited: it passes whatever happens.
  • toThrow() with no message match, where the code could throw for another reason (a typo, a missing mock).
  • An assertion inside a callback or a .then that never runs, or in a loop over an empty array.
  • toBeTruthy()/toBeDefined() where the value matters.
  • A regex so loose it matches the error for a different gate.
  • A test that mocks the module under test, or mocks @/lib/... code the behaviour depends on when the real thing can run (this repo runs real git repositories and real SQLite in tests; see lib/orchestrator/signoff.test.ts).

Read the full file on GitHub · 62 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 22d ago First seen · 62 lines · 69 tokens per session scan A b91d39795e1e

Subscribe to this mod's changes

review-test-quality is an agent published in the GitHub repository saadnvd1/agent-os (11 stars, last pushed today), licensed MIT. It adds 69 tokens to every session and 1,108 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-07.