ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

unlazy门控契约完全指南:CHECK、EXPECT与EVIDENCE三大字段格式规范详解

unlazy门控契约完全指南:CHECK、EXPECT与EVIDENCE三大字段格式规范详解 unlazy门控契约完全指南CHECK、EXPECT与EVIDENCE三大字段格式规范详解【免费下载链接】unlazyAnti-laziness skill for AI agents. Core: the Depth Tree method, which splits a task N layers deep and gives every leaf the full time budget of the whole task, so effort multiplies with depth. Grounded in 2025-2026 research on model laziness, underthinking and premature completion.项目地址: https://gitcode.com/gh_mirrors/unl/unlazyunlazy是一款为 AI Agent 打造的反偷懒技能它要求 AI 在动手前先写好一份可机器校验的门控契约Gate Contract任务完成与否不再靠一句自信的做完了而是由 CHECK、EXPECT、EVIDENCE 三大字段说了算。本指南带你快速掌握 unlazy 门控契约的字段格式规范、常见错误与验证方法让你从零写出第一份合格的 GATES.md。一、为什么 AI Agent 需要门控契约AI 在处理多步骤长任务时容易出现提前收尾只做一半就报完成的问题。unlazy 的解法很直接先立规矩开工前把验收标准写成一份账本GATES.md命令裁决每条门控要么能用命令验证要么诚实标记为人工项证据留痕通过后记录可审计的证据而不是口头承诺。完整规则定义见 references/gates.md技能核心说明见 SKILL.md。二、一份最小门控账本长什么样 一个典型账本由「标题 门控清单」组成每个门控一行开头属性行缩进# Gates: 账户导入 OWNS: src/import/**, tests/import/** Scope: 导入有效记录并拒绝畸形记录 - [ ] G1: 有效夹具完整导入 CHECK: node scripts/check-import.mjs fixtures/valid.json EXPECT: import verification passed EVIDENCE: pending - [ ] G2: 包级集成验证通过 CHECK: node scripts/check-package.mjs EXPECT: package verification passed CWD: packages/importer EVIDENCE: pending可以直接从官方模板起步避免手写格式错误叶子任务模板templates/gates-leaf.md分支集成模板templates/gates-node.md⚠️ 三个硬性前提门控 id 必须显式且唯一、属性行必须缩进、账本不能为零门控。任何一条违反都会让解析器直接报失败关闭而不是给你一张完成证书。三、CHECK 字段把怎么验证写成可执行命令CHECK:声明的是一条 shell 命令检查器会真正执行它。记住一句话CHECK 就是代码。要点说明成对出现可执行门控必须同时有 CHECK 和 EXPECT只有一个是非法格式执行权限命令以检查器自身的环境运行默认继承完整 PATH超时与输出默认 120 秒超时合并输出上限 1 MiB审批边界未审批的命令只会打印不执行需--approve显式放行可移植性优先用仓库内 Node 脚本别假设 Windows 上有 grep、tail 最佳实践让脚本先断言后打印——所有断言通过后才输出 EXPECT 里的成功标记任何失败直接非零退出。这样退出码 0 标记匹配才是可靠的双重信号。四、EXPECT 字段文本子串与正则两种写法EXPECT:定义命令输出里必须出现什么只有两种合法形态普通文本作为子串在合并输出stdout stderr中匹配正则表达式用斜杠包裹形如/pattern/flags上限 1000 字符非法正则是解析错误。️最经典的坑——路径被误读成正则EXPECT: /etc/app/conf/会被解析成正则etc/app/conf其中的点会匹配任意字符两种解法想保留正则 → 转义内部斜杠想匹配字面路径 → 去掉外层斜杠写特色子串etc/app/conf。解析器对此会给出警告。更多解析细节可在 scripts/lib/gates.mjs 的parseGates实现中找到。五、EVIDENCE 字段从 pending 到可审计证据EVIDENCE:是每个门控唯一一行、记录通过证明的字段初始值为pending。自动门控通过后检查器自动写入证据——解析后的 shell、工作目录、退出码、PATH 指纹、匹配结果以及合并输出的 SHA-256/字节数指纹原始输出不落盘人工门控记录能证明结果的最小事实不要把整段日志贴进账本关键规则即使复选框已勾选只要证据缺失或仍是pending门控状态就是未达成unmet-no-evidence。 老证据不等于重新验证--status只读取历史状态、不执行任何命令父级复核要用--reverify重跑全部可执行门控。六、常见格式错误速查错误写法正确做法- [ ] 没有id的标题显式 id- [ ] G1: 结果描述CHECK 顶格不缩进所有属性行缩进在门控之下只有 CHECK 没有 EXPECT二者成对人工门控则两者都不写ABANDON: G1空理由理由必须非空且 ABANDON 从第 1 列开始写OWNS 写在门控之后 / 用绝对路径OWNS 必须在首个门控之前路径相对仓库根补充说明ABANDON: id 非空理由表示该结果在授权范围内确实做不到它是终态交接而非成功——检查器会输出HANDOFF REQUIRED并以退出码 1 结束绝不允许被父级ALL MET悄悄掩盖。七、验证你的账本两条命令就够了写完 GATES.md 后用仓库自带工具需 Node 16做两步自检先 lint不执行任何命令让弱口令在写作期就暴露node scripts/gate-lint.mjs GATES.md报告LINT OK即通过加--strict可把警告升级为失败。工具源码见 scripts/gate-lint.mjs。再 status只解析不执行检查格式与历史状态node scripts/gate-check.mjs --status GATES.md确认无误后阅读每条命令用--approve审批并执行复核已返回的成果用--reverify。完整 CLI 说明见 scripts/gate-check.mjs。八、新手速记清单✅ 一个门控 一个可观察的结果用结果而非动作命名夹具完整导入优于运行了脚本 ✅ 数字指标要独立测出来别把任务书里的数字直接抄进 EXPECT 当证明 ✅ 否定断言不该出现 X先用已知正例跑一遍确认检查逻辑真的会失败 ✅ 账本里的代码块示例不会被解析器执行但围栏必须闭合。掌握 CHECK、EXPECT、EVIDENCE 三大字段的格式规范你就拥有了 unlazy 门控契约的核心能力——让做完了从一句自信话术变成一份可验证、可审计、可交接的证据账本。更多设计细节可延伸阅读 README.md 与 SECURITY.md。【免费下载链接】unlazyAnti-laziness skill for AI agents. Core: the Depth Tree method, which splits a task N layers deep and gives every leaf the full time budget of the whole task, so effort multiplies with depth. Grounded in 2025-2026 research on model laziness, underthinking and premature completion.项目地址: https://gitcode.com/gh_mirrors/unl/unlazy创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表