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。
  • 高階記憶:支援專案特定上下文檔案、持久化記憶,以及用於長期學習的時間加權合成工作。
  • 安全優先:實施堅固的權限系統,包含目錄限制與互動式工具審核,防止未經授權的執行。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案