为 AI 辅助编码建立并使用架构护栏(Architectural Guardrails),以防止架构崩溃、功能回归(feature regression)以及在长期多轮迭代过程中出现的架构偏移(drift)。
AI 编码架构守护符: 目标. 帮助编码代理修改大型或复杂的项目, 不中断已有的架构, 核心功能, 或长期设计意图是一项面向实际任务的技能,主要用于当使用 thi 时。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
帮助编程 Agent 在修改大型或复杂项目时,不破坏现有架构、核心功能或长期设计意图。
使用本 Skill 时,应将代码仓库视为事实的唯一来源,但应将人工维护的设计意图视为最高层级的指导原则。不要依赖冗长的对话历史获取关键上下文;关键规则必须记录在仓库文档中,或以可执行检查的形式落地。
采用四层护栏模型:
1. 人类设计意图层 2. Agent 同步的架构与验收文档层 3. 硬性自动化约束层 4. 人工评审与黄金规则反馈层
Agent 的任务并非自由即兴发挥,而是在清晰边界和反馈闭环内安全执行。
为项目创建或完善护栏时,优先采用以下最小化结构:
AGENTS.md docs/DESIGN_INTENT.md docs/ARCHITECTURE.md docs/ACCEPTANCE_RULES.md docs/GOLDEN_RULES.md docs/ARCHITECTURE_DRIFT.md
DESIGN_INTENT.md 由人工维护,用于记录项目目标、核心架构原则、不可协商的技术权衡,以及关键历史设计决策。它是项目的“宪法”;切勿允许 Agent 用当前实现覆盖人类的设计意图。
ARCHITECTURE.md 记录当前已确认的架构图谱。Agent 可周期性地根据代码和 DESIGN_INTENT.md 同步该文档,但意外产生的架构偏移(drift)不得被自动合法化。
ACCEPTANCE_RULES.md 记录如何验证核心功能、架构承诺及非回归行为。
GOLDEN_RULES.md 记录从真实事故中提炼出的强约束规则。每条规则应包含:事故来源、禁止行为、必需行为,以及如何通过自动化方式强制执行。
ARCHITECTURE_DRIFT.md 记录设计意图与当前实现之间的差距,并按以下类别归类:符合设计意图、合理演进、技术债、需人工决策、违反设计。
在进行任何非平凡的代码变更前:
AGENTS.md,请先阅读。docs/DESIGN_INTENT.md、docs/ARCHITECTURE.md、docs/ACCEPTANCE_RULES.md 和 docs/GOLDEN_RULES.md。若项目尚无护栏类文档,请先建立最小可行集;切勿一次性构建庞大的文档体系。
人类设计意图是最高锚点。更新 DESIGN_INTENT.md 时:
推荐格式如下:
## YYYY-MM-DD - [决策标题] 设计意图: [系统必须保持或朝向演进的目标。] 依据: [该方向为何重要。] 影响: - [后续变更必须遵守的约束。] - [Agent 绝对不可破坏的内容。]
在某阶段工作完成后,或重大任务启动前,同步架构文档:
DESIGN_INTENT.md。aligned with intentreasonable evolutiontechnical debtneeds human decisionviolates designARCHITECTURE.md。ARCHITECTURE_DRIFT.md。切勿假设“当前代码即正确架构”。当前代码本身可能已坍塌或发生偏移。
将架构承诺转化为可执行检查。针对每个架构基石(architectural cornerstone):
ARCHITECTURE.md 中识别关键节点。示例:
架构基石: PlanAgent 必须维持多轮次持久化记忆。 可观测模式: 连续完成 10 轮对话后,“检索—摘要/更新—持久化”流程必须在 memory-management 链中完整运行。 验收测试: 模拟 10 轮对话;断言预期的 MemoryManager 方法被调用,且结果已写入持久化存储或上下文组装流程。
优先采用确定性检查,而非仅依赖 AI 判断:
类型检查 > 单元测试 > 积分测试 > 架构测试 > lint > CI > AI review > 提示提醒
AI review 仅为语义补充,不构成核心护栏。
构建护栏时,应优先防止以下行为:
若项目具有清晰分层结构,应将允许的依赖方向编码为测试或 lint 规则。
当现有护栏未能阻止架构坍塌、功能退化或架构偏移时:
GOLDEN_RULES.md 新增一条规则。推荐格式如下:
## [规则标题] 事故来源: [发生了什么?何时发生?] 禁止行为: [Agent 再次不得执行的行为。] 必需行为: [符合架构规范的正确做法。] 执行方式: - [测试、lint、CI 检查或评审步骤。]
切勿将 GOLDEN_RULES.md 变为泛泛而谈的通用建议。应保持其简洁、高信噪比,并扎根于真实事故或高风险模式。
Agent 完成一项有意义的变更后,在最终回复前,需核查以下问题:
若任一问题答案提示存在风险,则需立即修复,或将其记录为需人工决策的架构偏移(architectural drift)。
当用户要求设计护栏时,应交付:
当用户要求将护栏应用于代码时,应首先阅读现有文档与测试,实施小范围变更,并使用项目中最严格的自动化检查进行验证。
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章