Files
AOS/skills/design/design-system-generation.md
T
Z User e45b68bb8b feat: IMAP mail sync with thread-to-contact matching (PRD §6.1)
Real IMAP connection via imapflow library:
- Connects to IMAP server (IMAPFlow, TLS on port 993)
- Fetches recent messages (configurable limit, default 20)
- Extracts: from, fromEmail, subject, date, snippet (200 chars)
- Thread-to-contact matching (PRD §6.1):
  1. Match sender email against persons table
  2. If no person match, extract domain and match against company.website
  3. Returns matchedCompany + matchedPerson for each email
- Audit-logged (action: crm.mailsync:imap)
- Zod validated (host, port, user, password, folder, limit)
- 502 on IMAP connection failure with detail
- 400 on validation failure

Tested: invalid creds → 502 'IMAP connection failed', missing host → 400
2026-10-27 22:50:50 +00:00

9.9 KiB
Executable File
Raw Blame History

name, description
name description
Design System Generation Skill Import, extract, normalize, or persist a reusable DESIGN.md from an existing design system, HTML artifact, screenshot, template, style reference, or generated interface.

Design System Generation Skill

把视觉规则变成一份可复用的 DESIGN.md。普通首版页面生成不需要这个 skill;仅当用户要导入、提取、规范化、持久化或复用一套设计语言时用。核心理念(借鉴 DESIGN.md 方法):用自然语言描述视觉系统、有精确值就保留、并解释每个设计选择为什么存在而不只是长什么样。产出经 skills/design/design-system-reference.md 供未来生成复用。

三种模式

  • Import(导入):用户给了现成 DESIGN.md/设计规范,要变成可复用参考。行为:读取、保留用户自有规则、检查缺失段、仅在有用时规范化结构、不要按模型自己的品味重写、保留精确值、必要时标出歧义。(如"这是我的 DESIGN.md 后面按这个来"、"检查这份有没有缺失")
  • Extraction(提取):从 HTML/截图/模板/页面/CSS/style skill/品牌参考提取设计规则。行为:检视来源、提取可见值与模式、区分精确值与推断值、既描述表面风格也描述底层意图、不机械照抄每条 CSS、不臆造没有的细节、分离可复用规则与一次性细节。(如"从这个 HTML 提炼 DESIGN.md"、"把截图总结成设计系统")
  • Persistence(持久化):把当前已认可的产物风格沉淀成未来可复用的系统。行为:检视当前产物、从已认可设计提取稳定规则、识别哪些该重复哪些是一次性、别把页面特有细节变成通用规则。(如"把当前页面风格沉淀成 DESIGN.md"、"后面页面都沿用这版")

多模式同时适用时,以用户明确请求为准。

不要用这个 skill 当

只生成单个首版页面、只用现有设计系统而不改它、只做局部编辑、只改确定性参数(色/间距/圆角/密度)、或普通的设计参考查找(那用 design-system-reference.md)。


Workflow

1. 判断模式

分类为 Import / Extraction / Persistence;多个适用时以用户明确请求为准。


2. 提取设计意图(不只描述外观)

解释设计为什么用每个模式,而不只是它长什么样。

弱:蓝色按钮、圆角卡片。 好:蓝色专用于主操作与进度状态,给界面一条清晰路径;圆角软化了原本偏技术感的布局,让密集信息更易接近。

应说清:每个视觉选择传达什么、哪些是结构性哪些是装饰性、如何扩展到未来页面、哪些元素是风格的核心、哪些不该被滥用。

3. 分离稳定规则与一次性选择

好的设计系统不盲目保留每个细节。把决策分为:核心规则(未来都重复)、可选母题(有用但非处处必需)、一次性细节(只属于当前产物)、应避免(不该重复)。

例:

核心规则:项目年份/角色/状态用紧凑等宽元数据标签。
可选母题:项目多时,列表用 hover 预览图。
一次性细节:超大动画项目编号只属于首页 hero。
应避免:别给无关内容页加随机系统标签。

4. 产出或更新 DESIGN.md

用户给了现成 DESIGN.md → 更新/规范化而非整体替换;从产物提取 → 产出新的;持久化当前设计 → 产出供 design-system-reference.md 复用的。简洁但足以指导未来生成,别搞庞大的 design bible。


DESIGN.md 结构

默认用下面 9 段结构。每段写实用规则 + 为什么(不只是值),有精确值就保留、推断的标注清楚。

1. Visual Theme & Atmosphere — 整体气质:情绪、精致度、密度、视觉温度、个性、受众、头 2 秒的感受。用一个具体参照物锚定主题,而非一串形容词——"现代/干净/高级/可信"什么都没指定,模型只会做出落在这些词中心的平庸结果;形容词描述一个「区域」,一个具体参照(某类实物/场景/年代,如"1970 年代某老牌大学的研究生讲义")描述一个「点」,一句话带出配色/字体/留白/有无装饰,还自带「它不是什么」。若一定要用形容词,定义它在本系统里的具体含义。

2. Color Palette & Roles — 按角色而非清单记录颜色,说明每个用在哪、哪些不该滥用,强调克制 accent,没可见值不臆造、推断的标注:

### Core Palette
- Background `#F7F3EA` — 暖调编辑感底色,页面背景。
- Text Primary `#171717` — 高对比正文与标题。
- Text Muted `#73706A` — 元数据、说明、次要细节。
- Accent `#D94F30` — 仅用于主 CTA、激活态、每区块一处高亮。
- Border `rgba(23,23,23,0.14)` — 不靠重盒子的细微结构。

3. Typography Rules — 字族 + 语义层级体系(多数系统 9–15 级,用 headline/display/body/label/caption 等语义命名,每类可再分 small/medium/large),各级字号/字重/行高、层级跨度(克制:标题约 1.9× 正文而非 5×)、中-拉-数字混排。

4. Layout & Elevation(布局与层级) — 网格/版心、间距节奏、留白策略、内容区结构、对齐逻辑(结构而非装饰)。并说清"层级/深度怎么表达":用阴影就定义阴影规则;扁平设计要说清替代方案(边框 / 色彩对比 / 色调分层,如背景用浅色、主内容用纯白卡)——层级如何传达是核心决策,不能漏。

5. Component & Shape(组件与形状) — 形状语言:整体的形状性格(锐利 / 柔和)与统一的圆角策略(如所有交互元素统一 4px,"克制的现代感")。组件形态:关键组件(卡片/按钮/标签/输入框等)的圆角、边框、阴影、内距规则,尤其覆盖状态变体(primary/secondary、hover/pressed/active、空/错误/禁用)——状态覆盖是设计系统的关键,不只画默认态。

6. Interaction & Motion — 动效性格、入场/hover/过渡惯例、始终带 reduced-motion,区分核心交互与一次性效果。

7. Responsive Behavior — 断点、移动端如何重排、触控友好、各视口可读性。

8. Do's and Don'ts — 写具体规则。注意:又长又啰嗦的 Don'ts 往往说明主题描述太模糊(足够具体的参照会自带大部分负向约束);一个具体参照 + 一份刻意的 Do/Don't 才是最佳组合。

Do:作品为主要佐证;保持强层级;元数据标签克制一致;限制 accent 数量;用一个难忘的结构/交互主意;有精确值就复用。
Don't:假评价/假指标/假 logo;通用区块填空;照抄品牌素材/专有 UI;无目的的装饰渐变/emoji;每个区块一样响;可发布产物里有死链/失效点击;把一次性 hero 效果当通用规则。

9. Agent Prompt Guide — 写给未来 agent 的、直接可操作的生成指令:

在本系统里生成新页面时:从作品优先结构开始;角色/年份/类别用紧凑元数据标签;accent 保留给主操作与激活态;尽早展示真实作品、别先放长 bio;用一个大胆结构动作、其余区块安静;除非用户要简单版避免通用卡片网格;保留响应式与触控友好。

Lightweight Tokens

If useful, include a compact token section.

Use only when values are available or can be responsibly inferred.

Example:

{
  "color": {
    "background": "#F7F3EA",
    "surface": "#FFFFFF",
    "textPrimary": "#171717",
    "textMuted": "#73706A",
    "accent": "#D94F30",
    "border": "rgba(23, 23, 23, 0.14)"
  },
  "radius": {
    "sm": "6px",
    "md": "12px",
    "lg": "24px"
  },
  "spacing": {
    "base": "8px",
    "section": "96px"
  },
  "typography": {
    "bodySize": "16px",
    "bodyLineHeight": "1.5",
    "labelSize": "11px"
  }
}

Do not include fake precision. If values are inferred, state that they are inferred.


各模式补充(避免项)

三模式的核心行为已在前面「三种模式」给出。各自要避免:

  • Extraction:别把原始 CSS 倒进 DESIGN.md、别臆造没有的值、别把一次性细节当系统规则、别漏掉响应式/交互。
  • Persistence:别过拟合当前页、别把占位内容当设计规则、别把临时实验固化成永久系统、别忽略用户已认可的风格决定。
  • Import:输出可以是更新版/规范化版/缺口分析+建议/兼容性说明;不删用户规则除非冲突或重复。

Quality Rules

一份好的 DESIGN.md:可复用、具体、扎根源材料、简洁够用、分清核心vs可选、IP安全、对未来生成有用。避免:通用设计套话、空泛的 premium/modern/clean 措辞、有理论无可操作规则、照抄专有品牌系统、把单个产物细节当通用规则、臆造源材料不支持的 token。

IP and Brand Safety

源是公开品牌灵感时:不把输出当官方系统、不照抄 logo/素材/精确页面结构/专有 UI、只描述高层视觉特质、产出导向原创的可复用规则。源是用户自有时:明确提供则视为权威、保留精确值、不完整处标注假设。

Chinese Typography Reference

产物含大量中文/CJK、中文编辑排版、公众号、小红书、中文 deck、中文 UI 标签或印刷风 HTML 时,用 horizontal-craft/chinese-typography.md;把印刷方法转为 HTML 结构:版心、网格、留白、标题组、图版、边注、章节节奏与标点。

Quality Gate

交付前应用 quality-gate.md;本场景可加更严的检查,但不得削弱共享门禁。

Handoff

生成/导入/规范化/更新后的 DESIGN.md 经 skills/design/design-system-reference.md 供未来设计复用,应是可复用参考而非一次性总结。有用时记下:源产物/模板/截图、所选 style skill/品牌灵感、日期版本、假设、缺失信息。