搭建了一个Openclaw的Skill,实现"从零搭建会自我进化的Agent"
NOTE我是阳清,专注构建可规模化 AI 自动化系统与智能体工程的互联网架构师。
在这里,我们不聊概念,只构建 真正可运行的 AI 系统 。
当 Claude 开始帮你写 Prompt、写 Skill、写 Agent 配置……这条路的终点在哪里?
事情的起点:一个让我头疼的问题
最近在玩 OpenClaw,每次想新建一个 Agent,都得手动创建一堆文件:SOUL.md、IDENTITY.md、AGENTS.md、MEMORY.md……
每一个都不能少,每一个格式都有讲究,写完还要跑一堆 CLI 命令注册、绑频道、装 skill。
整个过程枯燥又容易出错。
某天我突然想:我能不能让 AI 帮我做这件事?
不是让它帮我写某一个文件,而是——我说一句”帮我创建一个 Agent”,它把所有事情都搞定。
于是就有了这篇文章要讲的故事。
什么是 Skill?
在 OpenClaw 里,Skill 是一段给 AI 看的”操作手册”。
你把它放进系统,当用户触发了对应的关键词,AI 就会读这份手册,按里面的步骤一步步去执行。
本质上,Skill 就是用自然语言写的自动化流程。
我们要做的,就是写一个叫 create-agent 的 Skill,让 AI 读完它之后,知道怎么从零创建一个完整的 Agent。
设计思路:先想清楚流程
动手之前,我跟 Claude 把整个流程捋了一遍。
一个完整的 Agent 创建,至少需要:
- 收集信息 — 知道要建什么样的 Agent
- 检查冲突 — 确认 ID 没被占用
- 确认频道参数 — 不同平台(飞书/Telegram/Discord)的鉴权参数完全不同
- 生成 Workspace 文件 — 6-8 个 Markdown 配置文件
- 执行 CLI 注册 —
openclaw agents add、set-identity、bind - 安装进化 Skill — 让 Agent 具备自我学习能力
- 输出用户待办 — 告诉人类还需要做什么
每一步都不能少,顺序也不能乱。
最有意思的部分:自我进化
这是整个设计里我最满意的一个环节。
创建出来的 Agent 不是一个静态的机器人,而是会随着使用不断进化的。
具体怎么实现的?靠两个配合工作的 Skill:
self-improving-agent 充当观察者。每次对话结束,它把发生的事情记录到 memory/YYYY-MM-DD.md,格式是结构化的——做了什么、成功了还是失败了、犯了什么错、学到了什么。
capability-evolver 充当执行引擎。它定期扫描 memory/ 目录和 .learnings/ 日志,从中提取信号,生成进化方案。
两者的分工一句话概括:
self-improving-agent 是日记本,capability-evolver 是读完日记后动手改造自己的工程师。
关键细节:memory/YYYY-MM-DD.md 是两者的衔接点。如果 Agent 没有按规定格式写入这个文件,capability-evolver 就读不到信号,进化就不会触发。所以我们在 AGENTS.md 模板里写死了格式要求。
另外,所有涉及核心配置(SOUL.md、AGENTS.md)的变更,必须经过用户批准才能执行,不会自动乱改。
踩过的一个坑:频道参数
最开始设计「绑定频道」这一步时,我简单地让用户填一个 telegram:ops 就完事了。
Claude 直接指出了问题:不同频道的鉴权参数完全不同。
- Telegram 只需要一个 Bot Token
- 飞书需要 App ID + App Secret + Verification Token + Encrypt Key
- WhatsApp 不需要 Token,但需要扫 QR 码
- Slack 需要两个 Token(Bot Token + App Token)
写死一个字段根本没法处理这种差异。
解决方案是新建一个 references/channel-params.md,把 11 个主流频道的参数模板都写进去。Skill 在执行时识别用户填写的频道类型,动态读取对应的参数模板,再生成问卷让用户填写。
后续新增频道,只需要往这个文件里加一条,主流程完全不用动。
还有一个细节:如果用户填写的频道和当前对话所在频道一致,需要额外确认——是绑定当前这个机器人应用,还是换一个新的?这步如果不问清楚,很容易把配置搞乱。
最终的文件结构
create-agent/├── SKILL.md ← 主流程(5个阶段 + 2个中间检查)├── scripts/│ └── generate-workspace.sh ← 自动生成所有 workspace 文件└── references/ ├── workspace-templates.md ← 6-8 个配置文件的完整模板 └── channel-params.md ← 11 个频道的鉴权参数映射表整个 Skill 的执行流程是:
Phase 1 一次性问卷(必填 + 选填)Phase 1.5 ID 冲突检查(执行 openclaw agents list)Phase 1.8 频道参数确认(识别频道类型 → 动态问卷)Phase 2 生成 Workspace 文件(调用 generate-workspace.sh)Phase 3 执行 CLI 注册(add → set-identity → bind)Phase 4 安装进化 Skills(self-improving-agent + capability-evolver)Phase 5 输出用户操作清单使用效果
触发词说一句”帮我创建一个 Agent”,AI 会:

- 展示一张问卷,你只需填写 Agent ID、名称、性格主题,其余都有默认值
- 自动检查 ID 是否冲突
- 根据你填写的频道类型,展示对应的参数问卷
- 调用脚本生成所有 workspace 文件
- 依次跑完所有 CLI 命令完成注册
- 安装进化 Skill
- 最后给你一份清单,告诉你还需要做哪几件事(比如
git init、扫 QR 码等)
整个过程人工介入的地方只有两处:填问卷 和 确认频道参数,其余全部自动完成。

image

一个更大的延伸
做完 create-agent 之后,我顺手又做了一个 create-agent-network。
它解决的是更复杂的问题:当你需要的不是一个 Agent,而是一套主 Agent + 多个子 Agent + 若干 Skill 组成的协作网络时,怎么自动化搭建?
流程变成了:
- 分析用户描述中的工作流(几个节点、每个节点做什么)
- 判断每个节点适合用 Agent 还是 Skill
- 先去 ClaWHub 搜索有没有现成的 Skill 可以用
- 依次创建每个节点(调用
create-agent或skill-creator) - 自动注册主子 Agent 之间的路由关系
- 输出整个网络的拓扑图和用户待办
子 Agent 的所有参数(ID、名称、性格、路由条件)全部根据工作流分析自动生成,不需要用户逐一填写。
最后想说的
这个过程里让我感受最深的,不是”AI 帮我省了多少时间”,而是:
当你开始用 AI 来构建 AI 的基础设施,整个工作方式就变了。
以前我需要理解每个配置文件的格式、每条 CLI 命令的参数、每个频道的鉴权方式……现在这些知识被沉淀到 Skill 里,变成了可复用的流程资产。
下一个人想创建 Agent,直接用这个 Skill,什么都不需要知道。
这大概就是所谓的”知识的自动化”吧。
已上架Clawhub

链接是:https://clawhub.ai/dao24dao/create-agent-arch 欢迎使用并反馈.
常驻提醒 ,别错过
WARNING见面礼
加 阳清 私人微信(dao24dao) ,备注”公众号”,领取:【飞巴超级个体,梁靠谱0-1000万之路,findyi超级个体0-100万变现】副业百万秘籍的电子书。
《一人企业复利商业化》最新电子版,在 “阳清AI一人企业” 公众号后台回复 2501 直接拿(免费)
Support
If this article helped you, welcome to support!
阳清·AI自动化