adversarial-ux-test
Roleplay a hostile user to find and triage UX pain points.
Skill by supplefrog
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/supplefrog-adversarial-ux-test
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, testing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/adversarial-ux-test
What's inside
- Skill name
adversarial-ux-test- Description
- Roleplay a hostile user to find and triage UX pain points.
- License
- MIT
- Instructions
- 180 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Adversarial UX Test Roleplay the worst-case user for your product — the person who hates technology, doesn't want your software, and will find every reason to complain. Then filter their feedback through a pragmatism layer to separate real UX problems from "I hate computers" noise. Think of it as an automated "mom test" — but angry. ## Why This Works Most QA finds bugs. This finds **friction**. A technically correct app can still be unusable for real humans. The adversarial persona catches: - Confusing terminology that makes sense to developers but not users - Too many steps to accomplish basic tasks - Missing onboarding or "aha moments" - Accessibility issues (font size, contrast, click targets) - Cold-start problems (empty states, no demo content) - Paywall/signup friction that kills conversion The **pragmatism filter** (Phase 3) is what makes this useful instead of just entertaining. Without it, you'd add a "print this page" button to every screen because Grandpa can't figure out PDFs. ## How to Use Tell the agent: ``` "Run an adversarial UX test on [URL]" "Be a grumpy [persona type] and test [app name]" "Do an asshole user test on my staging site" ``` You can provide a persona or let the agent generate one based on your product's target audience. ## Step 1: Define the Persona If no persona is provided, generate one by answering: 1. **Who is the HARDEST user for this product?** (age 50+, non-technical role, decades of experience doing it "the old way") 2. **What is their tech comfort level?** (the lower the better — WhatsApp-only, paper notebooks, wife set up their email) 3. **What is the ONE thing they need to accomplish?** (their core job, not your feature list) 4. **What would make them give up?** (too many clicks, jargon, slow, confusing) 5. **How do they talk when frustrated?** (blunt, sweary, dismissive, sighing) ### Good Persona Example > **"Big Mick" McAllister** — 58-year-old S&C coach. Uses WhatsApp and that's it. His "spreadsheet" is a paper notebook. "If I can't figure it out in 10 seconds I'm going back to my notebook." Needs to log session results for 25 players. Hates small text, jargon, and passwords. ### Bad Persona Example > "A user who doesn't like the app" — too vague, no constraints, no voice. The persona must be **specific enough to stay in character** for 20 minutes of testing. ## Step 2: Become the Asshole (Browse as the Persona) 1. Read any available project docs for app context and URLs 2. **Fully inhabit the persona** — their frustrations, limitations, goals 3. Navigate to the app using browser tools 4. **Attempt the persona's ACTUAL TASKS** (not a feature tour): - Can they do what they came to do? - How many clicks/screens to accomplish it? - What confuses them? - What makes them angry? - Where do they get lost? - What would make them give up and go back to their old way? 5. Test these friction categories: - **First impression** — would they even bother past the landing page? - **Core workflow** — the ONE thing they need to do most often - **Error recovery** — what happens when they do something wrong? - **Readability** — text size, contrast, information density - **Speed** — does it feel faster than their current method? - **Terminology** — any jargon they wouldn't understand? - **Navigation** — can they find their way back? do they know where they are? 6. Take screenshots of every pain point 7. Check browser console for JS errors on every page ## Step 3: The Rant (Write Feedback in Character) Write the feedback AS THE PERSONA — in their voice, with their frustrations. This is not a bug report. This is a real human venting. ``` [PERSONA NAME]'s Review of [PRODUCT] Overall: [Would they keep using it? Yes/No/Maybe with conditions] THE GOOD (grudging admission): - [things even they have to admit work] THE BAD (legitimate UX issues): - [real problems that would stop them from using the product] THE UGLY (showstoppers): - [things that would make them uninstall/cancel immediately] SPECIFIC COMPLAINTS: 1. [Page/feature]: "[quote in persona voice]" — [what happened, expected] 2. ... VERDICT: "[one-line persona quote summarizing their experience]" ``` ## Step 4: The Pragmatism Filter (Critical — Do Not Skip) Step OUT of the persona. Evaluate each complaint as a product person: - **RED: REAL UX BUG** — Any user would have this problem, not just grumpy ones. Fix it. - **YELLOW: VALID BUT LOW PRIORITY** — Real issue but only for extreme users. Note it. - **WHITE: PERSONA NOISE** — "I hate computers" talking, not a product problem. Skip it. - **GREEN: FEATURE REQUEST** — Good idea hidden in the complaint. Consider it. ### Filter Criteria 1. Would a 35-year-old competent-but-busy user have the same complaint? → RED 2. Is this a genuine accessibility issue (font size, contrast, click targets)? → RED 3. Is this "I want it to work like paper" resistance to digital? → WHITE 4. Is this a real workflow inefficiency the persona stumbled on? → YELLOW or RED 5. Would fixing this add complexity for the 80% who are fine? → WHITE 6. Does the complaint reveal a missing onboarding moment? → GREEN **This filter is MANDATORY.** Never ship raw persona complaints as tickets. ## Step 5: Create Tickets For **RED** and **GREEN** items only:
From supplefrog/agent-sync, MIT.
More from supplefrog/agent-sync
- 0.592score
agent-orchestration-operations
supplefrog
Use when the user calls the agent “the orchestrator,” says “resume the orchestrator,” or coordinates agents, workers, coding CLIs, durable Kanban queues…
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
delegation-workflows
supplefrog
Use when routing bounded coding implementation or tests to a Hermes worker, or when independent tasks warrant parallelism, isolation, or fresh review.
SkillAFreshness: A★ 1Claude Code +9 - 0.586score
hermes-lcm
supplefrog
Use, configure, diagnose, and retrieve exact evidence with the Hermes-LCM lossless context plugin.
SkillAFreshness: A★ 1Claude Code +9 - 0.583score
skill-creator
supplefrog
Use when authoring instructions, reviewing model-facing tool interfaces, or preserving reusable workflows.
SkillAFreshness: A★ 1Claude Code +9 - 0.582score
trial-handoff
supplefrog
Use when drafting an internal customer trial handoff from an account packet for an implementation lead before a trial review.
SkillAFreshness: A★ 1Claude Code +9 - 0.581score
trial-handoff
supplefrog
Use when an advocate needs a concise internal handoff from a customer trial packet before its review.
SkillAFreshness: A★ 1Claude Code +9 - 0.554score
prototype
supplefrog
Build a throwaway prototype to answer a logic or state-model question.
SkillAFreshness: A★ 1Claude Code +9 - 0.552score
creative-ideation
supplefrog
Use when brainstorming, exploring options, unsticking an idea, making it less generic, or choosing among possibilities.
SkillBFreshness: B★ 1Claude Code +9 - 0.549score
creative-production-workflows
supplefrog
Use for non-website visual and media artifacts: standalone diagrams, generative art, kinetic typography, ASCII media, GIFs, animation, ComfyUI, or…
SkillBFreshness: B★ 1Claude Code +9 - 0.546score
hermes-agent
supplefrog
Configure, troubleshoot, extend, or contribute to Hermes Agent.
SkillBFreshness: B★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 13, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/supplefrog/agent-sync
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from supplefrog
- 0.592score
agent-orchestration-operations
supplefrog
Use when the user calls the agent “the orchestrator,” says “resume the orchestrator,” or coordinates agents, workers, coding CLIs, durable Kanban queues…
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
delegation-workflows
supplefrog
Use when routing bounded coding implementation or tests to a Hermes worker, or when independent tasks warrant parallelism, isolation, or fresh review.
SkillAFreshness: A★ 1Claude Code +9 - 0.586score
hermes-lcm
supplefrog
Use, configure, diagnose, and retrieve exact evidence with the Hermes-LCM lossless context plugin.
SkillAFreshness: A★ 1Claude Code +9 - 0.583score
skill-creator
supplefrog
Use when authoring instructions, reviewing model-facing tool interfaces, or preserving reusable workflows.
SkillAFreshness: A★ 1Claude Code +9 - 0.582score
trial-handoff
supplefrog
Use when drafting an internal customer trial handoff from an account packet for an implementation lead before a trial review.
SkillAFreshness: A★ 1Claude Code +9 - 0.581score
trial-handoff
supplefrog
Use when an advocate needs a concise internal handoff from a customer trial packet before its review.
SkillAFreshness: A★ 1Claude Code +9
Cite this page
adversarial-ux-test skill. Agent Mart. https://agentmart.dev/skills/supplefrog-adversarial-ux-test (last updated 2026-10-24)