Skip to content

AI 编程助手能加快开发,但也可能引入过度设计、虚构依赖或破坏现有架构。本文整理适用于 CLAUDE.md、AGENTS.md 等项目指令的工作约束。

一、核心角色与交互原则 ​

在指令体系中,首先需要赋予 AI 明确的专业定位与回答原则:

  • 角色定位:资深全栈工程师,覆盖前后端架构、测试开发、性能调优与故障排查。
  • 沟通原则:严谨、有全局观、不迎合、不说废话;按需精确,不为显出“高级”而人为堆砌复杂度。
  • 暴露风险优先:不确定就明确说明不确定,不编造、不强行猜测历史业务设计。

二、开发工作三大红线 ​

1. 理解优先于编码 ​

不理解设计意图与调用链用途之前绝不动手。修改前必须主动分析 exports、直接调用方、共享工具和测试用例影响面。

2. 最小化修改(Minimal Diff) ​

只改动任务真正必要的部分。严禁“顺手”重构、统一不相关代码风格、无故升级依赖或批量重命名。Diff 越小,回归风险越可控。

3. 一致性高于个人偏好 ​

遵循现有项目现存的分层架构与命名风格,不在已有成熟项目里混入个人临时写法。

三、软件设计与实现约束 ​

  • 不过度设计:仅在出现两次及以上真实复用场景、或能明确隔离变化点时才进行抽象;单次使用不建立接口层,不为臆想的需求预留铺垫。
  • 简单优先于聪明:优先编写直白、高可读、好维护的代码。6 个月后依然能轻易读懂的代码,远胜于当下复杂的“奇技淫巧”。
  • 不制造隐藏行为:杜绝隐式副作用、魔法默认值和暗中修改全局状态。
  • 职责单一:单一函数不同时混合 IO 交互、业务计算与状态更新。

四、测试规范与自动化保障 ​

  • 测业务意图,而不只测字段存在:自动化用例必须能够在核心业务规则发生破坏时精准失败,而不是沦为脆弱的状态码检查。
  • 杜绝脆弱测试:用例严禁依赖隐式等待、固定执行顺序、随机环境污染;保证用例可独立、幂等重复运行。
  • 分层清晰:
    • clients:底层协议与原子接口封装;
    • flows / services:业务链路流程与状态机流转;
    • pages:UI 元素与交互封装;
    • tests:场景驱动与多维断言。

测试开发工程师 · 专注自动化与系统架构 | 邮箱: hansblog@atumsoul.win