Token导航 LogoToken导航TokenDH.com
前端设计external-servicegithub未标认证来源可访问clear审计提醒

devdocs-system-design开发文档系统设计

Agent Skill

用于辅助界面设计、视觉规范、排版、配色、布局和交互体验优化。它适合让 Agent 根据产品场景整理页面结构、生成 UI 方案、检查视觉一致性或改进组件层级。使用时需要结合现有品牌、设计系统和用户任务,不应只堆装饰元素;涉及真实页面改动时,应通过截图或浏览器预览检查文本溢出、对齐和响应式表现。

总安装

824

周安装

34

GitHub Stars

公开资料未说明

下载量

269
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:devdocs-system-design(开发文档系统设计)
来源仓库:https://github.com/ab300819/skills
仓库路径:skills/devdocs-system-design
安装命令:
npx skills add https://github.com/ab300819/skills --skill devdocs-system-design
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/ab300819/skills --skill devdocs-system-design

简介

devdocs-system-design 基于需求创建或更新系统设计文档,支持初始与增量两种模式。

  • 自动判断是否为新架构或局部调整,输出 API、数据流与技术选型说明。
  • 结合现有代码库结构使用合理默认值,减少重复询问提升效率。
  • 需先存在需求文档,否则建议先运行 /devdocs-requirements。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

系统设计

基于需求文档创建或更新系统设计文档,支持初始设计和增量设计两种模式。

语言规则

  • 支持中英文提问
  • 统一中文回复
  • 使用中文生成文档

触发条件

初始设计模式

  • 用户已完成需求文档,项目无系统设计
  • 用户要求系统/技术设计
  • 用户需要架构或 API 设计

增量设计模式

  • 新功能加入后需要设计变更(来自 /devdocs-feature
  • 优化建议确认后需要设计调整(来自 /devdocs-insights
  • 技术改进需要架构调整
  • 用户要求更新/修改现有设计

前置条件

  • 需求文档:docs/devdocs/01-requirements.md
  • 如不存在,建议先运行 /devdocs-requirements

设计模式检测

启动时自动检测
      │
      ▼
检查 02-system-design.md 是否存在
      │
      ├── 不存在 → 初始设计模式
      │
      └── 存在 → 增量设计模式
            │
            ▼
      检查是否有新增需求(F-XXX)未覆盖
            │
            ├── 有 → 提示增量设计
            │
            └── 无 → 询问用户意图

运行模式

/devdocs-system-design              → 自动检测模式(初始/增量)
/devdocs-system-design --fast       → 跳过 Plan 模式,使用合理默认值,仅最终确认

--fast 模式

  • 跳过 EnterPlanMode 步骤和技术栈偏好询问
  • 使用合理默认值(根据代码库推断技术栈)
  • 仅保留最终写入前的 1 次确认
  • 默认行为不变,--fast 是 opt-in

工作流程

初始设计流程

1. 读取需求 → 加载 01-requirements.md
      │
      ▼
2. 询问偏好 → 技术栈、平台、集成需求
      │
      ▼
3. 探索代码 → 了解现有架构
      │
      ▼
3.5 外部研究(按需)→ 详见"设计前外部研究"章节
      │
      ▼
4. 进入 Plan 模式 → 呈现设计方案草案
      │              (技术选型、架构方向、模块划分)
      ▼
5. 用户审批 Plan → 确认方向或调整
      │
      ▼
6. 退出 Plan 模式 → 生成 docs/devdocs/02-system-design.md 文档
      │
      ▼
7. 验证覆盖 → 检查所有 F-XXX 都有对应模块/接口
      │
      ▼
8. 用户确认 → 获得批准后定稿

增量设计流程

1. 读取现有设计 → 加载 02-system-design*.md
      │
      ▼
2. 识别变更来源
      ├── 新功能需求(F-XXX)
      ├── 优化建议(INS-XXX)
      └── 技术改进
      │
      ▼
3. 影响分析
      ├── 识别受影响的模块
      ├── 识别受影响的接口
      └── 识别受影响的数据模型
      │
      ▼
4. 兼容性评估
      ├── 接口变更是否向后兼容?
      ├── 数据模型变更是否需要迁移?
      └── 是否有破坏性变更?
      │
      ▼
5. 进入 Plan 模式 → 呈现变更方案
      │              (影响范围、兼容性结论、变更策略)
      ▼
6. 用户审批 Plan → 确认方案或调整
      │
      ▼
7. 退出 Plan 模式 → 更新 docs/devdocs/02-system-design*.md 文档
      ├── 文档中新增模块/接口/数据模型章节
      ├── 更新现有设计文档内容
      └── 在文档中标注变更版本
      │
      ▼
8. 生成变更记录 → 追加到设计文档
      │
      ▼
9. 用户确认 → 获得批准后更新文档

Plan 模式规范

在分析完成、写入文档前,必须使用 EnterPlanMode 呈现设计方案草案,等用户审批后再执行。

初始设计 Plan 内容

## 设计方案草案

### 技术选型
- 语言/框架:<选择> — <理由>
- 数据库:<选择> — <理由>
- 其他关键依赖:<列表>

### 架构方向
- 架构风格:<分层/微服务/Serverless/...>
- 核心设计决策:<列表>

### 模块划分
| 模块 | 职责 | 关联功能点 |
|------|------|-----------|
| ... | ... | F-XXX |

### 关键接口概要
- <接口名>: <职责摘要>

### 风险与权衡
- <取舍点1>: 选择 A 而非 B,因为 ...

增量设计 Plan 内容

## 变更方案草案

### 变更来源
- F-XXX / INS-XXX: <描述>

### 影响范围
| 影响对象 | 影响类型 | 向后兼容 |
|----------|----------|----------|
| ... | 新增/修改/删除 | ✅/❌ |

### 变更策略
- <具体变更动作列表>

### 破坏性变更处理
- <如有,列出迁移方案>

Plan 模式时机

模式进入时机Plan 内容
初始设计读取需求 + 询问偏好 + 探索代码后技术选型、架构方向、模块划分
增量设计影响分析 + 兼容性评估后影响范围、变更策略、迁移方案

设计前外部研究

当需求涉及不熟悉的技术/框架或复杂集成时,应在 Plan 模式之前进行外部研究(依赖可用的外部检索工具)。

触发条件:项目未使用过的技术、复杂第三方集成、存在多种可行方案需对比。

研究三步骤

  1. 现有代码模式扫描 — 扫描项目架构和 docs/devdocs/patterns/ 已有经验,确认兼容性。必须检索 patterns/ 目录:扫描标题列表,匹配当前设计需求的关键词,如命中则读取详情作为设计参考(避免重复踩坑、复用已验证方案)
  2. 官方文档确认(若有外部检索工具可用)— 查阅官方文档确认 API 可用性、版本兼容性、已知限制(可用 context7 MCP)
  3. 最佳实践摘要(若有外部检索工具可用)— 搜索社区最佳实践和常见陷阱,对比方案优劣

研究结论必须写入设计文档("技术选型"章节),格式:

#### <技术名称>
**研究结论**:
- 官方文档确认:<版本、兼容性、限制>
- 最佳实践:<关键发现>
- 选择理由:<为什么选这个方案>
- 已知风险:<潜在问题和缓解措施>

跳过条件:使用项目已有技术栈、需求简单方案明确、--fast 模式。

设计前必问

必须使用 AskUserQuestion 询问用户

  1. 技术栈偏好

- 是否有偏好的技术栈? - 选项:指定技术栈 / 无偏好(将根据需求推荐)

  1. 目标平台

- 目标平台是什么? - 选项:Web / Mobile (iOS/Android) / Desktop / Server / 跨平台

  1. 部署环境

- 部署在哪里? - 选项:云服务 (AWS/GCP/Azure) / 私有化 / 混合

  1. 现有系统集成

- 是否需要与现有系统集成? - 选项:否 / 是(指定系统、API、数据库)

如用户无偏好,则根据需求设计最优方案。

增量设计

增量设计遵循三步流程:变更范围分类 → 影响分析 → 兼容性评估,然后更新设计文档并生成 ADR 记录。

  • 变更范围分为三级:仅内部实现(轻量分析)、涉及模块接口(标准分析)、涉及架构(完整分析 + ADR)
  • 影响分析需覆盖受影响的模块、接口、数据模型,并自动扫描关联文档
  • 兼容性评估判断向后兼容性,破坏性变更须标注废弃周期和迁移方案
  • 每个变更项使用统一的变更对比格式(变更前/变更后/原因/影响范围)
进入增量设计模式时,必须读取 incremental-design.md 获取影响分析、兼容性评估、变更对比格式和检查清单。

输出文件

主文件docs/devdocs/02-system-design.md

文档拆分规则

当满足以下条件时,应拆分文档:

  • 文档超过 300 行
  • 模块数量超过 5 个
  • API 接口超过 10 个

拆分方式

docs/devdocs/
├── 02-system-design.md          # 主文档:架构概览、技术选型、模块划分
├── 02-system-design-api.md      # API 设计:接口定义、请求响应示例
└── 02-system-design-data.md     # 数据模型:实体定义、ER 图、索引策略

拆分内容分配

文件包含章节
02-system-design.md1-7: 平台、架构、技术选型、模块、接口签名、模式、代码结构
02-system-design-api.md9-10: 完整 API 设计、状态流转
02-system-design-data.md8, 11-13: 数据模型、异常处理、扩展性、需求追溯

详细模板参见 templates/design-template.md

设计原则

MTE 原则

系统设计必须遵循 MTE 原则

原则说明检查点
Maintainability可维护性模块职责单一、依赖清晰、易于理解和修改
Testability可测试性核心逻辑可单元测试、依赖可 Mock、边界清晰(参考 /testing-guide
Extensibility可扩展性预留扩展点、接口抽象、开闭原则

设计模式选择

根据场景选择合适的设计模式,只在必要时使用

场景推荐模式适用情况
对象创建Factory / Builder复杂对象构建、多种类型创建
行为扩展Strategy / Template算法可替换、流程固定步骤可变
结构组织Facade / Adapter简化复杂接口、适配第三方库
状态管理State / Observer状态驱动行为、事件通知
数据访问Repository / DAO数据层抽象、查询封装

设计层次

接口层(薄层)→ 服务层(核心业务逻辑)→ 领域层(实体/值对象)→ 基础设施层(数据访问/外部服务)

文档结构

  1. 目标平台 - 平台、版本要求、部署环境
  2. 架构概览 - 高层架构图(Mermaid
  3. 技术选型 - 技术选择及理由
  4. 模块设计 - 模块职责与依赖,标注关联功能点 (F-XXX)
  5. 核心接口 - 面向接口 (仅签名): 关键接口和方法签名(严禁包含具体实现逻辑),标注关联 F-XXX
  6. 设计模式 - 应用的模式及理由
  7. 代码结构 - 目录结构设计
  8. 数据模型 - 实体定义与关系
  9. API 设计 - 接口端点及请求/响应示例,标注关联 F-XXX, AC-XXX
  10. 状态流转 - 关键业务流程的状态机
  11. 异常处理 - 错误码与处理策略
  12. 日志设计 - 日志级别、关键日志点、追溯 ID
  13. 扩展性 - 扩展点与未来考量
  14. 需求追溯 - 功能点与模块/接口的映射关系,覆盖检查清单

详细参考

约束

阶段边界约束(最高优先级)

  • 本 Skill 仅产出文档,严禁编写或生成任何实现代码(源代码、脚本、配置变更)
  • Write 工具仅用于写入 docs/devdocs/ 下的 Markdown 文档
  • "核心接口"章节仅定义签名,严禁包含实现逻辑
  • 退出 Plan 模式后,更新设计文档(非代码实现)
  • 编码实现由 /devdocs-dev-workflow 负责,本 Skill 不涉及

基础约束

  • 必须先询问用户技术栈偏好和目标平台
  • 技术选型必须说明理由
  • 如用户无偏好,根据需求选择最优方案
  • 必须指定目标平台和最低版本要求
  • API 设计必须包含请求/响应示例
  • 数据模型必须考虑索引和查询模式
  • 必须识别与现有系统的集成点
  • 优先使用项目现有技术栈

MTE 原则约束

  • 每个模块职责单一,不超过一个变化原因
  • 核心业务逻辑必须可单元测试(无外部依赖或依赖可 Mock,详见 /testing-guide
  • 预留合理扩展点,但不为假设需求设计
  • 依赖方向:外层依赖内层,内层不依赖外层
  • 接口优于实现:依赖抽象,不依赖具体实现

设计模式约束

  • 只在解决实际问题时使用设计模式,不为使用而使用
  • 使用的设计模式必须说明解决什么问题
  • 优先选择简单方案,复杂方案需要说明理由
  • 相同问题在项目中使用一致的模式

避免过度设计

  • 不为"未来可能"的需求设计,只为当前需求设计
  • 不创建只有一个实现的接口(除非为了可测试性)
  • 不过早抽象,等到有 3 个以上相似场景再抽象
  • 配置优于硬编码,但不为所有内容添加配置

安全约束

  • 敏感数据(密码、Token)不明文存储
  • 需要认证的 API 已标注
  • 用户输入有验证(防注入)
  • 敏感操作有日志记录

外部研究约束

  • 涉及不熟悉技术且有外部检索工具时,应在 Plan 模式前完成外部研究;无外部工具时,基于现有代码模式扫描和用户输入进行研究
  • 研究结论必须写入设计文档,不仅存在于对话中
  • 已有技术栈或简单需求可跳过研究
  • --fast 模式跳过研究步骤

Plan 模式约束

  • 初始设计:读取需求 + 询问偏好 + 探索代码(+ 外部研究)后,必须进入 Plan 模式
  • 增量设计:影响分析 + 兼容性评估后,必须进入 Plan 模式
  • Plan 必须包含技术选型理由(初始)或影响范围(增量)
  • 用户审批 Plan 后才能写入文档
  • 用户要求调整时,更新 Plan 后重新审批

增量设计约束

  • 增量设计前必须进行影响分析
  • 必须评估向后兼容性
  • 破坏性变更必须标注处理方式
  • 必须生成设计变更记录
  • 新增内容必须标注关联需求(F-XXX / INS-XXX)
  • 修改现有接口必须说明兼容性
  • 数据模型变更必须说明迁移方案
  • 增量设计必须先进行变更范围分类
  • 涉及模块接口或架构的变更必须使用变更对比格式
  • 必须自动扫描受影响文档并列出更新清单

Skill 协作

场景协作 Skill说明
新功能设计变更/devdocs-feature新功能触发增量设计
优化建议设计变更/devdocs-insights洞察确认后触发增量设计
可测试性设计/testing-guide确保核心逻辑可单元测试
代码质量/code-qualityMTE 原则指导设计
UI 架构/ui-orchestrator路由到专业的外部 UI/UX Skill
接口自动提取/devdocs-retrofit从现有代码逆向提取接口定义并同步到设计文档

子 Agent 摘要格式

当本 Skill 作为子 Agent 运行时,返回以下结构化摘要:

skill: devdocs-system-design
mode: initial | incremental
modules_added: [AuthModule, UserModule]
interfaces_added: ["POST /api/register", "POST /api/login"]
data_models_added: [User, Session]
breaking_changes: false
patterns_referenced: []  # 从 docs/devdocs/patterns/ 匹配的模式
status: completed
output_files:
  - docs/devdocs/02-system-design.md

下一步

初始设计后

用户确认系统设计后,建议运行 /devdocs-test-cases 进入测试用例设计阶段。

增量设计后

  1. 如有新增功能点 → 运行 /devdocs-test-cases 补充测试用例
  2. 如有数据模型变更 → 准备数据库迁移脚本
  3. 如有破坏性变更 → 通知相关依赖方
提示:文档变更较大时,建议运行 /agent-memory 同步记忆文件。

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

29.79%
按下载量换算80

Antigravity

23.84%
按下载量换算64

OpenCode

17.55%
按下载量换算47

Gemini CLI

13.14%
按下载量换算35

windsurf

7.03%
按下载量换算19

Codex

3.72%
按下载量换算10

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

external-service

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。

来源信息

继续浏览同类 Skills