AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified Apache-2.0 Self-run

E2e Ux Test

skill-yassimba-loom-e2e-ux-test · by Yassimba

Adversarial UX/DX test — drive the product's live surface (web UI, CLI, code library, or REST API) as its worst-case persona to hunt friction, then filter the rant into RED/YELLOW/WHITE/GREEN verdicts. Trigger on "ux test", "dx test", "asshole user test".

No reviews yet
0 installs
0 views
view→install

Install

$ agentstack add skill-yassimba-loom-e2e-ux-test

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

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.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-yassimba-loom-e2e-ux-test)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
yesterday

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

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 →
Are you the author of E2e Ux Test? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Adversarial UX Test

e2e-test asks does it work? — this skill asks would a human tolerate it? You hunt friction, not bugs: jargon, click-mazes, cold-start dead ends, error messages that name the symptom but not the fix. The method is the mom test, but angry: fully inhabit the worst-case persona, rant in their voice, then break character and filter the rant like a product manager. The filter is what makes this an instrument instead of entertainment.

Three invariants, all surfaces:

  • Evidence rule — every complaint rests on a captured artifact (your playbook says which kind) under ai-docs/ux-test// that you Read back after capturing.
  • Surface only — the persona sees what a real user sees: rendered pages, --help, published docs and types. Never the implementation source.
  • In character from first contact through the end of the rant. Break character only at the filter.

Phase 0 — The surface

Pick the surface under test and read its playbook before anything else:

  • Web UI → [references/web.md](references/web.md)
  • CLI → [references/cli.md](references/cli.md)
  • Code API / library / SDK → [references/library.md](references/library.md)
  • REST / HTTP API → [references/rest.md](references/rest.md)

The playbook defines how to drive the surface, the evidence artifact, the effort unit, the friction categories, the RED ceiling, and the perception caveat. A product with several surfaces gets one run per surface — separate personas, separate rants. Test what a real user gets (deployed app, installed release, published package); a URL or install command from the user beats hunting for one.

Phase complete when the playbook is read and the thing-a-real-user-gets is pinned down (URL, install command, or package name).

Phase 1 — The persona

Check ai-docs/ux-personas/ first. A card for this product already exists → reuse it; this run becomes a regression pass against its ledger. Otherwise build one from the card template in references/persona-gallery.md — five questions plus the runs ledger, with seeds per surface and a worked example.

Phase complete when the card exists at ai-docs/ux-personas/.md and answers all five questions with answers concrete enough to quote — a name, an age, a tool, a breaking point in the surface's effort unit. "A user who dislikes the product" fails that bar.

Phase 2 — Drive in character

Cold start: begin from nothing, per the playbook's recipe (new account, scratch config, empty project) — tag every account, key, and artifact you create with a uxtest- marker for cleanup. The empty first-run experience is where most friction lives; a pre-seeded setup skips exactly the screens that matter.

Attempt the persona's ONE task, start to finish — a goal-driven run, so every detour the surface forces on you is a finding in itself. Count every unit of effort (the playbook's unit) on the path to task completion. Along the way, visit each friction category in the playbook. If a locked-out state exists (paywall, expired key, rate limit), probe it: what happens to their data and work in flight when access ends?

Per pain point: capture the playbook's artifact → ai-docs/ux-test//-.Read it back.

Phase complete when the ONE task is done or abandoned-in-character, every friction category has been visited, the effort count is recorded, and every complaint has an artifact you read back.

Phase 3 — The rant

Write the persona's review, fully in voice, to ai-docs/ux-test//rant.md:

# 's review of 

Overall: 

THE GOOD (grudging admissions)
THE BAD (would stop them using it)
THE UGLY (would make them quit on the spot)

SPECIFIC COMPLAINTS

1. : "" — what happened vs what they expected — 

VERDICT: ""

Phase complete when every Phase 2 pain point appears in the rant with its artifact linked.

Phase 4 — The pragmatism filter

Break character here. As a product person, give every rant line exactly one color:

  • RED — real UX bug. Any user hits this, not just grumpy ones. A competent-but-busy user would have the same complaint; genuine accessibility issues; exceeding the playbook's RED ceiling is RED regardless of persona.
  • YELLOW — valid, edge users only. Real, but fixing it for everyone adds little.
  • WHITE — persona noise. "I want it to work like my old way"; fixing it would add complexity for the 80% who are fine.
  • GREEN — feature request hiding inside a complaint, often a missing onboarding moment.

Apply the playbook's perception caveat: complaints you inferred rather than experienced stay inferred until the artifact confirms them — no RED on an inferred complaint.

Two calibration gates, both checked before moving on:

  • Zero complaints → the persona was too forgiving. Make them less patient, more set in their old ways, and redo Phase 2.
  • Zero WHITE → the product has real problems, not a grumpy persona. Say exactly that in the report.

Phase complete when every complaint carries one color and both gates have been checked.

Phase 5 — Ledger, cleanup, report

Append this run's row to the persona card's runs ledger. On a rerun, diff against the previous entry and call out regressions ("core task cost 4 clicks in June, now 7") — these outrank any new finding.

Cleanup before reporting: delete the uxtest--tagged accounts, keys, and data where the product allows it; where it doesn't, note what was left behind for the report. Keep ai-docs/ux-test/ — that's the evidence trail.

Final message: the rant (visceral), then the filtered table (color, complaint, artifact, suggested fix), then the ledger diff, then anything cleanup left behind. Offer tickets via AskUserQuestion — if yes, file RED and GREEN items through the jira skill (persona quote + the objective issue underneath + suggested fix, max 10), and YELLOW as one catch-all. WHITE stays in the report only.

Source & license

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

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

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.