Communitygithub.com

imagile-dev/design

设计、优化或审查Web UI、落地页、演示文稿和图片集,使其看起来像是精心挑选,而非AI生成。适用于新建页面、重新设计、设计评审、润色、动效或简报。

design 是什么?

本技能旨在帮助开发者创建具有“人为选择感”而非“AI生成感”的界面,适用于新建页面、重新设计、设计评审、润色或动效设计等场景。它强制遵循一个包含四阶段的工作流:首先加载项目上下文(如DESIGN.md、主题令牌),然后编写设计简报以明确方向和规则,接着构建到最低质量标准(包括色彩系统、排版、响应式等),最后通过截图进行视觉审查(使用Playwright抓取375px、768px和1440px的截图)并对照参考文献纠错。技能内置了四种模式(Build、Refine、Critique、Polish),每种模式有明确的行为边界(例如Refine模式不进行重新设计)。其核心思想是“节制不是目标,意图才是”——通过一个强烈的想法、一个视觉焦点和一套严格的系统来避免通用或杂乱的设计。该技能支持在任何AI Agent平台(如Claude Code、Cursor、Codex等)中使用,并通过多个参考文件(如color.md、typography.md、tells.md)提供详细规范。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/imagile-dev/agent-skills/tree/HEAD/plugins/imagile/skills/design

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

design 是做什么的?

打造那些看起来是经过精心选择,而非AI生成的界面。每个默认值都是一次被跳过的决策。本技能让每一个决策都充满目的性:首先撰写简报,然后构建到最低质量标准,最后对真实截图进行审查。

两种失败模式,第一种更糟:

  1. 通用化。 页面可属于其类别中的任何产品。它带有当前AI的默认风格,或者平淡无奇到无人记得。
  2. 杂乱无章。 每个元素都在表演。动效、渐变和装饰相互竞争,没有主次之分。

两种问题的解药都是一个强烈的想法,在一个位置表达,并置于一个严谨的系统中。节制不是目标,意图才是。

1. 选择模式

模式使用场景操作
构建(Build)新建页面、屏幕、组件、演示文稿或图片集第2至5节
优化(Refine)“让它更大胆、更安静、更简洁、更丰富多彩、更有活力”第6节
审查(Critique)“审查这个”、“这个看起来对吗”、“打分”references/critique.md
打磨(Polish)在交付任何视觉内容之前第7节

优化模式绝不重新设计。它保留品牌标识、文案以及请求之外的所有内容。如果请求需要重新设计,请明确说明并停止。切勿在两者之间妥协。

2. 首先加载上下文

  1. 读取仓库根目录下的 DESIGN.md、仓库的 CLAUDE.md、现有令牌(global.css、tailwind.config.*、主题文件)以及 .claude/image-generation/style.md。
  2. 简报优先。 当 DESIGN.md 或用户指定了某个外观时,请严格遵循,即使该外观在“特征列表”中。以下规则仅管辖尚未做出的选择。
  3. 若无 DESIGN.md,请先探索仓库,然后最多提出三个关于持久事实的问题:谁在使用它、它必须实现什么目标、以及有何证据。切勿要求用户在抽象层面选择一种美学风格。相反,展示两个或三个选项。
  4. 将你了解到的内容写入 DESIGN.md,参考 references/design-md.md。后续会话不应再次询问。
  5. 一次更正就是一条固定规则。 当用户更正了一个视觉选择时,在同一轮对话中立即向 DESIGN.md 添加一行“固定规则”。
  6. 仅使用手头的证据。 切勿捏造推荐信、客户标志、用户数量、指标或引用。标记占位数据,并列出供用户确认。

3. 编写简报(构建模式)

在编写代码之前,先在聊天中发布一份简短简报。这只需一分钟,却能防止产生通用化的结果。

  1. 设计阅读。 一行描述:“将此解读为面向[受众]的[界面],处于[模式]模式,倾向于[方向]。”

  2. 界面模式。 每个界面选择一个模式,而非每个产品。开发者工具的落地页仍属于“说服”模式。

    模式界面表达方式变化 / 动效 / 密度
    说服(Persuade)落地页、定价、发布、作品集首页一个宏大想法、真实图片、色块7 / 6 / 3
    操作(Operate)应用、仪表盘、设置、管理后台系统本身就是设计。无奇观3 / 2 / 7
    阅读(Read)文档、文章、课程字体承载页面3 / 2 / 5
    体验(Experience)游戏、趣味学习、儿童、活动角色、环境动效、幽默8 / 8 / 4

    三个拨盘取值范围为1到10。变化指从对称到大胆不对称。动效指从静态到电影级。密度指从画廊到驾驶舱。将语气词汇映射到它们:“极简”降低变化和密度,“花哨”或“活泼”提高动效,“密集”或“专业”提高密度。在 DESIGN.md 中记录拨盘值。

  3. 场景句。 谁在何处并在何种光线下使用它。“一名夜班护士在昏暗的休息室里用手机查看排班表”决定了深色还是浅色。像“开发者工具意味着深色”这样的类别标签则不行。

  4. 理念句。 “[仅此主题拥有的事物]变成[一种视觉手段]。” 然后进行竞争对手测试:换用竞争对手的名称。如果句子仍然成立,说明理念过于通用。重写。

  5. 令牌。 四到六种命名颜色及一种颜色策略(references/color.md)。字体系列及其角色(references/typography.md)。一个布局概念,以一句话加一个ASCII线框图表示。动效级别。

  6. 论点(仅适用于说服模式)。 每个部分一个主张,并附有其证据。删除任何没有主张的部分。不要默认使用“英雄区、合作伙伴标志带、三个功能、行动号召”的套路。

  7. 对照特征列表检查。 对于简报中未涉及的每个维度,请阅读 references/tells.md。询问主题是否仅凭类别就能猜到,然后询问外观是否“类别+‘不寻常的外观’”就能猜到。如果任一答案是肯定的,请修改该部分,并说明改变了什么。

4. 构建到最低质量标准

将胆识集中在一个地方。让一个元素成为令人印象深刻的东西,保持其周围一切安静,并去除不为理念服务的装饰。当你剥离一个“特征”时,用真实的东西填充空间:尺度、图片、内容或色块。仅仅移除会导致页面空洞、单薄。

最低质量标准适用于每个界面,无需特意声明:

  • 使用令牌,而非字面值。 颜色、字体、间距、圆角和动效作为 :root 上的令牌存在。浅色和深色来自 prefers-color-scheme,可通过 data-theme 覆盖。存在切换开关时,以用户选择为准。
  • 对比度。 文本4.5:1,大文本、图标、控件和焦点环3:1。切勿在彩色背景上使用灰色文本。
  • 字体。 最多两种字体系列。字号不超过五种。正文16px或更大,每行45到75个字符。标题在任何宽度下都能在两行内显示。
  • 移动优先。 从320px宽度开始工作,16px间距,无横向滚动。点击目标为44px。输入框为16px以防止iOS缩放。切勿禁用缩放。
  • 状态。 每个控件都有默认、悬停、焦点可见、激活、禁用、加载、错误和成功状态。每个异步区域都有加载、空和错误状态。
  • 稳定性。 无布局偏移。动画或异步面板保持固定高度。网格中的卡片高度一致,底部固定。
  • 切勿倾斜任何可点击元素。 倾斜仅用于装饰性印章和贴纸。
  • 动效。 有目的、可中断、仅使用 transform 和 opacity,并且在 prefers-reduced-motion 下更轻柔。内容在不启用JavaScript的情况下可见。
  • 图片。 采用统一风格的真实或生成艺术。角色和装饰艺术作为透明裁剪图输出,而非深色盒子。图片中不得嵌入文本。
  • 文案。 简短、具体,并从用户角度撰写。视觉效果优于段落。

细节存在于参考文件中。仅读取任务所需的部分:

文件涵盖内容
references/typography.md选择字体、比例、尺度、显示字体、加载
references/color.md颜色策略、OKLCH令牌、深色模式、对比度
references/layout.md间距、框架、网格、层级、响应式和触摸
references/motion.md是否动画、缓动、持续时间、性能、减少动效
references/interaction.md状态、表单、最坏情况数据、感知速度
references/copy.mdUX写作、错误、空状态、真实内容
references/imagery.md艺术指导、生成艺术、照片、图标
references/decks.md幻灯片演示和演讲
references/tells.md过时的AI生成设计默认特征列表

5. 仔细审视

代码审查不是设计审查。渲染出来并审视。

  1. 运行页面并在375px和1440px处截图,对于在此处布局变化的页面还需在768px截图。当浅色和深色模式都存在时,截取两种模式的图。使用 playwright-cli、浏览器面板或会话可用的任何浏览器工具。
  2. 眯眼审视每张截图。主要元素、次要元素和组别应仍按此顺序清晰可辨。
  3. 寻找冲突:重叠、裁剪的横幅、不该换行却换行的文本、错位的图标、不均匀的网格、应该是2x2却出现3+1行的情况。
  4. 使用 references/critique.md 进行审查,按其修复顺序修复,并再次截图。三轮后停止,并报告遗留问题。
  5. 对于游戏和交互式作品,亲自体验。由子代理在移动宽度下进行游戏测试,能够发现阅读代码永远不会发现的问题。
  6. 保持开发服务器运行,并向用户提供URL。将最终截图放入PR:移动端和桌面端,浅色和深色模式。

当方向尚未确定时(例如字体、标志或调色板),请并排构建两到三个小型模型,让用户选择。然后构建被选中的方案。

6. 优化

每次优化都遵循相同的方法:评估当前状态,编写一句话的论点,在现有系统的词汇中应用它,截取屏幕截图,然后进行打磨。

请求操作方式
更大胆将目标提升到其相邻元素的信心水平:比例、重量、颜色承诺、图片。然后使其周围安静下来
更安静一次去掉一个辅助元素。降低动效拨盘。将颜色合并为更少的角色
更简单删除没有主张的部分。将文字减半。将段落变成一个视觉效果
更多色彩在颜色策略阶梯上上移一步。切勿先添加第二种强调色
排版根据 references/typography.md 重建比例和配对
布局根据 references/layout.md 修复框架、左边距和节奏
添加动画首先通过 references/motion.md 中的频率门槛。然后添加一个编排好的时刻
更清晰的文案应用 references/copy.md
响应式优先为375px重新设计:单列、真实的点击目标、无内容被裁剪
强化输入最坏情况数据,并添加 references/interaction.md 中缺失的状态

7. 发布清单

在宣布任何视觉工作完成之前,请执行以下检查:

  • DESIGN.md 反映了所做的决策和任何进行的更正
  • 375px和桌面端的截图(浅色和深色模式)显示无冲突或裁剪
  • references/tells.md 中的任何内容均未出现,除非简报中明确指定
  • 每个控件都有其状态,每个异步区域都有加载、空和错误状态
  • 最坏情况数据渲染正常:长名称、零个和单个项目、大数字
  • 键盘可访问所有元素,焦点可见,并且尊重减少动效设置
  • accessibility 技能报告主要主题上没有严重违规
  • 图片风格统一,适当剪裁,并使用 web-optimize 进行优化
  • 文案精简至用户所需内容,无任何捏造的证明
  • 开发服务器正在运行,并且PR中包含了截图

相关技能

  • accessibility 使用 axe-core 跨宽度、方案和主题审计 WCAG 2.2 AA 标准。
  • image-generation 通过锁定调色板的 style.md 生成艺术。 background-removal 进行裁剪。 web-optimize 用于输出。
  • architecture 在其 web 参考文档 中保存了站点的堆栈默认值。

致谢

本技能改写并整合了来自Anthropic的 frontend-design 技能(Apache-2.0)、Paul Bakaus的Impeccable(Apache-2.0)、Emil Kowalski的设计工程技能(MIT)以及Leonxlnx的 taste-skill(MIT)的理念。未复制任何文本。每个参考文件均注明其规则的来源。

相关技能