Agent skill

UX Compare

by jezweb in jezweb/claude-skills

Compare UX patterns across multiple reference apps using pattern libraries produced by ux-extract.

MITAuto-check passed

Install UX Compare

skills CLI
$ npx skills add jezweb/claude-skills --skill ux-compare -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jezweb/claude-skills ux-compare --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jezweb/claude-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/dev-tools/skills/ux-compare .claude/skills/ux-compare && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ux-compare
GitHub stars
1.1k
Used in
1 other repo
Token cost
~2.2k tokens
SKILL.md length
877 words
Files
2 (incl. references)
Skills in repo
52
Repo updated
First seen
Licence
MIT

At a glance

Compare UX patterns across multiple reference apps using pattern libraries produced by ux-extract.

  • Works in 4 steps: Read every library → Walk category by category → Cross-reference absences → …
  • With compare UX patterns
  • SKILL.md covers When to use, Inputs, Comparison Process and Output, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

UX Compare is an agent skill from jezweb/claude-skills. Compare UX patterns across multiple reference apps using pattern libraries produced by ux-extract. Reads 2+ pattern-library.md files, walks them category by category, identifies where apps converge (strong signal), where they diverge (genuine design choice), what's unique to one app, and what's absent across the set. Produces an opinionated comparison document with recommendations for a new build. No browser needed — pure markdown analysis. Trigger with 'compare UX patterns', 'how do top apps handle X', 'ux…

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/comparison-template.md`). Compatibility notes: claude-code-only

The repository describes itself as: Skills for Claude Code CLI such as full stack dev Cloudflare, React, Tailwind v4, and AI integrations. The licence is MIT.

When your agent uses it

  • With compare UX patterns
  • How do top apps handle X
  • Pattern comparison across reference apps

Example prompts

  • “s unique to one app, and what”
  • “compare UX patterns”
  • “how do top apps handle X”
  • “/ux-compare”

Requirements

  • Compatibility (from SKILL.md): claude-code-only

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Read every library
  2. Walk category by category
  3. Cross-reference absences
  4. Synthesise recommendations

What it can do on your machine

Read from SKILL.md and the folder at commit 64965d9. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    claude-code-only

    From compatibility in the SKILL.md frontmatter.

Context cost

UX Compare loads about 2.2k tokens when it runs, and up to ~3.5k if it reads all its reference files. Until then it costs about 145 tokens; SKILL.md has 877 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~145
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jezweb/claude-skills at commit 64965d9, republished under its MIT licence (© jezweb). 877 words, ~2,198 tokens.

Download SKILL.mdSave it as .claude/skills/ux-compare/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
ux-compare
description
Compare UX patterns across multiple reference apps using pattern libraries produced by ux-extract. Reads 2+ pattern-library.md files, walks them category by category, identifies where apps converge (strong signal), where they diverge (genuine design choice), what's unique to one app, and what's absent across the set. Produces an opinionated comparison document with recommendations for a new build. No browser needed — pure markdown analysis. Trigger with 'compare UX patterns', 'how do top apps handle X', 'ux comparison', 'pattern comparison across reference apps'.
compatibility
claude-code-only

UX Compare

Read N pattern libraries produced by ux-extract and synthesise a comparison. Answers questions like:

  • "Across claude.ai, Linear, Notion, Vercel, and Superhuman — how are empty states handled?"
  • "Which apps use keyboard shortcuts, and what's the shared vocabulary?"
  • "When we build our billing page, should we follow convention or deliberately break it?"

A single extract is a reference point. Multiple extracts are a design library. A comparison is a decision aid — it turns the library into "here's what to do and why".

When to use

  • Before a build — comparing 3–5 references for the feature class you're about to build reveals the convention and the tradeoffs
  • During a design review — "this pattern isn't in any of the 5 references we've extracted — is that deliberate?"
  • For team alignment — shared reference for a design decision
  • To produce a design brief — convergent patterns become the baseline; divergent patterns become the discussion

Inputs

Available libraries

First, discover what's available. Pattern libraries live at:

  • docs/ux-extracts/<app-name>/pattern-library.md
  • .jez/artifacts/ux-extracts/<app-name>/pattern-library.md

List everything you find. Show the user the inventory with the extraction date for each so they can spot stale ones:

Available pattern libraries:
- claude.ai      (extracted 2026-03-12)
- linear.app     (extracted 2026-02-28)
- notion.so      (extracted 2026-01-15) ← 3 months old
- superhuman     (extracted 2026-03-20)

If only one library exists, stop and suggest running ux-extract on more apps first. A one-library "comparison" is just the library.

Scope / focus

Ask the user what to compare — or infer from their request:

  • Whole library — compare every category across every library (verbose but comprehensive)
  • One category — just empty states, just keyboard, just modals (tighter, more useful for specific decisions)
  • A feature area — "how do these apps handle settings", crosses multiple categories but stays focused
  • A specific question — "which apps support offline?" — searches Notable Absences sections too

Narrower scope produces sharper recommendations. Default to asking: "What feature or pattern do you want to compare?"

Libraries to include

By default, include every library the user mentions or all of them if they don't specify. Let them exclude: "all except notion — their library is too stale".

Comparison Process

1. Read every library

For each library in scope, read the full pattern-library.md. Note:

  • Extraction date
  • Scope of the extract (whole app vs partial)
  • Any Notable Absences section — often the most interesting data for comparison
2. Walk category by category

For the scope requested, walk each pattern category that appears in any library. For each category:

  1. List what each app does — one bullet per app, concrete and verbatim where possible
  2. Identify convergence — what's the same across most or all? This is the low-risk default.
  3. Identify divergence — where do they genuinely differ? This is a design decision.
  4. Flag unique approaches — only one app does X. Either innovation or weirdness; call it out either way.
  5. Flag coverage gaps — if an app's library doesn't cover this category, say so (don't silently treat absent-from-library as absent-from-app).
3. Cross-reference absences

After walking categories, collect what's absent across the set. If 4 of 5 apps have no undo on destructive actions, that's a pattern. If 3 of 5 apps have no keyboard shortcut for new-record creation, that's a decision someone keeps making.

Show full SKILL.md (379 more words)Show less
4. Synthesise recommendations

Close with opinionated guidance:

  • Safe default — the convergent pattern. Following it means users feel at home.
  • Deliberate choices — the divergent patterns, with the tradeoff of each so the user can pick.
  • Avoid — unique-to-one patterns unless there's a clear reason why that one app does it differently.
  • Gaps worth filling — absences that are surprising, or that your users would benefit from seeing addressed.

The recommendations section is the reason to run the comparison. Without it, the doc is a pile of bullets. With it, it's a decision.

Output

Write to docs/ux-comparisons/<topic>-YYYY-MM-DD.md (or .jez/artifacts/ux-comparisons/<topic>-YYYY-MM-DD.md if that path exists).

Topic slug from the scope — e.g. empty-states, keyboard-shortcuts, onboarding, destructive-actions.

See references/comparison-template.md for the full output shape.

Short version:

# UX Comparison: Empty States

Compared: claude.ai, linear.app, notion.so, superhuman
Date: 2026-04-19
Scope: How these apps handle empty states across list views, onboarding, and zero-data dashboards.

## At a glance

[2-3 sentences: what converges, what diverges, what's missing across the set]

## Pattern-by-pattern

### Empty list state

- **claude.ai**: illustration + headline + description + primary CTA + 3 shortcut hints
- **linear**: headline only, small text, no CTA
- **notion**: template picker (unique — offers 12 templates)
- **superhuman**: empty state not reached in extract (all-data demo account)

Convergence: most show some form of guidance; none are fully blank.
Divergence: claude.ai guides toward keyboard workflow; notion guides toward templates.
Unique: notion's template-first empty state.
Coverage gap: superhuman not assessed.

### Empty search results
[...]

## Recommendations

- **Safe default**: illustration + one-line description + primary CTA. All convergent apps do this.
- **Consider**: shortcut hints (like claude.ai) if your power-user persona is strong. Tradeoff: adds visual noise that doesn't help first-time users.
- **Skip**: notion's template picker unless you have a templates feature.
- **Fill a gap**: none of the 4 apps explain *why* the list is empty. A one-liner ("No clients yet — add your first to get started") is convergent practice and worth preserving.

## Source libraries

- claude.ai — 2026-03-12
- linear.app — 2026-02-28
- notion.so — 2026-01-15 (stale, re-extract recommended)
- superhuman — 2026-03-20

Autonomy

  • Just do it: Discover available libraries, read them, write the comparison document, cite specific screenshots or copy from the source libraries
  • Ask first: If the user didn't specify scope — one focused question is cheaper than a sprawling comparison
  • Stop and confirm: If fewer than 2 usable libraries exist — comparing is impossible with 1 library, suggest ux-extract first

Reference files

WhenRead
Writing the comparison documentreferences/comparison-template.md

Tips

  • Don't re-list everything from every library. The comparison is value-add synthesis. If you're just copying bullets from 5 libraries, you're not comparing.
  • Convergence is usually the safest choice, but not always the most interesting one. Call out where convergence might be copy-paste rather than good design.
  • Cite screenshots from the source libraries — don't copy them. "See claude.ai pattern library § Empty States, screenshot 502" keeps extracts as the single source of truth.
  • Stale libraries are still useful — just note the date. A 12-month-old library is a snapshot of that moment, not nothing.
  • Recommendations must be opinionated. "It depends" is the weakest possible output. State a position. The user can disagree.
  • Comparisons age too. Re-run when underlying extracts get refreshed, or when a new reference enters the set.

Future: more than 5 apps

Comparisons scale non-linearly. 3 apps is comfortable; 5 is the upper bound of readability; 10 becomes a matrix that's impossible to synthesise in prose. If comparing more than 5 libraries, bucket them:

  • Tier 1 (closest to your app) — detailed bullets
  • Tier 2 (reference-class) — summary bullets
  • Tier 3 (outliers, novel approaches) — mention by exception

Or do several narrower comparisons rather than one mega-comparison.

© jezweb, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in plugins/dev-tools/skills/ux-compare of jezweb/claude-skills.

  • SKILL.md
  • references/comparison-template.md

Open the folder on GitHubat commit 64965d9

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in jezweb/claude-skills, which our catalogue first saw on October 7, 2026.

Compare with similar skills

UX Compare next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

UX Compare compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
UX Compare this skilljezweb/claude-skills1.1k1 repos~2.2kAutomated safety check: PassMIT
Golang Patternsaffaan-m/ECC275k—~1.1kAutomated safety check: PassMIT
Kotlin Exposed Patternsaffaan-m/ECC275k4 repos~5.5kAutomated safety check: PassMIT
Dotnet Patternsaffaan-m/ECC275k1 repos~2.3kAutomated safety check: PassMIT
Fastapi Patternsaffaan-m/ECC275k—~2.3kAutomated safety check: PassMIT
Python Patternsaffaan-m/ECC275k—~2.3kAutomated safety check: PassMIT

Similar skills

  • Golang Patterns

    affaan-m/ECC

    Go-specific design patterns and best practices including functional options, small interfaces, dependency injection, concurrency patterns, error handling, and package organization.

    275k GitHub stars~1.1k tokensUpdated 3 days ago
    DevelopmentAuto-check passed
  • JetBrains Exposed ORM patterns including DSL queries, DAO pattern, transactions, HikariCP connection pooling, Flyway migrations, and repository pattern.

    275k GitHub starsUsed in 4 repos~5.5k tokens
    DatabasesAuto-check passed
  • Dotnet Patterns

    affaan-m/ECC

    Idiomatic C and .NET patterns, conventions, dependency injection, async/await, and best practices for building robust, maintainable .NET applications.

    275k GitHub starsUsed in 1 repo~2.3k tokens
    DevelopmentAuto-check passed
  • Fastapi Patterns

    affaan-m/ECC

    FastAPI patterns for async APIs, dependency injection, Pydantic request and response models, OpenAPI docs, tests, security, and production readiness.

    275k GitHub stars~2.3k tokensUpdated 3 days ago
    Backend & APIsAuto-check passed
  • Python Patterns

    affaan-m/ECC

    Python-specific design patterns and best practices including protocols, dataclasses, context managers, decorators, async/await, type hints, and package organization.

    275k GitHub stars~2.3k tokensUpdated 3 days ago
    DevelopmentAuto-check passed
  • Patterns

    sickn33/agentic-awesome-skills

    Reference document for monopoly patterns. An agent skill from sickn33/agentic-awesome-skills.

    47k GitHub starsUsed in 1 repo~2.6k tokens
    Backend & APIsAuto-check passed

More from jezweb/claude-skills

All 52 skills in this repo
  • Elevenlabs Agents

    jezweb/claude-skills

    Build conversational AI voice agents on the ElevenLabs platform.

    1.1k GitHub starsUsed in 1 repo~3.3k tokens
    Auto-check passed
  • Favicon Gen

    jezweb/claude-skills

    Generate custom favicons from logos, text, or brand colours.

    1.1k GitHub starsUsed in 1 repo~1k tokens
    Auto-check passed
  • Tailwind Theme Builder

    jezweb/claude-skills

    Set up Tailwind v4 + shadcn/ui themed UI with dark mode. An agent skill from jezweb/claude-skills.

    1.1k GitHub starsUsed in 1 repo~3.2k tokens
    Auto-check passed
  • Project Health

    jezweb/claude-skills

    All-in-one project configuration and health management. An agent skill from jezweb/claude-skills.

    1.1k GitHub starsUsed in 1 repo~3k tokens
    Auto-check passed
  • Responsiveness Check

    jezweb/claude-skills

    Test website responsiveness across viewport widths using browser automation.

    1.1k GitHub starsUsed in 1 repo~1.7k tokens
    Auto-check passed
  • MCP Builder

    jezweb/claude-skills

    Build MCP servers in Python with FastMCP. An agent skill from jezweb/claude-skills.

    1.1k GitHub stars~3.1k tokensUpdated 3 days ago
    Auto-check: notes

Questions about UX Compare

What does UX Compare do?

Compare UX patterns across multiple reference apps using pattern libraries produced by ux-extract. UX Compare is an agent skill from jezweb/claude-skills. Compare UX patterns across multiple reference apps using pattern libraries produced by ux-extract.

When should I use UX Compare?

UX Compare fits situations like: with compare UX patterns; how do top apps handle X; pattern comparison across reference apps.

How do I install UX Compare in Claude Code?

Run `npx skills add jezweb/claude-skills --skill ux-compare -a claude-code`. Or copy the skill folder (plugins/dev-tools/skills/ux-compare in jezweb/claude-skills) into .claude/skills/ux-compare in your project. Claude Code loads it when a task matches its description.

How do I install UX Compare in Codex?

Run `npx skills add jezweb/claude-skills --skill ux-compare -a codex`. Or copy the skill folder (plugins/dev-tools/skills/ux-compare in jezweb/claude-skills) into .agents/skills/ux-compare in your project. Codex loads it when a task matches its description.

Can I use UX Compare in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jezweb/claude-skills --skill ux-compare -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ux-compare, .gemini/skills/ux-compare, .github/skills/ux-compare and .opencode/skills/ux-compare in your project.

What does UX Compare need to run?

SKILL.md names no scripts, command-line tools or credentials: UX Compare is instructions for the agent only. Compatibility (from SKILL.md): claude-code-only.

Does UX Compare access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is UX Compare safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does UX Compare use?

UX Compare is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does UX Compare use?

About 2.2k tokens (SKILL.md is roughly 8.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.3k tokens, read only when the agent opens those files.

What are the alternatives to UX Compare?

Skills that share tags, products or a category with UX Compare: Golang Patterns (affaan-m/ECC, 275k stars), Kotlin Exposed Patterns (affaan-m/ECC, 275k stars), Dotnet Patterns (affaan-m/ECC, 275k stars) and Fastapi Patterns (affaan-m/ECC, 275k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains UX Compare?

jezweb (a GitHub user) maintains it in jezweb/claude-skills, which has 1,051 GitHub stars. The repository holds 52 skills in this directory. The repository was last updated on October 5, 2026.

Source: jezweb/claude-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.