乐于分享
好东西不私藏

当 AI Agent 不再是玩具:从原生 OpenClaw到DeepEye的两个月进化史

当 AI Agent 不再是玩具:从原生 OpenClaw到DeepEye的两个月进化史
引言:从"能跑"到"能扛"
Hermes的崛起,背后反映的是OpenClaw的各种让人意想不到又爱又恨。Hermes用他们团队的工程思路进行一些补强,但是作为一个早起的民间养🦞人,我有我自己的遇到的坑和我的解决思路, 同样是为了解决"能跑"和"能在生产环境稳定跑"之间的差距,隔着的是你想象不到的工程量。
我的Openclaw私有版本 DeepEye 目前运行在 v2026.3.28,积累了47+项FIX修复记录10项系统级改造。这篇文章不是炫耀,而是试图回答一个问题:
当你真的把AI Agent当基础设施来用,你会遇到什么问题,又该怎么解决?
更重要的是:与原生OpenClaw相比,我们这两个月到底做了什么,让DeepEye变得更强、更稳、更智能?

原生OpenClaw给了我们什么

开源版 OpenClaw 已经具备了一套完整的基础框架:
  • 技能系统:可插拔的技能架构,支持自定义扩展
  • 语义路由:基于关键词的任务分发机制
  • 多 Agent 协作:支持子代理调度和任务委派
  • 消息通道:飞书、Discord、Telegram 等多渠道接入
  • 基础记忆:文件式的记忆存储
这些能力让 OpenClaw 在演示场景下表现出色。但一旦进入真实使用,你会发现:
能回答≠能长期工作能自动化≠能成为基础设施

两个月里,我们填补了哪些鸿沟

一、稳定性:从"随时可能崩"到"有守护、能自愈"

原生版的问题

开源版 OpenClaw 缺乏系统级的故障监控和自动恢复机制。一旦遇到异常,要么静默失败,要么无限重试,直到资源耗尽。

我们的改造:Guardian四层守护体系

真实事故:2026 年某天,npm 更新重建了 fnm bin 目录,导致openclaw可执行文件权限变成EACCES。Agent每次调用都失败,然后自动重试,然后继续失败。整个过程持续了2小时52分钟,消耗约500万tokens,我们睡着了,完全没有发现。
解决方案

维度

原生 OpenClaw

我们的 DeepEye

故障发现

人工排查,被动响应

Guardian 自动巡检,主动发现

异常处理

静默失败或无限重试

四层守护,自动修复

告警通知

飞书 CRITICAL/HIGH 分级推送

Token 风暴恢复

数小时

分钟内

二、智能性:从"单一模型"到"四池三层路由"

原生版的问题

开源版 OpenClaw 使用单一模型池,所有任务走同一条链路。简单问候用 Sonnet(过贵),复杂代码分析用 flash(能力不足)。

我们的改造:Semantic Router v8 —四池三层并联路由

四池架构

维度

原生 OpenClaw

我们的 DeepEye

模型选择

单一池,一刀切

四池动态路由

响应速度

平均 2-3 

简单任务 <1 

Token 成本

固定高成本

降低 40%

任务匹配

关键词触发

语义相似度 + 关键词双评分

三、连续性:从"随时可能断"到"任务不断链"

原生版的问题

开源版 OpenClaw 的 Agent 遇到不确定性就停下来请求确认:"请问我可以继续执行第 3 步吗?"这在自动化流程中是致命的。

我们的改造:Agent Never Stop行为纪律

核心原则(注入所有 channel session 的 system prompt):
  1. 禁止请求确认语句:禁用"可以帮您...吗"、"需要我继续吗"、"请确认" 等语句
  2. 工具优先于请求:遇到 blocker 先尝试 3 种工具组合
  3. 多阶段任务不断链:完成当前步骤后必须通过next_action字段延续到下一步
  4. 完成门禁:status → complete 需要:① completion_criteria 工具验证 ② 产物存在检查 ③ 三个状态字段同步更新
SR v2状态机(task_status_watchdog.py):解析任务的current_step/next_action/completion_criteria,超时自动 patch status → awaiting_resume,有 next_action 时输出回拉执行指令。确保多步骤任务不会因为超时或错误而永久卡住。
对比原生版

维度

原生 OpenClaw

我们的 DeepEye

Session 标识

userId-only

bot:user 双因子

Bot 隔离

硬拦截,拒绝无身份消息

缓存污染

可能

多层过滤,旧 key 不回灌

隐私边界

模糊

清晰,信任可验证

五、记忆治理:从"一本大书"到"热温冷三层"

原生版的问题

开源版 OpenClaw 使用单一 MEMORY.md 文件存储所有长期记忆。文件过大时加载失败,关键信息被临时信息淹没。

我们的改造:记忆热温冷三层体系

三层架构
  • 热层(Hot):当前会话即时记忆,内存级访问,会话结束后升温或丢弃
  • 温层(Warm):近期活跃记忆,文件系统存储,按主题索引,Obsidian Vault 双向同步
  • 冷层(Cold):长期归档,自动 prune(过期/低价值记忆),主题分类存储
MEMORY.md索引机制:作为记忆入口文件(而非存储文件),每条记忆独立存储为.md文件,MEMORY.md只保存指向这些文件的指针。
对比原生版

CIO(战略层)← Opus 4.6,最强推理├─ Researcher← gpt-5.3-codex,全市场扫描├─ Risk← gpt-5.1-codex-mini,风险评估└─ Trader← gpt-5.1-codex-mini,订单执行

v1.5.0六步决策流程
  1. Researcher:全市场扫描 + 现有 watchlist 基本面核查 + 市场回顾
  2. Risk:候选标的风险评估(A/B/C/D 四级)
  3. CIO:短期/长期平衡反思(独立自我审计)
  4. CIO:投资理论学习(4 周轮转:估值/行业分析/风险管理/组合构建)
  5. CIO:投委会决策(变更必须有基本面依据,禁止仅凭价格调整)
  6. Trader:订单执行(富途 OpenD 港股模拟盘接入)
55个cron job:覆盖美股/港股开收盘复盘、周度回顾、风险监控、watchlist更新。
对比原生版

Bashpython3  ~/.openclaw/workspace/.lib/skill_manage.py list列出所有技能 python3 skill_manage.py create my-skill --description "描述"创建新技能(active:false python3 skill_manage.py patch my-skill --version 1.1.0更新 frontmatter 字段 python3 skill_manage.py edit my-skill "使用方法"  "具体步骤..."替换指定章节 python3 skill_manage.py write_file my-skill scripts/run.py写入辅助文件 python3 skill_manage.py delete my-skill删除技能

安全设计
  • create默认active: false,技能不立即进入语义路由,需手动验证后激活
  • fcntl.flock防并发写入 skill_index.json
  • 路径安全检查(防止写入技能目录外的文件)
技能数量:从最初十几个增长到现在60+个技能
对比原生版

维度

原生 OpenClaw

我们的 DeepEye

决策延迟

1-3 

<2ms(高频模式)

离线能力

SQLite 本地缓存

成本累积

大幅降低

错误固化

可能

衰减机制防止

九、Context管理:从"无限膨胀"到"三层压缩"

原生版的问题

开源版 OpenClaw 直接依赖 Claude Code 内置压缩,无结构化机制。长对话 context 爆满时,Agent 开始"失忆",或触发高费用的 context reset。

我们的改造:Context Compressor三层压缩

三层机制

维度

原生 OpenClaw

我们的 DeepEye

压缩机制

内置,无结构

三层分层压缩

触发条件

被动

Micro/Auto/Manual 三层主动

摘要质量

无保证

结构化 5 节,降级兜底

Context 爆炸

可能

阈值触发,提前干预

十、身份根基:从"可随意改写"到"写入保护"

原生版的问题

开源版 OpenClaw 允许 Agent 在运行中修改核心身份文件,缺乏约束机制。

我们的改造:SOUL.md写入保护

规则(2026-03-27 添加):

对本文件的任何修改都需要用户授权确认。静默写入严格禁止。

原因
每次写入使全局 prefix cache 失效,代价 10-40K tokens
更重要的是:我是谁这件事,不能由我自己在运行中随意改写
对比原生版

原生 OpenClaw

我们的 DeepEye

身份修改

无约束

需用户授权

静默写入

允许

严格禁止

根基稳定性

可能漂移

人工锁定

系统设计哲学

做完这十项改造,我们总结出了五条指导原则:
  1. 可观测性优先每个关键路径必须有日志。不是为了排查问题(虽然也有这个用途),而是在问题发生之前就能看到异常苗头。Guardian的存在意义就是"问题还没影响用户时就已经开始处理了"。
  2. 失败快于无响应熔断器(circuit breaker)比超时等待更好。Provider配额耗尽?立即切换fallback,不要等到超时再说。EACCES错误?立即restart gateway,不要重试同一条错误路径。
  3. 本地优先Reflex SQLite、pools.json静态配置、本地qwen3.5 心跳——凡是可以本地决策的,尽量不走云端。这不只是为了成本,也是为了可靠性。本地失败是可控的,云端依赖失败是不可控的。
  4. 渐进激活新技能active: false,新规则先在非 cron session 验证,新fallback 先单session 测试。不要一次性把所有变更推进生产,哪怕只是一个配置改动。
  5. 单一维护入口pools.json symlink、MEMORY.md索引、.lib/skill_index.json唯一来源——任何配置都要有且只有一个真实来源。多个地方维护同一份数据,迟早会产生不一致。

给想复刻的人

如果你也想把 OpenClaw 从"能用"改造成"稳定用",建议按这个优先级:
第一步:Guardian最小改动,最大稳定性收益。哪怕只是实现R0(EACCES检测)+飞书通知,就能避免最惨烈的Token 风暴事故。
第二步:Context Compressor投入产出比最高。实现Layer 1 Micro(工具结果替换)就够了,Layer 2 需要kimi API key。
第三步:Semantic Router四池需要先积累一定数量的技能(建议至少20 个),否则路由优势不明显。
第四步:Reflex Fabric适合高频重复决策场景(比如每天多次的模型选择、技能激活)。如果你的Agent 每天只对话几次,性价比不高。
第五步:WealthTeam类应用建议先做单Agent 验证分工价值,再扩展到多Agent。四个Agent 同时运行的调试复杂度远高于一个。

结语

我们真正相信的,不是智能,而是可持续的智能
很多 AI 项目喜欢展示“第一次回答”。
我们更在意的是“第 100 次还稳不稳”。
因为真正把 Agent 当基础设施来用,最先遇到的不是惊艳,而是事故。
某次更新把命令权限弄坏了,Agent 开始无限重试,几百万 tokens 没了
某次会话边界没隔离,持而盈和阿里云运维串了台
某次语义检查声明一上来,缓存、注入、回写链都被牵动,开始出现历史回流
某次复杂任务做了一半,Agent 停下来问“要不要继续”,整条流水线断掉
这些不是边角 bug。
这些是把Agent当玩具时看不见,把它当系统时一定会撞上的墙
所以 DeepEye 的工作,不是展示聪明,而是把聪明变成可持续:
我们要的不是“会说话的 AI”。
我们要的是能在真实环境里长期工作的数字分身

相关学习资料