design-exploration
新功能设计探索流程。当用户有模糊想法要做新功能/新模块时使用。通过"需求收敛 → 技术调研 → ASCII 批量探索 → HTML 设计稿 → 全状态覆盖 → 需求总结"的结构化流程,从模糊想法产出可交付的设计参考文档,作为 PRD 阶段的输入。
Best use case
design-exploration is best used when you need a repeatable AI agent workflow instead of a one-off prompt. It is especially useful for teams working in multi. 新功能设计探索流程。当用户有模糊想法要做新功能/新模块时使用。通过"需求收敛 → 技术调研 → ASCII 批量探索 → HTML 设计稿 → 全状态覆盖 → 需求总结"的结构化流程,从模糊想法产出可交付的设计参考文档,作为 PRD 阶段的输入。
新功能设计探索流程。当用户有模糊想法要做新功能/新模块时使用。通过"需求收敛 → 技术调研 → ASCII 批量探索 → HTML 设计稿 → 全状态覆盖 → 需求总结"的结构化流程,从模糊想法产出可交付的设计参考文档,作为 PRD 阶段的输入。
Users should expect a more consistent workflow output, faster repeated execution, and less time spent rewriting prompts from scratch.
Practical example
Example input
Use the "design-exploration" skill to help with this workflow task. Context: 新功能设计探索流程。当用户有模糊想法要做新功能/新模块时使用。通过"需求收敛 → 技术调研 → ASCII 批量探索 → HTML 设计稿 → 全状态覆盖 → 需求总结"的结构化流程,从模糊想法产出可交付的设计参考文档,作为 PRD 阶段的输入。
Example output
A structured workflow result with clearer steps, more consistent formatting, and an output that is easier to reuse in the next run.
When to use this skill
- Use this skill when you want a reusable workflow rather than writing the same prompt again and again.
When not to use this skill
- Do not use this when you only need a one-off answer and do not need a reusable workflow.
- Do not use it if you cannot install or maintain the related files, repository context, or supporting tools.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/design-exploration/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How design-exploration Compares
| Feature / Agent | design-exploration | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
新功能设计探索流程。当用户有模糊想法要做新功能/新模块时使用。通过"需求收敛 → 技术调研 → ASCII 批量探索 → HTML 设计稿 → 全状态覆盖 → 需求总结"的结构化流程,从模糊想法产出可交付的设计参考文档,作为 PRD 阶段的输入。
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
用户有一个模糊的想法,想做一个新功能或新模块,但还没想清楚具体要什么。通过结构化的探索流程,帮助用户从模糊想法收敛到明确的设计方案,并产出完整的设计参考文档。
## 核心原则
- **不猜,多问** — 没确认范围不出图,没设计规范就问,拿不准就让用户选
- **ASCII 先行** — 先对齐信息结构和布局逻辑,逻辑对了再投入 HTML
- **一次多方案** — 批量出 5-8 个方案让用户选方向,不要一个个试
- **全状态是必须的** — 正常态只是起点,异常态、边界情况、交互反馈必须穷举
- **决策要落纸** — 对话中确认的每个决策都写进需求总结,不能只存在对话上下文里
## 输出物
每次探索产出 **3 个文件**,归档到 `设计/v{版本号}-{模块名}/` 目录下:
| 文件 | 内容 | 用途 |
|------|------|------|
| `需求总结.md` | 背景、目标、功能范围、关键决策、技术约束 | PRD 阶段的输入,讲清楚"为什么做、做什么" |
| `{模块名}-设计稿.html` | 主界面 HTML mockup | PRD + 前端开发的视觉参考 |
| `{模块名}-全状态设计参考.html` | 所有页面状态、Toast、边界情况、交互规则表 | 前端开发直接对照实现 |
版本号和模块名由用户决定,必须问用户确认。
## 工作流程
### 第 1 步:需求发散与收敛
用户说了模糊想法后,主动追问:
- **痛点是什么** — 现在遇到了什么问题?为什么想做这个?
- **核心场景** — 最典型的使用场景是什么?
- **边界在哪** — 这个版本要做什么?不做什么?
整理成结构化的需求共识:
```
做什么:
- xxx
- xxx
不做什么:
- xxx
载体:独立应用 / 已有应用的新 Tab / 插件 / ...
```
**禁止**:用户说了一句话就开始出图。必须先对齐需求边界。
### 第 2 步:技术调研(按需)
**判断是否需要调研**:如果功能涉及外部数据(配置文件、API、第三方系统、文件格式),必须先调研技术约束。如果是纯 UI 功能不涉及外部依赖,跳过。
调研内容:
- 数据存储位置和格式
- 现有系统的接口和限制
- 技术可行性验证
调研结果会直接影响设计方案(比如发现两个工具配置格式不同,决定了界面需要展示"类型"列)。
**禁止**:跳过调研直接画图,画出来发现技术上实现不了。
### 第 3 步:ASCII 批量探索
一次出 **5-8 个**不同思路的 ASCII 布局方案,每个方案包含:
- ASCII 布局图
- 一句话说明核心思路
```
方案 A:卡片列表 + 工具勾选
┌──────────────────────────────────┐
│ ┌────────────────────────────┐ │
│ │ pencil [✓] CC [✓] CX│ │
│ └────────────────────────────┘ │
└──────────────────────────────────┘
方案 B:表格视图,一行一个
┌──────────────────────────────────┐
│ 名称 类型 CC CX │
│ pencil stdio [✓] [✓] │
│ github http [✓] [✓] │
└──────────────────────────────────┘
```
用户可以:
- 直接选一个方案
- 组合多个方案的元素("B 的结构 + E 的开关风格")
- 全部否掉,补充新的方向
**禁止**:
- 只出 1-2 个方案(用户没有选择空间)
- 超过 10 个方案(选择困难)
- 方案之间差异太小(换汤不换药)
### 第 4 步:确认设计风格
问用户以下问题:
1. **有没有已有的设计规范?**(如 design-system.html)
- 有 → 读取并严格遵循 design tokens(颜色、字号、圆角、间距)
- 没有 → 问风格偏好,或直接出图让用户挑感觉
2. **有没有要参考的已有页面?**(外框、导航结构)
- 有 → 读取参考页面,对齐外框样式(如 mac-window、sidebar 布局)
- 没有 → 按独立页面处理
3. **载体形式?**
- 已有应用的新页面/Tab → 必须对齐已有页面的外框和导航
- 独立应用 → 自定义外框
- 其他 → 问清楚
**禁止**:没问就默认使用某个设计规范。
### 第 5 步:HTML 设计稿
基于选定方案 + 确认的设计风格,输出 HTML mockup:
- 使用真实数据填充(不用 lorem ipsum)
- 如有设计规范,严格使用 CSS 变量 / design tokens
- 如有参考页面,外框结构保持一致
输出后让用户浏览器打开查看,根据反馈微调。微调是具体的小修改(间距、配色、文案),直接执行,不需要重新走方案选择。
### 第 6 步:全状态覆盖
产出一个完整的全状态设计参考 HTML,固定包含以下内容:
#### 必须覆盖的页面状态
| 状态 | 说明 |
|------|------|
| 正常态 | 有数据的标准展示 |
| 加载态 | 数据加载中(spinner + 禁用交互) |
| 空态 | 没有数据,引导文案 |
| 搜索/筛选无结果 | 有数据但当前条件无匹配 |
| 错误态 | 数据加载失败、文件不存在、格式错误等(按场景拆多个) |
| 部分可用 | 部分数据源可用、部分失败 |
#### 必须覆盖的交互反馈
- **Toast 汇总**:所有操作的成功/失败/警告 Toast,包含具体文案
- Toast 规则:位置、时长(成功短、错误长)、同时最多显示几条
#### 必须覆盖的边界情况
- 长文本截断(名称、路径、URL)
- 大量数据滚动
- 其他根据具体场景补充
#### 必须包含的交互行为规则表
表格格式,列定义:
| 触发 | 用户操作 | 系统行为 | 反馈 |
|------|---------|---------|------|
| 用户/系统/异常 | 具体操作 | 详细的系统处理步骤 | Toast/状态变化/界面更新 |
覆盖所有用户操作和系统行为的完整映射,前端开发直接对照实现。
#### 文档结构
- 顶部:标题、版本、日期
- 目录:锚点跳转
- 每个状态一个 section:标签 + 标题 + 说明 + 预览截面 + 标注
- 底部:交互行为规则表
**禁止**:只做正常态就结束。全状态覆盖是本流程的核心交付物。
### 第 7 步:需求总结 + 归档
按模板(`templates/需求总结-模板.md`)生成需求总结文档。
将对话中确认的所有决策提取出来,写入"关键决策"部分。这些决策往往散落在对话各处,必须主动收集整理,不能遗漏。
三个文件归档到 `设计/v{版本号}-{模块名}/` 目录下。版本号和模块名问用户确认。
```
设计/v0.11-MCP管理/
├── 需求总结.md
├── mcp-manager-设计稿.html
└── mcp-manager-全状态设计参考.html
```
## 过程中的沟通规范
### 必须问用户的
| 时机 | 问什么 |
|------|--------|
| 第 1 步 | 痛点、场景、边界(做什么/不做什么) |
| 第 3 步 | 选哪个方案 |
| 第 4 步 | 有无设计规范、参考页面、载体形式 |
| 第 5 步 | mockup 效果是否满意,有无微调 |
| 第 6 步 | 全状态覆盖有无遗漏的场景 |
| 第 7 步 | 版本号和模块名 |
### 不需要问用户的
| 事项 | 直接做 |
|------|--------|
| 全状态要不要覆盖 | 必须覆盖,不用问 |
| 交互规则表要不要写 | 必须写,不用问 |
| 需求总结要不要输出 | 必须输出,不用问 |
| Toast 文案 | 先给出建议,用户不满意再调 |
### AI 绝不应该做的
- 用户说了一句模糊想法就开始出 HTML
- 只出一个 ASCII 方案
- 只做正常态不管异常态
- 跳过技术调研直接画图(如果涉及外部数据)
- 把决策留在对话里不写进需求总结
- 自己编版本号和模块名
- 没问就默认使用某个设计规范Related Skills
vision-exploration
终局愿景探索。用户抛出一个模糊 idea,AI 主导引导,通过"追问价值 → 挖掘动机 → 推导演化 → 画终局"的链路,帮用户看到未来最远的可能性。不设限,不收敛,纯发散。
ui-design
UI 样式修改协作流程。当用户要求修改页面样式、调整布局、改 UI 细节时使用。通过"截图定位 → 现状描述 → 方案选择 → 改代码 → 微调"的结构化流程,减少沟通偏差,避免浪费 token。
web-component-design
Master React, Vue, and Svelte component patterns including CSS-in-JS, composition strategies, and reusable component architecture. Use when building UI component libraries, designing component APIs, or implementing frontend design systems.
visual-design-foundations
Apply typography, color theory, spacing systems, and iconography principles to create cohesive visual designs. Use when establishing design tokens, building style guides, or improving visual hierarchy and consistency.
react-native-design
Master React Native styling, navigation, and Reanimated animations for cross-platform mobile development. Use when building React Native apps, implementing navigation patterns, or creating performant animations.
python-design-patterns
Python design patterns including KISS, Separation of Concerns, Single Responsibility, and composition over inheritance. Use when making architecture decisions, refactoring code structure, or evaluating when abstractions are appropriate.
postgresql-table-design
Design a PostgreSQL-specific schema. Covers best-practices, data types, indexing, constraints, performance patterns, and advanced features
mobile-ios-design
Master iOS Human Interface Guidelines and SwiftUI patterns for building native iOS apps. Use when designing iOS interfaces, implementing SwiftUI views, or ensuring apps follow Apple's design principles.
mobile-android-design
Master Material Design 3 and Jetpack Compose patterns for building native Android apps. Use when designing Android interfaces, implementing Compose UI, or following Google's Material Design guidelines.
interaction-design
Design and implement microinteractions, motion design, transitions, and user feedback patterns. Use when adding polish to UI interactions, implementing loading states, or creating delightful user experiences.
design-system-patterns
Build scalable design systems with design tokens, theming infrastructure, and component architecture patterns. Use when creating design tokens, implementing theme switching, building component libraries, or establishing design system foundations.
responsive-design
Create responsive web designs that work across all devices and screen sizes. Use when building mobile-first layouts, implementing breakpoints, or optimizing for different viewports. Handles CSS Grid, Flexbox, media queries, viewport units, and responsive images.