击败Fable的短缰绳式AI编码方法

Hacker News Top 工具

摘要

一位专家开发者发布的文章,分享了“短缰绳”方法,用于在安全关键系统中使用AI编码代理生成高质量软件,强调与自动化的“vibe编码”相比,更注重密切监督和规划。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/07/02 23:10

# 击败 Fable 的“短绳”AI 编码方法 来源:https://blog.okturtles.org/2026/07/short-leash-ai-method/ 本文是我一年多来研究如何正确使用 AI 代理编写安全关键系统高质量软件的经验总结。 我将主要从软件开发人员、协议开发者以及安全关键软件维护者的角度来撰写本文。 过去一年,我深入研究了 AI 代理。我探索了它们的极限,以及哪些事情可以信赖它们去做,哪些不能。我构建了我们自己的 AI 审查工具,其性能不亚于价值数十亿美元的 AI 审查系统。我也维护了自己的 AI 编码代理 Crush 的自定义分支(https://github.com/taoeffect/crush)。而本文是我提炼出的最佳方法——如果你希望通过 AI 工具创建高质量软件。 有些人讨厌 AI。确实,许多开发者*应该*讨厌 AI(https://crib.social/notice/B6UvD7W49PF8Sj2pEG),因为对于他们学习软件开发来说,AI 是敌人。这篇文章不是写给他们的。这篇文章是写给那些技能已达到在其专业领域超越任何“前沿 AI 模型”的少数专家开发者的。正是为了这些希望在*不牺牲任何质量*的前提下利用 AI 提升效率的专家开发者,我写下此文。 ## 当前方法存在的问题 如果你经常使用 AI 代理,你会知道在会话过程中可能发生以下情况: - 你发现最初的想法很蠢,有更好的方案存在 - 你的代理可能“脱离轨道”,开始做一些你不希望它做的事情 我见过一些播放量数十万的视频,YouTuber 们解释他们如何发明了由编排器管理的 12 个并行代理的复杂系统,同时执行无数任务。他们声称自己不再需要参与编码过程——只是 AI 写屎山、AI 审屎山,而 YouTuber 则坐在沙滩上、上厕所、或无缘无故地啜饮咖啡。 如果使用这种“氛围”方法,你根本不可能建立对代码库的自身理解。AI 会多次“脱轨”,只有当你想真正使用软件时才会发现问题。在你不关心质量的情况下,这种方法或许完全没问题;但如果你*确实在意*,就需要不同的方法。 问题是,即使是由 Fable 5 编写和/或审查的代码,也会有问题: 代码能用,但极其低效且丑陋。尤其当你在某个训练数据稀少的细分领域工作时,这种情况会更频繁地发生。与某些 CEO 的市场宣传相反,这些模型无法超越其训练数据进行思考。 ## AI 代码生成 —— “短绳”方法 这就引出了使用 AI 编码代理的“短绳方法”。 并非任何人都能使用这种方法。只有专业软件开发人员才能用。但它的美妙之处在于:即使你没有使用前沿模型,也能获得超越 Fable 的结果。 在短绳方法中: - 你使用规划阶段来研究任务并制定计划,同时借助类似我的 tasks 技能(https://github.com/taoeffect/tasks)来跟踪进度并将大任务分解为步骤(这与许多“氛围工程”方法有共同点;后续步骤则分道扬镳)。 - 你绝不使用“YOLO”模式(又名“危险地跳过权限”) - AI 永远不会在你“打游戏的时候”工作 - 你使用一个能通过权限提示显示即将做出的变更差异的编码代理 - 你像 20 世纪的狂人一样坐在那里,仔细分析 AI 建议做出的更改 - 你始终让自己处于循环中,而不是将自己抽离出来(YouTuber 们推崇的趋势) - 你将权限提示中的差异作为保持对代码库理解和让 AI“拴在短绳上”的方式 - 每当你看到 AI 即将做你不希望它做的事情时,就**拒绝**权限 - 你根据需要频繁介入,防止 AI“脱轨” - 自始至终,AI 都“被拴在短绳上” - 每个子任务结束时提交一次,以保护你不受 AI 搞砸并删除已完成工作的影响(这种情况可能发生,我看到过 Opus 这么干) - 最后,我们进行审查 ## 如何进行 AI 审查 一个仅由人类或仅由 AI 审查的 PR,会比**同时**由人类和 AI 审查的 PR 包含更多错误。 AI 可以被视为一个 lint 工具。它能快速捕获常见错误,而人类则捕获更高级别的问题和需要调整的方向。 因此,在审查方面: - 你应该使用 AI 审查每一个 PR。 - AI 必须拥有足够的上下文(议题、PR 描述、代码库以及变更内容)。 - 你应该使用最新最好的模型进行审查。 - PR 描述必须在“AI 披露”标题下披露在创建 PR 过程中使用的具体模型(如有)。这有多个目的:1. 通知维护者使用了 AI。2. 让他们在模型较弱时建议更好的模型。3. 表明你是一个“好人”开发者,并不是试图“偷偷使用 AI”。 - 最后也是最重要的一点:如果 PR 使用了 AI,那么 PR 的**作者必须审查该 PR**。 最后一点值得进一步阐述。 AI 辅助的 PR 实际上是 AI 提交、人类辅助的 PR。因此,提交 PR 的人类应该理解他们提交的内容,而如果他们不审查 AI 编写的代码,就不可能做到这一点。 所以他们必须像审查别人的 PR 一样对待自己的 PR,逐行审查自己的代码。完成后,他们可以确认自己对 PR 的批准,并请求维护者关注。这建立并展示了他们对代码库的理解。 ## 完 这就是我们在 okTurtles 使用 AI 的方式。你可以阅读我们的官方 AI 使用政策(https://github.com/okTurtles/group-income/blob/master/CONTRIBUTING.md#ai-usage-policy)。 希望这篇文章对你有帮助。 *AI 披露:本文完全由连接人类大脑的人类手指撰写。发布前进行了最终的 AI 式“拼写检查”。* **捐赠 = 热爱!** 没有你们的支持,我们无法做我们所做的事情。请在此刻支持我们的工作(https://okturtles.org/donate/)。

相似文章