$npx -y skills add MoizIbnYousaf/marketing-cli --skill audience-researchBuild detailed buyer personas and audience profiles from research. Use this skill whenever the user mentions audience, buyer persona, ideal customer, target market, ICP, watering holes, 'who am I selling to', customer research, or audience profile. Also use when content feels unf
| 1 | > **Note:** Examples below use fictional brands (Acme, Lumi, Helm). Replace with your own brand context. |
| 2 | |
| 3 | # /audience-research -- Know Who You're Talking To |
| 4 | |
| 5 | Every marketing skill gets better when you know your audience. Generic copy |
| 6 | happens when you write for "everyone." Specific copy that converts happens |
| 7 | when you write for a real person with real problems. |
| 8 | |
| 9 | This skill builds that audience profile. It's the foundation - 8 of 11 content |
| 10 | skills read `audience.md` to shape their output. Running this first makes |
| 11 | everything downstream sharper. |
| 12 | |
| 13 | No SaaS tools needed. Systematic research plus web search. |
| 14 | |
| 15 | --- |
| 16 | |
| 17 | |
| 18 | ## On Activation |
| 19 | |
| 20 | 1. Check if `brand/` directory exists in the project root. |
| 21 | 2. If it does, read available files: `voice-profile.md`, `positioning.md`, `audience.md`, `competitors.md`, `creative-kit.md`, `stack.md`, `learnings.md`. |
| 22 | 3. Apply any loaded brand context to enhance output quality - skip questions the user has already answered. |
| 23 | 4. If `brand/` does not exist, proceed without it - this skill works standalone. |
| 24 | |
| 25 | --- |
| 26 | |
| 27 | ## Iteration Detection |
| 28 | |
| 29 | Before starting, check whether `./brand/audience.md` already exists. |
| 30 | |
| 31 | ### If audience.md EXISTS --> Update Mode |
| 32 | |
| 33 | Do not start from scratch. Instead: |
| 34 | |
| 35 | 1. Read the existing audience profile. |
| 36 | 2. Present a summary of current personas: |
| 37 | ``` |
| 38 | EXISTING AUDIENCE PROFILE |
| 39 | Last updated {date} by /audience-research |
| 40 | |
| 41 | Personas: |
| 42 | ├── {Persona 1 name} {one-liner} |
| 43 | ├── {Persona 2 name} {one-liner} |
| 44 | └── Primary: {primary persona name} |
| 45 | |
| 46 | Watering holes: {N} mapped |
| 47 | |
| 48 | ────────────────────────────────────────────── |
| 49 | |
| 50 | What would you like to do? |
| 51 | |
| 52 | 1. Refine existing personas with fresh research |
| 53 | 2. Add a new persona segment |
| 54 | 3. Deep-dive into watering holes |
| 55 | 4. Full rebuild from scratch |
| 56 | ``` |
| 57 | |
| 58 | 3. Process the user's choice: |
| 59 | - Option 1 --> Re-run research for existing personas, update with new data |
| 60 | - Option 2 --> Identify the new segment, build persona, merge into existing file |
| 61 | - Option 3 --> Focus on community mining for existing personas |
| 62 | - Option 4 --> Full process from scratch |
| 63 | |
| 64 | 4. Before overwriting, show what changed and ask for confirmation. |
| 65 | |
| 66 | ### If audience.md DOES NOT EXIST --> Full Research Mode |
| 67 | |
| 68 | Proceed to the full process below. |
| 69 | |
| 70 | --- |
| 71 | |
| 72 | ## The core job |
| 73 | |
| 74 | Build a complete picture of who buys this product, why they buy it, where they |
| 75 | hang out, and what language they use. The output is structured enough for other |
| 76 | skills to parse but human enough to be useful for strategy. |
| 77 | |
| 78 | --- |
| 79 | |
| 80 | ## Approach selection |
| 81 | |
| 82 | Choose based on what's available: |
| 83 | |
| 84 | ### Quick Profile (L0 - zero context) |
| 85 | |
| 86 | When no brand files exist and minimal information is provided. Ask 5 key questions: |
| 87 | |
| 88 | 1. **What does your product do?** (one sentence) |
| 89 | 2. **Who currently uses it?** (or who do you want to use it?) |
| 90 | 3. **What problem does it solve?** (the pain before, the relief after) |
| 91 | 4. **What alternatives exist?** (what would they do without you?) |
| 92 | 5. **What's the price point?** (free, $10/mo, $500/mo, enterprise?) |
| 93 | |
| 94 | From these 5 answers, generate a working persona. It won't be perfect but it |
| 95 | gives every downstream skill something to work with. |
| 96 | |
| 97 | ### Persona Build (L1-L2 - some context) |
| 98 | |
| 99 | When you have basic product info or existing brand files. Systematic persona |
| 100 | construction using demographics, psychographics, and jobs-to-be-done. |
| 101 | |
| 102 | ### Community Mining (L3-L4 - full research) |
| 103 | |
| 104 | When `exa-search` / Exa MCP or web search is available. Deep research into where the audience |
| 105 | lives online, what language they use, what they complain about, and what they |
| 106 | aspire to. |
| 107 | |
| 108 | --- |
| 109 | |
| 110 | ## The audience research process |
| 111 | |
| 112 | ### Step 1: Identify the transformation |
| 113 | |
| 114 | Same as positioning - start with the outcome, not the product. |
| 115 | |
| 116 | - What does the customer's life look like BEFORE? (the pain state) |
| 117 | - What does it look like AFTER? (the desired state) |
| 118 | - What's the gap between those two states? |
| 119 | |
| 120 | The gap defines who your audience is: people stuck in the BEFORE state who want |
| 121 | the AFTER state but haven't found a good way to get there. |
| 122 | |
| 123 | ### Step 2: Build buyer personas |
| 124 | |
| 125 | For each distinct audience segment (usually 1-3), build: |
| 126 | |
| 127 | **Demographics** (who they are): |
| 128 | - Role/title, company size, industry |
| 129 | - Age range, income l |