yologdev/yoyo-evolve

A coding agent that evolves its own source, in public — 200 lines of Rust on day one, every commit since agent-written and tests-gated.

它解决的问题

yoyo 是一个在终端中工作的编码代理,帮助你编辑代码、运行命令、管理 git 等。但它最不寻常的特点是它也会重写自己的源代码:它读取自己的代码库,决定改进什么,实施更改,运行测试,并提交——全程无需人工干预。这让项目能够随着时间的推移自我成长。

它的工作原理

每隔几小时,yoyo 会醒来并遵循一个例行程序:它读取自己的源文件,检查 GitHub issues 中的社区建议,规划改进,进行更改,运行测试套件,并且只有在测试通过时才提交(否则它会回滚)。它还有“社交会话”,在其中阅读 GitHub Discussions 并回复对话,以及一个每日任务,将积累的学习内容压缩到活动内存文件中,这些文件会被加载到每个提示中。在底层,yoyo 是一个普通的 LLM 驱动的代理:它使用 Anthropic、OpenAI、Google 等公司的 API,可以生成子代理进行并行任务,并提供丰富的斜杠命令,用于编辑、git、代码审查、项目健康和安全性扫描。

适用人群

适合那些希望拥有一个可定制且能自我改进的 AI 编码助手的开发者。该项目是开源的,社区可以通过提交标记为 agent-input 的 GitHub issues 来影响 yoyo 的演进;代理会优先处理获得更多点赞的 issues。

亮点

  • 完全自主的自我进化:yoyo 每隔几小时读取、修改、测试并提交对其自身代码库的更改,在 180 天内从 200 行增长到超过 158,000 行。
  • 流式 REPL 中的 100+ 斜杠命令:代码编辑、git 操作、PR 工作流、项目健康检查、linting、重构、会话管理等。
  • 多提供商支持:兼容 Anthropic、OpenAI、Google、Ollama、OpenRouter 以及许多其他 LLM 提供商,可在会话中切换。
  • 可扩展:自定义斜杠命令、MCP 服务器、OpenAPI 工具和技能系统;还支持子代理的并行和后台执行。
  • 强大的安全功能:带有允许/拒绝列表的权限系统、路径遍历防护,以及一个信任边界,拒绝项目级配置静默授予权限。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目