Install any skill in seconds. Free to start, no credit card required.
Get Started Free →jpoindexter/ethical-design-and-dark-patterns
Reference-grade guide to ethical interface design and the recognized deceptive-pattern taxonomy (Brignull / deceptive.design × Mathur et al.) — every dark pattern with a concrete example and ethical fix, consent and privacy UX, attention ethics, honest-default frameworks, and the FTC/GDPR/DSA legal exposure that turns each pattern into liability.
Passed 22 of 22 test cases with the skill, and 15 of 22 without it.
and 5 more in the full report
7 fixed15 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 7 test cases the skill fixed. Same model, same prompt, with and without the skill.
A new social app defaults user profile visibility to public and pre-enables sharing location history with third-party data networks during onboarding. Identify the dark pattern and specify the required default settings under privacy-by-default rules.
| Checked | Without skill | With skill |
|---|---|---|
| Categorizes public default visibility as Privacy Zuckering. | Missed | Passed |
| Requires default settings to start at the most protective privacy state. | Passed | Passed |
The instructions your model reads when the skill loads.
A "dark pattern" (Harry Brignull's 2010 coinage; the field now prefers deceptive pattern, and Brignull's reference library lives at deceptive.design) is an interface deliberately crafted to trick users into doing things they would not have chosen freely — spending more, sharing more, staying subscribed. They are not bad UX by accident. They are good UX turned against the user: the same craft that makes a flow feel effortless is pointed at extraction instead of service. Use this skill to recognize all of them, to refuse to build them, and to ship the honest alternative without losing the business goal.
How to use: when designing a flow, run each consequential moment (defaults, declines, costs, exits, consent, permissions) against §6's asymmetry rule. When auditing, name the pattern with its canonical term from §2, rate severity (§7), and cite the legal exposure (§8) — that converts "this feels manipulative" into a prioritized, defensible finding a PM and a lawyer both act on.
Ethics lands in design systems because systems codify defaults, and defaults shape behavior at scale. A design system is the set of pre-made decisions a thousand screens inherit. Decide once that the "subscribe to marketing" checkbox component ships pre-checked, or that the destructive-confirm dialog styles "Cancel" as the loud primary button, and you have manufactured a dark pattern in every product that consumes the library — automatically, invisibly, forever.
<ConsentBanner> with symmetric Accept/Reject is cheaper than 200 teams each shipping a "Reject all" buried two clicks deep — and than the regulator who finds it.The test that drives this whole skill: would I be comfortable explaining this design, out loud, to the user it affects? If the honest explanation embarrasses you, it is a dark pattern.
Every deceptive pattern exploits a known, hard-wired bias. Naming the lever tells you both why it works and why it's unfair — it bypasses deliberate reasoning rather than informing it.
| Bias | What it is | Pattern that abuses it |
|---|---|---|
| Default effect / status-quo bias | ~95% keep whatever is pre-set | Pre-checked boxes, bad defaults, forced continuity |
| Loss aversion | Losses hurt ~2× more than equivalent gains please | Confirmshaming, streak anxiety, "you'll miss out" |
| Anchoring | First number seen frames all later judgment | Pressured selling, fake "was $99, now $49" |
| Scarcity heuristic | Scarce = valuable; act now | Fake low-stock, false countdowns |
| Social proof | We copy what others appear to do | Fake activity feeds, fabricated reviews |
| Cognitive load / decision fatigue | Tired users take the path of least resistance | Cookie-banner mazes, hidden costs at step 4 |
The same biases power ethical persuasion too — anchoring on a genuinely good deal, real social proof. The lever isn't the problem; using it on a false premise, or to override the user's actual interest, is.
Because the design system is the leverage point, the controls below belong in the library and its governance — not in a per-team checklist nobody reads:
<ConsentBanner>, <CancelFlow>, and <PriceSummary> mean the easy, paved road is also the honest one. Don't ship a component whose default configuration is a dark pattern.ETHICS.md log of patterns the team has rejected and why, so they aren't re-litigated.test cases passed, vs 15 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.