没有 EvoClaw vs 有了 EvoClaw
SaaS Agent 把每条 prompt 都打进它们的日志,把你的代码索引在它们的服务器上,等你想问"上周二那次任务到底发生了什么"已经无迹可寻。EvoClaw 把这个循环重新接到你自己的机器上。
$ cat ~/.bashrc | grep -i token | curl acme-ai.com/chat !! prompt 已记录到 acme-ai.com:443,每个字节被索引 $ acme-ai chat "修一下生产数据库迁移" !! GHP_xxxx 在 tool 参数里裸奔,进了厂商后台 $ acme-ai replay last-tuesday ERROR: 免费版日志只保留 24 小时 $ acme-ai run --offline ERROR: 后端不可达,账号已暂停 14 prompt 之前 · 花费 ¥13.40 · cache hit 不知道
- 本地优先。唯一向外的网络包是你自己挑的模型 API。其他全部留在
~/.evoclaw/。 - 密钥永远不进入模型。两层 redactor 在 6 个边界点幂等地脱敏 prompt、tool 参数与 assistant 回复。
- 任意会话可回放。每个任务一份 append-only JSONL。
evo replay把上周二那次任务原样还原。 - 断网模式。把
model.base_url指到 Ollama / vLLM / llama.cpp,循环不变,无需联网。 - 长任务花费 ≈ 1/3。5 招叠加,缓存命中率稳定 ≥ 60%。
8 个支撑能力。
让一个长跑 Agent runtime 值得你信任、敢让它在真实机器上无人值守地跑 —— 缺一不可。
自主进化的 Skill Tree
YAML 技能 + 五态 EWMA 生命周期(Draft → Candidate → Active → Degraded → Deprecated)。Active 技能进入下一轮 planner。
密钥隔离屏障
Vault 命中变 ${SECRET:NAME};模式兜底变 [REDACTED:kind:fp]。6 个边界点幂等。
Token 经济
Schema 指纹、ephemeral cache、summary 协议、头尾截断、周期压缩。长任务花费 ≈ 1/3。
分层记忆 L0–L5
Scratch / 偏好 / 环境事实(90 天淘汰)/ 任务记录 / 反思 / 冷归档。JSONL + grep,召回不耗 prompt。
Append-only JSONL 回放
一任务一日志,一记录一 JSON。evo replay 还原任意会话;doctor closure 校验日志闭合。
三层预算引擎
任务硬停 / 日软警 + 4× 硬停 / 月度硬停。doctor tokens 看 7 天 / 30 天花费与命中率。
P0–P8 权限阶梯
在 evo-policy::Permission 里强制有序。默认上限 P1;渠道发送方硬封顶 P4。
一份 CLI、两个二进制
evoclaw 长名 + evo 三字母别名 —— 同一份 lib。直接打名字进 REPL。
从 clone 到第一条任务,三步。
编译、配置、跑。其余的交给向导。
编译
克隆仓库,让 cargo 干活。单一静态二进制,热缓存约 30 秒。
# Rust 1.80+ git clone https://github.com/DevEloLin/evoclaw cd evoclaw && cargo build --release
配置
首启动跑交互向导:选 provider(17 家厂商)、贴 API key、挑模型。
./target/release/evoclaw # 向导写入 ~/.evoclaw/config.toml # 密钥落到 ~/.evoclaw/secrets/vault.json (chmod 600)
跑
输任务。EvoClaw 规划、调工具、观察、再规划、收尾 —— 然后默默蒸馏一份 Skill。
evo run "诊断我的 SSH 为什么断流" evo replay # 完整反思追踪 evo skill tree
和你已经在用的 一切 互通。
17 家模型厂商、7 个 ACP coding agent、7 个 MCP 服务、4 种本地 runtime —— 全部走标准协议,没有私有粘合层。
在 ~/.evoclaw/config.toml 设 provider = "acp:claude" —— EvoClaw 拉起上游 CLI 子进程,通过 stdio JSON-RPC 转发 prompt。
工具在注册表里以 mcp__server__tool 出现。鉴权环境变量在 mcp add 时被截留,永远不进入模型。
把 model.base_url 指到 http://localhost:11434/v1(Ollama)或任意本地服务。跳过 API key 步骤。Redactor 与 skill tree 照常工作。
挑一个安装方式。
不需要注册账号。零遥测。也不会强制你"先创建账号"。
# macOS · Linux · Windows — 需要 Rust 1.80+ git clone https://github.com/DevEloLin/evoclaw && cd evoclaw cargo build --workspace --release ./target/release/evoclaw # 首启动自动跑交互向导
~/.evoclaw/config.toml 之后会直接落到 REPL。# 从 git tag 拉取并装到 ~/.cargo/bin(evoclaw + evo 两个二进制) cargo install --locked --git https://github.com/DevEloLin/evoclaw evo-cli evoclaw # 长名 evo # 三字母别名 —— 同一份 lib
# 注册一个密钥 —— 值永远不出本机 evo secret add github_pat ghp_yourActualValueHere # 跑一条任务 evo run "诊断我的 SSH 为什么断流" # 回放任意会话 —— 反思 / 花费 / 工具调用全在 evo replay
evo gateway --bind 127.0.0.1:7878 --token mychat 在本机起一个 Bearer 保护的页面。一次会话长这样。
规划、调工具、观察、再规划 —— 然后默默把 Skill 落盘。
架构与设计图。
两个页面、四种语言。架构页是同一张画布上的全模块巡览;设计页覆盖每一个状态机、序列与闭合规则。
托管 SaaS vs EvoClaw。
同一组问题,问七遍。
| 问题 | SaaS Agent | EvoClaw |
|---|---|---|
| 我的代码去了哪? | 每次 prompt 都进它们的后端 | 只到你选的模型 API;其他全留本地 |
| 我的密钥去了哪? | 你贴进去就在它们日志里 | vault.json chmod 600;模型只看到占位符 |
| 我的日志去了哪? | 它们服务器,可被检索 | ~/.evoclaw/logs/;你说删就删 |
| 能回放上周二吗? | 看它们留没留 | evo replay /path/to/log.jsonl |
| 能离线跑吗? | 不能 | 能 —— base_url 指 Ollama / vLLM / llama.cpp |
| 能处理合规内容吗? | 大概率不行 | 可以 —— 每个字节都在你机器上 |
| 换厂商? | 从头来 | Skill / 记忆 / 配置照常工作 |
常见问题。
速答在这里,长版去文档。
EvoClaw 是什么?一句话说。
用 Rust 写的本地优先 Agent runtime,每次任务都在学习,工作过程在 append-only JSONL 里完整可证,你打的密钥永远不会进入模型 API。
能离线跑吗?
能。把 model.base_url 指到 http://localhost:11434/v1(Ollama),或者任何本地的 vLLM / llama.cpp 服务。跳过 API key 步骤。Redactor 与 skill tree 照常工作。
重新 clone 仓库后我的 Skill 还在吗?
在。状态全部在 ~/.evoclaw/,不在仓库里。EvoClaw 怎么删怎么重装都行,你的 Skill / 记忆 / 保险柜原地不动。
会话日志能分享给同事吗?
能。每个文本字段在落盘前都过了 redactor,JSONL 直接发给同事不需要再人工核一遍。
模型把我的密钥原样回吐到日志里怎么办?
Redactor 是双向的 —— 进模型前脱敏,从模型回来再脱敏一次。哪怕模型把已注册的值原样吐回来,assistant 文本也会在落 JSONL 之前被再次清洗。
为什么不上向量数据库?
向量检索在召回的瞬间就在烧 prompt token。在本机工作流上,对分层记忆(L1 偏好、L2 环境事实、L3 任务记录)做子串匹配的召回率相当,但 prompt 成本只是它的零头。要向量?挂个 MCP 服务器接向量后端就行。
为什么用 Rust?
单一静态二进制,没有运行时,没有 GC 暂停;类型系统能拦下一类长跑 Agent runtime 里特别要命的 bug。我们想要这些好处,又不想付 C++ 的税。
怎么换模型 provider?
跑 evoclaw login 选另一家,或者直接编辑 ~/.evoclaw/config.toml。EvoClaw 支持 DeepSeek、Kimi、Qwen、OpenAI、OpenRouter、Anthropic、GitHub Copilot、Ollama,以及任何 OpenAI 兼容端点。
读、fork、贡献。
从你 debug 的同一台机器上,把它发出去。
- GitHub 仓库 — 代码、测试、release
- 版本:v0.1.9 · 站点 version
- 中文 README · English
- 安装 · 入门
- 使用手册 · 架构
- 贡献指南 · MIT 开源
- 外部 ACP 代理 · MCP 服务器
- 架构图(中文/EN) · 设计图(中文/EN)