ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

让 OpenClaw 替你打工(三):30+ Skills 之后,我用 Skill Creater 把重复操作变成可复用技能

2026/9/30 23:30:22 拓冰建站 浏览量
让 OpenClaw 替你打工(三):30+ Skills 之后,我用 Skill Creater 把重复操作变成可复用技能 1. 从 30 Skills 到技能包重复安装这件事真的会把人逼疯如果你已经给 OpenClaw 装了三十多个 Skills大概率会遇到一个很现实的问题换一台机器、新开一个云端实例、或者像我一样又养了第二只、第三只“小龙虾”之前那套能力系统就得从头再装一遍。一个个敲安装提示词、一个个等它拉取、一个个验证是否生效光是重复劳动就能吃掉一整个下午。我试过最笨的办法就是把之前用过的安装提示词全部复制到一个 Markdown 文件里然后在新环境里逐条粘贴。结果发现两个坑第一有些技能依赖前置环境顺序错了就报错第二技能版本会更新我本地那份清单早就过期了。更麻烦的是有些技能安装完还需要额外配置比如搜索类技能要填 API Key数据类技能要配 token这些配置项散落在各个对话里根本没法复用。这时候 OpenClaw 的 Skill Creater 和create_skill流程就派上用场了。它的核心思路很简单把你反复执行的一套操作包括安装哪些技能、按什么顺序装、装完执行什么检查、需要哪些配置全部沉淀成一个可复用的技能包。以后在新环境里只需要安装这一个技能包就能一次性获得整套能力系统。这篇文章面向的就是已经装了多个 Skills、开始觉得“重复操作太多”的 Agent 用户。我会交付三样东西一份可复制的技能目录骨架、一段create_skill的配置片段、以及一次从触发到验证的完整动作。同时会说明如何通过统一的 Key/API 通道接入让技能包里的网络请求走同一条稳定链路避免每个技能各自配置、各自踩坑。Skill Creater 本质上是一个“元技能”它不直接帮你干活而是帮你把干活的方式固化下来。你可以把它理解成一个技能工厂输入是一套操作流程和依赖清单输出是一个可以被 OpenClaw 识别、安装、执行的技能包。对于已经积累了大量 Skills 的用户来说这是从“手动装配”走向“自动化装配”的关键一步。2. TaoToken 前置让技能包里的请求走统一通道在动手写技能包之前有一个前置问题必须先解决技能包里的技能很多都需要调用外部 API。搜索类技能要调搜索接口摘要类技能要调模型接口数据类技能要调行情接口。如果每个技能都单独配置一套 Key 和 Base URL技能包就会变得又臃肿又难维护。我的做法是把技能包里所有需要模型能力的请求统一指向 TaoToken 的 API 通道。这样技能包只需要维护一份配置换环境时也只改一个地方。TaoToken 的 API 地址是https://taotoken.net/api官网是https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content。它的作用是提供一个统一的模型调用入口让技能包里的不同技能不用各自去对接不同的模型服务。具体来说你需要在 TaoToken 的控制台创建一个 API Key。创建入口在控制台的 API Keys 页面地址是https://taotoken.net/console/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite。创建好之后你会得到一串以sk-开头的 Key。这串 Key 就是技能包访问模型能力的凭证。拿到 Key 之后技能包里的配置就统一写成这样Base URL 填https://taotoken.net/apiAPI Key 填你刚创建的那串Model ID 根据你的需要选择比如做摘要和内容生成可以用通用的对话模型做代码相关任务可以选代码能力更强的模型。这三件套——Base URL、Key、Model ID——是技能包能跑通模型调用的最小配置。如果你用的是 Claude Code 这类编码场景TaoToken 也提供了对应的接入方式文档在https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite。对于长期编码和 Agent 场景可以考虑 Coding Plan入口在https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite。不过对于技能包这个场景最核心的还是先把 API Key 和 Base URL 配好。这里要提醒一点技能包里的配置不要硬编码 Key。正确的做法是把 Key 放在环境变量或者独立的配置文件里技能包只引用变量名。这样你把技能包分享给别人或者在新环境部署时只需要改环境变量不用动技能包本身。这也是后面create_skill配置片段里会体现的设计。3. 可复制配置技能目录骨架与 create_skill 片段现在进入实操部分。一个可复用的技能包目录结构不需要很复杂但要有清晰的约定。下面是我实际在用的骨架你可以直接复制recommend-package-hy/ ├── SKILL.md ├── skill.json ├── config/ │ └── default.toml ├── scripts/ │ ├── install.sh │ └── verify.sh └── skills/ ├── snews-aggregator-skill/ ├── summarize/ ├── tavily-search/ ├── code-executor/ ├── project-manager/ └── stock-watcher/SKILL.md是这个技能包的说明文件OpenClaw 读取它来理解这个技能包是干什么的、怎么触发。skill.json是技能包的元数据定义名称、版本、依赖和入口。config/default.toml存放统一配置包括 TaoToken 的 Base URL 和模型选择。scripts/install.sh是安装脚本按顺序安装skills/目录下的各个技能。scripts/verify.sh是验证脚本安装完跑一遍检查。skill.json的内容大概长这样{ name: recommend-package-hy, version: 1.2.0, description: OpenClaw 常用技能合集包含信息采集、摘要、搜索、代码执行、项目管理和行情数据能力, entry: scripts/install.sh, verify: scripts/verify.sh, config: config/default.toml, skills: [ snews-aggregator-skill, summarize, tavily-search, code-executor, project-manager, stock-watcher ] }config/default.toml里放统一通道配置[api] base_url https://taotoken.net/api api_key ${TAOTOKEN_API_KEY} model_id your-preferred-model [install] order [snews-aggregator-skill, summarize, tavily-search, code-executor, project-manager, stock-watcher] auto_update true post_install_verify true注意api_key这里用的是${TAOTOKEN_API_KEY}引用的是环境变量。你在新环境部署时只需要先设置这个环境变量技能包就能跑起来。install.order定义了安装顺序这个顺序很重要因为有些技能依赖前置技能。auto_update和post_install_verify是两个实用开关前者让技能包在安装后自动检查更新后者让安装完自动跑验证。接下来是create_skill的配置片段。在 OpenClaw 里你可以通过对话触发 Skill Creater让它根据你提供的目录和配置生成技能包。触发提示词可以这样写使用 create_skill 创建一个技能包名称为 recommend-package-hy 目录结构参考我提供的骨架配置文件使用 config/default.toml 安装脚本按 install.order 顺序执行安装完成后运行 verify.sh 验证。 技能包内的所有模型请求统一使用 config/default.toml 中的 base_url 和 api_key。Skill Creater 会读取你提供的文件生成一个符合 OpenClaw 技能规范的包。生成之后你可以把它上传到仓库或者直接在本地安装。如果你想让技能包在安装新技能后自动更新和上传仓库可以在install.sh里加一段后置动作这也是我实际在用的做法。install.sh的核心逻辑大概是#!/bin/bash set -e source config/default.toml for skill in ${INSTALL_ORDER[]}; do echo Installing $skill... openclaw skill install $skill done if [ $POST_INSTALL_VERIFY true ]; then bash scripts/verify.sh fi if [ $AUTO_UPDATE true ]; then openclaw skill update --all git add . git commit -m auto update skills git push fi这段脚本做了三件事按顺序安装技能、跑验证、自动更新并推送仓库。最后一步就是原文里提到的“自动更新、上传动作”把它固化进技能包之后每次安装新技能都会自动执行不用再手动操作。4. 验证请求从触发到成功结果的完整动作配置写好了接下来要验证技能包能不能真正跑通。验证分两步先验证模型通道再验证技能包整体。验证模型通道最直接的方式是发一个最小请求。你可以用 curl 测试 TaoToken 的 API 是否可达curl -X POST https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer $TAOTOKEN_API_KEY \ -H Content-Type: application/json \ -d { model: your-preferred-model, messages: [{role: user, content: 回复 OK}], max_tokens: 10 }如果返回的 JSON 里有choices字段并且内容里包含OK说明通道是通的。这一步很关键因为技能包里的模型请求都走这条通道通道不通后面全白搭。通道验证通过后安装技能包openclaw skill install recommend-package-hy安装过程中你会看到它按install.order的顺序逐个安装技能。每个技能安装完verify.sh会检查它是否可用。验证脚本的核心逻辑是逐个调用技能的最小功能比如让摘要技能处理一段短文本、让搜索技能返回一条结果、让代码执行技能跑一个print(ok)。验证脚本大概这样#!/bin/bash set -e echo Verifying summarize... openclaw skill run summarize --input 这是一段测试文本用于验证摘要技能是否可用。 echo Verifying tavily-search... openclaw skill run tavily-search --query OpenClaw Skill Creater echo Verifying code-executor... openclaw skill run code-executor --code print(ok) echo All skills verified.如果每个技能都返回了预期结果说明技能包整体跑通了。这时候你可以做一个更真实的动作让 OpenClaw 用这个技能包完成一次“信息采集 摘要 生成简报”的完整流程。触发提示词可以是使用 recommend-package-hy 技能包采集今天的科技类热点 对每条内容做摘要然后聚合成一份每日简报。成功的结果是OpenClaw 依次调用采集技能、摘要技能最后输出一份结构化的简报。整个过程不需要你手动干预技能包里的配置和顺序都已经固化好了。这就是从“手动装三十个技能”到“装一个技能包”的差别。验证通过后你可以把这个技能包上传到仓库比如原文里提到的https://gitea.com/fogdragon/recommend-package-hy。上传之后下次在新环境部署只需要openclaw skill install recommend-package-hy一条命令就能获得整套能力系统。5. 本篇常见错排查401、local proxy failed 与 reading choices技能包跑不通的时候报错信息往往很直接但原因可能藏在配置里。下面是我实际踩过的几个坑对照着排查能省不少时间。401 Unauthorized这个最常见基本就是 API Key 的问题。先检查TAOTOKEN_API_KEY环境变量有没有设置再检查 Key 有没有过期或者被删除。如果 Key 是对的检查config/default.toml里的base_url是不是写成了https://taotoken.net/api少写/api或者多写斜杠都会导致鉴权失败。还有一种情况是 Key 前面多了空格或者引号复制的时候很容易带进去。local proxy failed这个报错通常出现在技能包里的某个技能尝试走本地代理但代理没启动或者配置不对。排查方法是检查技能包里的网络请求配置确保所有请求都走config/default.toml里的统一通道而不是各自去连本地代理。如果你在技能包里硬编码了某个技能的代理地址把它改成引用统一配置。reading choices 报错这个报错一般出现在模型返回的 JSON 结构不符合预期时。比如你请求的模型返回了错误信息但技能包里的解析逻辑还在找choices字段就会报这个错。排查方法是先用第 4 节的 curl 命令单独测一下通道确认返回结构正常。如果通道正常但技能包还报这个错检查技能包里的模型 ID 是不是写错了或者模型不支持你请求的参数。OAuth 相关报错如果你在技能包里用了需要 OAuth 授权的技能比如某些项目管理或云盘技能报错通常是因为授权过期或者回调地址不对。排查方法是重新走一遍授权流程确认回调地址和技能包里配置的一致。如果技能包是在新环境部署的OAuth 授权需要重新做一次不能直接复用旧环境的 token。技能安装顺序导致的依赖报错这个报错不会直接说“顺序错了”而是某个技能安装时报缺少依赖。排查方法是检查install.order里的顺序确保被依赖的技能排在前面。比如代码执行技能可能依赖搜索技能提供的环境那就得先装搜索。技能包安装后技能不生效有时候安装脚本跑完了但技能列表里看不到新技能。这通常是skill.json里的skills数组和实际skills/目录下的文件夹名不一致导致的。检查两者是否完全对应包括大小写和连字符。排查的时候建议按“先通道、后技能包、再单个技能”的顺序来。通道用 curl 测技能包用verify.sh测单个技能用openclaw skill run测。这样能快速定位问题出在哪一层不用盲目改配置。6. 把技能包变成你的 AI 工作流技能包这个东西表面上看是省了重复安装的时间实际上它改变的是你和 Agent 的协作方式。以前你是“操作员”一个个装技能、一个个配参数现在你是“架构师”定义好一套能力系统让 Agent 自己去装配、自己去验证、自己去更新。对于已经装了 30 Skills 的用户来说下一步不是继续装更多技能而是把已经稳定好用的技能沉淀成技能包。沉淀的标准很简单这套技能你是不是在多个环境里重复装过如果是它就值得被封装。封装之后你换环境、开新实例、分享给朋友都只需要一条安装命令。技能包里的统一通道配置是让它能跨环境复用的关键。把 Base URL、Key、Model ID 这三件套集中管理技能包就不会因为环境变化而失效。TaoToken 的 API 通道在这里扮演的就是这个统一入口的角色让技能包里的不同技能不用各自去对接不同的模型服务。如果你想让技能包里的模型调用更稳定可以在config/default.toml里把模型 ID 固定下来避免每次安装时选错。如果你需要切换模型改这一个地方就行不用动技能包里的其他文件。最后一步是把技能包上传到仓库并且在install.sh里保留自动更新和推送的逻辑。这样每次你安装新技能、调整配置技能包都会自动同步到仓库。下次在新环境部署时拉取的就是最新版本。这个动作一旦固化你就再也不用担心“本地那套能力系统带不走”的问题了。技能包的本质是把你的工作流代码化。你平时怎么用 Agent、按什么顺序调哪些能力、遇到问题怎么处理这些经验都可以沉淀进去。沉淀得越多Agent 就越像你的数字同事而不是一个需要你反复调教的工具。