Builds accessible, responsive interface changes and checks them against WCAG.
How it works
Foe: Blank Mimic, an empty screen or canvas that needs a design.
Foes
- Blank MimicHaze Poison Ward Insight Flicker Pinned Enraged
Party · Context
- IllusionistYour agent100/100Haze Poison Ward Insight Flicker Pinned Enraged
The Blank Mimic blocks the way.
What really happensIt stands for an empty screen or canvas that needs a design.
Illusionist: Context 100/100.
The blank page stares back and drains the hero.
What really happensStarting a screen from nothing costs time and context.
Illusionist takes 9. Illusionist: Context 91/100.
The hero opens the UI scroll over the empty screen.
What really happensThe agent loads frontend-ui-engineering when building or changing a user-facing page or component.
Blank Mimic takes 19.
Existing tokens are read before any new look is chosen.
What really happensSpacing, color, and type come from the project's design system. Text contrast target is 4.5:1, and 3:1 for large text.
Blank Mimic takes 16.
The Blank Mimic uses Blank stare.
Illusionist takes 9. Illusionist: Context 82/100.
Small components are forged, with empty and error states.
What really happensIt colocates the component, test, and hook, prefers composition, and handles loading, empty, and error states.
Blank Mimic takes 24.
A ward checks keyboard, names, and focus before the mimic settles.
What really happensWCAG 2.1 AA: keyboard access, labels, focus moves, and heading order. Check widths 320, 768, 1024, and 1440.
Blank Mimic takes 10. Illusionist: Ward.
The blank mimic wears the project's own face.
What really happensYou get a responsive component on the design system, with keyboard access and named controls.
Blank Mimic takes 31. Blank Mimic falls.
The Blank Mimic falls.
Learn this spell
Claude Code and Codex
npx skills add addyosmani/agent-skills --skill frontend-ui-engineeringNotes
For new or changed UI. Use the project's design system, not a default purple-gradient look. WCAG 2.1 AA: keyboard access, labels, focus management, 4.5:1 contrast for normal text and 3:1 for large text. Check 320, 768, 1024, and 1440 px. The skill points at repo-root references/accessibility-checklist.md, which a per-skill install does not copy. Clone the repo or copy that file in. All 25 skills: npx skills add addyosmani/agent-skills.
Proving Grounds record
Controlled quest results, separate from recorded usage. Each setup pools runs across its quests. The per-quest table below has casts, cast time, mana, incantation and runes; medians are not pooled.
Hero: Claude Code 2.1.305; weapon (model): claude-haiku-5-5; charge (effort): low; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.
Hero: Claude Code 2.1.305; weapon (model): claude-opus-5-5; charge (effort): high; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.
Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.
Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.
Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; ambient cast (the agent chose). macOS 27.0.1, arm64. Curator.
| QuestFixed task | Clear ratePassed runs | SteadinessReliability lower bound | BuffClear-rate points vs Unarmed | Instant castsFirst-prompt clears | CastsPrompts to clear | Cast timeAgent runtime | ManaCost at API list prices | IncantationOutput tokens | RunesLines added / removed | AttunementSkills opened | SetupApp, model, effort and sandbox |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Illusionist: pricing plan switcherQuest v8 | 0%0 of 3Unarmed: 0% (0 of 3) | 0% | +0 ppvs Unarmed | 0 of 30%Unarmed: 0 of 3 | Not reported | 2m 0sUnarmed: 2m 24s | 248 Unarmed: 278 | Not reportedUnarmed: Not reported | +516 / -4Unarmed: +508 / -3 | 100% | Hero: Claude Code 2.1.305; weapon (model): claude-haiku-5-5; charge (effort): low; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v8 and spell commits |
| Illusionist: pricing plan switcherQuest v8 | 17%1 of 6Unarmed: 33% (2 of 6) | 3% | -17 pp debuffvs Unarmed | 1 of 617%Unarmed: 2 of 6 | 1 | 5m 29sUnarmed: 4m 38s | 12,065 Unarmed: 9,828 | Not reportedUnarmed: Not reported | +717 / -3Unarmed: +730 / -2 | 100% | Hero: Claude Code 2.1.305; weapon (model): claude-opus-5-5; charge (effort): high; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v8 and spell commits |
| Illusionist: pricing plan switcherQuest v8 | 80%4 of 5Unarmed: 53% (9 of 17) | 38% | +27 ppvs Unarmed | 4 of 580%Unarmed: 9 of 17 | 1 | 1m 52sUnarmed: 1m 37s | 3,035 Unarmed: 2,764 | Not reportedUnarmed: 14.5k | +365 / -3Unarmed: +394 / -3 | 100% | Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v8 and spell commits |
| Illusionist: pricing plan switcherQuest v8 | 50%1 of 2Unarmed: 53% (9 of 17) | 9% | -3 pp debuffvs Unarmed | 1 of 250%Unarmed: 9 of 17 | 1 | 1m 30sUnarmed: 1m 37s | 2,342 Unarmed: 2,764 | Not reportedUnarmed: 14.5k | +358 / -3Unarmed: +394 / -3 | 0% | Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; ambient cast (the agent chose). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v8 and spell commits |
| Illusionist: pricing plan switcherQuest v8 | 67%2 of 3Unarmed: 17% (1 of 6) | 21% | +50 ppvs Unarmed | 2 of 367%Unarmed: 1 of 6 | 1 | 1m 32sUnarmed: 1m 6s | 2,484 Unarmed: 1,541 | Not reportedUnarmed: 10.2k | +435 / -4Unarmed: +368 / -3 | 100% | Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v8 and spell commits |
| Illusionist: booking form repairQuest v4 | 67%2 of 3Unarmed: 67% (2 of 3) | 21% | +0 ppvs Unarmed | 0 of 30%Unarmed: 0 of 3 | 2 | 2m 8sUnarmed: 2m 10s | 275 Unarmed: 271 | Not reportedUnarmed: Not reported | +176 / -77Unarmed: +158 / -79 | 100% | Hero: Claude Code 2.1.305; weapon (model): claude-haiku-5-5; charge (effort): low; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v4 and spell commits |
| Illusionist: booking form repairQuest v4 | 100%3 of 3Unarmed: 33% (1 of 3) | 44% | +67 ppvs Unarmed | 3 of 3100%Unarmed: 1 of 3 | 1 | 2m 49sUnarmed: 3m 44s | 7,308 Unarmed: 8,662 | Not reportedUnarmed: Not reported | +218 / -80Unarmed: +245 / -86 | 100% | Hero: Claude Code 2.1.305; weapon (model): claude-opus-5-5; charge (effort): high; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v4 and spell commits |
| Illusionist: booking form repairQuest v4 | 100%5 of 5Unarmed: 87% (13 of 15) | 57% | +13 ppvs Unarmed | 0 of 50%Unarmed: 0 of 15 | 2 | 1m 6sUnarmed: 1m 6s | 2,020 Unarmed: 1,761 | Not reportedUnarmed: 12.2k | +107 / -57Unarmed: +114 / -61 | 100% | Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v4 and spell commits |
| Illusionist: booking form repairQuest v4 | 100%2 of 2Unarmed: 87% (13 of 15) | 34% | +13 ppvs Unarmed | 0 of 20%Unarmed: 0 of 15 | 2 | 1m 13sUnarmed: 1m 6s | 2,168 Unarmed: 1,761 | Not reportedUnarmed: 12.2k | +124 / -60Unarmed: +114 / -61 | 0% | Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; ambient cast (the agent chose). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v4 and spell commits |
| Illusionist: booking form repairQuest v4 | 100%3 of 3Unarmed: 100% (3 of 3) | 44% | +0 ppvs Unarmed | 0 of 30%Unarmed: 0 of 3 | 2 | 1m 21sUnarmed: 1m 27s | 2,485 Unarmed: 2,407 | Not reportedUnarmed: Not reported | +141 / -79Unarmed: +93 / -58 | 100% | Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot) Try this loadoutRecorded with quest v4 and spell commits |
Scrying (screenshots of runs)
The latest run of each setup. Local paths, names and ids are blurred; credentials are removed.
This spell has no recorded sessions in the curator's logs. Tried it? Send a spell report.





