@tom_doerr: 半自主代理通过并行实验优化代码库 https://github.com/evo-hq/evo
摘要
Evo是一个开源工具,提供半自主代理通过并行实验优化代码库,利用树搜索和多个子代理自主发现并改进指标。
查看缓存全文
缓存时间: 2026/06/03 11:48
半自主智能体通过并行实验优化代码库 https://t.co/loqIQr3RNN https://t.co/DRuS437RpG — # evo-hq/evo 源码: https://github.com/evo-hq/evo # evo PyPI (https://pypi.org/project/evo-hq-cli/) 许可协议 测试 (https://github.com/evo-hq/evo/actions/workflows/ci.yml) DOI (https://doi.org/10.5281/zenodo.20447923) 只需两条命令,即可在任何代码库上启动自动研究。 试用 · 安装 · 工作原理 · 仪表盘 · 升级 一个为你的自主框架设计的插件,通过实验优化代码 你提供一个代码库。它能自动发现需要优化的指标,搭建评估环境,然后循环运行实验——尝试各种修改,保留能提升得分的内容,丢弃无效尝试。 灵感来自 Karpathy 的 autoresearch (https://github.com/karpathy/autoresearch) ——即 LLM 自主运行训练实验以超越自身最佳得分。 Autoresearch 是一个纯粹的爬山算法:尝试修改,保留或回退,在单一分支上重复。Evo 在此想法之上增加了结构化能力: - 在贪婪爬山之上进行树搜索。 从任何已提交节点都可以分支出多个方向,探索不会局限于单一路径。 - 并行半自主智能体。 同时生成多个子智能体,每个在其独立的 git worktree 中运行。每个子智能体读取跟踪记录,形成假设,并可在其分支内运行多次迭代。 - 共享状态。 失败跟踪、注释和丢弃的假设对所有智能体可见,供其在决定下一步尝试时参考。 - 门控。 可将回归测试或安全检查作为门控。未通过门控的实验会被丢弃。 - 可观测性。 通过仪表盘监控你的实验。 - 基准发现。 discover 技能探索仓库,找出需要测量的内容,并设置评估。 支持 Claude Code、Codex、Cursor、OpenClaw、Hermes、Opencode 或 Pi。实验可在本地运行,也可在远程沙箱——Modal、E2B、Daytona、AWS、Azure、SSH 上运行。 ## 试用 两条命令: /evo:discover # 一次性代码发现:找出基准并创建针对意外变更的门控 /evo:optimize # 运行循环 discover 会询问优化目标、基准命令以及指标方向。你也可以预先填入答案跳过提问: /evo:discover 让 src/parser.py 中的 JSON 解析器更快 然后运行循环: /evo:optimize evo 会根据基准的资源特征来调整每一轮的实验规模——当一次运行需要整个 GPU 或其他独占资源时一次只做一个实验;当运行相互独立时则放宽并行度——直到得分停止提升才结束。默认情况下,它会在无人值守下运行,并通过并行子智能体推送修改;如果你希望每轮后暂停或只允许一次一个实验,请用自然语言说明。调用语法因宿主而异:Claude Code 使用 /evo:,Codex 使用 $evo,Cursor 使用 / 技能菜单,Hermes、Opencode、OpenClaw 和 Pi 使用自然语言。 ## 安装 bash # 1. evo CLI uv tool install evo-hq-cli # 2. 宿主 CLI(如果你还没有) npm install -g @anthropic-ai/claude-code # 或 @openai/codex、openclaw、@earendil-works/pi-coding-agent # Cursor:从 cursor.com(IDE)安装,或 `curl https://cursor.com/install -fsS | bash` 获取 cursor-agent CLI # 3. 插件 + 宿主钩子 evo install # claude-code | codex | cursor | hermes | opencode | openclaw | pi evo install 将插件安装到宿主市场,并准备 evo 与运行中子智能体通信所需的钩子。使用 evo doctor 验证。 对于远程后端,请安装带有相应 provider 扩展的版本:uv tool install 'evo-hq-cli[modal]'(或 [e2b]、[daytona]、[aws]、[azure]、[all])。 ### Codex 钩子信任 Codex 需要手动批准插件钩子。安装后,在 codex 中运行 /hooks 以信任 evo 的钩子——或者给 evo install codex 传递 --trust-hooks 以跳过提示。 ## 工作原理 ### 并行 编排器并行调度子智能体。每个子智能体在独立的工作空间中运行,获取共享状态(失败跟踪、注释、丢弃的假设),形成假设,编辑代码,然后运行基准。若子智能体还有迭代预算,且其先前编辑值得跟进,则在同一轮中继续在其分支上工作。 ### 前沿策略 每轮结束后,编排器选择下一个要扩展的已提交分支。可用策略: - argmax —— 扩展得分最高的分支 - top_k —— 在 K 个最佳分支间轮询 - epsilon_greedy —— 大部分时间选择最优,偶尔随机 - softmax —— 按得分加权采样 - pareto_per_task —— 保留被聚合指标掩盖的专项能力,灵感来自 GEPA (https://arxiv.org/abs/2507.19457) 在仪表盘的“前沿“选项卡中配置,该选项卡列出了每种策略的参数。 ### 跨周期扫描 在轮次之间,受 RLM (https://arxiv.org/abs/2512.24601) 启发的扫描子智能体会并行读取跟踪记录批次,并呈现复合失败模式:门控失败交集、跨跟踪的共同根本原因。发现结果进入共享状态,供下一轮的智能体在启动时读取。 ### 门控 evo 引入了门控:每次实验都会运行的通过/失败检查。未通过门控的实验即使得分超过当前最佳也会被丢弃。没有门控,搜索会找到返回常量、跳过工作或牺牲正确性换取速度的方法。任何满足退出码零为通过、非零为失败的命令都可以作为门控:测试套件、不变性检查脚本、基准保留分片上的得分下限等。门控在实验树中继承:在根节点注册的门控会应用于所有后代。更窄的门控可附加到特定分支。当 discover 从头构建基准时,它会自动附加一个保留分片得分下限门控。当基准已存在于仓库中时,门控是可选的。 ## 实验运行位置 | 后端 | 运行位置 | 安装 | |—|—|—| | worktree (默认) | 每个实验使用本地 git worktree | 内置 | | pool | 重用一组固定本地工作空间 | 内置 | | ssh | 你自己的 SSH 主机 | 内置 | | modal | Modal 无服务器云 | uv tool install 'evo-hq-cli[modal]' | | e2b | E2B 云沙箱 | uv tool install 'evo-hq-cli[e2b]' | | daytona | Daytona 云工作空间 | uv tool install 'evo-hq-cli[daytona]' | | aws | AWS EC2 沙箱 | uv tool install 'evo-hq-cli[aws]' | | azure | Azure 虚拟机 | uv tool install 'evo-hq-cli[azure]' | 在仪表盘的“后端“选项卡中选择并配置。 ## 仪表盘 仪表盘在 /evo:discover(或 evo init)时自动启动,并在聊天中打印 URL: 仪表盘已启动:http://127.0.0.1:8080 (进程ID 12345) 如果 8080 端口已被占用,evo 会自动递增到下一个可用端口(8081、8082……)并打印出来。后续运行会复用已选端口。 也可以手动启动: bash uv run --project /path/to/evo/plugins/evo evo dashboard --port 8080 ## 升级 bash evo update # 更新 CLI 及每个已安装的宿主 evo update # 更新一个宿主(同时将 CLI 升级至匹配版本) evo update --version 0.4.1 # 锁定到某个发行版 每次 evo install / evo update 都会确保 PATH 上的 CLI 版本与刚安装的宿主插件版本保持一致(底层执行 uv tool install --force evo-hq-cli)。若不指定 --version,则锁定到最新的稳定发行版,因此对一个预发行版运行未锁定版本的 evo install/evo update 会将 CLI 拉回稳定版——Alpha 版本需要同时锁定 CLI 和插件版本(参见测试预发行版(alpha))。 CLI 二进制文件、技能文件和钩子协议共享相同的线格式——早期版本中让它们不一致会导致静默失败。可编辑安装(uv tool install --editable、pip install -e)会被检测到并保持不变。 更多信息参见 evo update --help,包括 --force、--scope 和其他标志。 ### 从任何 0.4.4 之前的版本迁移 bash uv tool install --force evo-hq-cli && evo update --force --force 会清除宿主插件缓存并重新安装,以绕过 anthropics/claude-code#14061 (https://github.com/anthropics/claude-code/issues/14061) 问题:/plugin update 返回成功但并未真正替换缓存的插件文件。 ### 测试预发行版(alpha) uv 和 pip 默认跳过预发行版。要安装 alpha 版本,需同时锁定 CLI 版本和宿主插件标签: bash uv tool install --force 'evo-hq-cli==0.4.1a2' && \ evo update --version 0.4.1-alpha.2 --force 将目标 alpha 版本替换为实际值。CLI 使用 PEP 440 格式(0.4.1a2);市场标签使用连字符格式(v0.4.1-alpha.2)。 ## 开发安装 用于 evo 自身开发: bash git clone https://github.com/evo-hq/evo cd evo uv tool install --editable plugins/evo ## 许可协议 Apache-2.0。详见 LICENSE。 ## 引用 如果在你的作品中使用了 evo,请引用它(参见 CITATION.cff): bibtex @software{bishoyi_evo, author = {Bishoyi, Alok Kumar}, title = {{evo: an autoresearch orchestrator for codebases}}, url = {https://github.com/evo-hq/evo}, doi = {10.5281/zenodo.20447923}, year = {2026} }
相似文章
@tom_doerr:通过持久化多智能体记忆自动化研究工作流程 https://github.com/EvoScientist/EvoScientist…
EvoScientist 是一个开源框架,利用具备持久化多智能体记忆的自进化 AI 科学家来自动化研究工作流程,采用"人在回路外"范式,实现自主研究探索与洞察生成。
EvoMaster:构建可进化大规模自主科学智能体的基础框架
# 论文页面 - EvoMaster:构建可进化大规模自主科学智能体的基础框架 来源:[https://huggingface.co/papers/2604.17406](https://huggingface.co/papers/2604.17406) 作者:,,,,,,,,,,,,,,,,,,,,, ## 摘要 EvoMaster 是一个可扩展、自我进化的智能体框架,专为大规模科学发现设计,支持在实验周期中迭代优化假设并持续积累知识。大语言模型与智能体的融合正在催生“智能体科学”新时代。
EvoMap/evolver
Evolver 是一个由 GEP 驱动的 AI 代理自演化引擎,可自动化提示词优化并创建可审计、可复用的演化资产。该项目正从完全开源过渡到源代码可用,同时保持与现有 MIT 和 GPL-3.0 版本的向后兼容性。
EvoSci:一种受生物启发的多智能体框架,用于科学发现的演化
EvoSci提出了一种受生物启发的多智能体框架,将进化算法与知识图谱建模相结合,以迭代生成、评估和完善研究想法,在同行评审评估中取得了最佳性能。
@tom_doerr: 用14个专业AI代理运营虚拟公司 https://github.com/MaxMiksa/Auto-Company…
Auto-Company 是一个开源项目,它协调14个自主AI代理,实现24/7全自动化公司运营,涵盖构思、编码、部署和市场营销,无需人工干预,由Claude Code和Codex CLI驱动。