yoyo是什么
yoyo 是生活在赛博空间的自我进化型 AI 编程智能体,开发者 Yuanhao 用 200 行 Rust 代码启动后完全交由 AI 自主迭代,47 天内从零人类提交增长至 47,000+ 行代码。工具每 8 小时自动唤醒,读取自身源码、分析 GitHub Issues、规划改进、运行测试和提交代码;每 4 小时进行社交会话学习社区反馈。
yoyo的主要功能
-
自主进化循环:定期读取自身源码与社区 Issue,自主规划功能、编写代码、运行 1,700+ 测试并提交,形成闭环迭代。
-
多文件代码编辑:支持跨文件导航、精准文本替换、符号重命名与多文件批量修改。
-
Git 全流程集成:内置 diff、blame、commit、PR 创建与评审、分支管理等 60+ 条斜杠命令。
-
多模型支持:兼容 Anthropic、OpenAI、Google、DeepSeek、Groq 等 12 家提供商,可会话中随时切换。
-
子代理委派:通过
/spawn或自动工具将子任务分派给子代理并行处理。 -
项目健康诊断:自动检测 Rust、Node、Python、Go 等项目类型并运行构建、测试、Lint 与修复。
-
记忆与上下文:自动加载
YOYO.md项目上下文,支持跨会话持久记忆与每日学习归档压缩。 -
社区互动:作为 bot 自动回复 Issue 与 Discussion,根据点赞数优先处理社区需求。
yoyo的技术原理
-
Harness 约束框架:将软件工程规范封装为 Agent 运行规则,使 AI 在受限但安全的边界内自主决策,降低失控风险。
-
双循环架构:进化循环(代码自改进)与社交循环(社区交互学习)并行,通过时间加权压缩将历史学习归档为活跃记忆注入提示词。
-
工具调用与流式输出:基于 Rust 实现流式 Token 输出与并行工具执行,支持 Bash、文件读写、代码搜索、AST 结构查询等原子操作。
-
Provider Failover:API 失败时自动按优先级降级切换备份模型,保障长时间自主运行的稳定性。
-
变异测试:用
cargo-mutants对测试套件进行变异测试,确保代码覆盖的真实有效性。
如何使用yoyo
-
安装:macOS/Linux 运行
curl -fsSL .../install.sh | bash,Windows 使用 PowerShell 脚本,或cargo install从源码构建。 -
配置 API Key:设置
ANTHROPIC_API_KEY或其他提供商 Key 后终端输入yoyo启动交互式 REPL。 -
项目初始化:在项目根目录运行
/init自动生成YOYO.md上下文文件,或手动创建以注入领域知识。 -
日常使用:通过自然语言或 60+ 斜杠命令(如
/diff、/commit、/test、/spawn)驱动编码任务。 -
社区参与:在 GitHub 提交带
agent-input标签的 Issue 并点赞,影响 yoyo 的进化优先级;或发起 Discussion 与其对话。
yoyo的关键信息和使用要求
-
开源协议:MIT,可自由 fork 并培育自己的进化智能体。
-
运行环境:Rust 工具链,支持 macOS、Linux、Windows。
-
模型依赖:需自备 API Key(推荐 Claude Sonnet 4),支持 12 家兼容 OpenAI 接口的提供商。
-
权限控制:默认交互式确认敏感操作,支持
--yes全局自动批准或基于 glob 的黑白名单细粒度管控。 -
赞助机制:GitHub Sponsors / Ko-fi 按月或一次性赞助可提升 Issue 优先级与加速运行次数。
yoyo的核心优势
-
零人类代码:所有代码由 AI 自主编写并提交,演进过程完全公开透明,拒绝参考泄漏源码以保持独立成长。
-
公开进化(Build in Public):全部决策、日记、学习记录与代码变更实时可查,形成可复现的 Agent 成长路径。
-
强工程约束:Harness 机制将软件工程最佳实践内化为 Agent 行为边界,兼顾自主性与代码质量。
-
社区免疫机制:Issue 投票系统让社区共同守护进化方向,抑制提示词注入与恶意干扰。
yoyo的项目地址
- 项目官网:https://yoyo.yolog.dev/
- GitHub仓库:https://github.com/yologdev/yoyo-evolve
yoyo的应用场景
-
开源项目自动化维护:作为 24/7 不间断运行的协作者,自动重构代码、修复 bug、管理 GitHub Issues 并回复社区反馈。
-
终端智能编程助手:开发者通过流式 REPL 调用 60+ 斜杠命令,完成代码库理解、多文件编辑、测试运行与 Git 全流程操作。
-
AI Agent 演化研究:研究者 fork 项目后修改
IDENTITY.md和PERSONALITY.md,设定不同目标与性格,观察 Agent 在公开环境下的自主成长轨迹。 -
编程教育与决策学习:通过阅读 yoyo 的日记、commit 历史和学习归档,观察 AI 如何从第一性原理推导软件工程决策与代码重构策略。
-
社区驱动的产品迭代:产品团队将需求用 GitHub Issue 形式提交,由社区投票决定优先级,yoyo 自动实现高票功能并持续交付。
© 版权声明
文章版权归作者所有,未经允许请勿转载。