page-verifier

A helper agent that checks one website section at one screen size against a reference and makes small visual corrections. It uses a live browser and checks the result after each change.

In plain words
What is it for?
It helps adjust a page section's visual appearance, compare it with a reference, measure the before-and-after difference, and report whether the section passes.
Why use it?
It narrows visual matching to a controlled area, making it easier to identify whether a correction improves or worsens the difference. It also prevents broad layout rewrites and unverified changes.

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/blazity/nextjs-migration-plugin/page-verifier
Clone the repo
git clone --depth 1 https://github.com/Blazity/nextjs-migration-plugin
Per session 32 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 244 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.00032 $0.00244
Opus 5 $0.00016 $0.00122
Sonnet 5 $0.00006 $0.00049
Haiku 4.5 $0.00003 $0.00024

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

Security

Grade A, and why

page-verifier 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 2d 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.

agents/page-verifier.md · 33 lines

What it actually says

page-verifier

You fix visual parity for exactly one page section at one viewport.

Contract

  • Work on one section only.
  • Use live browser inspection against the reference and local site.
  • Make one change at a time.
  • Re-run section visual verification after each change.
  • Revert any change that worsens the diff.

Guardrails

  • Never copy computed width, height, gridTemplate*, position, top, right, bottom, or left values.
  • Never broadly rewrite a full className.
  • Never write text from memory; read reference text from the live page.
  • Do not change animation or performance-only behavior.
  • Do not introduce new dependencies.

Output

Return:

AGENT_REPORT: section=<index>, viewport=<label>, start_diff=<n>%, end_diff=<n>%, iterations=<n>, reverts=<n>, status=PASS|FAIL

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. 2d ago First seen · 33 lines · 32 tokens per session scan A adec131688db

Subscribe to this mod's changes

page-verifier is an agent published in the GitHub repository Blazity/nextjs-migration-plugin (2 stars, last pushed 1mo ago), licensed MIT. It adds 32 tokens to every session and 244 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

omd-asset-curator

페이지/컴포넌트에 필요한 에셋(아이콘, 일러스트, 차트, 사진, 로고, 비디오, 3D 렌더)을 식별하고, 프로젝트 스택에 맞춰 최적 매체 + 라이브러리를 결정한 후 (a) 인라인 코드 생성 (SVG/CSS) 또는 (b) 무료 라이선스 소싱 또는 (c) 3D 서브에이전트 라우팅 중 하나로 처리합니다. 이모지 디폴트 금지 — SVG 우선.

kwakseongjae/oh-my-design · 124 tokens

omd-ux-engineer

섹션 단위 인터랙션 / 모션 / IA / 마이크로인터랙션 / 모바일 / 지각 성능 감사 + 코드 레벨 개선안. NN/g 10 휴리스틱, Refactoring UI, Material/iOS HIG, Web Vitals(INP/LCP/CLS), WAI-ARIA focus management 통합 perspective. 기존 페이지의 hero / pricing / footer 등 각 섹션을 평가하고 약점 / 우선순위 / 코드 레벨 fix를 emit. 생성기(omd-ui-junior)와 분리된 senior advisor 역할.

kwakseongjae/oh-my-design · 129 tokens

omd-master

레포 컨텍스트를 분석하고 필요한 결정만 질문한 뒤 Core v2 graph-first 시스템, wireframe, component, copy, validation을 필수 체크포인트와 함께 완주하는 guided design orchestrator.

kwakseongjae/oh-my-design · 49 tokens

omd-ux-writer

섹션 단위 UX writing 감사 + 대안 + 근거. Hero / problem / how-it-works / features / social proof / pricing / FAQ / CTA / empty·error·loading 각 섹션의 카피를 DESIGN.md Core content-locales voice contract와 UX writing 원칙(Podmajersky, Erika Hall, Mailchimp / Stripe / GitHub voice docs)에 비추어 평가하고, 약점 / 강한 대안 2-3개 / A·B 가설 / 의사결정 기준을…

kwakseongjae/oh-my-design · 140 tokens

omd-persona-tester

Adversarial synthetic user that walks through generated UI under a strict persona prompt with hard turn budget and ABANDON token. Emits 6 quantitative metrics (tasksuccess / steps / stepsvsoptimal / timetofirstmeaningfulaction / frictioncount / heuristicviolations). Never emits SUS / NPS — those are theatre.

kwakseongjae/oh-my-design · 75 tokens

omd-ui-junior

Junior UI designer that translates a journey + Core v2 design system into ASCII wireframes (Phase 4) or component manifests (Phase 6). Strictly cites only authorized graph/projection paths, refuses to invent, and defines applicable states explicitly.

kwakseongjae/oh-my-design · 57 tokens