微信扫码
添加专属顾问
我要投稿
OpenClaw Skill系统让AI从"纸上谈兵"到"真枪实干",只需一本Markdown操作手册就能教会AI执行新任务。核心内容: 1. OpenClaw Skill系统的工作原理与核心优势 2. Skill从创建到执行的五步流水线详解 3. 渐进式披露技术如何解决token限制难题
一、OpenClaw的操作手册——Skill 系统是什么?
先说一个反直觉的事实:
AI 什么都懂,但什么都"不会做"。
你问 ChatGPT"北京明天天气怎么样?",它答不上来。不是它笨,而是它没法联网查实时数据。它的知识停留在训练数据截止的那一刻。它就像一个博学多才但被关在图书馆里的学者,读了很多书,但看不到窗外是晴天还是下雨。
不只是天气。你让 AI 帮你关灯、帮你查 GitHub 上的 issue、帮你发一条消息,它都做不到。它知道这些事情是什么,但它没有手脚去做。
OpenClaw 解决这个问题的方式很巧妙:给 AI 一本操作手册(Skill)。
什么是 Skill?就是一个 Markdown 文件(SKILL.md),里面用人类语言写着操作步骤。比如一本"查天气"Skill,核心内容就几行:
用户问天气时,执行 curl wttr.in/Beijing 这个命令
拿到结果后,用自然语言回复用户
OpenClaw 读到 SKILL.md 后就会照着做,就像实习生拿到了 SOP,不需要额外培训就能上手。
OpenClaw 内置了 50 多本这样的Skill,覆盖天气查询、GitHub 操作、智能家居控制,甚至"指挥其他 AI 写代码"。但更厉害的是,你可以自己写新的 Skill,教 AI 做任何你想让它做的事。
每本 SKILL.md 从"放进去"到"被 AI 使用",经过 5 步流水线,加上 1 条后台常驻的监听线程:
阶段 |
在做什么 |
产出 |
Discovery |
扫描 6 个目录找到所有 SKILL.md,按优先级合并,自定义的会覆盖内置的 |
|
Parse |
读取 YAML 封面,提取名字、描述、依赖条件等结构化信息 |
|
Filter |
过三道关:用户禁用了吗?依赖工具装了吗?系统兼容吗?不通过直接丢弃,AI 看不到它 |
过滤后的 |
Inject |
把通过筛选的 Skill 打包成一段 XML 塞进系统提示词,每个 Skill 只有摘要,约 100 词 |
|
Runtime |
用户提问时 AI 扫描摘要匹配,命中后读取完整 SKILL.md 正文执行 |
— |
Watch |
文件保存 → |
新 |
纵向看"产出"那一列:Skill[] → SkillEntry → SkillSnapshot,这就是一条 SKILL.md 在内存里的完整变身路径。
这套流程的精髓是渐进式披露(Progressive Disclosure),不一次性把所有 SKILL.md 的 body 塞给 AI(那样会超出 token 限制),而是先注入 description 摘要(约 100 词/个),匹配命中后才读全文。
本文中,我们会通过创建一个基于 RDS DuckDB 分析型实例的商品分析与预测 Skill 来详细介绍下 OpenClaw 的 Skill 原理。
二、电商数据分析与预测的烦恼
2.1 先从一个简单的场景说起
张大爷在菜市场卖了 20 年菜。每天下午他都会想:明天进什么货?
凭经验,他知道:周末排骨好卖、下雨天叶子菜不好卖、春节前牛肉必须多进。这就是最原始的购买预测,靠人脑、靠经验。
但如果张大爷不是一个菜摊,而是一家日均百万订单的电商平台呢?
几千万用户、几十万 SKU,每天产生上亿条浏览、收藏、加购、下单记录,不同地区、不同季节、不同促销活动,规律完全不同。人脑搞不定了。需要让 AI 来当张大爷,翻阅所有人的购买记录,找到规律,预测谁在未来 7 天会买什么。
2.2 但 AI 翻账本存在大问题
电商的交易数据存在 MySQL 数据库里。MySQL 是一个非常优秀的记账员,每秒处理几万笔交易,稳如老狗。但它的存储方式是行存储(一行一行地存),适合写入一笔订单、查一个用户的最近订单这类操作。可如果我们问它"过去 90 天,按品类统计所有用户的购买频次和金额",这需要扫描几亿行数据。MySQL 可能要跑几个小时,甚至直接超时。
行存储就像一本按日期排列的流水账。我们要查"过去 3 个月所有人的零食消费",就得从头到尾一页一页翻,因为零食消费散落在每一天的各种订单里。
而我们可以通过 RDS DuckDB分析实例可以实现了复杂分析查询性能百倍跃升。通过列式存储压缩技术,显著降低存储成本,为企业在海量数据规模场景下提供高性价比的实时分析能力,提升企业数据驱动型决策效能。更多介绍请参考附录 DuckDB分析实例。
三、OpenClaw + DuckDB 完成商品售卖分析与预测
场景描述:
使用 eCommerce behavior data from multi category store 这个公开数据集中的 7 个月的数据,来验证和完成自动进化的商品售卖分析与预测 Skill。在该部分中,我们会根据商品分析与预测 Skill 来剖析 openClaw 的 Skill 能力。
3.1:环境准备
创建并配置 OpenClaw
在 RDS Custom 上简单、快速部署 OpenClaw。详情请参考附录 RDS Custom集成OpenClaw。
1.先学学习Aliyun CLi2.根据 https://help.aliyun.com/zh/rds/apsaradb-rds-for-mysql/create-and-connect-to-a-duckdb-based-analytical-primary-instance?spm=a2c4g.11186623.help-menu-26090.d_3_4_0_2.325a17e86coqAu 以及其他官方文档,创建一个规格为 8.0版本、规格为myduck.n2.large.1、磁盘大小为100G的RDS DuckDB分析型实例3. 创建完成后需要创建高权限账号、数据库以及验证数据库连通性,根据RDS官网自行解决连接不上的问题。
3.2:下载并导入数据
通过<该处填写附录中下载地址>下载数据集并解压。编写脚本通过MySQL load data 工具加速导入 csv 文件到<rm-xx该处填写3.1中创建的DuckDB实例名>。3.3 构建商品分析预测 Skill
先从Aliyun Cli中学习如何调用接口,然后连接<rm-xx该处填写3.1中创建的DuckDB实例名>RDS MySQL 实例,分析下业务与实际数据,最后根据https://github.com/huanjizhou/ecommerce-predictor这个skill做出合适的调整,构建一个能够自动进化的模型能够分析业务并且预测用户行为name: ecommerce-predictordescription: "电商用户行为时间序列预测。GradientBoosting/Lasso 预测 PV、UV、购买量。Use when: 预测、时间序列、趋势分析、销量预测、电商预测。NOT for: 实时风控、中国电商双 11/618、非时序分类问题。"metadata:OpenClaw:emoji: "📈"requires:bins: ["python3"]
┌─────────────────────────────── ──────────────────────────────┐│ 第 1 轮:10 月数据训练 → 11 月验证 → 保存结果 ││ ↓ ││ 第 2 轮:10-11 月数据训练 → 12 月验证 → 保存结果 ││ ↓ ││ 第 3 轮:10-12 月数据训练 → 1 月验证 → 保存结果 ││ ↓ ││ ...每导入新月份数据,就重新训练一次... ││ ↓ ││ 模型越来越强!📈 │└─────────────────────────────── ──────────────────────────────┘
3.4: 自优化的四个关键机制
# 每次用「所有历史数据」训练,不是只用最新数据train_start = '2019-10-01' # 固定起点train_end = '2019-11-01' # 动态终点(每月推进)# 下一轮自动变成:train_end = '2019-12-01' # 包含 11 月新数据
# 用下个月的真实数据验证准确性val_start = train_end # 验证集开始 = 训练集结束val_end = '2019-12-01' # 验证集结束# 计算 MAPE、R² 等指标mape = mean_absolute_percentage_error(y _true, y_pred) * 100
# 每次验证结果保存到 JSON 文件validation_history.json├── versions: [│ ├── version: "v20260309_134100"│ ├── train_days: 31│ ├── best_model: "Lasso"│ ├── pv_mape: 17.50%│ └── purchase_mape: 11.63%│ ├── version: "v20260309_152600"│ ├── train_days: 61│ ├── best_model: "GradientBoosting"│ └── pv_mape: 8.15%│ ...
# 训练 7 种模型,自动选最佳models = {'Ridge': Ridge(alpha=1.0),'Lasso': Lasso(alpha=0.01),'RandomForest': RandomForestRegressor(...),'GradientBoosting': GradientBoostingRegressor(...),'XGBoost': xgb.XGBRegressor(...),...}# 自动选择 PV 预测误差最小的模型best_model = min(val_results.keys(),key=lambda x: val_results[x]['pv_mape'])
3.5:第一次预测:
我们来简单看下预测结果。在第一次预测中,RDS MySQL 分析型实例中存了 eCommerce behavior data from multi category store 这个公开数据集中的前两个月的数据。让它基于 19 年 10 月的数据构建模型,并且用 19 年 11 月的数据进行验证。
在数据洞察、迭代验证、策略调整阶段,需要连接 RDS DuckDB 实例进行查询。对比普通 MySQL 实例,DuckDB 能够加速约 700 倍。
/skill ecommerce-predictor 预测下个月的PV\UV\Purchase\Cart 指标 |
数值 |
说明 |
PV MAPE |
26.92% |
平均绝对百分比误差 |
购买量 MAPE |
11.39% |
购买量预测误差 |
黑五误差 |
45% |
黑色星期五期间误差(未考虑节假日) |
训练天数 |
31 天 |
2019-10-01 ~ 2019-11-01 |
验证天数 |
30 天 |
2019-11-01 ~ 2019-12-01 |
特征数 |
5 个 |
基础时间特征 |
模型 |
指数平滑 |
Baseline 模型 |
问题: 黑五预测误差 45%,因为模型不知道 11 月 29 日是黑色星期五。
1. 未考虑节假日 - 黑五误差 45%
2. 基线建立 - 后续版本可以对比改进
3. 特征太少 - 只有 5 个基础特征,需要增加
可以看到商品预测 Skill 不仅可以分析当前的数据、预测数据,更重要的是,能根据预测结果来优化自身的模型从而使准确率越来越高。
3.6 第二次到第六次预测
之后每导入一个月的数据,Skill 会自动完成“分析-预测-自优化”的三个步骤。
来看 HISTORY.md 中记录的数据:
版本 |
训练天数 |
最佳模型 |
PV 误差 |
购买量误差 |
发生了什么 |
v1.0 |
31 天 |
指数平滑 |
26.92% |
11.39% |
基线模型,黑五误差 45% |
v2.0 |
61 天 |
RandomForest |
8.15% |
23.17% |
✅ 训练数据翻倍 |
v3.0 |
92 天 |
GradientBoosting |
2.73% |
42.28% |
✅ PV 预测历史最优 |
v4.0 |
123 天 |
GradientBoosting |
2.73% |
42.28% |
✅ 正式 v1 |
v5.0 |
152 天 |
Ridge |
29.99% |
36.99% |
⚠️ 撞上美国疫情爆发 |
v6.0 |
183 天 |
GradientBoosting |
10.03% |
12.65% |
✅ 购买量预测最优 |
PV 预测(每日页面浏览量)
从 v1.0 到 v6.0 的进化:
1. ✅ PV 预测误差下降 62.7%(26.92% → 10.03%)
2. ✅ 购买量预测保持优秀(11.39% → 12.65%,<15%)
3. ✅ 节假日预测完全解决(黑五误差 45% → 完美预测)
4. ✅ 数据量增长 5.9 倍(31 天 → 183 天)
5. ✅ 特征工程完善(5 个 → 20 个核心特征)
6. ✅ 模型稳定性验证(LOO CV MAPE 5.38%)
7. ✅ 全自动优化(无需人工干预)
四、总结
让我们回到第 1 部分开头的那句话:
AI 什么都懂,但什么都"不会做"。
现在,我们有了让 AI"会做事"的方法:
Skill 系统:给 AI 一本操作手册
ecommerce-predictor:教 AI 预测购买趋势(完整流程:数据洞察 → 特征工程 → 模型训练 → 验证迭代)
每本 SKILL.md 经过同一套 pipeline:Discovery → Parse → Filter → Inject → Runtime
系统不关心 SKILL.md body 里写的是一条 curl 命令还是一整套机器学习流程
DuckDB:让 AI 能秒级翻账本
分析查询提速 1000+ 倍
不影响线上交易(只读实例隔离)
99.9% 兼容 MySQL 语法(现有 SQL 直接能用)
没有 DuckDB 之前: 查询一次历史数据等 2 小时,一天只能迭代 2 轮,对业务有影响。
有了 DuckDB 之后: 查询一次 2 秒,一天可以迭代几十轮,对业务无影响。
DuckDB + OpenClaw 如何帮助我们自动优化模型,预测未来?
1. Skill 系统 解决了"教 AI 按流程做事"的问题,给 AI 一本操作手册,它就能照着做
2. DuckDB 分析型实例 解决了"大数据分析太慢"的问题,秒级查询
3. 两者结合 实现了一个自动化的数据分析迭代闭环,AI 按手册操作,用分析引擎快速翻阅数据、生成预测、验证偏差、调整策略,循环往复,越来越准。
更多信息
1. DuckDB 分析型实例:https://help.aliyun.com/zh/rds/apsaradb-rds-for-mysql/duckdb-analysis-instance/?spm=a2c4g.11186623.help-menu-26090.d_3_4.4f677453pHXOO7
2. ecommerce-predictor skill:https://github.com/huanjizhou/ecommerce-predictor
3. 创建并连接DuckDB分析主实例:https://help.aliyun.com/zh/rds/apsaradb-rds-for-mysql/create-and-connect-to-a-duckdb-based-analytical-primary-instance?spm=a2c4g.11186623.help-menu-26090.d_3_4_0_2.325a17e86coqAu
4. 访问天池数据集下载数据:https://tianchi.aliyun.com/dataset/220316
5. 访问 Kaggle 下载数据:https://www.kaggle.com/datasets/mkechinov/ecommerce-behavior-data-from-multi-category-store
6. RDS Custom集成OpenClaw :https://help.aliyun.com/zh/rds/apsaradb-rds-for-mysql/rds-custom-openclaw-integration#section-config-apikey
企业用户与个人用户均可免费试用DuckDB分析实例。更多细节,请参见免费试用与体验:
https://help.aliyun.com/zh/rds/apsaradb-rds-for-mysql/duckdb-analysis-instance/#15729b3c4b3ln
基于标准TPC-H 的全面测试结果,请参见 附录:DuckDB分析只读实例性能测试。
ClickHouse 官方维护的性能基准测试(Benchmark)仪表板,直观地展示并对比各种主流分析型数据库(OLAP)在处理大规模数据集时的查询速度和性能表现。更多细节,请参见 ClickBench:
https://benchmark.clickhouse.com/#system=-&type=-&machine=-ca2l%7C6t%7Cg4e%7C6ax%7C6ale%7C3al&cluster_size=-&opensource=-&hardware=+c&tuned=+n&metric=cold&queries=-
若您对 DuckDB 有任何问题,可通过钉钉搜索群号入群咨询。您可以直接@群内专家,并附上您要咨询的问题。钉钉群号:106730000316。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2026-03-10
龙虾、扣子、n8n、skills、RPA……都不重要
2026-03-10
OpenClaw 搭团队太折腾?这个 Skill 一键搞定多智能体协作
2026-03-10
我用Claude code开发了一个微信小程序:实测78个skills,这5个组合最香
2026-03-08
我用 3 个月才感受到Skill 的价值|一个文件让初级员工半天写出生产级 Agent
2026-03-07
彻底告别单文件:Claude Code Skill 2.0 架构进阶指南
2026-03-06
老板催着上Agent Skills,架构师:先冷静一下!
2026-03-05
让你的 ClaudeCode 秒变 Openclaw(龙虾),连接飞书、Discord 远程控制
2026-03-05
小龙虾很好,可是如何在企业场景中落地?
2026-03-04
2026-03-05
2026-03-05
2026-03-03
2026-03-02
2026-03-05
2026-03-04
2026-03-02
2026-03-03
2026-03-04