dotpals 是一个桌面应用,用来展示编码代理实际做了什么。它能抓住直接读取测试输出就当作通过的情况,并且还提供一个可以在任何 AI 工具中询问的 MCP 服务器。2026 年 10 月 27 日的提交 084c9c9 合并了 agusumri 提交的 PR #45,加入了 `.dotpals.json` 支持,这样每个项目只需写一次规则,任何代理都会在同样的标准下工作。
规则共有五类:不应触碰的路径(mustNotTouch)、可以触碰的路径(onlyTouch)、必须通过的命令(mustPass)、禁止新增依赖(noNewDependencies),以及修改前的介入方式(beforeEdit: ask·tell·off)。一个请求结束后,会把该请求用过的工具和命令、以及 git 看到的变更与规则进行对照,违规记录会同时显示在代理卡片、"Ready to merge?" 界面和 MCP 工具 check_my_work 中。路径可以使用 `*`、`**`、`?` 通配符,并且会从会话文件夹一路向上查找直到仓库根目录,最靠近的文件优先,因此可以在 monorepo 中为每个包设置不同的规则。dotpals 只读取这个文件,不会写入。
本次提交在 8 个文件中新增 494 行、删除 8 行。负责规则解析与检查的 bridge/rules.js 新增了 194 行,test/rules.test.js 170 行和 test/guard.test.js 45 行也一并加入。README 里新增了一行条目:"Project rules for every agent"。
局限也很清楚。mustPass 命令不是由 dotpals 直接执行,而只是做比较(单行、200 字以内、不能使用反引号),实际是否通过仍然取决于执行方的输出。另外,能够在修改前暂停的行为按 README 的说法只对 Claude Code 做了文档说明,其余代理只有请求结束之后的事后检查。关于规则应用准确率或检出率没有数字,给出的信息中也没有仓库许可证和星标数。不过,代理换了而项目规则仍然绑定不变这一点很实用,所以连同重新阅读测试结果的功能,这是值得审查的改动。