
如何用Zeroshot实现AI自主编码executor-verifier循环全解析【免费下载链接】zeroshotYour autonomous engineering team in a CLI. The agent loop produces senior-level code that you can actually trust in prod because of non-negotiable feedback from independent reviewers. Supports Claude Code, OpenAI Codex, OpenCode, and Gemini CLI with trivial setup.项目地址: https://gitcode.com/gh_mirrors/ze/zeroshot在AI编程工具日益普及的今天如何确保AI生成的代码质量可靠、安全可用Zeroshot提供了一个革命性的解决方案executor-verifier循环机制。这个多智能体协作框架将代码编写者与代码验证者分离通过独立的验证循环确保生产级代码质量。本文将深入解析Zeroshot的核心机制帮助开发者理解如何利用这一工具实现真正可靠的AI自主编码。什么是Zeroshot的executor-verifier循环Zeroshot是一个开源的多智能体编排引擎其核心创新在于executor-verifier循环。与传统AI编程助手不同Zeroshot将代码编写过程分为两个独立角色执行者Executor- 负责编写代码实现功能验证者Verifier- 独立审查代码质量不查看编写过程这个循环的核心原则是编写代码的智能体不应该成为判断代码是否有效的智能体。通过这种分离Zeroshot确保了代码审查的客观性和可靠性。executor-verifier循环的工作流程1. 任务分类与分配当接收到新任务时Zeroshot首先通过**任务分类器Conductor**进行分析。分类器基于两个维度评估任务复杂度Complexity从TRIVIAL到CRITICAL四个等级任务类型TaskTypeINQUIRY查询、TASK实现、DEBUG调试分类器位于cluster-templates/conductor-bootstrap.json根据任务特征选择合适的执行模板。例如简单的SIMPLE任务使用worker-validator模板而复杂的CRITICAL任务可能需要多个验证者。2. 执行阶段智能体编写代码执行者智能体根据任务要求编写代码。在Zeroshot中执行者配置在cluster-templates/base-templates/worker-validator.json中定义{ id: worker, role: implementation, modelLevel: {{worker_level}}, prompt: { system: ## YOU CANNOT ASK QUESTIONS\n\nYou are running non-interactively... } }执行者完成工作后会发布IMPLEMENTATION_READY消息到消息总线触发验证流程。3. 验证阶段独立审查验证者智能体完全独立于执行者它看不到执行者的思考过程或中间步骤。验证者的配置同样在worker-validator模板中定义{ id: validator, role: validator, modelLevel: {{validator_level}}, prompt: { system: ## VERIFICATION PROTOCOL (REQUIRED - PREVENTS FALSE CLAIMS)... } }验证者遵循严格的验证协议首先搜索所有相关文件仔细阅读实际实现代码使用Grep查找特定模式只有在确认问题存在后才报告错误4. 循环迭代持续改进验证结果分为两种APPROVED- 代码通过验证任务完成REJECTED- 发现问题返回具体错误列表如果被拒绝执行者会收到详细的错误反馈修复问题后重新提交。这个循环会持续进行直到代码通过验证或达到最大迭代次数。Zeroshot的核心架构组件消息总线与SQLite账本Zeroshot使用基于SQLite的持久化消息总线来协调智能体间的通信。所有消息都存储在~/.zeroshot/id.db中确保状态持久化和崩溃恢复能力。核心消息类型包括ISSUE_OPENED- 任务开始IMPLEMENTATION_READY- 执行完成VALIDATION_RESULT- 验证结果CLUSTER_COMPLETE- 集群完成逻辑引擎与触发器系统src/logic-engine.js提供了JavaScript沙箱环境智能体可以编写复杂的触发逻辑。例如// 验证者只在执行者完成后触发 { topic: IMPLEMENTATION_READY, action: execute_task } // 执行者在验证失败后重新触发 { topic: VALIDATION_RESULT, logic: { engine: javascript, script: return message.content?.data?.approved false; }, action: execute_task }智能体包装器与生命周期管理src/agent-wrapper.js管理智能体的完整生命周期状态机空闲 → 评估 → 构建上下文 → 执行 → 空闲触发器评估上下文构建任务执行与监控实战应用配置executor-verifier工作流基本配置示例要创建一个简单的executor-verifier工作流可以基于worker-validator模板# 运行简单任务 zeroshot run 添加用户认证中间件 --worktree # 运行复杂任务自动选择更多验证者 zeroshot run 重构支付系统 --pr # 在Docker中运行完全隔离 zeroshot run 安全审计 --docker自定义智能体配置在src/providers/目录中可以配置不同的AI提供商Claude Code (claude)OpenAI Codex (codex)Gemini CLI (gemini)OpenCode (opencode)每个提供商支持不同的模型级别level1- 基础模型快速、经济level2- 标准模型平衡性能level3- 高级模型最高质量隔离模式选择Zeroshot提供三种隔离级别模式标志适用场景无隔离默认快速任务手动审查更改Git工作树--worktreePR工作流轻量级分支隔离Docker容器--docker高风险实验完全隔离executor-verifier循环的优势1. 客观的代码质量保证验证者看不到执行者的思考过程避免了自我验证的偏见。这种独立性确保了代码审查的客观性。2. 可重现的失败反馈当验证失败时验证者必须提供具体的、可重现的错误信息。这避免了模糊的反馈帮助执行者快速定位问题。3. 渐进式改进循环机制允许代码在多次迭代中逐步改进。每次拒绝都带来具体的改进方向最终产生高质量的代码。4. 崩溃安全的设计所有状态都持久化到SQLite账本中即使进程崩溃或系统重启也可以使用zeroshot resume id命令恢复运行。最佳实践与注意事项1. 明确的任务定义Zeroshot最适合具有明确验收标准的任务。模糊的需求会导致验证困难。例如✅ 明确任务实现基于JWT的用户认证包含刷新令牌机制 ❌ 模糊任务让应用更快2. 合理的迭代限制在cluster-templates/base-templates/worker-validator.json中设置适当的max_iterations参数避免无限循环。3. 模型级别匹配根据任务复杂度选择合适的模型级别SIMPLE任务执行者level2 验证者level3STANDARD任务可能需要多个验证者CRITICAL任务高级模型 多个验证者4. 利用质量门控在--pr或--ship流程中Zeroshot使用质量门控确保所有配置的检查都通过后才能继续。这包括代码风格、测试通过率等要求。常见问题解答Q: executor-verifier循环会增加多少时间成本A: 虽然增加了验证步骤但减少了人工审查和修复的时间。对于复杂任务总时间通常更少因为早期发现问题避免了后续的重大重构。Q: 验证者会漏掉错误吗A: 验证者使用系统化的验证协议包括文件搜索、代码阅读和模式匹配。虽然不能保证100%完美但比单一智能体的自我验证更可靠。Q: 如何自定义验证标准A: 可以修改验证者的提示词系统消息或创建自定义的验证者智能体配置。所有配置都在JSON文件中易于调整。Q: Zeroshot支持哪些AI提供商A: 目前支持Claude Code、OpenAI Codex、Gemini CLI和OpenCode。每个提供商都有对应的适配器在src/agent-cli-provider/adapters/目录中。总结Zeroshot的executor-verifier循环代表了AI辅助编程的新范式。通过将代码编写与验证分离它解决了AI生成代码的信任问题。这种机制不仅提高了代码质量还提供了可重现的验证过程使得AI生成的代码真正适合生产环境。无论是简单的功能添加还是复杂的安全重构Zeroshot都能通过智能的循环机制确保代码质量。随着AI编程工具的普及这种分离关注点的架构将成为确保代码可靠性的关键模式。要开始使用Zeroshot只需安装并运行npm install -g the-open-engine/zeroshot zeroshot run 你的第一个任务体验真正的AI自主编码让executor-verifier循环为你把关代码质量【免费下载链接】zeroshotYour autonomous engineering team in a CLI. The agent loop produces senior-level code that you can actually trust in prod because of non-negotiable feedback from independent reviewers. Supports Claude Code, OpenAI Codex, OpenCode, and Gemini CLI with trivial setup.项目地址: https://gitcode.com/gh_mirrors/ze/zeroshot创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考