From auriga-workflow
澄清并记录领域模型、模块边界、职责分配、依赖方向、关键接口、数据流和迁移方案。当新功能的技术方案不显然,或用户要求架构优化、领域建模、改善领域模型、重新划分职责或边界、调整分层与依赖、规划架构演进时使用。
How this skill is triggered — by the user, by Claude, or both
Slash command
/auriga-workflow:arch-designThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
`arch-design` 是技术方案澄清技能。它既服务新功能,也服务现有架构和领域模型的主动优化。目标是在实现前把“系统如何表达需求”说清楚,形成便于人评审的设计依据,而不是替模型补一套架构教材。
arch-design 是技术方案澄清技能。它既服务新功能,也服务现有架构和领域模型的主动优化。目标是在实现前把“系统如何表达需求”说清楚,形成便于人评审的设计依据,而不是替模型补一套架构教材。
三类产物各有边界:
| 阶段 | 澄清内容 |
|---|---|
spec-design | 为什么做、用户可观察的行为和验收契约 |
arch-design | 领域概念、职责、模块边界、依赖方向、关键接口、数据流和技术质量目标 |
计划与 incremental-impl | 实施步骤、切片、顺序、分发和提交 |
以下情况退出:
spec-design。systematic-debugging。code-simplify 做代码简化。spec.md 与 validation-contract.md;现有系统直接读目标代码和相关测试。若用户没有说清目标范围,先确认要处理的模块、边界或具体结构问题,不猜测扫描区域。git rev-parse --show-toplevel 确认仓库根,读取 <仓库根>/docs/rules/arch/ 下与本次设计相关的规则;再从每个受影响代码或规范路径向仓库根查找更近的 docs/rules/arch/。两层都读取,冲突时子包级规则优先,以离目标代码最近者为准;非 git 仓库时从目标路径向当前目录回退查找。没有相关规则时记录“无项目专属架构规则”。只读取本次问题需要的参考资料:
| 设计条件 | 参考资料 | 它提醒模型考虑什么 |
|---|---|---|
| 划分组件、包或功能模块 | references/component-design.md | 内聚、耦合、依赖方向和物理模块边界 |
| 设计公共接口、模块接缝或接口演进 | references/interface-design.md | 信息隐藏、契约形状、兼容性和错误语义 |
| 优化领域概念、职责、不变量或生命周期 | references/domain-modeling.md | 实体、值对象、聚合、领域服务、事件和状态模型 |
| 替换接口、实现、模块或遗留子系统 | references/migration-strategies.md | 显式切换、并行变更、抽象分支、绞杀榕和保护网 |
参考资料是工具箱,不是必做清单。读完只选能解决当前问题的兵器;不要为了展示知识把每种模式都塞进设计。
至少明确:
如果存在真实取舍,给出能成立的候选和具体后果,请用户决定会显著改变成本或风险的方向。若不存在真实取舍,直接推荐最简设计,不制造候选和选择步骤。
只要存在实质性的架构、领域模型或跨边界决策,默认按照 references/arch-design-template.md 写入 docs/specs/<topic>/arch_design.md。文档不仅保存设计,也让澄清结果在实现前经过人评审。
仅在以下情况跳过文档:
如果环境没有可写项目根或无法写入目标路径,报告阻塞并在对话中给出设计草稿,不把草稿当作已经确认的实施输入。
写作时以评审效率为准:先展示需要人确认的决定和主要影响,再给支撑细节;只保留与本次设计有关的章节和图。技术质量目标及其设计响应属于人工重点评审内容,不能只藏在约束、风险或实现说明中。
写完后返回文件路径,概括需要关注的决定和风险,等待用户明确评审确认。用户明确选择不落盘时,改为在对话中完整呈现同样的评审重点并记录确认结果。收到修改意见就更新设计;实现前必须取得用户确认,不能把沉默当作批准。
incremental-impl。test-driven-development 补足。arch_design.md 继续遵循仓库的临时规范生命周期:拉取请求就绪前晋升为稳定架构文档、归档到工作记录或删除。昂贵且长期有效的决策可另交 documentation-management 固化为架构决策记录。npx claudepluginhub ben2pc/auriga-cli --plugin auriga-workflowCreates, edits, and verifies skills using a test-driven development approach with pressure scenarios and subagents.