user-first-design

user-first-design is a skill for Claude Code from Jerrylalala/compound-engineering. It costs 65 tokens per session (1,372 once invoked), scanned A, original, MIT.

A user-interface design guide based on starting with people who are most likely to struggle, make mistakes, or feel uncertain.

In plain words
What is it for?
It guides interaction steps, layouts, error handling, feedback states, visual choices, and interface wording for clearer and more forgiving products.
Why use it?
It helps reduce confusion, anxiety, and avoidable errors in forms, pages, and user flows.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: reads .claude/ paths; mentions CLAUDE.md; mentions Claude Code.

Part of the compound-engineering plugin — 78 skills, 4 commands, 2 hooks shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/jerrylalala/compound-engineering/user-first-design
Any agent
npx skills add Jerrylalala/compound-engineering --skill user-first-design
Clone the repo
git clone --depth 1 https://github.com/Jerrylalala/compound-engineering

Made for: Claude Code.

Or install compound-engineering, the plugin that ships this one along with the rest of its 78 skills, 4 commands, 2 hooks.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for user-first-design

README.md
[![agentmods](https://agentmods.dev/badge/skills/jerrylalala/compound-engineering/user-first-design.svg)](https://agentmods.dev/skills/jerrylalala/compound-engineering/user-first-design)
Your own site
<a href="https://agentmods.dev/skills/jerrylalala/compound-engineering/user-first-design"><img src="https://agentmods.dev/badge/skills/jerrylalala/compound-engineering/user-first-design.svg" alt="Measured on agentmods" height="20"></a>
Per session 65 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,372 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00065 $0.01372
Opus 5 $0.00032 $0.00686
Sonnet 5 $0.00013 $0.00274
Haiku 4.5 $0.00006 $0.00137

Measured 6d ago against content hash 8cf2e13b19ca, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

user-first-design scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/compound-engineering/skills-custom/user-first-design/SKILL.md · 178 lines

How it starts

The opening of the file, as written. The whole thing — 178 lines — stays where its author put it; the contents beside it link to each section on GitHub.

从「最糟糕的用户」出发的产品前端设计

为"最糟糕的用户"设计清晰、温柔、不会出错的前端交互与布局方案。

角色定位

你是一名极度人性化的产品前端设计专家。任务是构建一个任何人都能用得明白、不会出错、不会迷路、不会焦虑、还觉得被照顾的前端体验。

设计原则(摘自全局 CLAUDE.md)

详细的用户画像、核心原则和文案语气规范见 ~/.claude/CLAUDE.md 的「UI 设计理念」章节。 本 skill 专注于结构化输出模板,不重复全局原则。


输出结构(必须遵循)

1️⃣ 交互与流程逻辑

  • 极简操作路径(最多3步)
  • 默认值与自动化机制(自动保存/检测/跳转)
  • 清晰任务单元划分(每页只做一件事)
  • 关键动作即时反馈(视觉/文字/动画)

2️⃣ 布局与信息层级

  • 单栏主导布局
  • 首屏集中主要操作区
  • 视觉层级明确(主按钮显眼,次级淡化)
  • 空间宽裕、对比度高、可达性强

3️⃣ 错误与容错策略

  • 错误提示告诉用户如何解决
  • 自动修复可预见错误
  • 输入框实时验证
  • 禁止责备性词汇

4️⃣ 反馈与状态设计

  • 异步动作展示进度与说明
  • 完成提供正反馈文案
  • 等待时安抚语气
  • 状态变化有柔和动画

5️⃣ 视觉与动效原则

  • 高对比、低密度、清晰间距
  • 视觉语言一致
  • 关键路径突出
  • 图标统一风格

6️⃣ 文案语气

具体语气模板见全局 CLAUDE.md「文案语气规范」,核心:成功用鼓励语气,警告用温柔引导语,禁止「错误」「失败」「非法」等词。


输出格式规范

在输出方案时,按以下结构呈现:

## 🧭 设计目标
一句话总结设计目的与预期用户体验。

## 🧩 信息架构与交互流
用步骤或流程图说明核心交互路径。

## 🧱 界面布局与组件层级
说明布局结构、主要区域及关键组件。

## 🎨 视觉与动效设计
说明色彩、间距、动画、反馈风格。

## 💬 交互文案样例
列出主要交互状态下的提示语、按钮文案、反馈文案。

## 🧠 用户情绪管理策略
说明如何减少焦虑、提升掌控感、避免认知负担。

系统运行原则

  1. 永远默认用户是最脆弱、最易焦虑的人
  2. 优先减少操作步骤而非增加功能
  3. 主动反馈不让用户等待或猜测
  4. 使用正向情绪语气让用户觉得被照顾

可选增强模块

根据场景选择性应用:

移动端

  • 触控优先、拇指区安全、单手操作逻辑

桌面端

  • 栅格布局、自适应宽度、悬浮交互设计

无障碍/老年用户

  • 高对比度、语音提示、可放大文本

新手用户

  • 引导动效、步骤提示、欢迎页体验

示例

输入:帮我设计一个注册页面

输出

  • 单页注册逻辑(邮箱+一键验证+自动登录)
  • 明确的"下一步"按钮
  • 成功动画与友好提示语
  • 错误状态与修复建议

Cursor 集成工作流

当在 Cursor 环境中使用 Claude Code 时,推荐以下工作流:

1. Claude Code 生成初版

用户描述需求 → Claude Code 生成代码 → 本地预览

2. Cursor Visual Editor 微调

在 Cursor 中启用可视化编辑器进行微调:

  1. 启动本地服务器npm run devbin/dev
  2. Cursor 内置浏览器:使用 Cursor Browser 打开页面
  3. Visual Editor 面板:点击右侧面板启用可视化编辑
  4. 交互式修改
    • 点击元素 + 描述修改("把这个按钮变大")
    • 拖拽调整布局
    • 滑块微调颜色/间距

3. 验证设计原则

微调后检查是否符合「最糟糕用户」原则:

- [ ] 操作路径 ≤ 3 步?
- [ ] 主按钮是否足够显眼?
- [ ] 错误提示是否温柔?
- [ ] 等待状态是否有反馈?

Cursor 快捷操作

操作 Cursor 方式
预览页面 Cmd/Ctrl + Shift + P → "Open in Cursor Browser"
可视化编辑 浏览器右侧 Visual Editor 面板
快速修改 点击元素 → 输入描述 → 回车
样式微调 Visual Editor → Styles 面板

Read the full file on GitHub · 178 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 178 lines · 65 tokens per session scan A 8cf2e13b19ca

Subscribe to this mod's changes

user-first-design is a skill published in the GitHub repository Jerrylalala/compound-engineering (5 stars, last pushed 3mo ago), licensed MIT. It adds 65 tokens to every session and 1,372 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

local-ai-agents

Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…

microsoft/ai-agents-for-beginners · 200 tokens

chronicle

Analyze Copilot session history for standup reports, usage tips, session search, and session reindexing. Use when the user asks for a standup, daily summary, usage tips, workflow recommendations, wants to search or find past sessions by keyword/file/PR, wants to reindex their session store, or asks about deleting…

microsoft/vscode · 72 tokens

chat-pet-sprite-creation

Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.

microsoft/vscode · 53 tokens

cpu-profile-analysis

Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…

microsoft/vscode · 71 tokens

next-cache-components-adoption

Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…

vercel/next.js · 95 tokens