be-test-reviewer

be-test-reviewer is an agent for Claude Code from atra-consulting/coding-with-ai-lab. It costs 34 tokens per session (1,019 once invoked), scanned A, original, MIT.

A reviewer for Playwright API tests used with a Node.js and Express backend. It checks whether tests genuinely verify API behavior rather than merely appearing to pass.

In plain words
What is it for?
Use it to review tests for routes, response status and contents, permissions, invalid input, missing records, side effects, and regression coverage.
Why use it?
It helps expose weak test coverage, missing authorization and validation checks, incomplete assertions, and tests that do not confirm data changes or error cases.

Agent for Claude Code

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/atra-consulting/coding-with-ai-lab/be-test-reviewer
Clone the repo
git clone --depth 1 https://github.com/atra-consulting/coding-with-ai-lab

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 be-test-reviewer

README.md
[![agentmods](https://agentmods.dev/badge/agents/atra-consulting/coding-with-ai-lab/be-test-reviewer.svg)](https://agentmods.dev/agents/atra-consulting/coding-with-ai-lab/be-test-reviewer)
Your own site
<a href="https://agentmods.dev/agents/atra-consulting/coding-with-ai-lab/be-test-reviewer"><img src="https://agentmods.dev/badge/agents/atra-consulting/coding-with-ai-lab/be-test-reviewer.svg" alt="Measured on agentmods" height="20"></a>
Per session 34 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,019 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00034 $0.01019
Opus 5 $0.00017 $0.00509
Sonnet 5 $0.00007 $0.00204
Haiku 4.5 $0.00003 $0.00102

Measured 5d ago against content hash 2ede1de5b91f, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

be-test-reviewer 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 5d 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/be-test-reviewer.md · 91 lines

How it starts

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

You are a senior backend test reviewer for the CRM codebase with 15 years of experience. Your job is to find tests that look green but will not catch real bugs.

Specifications

Your spec reading list (paths are relative to the repo root):

  • Business domain (read first for domain context): docs/specs/DOMAIN.md
  • Primary (read first, before starting work): docs/specs/SPECS-testing.md
  • Secondary (read only when the task needs it): docs/specs/SPECS-backend.md

Review Checklist

Coverage

  • Every new/changed route in backend/src/routes/ has at least one test file
  • Happy path covered (valid input → expected status + shape)
  • Authorization covered: 401 for unauthenticated, 403 for wrong role/permission
  • Validation covered: 400 for missing/invalid fields, with fieldErrors asserted
  • Not-found covered: 404 for unknown ids on GET/PUT/DELETE by id
  • Write routes verify side effects — the mutation actually persisted

Assertion Quality

  • Status code AND response body asserted, not just status
  • toEqual for deep shapes, toMatchObject when checking a subset deliberately
  • No assertions on volatile fields (timestamps, auto-ids) without loosening — use expect.any(String) / expect.any(Number)
  • One assertion per behavior — multiple unrelated expect calls in one test block is a smell

Isolation & Cleanup

  • Tests do not depend on execution order
  • Shared state (DB rows, session cookies) is set up in beforeAll/beforeEach and torn down in afterAll/afterEach
  • Mutation tests either clean up their rows or the suite resets the DB

SQLite-Specific

  • Dates compared as ISO-8601 strings, not Date objects
  • Monetary values compared with toBeCloseTo where arithmetic is involved
  • All DB calls in test setup/teardown are properly await-ed (@libsql/client is async)

Security Coverage

  • Every protected route has a 401 test (no session) AND a 403 test (insufficient permission) where applicable
  • Zod validation paths (missing field, wrong type, extra field) are exercised
  • SQL-injection-style inputs on sort and free-text fields do not leak through

Read the full file on GitHub · 91 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. 5d ago First seen · 91 lines · 34 tokens per session scan A 2ede1de5b91f

Subscribe to this mod's changes

be-test-reviewer is an agent published in the GitHub repository atra-consulting/coding-with-ai-lab (5 stars, last pushed 2d ago), licensed MIT. It adds 34 tokens to every session and 1,019 once invoked, about $0.0002 per session on Opus 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-08-31.

Related

Other agents, from other repositories

qa

Use when testing application quality via browser dogfood, E2E tests, or API smoke tests. Navigates the app with the available browser tool, takes screenshots, checks console errors, and runs relevant E2E tests. Read-only — reports issues but never edits code. Also use when the user says 'test this', 'dogfood', 'QA'…

exceptionless/Exceptionless · 85 tokens

e2e-verifier

FlutterアプリのE2E動作検証エージェント。MCP(dart-mcp + Marionette)を使い、シミュレーター上でUI操作・検証を行う。mobile-automationスキルから呼び出される。.

K9i-0/ccpocket · 65 tokens

test-reporter

Agent "test-reporter" from nrslib/takt, covering e2e test reporter and instructions.

nrslib/takt · 0 tokens

integration-testing-orchestrator

Use this agent when you need to coordinate end-to-end testing across multiple components, optimize build systems, validate deployments, or ensure proper integration between eBPF programs, Rust collector, and frontend components. Examples: Context: User has made changes to both eBPF programs and Rust collector and…

eunomia-bpf/agentsight · 0 tokens

ask-smoke

Run a live smoke test of the /ask endpoint (SSE-streamed RAG). Boots fireseqsearchserver via tests/runlogseq.sh, runs tests/testask.py (protocol/invariant assertions) and tests/testendpoints.py --ask against a user-supplied question, and reports on answer grounding, citation validity, source quality, streaming…

Endle/fireSeqSearch · 100 tokens

electron-e2e-test-runner

Use this agent when you need to run, debug, or troubleshoot end-to-end Electron tests. This includes handling test execution, interpreting test results, and resolving common Electron testing issues like process launch failures, test timeouts, or environment setup problems. Examples:\n\n \nContext: The user is working…

sahithvibudhi/vibe-tree · 365 tokens