这是 MetaClaw 的核心思路:不是在实验室里预训练,不是人工整理数据集,而是从真实对话中持续学习,边用边进化

GitHub:aiming-lab/MetaClaw


它解决什么问题

现在的 AI Agent(比如 OpenClaw)有一个根本性的静态问题:你使用它,它不会因此变得更好。每次会话结束,它就忘掉一切;你踩过的坑,下次还会再踩;你纠正过的习惯,它不会记住。

MetaClaw 在你的 Agent 和 LLM API 之间插入一个代理层,拦截每一次对话,从中提取学习信号,然后把这些信号转化为两件事:

  1. Skills:总结成可复用的技能文件,下次自动注入到对话上下文中
  2. RL 微调:用真实对话做强化学习,直接更新模型权重(LoRA)

结果是:用得越多,它越懂你。


三种运行模式

MetaClaw 提供三档,按需选择:

Skills-only(最轻量)

不需要 GPU,不需要任何训练基础设施。

代理层拦截对话 → 自动总结出 Skill 文件 → 下次对话时注入相关 Skill。

内置 40+ 预设技能(涵盖编程、安全、Agent 任务),用的时候自动按需检索注入,不占多余 context。

metaclaw start --mode skills_only

RL Mode(强化学习)

在 Skills 之上,加一个 PRM 裁判模型异步打分,用 GRPO 算法做 LoRA 微调。

每次对话 → 裁判评分 → 批量触发 LoRA 训练 → 权重热更新。

还有 OPD(On-Policy Distillation)选项:用更大的"老师模型"蒸馏小模型,成本可控地提升能力。

MadMax Mode(默认推荐)

Skills + RL + 智能调度器。

核心设计:RL 训练不打断你的正常使用。调度器会检测三个窗口才触发训练:

  • 睡眠时间(默认 23:00–07:00)
  • 设备闲置超过 30 分钟
  • 你在开 Google Calendar 会议时

用的时候不训练,训练的时候你不用——醒来发现龙虾昨晚悄悄学了一晚上。

metaclaw start  # 默认就是 madmax

怎么用

两条命令:

metaclaw setup   # 一次性配置向导
metaclaw start   # 启动

向导会问你:

  1. 选哪个 Agent(OpenClaw、CoPaw、IronClaw、PicoClaw、ZeroClaw、NanoClaw、NemoClaw……)
  2. 选 LLM 提供商(Kimi、Qwen、MiniMax 或自定义)
  3. 是否开启 RL 训练

MetaClaw 会自动把你选的 Agent 的模型请求路由到自己的代理端口,不需要改 Agent 的任何配置,透明接管。

支持的 Agent 列表:

Agent 适配方式
OpenClaw 自动修改 models.providers 配置 + 重启 gateway
CoPaw 热更新 ~/.copaw/config.json
IronClaw 修改 .env,重启 service
PicoClaw 注入 model_list 条目
ZeroClaw 修改 config.toml
NanoClaw 通过 Anthropic-compatible 端点适配
NemoClaw 通过 OpenShell 注册 provider

技术底层

Skills 机制

每次会话结束后,Evolver LLM 分析对话内容,自动生成 Markdown 格式的 Skill 文件,存入 ~/.metaclaw/skills/。下次对话时按语义相关度检索注入(支持 template 模式和 embedding 模式)。

从失败的对话里也能提炼 Skill——踩坑本身变成了训练数据。

RL 训练

训练 backend 支持 Tinker(云端 LoRA)和 MinT 两个路径,互相兼容。用 GRPO 算法做 policy optimization,支持 KL 散度约束防止偏离太远。

整个流程完全异步:推理、打分、训练三个组件解耦,Agent 回复不会因为训练而变慢。


为什么这件事很重要

大多数 AI 工具的改进靠的是模型厂商迭代,用户只是等待。

MetaClaw 的方向是:用你自己的使用数据,在你自己的机器上,让你自己的 Agent 变强——不需要发数据给任何人,不需要等官方更新。

不需要 GPU 集群,不需要机器学习背景,两条命令就跑起来。MIT 协议开源,完全自托管。

这是"个人化 AI"的一种具体实现方式:不是通用模型适配所有人,而是每个人的 Agent 都在独立进化。