← LeisureLinux 文章索引
LeisureLinux · 微信公众号文章

从OpenClaw到Codex:52个AI Agent技能的搬家实战

AI/Agent 阅读原文(微信)↗

150+ 技能精简到 52 个,一次 AI Agent 技能体系的「断舍离」

下午花了点时间,把 OpenClaw 上的技能库搬到了 Codex。不是简单的复制粘贴——150 多个技能里,真正值得留下的只有 52 个。剩下的,要么功能重叠,要么早已过时。

这篇文章记录整个搬家过程:怎么盘点、怎么分批、踩了什么坑、最终留下了什么。

为什么要搬?

OpenClaw 是我自建的 AI Agent 平台,跑了大半年,技能越攒越多,到 150+ 的时候出了问题:

  • 选择困难:每次让 Agent 干活,它要在 150 个技能里挑,经常挑错
  • 维护成本:技能之间依赖关系乱如麻,改一个崩一片
  • 启动变慢:技能列表太长,上下文窗口吃紧

Codex 的技能机制更简单——一个目录、一个 SKILL.md、一段 YAML frontmatter。没有复杂的依赖声明,没有运行时注册。技能就是文档,文档就是技能。

简单,就是优势。

搬家前的盘点

搬家之前先做了一次「大扫除」。OpenClaw 的技能分散在两个目录:

  • ~/.openclaw/workspace/skills/:主力目录,120+ 个
  • ~/.openclaw/skills/:早期实验,30+ 个

很多技能是同一功能的多个版本,比如股票分析就有 4 个不同版本。内容创作类更是重灾区——写作、润色、排版、SEO,每个环节都有两三个技能在竞争。

盘点结论:真正独立、有价值的技能不到 60 个

五批搬家策略

没有一口气全搬,而是分成五批,按优先级逐批迁移:

第一批:工具类(10 个)

最基础的能力——文件转换、图片生成、drawio 画图、joke 讲笑话。这些是 Agent 的「手脚」,先搬。

第二批:内容创作(12 个)

写作、调研、文案、编辑、SEO、站点架构。合并了重复项,比如原来有三个写作技能,最后只留了一个 content-research-writer

第三批:LeisureLinux 专用(5 个)

公众号写作计划、排版引擎、Markdown 转微信文章、去 AI 痕迹。这些是公众号生产线的核心。

第四批:阅读与学习(8 个)

微信读书、电子书下载、找书、NotebookLM、费曼学习法。知识输入链路。

第五批:金融分析(17 个)

A 股技术分析、东方财富数据、同花顺系列(行情/财务/行业/基金/期货/可转债/ETF 筛选)。这是最大的一批,也是最有价值的一批。

踩坑记录坑一:YAML frontmatter 缺失

搬过来之后,Codex 报了四个警告:

⚠ diary-writer/SKILL.md: missing YAML frontmatter delimited by --- ⚠ ebook-download/SKILL.md: missing YAML frontmatter delimited by --- ⚠ find-the-book/SKILL.md: missing YAML frontmatter delimited by --- ⚠ markdown-to-wechat-article/SKILL.md: missing YAML frontmatter delimited by ---

Codex 要求每个 SKILL.md 必须以 —— 包裹的 YAML frontmatter 开头,包含 namedescription 字段。OpenClaw 没有这个要求。

修复很简单——给每个文件加上:

name: diary-writer description: 一个简单的日记记录系统...

四个文件,两分钟搞定。但如果不修复,Codex 就不会加载这些技能。

教训:不同平台对「技能」的定义不同,搬家不是复制文件,是适配协议。

坑二:技能描述太长

有些 OpenClaw 技能的描述写了几百字,Codex 的技能列表会把所有描述加载到上下文里。描述太长,直接挤占有效 token。

解决:每个技能的 description 压缩到 1-2 句话,说清楚「什么时候用」就行。

坑三:路径依赖

OpenClaw 的技能经常引用 ~/.openclaw/workspace/ 下的脚本和配置。搬到 Codex 后路径全变了。

解决:把依赖的脚本也搬过来,或者改成相对路径。对于公众号发布脚本 wechat_draft_api.py,它跑在 wpad.lan 上,本地只需要知道调用方式就行。

搬家后的成果

最终 Codex 里留下 52 个技能,按类别分布:

类别 数量 代表技能
工具类 8 drawio-generator, md-to-image, x2md
内容创作 10 content-research-writer, copywriting, humanizer-zh
LeisureLinux 5 leisurelinux-writing, gzh-design, markdown-to-wechat-article
阅读学习 6 微信读书, ebook-download, feynman-learning
金融分析 17 hithink-* 系列, stock-analysis, eastmoney-stock
企业微信 6 wecomcli-* 系列

从 150+ 到 52,砍掉了 2/3。但实际能力没缩水——因为砍掉的都是重复和低价值的。

几点反思

1. 少即是多

技能不是越多越好。Agent 的选择能力和人类一样——选项太多反而决策瘫痪。52 个技能,每个都有明确的触发场景,Agent 用起来反而更准。

2. Frontmatter 很重要

看似形式主义的 YAML 头,实际上是技能的「身份证」。没有它,Codex 不知道这个技能叫什么、什么时候该用。写技能的时候,先想清楚 description,这比写正文更重要。

3. 分批迁移是对的

一口气搬 150 个技能,出了问题根本没法排查。分五批,每批验证通过再搬下一批。遇到问题也能快速定位是哪一类的问题。

4. 搬家是重构的好时机

不是把所有东西原封不动搬过去,而是借机清理、合并、精简。这才是「搬家」的真正价值——不是换个地方堆东西,是换个活法。

下一步

52 个技能已经就位,接下来要做的是:

  • 给每个技能写测试用例,确保触发条件准确
  • 建立技能版本管理,跟踪每次修改
  • 定期复盘,砍掉不再使用的技能

AI Agent 的技能管理,本质上和代码仓库管理是一样的——持续集成、持续清理、持续进化。

━━━ ━━━ ━━━

你在管理 AI Agent 技能时遇到过什么问题?是技能太多挑花眼,还是技能之间打架?留言聊聊。

【OpenClaw 实操】OpenClaw Dreaming:AI 智能体的梦境记忆系统

Herdr:一个终端统领所有 AI 编码 Agent

告别 Serverless 迷信:阿里开源 Zvec,将"双 11"级向量检索嵌入你的进程

本文整理自微信公众号 LeisureLinux 的原创内容(Linux / AI / 安全 硬核技术)。

· 阅读原文(微信公众号)

· 关注公众号 LeisureLinux,第一时间获取技术深度内容。

LeisureLinux 公众号二维码(微信扫一扫关注)