Install
$ agentstack add skill-exiao-pm-skills-synthetic-userstudies Open-source listing, not yet scanned by AgentStack. Follow the source repository for install instructions.
Security review
⚠ Flagged1 finding(s); flagged for manual review. · v0.1.0 How review works →
- • Prompt-injection patterns
- • Secret / credential exfiltration
- • Dangerous shell & filesystem operations
- • Untrusted network calls
- • Known-malicious package signatures
- high Possible prompt-injection directive.
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →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
- Source: exiao/pm-skills
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.