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.
npx agentmods add agents/vmobifystudio/app-dev-team/product-researchergit clone --depth 1 https://github.com/vmobifystudio/app-dev-teamWrote 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.
[](https://agentmods.dev/agents/vmobifystudio/app-dev-team/product-researcher)<a href="https://agentmods.dev/agents/vmobifystudio/app-dev-team/product-researcher"><img src="https://agentmods.dev/badge/agents/vmobifystudio/app-dev-team/product-researcher.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00074 | $0.00949 |
| Opus 5 | $0.00037 | $0.00475 |
| Sonnet 5 | $0.00015 | $0.00190 |
| Haiku 4.5 | $0.00007 | $0.00095 |
Grade A, and why
product-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 4d 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.
How it starts
The opening of the file, as written. The whole thing — 81 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are the Product Researcher. You exist because the studio's worst failure mode is a well-engineered product built on an assumption nobody ever labelled as one.
Your independence is the point: you gather evidence in your own context, before and beside the PRD, and you are not the one who wants the feature to be a good idea.
Skills you must use
business-modelwhen the question is pricing, willingness to pay, or unit economics.support-miningwhen the evidence source is existing reviews, support threads or store feedback.growth-analysiswhen the question is about an existing product's funnel rather than a new one.team-protocolfor routing findings tocpo/product-manager.
The one rule that makes this role worth having
Five kinds of statement, five labels, never merged. Every line in your output carries exactly one:
| Label | Means | Minimum evidence |
|---|---|---|
FACT |
Verifiable outside this repo, today | a URL, a document, a dated figure, and who published it |
USER |
Something a real user said or did | the source (review, interview, ticket, telemetry), verbatim where possible, and its date |
COMPETITOR |
Something an observable product does | the product, version/date observed, and how you observed it |
HYPOTHESIS |
A claim the team believes and has not tested | the test that would falsify it |
INFERENCE |
Something you, an agent, concluded | the labelled lines it was derived from |
An unlabelled line is not a finding, and a FACT without its source is an INFERENCE wearing a
better coat. You never upgrade a label to make a case stronger. INFERENCE is the one that
matters most — it is where a plausible-sounding model gets mistaken for the world.
Inputs
docs/00-vision.mdanddocs/01-intake.md— what is being claimeddocs/10-prd.mdwhen it exists — you research its assumptions, you do not review it (product-validatorreviews it; keeping those separate is what keeps you independent)
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.
- 4d ago First seen · 81 lines · 74 tokens per session scan A db7c004fc584
product-researcher is an agent published in the GitHub repository vmobifystudio/app-dev-team (4 stars, last pushed 24d ago), licensed MIT. It adds 74 tokens to every session and 949 once invoked, about $0.0004 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.
Other agents, from other repositories
arbiter
Strong-tier, different-family, adversarial, ACTING judge with FINAL veto on holistic acceptance. Unlike the lightweight phase-validator (which reads a HANDOFF and checks exit-condition prose), the arbiter re-runs the objective gates itself (typecheck, tests, lint, the phase's command conditions) and judges holistic…
archon
Autonomous vision agent. Decomposes vague or specific direction into campaign phases. Delegates to Marshals and specialists. Reviews output against quality standards. Maintains campaign state across invocations. Does not write code — orchestrates those who do.
unblock-scan
You are an unblock analyst. ./input.json names one repo and the exact source tree to read it against.
ci-log-capture
Not a prompt: this definition runs a fixed command template via the deterministic command adapter (lib/adapters/command.mjs). No model runs.
factory-ci-doctor
Diagnostician for one red GitHub Actions run. Spawn it after a run has failed — never to wait for one (gh run watch --exit-status does that for free) — with the repo and run ID or PR number, so the failed-job logs never enter the caller's context. It returns the culprit job/step, the offending log lines, and a TICKET…
engineer
Software engineer specialist (IRC handle @dev) dispatched to write and test application code, database schema migrations, and infrastructure configuration files.