naive-ux-check
Manages and logs naive-user UX comprehension tests for the Claude-for-Chrome extension.
Install
mkdir -p .claude/skills/naive-ux-check && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/18096" && unzip -o skill.zip -d .claude/skills/naive-ux-check && rm skill.zipInstalls to .claude/skills/naive-ux-check
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Surface the next unrun Claude-for-Chrome naive-user comprehension prompt (kid, guardian, or admin persona), and log the pasted-back response to a dated findings report. Use before a release, or whenever you want a fresh naive-user pass over the app.Key capabilities
- →Surface the next unrun naive-user comprehension prompt
- →Log pasted-back responses to a dated findings report
- →Ask the user for the target URL to test against
- →Identify which scenarios have already been run in the latest report
- →Print the scenario's full prompt block with placeholders replaced
- →Redact sensitive information from user responses before logging
How it works
The skill organizes naive-user comprehension prompts, presents them to the user for manual pasting into the Claude-for-Chrome extension, and logs the redacted responses to a dated report.
Inputs & outputs
When to use naive-ux-check
- →Conduct UX comprehension test
- →Run naive-user scenario
- →Test auth gate usability
- →Log UX findings
About this skill
naive-ux-check
Organizes the naive-user comprehension prompt set
(.claude/skills/naive-ux-check/prompts/{kid,guardian,admin}.md, 17 scenarios
total: K0-K4, G0-G7, A0-A3) and logs results. This skill does not drive a
browser itself; there is no Claude-for-Chrome tool available to this session,
so it hands you a prompt to paste into the extension by hand.
What to do when invoked
-
Ask the user which target URL to test against. The default is the local dev frontend pointed at the staging Supabase project via
.env.staging(the committed.env.staging.exampledocuments the required variables, including theVITE_*pair the frontend needs). Staging is the default because the dedicated seeded test credentials (SEED_GUARDIAN_EMAIL/SEED_ADMIN_EMAIL, provisioned byscripts/seed_staging.py) live there; live production has no account this skill should use. Targeting live production is an explicit, occasional, deliberate choice the user must state up front, and it supports only the non-credentialed, non-mutating scenario: K0, which observes the signed-out auth gate without ever signing in. Every other scenario either signs in with the seeded credentials (which exist only on staging) or mutates content, and the standing rule still applies: the mutating personas (G4/G5/G6, A2/A3) submit, approve, or decline real content, so run them only against the seeded staging environment (or another disposable, seeded, non-production environment); never point them at production, where the browsing agent could approve or alter real stories. -
Read
docs/qa/naive-ux-reports/and find the most recent dated report, if any. Collect which of the 17 scenario ids (K0-K4, G0-G7, A0-A3) already have an entry in it. -
Pick the first scenario id, in the order K0-K4, G0-G7, A0-A3 (the auth-gate scenarios K0, G0, and A0 always run before the rest of their persona's set), that has no entry yet in the most recent report. If no report exists yet, that is the first id, K0. Always hand off exactly one scenario per invocation (step 4); the user re-invokes for the next one (step 7).
-
Print that scenario's full prompt block from its persona file, with the
<URL>placeholder replaced by the target URL from step 1. Print only the Persona / Task / Report back block; the "Operator setup" / "Operator note" lines and "Expected observations" paragraphs are instructions for the human, so relay them separately, never inside the paste block. Where a prompt carries<EMAIL>/<PASSWORD>placeholders, remind the user to fill them with the seeded credentials before pasting. -
Tell the user: "Paste this into the Claude-for-Chrome extension, then paste its response back here."
-
When the user pastes back a response, first REDACT it, then append one row to today's report at
docs/qa/naive-ux-reports/YYYY-MM-DD.md(create the file with a one-line header if it doesn't exist yet for today). Redaction is mandatory because the browsing agent reports on-screen content that can include real children's and guardians' names, emails, and account details: replace emails, child/guardian display names, session tokens, and correlation ids with placeholders (<email>,<child-name>), and summarize rather than paste verbatim whenever the target is not localhost. Never commit an unredacted transcript. (The report directory is also gitignored, see.gitignore, so a report stays local until you deliberately sanitize and force-add it.)## <scenario id>: <short scenario name> **Verdict:** pass | friction-found | dead-end <redacted summary of the pasted-back response> -
Ask whether to continue with the next unrun scenario or stop here.
Judging the verdict
- pass: the response's four answers show no confusion, no dead end, and no unexpected action.
- friction-found: at least one point of confusion or an unexpected result, but the persona ultimately succeeded or reached a sensible stop.
- dead-end: the persona could not proceed at all, or ended up somewhere clearly wrong (another family's content, an admin action with no visible gate, etc).
- For the auth-gate scenarios (K0, G0, A0) specifically: a clear, friendly, correctly-functioning auth gate (a real invitation to sign in or to find a grown-up, not an error page or a retry loop) is a pass, even though the persona cannot proceed past it without credentials or a grown-up. A gate that is confusing, mislabeled, or broken (like the pre-PR-#198 "Oops, we hit a snag" loop) is still dead-end or friction-found under the rules above.
A dead-end means the persona could not proceed or landed somewhere clearly wrong, so file it immediately as a GitHub issue (and consider a Track A Playwright regression) on the first hit. A single friction-found result is logged, not immediately escalated; only file or promote it if it reproduces on a second run of the same scenario.
When not to use it
- →When driving a browser directly
- →When testing against live production for mutating scenarios
- →When committing unredacted transcripts
Limitations
- →Does not drive a browser itself
- →Cannot test mutating scenarios against live production
- →Requires manual pasting of prompts into the extension
How it compares
This skill provides a structured process for manual naive-user UX testing and reporting, ensuring consistent scenario execution and sensitive data redaction, unlike ad-hoc testing.
Compared to similar skills
naive-ux-check side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| naive-ux-check (this skill) | 0 | 16d | Review | Intermediate |
| dogfooding | 0 | 1mo | No flags | Intermediate |
| qa | 0 | 2mo | Review | Intermediate |
| dogfooding | 0 | 3mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
dogfooding
litago75
Critically dogfood the running app by playing real user flows and reporting severity-ranked UX and fun feedback with concrete code-linked fixes. Use when asked to test the app experience, evaluate engagement, or provide product-quality UX critique.
qa
heliohq
>
dogfooding
HIPgirl95
**WORKFLOW SKILL** — Perform critical dogfooding testing of web applications, providing structured feedback on usability, fun factor, and user experience. USE FOR: testing apps as a critical user; evaluating user experience and engagement; identifying UX issues and improvement opportunities; providi
ux-audit
rioX432
Comprehensive UI/UX audit: heuristic evaluation, accessibility, visual analysis, platform guidelines, and improvement proposals — then create GitHub Issues
roast
diegosouzapw
Multi-perspective UI/UX roasting workflow with iterative improvement cycles
sb-ux-product-audit
HideakiSolutions
Audite frontend como produto real vs MVP incompleto vs scaffold, com gaps UX, tecnicos e testes ausentes.