Mine public reviews, app stores, and forums for unmet needs, competitor weaknesses, and switching triggers — with quoted evidence. Use when you want customer voice without waiting on interviews.
npx skills add https://github.com/deanpeters/Product-Manager-Skills --skill voice-of-customer-miner
Mine public customer voice — review sites, app stores, Reddit and practitioner forums, community
boards — for unmet needs, competitor weaknesses, and switching triggers: **search plan → source sweep
→ verbatim capture → need themes → so what → next-step options.** This bridges competitive
intelligence and discovery: it delivers customers' exact words without waiting on an interview cycle.
But public voice skews toward the angry and the vocal, so every theme it surfaces is a *hypothesis to
validate*, never a verdict — the output's last stop is always a real conversation.
Works best with: the product(s) or competitor(s) to mine — yours, a rival's, or a set — and **the
decision this should inform**.
Also useful: a theme to focus on (onboarding, pricing, reliability) if you have one; otherwise the
sweep runs open.
Input supplied inline with the invocation — text after the skill name, a pasted context dump, or an
appended ARGUMENTS: line — counts as answers already given. Use it against the question budget;
don't re-ask.
Arriving empty-handed? That works too. The skill opens with at most 3 questions (whose voice,
what decision, theme or open sweep) and proceeds on labeled assumptions if they go unanswered.
Example invocation: `Mine voice-of-customer for [Competitor A] and [Competitor B], focus on
onboarding — informs whether our Q1 bet is a migration tool.`
autonomous-investigationcontract — question budget of 3, search-plan gate, Fact/Inference/Assumption labels, Just Enough
Mode, stable schema, 4-option Final Step. Discipline: OSINT's review-and-community layer (see
intelligence-collection-disciplines).
data where my team works" is the underlying need. Theming by need is the same solution-free
discipline as JTBD and painstorming — and it's what makes themes portable into discovery.
persona language: the exact words customers use become interview probes and positioning copy.
Never fabricate quotes, ratings, review counts, or reviewer roles.
stores over-represent update anger. Note the bias per source — public voice is evidence with a
known skew, not ground truth.
vivid*. Say which; one articulate ranter is not a theme.
discovery-interview-prep instead; you need *your* users'
voice on a private area → mine your own tickets and research; statistical confidence required →
this is qualitative theming.
representative verbatims, how observation will be separated from interpretation. Continue unless
revised.
practitioner forums, community boards, social threads — capturing short real quotes with URLs and
noting each source's bias.
~~~markdown
Products mined: | Decision supported: | Sources swept: | As-of date:
For each of the top 3-5 themes:
Each bullet: label, confidence, URL where relevant.
~~~
A copy/paste fill-in version of this schema, with quality checks, lives in template.md.
discovery-interview-prep)battle-card-builder)opportunity-solution-tree)Accept 1, 2, 3, 4, 1 and 2, Verbose Mode, or a custom path.
A theme done right (fictional product, illustrative verbatims):
> ### Theme: getting historical data out at contract end
> - Frequency: recurring — 9 reviews across two sites plus a forum thread, past 6 months
> - Verbatim: "export took three support tickets and still dropped custom fields" — [G2-style review, URL]
> - Verbatim: "we stayed a year longer than we wanted because leaving meant losing our audit trail" — [forum thread, URL]
> - Who says it: ops managers at 50-200-person firms — Inference (reviewer titles where shown)
> - Reading: exit friction is functioning as involuntary retention — Inference; a rival with
> effortless migration turns this from their moat into their churn event.
Notice the theme name contains no feature ("export tool") — it names the need, so discovery can
explore solutions the reviews never imagined.
See examples/sample.md for a complete worked mining run (fictional
FSM-software market) where frequency honesty caps a vivid theme at low confidence and each
source's bias becomes a reading instruction. examples/sample-industrial.md
shows the thin-voice case — what honest mining looks like when the market barely posts reviews.
hands your roadmap to the loudest UI complaint.
real excerpt at a real URL — this domain's do-not-invent list exists because fabricated customer
quotes are both tempting and toxic.
discipline: recurring, concentrated, or isolated — say which.
the satisfied-and-silent majority never posts. Bias notes per source are mandatory.
"assumptions to validate in real interviews" section is the bridge to discovery — use it.
autonomous-investigation (Workflow) — the governing protocolintelligence-collection-disciplines (Component) — OSINT review-mining sources and bias tradecraftjobs-to-be-done (Component) — the solution-free framing themes should land indiscovery-interview-prep (Interactive) — where the validation happensopportunity-solution-tree (Interactive) — structures the opportunity hypothesesbattle-card-builder (Workflow) — consumes the weak pointsmarket-intelligence/voice-of-customer-miner-prompt.md in thehttps://github.com/deanpeters/product-manager-prompts repo.
Create AI marketing videos for ads, promos, product launches, and brand content. Models: Veo, Seedance, Wan, FLUX for visuals, Kokoro for voiceover. Types: product demos, testimonials, explainers, social ads, brand videos. Use for: Facebook ads, YouTube ads, product launches, brand awareness. Triggers: marketing video, ad video, promo video, commercial, brand video, product video, explainer video, ad creative, video ad, facebook ad video, youtube ad, instagram ad, tiktok ad, promotional video, launch video
App Store and Google Play screenshot creation with exact platform specs. Covers iOS/Android dimensions, gallery ordering, device mockups, and preview videos. Use for: app store optimization, ASO, app screenshots, app preview, play store listing. Triggers: app store screenshots, aso, app store optimization, play store screenshots, app preview, app listing, ios screenshots, android screenshots, app store images, app mockup, device mockup, app gallery, store listing
Generate images using Nano Banana Pro (Gemini 3 Pro Preview). Use when creating app icons, logos, UI graphics, marketing banners, social media images, illustrations, diagrams, or any visual assets. Supports reference images for style transfer and character consistency. Triggers include phrases like 'generate an image', 'create a graphic', 'make an icon', 'design a logo', 'create a banner', 'same style as', 'keep the style', or any request needing visual content.
Generate and save images using Pollinations.ai's free, open-source API. No signup required. Supports URL-based generation, custom parameters (width, height, model, seed), and automatic file saving. Perfect for quick prototypes, marketing assets, and creative workflows.
| Create AI marketing videos for ads, promos, product launches, and brand content. product video, explainer video, ad creative, video ad, facebook ad video, youtube ad, instagram ad, tiktok ad, promotional video, launch video
Use when building App Store screenshot pages, generating exportable marketing screenshots for iOS apps, or creating programmatic screenshot generators with Next.js. Triggers on app store, screenshots, marketing assets, html-to-image, phone mockup.
Anti-AI-slop design skill for greenfield pages, audits, redesigns, and design extraction from URLs or screenshots. Use when the user asks to build a new app or landing page, wants to redesign something, invokes Hallmark by name, or uses audit/redesign/study.
Launch and supervise OpenShell gator agents. Use when starting gator on issues or PRs, checking gator sandboxes, building the gator sandbox image, restarting stuck gators, inspecting gator logs, or experimenting with gator harness/model overrides. Trigger keywords - launch gator, start gator, run gator, gator sandbox, supervised gator, gator logs, restart gator.
Take deanpeters/voice-of-customer-miner from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.