Anti-marketing product research for Claude. Stops the AI from recommending whatever affiliate article ranks #1.
Ask any AI "what's the best piano under £2,000" and you get an affiliate listicle dressed as analysis. This skill makes Claude refuse that answer. It forces category landscape mapping, owner-only sources, counterfactual bias checks, and a scoped verdict you can actually act on.
Install • How it works • What changes • Example • Contributing
Most AI product advice is downstream of three polluted inputs: affiliate "top 10" listicles that optimise for commission, manufacturer copy that reads as review, and astroturfed forum posts planted at scale. Google now classes AI-generated reviews as spam, and bots like AkiraBot have seeded fake testimony across 80,000+ sites.
A 2026 arXiv paper also showed LLM recommendations carry measurable brand-reputation bias that a simple counterfactual prompt can cut by up to 74%. None of that correction happens by default when you ask "what's the best X."
This skill changes the default.
| Plain AI answer | With this skill |
|---|---|
| Restates the top-10 listicle | Maps the category landscape first — pro tier, prosumer tier, new entrants, new tech |
| Trusts any review that calls a product "class-leading" | Astroturf filter — rejects generic praise that reuses marketing copy |
| Single winner with no context | Inline-scoped verdict: "For [use] within [budget] in [country], the best is X because Y" |
| Flatters your preconception | Explicitly contradicts you when evidence disagrees |
| Lists reviews | Names recurring defects owners flag across forums |
| Stops at the product | Prices the full system — cables, software, accessories, total cost |
Drop the skill folder into your Claude skills directory:
git clone https://github.com/199-biotechnologies/product-research.git \
~/.claude/skills/product-researchThat's it. Claude Code auto-discovers skills in ~/.claude/skills/. Say "should I buy X" or "help me decide between Y and Z" and it fires.
The skill runs best when paired with two open-source CLIs that let it pull real owner testimony:
search— 11-provider web aggregator (Brave, Serper, Exa, Jina, Firecrawl, Tavily, SerpApi, Perplexity, Browserless, Stealth, xAI)xmaster— X/Twitter access for owner quotes, filterable by date and engagement
Without them, the skill falls back to WebSearch and explicitly warns you the signal quality drops to ~60%.
Nine gated steps. Claude cannot skip ahead.
0. Tool check — confirm search + xmaster available
1. Scope the question — reject unscoped "best X" queries; ask 2-4 clarifiers
2. Landscape map — pro-tier brands, new entrants, pro-use signal,
quality-defining parameters (BEFORE shortlisting)
3. Shortlist 3-5 — drawn from landscape, not from listicles
4. Source discipline — tier 1 owner forums > tier 2 non-affiliate press >
tier 3 independent YouTube; exclude dealer/affiliate/AI
5. Astroturf filter — reject generic praise; prefer specific defect naming
6. Parameter matrix — candidates × sourced objective parameters
7. Defect search — "[product] problems", "[product] broken", etc.
8. Anti-bias — counterfactual check + brutal critique + contradict user
9. Scoped verdict — inline scope or no verdict
"What's the best portable piano?"
Lists the same five famous models from listicles with one-line praise each. Recommends whichever ranks highest on affiliate pages. No scope, no dissent.
- Refuses the unscoped question. Asks for use case, budget, country, existing gear.
- Maps the landscape: Kawai (pro-tier, focus shifted to CA series), Yamaha (GrandTouch-S in P-525 is a portable scaled-down version of their cabinet action), Studiologic (new-entrant Fatar TP/400 WOOD rivals the old Kawai MP11SE), Korg (plastic RH3 still legacy), Nord (January 2025 Piano 6 is incremental).
- Surfaces known defects: Kawai MP11SE "slip-tape" wear — documented on owner forums, never in reviews. Casio PX-S7000 short-pivot ergonomic issue. Numa X GT SE reliability concerns from Italian QC.
- Delivers a scoped verdict: "For desk-based home practice under £2,000 in the UK, with cinematic piano sound as priority and occasional DJ secondary, the best choice is the Yamaha P-525 — built-in Bösendorfer Imperial sample plus built-in speakers match the criteria more directly than the Numa X GT SE (needs a laptop for cinematic sound) or the Grandstage X (no built-in speakers)."
Same question. Different answer.
No marketing vocabulary. The skill is banned from outputting "flagship", "legendary", "class-leading", "industry-standard", "cutting-edge", "premium", "state-of-the-art", "revolutionary", "best-in-class", "unrivalled", or "unparalleled" unless quoting someone.
No fake single winner. If candidates trade blows on different parameters, output is a tradeoff ranking ("Best for X: product A. Best for Y: product B"), not a forced verdict.
Scope or no verdict. Every recommendation must inline the scope: budget, use case, country, key constraint. A verdict without scope is marketing, not analysis.
Contradict the user. If the user's stated preference conflicts with evidence, the skill says so directly. No flattery.
product-research/
├── SKILL.md # Full skill definition with 9-step methodology
├── LICENSE # MIT
├── CONTRIBUTING.md # How to propose changes
└── README.md # You are here
One file does the work. SKILL.md is the entire skill — Anthropic's Agent Skills format means no scripts, no runtime dependencies, just a markdown file that teaches Claude the methodology.
- Claude Code (CLI) — auto-discovers skills in
~/.claude/skills/ - Claude.ai — upload as a skill in Projects
- Claude API — use via the Agent Skills API
- Any Claude-based agent harness that reads Anthropic Skills format
The methodology borrows from:
- Anthropic's Skill authoring best practices — conciseness, progressive disclosure, third-person description
- Productboard's competitive landscape mapping framework
- Prompt-based LLM debiasing research (arXiv, March 2026) — counterfactual prompting
- Google's 2024 policy classifying AI-generated reviews as spam
- SentinelOne's AkiraBot exposé on forum astroturfing at scale
PRs welcome. The skill is deliberately one file — keep it that way unless a change genuinely requires it. See CONTRIBUTING.md for the short version.
MIT. Use it, fork it, ship it.