基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
  • 知识卡片碎片时间过考点
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
    • AI 热点每日 AI 资讯与动向
AI 工作台
简历
旧版
AIHT
内容
精选全部 AI 动态热点榜AI 日报收藏
分类
模型行业编程产品技术观点开源
更多
Agent 接入
返回首页开发者导航
AIHT
精选 / 资讯详情
8.0
热点
AI SCORE
编程提效2026-11-08 19:10

给编程智能体设定可执行的项目规则

dev.to · AI#AI编程#项目规则#安全
Editor brief · 编辑速览

文章通过会话启动时读取的项目规则,约束无关重构、密钥泄漏、鉴权遗漏和重复失败的修复尝试。具体做法包括修改前阅读相关代码、优先最小改动、明确指令优先级,以及两次失败后暂停并汇报。

文章思维导图
Knowledge map
拖拽缩放
AI deep read

AI 深度解读

AI 编程代理把项目改坏,未必是模型不够聪明,也可能是它不知道哪些事绝不能做、哪些改动不在任务范围内。作者的办法是把项目规则缩短、排好优先级,让代理在每次会话开始时读取。

这套方法针对的都是日常麻烦:小修变重写、密钥进入前端、接口漏鉴权、同一个错误反复乱试。值得借鉴的是具体约束和检查方式,但原文没有给出对照实验,不能据此认定几份规则文件就能解决可靠性问题。

先排优先级,再要求代理完成任务

作者遇到的问题并不复杂:只需小改的文件被整体重写,无关代码被重命名、重新格式化;密钥进入客户端产物,或者 .env 被提交;新路由在正常流程下能用,却缺少鉴权;同一个错误连续尝试 5 次,修复效果越来越差。

作者的解释是:没有明确优先级时,「让它跑起来」容易压过安全和改动范围。

因此,他给指令排了三层顺序:

  1. 安全约束最高,即使收到相反要求也不能违反。
  2. 其次是用户提出的任务,并且要留在任务范围内。
  3. 最后才是工作风格偏好。

指令冲突时,代理还要说明自己遵循了哪一层。这样,规则不只是列出禁令,也给出了发生冲突时的处理顺序。

让代理知道什么比完成任务更重要,是这套方法的起点。

小改动和停止条件,比一味重试更具体

作者要求代理先读将要修改的文件,以及调用这些文件的代码,再动手。只看报错所在的一行,往往不足以理解修改会影响谁。

接着是控制改动量:采用最小修改,不整体重写已经正常工作的文件。对需求歧义,先问一个简短问题,再继续推进。

调试也有明确边界:同一个 bug 修复失败 2 次,就停下来,汇总已经尝试的办法,在第 3 次尝试前询问用户。它并不是宣称两次之后就无法修好,而是给重复盲试设置一个检查点,让人有机会纠正方向。

安全规则则要持续生效:

  • 密钥只放在服务端环境变量中。
  • 敏感路径要检查调用方,不能只验证正常请求能否成功。
  • 破坏性的 Git 操作、rm -rf 和 --force,必须有用户明确要求。
  • 运行真实测试,不能靠跳过测试获得通过结果。

完成后,代理需要报告改了什么、运行了什么,以及哪些内容没有验证。作者尤其看重最后一项,因为一句「完成了」无法说明实际检查到了哪里。

规则放进仓库后,还要检查代理有没有读到

作者把共享规则放在 AGENTS.md,在 CLAUDE.md 中用 @AGENTS.md 引用。对于 Cursor,他建议在 .cursor/rules/ 下增加一份简短、始终启用的规则,让安全条款进入每次聊天。

这里的思路是共享主体内容,再为不同工具提供入口,避免每份文件都复制一套长篇规则。

作者提供的免费 MIT starter 包含这些文件、一份 10 项上线前检查清单和 3 个提示词。操作方法是把 3 个文件复制进项目,开启新聊天,然后让代理复述最高优先级规则和安全条款。如果答不出来,作者认为应检查文件是否放在该工具能读取的位置。

这一步很实用:规则文件存在,不等于代理已经读到。

作者也提到 Etsy 上的付费 Vibe Coding Rules Kit,包含更多技术栈和一条命令的安装器。他在小仓库使用免费 starter,跨多个工具时使用付费套件,但原文没有展示安装命令,也没有提供两者效果的对照数据。

我的判断

我赞同把规则写短,并明确修改范围、停止条件和交付证据。相比给每个工具粘贴一份 400 行「章程」,这种做法更便于维护,也更容易检查代理是否理解了重点。

但「这些规则帮助了作者」仍是经验之谈。原文没有给出模型版本、项目规模、事故数量或前后对照,无法判断收益有多大,也无法证明问题主要来自规则缺失。

更关键的是,文字约束能表达要求,却不能保证执行。要求密钥留在服务端,不代表客户端构建产物必然安全;要求新路由鉴权,也不代表代理一定正确实现。代码审查、测试和权限控制仍然需要承担实际检查职责。

「失败 2 次就询问」也有使用前提。它适合人在场的交互式编程;对无人值守任务,还需要另行定义停止后如何交接。作者没有讨论这部分。

能拿来做什么

  • 给前端或 Node 项目整理一份简短的 AGENTS.md,明确安全优先、任务范围其次,并要求修改前阅读相关文件及调用方。
  • 在接入不同编程工具后,开启新会话,让代理复述优先级和安全条款,以此检查规则是否被读取。
  • 修复同一个 bug 失败 2 次后,要求代理先列出尝试内容和结果,再决定第 3 次怎么做,避免重复相似修改。
  • 把交付说明固定为「改了什么、运行了什么、未验证什么」,检查测试命令与结果,再判断任务是否完成。
Original source

本文由 AI 通读原文后重新编写,观点部分为站内判断,细节以原文为准,来源 dev.to · AI,原文版权归原作者所有。

阅读原文
上一篇
SvelteKit 聊天应用接入工具执行审批
下一篇
把现有 SQL 表关系映射为知识图谱

资讯速览

dev.to · AI · 2026-11-08 19:10

AI 评分 8.0 / 10

相关标签

#AI编程#项目规则#安全

继续阅读

  • 编程代理绕过网络隔离暴露沙箱风险
  • SvelteKit 聊天应用接入工具执行审批
  • 把现有 SQL 表关系映射为知识图谱
  • 为 Agent 技能包加上静态检查
  • Agent 误操作后的首小时处置指南