architecture-governance
架构治理
这个 skill-unit 处理的是“架构边界与演进质量”问题。它不替代具体职责拆分;当问题已经落到文件、类、函数职责边界时,应联动
single-responsibility。
核心原则
1. 分层与依赖方向 —— 单向流动
- 依赖方向必须单向流动:上层依赖下层,禁止反向依赖。
- 禁止跨层直连:上层通过明确的应用接口或服务访问下层能力。
- 基础设施实现不得承载业务决策。
- 每个模块都应能回答:自己属于哪一层、依赖谁、被谁依赖。
2. 架构变更影响面 —— 先看上下游
- 变更前先标注所在层级、主要职责、上游调用方、下游依赖与数据流。
- 任何接口变更都必须说明兼容策略:兼容、适配、版本化,至少占一种。
- 分层结构调整、依赖方向变化、数据流主路径重排,都属于高风险架构变更。
- 不能只看当前改动点本身,还要看它会把风险传播到哪里。
3. 接口契约与可替换性 —— 依赖抽象,不依赖实现
- 契约先于实现:优先定义稳定边界,再选择具体实现。
- 调用方默认依赖
Protocol/ABC等抽象边界,而不是直接依赖具体实现。 - 依赖应通过构造函数、工厂或注册表组装,不通过静态单例硬绑定。
- 可替换能力应做到:新增实现时,不需要改主流程代码。
AI Agent 行为要求
默认适用场景
| 场景 | 最低要求 | 不该做什么 |
|---|---|---|
| 架构评审 | 明确层级边界、依赖方向、风险点 | 只谈抽象理念,不落到具体模块 |
| 重构设计 | 先看影响面,再决定是否调整结构 | 不做影响分析就直接改接口或分层 |
| 新模块设计 | 先定契约与层级归属,再选实现 | 先写实现,后补边界 |
| 项目初始化分析 | 先扫结构、依赖、核心流程,再给建议 | 一上来就给大而全改造方案 |
默认执行方式
- 先判断当前问题是不是“架构边界与演进质量”问题。
- 若是,优先检查三件事:依赖方向、影响面、契约与可替换性。
- 若改动已落到职责拆分层面,联动
single-responsibility。 - 若判断依赖外部框架、文档或版本能力,再联动
source-quality-control。 - 若用户在问“这次架构调整值不值得做”,再联动
roi-value-density。
高风险变更要求
出现以下任一情况时,应主动升级给用户决策:
- 分层结构调整或依赖方向改变
- 核心接口破坏性变更
- 数据流主路径重排
- 对性能、容量、一致性或扩展性有显著影响
项目初始化分析
当任务是“新接手项目的首轮架构体检”时,至少完成以下动作:
- 扫描技术栈、目录结构、模块边界与依赖关系。
- 明确业务目标、核心流程、关键组件与数据模型。
- 从架构、质量、性能、安全、可扩展性五个维度给出结论。
- 输出优先级明确的改进建议,避免一次性大改。
场景化展开
- 涉及分层与依赖规则时,读取
references/layering-and-dependencies.md - 涉及架构变更风险评估时,读取
references/change-impact-analysis.md - 涉及契约、依赖注入、可插拔设计时,读取
references/interface-di-and-pluggability.md - 涉及新接手项目的首轮体检时,读取
references/project-initial-analysis.md
与其他 skill 的协同边界
- 与
single-responsibility:当核心问题是职责拆分时联动,顺序为“先定边界,再拆职责,再复核依赖”。 - 与
source-quality-control:当结论依赖外部框架、平台文档、版本差异或官方设计说明时联动。 - 与
roi-value-density:当用户在比较多种架构方向,或判断某次重构是否值得投入时联动。
判断标准
- 是否可以清楚回答“这次改动在哪一层、影响谁、依赖谁”。
- 是否仍满足单向依赖,且没有新增循环依赖。
- 是否通过契约、注入与配置保持实现可替换。
- 是否对高风险架构调整显式做了影响分析与升级判断。
- 若涉及职责拆分,是否已联动
single-responsibility做边界收敛。
反模式
- 为了快速交付直接跨层调用底层实现。
- 在基础设施层写入业务规则。
- 直接改接口签名,却不给兼容策略。
- 业务代码长期硬绑定具体实现或静态单例。
- 明明在做架构调整,却不说明影响范围和数据流变化。
参考资料
references/layering-and-dependencies.md- 分层与依赖方向基线references/change-impact-analysis.md- 架构变更影响面分析模板references/interface-di-and-pluggability.md- 契约、依赖注入与可插拔设计references/project-initial-analysis.md- 项目初始化分析清单与评估维度
More from qiao-925/qiao-skills
agent-skill-rules
Agent Skills 开放标准与治理规则。用于 skill 的创建、修改、重构、迁移、审计与维护,并在创建前判断需求应落到自动化、项目级规则、通用或项目私有 skill 还是单次 prompt,提供平台无关的结构标准、frontmatter 规范、渐进式披露与质量门禁。
35python-coding-standards
Python 实现基线能力单元,帮助 Agent 在 Python 代码实现、修改、补全、重构与审查场景中,先对齐项目既有约定,再落实类型边界、日志纪律、命名与结构可读性,避免把个人偏好或项目私货写成通用规范。关键词:Python、编码规范、类型提示、日志、命名、代码结构、项目对齐。
23critical-thinking-guidance
规范 Agent 在解答前进行智能判断与思考引导,避免不必要的替代思考并保留用户主导权。适用于用户提问、方案咨询、学习交流等需要平衡效率与思考深度的场景。关键词:引导提问、智能判断、轻量引导、强制思考
21single-responsibility
单一职责能力单元,帮助 Agent 在文件拆分、函数重构、模块设计、代码审查与边界澄清场景中,识别职责混杂、变化原因耦合与命名失真问题,让文件、函数、类与模块都能围绕一个稳定职责组织。关键词:单一职责、职责拆分、边界澄清、重构、文件拆分、函数重构、模块设计。
20core-first-simplicity
核心优先的复杂度控制能力单元,帮助 Agent 在项目取舍、架构设计、模块重构、实现裁剪与方案收敛场景中,先识别主亮点、控制复杂度预算、稳定主路径、延后非核心扩张,避免过度设计与大而全实现。关键词:核心优先、复杂度控制、KISS、方案收敛、过度设计、主路径。
19python-uv-acceleration
Python 工具链加速能力单元,帮助 Agent 在 Python 项目创建虚拟环境、安装依赖、同步 requirements、替换 pip/venv 工作流时,优先使用 uv 提升速度与一致性,同时识别何时不应覆盖 poetry、pdm、hatch 等既有项目管理器。关键词:Python、uv、依赖安装、虚拟环境、pip 替代、venv 替代、requirements。
19