用途
heuristic 是 ui-craft 技能中的一个评审视角(lens),用于对 UI 进行有分数的启发式批评。当 ui-craft 技能也已安装时,应先阅读其 SKILL.md 中的 Discovery + Anti-Slop + Craft Test 内容,再应用本技能的具体视角。
主要能力
该技能将界面按 Nielsen 十大启发式原则逐一评分,并审计六条设计定律,最终汇总为量化的 UsabilityScore。可选地,它还能按指定的 persona 运行走查清单。输出是机器可解析的 Markdown,便于产品经理粘贴到 issue 跟踪系统中逐行建单。
使用方式
在命令中通过 $ARGUMENTS 传入待评分的目标。若有 --persona=<name> 参数,则加载 references/personas.md 并运行匹配的走查清单,支持 priya、jordan、adaeze、kwame、margo、all。若有 --json 参数,还会输出机器可读块。若用户要求完整图景,可获取确定性的 UICraftScore(node scripts/eval.mjs <path> --json 或 score_ui MCP 工具)并将两者并排呈现,但绝不对它们取平均。
执行流程包括七个步骤:
- 加载方法论,读取 references/heuristics.md 获取完整评分标准、评分定义、设计定律细节与规定的输出格式,不自行发明新格式或新量表。
- 走查 Nielsen 十大启发式原则,每条按 1-5 分评分(1 阻碍用户 · 2 严重摩擦 · 3 可用但令人困惑 · 4 可用,仅需小幅打磨 · 5 同类最佳),并为每条写出具体发现(引用文本、统计元素数量、指出损坏的流程),模糊的发现不予接受。
- 审计六条设计定律,每条给出 PASS/FAIL 并附具体细节:Fitts 定律(触控目标尺寸、CTA 位置)、Hick 定律(选择密度、导航与选择项规模)、Doherty 阈值(感知延迟、乐观 UI)、Cleveland-McGill(图表编码选择)、Miller 定律(导航深度、表单分区数量)、Tesler 定律(复杂度位于何处)。
- 执行 persona 走查(仅当存在 --persona= 时),以「Checklist item | Pass/Fail | Finding | Impact」表格输出。
- 按影响标签对发现进行排序,影响顺序为 blocks-conversion > adds-friction > reduces-trust > minor-polish,排名列表最多包含 5 条,除非没有更高影响的发现,否则剔除 minor-polish 项。
- 计算 UsabilityScore:heuristic_base = round(((mean(nielsen_scores) − 1) / 4) × 100),减去 5 ×(失败的设计定律数),并钳制在 [0,100]。始终标注 (judged),因为它并非确定性结果,绝不能用于 CI 门禁。
- 按规定的记分卡格式输出:## Heuristic Scorecard 表、## Design Law Audit 表、## Persona Walkthrough 表(仅当传入 --persona= 时)、## Top findings(按影响 ranked,3-5 条编号列表)、## UsabilityScore 块(0-100 分 + 等级 + 组件分解)。
适用场景
适合需要对界面进行结构化、可量化、可追踪的可用性评审的场合。输出为评审产物而非代码,便于在 issue 跟踪系统中逐行建单。评审后下一步是修复发现的问题,然后运行 /finalize——该记分卡是受门禁发布(rung 3)的输入。
限制
该技能对 CRAFT_LEVEL 不敏感:可用性不是一个旋钮,2 分就是 2 分,无论 CRAFT_LEVEL 是 3 还是 9,都不应基于 CRAFT_LEVEL 软化评分。UsabilityScore 是主观判断(judged),非确定性,必须始终标注,且绝不能用于 CI 门禁。输出不含「第一印象」段落,不做模糊表述,不做赞美填充,只有表格与 ranked 列表。该命令不修改代码,除非用户后续明确要求。
其他说明
本技能的官方文本、安装方式、价格等信息暂未提供。