# Synthetic Userstudies

> Run synthetic user research sessions natively — no backend required. The agent plays an AI-generated persona and simulates a user interview based on the 4 Ps framework (Persona, Problem, Promise, Product). Use when a user wants to run a user research session, interview a synthetic persona, validate product ideas, generate user personas, or simulate customer conversations. Triggers on "user resear…

- **Type:** Skill
- **Install:** `agentstack add skill-exiao-pm-skills-synthetic-userstudies`
- **Verified:** Pending review
- **Seller:** [exiao](https://agentstack.voostack.com/s/exiao)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [exiao](https://github.com/exiao)
- **Source:** https://github.com/exiao/pm-skills/tree/main/uxr/synthetic-userstudies

## Install

```sh
agentstack add skill-exiao-pm-skills-synthetic-userstudies
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Synthetic UX Research

Run user research sessions natively. No backend calls. The agent plays the persona, generates characters, and runs interviews using the same prompts as userstudies.ai.

## Session Flow

### 1. Setup Phase
Collect the 4 Ps. Ask for any that are missing:

| Field | Description |
|---|---|
| **Persona** | Short description of target user (e.g. "Primary care doctor, US, recently graduated") |
| **Problem** | What they're struggling with — in their words |
| **Promise** | Value prop in 1 client is the best pre-ship evidence short of an A/B. Full recipe incl. how to reach the gated state on each surface (tutorial-overlay dismissal, idb logical-point taps for the Capacitor webview, backgrounded build commands): [references/predict-then-reproduce-live.md](references/predict-then-reproduce-live.md). That file also covers **static Surge pitch pages** (tap N live phone mockups, extract verbatim copy past snapshot truncation via console `innerText`, click CTAs by button index, `browser_vision`-down fallback) and a **dark-pattern taxonomy** (fair vs. manipulative: demoted decline, confirmshaming, fake countdown, earned-reward discount, drip renewal, skeleton theatre) for UX-literate skeptic personas.

## State to Maintain

Track these across the session:
- **Character JSON** (generated in step 2, may evolve mid-interview if clarified)
- **4 Ps** (may be updated via autofill)
- **Conversation history** (researcher + persona turns only, not meta discussion)

## Copy-Variant Panel Mode (parallel A/B/n testing)

For testing N copy variants (welcome messages, paywall bullets, chip wording) against multiple personas, skip the interview flow and run a parallel panel via delegate_task:

- **One persona per delegated task**, ALL variants inside each task. Personas must span the real segment spread (e.g. for an investing product: meme-stock retail, anxious older holder, non-English WhatsApp native, skeptical power user with existing tooling, true beginner with zero holdings). Include at least one persona the copy might EXCLUDE and one with a competing tool — they surface failures the median persona can't.
- **Task prompt shape:** persona description with texting style + core fear, then for EACH variant: (1) think-aloud reaction 2-3 sentences, (2) which option they tap OR what they type instead, (3) gut score 1-10. Then step out of character: rank all variants for THIS persona + single biggest insight.
- **Output format line is mandatory** (`VARIANT N: [reaction] | TAPS: [...] | SCORE: n/10 ... then RANKING and INSIGHT`) or results don't aggregate.
- For localized copy, give one persona the localized strings and ask for translation-naturalness notes — this catches gendered greetings and register problems (e.g. "vigilar" reading surveillance-y) that translation review misses.
- **Aggregate by convergence, not average score.** A variant that wins/places across ALL personas (including the adversarial ones) is the signal; a variant that spikes for one persona and tanks for another is a segmentation finding, not a winner. Proven result: post-answer contextual offers beat every upfront wording for all 5 personas — sequencing beats wording.
- Always state the caveat: N LLM role-plays, directional not proof. Strongest when it agrees with independent evidence (real-user research like NN/g, viral hook data).

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [exiao](https://github.com/exiao)
- **Source:** [exiao/pm-skills](https://github.com/exiao/pm-skills)
- **License:** Apache-2.0

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: flagged — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-exiao-pm-skills-synthetic-userstudies
- Seller: https://agentstack.voostack.com/s/exiao
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
