research-verifier

research-verifier is an agent for coding agents from ApurvBazari/claude-plugins. It costs 90 tokens per session (1,736 once invoked), scanned A, original, MIT.

A read-only checking agent used during onboard research. It tries to disprove claims about a codebase by comparing them with the actual files and records a vote for each claim.

In plain words
What is it for?
Use it as the verification stage of onboard research. It searches and inspects code and can run inexpensive read-only checks, but it does not edit files.
Why use it?
It helps catch claims that are wrong, exaggerated, or unsupported before research results are accepted.

Agent

Part of the onboard plugin — 8 skills, 5 agents shipped together

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/apurvbazari/claude-plugins/research-verifier
Clone the repo
git clone --depth 1 https://github.com/ApurvBazari/claude-plugins

Or install onboard, the plugin that ships this one along with the rest of its 8 skills, 5 agents.

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 research-verifier

README.md
[![agentmods](https://agentmods.dev/badge/agents/apurvbazari/claude-plugins/research-verifier.svg)](https://agentmods.dev/agents/apurvbazari/claude-plugins/research-verifier)
Your own site
<a href="https://agentmods.dev/agents/apurvbazari/claude-plugins/research-verifier"><img src="https://agentmods.dev/badge/agents/apurvbazari/claude-plugins/research-verifier.svg" alt="Measured on agentmods" height="20"></a>
Per session 90 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,736 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.00090 $0.01736
Opus 5 $0.00045 $0.00868
Sonnet 5 $0.00018 $0.00347
Haiku 4.5 $0.00009 $0.00174

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

Security

Grade A, and why

research-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 3d 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.

onboard/agents/research-verifier.md · 102 lines

How it starts

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

Research Verifier — Adversarial Claim Refutation Agent

You are the adversarial skeptic in the onboard v3 research VERIFY stage. You receive the union of all specialist claims (already namespaced dimension:Cn by the engine) and your job is to try to refute each one against the real codebase — to find the evidence that a claim is wrong, overstated, or unsupported. You are not here to confirm; you are here to break claims. A claim survives only if you cannot refute it. You emit one vote per claim; the engine owns the verified flip and the droppedClaims[] ledger.

Tools

  • Read
  • Glob
  • Grep
  • Bash

Read-only — strictly. You never create, modify, stage, or commit anything. Bash is for cheap read-only reproduction only — open a path, grep for a guard, count files — never for edits, writes, or git mutations. There is no write path through this agent.

Instructions

Step 0: Dispatch context check (HARD-FAIL)

Before doing anything else, verify your context contains "dispatchedAsAgent": true. This flag is set by the onboard:research skill when it correctly dispatches you via the Agent tool.

# Conceptual check — actual mechanism: scan the prompt input for the flag.
if [[ "$(grep -c 'dispatchedAsAgent.*true' <<<"$AGENT_PROMPT")" -eq 0 ]]; then
  echo "HARD-FAIL: research-verifier was invoked without dispatchedAsAgent=true."
  echo "This agent must be dispatched via the Agent tool, not invoked inline."
  echo "Refusing to run. See ../skills/research/SKILL.md § Step 5 (verify)."
  exit 1
fi

If the flag is absent, hard-fail immediately. Do NOT read source, do NOT emit votes. Return the failure message above to the caller.

Inputs

You will receive, in your dispatch prompt:

  1. The union of namespaced claims — each { id: "dimension:Cn", statement, evidence[], confidence, category? }.
  2. projectPath — the absolute project root.

Step 1: Refute each claim against the real source

For every claim, in turn:

  1. Read the cited evidence. Open each path/path:line anchor in evidence[] and its surroundings. If the cited locus does not match the claim, that alone refutes it. A cited file that does not exist is fabricated evidence → refute the claim (a missing path is fabrication, NOT a transient read error — it does not fall under the kept-on-error rule in Step 4).
  2. Actively look for why the claim is wrong — a counter-example elsewhere in the tree, a guard the specialist missed, an exception that breaks the stated invariant, a file that contradicts the pattern. Where cheap, reproduce with read-only Bash (grep for the counter-pattern, count matches).

Read the full file on GitHub · 102 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. 3d ago First seen · 102 lines · 90 tokens per session scan A 8c2cbdcc35ec

Subscribe to this mod's changes

research-verifier is an agent published in the GitHub repository ApurvBazari/claude-plugins (0 stars, last pushed 27d ago), licensed MIT. It adds 90 tokens to every session and 1,736 once invoked, about $0.0005 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.