mcpField
U
ux-heuristics-audit

ux-heuristics-audit

github.com/uxcel-lab设计与 UI36128 次安装17 周前更新
代码仓库

关于 ux-heuristics-audit

用于审查界面可用性的设计技能,依据 Nielsen 的 10 项启发式原则识别问题。它为每项发现标注严重程度并给出具体修复建议,适合设计评审与产品团队。

主要功能

  1. 01按 10 项启发式原则检查
  2. 02为问题评定严重程度
  3. 03提供具体修复建议
  4. 04抑制低价值问题标记
  5. 05按优先级列出前三项

适用场景

  1. 01评估界面或用户流程
  2. 02确定可用性问题的修复顺序
  3. 03审查表单、错误与撤销流程

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/uxcel-lab/product-skills --skill ux-heuristics-audit

安装后在 Claude Code 中输入/ux-heuristics-audit确认已加载。

详细介绍

易用性启发式审查技能

此技能相较于默认行为的变化

如果不使用此技能,易用性审查往往只会给出一份泛泛建议的清单(“让它更简洁”“改进 CTA”),没有框架、没有严重程度,也没有说明问题的原因。此技能会强制做到以下四点:

  1. 每项发现都指出其违反的启发式原则——而非含糊的主观看法。
  2. 每项发现都标注严重程度,依据频率 × 影响 × 持续时间进行评定——让清单按优先级排序,而非一视同仁。
  3. 每项发现都给出具体明确的修复方案——而非“考虑改进”。
  4. 审查会避免过度标记问题。 启发式原则是指导方针,不是要尽可能多勾选的清单。只有当某项问题有可能让真实用户浪费时间、降低信心或无法完成任务时,才会将其列入审查结果。

范围约束。 直接调用此技能时(用户明确指定了此审查),只审查这一项关注点——不要纳入相关的其他审查。只有在编排器(ux-design-review)或生成式技能依据 docs/orchestration-policy.md 调用此技能时,它才会与其他审查视角一同运行,并归入Tier A — 始终相关,自动运行。明确指定的范围始终优先。


10 项启发式原则——检查内容与违规表现

逐项检查。每个问题都要记录:违反的启发式原则、严重程度、问题所在、修复方案。

1. 系统状态的可见性

系统应通过及时反馈,随时告知用户当前发生的情况。优秀的界面会回答:刚才发生了什么?我在哪里?现在正在发生什么?接下来会发生什么?

以下情况应标记: 操作没有任何反馈(点击按钮后状态没有变化,提交表单后没有确认信息);加载或处理过程没有指示器;用户不清楚自己在流程中的当前位置;后台操作(保存、同步、上传)没有任何提示。

  • ❌ 用户点击“保存”后,界面没有任何可见变化——成功了吗?
  • ✅ 点击“保存”后显示加载动画,随后出现勾号和带时间戳的“已保存”。
2. 系统与现实世界的匹配

使用用户熟悉的语言——常用词语、短语和概念——而非系统或开发者术语。遵循现实世界的惯例和预期顺序。

以下情况应标记: 文案使用内部或技术术语(“身份验证失败:令牌已过期”)、不熟悉的图标,或不符合用户预期的隐喻;信息顺序不自然。

  • ❌“错误 0x80:凭据对象无效。”
  • ✅“密码不匹配。请重试或重置密码。”
3. 用户控制权与自主权

用户会犯错,也会改变主意。应提供清晰标示的“紧急出口”——撤销、重做、返回、取消、关闭——而不强迫用户经过冗长的对话流程。

以下情况应标记: 破坏性操作没有撤销选项;没有明显的方式退出某种状态、模态窗口或流程;多步骤流程困住用户,不提供返回选项;退出入口被隐藏或标签含糊不清。

  • ❌ 删除项目后立即永久生效,无法恢复。
  • ✅ 删除后数秒内显示“撤销”;或者已删除项目可在 30 天内恢复。
4. 一致性与标准

相同的词语、操作和元素在各处应具有相同含义(内部一致性),并遵循平台惯例(外部一致性)。包括视觉、功能、位置和数据格式的一致性。

以下情况应标记: 同一操作在不同位置使用不同标签;主要按钮在不同界面中位置不一;相似组件的行为不一致;不同表单中的日期、电话或数字格式不一致;违反平台惯例(例如,返回行为不符合标准)。

  • ❌ 不同界面中对同一操作使用“删除”“移除”和“移至回收站”。
  • ✅ 同一操作始终使用同一个动词,并保持位置和样式一致。
5. 错误预防

防止错误胜过提供良好的错误消息。使用智能默认值、输入限制、宽容的格式处理、建议,并对高成本操作进行确认。区分失误(意外造成)与错误(心智模型有误)。

**标记条件:**表单允许轻易避免的无效输入;提交前没有内联验证;破坏性或不可逆操作没有确认;僵化的输入格式会拒绝有效数据(“请删除卡号中的空格”)。

  • ❌ 用户点击“提交”后,表单才显示 5 个错误。
  • ✅ 用户离开每个字段时,系统会进行内联验证;卡号字段接受任意空格格式。
6. 识别而非回忆

尽量减轻记忆负担——让选项、操作和信息清晰可见,而不是迫使用户在不同情境中记住它们。

**标记条件:**用户必须记住上一屏的信息才能操作当前屏幕;有助于用户的地方没有自动补全、建议或最近项目;用户已输入的数据没有预填;用户只有知道某功能存在才能发现它。

  • ❌ 账单表单要求用户重新输入刚填写的收货地址。
  • ✅ 默认选中“与收货地址相同”;重新显示最近搜索和浏览过的商品。
7. 灵活高效地使用

同时满足新手和专家的需求。默认显示常用功能;为有经验的用户提供加速方式(快捷键、手势、宏、自定义选项)。

**标记条件:**完成任务只有一条僵化路径;没有为频繁使用者或高级用户提供快捷方式或加速功能;无法为重复工作流自定义或保存偏好。背景说明:对此项在生产力工具或专业工具中应予以重视,在简单的消费类场景或一次性流程中则应较少重视。

  • ❌ 高级用户每次都必须点击同一条包含 6 步的菜单路径。
  • ✅ 除菜单路径外,还提供键盘快捷键和已保存/收藏的操作。
8. 美观简约的设计

界面只应包含有助于用户完成任务的内容。任何没有增添价值的元素都会与有价值的元素争夺注意力。简约意味着实用,而非空洞。

**标记条件:**屏幕被价值较低的元素塞满;装饰性内容挤占任务关键内容;所有内容都被强调(结果反而没有重点);一次显示过多选项,而不是逐步展示。

  • ❌ 定价卡片上有 6 个徽章、3 层阴影和 30 行功能说明,彼此争抢注意力。
  • ✅ 只突出一个元素,仅展示主要功能,其余内容收在“查看全部”后面。

启发式原则之间的张力:#8(简约)、#9/#10(提供更多帮助、更多文档)和 #7(提供更多选项)彼此存在冲突。不要一边建议添加帮助文本、选项和内容,一边又批评界面杂乱。应优先满足用户的主要任务。

9. 帮助用户识别、诊断并从错误中恢复

错误消息应使用通俗语言,说明发生了什么,并礼貌地提供可行的解决方法。

**标记条件:**错误消息显示代码或术语;消息说明了问题,却没有提供解决方案;语气带有指责或生硬;消息使用全大写(更难阅读,感觉像在吼叫,也会影响无障碍体验);错误没有显示在导致错误的字段旁边。

  • ❌ “输入无效。”
  • ✅ “此邮箱已注册。请改为登录,或使用其他邮箱地址。”(显示在字段旁)
10. 帮助和文档

理想情况下,设计本身无需解释——但当用户遇到困难时,应提供易于查找的帮助。区分主动帮助(引导、情境提示)和被动帮助(可搜索的文档、教程)。

**标记条件:**复杂功能缺少情境指导;帮助内容藏得太深或无法搜索;引导无法跳过或关闭;提示与当前任务无关。

  • ❌ 复杂功能没有工具提示、没有引导,也找不到相关文档。
  • ✅ 首次使用时显示可关闭的情境提示,并提供可搜索且按任务分类的帮助。

严重程度评级

像启发式评估那样为每项发现评级——结合以下三个因素(根据 Nielsen):

  • 发生频率 — 用户遇到该问题的频率有多高?(罕见 ↔ 总是)
  • 影响程度 — 遇到问题后有多难克服?(令人烦恼 ↔ 阻碍任务)
  • 持续性 — 只发生一次(用户会学着绕过问题),还是每次都会发生?

将以上因素综合为以下四个等级之一:

严重程度含义
严重阻碍任务完成,或导致数据丢失/不可逆错误。发布前修复。
重大发生频繁且阻力很大;用户可以恢复,但会浪费时间或失去信心。
轻微有明显阻力,但发生频率低或容易克服。
表面问题细节润色;有时间再修复。不要用这类问题凑报告。

如果问题既违反无障碍规范(对比度、键盘操作、屏幕阅读器、替代文本),又影响可用性,请注明,但将无障碍方面的具体问题交由 accessibility-audit 技能处理,避免重复;如果有必要进行完整的无障碍审查,请调用该技能。


审查输出格式

## Usability Heuristic Audit — [Screen / Flow Name]
Context: [platform · audience · primary user task, if known]

### Critical
- [Issue] — what's wrong → fix. (Heuristic #N: name)

### Major
- [Issue] — what's wrong → fix. (Heuristic #N: name)

### Minor
- [Issue] — what's wrong → fix. (Heuristic #N: name)

### Working well ✓
- [What already satisfies the heuristics — name them]

**Top 3 priorities:** the three fixes with the highest frequency × impact.

结尾务必列出优先级最高的 3 项——冗长而无重点的列表无助于采取行动。


如何做好审查(而非照单全查)

  1. 先了解背景。 平台(移动端/Web/桌面端)、受众(新手/专家)和主要任务,都会影响哪些启发式原则更重要,以及如何赋予权重。如果背景不明且会实质影响发现,请先提一个问题再指出问题。
  2. 只指出实际成本。 一项发现必须确实可能让用户浪费时间、失去信心或无法完成任务。“稍微改得更整洁些”不算一项发现。
  3. 考虑启发式原则之间的张力。 极简主义与提供更多帮助/选项/反馈之间存在设计上的冲突。不要同时提出两者——应根据主要任务权衡取舍。
  4. 排优先级,不要罗列。 3 项严重问题胜过 25 项表面问题。严重程度评级和前三项就是为了确保这一点。
  5. 提出具体的修复方案。 “添加反馈” → “在 Save 按钮上显示加载动画,然后显示‘已保存’确认信息。”

常见的错误/正确做法

❌ 错误做法✅ 正确做法
“提高此屏幕的可用性”为每个问题注明对应的启发式原则、严重程度和具体修复方案
将所有问题视为同等重要评级为严重/重大/轻微/表面问题;列出优先级最高的 3 项
指出界面杂乱,AND 建议添加更多帮助文本/选项根据主要任务权衡极简与帮助之间的冲突
在此处重新推导无障碍问题指出重合之处;具体问题交由 accessibility-audit 技能处理
不了解平台/受众就开始审查先了解背景,再据此调整启发式原则的权重
用表面问题凑报告只报告会让用户浪费时间或失去信心的问题
不指出“Error 0x80 / INVALID INPUT”指出术语晦涩、错误代码、全大写和责备语气(启发式原则 #9)
永久性破坏操作没有退出方式指出缺少撤销/取消/返回功能(启发式原则 #3)

来源课程(Uxcel)

评论

支持 Markdown