1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | unlazy |
| 作者/维护者 | Leonxlnx(个人开发者) |
| 来源链接 | https://github.com/Leonxlnx/unlazy |
| 许可证 | MIT |
| GitHub Stars | 726(GitHub API) |
| Forks | 41(GitHub API) |
| 最新版本 | 2.0.0 |
| 安装方式 | npx skills add Leonxlnx/unlazy,或手动 git clone 进 ~/.claude/skills/unlazy 等对应目录 |
2. 功能介绍与亮点
unlazy 是一个“反偷懒执行纪律”技能,用来对付一种常见的 agent 失败模式:任务只完成了八成就报告“done”,范围被悄悄缩小,或者最终总结里出现自信但错误的数字。
核心方法是 Depth Tree:把任务按自然分界拆成若干“叶子”,每个叶子在动手前先把验收标准写进 GATES.md 文件,可机械验证的标准配上可执行的 CHECK: / EXPECT: 命令,由随附脚本 gate-check.mjs 实际跑一遍再记录证据;只有账本上的每一项都有真实证据,才算完成。任务体量较大时(tree 4 层以上)会转入编排模式:先在 PLAN.md 里定好接口与分工契约,再把每个叶子交给全新上下文的子 agent 独立执行,父任务重新跑一遍每个叶子的验收检查而不是自我认证。报告环节还有一条“审计”规则:结案陈述里的每一个数字都要重新测量,标“未验证”也不能凭记忆写。
一个突出的亮点是这套设计经过真实测试验证而非空想:作者做过一次受控的六轮对照测试(两个从零构建任务、三种条件、独立代码评审+对抗式复核+浏览器实测),据此把 v1 的纯说明文字版本迭代成了 v2 的文件化强制版本,并在更新日志里坦承 v1 宣称的“深度每加一层效果翻倍”是虚构的,实测只多出 1.0–1.5 倍。SKILL.md 与 README 还引用了 12 篇 2025–2026 年关于大模型“偷懒”、欠思考、长程任务退化的公开研究作为方法论依据。Claude Code 下还提供一个可选的 Stop hook,能在 GATES.md 存在未完成项时结构性地阻止 agent 结束对话,默认只装进项目本地未跟踪的配置、需要用户主动执行安装命令,并附带一键卸载。
3. 适用场景
固定分类:元技能与 Agent 增强。
适合把 agent 长时间独立运行在重构、多文件构建、端到端功能实现这类容易半途而废或范围漂移的任务上,本人不逐步盯着执行过程、只想在结束时看到一份可信的完成情况的开发者;也适合团队里需要把“验收标准”从口头约定固化成可复查文件的场景。对于一次性的小改动或纯问答,作者本人也在文档里明确说明不需要用到这套机制。
4. 跨 Agent 兼容性
- Claude Code:原生支持。README 给出专门的安装路径(
~/.claude/skills/unlazy),并提供可选的 Stop hook 结构化强制机制。 - Codex(OpenAI Codex CLI):原生支持。README 给出专门安装路径(
~/.codex/skills/unlazy)与触发方式($unlazy)。 - OpenClaw:未验证。仓库文档未提及。
- Hermes Agent:未验证。仓库文档未提及;核心机制(SKILL.md 说明文字 + 独立 Node 脚本)不依赖 Claude Code 专属能力,理论上可作为系统提示词使用,但未见官方确认。
5. 推荐理由
它把“结束前先证明做完了”这件事从一句提示词变成了文件加脚本的硬约束,而且这个设计选择背后有真实的对照测试数据支撑,不是凭感觉写的规则。相比只依赖一个具体外部参照物做质量比对的同类技能,Depth Tree + 验收门禁的方法不要求任务本身有可比对象,覆盖面更广,从重构到写作任何“要求做到位而不是做得快”的任务都能用。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 6 | GitHub 726 星;第三方 AI 资讯站 2026-08-16 报道该技能时星数约为 230,此后持续增长 |
| 可用性 | 8 | 安装即用,SKILL.md 之外另有 4 篇参考文档、变更日志与贡献指南,最近一次代码更新为 2026-08-11;仓库存在 1 个未解决的 issue(Windows 下 gate-check 因所用 shell 不同而结果不一致),已知但尚未修复 |
| 安全性 | 8 | 见下方检查清单 |
安全检查清单
| 检查项 | 结果 |
|---|---|
| ① Shell 命令执行 | 有,gate-check.mjs 会执行 GATES.md 里用户自己写的 CHECK: 命令,可选 Stop hook 仅做本地文件扫描 |
| ② 联网外发 | 无,全部脚本均为本地文件读写,未见任何网络请求 |
| ③ API key/凭据 | 不涉及 |
| ④ 可疑指令 | 未发现 prompt injection 或隐蔽指令;Stop hook 需用户主动运行安装脚本,非默认静默启用,且提供 --uninstall |
| ⑤ 作者信誉 | 个人开发者,无造假或恶意历史迹象 |
| ⑥ License | MIT,明确 |
| ⑦ 最近维护 | 最近一次代码更新为 2026-08-11,仓库未被归档 |
7. 跟同类 Skills 相比的优势
| 技能 | 核心机制 | 定位差异 |
|---|---|---|
| unlazy(本技能) | 任务前置验收门禁文件 + 可执行检查 + 可选强制 hook | 不要求任务有外部比对对象,通用于任意“要做完整”的任务 |
| gauntlet-loop | 生成一段 builder/critic 盲评提示词,让产出与一个真实存在的外部参照物反复比对,直到评审判定“我方更好” | 依赖能找到一个具体、可获取、可并排比较的参照物(如某个已上线网页、某篇已发表文章),对没有天然对标物的任务(如后端逻辑、内部工具)覆盖较弱;机制上纯文本、不执行任何代码 |
| Superpowers | 把需求澄清、设计评审、开发、测试、验证固化成一整条自动触发的技能链 | 覆盖软件工程全流程的多技能工具箱,unlazy 只专注“完成度”这一个环节,更轻量、可与其他工作流搭配使用 |
| Planning With Files | 把计划进度持久化到磁盘三个文件,服务于长会话跨上下文续接 | 解决的是“记住计划”,unlazy 解决的是“证明做完”,两者关注点不同、可以搭配 |
8. 用户评价
尚未检索到第三方平台上的具名深度评测。可确认的一条真实社区反馈来自 GitHub:用户 thari1995723-boop 在仓库 issue 中留言称很喜欢这个思路,并将其移植成了 Cursor 的自定义 slash command,同时按 CC BY 许可要求回链致谢原作者。
9. 其他补充
仓库保留了 v1(纯说明文字版)分支供只想要“零机关”版本的用户使用;v2 的变更日志逐条记录了从 v1 到 v2 的测试发现与设计取舍,可作为理解方法演进的补充材料。
10. 安装使用方式
- 通用安装器(自动识别 Claude Code / Codex 等宿主):
npx skills add Leonxlnx/unlazy - Claude Code 手动安装:
git clone https://github.com/Leonxlnx/unlazy ~/.claude/skills/unlazy - Codex CLI 手动安装:
git clone https://github.com/Leonxlnx/unlazy ~/.codex/skills/unlazy - 其他任意能读取 markdown 的 agent:直接把
SKILL.md内容粘贴为系统提示词或等效配置即可,脚本部分仅需 Node.js 16 及以上版本。 - 安装后无需重启,通过
/unlazy、自然语言“tree N”或匹配技能描述的请求即可触发;如需 Claude Code 下的强制 Stop hook,需额外手动运行scripts/install-hooks.mjs(默认只写入项目本地未跟踪配置)。
11. 注意事项
- 已知一个未修复的 Windows 兼容性问题:
gate-check脚本在不同 Windows shell 下可能给出不一致的通过/失败结果。 - 编排模式(tree 4 层以上)会显著增加子 agent 调用数量与整体开销,作者建议半小时以内的工作量保持单 agent 模式即可,不必用到编排。
- 强制 Stop hook 属于可选功能且会改变 Claude Code 的对话结束行为,安装前应确认自己了解其效果(连续 6 次未见进展会自动放行并给出警告,可通过
ABANDON:行手动豁免某项验收标准)。