devbooks-design-doc:产出变更包的设计文档(design.md),只写 What/Constraints 与 AC-xxx,不写实现步骤。用户说"写设计文档/Design Doc/架构设计/约束/验收标准/AC/C4 Delta"等时使用。
Install with Tessl CLI
npx tessl i github:Darkbluelr/dev-playbooks-cn --skill devbooks-design-docOverall
score
17%
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillValidation for skill structure
目标:明确本 Skill 的核心产出与使用范围。 输入:用户目标、现有文档、变更包上下文或项目路径。 输出:可执行产物、下一步指引或记录路径。 边界:不替代其他角色职责,不触碰 tests/。 证据:引用产出物路径或执行记录。
适用:需要细化策略、边界或风险提示时补充。
适用:需要与外部系统或可选工具协同时补充。
核心原则:Design Doc 在 Proposal 批准后执行,是实现阶段的起点。
proposal → [Design Doc] → spec-contract → implementation-plan → test-owner → coder → ...
↓
定义 What/Constraints/AC关键:Design Doc 不写实现步骤,那是 implementation-plan 的职责。
<truth-root>:当前真理目录根<change-root>:变更包目录根执行前必须按以下顺序查找配置(找到后停止):
.devbooks/config.yaml(如存在)→ 解析并使用其中的映射dev-playbooks/project.md(如存在)→ Dev-Playbooks 协议,使用默认映射project.md(如存在)→ template 协议,使用默认映射关键约束:
agents_doc(规则文档),必须先阅读该文档再执行任何操作<change-root>/<change-id>/design.md设计文档中必须包含「文档影响」章节,声明本次变更对用户文档的影响。这是确保文档与代码同步的关键机制。
## Documentation Impact(文档影响)
### 需要更新的文档
| 文档 | 更新原因 | 优先级 |
|------|----------|--------|
| README.md | 新增功能 X 需要说明使用方法 | P0 |
| docs/使用说明书.md | 新增脚本 Y 需要补充用法 | P0 |
| CHANGELOG.md | 记录本次变更 | P1 |
### 无需更新的文档
- [ ] 本次变更为内部重构,不影响用户可见功能
- [ ] 本次变更仅修复 bug,不引入新功能或改变使用方式
### 文档更新检查清单
- [ ] 新增脚本/命令已在使用文档中说明
- [ ] 新增配置项已在配置文档中说明
- [ ] 新增工作流/流程已在指南中说明
- [ ] API/接口变更已在相关文档中更新以下变更类型强制要求更新对应文档:
| 变更类型 | 需更新文档 |
|---|---|
| 新增脚本(*.sh) | 使用说明、README |
| 新增 Skill | README、Skills 列表 |
| 修改工作流程 | 相关指南文档 |
| 新增配置项 | 配置文档 |
| 新增命令/CLI 参数 | 使用说明 |
| 对外 API 变更 | API 文档 |
设计文档中必须包含「架构影响」章节,声明本次变更对系统架构的影响。这是确保架构变更走验证闭环的关键机制。
设计决策:C4 架构变更不再由独立的
devbooks-c4-mapskill 直接写入真理目录,而是作为 design.md 的一部分,在变更验收通过后由devbooks-archiver合并到真理。
## Architecture Impact(架构影响)
<!-- 必填:选择以下之一 -->
### 无架构变更
- [x] 本次变更不影响模块边界、依赖方向或组件结构
- 原因说明:<简要说明为什么无架构影响>
### 有架构变更
#### C4 层级影响
| 层级 | 变更类型 | 影响描述 |
|------|----------|----------|
| Context | 无变更 / 新增 / 修改 / 删除 | <描述> |
| Container | 无变更 / 新增 / 修改 / 删除 | <描述> |
| Component | 无变更 / 新增 / 修改 / 删除 | <描述> |
#### Container 变更详情
- [新增/修改/删除] `<container-name>`: <变更描述>
#### Component 变更详情
- [新增/修改/删除] `<component-name>` in `<container>`: <变更描述>
#### 依赖变更
| 源 | 目标 | 变更类型 | 说明 |
|----|------|----------|------|
| `<source>` | `<target>` | 新增/删除/方向改变 | <说明> |
#### 分层约束影响
- [ ] 本次变更遵守现有分层约束
- [ ] 本次变更需要修改分层约束(需在下方说明)
分层约束修改说明:<如有>执行 design-doc skill 时,必须检测以下条件判断是否有架构变更:
| 检测项 | 检测方法 | 有架构变更 |
|---|---|---|
| 新增/删除目录 | 检查变更文件路径 | 可能影响模块边界 |
| 跨模块 import | 检查 import 语句变化 | 可能影响依赖方向 |
| 新外部依赖 | 检查 package.json/go.mod 等 | 影响 Container 层 |
| 新服务/进程 | 检查 Dockerfile/docker-compose | 影响 Container 层 |
| 新 API 端点组 | 检查路由定义 | 可能影响 Component 层 |
以下变更类型强制要求填写架构变更详情:
| 变更类型 | 要求 |
|---|---|
| 新增模块/目录 | 必须描述 Component 变更 |
| 新增服务/容器 | 必须描述 Container 变更 |
| 修改模块间依赖 | 必须描述依赖变更 |
| 引入新外部系统 | 必须描述 Context 变更 |
~/.claude/skills/_shared/references/AI行为规范.md(可验证性 + 结构质量守门)。references/设计文档提示词.md。本 Skill 在执行前自动检测上下文,选择合适的运行模式。
检测规则参考:skills/_shared/上下文检测模板.md
proposal.md 是否存在(设计文档的输入)design.md 是否已存在[TODO])| 模式 | 触发条件 | 行为 |
|---|---|---|
| 新建设计 | design.md 不存在 | 创建完整设计文档 |
| 补充设计 | design.md 存在但有 [TODO] | 补充缺失章节 |
| 添加 AC | 设计存在但 AC 不完整 | 补充验收标准 |
检测结果:
- proposal.md:存在
- design.md:存在,有 5 个 [TODO]
- AC 数量:8 个
- 运行模式:补充设计参考:skills/_shared/工作流下一步.md
完成 design-doc 后,下一步取决于变更范围:
| 条件 | 下一个 Skill | 原因 |
|---|---|---|
| 有外部行为/契约变更 | devbooks-spec-contract | 必须先定义契约再做计划 |
| 无外部契约变更 | devbooks-implementation-plan | 直接进入任务计划 |
关键:绝不在 design-doc 后直接推荐 devbooks-test-owner 或 devbooks-coder。工作流顺序是:
design-doc → [spec-contract] → implementation-plan → test-owner → coder完成 design-doc 后,输出:
## 推荐的下一步
**下一步:`devbooks-spec-contract`**(如果有外部行为/契约变更)
或
**下一步:`devbooks-implementation-plan`**(如果无外部契约变更)
原因:设计已完成。下一步是[定义外部契约 / 创建实现计划]。
### 如何调用运行 devbooks-<skill-name> skill 处理变更 <change-id>
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.