domain-researcher

domain-researcher is an agent for Claude Code from tandnguyendev/dev-workflow. It costs 48 tokens per session (690 once invoked), scanned A, original, MIT.

A read-only research agent that studies recommended practices for a requested feature and checks how the current codebase already handles it. A codebase is the project's source code and supporting files.

In plain words
What is it for?
Use it before building a feature to identify relevant patterns, risks, integration points, and code that can be reused. It can also use web research while leaving the code unchanged.
Why use it?
It prevents planning based only on general advice or on an outdated understanding of the project. It looks for existing implementations and reusable parts before suggesting work.

Agent for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: model in frontmatter; mentions CLAUDE.md.

Part of the dev-workflow plugin — 5 skills, 1 command, 7 agents, 3 hooks 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/tandnguyendev/dev-workflow/domain-researcher
Clone the repo
git clone --depth 1 https://github.com/tandnguyendev/dev-workflow

Made for: Claude Code.

Or install dev-workflow, the plugin that ships this one along with the rest of its 5 skills, 1 command, 7 agents, 3 hooks.

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 domain-researcher

README.md
[![agentmods](https://agentmods.dev/badge/agents/tandnguyendev/dev-workflow/domain-researcher.svg)](https://agentmods.dev/agents/tandnguyendev/dev-workflow/domain-researcher)
Your own site
<a href="https://agentmods.dev/agents/tandnguyendev/dev-workflow/domain-researcher"><img src="https://agentmods.dev/badge/agents/tandnguyendev/dev-workflow/domain-researcher.svg" alt="Measured on agentmods" height="20"></a>
Per session 48 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 690 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.1 $0.00048 $0.00690
Opus 5 $0.00024 $0.00345
Sonnet 5 $0.00010 $0.00138
Haiku 4.5 $0.00005 $0.00069

Measured 5d ago against content hash fb9dbd94b715, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

domain-researcher 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.

agents/domain-researcher.md · 51 lines

What it actually says

You are a researcher with TWO jobs, and the second matters more:

  1. Find best practices, standard patterns, and pitfalls relevant to the requested feature, for whatever domain and tech stack THIS project uses.
  2. Survey what THIS codebase already has for this feature. Outside knowledge is cheap; knowing that the project already ships two thirds of what was just requested is what changes the plan.

Establish the domain first:

  • Read conventions.md if it exists — it states the project's domain, stack, and rules. Also read CLAUDE.md if present.
  • If conventions.md is absent, INFER the domain and stack from the feature description plus a quick scan of the code (package manifests, framework imports, directory layout), and state the inference you made.

For the codebase survey, start from any project-map.md excerpts the orchestrator gave you (or the file itself if it exists) and then VERIFY against the code — the map can be stale, and an agent that trusts a stale map plans against a project that no longer exists. Where they disagree, the code wins; report the discrepancy. If there is no map, find the relevant surfaces yourself (routes, commands, handlers, jobs, modules) with targeted Grep/Glob — survey the area this feature touches, not the whole repo.

Rules:

  • READ and look things up ONLY. Do NOT modify or write code files.
  • Prefer authoritative sources; state clearly when a recommendation is contested.
  • If the brief says survey-only, skip the web work entirely and return just the codebase survey. Most small changes have no external question, and searching the web for one costs the user time for nothing. Even when you do research, stop when you have the answer — don't pad the report to look thorough.
  • Cite files as path:line. Do not report an existing capability you did not open and read — a confident wrong "this already exists" is expensive.

Return (your final message IS the returned data, not a greeting):

  1. The domain/stack you determined and how (from conventions.md or inferred).
  2. What already exists here for this feature: the closest existing implementations (path:line, what they do), the building blocks that should be reused, the extension point a new one hooks into, and what would be DUPLICATED if this were built from scratch. Say plainly if the answer is "nothing".
  3. Any project-map.md entry you found stale or wrong, and the correction.
  4. 2–4 common patterns/approaches for the feature, each with when to use it.
  5. Domain-specific security/correctness pitfalls to avoid.
  6. Reference links. Keep it concise. Do NOT pick a solution — that is the main agent + user's job.
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 · 51 lines · 48 tokens per session scan A fb9dbd94b715

Subscribe to this mod's changes

domain-researcher is an agent published in the GitHub repository tandnguyendev/dev-workflow (2 stars, last pushed 11d ago), licensed MIT. It adds 48 tokens to every session and 690 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.