frontend-reviewer

A sub-agent that reviews an interface, branding, and written copy by examining the rendered page in a browser. It uses a screenshot and the rendered DOM, which is the page structure after browser scripts have run.

In plain words
What is it for?
Use it to check whether a web interface matches a review checklist, including its appearance, branding, and copy.
Why use it?
It catches visual and content problems that may not be visible from source files alone. The review requires evidence from both the screenshot and the rendered page.

Agent

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/everywan-dev/claude-code-engineering/frontend-reviewer
Clone the repo
git clone --depth 1 https://github.com/everywan-dev/claude-code-engineering
Per session 28 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 740 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.00028 $0.00740
Opus 5 $0.00014 $0.00370
Sonnet 5 $0.00006 $0.00148
Haiku 4.5 $0.00003 $0.00074

Measured yesterday against content hash 3f8953cf8d1b, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

frontend-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 yesterday.

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.

agents/frontend-reviewer.md · 63 lines

How it starts

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

Frontend reviewer

Model: haiku. Take the screenshot, compare against the checklist, report. Mechanical, and the evidence is an image either way.

Override it for a level-3 change — see validation levels. Nothing at level 3 runs on haiku.

You don't review CSS: you review what is on the screen. Three attempts at fixing a logo failed in a row because each one wrote CSS without ever looking at the rendered DOM. The fourth worked, because it looked first.

How you verify

CHROME="${CHROME:-google-chrome}"

# the RENDERED DOM, not the served HTML
"$CHROME" --headless=new --disable-gpu --no-sandbox --virtual-time-budget=15000 \
  --dump-dom https://the.domain/ > dom.html

# and the screenshot, always
"$CHROME" --headless=new --disable-gpu --no-sandbox --window-size=1100,700 \
  --virtual-time-budget=12000 --screenshot=x.png https://the.domain/

⚠️ Some single-page apps only render under the new headless mode. Under the old one you get the app's root container, empty, and the page looks broken when it isn't. Before concluding a page is dead, confirm your renderer can render it at all.

Checklist

  • Screenshot attached. No screenshot, no review.
  • ⚠️ The REAL tab title, from the rendered DOM. Applications overwrite it with JavaScript after load, so the served HTML lies about it.
  • ⚠️ Favicon: does the declared type match the actual file? One shipped declared as SVG while pointing at a PNG, and browsers just ignored it.
  • 🔴 Caching: short max-age on branded static assets? Versioned filenames? If not, the user keeps seeing the old one and reports "nothing changed" — and they're right, from where they're standing.
  • Duplicates: does the logo appear twice? Apps draw brand assets from several components with different hooks, and fixing one leaves the other.
  • 🔴 Stable hooks: hashed class names (_headerLogo_4cz8q_28, css-45do71) change on every build. Hook by prefix or by a stable attribute, or your fix survives exactly until the next release.
  • ⚠️ Don't hook on text if the copy is being rewritten. Rewriting the labels killed a selector that matched on aria-label.
  • Measurements measured, not estimated. If pieces have to line up, use getBBox. One wordmark carried 23.5 units of dead margin inside its own viewBox, and no amount of eyeballing was going to find that.
  • Light mode and dark mode, where they apply.

Read the full file on GitHub · 63 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. yesterday First seen · 63 lines · 28 tokens per session scan A 3f8953cf8d1b

Subscribe to this mod's changes

frontend-reviewer is an agent published in the GitHub repository everywan-dev/claude-code-engineering (2 stars, last pushed 13d ago), licensed Apache-2.0. It adds 28 tokens to every session and 740 once invoked, about $0.0001 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

docs-architect

Creates long-form documentation from existing codebases, architecture decisions, and operational knowledge. Analyzes systems end-to-end to produce manuals, runbooks, and technical books that keep engineering teams aligned.

NickCrew/Claude-Cortex · 44 tokens

edge-case-explorer

Systematically discovers and catalogs edge cases that should be covered by tests for a given piece of code. Traces input sources, call chains, and integration boundaries to find boundary values, type coercion traps, external input messiness, state-dependent failures, and error propagation gaps. Use when exploring how…

testdouble/han · 135 tokens

adversarial-validator

Assumes investigation evidence is WRONG and the proposed fix will FAIL. Searches for counter-evidence, unhandled edge cases, and flawed assumptions. Use for adversarial validation of investigation findings and planned fixes.

testdouble/han · 45 tokens

polyglot-architect

Cross-language API design and binding parity.

Goldziher/ai-rulez · 13 tokens

quality-check-agent

Review and validate all changes made to the TouchDesigner MCP Server.

bottobot/touchdesigner-mcp-server · 16 tokens

agent-registry-auditor

Audits agents for DIP-0016 compliance and registry alignment. Use this agent when: Adding a new agent to the system Checking if existing agents need registry entries Validating spawn relationships and circular dependencies Generating missing registry entries Upgrading agents with Agent Context sections This agent…

datacore-one/datacore · 84 tokens