Ouroboros 自演进代理
具持续记忆、可审查自我修改能力的本地通用开发代理。
这个 Agent 能做什么,适合哪些场景?
Ouroboros 是一个可作为原生桌面应用或无界面 CLI 运行的开源通用 AI 代理。其核心位于 `ouroboros/`,Web 界面位于 `web/`,进程管理层位于 `supervisor/`;身份、记忆、历史、日志和技能保存在本机 `~/Ouroboros/data/`。它可在独立 Git 工作区中执行任务,并以补丁和 JSON 结果等可审查产物输出,而自身仓库与治理边界保持分离。运行时可配置远程模型提供商、兼容端点或本地 GGUF 模型。项目还提供受管理的任务、进度流、计划任务、后台意识和专家子代理协作机制。
通过 ouroboros server 启动本地运行时,并在默认 127.0.0.1:8765 提供浏览器界面。CLI 的 ouroboros run 可启动并执行任务,--workspace 指向外部 Git 工作树,--memory-mode forked 使用分叉记忆,--patch-out 与 --result-json-out 分别导出补丁和 JSON 结果;--jsonl 输出机器可读事件流,--detach 配合 ouroboros tasks watch <task_id> 跟踪异步任务。它可调度任务、输出进度、日志和产物,并通过 /evolve on|off、/review、/bg start|stop|status 管理自主演进、深度审查和后台意识。其可编辑范围包括应用代码、架构、提示词、工具和依赖,变更以 Git 历史、审查证据、受保护表面和重启检查保持可追溯。
- 需要在独立 Git 工作树中修复测试的开发者,可用 `--patch-out result.patch` 获取可审查补丁。
- 需要让本地常驻代理执行夜间维护检查的工程团队,可用 `ouroboros schedule add` 创建 cron 任务。
- 希望在桌面界面中查看专家子代理并行研究、构建和汇总结果的个人开发者。
- 需要以脚本或 CI 调用代理、消费 JSONL 事件流并轮询任务结果的自动化团队。
- 希望让代理跨重启保留任务历史、记忆和反思记录的本地优先使用者。
这个 Agent 有哪些优点和局限?
- 桌面应用与网关式 CLI 共用同一受管理任务模型,可统一查看任务、日志、产物和计划。
- 持久身份、记忆、对话、知识、反思和版本历史均保留在本机,并跨重启延续。
- 外部项目在独立 Git 工作树中运行,并能导出补丁和 JSON 结果,降低与代理自身仓库混杂的风险。
- 支持远程提供商、兼容端点和本地 GGUF 推理,部署路径不限定于单一云端模型。
- 源码运行需要 Python 3.10+、Git 和依赖安装;使用 GitHub 集成时还需要可选的 GitHub CLI。
- 执行任务仍需远程提供商 API 密钥或本地 GGUF 模型;模型费用、硬件需求和模型表现取决于所选配置。
- 外部工作区必须是独立 Git worktree 根目录,且不得与 Ouroboros 自身仓库或数据目录重叠。
- 默认仅绑定回环地址;若暴露到非本地网络,必须设置 `OUROBOROS_NETWORK_PASSWORD` 或使用明确受信任的外部访问层。
- README 中的基准结果标注为自报,部分提交或追踪证据仍处于开放或待发布状态。
如何安装或部署这个 Agent?
源码安装:git clone https://github.com/razzant/ouroboros.git,cd ouroboros,python3.11 -m venv .venv,source .venv/bin/activate,python -m pip install --upgrade pip setuptools wheel,python -m pip install -r requirements.txt,python -m pip install -e . --no-deps。启动:ouroboros server,然后打开 http://127.0.0.1:8765。首次运行需至少配置一个受支持远程提供商的 API 密钥,或配置本地 GGUF 模型。macOS Apple silicon、Linux x86_64 和 Windows x64 也提供发行版安装包。
如何使用这个 Agent?
先启动 ouroboros server,在首次向导中设置模型访问、审查策略和预算。基本检查可运行 ouroboros status;执行任务可运行 ouroboros run --start "2+2?"。对外部项目使用独立且不与 Ouroboros 仓库或数据目录重叠的 Git 工作树,例如:ouroboros run --start --workspace /path/to/project --memory-mode forked --patch-out result.patch --result-json-out result.json "Investigate the task, act, and verify the result"。
这个 Agent 与同类方案有什么区别?
项目的基准表在特定模型与测试框架下,将其自报结果与 Claude Code、Codex CLI、Cursor CLI、Hermes 和 Pointer 等作比较;这些是模型匹配的评测结果,不构成跨模型或通用产品能力的直接等价结论。