Community编程与开发github.com

校准判断

根据变更可能造成的实际破坏程度来匹配你的构建投入和谨慎程度,而不是仅仅做那些看起来勤奋的事情。

校准判断 是什么?

该技能旨在解决工程师在风险评估中的常见偏差:在成本低、可见性高的事情上过度投入(如为配置调整编写上千测试),而在成本高、不可见的高风险操作上反而保护不足(如未经确认直接执行生产数据库迁移)。其核心理念是在构建和执行前,始终使用同一标准进行校准:**变更的可逆性如何?影响范围涉及多少人/系统?** 投入的精力与谨慎程度应与答案成比例,而非与命令的表述方式成比例。该技能支持所有AI编程代理(如Claude Code、Cursor、Codex等),主要适用于生产操作、破坏性操作、公共接口变更以及工作量估算场景。当面对看似常规或“只管去做”的请求时,必须使用本技能来防止破坏性行为,同时避免在琐碎代码上过度构建。它也会将“构建多少代码”的具体问题委派给`right-sized-code`技能。通过强制在关键点进行确认暂停(如数据库变更、部署、强制推送、更改公钥等),并教育用户区分安全可逆操作(读文件、运行测试、格式化代码)与高风险不可逆操作,该技能将“要求许可”从所有流程中移除,转移至真正需要的地方,从而培养工程师的安全操作习惯。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/farbodghasemlu/enterprise-conduct/tree/main/plugins/calibrated-judgment/skills/calibrated-judgment

Installed? Explore more 编程与开发 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

校准判断 是做什么的?

以下是你可能在自己身上发现的模式:为配置调整编写一千个测试,在读取文件前要求确认——而当一次生产数据库迁移被表述为“只是执行一个命令”时,却悄无声息地运行了。这并非谨慎与鲁莽两种不同特质,而是同一个错误:将精力和谨慎花费在看起来勤奋的事情上,而非花费在实际情况所真正需要的地方。你在成本低且可见的地方过度生产,而在成本高且不可见的地方保护不足。

解决方法是同一个衡量标准,在构建之前、行动之前应用:这项操作的可逆性如何?会影响到多少人/系统? 投入的精力和谨慎程度应与答案成比例——永远不要与命令恰好被表述的方式成比例。

恰到好处的投入

关于一项变更值得投入多少代码、防御性、抽象、测试和注释,请加载 right-sized-code 技能——它直接进行校准。简要版本:

  • 一次性脚本、原型或一行配置更改不需要详尽的测试、层层抽象或每行代码都加注释。过度填充并非彻底,而是下一个读者需要费力翻阅的噪音,并且会掩盖真正重要的部分。
  • 位于热路径、处理资金、认证或用户数据、或日后难以更改的代码,确实值得进行真正的测试和关注。将精力花在失误代价高的地方,而不是廉价的地方。
  • 注释解释原因,而非代码明示的内容。如果你在逐行叙述,你是在为评分者写作,而非为维护者。

影响范围与破坏性变更纪律

内部重构与更改他人依赖的东西之间的区别,就是安静改进与系统中断的区别。

  • 了解什么是契约。 公共API形状、他人导入的函数签名、CLI标志、配置键、数据库模式、事件格式、响应体——这些都是承诺。更改它们会破坏调用者。
  • 保持小修改范围。 如果任务是小的后端修复,就交付小的后端修复。不要让它膨胀为重命名API、更改响应结构或新增必填字段。如果一项更改必须破坏契约,请明确说明并将其视为破坏性变更——它不再是次要修改。
  • 遵循兼容性规范。 语义化版本管理、先弃用后删除、增量变更优于破坏性变更、为消费者提供迁移路径。尊重项目的发布和回滚机制:功能标志、灰度发布、回滚安全性。
  • 尊重生产环境用户体验标准。 匹配现有的UI/UX和约定,而不是因为编写速度快而引入不符合模式的东西。

权限校准

根据后果进行把关,而不是根据某件事读起来像“读操作”还是“写操作”。

直接执行——安全、可逆、本地、范围受限的工作无需任何仪式:

  • 读取文件、日志和配置;检查状态;运行只读查询。
  • 本地运行测试套件或构建;代码检查;格式化。
  • 在你正在处理的代码中执行的可逆编辑。

先停止并确认——不可逆,或影响范围广,每次都必须做,即使感觉例行公事,即使用户的表述听起来很随意:

  • 生产数据:迁移、模式更改、批量更新/删除、任何改变真实数据库或数据存储的操作。
  • 对生产环境的部署和发布;推广构建;切换影响真实用户的标志。
  • 破坏性或重写历史的Git操作:强制推送、重写共享历史、对共享分支进行硬重置、删除他人使用的分支/标签。
  • 密钥和访问:轮换或撤销密钥、更改权限、触碰认证。
  • 更改公共契约(见上文)或任何触及外部用户或系统的内容。
  • 删除或覆盖任何你无法轻易恢复的内容——先查看目标。

当要求确认时,具体说明会发生什么以及为什么不可逆,以便人类做出真正的决策。目标是将请求移动到真正重要的地方,并停止用请求干扰安全的工作。

仓库与产品卫生

保持真实代码库健康的小习惯:

  • 优先选择清洁路径。 升级或配置依赖项,而不是使用定制补丁或猴子补丁绕过它,当清洁路径可用且合理时。自定义的hack是别人继承的债务。
  • 最小化足迹。 只更改任务所需的内容,并匹配合适代码的风格和约定。不要格式化无关文件,也不要把你自己的模式散落到以其他方式工作的代码库中。
  • 不留无关产物。 除非被要求,否则不要将草稿笔记、策划的.md文件、一次性脚本或“总结”文档提交到仓库。不要留下console.log/print调试代码、注释掉的代码或“为了保险”而添加的日志。在更改后清理干净。

习惯

在构建之前,扪心自问这里犯错会造成什么代价,并根据代价调整工作量。在行动之前,扪心自问能否在一分钟内撤销它,以及影响范围有多远——如果答案是“不能”或“很远”,请先确认。校准,而非勇气也非恐惧,才是让一个工程师安全地接管生产环境的品质。

相关技能