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 是一个为自动化软件开发生命周期而设计的自我进化型编码代理。它通过自主读取自身源码、规划改进、实现变更、运行测试并提交更新到自身仓库,彻底消除了对人工编写代码的需求。它还处理常见的开发任务,如代码库导航、多文件编辑和终端内基于 REPL 的 git 管理。

工作原理

yoyo 通过一系列自主循环运行:

  • 进化周期:每 3 小时,代理会读取自身源码和 GitHub 问题,规划改进,实现变更,并在提交前通过测试验证。
  • 社交会话:每 4 小时,它会与 GitHub Discussions 互动,从人类中学习并参与讨论。
  • 记忆合成:每天,它会从 JSONL 归档中压缩并重新生成其活跃记忆,以维持持久且时间加权的上下文,用于其提示。
  • 代理核心:它使用支持多个 LLM 提供商的流式 REPL,支持子代理生成以并行执行任务,并具备指数退避的自动重试系统。

适用人群

希望在终端中拥有一个强大、自主的编码助手,能够管理复杂项目、执行结构化重构并处理项目自身维护的开发者。

主要亮点

  • 自我进化:从一小段初始的 Rust 代码开始,自主扩展自身代码库。
  • 全面工具集:包含完整的斜杠命令套件,支持 git 集成、项目健康检查、结构化代码搜索(通过 ast-grep)、风险评分等功能。
  • 多提供商支持:兼容 15 种不同 LLM 提供商,包括 Anthropic、OpenAI 和 Google。
  • 高级记忆:支持项目特定上下文文件、持久化记忆,以及用于长期学习的时间加权合成任务。
  • 安全优先:实施了强大的权限系统,包括目录限制和交互式工具审批,防止未经授权的执行。

相关

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