[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6M97ASTDSCCH5M397E8E6CF":3,"skill-same:01M6M97ASTDSCCH5M397E8E6CF":104},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":46,"linkOnly":47,"markdownContent":48,"markdownBody":49,"frontMatter":50,"refName":54,"commitSha":55,"skillDirectory":56,"forksCount":57,"repositoryHtmlUrl":58,"repositoryHomepageUrl":59,"ownerHtmlUrl":60,"ownerBlogUrl":61,"ownerDescription":62,"updatedAt":63,"install":64,"resources":77},"01M6M97ASTDSCCH5M397E8E6CF","suede-customer-research",null,"Use when asked \"synthesize these interviews\" or to discover what a defined customer segment says, needs and resists. Suede AI analyzes transcripts, surveys, tickets, reviews and forums into traceable VOC quotes, jobs to be done, personas and buyer questions. NOT FOR: competitor-only profiling (use suede-competitor-profiling), final copy (use suede-copy), or unsupported product prioritization (use suede-product-marketing).","hashgraph-online\u002Fawesome-codex-plugins","hashgraph-online","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F160371962?v=4","01M6CNB6NRJVNNGN14TR01Q6D3","HOL (Hashgraph Online)","01M6JT1HSKKG9V68KQAQGBA7XP",1559,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002FJasonColapietro\u002Fsuede-creator-skills\u002Fskills\u002Fsuede-customer-research\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],"customer","research","suede customer research","customer research","when","competitor","for","reviews","interviews","quotes","forums","segment","discover","synthesize","done","personas","only","use","profiling","marketing","prioritization","product","2026-11-10 10:12:30",false,"---\nname: suede-customer-research\ndescription: \"Use when asked \\\"synthesize these interviews\\\" or to discover what a defined customer segment says, needs and resists. Suede AI analyzes transcripts, surveys, tickets, reviews and forums into traceable VOC quotes, jobs to be done, personas and buyer questions. NOT FOR: competitor-only profiling (use suede-competitor-profiling), final copy (use suede-copy), or unsupported product prioritization (use suede-product-marketing).\"\nmetadata:\n  display-name: \"Suede AI Customer Research Skills\"\n  version: 2.1.1\n---\n\n# Suede AI Customer Research Skills\n\nUse this customer-research playbook to ground positioning, product, and copy in traceable customer evidence rather than assumption.\n\n## Compatibility\n\nAn agent able to read supplied research files and save evidence captures. New public-source research needs web access; existing-asset synthesis requires no paid research tool.\n\n## Before Starting\n\nCheck for `.agents\u002Fproduct-marketing.md` (or `.claude\u002Fproduct-marketing.md`, or the legacy `product-marketing-context.md`) and read it if present: the ICP, segment definitions, and what research already exists decide where to look and what counts as a representative sample. Ask only what it does not already answer.\n\n---\n\n## Two Modes of Research\n\n### Mode 1: Analyze Existing Assets\nYou have raw research material (transcripts, surveys, reviews, tickets). Your job is to extract signal.\n\n### Mode 2: Go Find Research\nYou need to gather intel from online sources (Reddit, G2, forums, communities, review sites). Your job is to know where to look and what to extract.\n\nMost engagements combine both. Establish which mode applies before proceeding.\n\n---\n\n## Mode 1: Analyzing Existing Research Assets\n\n### Asset Types\n\n**Customer interview \u002F sales call transcripts**\n- Extract: pains, triggers, desired outcomes, language used, objections, alternatives considered\n- Look for: the moment they decided to look for a solution, what they tried before, what success looks like to them\n\n**Survey results**\n- Segment responses by customer tier, use case, or tenure before drawing conclusions\n- Flag: what open-ended answers say vs. what multiple-choice answers say (they often conflict)\n- Identify: the 20% of responses that contain the most useful signal\n\n**Customer support conversations**\n- Mine for: recurring complaints, confusion points, feature requests, and \"I wish it could…\" language\n- Categorize tickets before analyzing: don't treat all tickets as equal signal\n- Separate bugs from confusion from missing features from expectation mismatches\n\n**Win\u002Floss interviews and churned customer notes**\n- Wins: what tipped the decision? What almost made them choose a competitor?\n- Losses and churn: was it price, features, fit, timing, or something else?\n- Segment by reason: don't average across different churn causes\n\n**NPS responses**\n- Passives and detractors are higher signal than promoters for improvement work\n- Pair scores with verbatims: a 9 with a specific complaint beats a 10 with no comment\n\n### Extraction Framework\n\nFor each asset, extract:\n\n1. **Jobs to Be Done**: what outcome is the customer trying to achieve?\n   - Functional job: the task itself\n   - Emotional job: how they want to feel\n   - Social job: how they want to be perceived\n\n2. **Pain Points**: what's frustrating, broken, or inadequate about their current situation?\n   - Prioritize pains mentioned unprompted and with emotional language\n\n3. **Trigger Events**: what changed that made them seek a solution?\n   - Common triggers: team growth, new hire, missed target, embarrassing incident, competitor doing something\n\n4. **Desired Outcomes**: what does success look like in their words?\n   - Capture exact quotes, not paraphrases\n\n5. **Language and Vocabulary**: exact words and phrases customers use\n   - This is gold for copy. \"We were drowning in spreadsheets\" > \"manual process inefficiency\"\n\n6. **Alternatives Considered**: what else did they look at or try?\n   - Includes doing nothing, hiring someone, or building internally\n\n### Synthesis Steps\n\nAfter extracting from individual assets:\n\n1. **Cluster by theme**: group similar pains, outcomes, and triggers across assets\n2. **Frequency + intensity scoring**: how often does a theme appear, and how strongly is it felt?\n3. **Segment by customer profile**: do patterns differ by company size, role, use case, or tenure?\n4. **Identify the \"money quotes\"**: 5-10 verbatim quotes that best represent each theme\n5. **Flag contradictions**: where do customers say one thing but do another?\n\n### Research Quality Guardrails\n\nLabel every insight with a confidence level before presenting it:\n\n| Confidence | Criteria |\n|------------|----------|\n| **High** | Theme appears in 3+ independent sources; mentioned unprompted; consistent across segments |\n| **Medium** | Theme appears in 2 sources, or only prompted, or limited to one segment |\n| **Low** | Single source; could be an outlier; needs validation |\n\n**Recency window**: Weight sources from the last 12 months more heavily. Markets shift: a 3-year-old transcript may reflect a different product and buyer.\n\n**Sample bias checks**:\n- Online reviewers skew toward power users and people with strong opinions\n- Support tickets skew toward problems, not value\n- Reddit skews technical and skeptical vs. mainstream buyers\n- Factor this in when drawing conclusions about \"all customers\"\n\n**Minimum viable sample**: 5 independent data points per segment (10 is better), drawn from interviews, reviews, tickets, or community posts, before building a persona or drawing a messaging conclusion for that segment. Below 5, present the material as raw signal, not as a finding.\n\n---\n\n## Mode 2: Digital Watering Hole Research\n\nOnline communities are where customers speak without a filter. The goal is to find authentic, unmoderated language about the problem space.\n\n### Where to Look\n\nChoose sources based on your ICP type, then read `references\u002Fsource-guides.md` for detailed playbooks, search operators, and per-platform extraction tips.\n\n| ICP Type | Primary Sources |\n|----------|----------------|\n| B2B SaaS \u002F technical buyers | Reddit (role-specific subs), G2\u002FCapterra, Hacker News, LinkedIn, Indie Hackers, SparkToro |\n| SMB \u002F founders | Reddit (r\u002Fentrepreneur, r\u002Fsmallbusiness), Indie Hackers, Product Hunt, Facebook Groups, SparkToro |\n| Developer \u002F DevOps | r\u002Fdevops, r\u002Fprogramming, Hacker News, Stack Overflow, Discord servers |\n| B2C \u002F consumer | App store reviews (1-3 star), Reddit hobby\u002Flifestyle subs, YouTube comments, TikTok\u002FInstagram comments |\n| Enterprise | LinkedIn, industry analyst reports, G2 Enterprise filter, job postings, SparkToro |\n\n**Quick decision guide:**\n- Have a product category? → Start with G2\u002FCapterra reviews (yours + competitors)\n- Need to know where your audience spends time? → SparkToro (reveals podcasts, YouTube, subreddits, websites, social accounts)\n- Need raw language? → Reddit and YouTube comments\n- Need trigger events? → LinkedIn posts, job postings, Hacker News \"Ask HN\" threads\n- Need competitive intel? → Competitor 4-star reviews on G2; Product Hunt discussions; SparkToro competitor audience analysis\n\n### What to Extract from Each Source\n\nFor every piece of content you find:\n\n| Field | What to Capture |\n|-------|----------------|\n| Source | Platform, thread URL, date |\n| Verbatim quote | Exact words: don't paraphrase |\n| Context | What prompted the comment? |\n| Sentiment | Positive \u002F negative \u002F neutral \u002F frustrated |\n| Theme tag | Pain \u002F trigger \u002F outcome \u002F alternative \u002F language |\n| Customer profile signals | Role, company size, industry hints from the post |\n\n### Persist Captures Before Synthesizing\n\nSave what you gathered before extracting themes from it: otherwise the\nprovenance gate below is unenforceable and a re-run repeats the entire\ncollection. Mirror the raw-evidence convention `suede-competitor-profiling`\nuses: one dated folder per run at `customer-research\u002Fraw\u002F\u003CYYYY-MM-DD>\u002F`, one\nfile per source inside it (`reddit.md`, `g2-\u003Ccompetitor>.md`, `app-store.md`),\nplus a `captures.csv` whose columns are the capture table above. Create the date\nfolder fresh each run and never overwrite a prior date's: that is how you diff\nwhat moved in the market. Mode 1 assets (transcripts, tickets, win\u002Floss notes,\nNPS verbatims) usually already live somewhere: don't copy them, record each in\n`captures.csv` by file path or system identifier plus date and segment, so every\nquote resolves to a named record either way.\n\n### Research Synthesis Template\n\nAfter gathering from multiple sources, synthesize into:\n\n```\n## Top Themes (ranked by frequency × intensity)\n\n### Theme 1: [Name]\n**Summary**: [1-2 sentences]\n**Frequency**: Appeared in X of Y sources\n**Intensity**: High \u002F Medium \u002F Low (based on emotional language used)\n**Representative quotes**:\n- \"[exact quote]\": [source, date]\n- \"[exact quote]\": [source, date]\n**Implications**: What this means for messaging \u002F product \u002F positioning\n\n### Theme 2: ...\n```\n\n---\n\n## Persona Generation\n\n### When there are no reviews yet\n\nEarly-stage products (or new categories) lack first-party review data. Don't invent personas: walk outward through proxy sources, in order:\n\n1. **Your own differentiator**: what the product does differently defines who feels that difference most; write the hypothesis down as a hypothesis\n2. **Direct competitors' reviews**: their customers describe the problem space in their words (note what's praised and what's missing)\n3. **Comparable products on marketplaces**: Amazon\u002Fapp-store reviews for adjacent solutions to the same job\n4. **Adjacent brands sharing the audience**: what else this buyer buys; their reviews reveal the buyer's broader language and values\n\nPersonas built this way are provisional: tag each with its proxy source, and replace proxy evidence with first-party evidence as real reviews arrive. The minimum viable sample above applies to proxy evidence too.\n\n### Persona Structure\n\n**Read [references\u002Fpersona-templates.md](references\u002Fpersona-templates.md) before writing the first persona of a run**: it holds the full fill-in structure (profile, primary job, triggers, pains, desired outcomes, objections, alternatives, vocabulary, how to reach them). Personas written from memory drift field by field and stop being comparable.\n\n### Persona Anti-Patterns\n\n- **Don't name them cutely** (\"Marketing Mary\") unless your team finds it helpful: it's often a distraction\n- **Don't average across segments**: a persona that represents everyone represents no one\n- **Don't invent details**: if you don't have data on something, leave it blank rather than filling it in\n- **Revisit quarterly**: personas decay as your market and product evolve\n\n---\n\n## Provenance Gate\n\nRun this over the finished deliverable, before it goes out. Boundaries below\nforbids fabricated quotes, themes, sample sizes and frequency counts; this is\nwhat makes that checkable rather than aspirational.\n\n- **Every verbatim resolves to a named capture record.** Mode 2: platform, thread URL, and date, per the capture table above. Mode 1: the asset identifier or file, plus date and segment. A quote that cannot be attributed to a capture record is **cut**, never paraphrased into a theme, never rolled into a frequency count.\n- **Recount the numbers at the same pass.** \"Appeared in X of Y sources\" and every High\u002FMedium\u002FLow confidence label are recomputed from the capture records right now, not carried over from a draft. A confidence label that no longer matches the count gets downgraded, not defended.\n- **Name the sample.** Source mix, segment, date range, and total captures appear in the deliverable itself, so the reader can judge the base the conclusions sit on.\n\n---\n\n## Deliverable Formats\n\nDefault deliverable: a **research synthesis report** (themes, quotes, patterns,\nimplications) plus a **VOC quote bank** organized by theme. Produce those unless\nthe user asked for something else.\n\nOffer these instead or in addition when the goal calls for it: a **question\nbank for search and AI answers** (the verbatim questions customers asked, in\ntheir words, grouped by theme and buying stage, ready for `suede-content-strategy`\nand `suede-ai-seo` to turn into headings, FAQs, and pages), a **persona\ndocument** (1-3 personas), a **jobs-to-be-done map** (functional, emotional,\nsocial jobs by segment), a **competitive intelligence summary** (what customers\nsay about competitors vs. you), or a **research gap analysis** (what you still\ndon't know and how to find it).\n\n---\n\n## Questions to Ask Before Proceeding\n\nIf context is unclear:\n\n1. **What's the goal?** Improve messaging? Build personas? Find product gaps? Understand churn?\n2. **What do you already have?** (transcripts, surveys, tickets, G2 reviews, nothing)\n3. **Who is the target segment?** (all customers, a specific tier, churned users, prospects who didn't buy)\n4. **What's your product?** (if not in the product marketing context file)\n\nDon't ask all four at once: lead with #1 and #2, then follow up as needed.\n\n---\n\n## Boundaries\n\n- Do not fabricate quotes, themes, sample sizes, sentiment, persona traits, or frequency counts.\n- Do not contact participants, record sessions, scrape restricted communities, or expose identifying data without explicit authorization and consent.\n- Do not present a convenience sample as representative; state source, segment, dates, sample size, and collection limits.\n- Do not decide product priorities or customer truth from synthesis alone; separate evidence, inference, and open questions.\n\n## Routing\n\n- Need final copy from customer language -> use `suede-copy`.\n- Need competitor-only evidence -> use `suede-competitor-profiling`.\n- Need ICP or positioning synthesis -> use `suede-product-marketing`.\n- Need churn, outbound, paid, or content application -> use `suede-churn-prevention`, `suede-cold-email`, `suede-ads`, or `suede-content-strategy`.\n- From those skills, route interview design, review mining, and evidence synthesis back to `suede-customer-research`.\n\n## Worked contract\n\n[Worked contract](references\u002Fusage-contract.md) gives a bounded input, expected output and failure check for this workflow.\n","# Suede AI Customer Research Skills\n\nUse this customer-research playbook to ground positioning, product, and copy in traceable customer evidence rather than assumption.\n\n## Compatibility\n\nAn agent able to read supplied research files and save evidence captures. New public-source research needs web access; existing-asset synthesis requires no paid research tool.\n\n## Before Starting\n\nCheck for `.agents\u002Fproduct-marketing.md` (or `.claude\u002Fproduct-marketing.md`, or the legacy `product-marketing-context.md`) and read it if present: the ICP, segment definitions, and what research already exists decide where to look and what counts as a representative sample. Ask only what it does not already answer.\n\n---\n\n## Two Modes of Research\n\n### Mode 1: Analyze Existing Assets\nYou have raw research material (transcripts, surveys, reviews, tickets). Your job is to extract signal.\n\n### Mode 2: Go Find Research\nYou need to gather intel from online sources (Reddit, G2, forums, communities, review sites). Your job is to know where to look and what to extract.\n\nMost engagements combine both. Establish which mode applies before proceeding.\n\n---\n\n## Mode 1: Analyzing Existing Research Assets\n\n### Asset Types\n\n**Customer interview \u002F sales call transcripts**\n- Extract: pains, triggers, desired outcomes, language used, objections, alternatives considered\n- Look for: the moment they decided to look for a solution, what they tried before, what success looks like to them\n\n**Survey results**\n- Segment responses by customer tier, use case, or tenure before drawing conclusions\n- Flag: what open-ended answers say vs. what multiple-choice answers say (they often conflict)\n- Identify: the 20% of responses that contain the most useful signal\n\n**Customer support conversations**\n- Mine for: recurring complaints, confusion points, feature requests, and \"I wish it could…\" language\n- Categorize tickets before analyzing: don't treat all tickets as equal signal\n- Separate bugs from confusion from missing features from expectation mismatches\n\n**Win\u002Floss interviews and churned customer notes**\n- Wins: what tipped the decision? What almost made them choose a competitor?\n- Losses and churn: was it price, features, fit, timing, or something else?\n- Segment by reason: don't average across different churn causes\n\n**NPS responses**\n- Passives and detractors are higher signal than promoters for improvement work\n- Pair scores with verbatims: a 9 with a specific complaint beats a 10 with no comment\n\n### Extraction Framework\n\nFor each asset, extract:\n\n1. **Jobs to Be Done**: what outcome is the customer trying to achieve?\n   - Functional job: the task itself\n   - Emotional job: how they want to feel\n   - Social job: how they want to be perceived\n\n2. **Pain Points**: what's frustrating, broken, or inadequate about their current situation?\n   - Prioritize pains mentioned unprompted and with emotional language\n\n3. **Trigger Events**: what changed that made them seek a solution?\n   - Common triggers: team growth, new hire, missed target, embarrassing incident, competitor doing something\n\n4. **Desired Outcomes**: what does success look like in their words?\n   - Capture exact quotes, not paraphrases\n\n5. **Language and Vocabulary**: exact words and phrases customers use\n   - This is gold for copy. \"We were drowning in spreadsheets\" > \"manual process inefficiency\"\n\n6. **Alternatives Considered**: what else did they look at or try?\n   - Includes doing nothing, hiring someone, or building internally\n\n### Synthesis Steps\n\nAfter extracting from individual assets:\n\n1. **Cluster by theme**: group similar pains, outcomes, and triggers across assets\n2. **Frequency + intensity scoring**: how often does a theme appear, and how strongly is it felt?\n3. **Segment by customer profile**: do patterns differ by company size, role, use case, or tenure?\n4. **Identify the \"money quotes\"**: 5-10 verbatim quotes that best represent each theme\n5. **Flag contradictions**: where do customers say one thing but do another?\n\n### Research Quality Guardrails\n\nLabel every insight with a confidence level before presenting it:\n\n| Confidence | Criteria |\n|------------|----------|\n| **High** | Theme appears in 3+ independent sources; mentioned unprompted; consistent across segments |\n| **Medium** | Theme appears in 2 sources, or only prompted, or limited to one segment |\n| **Low** | Single source; could be an outlier; needs validation |\n\n**Recency window**: Weight sources from the last 12 months more heavily. Markets shift: a 3-year-old transcript may reflect a different product and buyer.\n\n**Sample bias checks**:\n- Online reviewers skew toward power users and people with strong opinions\n- Support tickets skew toward problems, not value\n- Reddit skews technical and skeptical vs. mainstream buyers\n- Factor this in when drawing conclusions about \"all customers\"\n\n**Minimum viable sample**: 5 independent data points per segment (10 is better), drawn from interviews, reviews, tickets, or community posts, before building a persona or drawing a messaging conclusion for that segment. Below 5, present the material as raw signal, not as a finding.\n\n---\n\n## Mode 2: Digital Watering Hole Research\n\nOnline communities are where customers speak without a filter. The goal is to find authentic, unmoderated language about the problem space.\n\n### Where to Look\n\nChoose sources based on your ICP type, then read `references\u002Fsource-guides.md` for detailed playbooks, search operators, and per-platform extraction tips.\n\n| ICP Type | Primary Sources |\n|----------|----------------|\n| B2B SaaS \u002F technical buyers | Reddit (role-specific subs), G2\u002FCapterra, Hacker News, LinkedIn, Indie Hackers, SparkToro |\n| SMB \u002F founders | Reddit (r\u002Fentrepreneur, r\u002Fsmallbusiness), Indie Hackers, Product Hunt, Facebook Groups, SparkToro |\n| Developer \u002F DevOps | r\u002Fdevops, r\u002Fprogramming, Hacker News, Stack Overflow, Discord servers |\n| B2C \u002F consumer | App store reviews (1-3 star), Reddit hobby\u002Flifestyle subs, YouTube comments, TikTok\u002FInstagram comments |\n| Enterprise | LinkedIn, industry analyst reports, G2 Enterprise filter, job postings, SparkToro |\n\n**Quick decision guide:**\n- Have a product category? → Start with G2\u002FCapterra reviews (yours + competitors)\n- Need to know where your audience spends time? → SparkToro (reveals podcasts, YouTube, subreddits, websites, social accounts)\n- Need raw language? → Reddit and YouTube comments\n- Need trigger events? → LinkedIn posts, job postings, Hacker News \"Ask HN\" threads\n- Need competitive intel? → Competitor 4-star reviews on G2; Product Hunt discussions; SparkToro competitor audience analysis\n\n### What to Extract from Each Source\n\nFor every piece of content you find:\n\n| Field | What to Capture |\n|-------|----------------|\n| Source | Platform, thread URL, date |\n| Verbatim quote | Exact words: don't paraphrase |\n| Context | What prompted the comment? |\n| Sentiment | Positive \u002F negative \u002F neutral \u002F frustrated |\n| Theme tag | Pain \u002F trigger \u002F outcome \u002F alternative \u002F language |\n| Customer profile signals | Role, company size, industry hints from the post |\n\n### Persist Captures Before Synthesizing\n\nSave what you gathered before extracting themes from it: otherwise the\nprovenance gate below is unenforceable and a re-run repeats the entire\ncollection. Mirror the raw-evidence convention `suede-competitor-profiling`\nuses: one dated folder per run at `customer-research\u002Fraw\u002F\u003CYYYY-MM-DD>\u002F`, one\nfile per source inside it (`reddit.md`, `g2-\u003Ccompetitor>.md`, `app-store.md`),\nplus a `captures.csv` whose columns are the capture table above. Create the date\nfolder fresh each run and never overwrite a prior date's: that is how you diff\nwhat moved in the market. Mode 1 assets (transcripts, tickets, win\u002Floss notes,\nNPS verbatims) usually already live somewhere: don't copy them, record each in\n`captures.csv` by file path or system identifier plus date and segment, so every\nquote resolves to a named record either way.\n\n### Research Synthesis Template\n\nAfter gathering from multiple sources, synthesize into:\n\n```\n## Top Themes (ranked by frequency × intensity)\n\n### Theme 1: [Name]\n**Summary**: [1-2 sentences]\n**Frequency**: Appeared in X of Y sources\n**Intensity**: High \u002F Medium \u002F Low (based on emotional language used)\n**Representative quotes**:\n- \"[exact quote]\": [source, date]\n- \"[exact quote]\": [source, date]\n**Implications**: What this means for messaging \u002F product \u002F positioning\n\n### Theme 2: ...\n```\n\n---\n\n## Persona Generation\n\n### When there are no reviews yet\n\nEarly-stage products (or new categories) lack first-party review data. Don't invent personas: walk outward through proxy sources, in order:\n\n1. **Your own differentiator**: what the product does differently defines who feels that difference most; write the hypothesis down as a hypothesis\n2. **Direct competitors' reviews**: their customers describe the problem space in their words (note what's praised and what's missing)\n3. **Comparable products on marketplaces**: Amazon\u002Fapp-store reviews for adjacent solutions to the same job\n4. **Adjacent brands sharing the audience**: what else this buyer buys; their reviews reveal the buyer's broader language and values\n\nPersonas built this way are provisional: tag each with its proxy source, and replace proxy evidence with first-party evidence as real reviews arrive. The minimum viable sample above applies to proxy evidence too.\n\n### Persona Structure\n\n**Read [references\u002Fpersona-templates.md](references\u002Fpersona-templates.md) before writing the first persona of a run**: it holds the full fill-in structure (profile, primary job, triggers, pains, desired outcomes, objections, alternatives, vocabulary, how to reach them). Personas written from memory drift field by field and stop being comparable.\n\n### Persona Anti-Patterns\n\n- **Don't name them cutely** (\"Marketing Mary\") unless your team finds it helpful: it's often a distraction\n- **Don't average across segments**: a persona that represents everyone represents no one\n- **Don't invent details**: if you don't have data on something, leave it blank rather than filling it in\n- **Revisit quarterly**: personas decay as your market and product evolve\n\n---\n\n## Provenance Gate\n\nRun this over the finished deliverable, before it goes out. Boundaries below\nforbids fabricated quotes, themes, sample sizes and frequency counts; this is\nwhat makes that checkable rather than aspirational.\n\n- **Every verbatim resolves to a named capture record.** Mode 2: platform, thread URL, and date, per the capture table above. Mode 1: the asset identifier or file, plus date and segment. A quote that cannot be attributed to a capture record is **cut**, never paraphrased into a theme, never rolled into a frequency count.\n- **Recount the numbers at the same pass.** \"Appeared in X of Y sources\" and every High\u002FMedium\u002FLow confidence label are recomputed from the capture records right now, not carried over from a draft. A confidence label that no longer matches the count gets downgraded, not defended.\n- **Name the sample.** Source mix, segment, date range, and total captures appear in the deliverable itself, so the reader can judge the base the conclusions sit on.\n\n---\n\n## Deliverable Formats\n\nDefault deliverable: a **research synthesis report** (themes, quotes, patterns,\nimplications) plus a **VOC quote bank** organized by theme. Produce those unless\nthe user asked for something else.\n\nOffer these instead or in addition when the goal calls for it: a **question\nbank for search and AI answers** (the verbatim questions customers asked, in\ntheir words, grouped by theme and buying stage, ready for `suede-content-strategy`\nand `suede-ai-seo` to turn into headings, FAQs, and pages), a **persona\ndocument** (1-3 personas), a **jobs-to-be-done map** (functional, emotional,\nsocial jobs by segment), a **competitive intelligence summary** (what customers\nsay about competitors vs. you), or a **research gap analysis** (what you still\ndon't know and how to find it).\n\n---\n\n## Questions to Ask Before Proceeding\n\nIf context is unclear:\n\n1. **What's the goal?** Improve messaging? Build personas? Find product gaps? Understand churn?\n2. **What do you already have?** (transcripts, surveys, tickets, G2 reviews, nothing)\n3. **Who is the target segment?** (all customers, a specific tier, churned users, prospects who didn't buy)\n4. **What's your product?** (if not in the product marketing context file)\n\nDon't ask all four at once: lead with #1 and #2, then follow up as needed.\n\n---\n\n## Boundaries\n\n- Do not fabricate quotes, themes, sample sizes, sentiment, persona traits, or frequency counts.\n- Do not contact participants, record sessions, scrape restricted communities, or expose identifying data without explicit authorization and consent.\n- Do not present a convenience sample as representative; state source, segment, dates, sample size, and collection limits.\n- Do not decide product priorities or customer truth from synthesis alone; separate evidence, inference, and open questions.\n\n## Routing\n\n- Need final copy from customer language -> use `suede-copy`.\n- Need competitor-only evidence -> use `suede-competitor-profiling`.\n- Need ICP or positioning synthesis -> use `suede-product-marketing`.\n- Need churn, outbound, paid, or content application -> use `suede-churn-prevention`, `suede-cold-email`, `suede-ads`, or `suede-content-strategy`.\n- From those skills, route interview design, review mining, and evidence synthesis back to `suede-customer-research`.\n\n## Worked contract\n\n[Worked contract](references\u002Fusage-contract.md) gives a bounded input, expected output and failure check for this workflow.\n",{"name":5,"metadata":51,"description":7},{"version":52,"display-name":53},"2.1.1","Suede AI Customer Research Skills","main","2b63f856ce19c2a797929cacabd9e0fc936812fa","plugins\u002FJasonColapietro\u002Fsuede-creator-skills\u002Fskills\u002Fsuede-customer-research",474,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins","https:\u002F\u002Fhol.org\u002Fplugins\u002Fbest-codex-plugins","https:\u002F\u002Fgithub.com\u002Fhashgraph-online","https:\u002F\u002Fhol.org","Open-source standards and developer tools for interoperable AI agents: discovery, identity, communication, payments, privacy and security.","2026-11-11 14:40:14",{"source":8,"skillName":5,"commands":65,"prompt":75,"zipAvailable":76},[66,69,72],{"tool":67,"command":68},"npx","npx skills add hashgraph-online\u002Fawesome-codex-plugins --skill suede-customer-research",{"tool":70,"command":71},"bunx","bunx skills add hashgraph-online\u002Fawesome-codex-plugins --skill suede-customer-research",{"tool":73,"command":74},"pnpm","pnpm dlx skills add hashgraph-online\u002Fawesome-codex-plugins --skill suede-customer-research","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002FJasonColapietro\u002Fsuede-creator-skills\u002Fskills\u002Fsuede-customer-research\u002FSKILL.md",true,[78,84,88,92,96,100],{"path":79,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":82,"sourceHtmlUrl":83},"agents\u002Fopenai.yaml","REFERENCE","参考文档",593,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002FJasonColapietro\u002Fsuede-creator-skills\u002Fskills\u002Fsuede-customer-research\u002Fagents\u002Fopenai.yaml",{"path":85,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":86,"sourceHtmlUrl":87},"CARD.md",4556,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002FJasonColapietro\u002Fsuede-creator-skills\u002Fskills\u002Fsuede-customer-research\u002FCARD.md",{"path":89,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":90,"sourceHtmlUrl":91},"evals\u002Fevals.json",11047,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002FJasonColapietro\u002Fsuede-creator-skills\u002Fskills\u002Fsuede-customer-research\u002Fevals\u002Fevals.json",{"path":93,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":94,"sourceHtmlUrl":95},"references\u002Fpersona-templates.md",1541,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002FJasonColapietro\u002Fsuede-creator-skills\u002Fskills\u002Fsuede-customer-research\u002Freferences\u002Fpersona-templates.md",{"path":97,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":98,"sourceHtmlUrl":99},"references\u002Fsource-guides.md",16541,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002FJasonColapietro\u002Fsuede-creator-skills\u002Fskills\u002Fsuede-customer-research\u002Freferences\u002Fsource-guides.md",{"path":101,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":102,"sourceHtmlUrl":103},"references\u002Fusage-contract.md",853,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002FJasonColapietro\u002Fsuede-creator-skills\u002Fskills\u002Fsuede-customer-research\u002Freferences\u002Fusage-contract.md",[105,113,120,127,152,177],{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":112},"01M746ZWACVKMZ1BJXJZHYJSSX","migrate-to-e2e","Moves an existing Playwright, Cypress, Selenium, Appium, Detox, Maestro, or TesterArmy suite to e2e one slice at a time, with the old suite running beside the new one until each ported test is proven. Keeps a MIGRATION.md progress file so any later session resumes where the last stopped. Optionally plants a defect to show both suites catch it. Use for \u002Fmigrate-to-e2e, \"migrate our tests to e2e\", \"port these Maestro flows\", \"move our TesterArmy tests\", or when a project has an e2e config and an older suite still running.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fmigrate-to-e2e\u002FSKILL.md",[],[],"2026-11-11 15:11:14",{"skillNo":114,"name":115,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":119,"publishedAt":112},"01M746ZPTAX1Q0FBKAB1CYND7E","e2e","Writes, runs, and debugs end-to-end tests for web and mobile apps with e2e, the agentic test runner, which mixes agent.act goals with exact locator assertions on a Playwright browser or an iOS or Android device. Also drives a project's running app live over the e2e MCP server to look at a screen, check a UI change, take a screenshot or record a video, and try a locator; and runs bug bashes, parallel e2e explore runs with each bug proven by a repro test. Use when a project depends on e2e or has an e2e.config.ts, when asked for end-to-end, browser, mobile, or agentic UI tests, to check a change in the running app, to QA or bug bash an app or branch, or when an e2e run fails.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fe2e\u002FSKILL.md",[],[],{"skillNo":121,"name":122,"nameZh":6,"description":123,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":124,"categories":125,"keywords":126,"publishedAt":112},"01M746ZJN784HVHMDP9MQGCSGG","create-verification-skill","Generate a project-local verify-\u003Capp> skill on top of e2e, so any coding agent can launch the app, check it is worth driving, exercise a feature the way a user does, keep evidence, and bug bash it. Writes the skill, a feature map with one explore charter per feature, and proves it once. Use for \u002Fcreate-verification-skill, \"make a verification skill for this repo\", or when a project has no scripted way to prove UI behavior.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fcreate-verification-skill\u002FSKILL.md",[],[],{"skillNo":128,"name":129,"nameZh":6,"description":130,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":131,"categories":132,"keywords":133,"publishedAt":46},"01M716A6ETNB9B1SQ3GXZC75VR","deja-search","deja-vu memory — search the user's past AI coding sessions with the deja CLI. Holds what they already settled and never wrote into the repo (naming rules, banned or already-tried tools, required checks before merge, preferred values, who owns what). Use before your first edit in a task, before you call a change done or ready to merge, before you recommend a tool, library, design or reviewer, before re-debugging an error that may already be solved, when they say 'didn't we fix this before', 'what did we decide about X' or 'I already have that', and before telling them something on this machine does not exist.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-search\u002FSKILL.md",[],[134,135,136,137,138,139,140,141,142,143,144,28,145,38,146,147,148,149,150,151],"search","deja search","never","error","ready","memory","re","decide","fix","design","debugging","you","reviewer","io","change","cli","merge","past",{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":158,"publishedAt":46},"01M716A3J2W5SENSE9VGMXB375","deja-reflect","End-of-session reflection and memory curation with deja-vu. Review what was decided, what commands broke and what repaired them, and record durable project rules or decisions with deja remember so the next session starts with them.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-reflect\u002FSKILL.md",[],[159,160,161,147,162,163,164,165,166,167,168,169,170,171,139,172,173,174,175,176],"deja reflect","reflect","review","with","record","github","next","https","node","Rules","decisions","brew","remember","project rules","project","session","end","reflection",{"skillNo":178,"name":179,"nameZh":6,"description":180,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":181,"categories":182,"keywords":192,"publishedAt":46},"01M715T3RR4BAYSR57HPPTJ0PF","revid","Make, edit, export and post AI videos with Revid (revid.ai) through the Revid MCP server. Use whenever the user wants a short-form or long-form video made (from an idea, a script, a URL, an article, a PDF, a tweet, a product page, their own clips, or a song), wants to find what is going viral on TikTok, YouTube, Instagram or X before making something, wants to edit or re-export an existing Revid project, generate a standalone AI image or clip, make a series episode, or publish and schedule a finished video to connected social accounts. Covers setup (hosted MCP with OAuth, or an API key), the 36 tools, credits, polling and the rules for publishing. Routes to the more specific revid-* skills when one fits.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftmakersas\u002Frevid-skills\u002Fskills\u002Frevid\u002FSKILL.md",[183,186,189],{"categoryNo":184,"categoryName":185,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":187,"categoryName":188,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":190,"categoryName":191,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口",[179,193,194,195,196,197,198,173,199,140,200,201,202,203,28,204,205,206,207,208],"URL","Video","short-form","standalone","PDF","viral","tiktok","short","social","MCP","song","image","mcp server","schedule","api","publish"]