ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

OpenClaw 自建 Skills 实战指南:三步打造你的 AI 特工队(TaoToken 统一 Key 接入版)

OpenClaw 自建 Skills 实战指南:三步打造你的 AI 特工队(TaoToken 统一 Key 接入版) 1. 为什么我要自己写 OpenClaw SkillsOpenClaw 是一个可以本地运行、支持多技能编排的 AI 智能体框架它最吸引人的地方在于你可以把日常重复的工作流程封装成一个叫 Skill 的文件夹让 AI 按你的手册自动执行。适合谁适合每天要处理固定流程的人——比如做行业简报、跑数据周报、整理竞品动态、批量生成文案这些事每次手动做要半小时但写成 Skill 之后一句话就能触发。我最初用 OpenClaw 的时候只装了官方内置技能感觉像个通用助手什么都能聊但什么都不精。真正让它变成「特工队」的转折点是我开始自己写 SKILL.md。一个 Skill 本质上就是一份写给 AI 的工作手册你告诉它什么时候该出场、按什么步骤做、输出成什么格式。再配合 openclaw.json 做统一配置把模型调用通道收敛到 TaoToken 的 API 上就不用每个技能单独填 Key维护成本一下就降下来了。这篇我会按三步走先写一个能跑起来的 SKILL.md再改 openclaw.json 把技能挂上并接入统一 Key最后做三步验证——技能加载、单技能调用、多技能串联。每一步都给可复制的代码和配置你跟着改路径就能用。2. TaoToken 前置准备统一 Key 与 API 通道在写 Skill 之前先把模型调用这条链路打通。OpenClaw 的 Skill 在执行时经常需要调用大模型如果每个技能都硬编码一个 Key后面换模型、换通道会非常痛苦。我的做法是所有技能统一走 TaoToken 的 API 通道Key 只在一个地方配置。你需要先拿到一个可用的 API Key。登录 TaoToken 控制台在 API Keys 页面创建一个新 Key复制出来先存到环境变量里不要直接写进 SKILL.md。# 写入 shell 配置macOS/Linux 用 ~/.zshrc 或 ~/.bashrc export TAOTOKEN_API_KEYsk-你的实际Key source ~/.zshrcTaoToken 的 API 基地址是https://taotoken.net/api兼容常见的 OpenAI 风格调用格式所以 OpenClaw 里配置 base_url 时直接填这个即可。如果你还没创建 Key可以先去控制台页面操作控制台入口https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewriteAPI Keys 管理https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite注意Key 属于敏感凭证只放在环境变量或本地配置里不要提交到 Git 仓库也不要写进会分享出去的 SKILL.md。环境变量设好之后后面 openclaw.json 里用${TAOTOKEN_API_KEY}引用就行。这样做的另一个好处是以后换 Key 只改一处所有技能自动生效。3. 第一步写一个可复制的 SKILL.md 骨架Skill 的物理形态就是一个文件夹核心是里面的 SKILL.md。文件名必须大写OpenClaw 靠它识别技能元信息和指令内容。先建目录cd ~/.openclaw/workspace mkdir -p skills/daily-briefing cd skills/daily-briefing然后创建 SKILL.md下面是我实测能直接跑的骨架你可以整段复制再改--- name: daily-briefing description: 当用户要求生成行业简报、晨报、每日动态汇总时使用 version: 1.0 requires: bins: - python3 env: - TAOTOKEN_API_KEY --- # 每日行业简报生成器 ## 触发条件 当用户输入包含「简报」「晨报」「今日动态」「行业汇总」等关键词时激活。 ## 执行步骤 1. 确认用户指定的行业或关键词未指定则默认「人工智能」。 2. 调用模型整理该领域最近的重要动态输出 3 到 5 条要点。 3. 每条要点包含标题、一句话摘要、影响判断。 4. 最后给出一段 100 字以内的整体趋势总结。 ## 输出格式 使用 Markdown结构如下 ### 今日要点 - **标题**摘要影响 ### 趋势总结 一段话总结。 ## 安全规则 - 只做信息整理与文本生成不执行删除、修改系统文件的操作。 - 涉及外部命令时先列出命令等待用户确认。这里有几个关键点。name用小写加连字符别用驼峰或空格否则加载时容易出问题。description要写清楚「什么时候用」这是模型判断是否激活技能的主要依据写得越具体越不容易误触发。requires.env里声明TAOTOKEN_API_KEYOpenClaw 启动时会检查这个变量是否存在缺了会提示你。指令部分我建议遵循一个原则告诉 AI 做什么而不是教它怎么做人。比如「输出 3 到 5 条要点每条含标题、摘要、影响判断」就比「你要专业、全面、深入地分析」有用得多前者可执行后者只是形容词。4. 第二步openclaw.json 配置技能与统一 KeySKILL.md 写好后还要在 openclaw.json 里把它挂上并配置模型通道。配置文件通常在~/.openclaw/openclaw.json没有就新建。下面是我用的配置片段{ model: { provider: openai-compatible, baseUrl: https://taotoken.net/api, apiKey: ${TAOTOKEN_API_KEY}, model: claude-sonnet-4-20250514 }, skills: { load: { watch: true, watchDebounceMs: 500 }, entries: { daily-briefing: { enabled: true, env: { TAOTOKEN_API_KEY: ${TAOTOKEN_API_KEY} }, config: { defaultTopic: 人工智能, maxPoints: 5 } } } } }逐项说明一下。model.baseUrl指向 TaoToken 的 API 地址apiKey用${TAOTOKEN_API_KEY}引用环境变量这样 Key 不会出现在配置文件明文里。skills.load.watch设为 true 后你改 SKILL.md 保存OpenClaw 会自动重新加载不用每次重启。watchDebounceMs是防抖延迟避免你连续保存时反复触发。skills.entries里每个技能一个键键名要和 SKILL.md 里的name一致。enabled控制开关env把环境变量透传给技能config是自定义参数技能指令里可以用config.defaultTopic这种方式引用。提示如果你有多个技能把它们都加到entries里即可模型通道是全局共享的不用每个技能重复配 baseUrl 和 Key。改完配置后重启一次 Gateway 让配置生效openclaw gateway restart5. 第三步三步验证——加载、调用、串联配置写完不代表能用我习惯做三步验证每步都有明确的成功信号。5.1 验证技能加载在 OpenClaw 对话里输入刷新技能列表或者直接看启动日志openclaw gateway logs | grep -i skill成功的话你会看到类似loaded skill: daily-briefing的输出。如果没看到先检查 SKILL.md 的name和 openclaw.json 里的键名是否完全一致大小写和连字符都要对上。5.2 验证单技能调用直接对 AI 说生成今天的 AI 行业简报正常情况它会激活 daily-briefing按你定义的格式输出要点和趋势总结。这一步如果模型没被调用多半是TAOTOKEN_API_KEY没生效用下面命令确认echo $TAOTOKEN_API_KEY输出为空说明环境变量没设上回到第 2 节重新 export 并 source。5.3 验证多技能串联这是「特工队」的关键。再建一个技能比如report-polish专门把简报润色成正式周报。目录结构mkdir -p ~/.openclaw/workspace/skills/report-polish它的 SKILL.md 指令写成「接收上游简报内容扩写成 800 字周报保留要点结构」。然后在 openclaw.json 的 entries 里加上它。之后你输入先生成 AI 行业简报再用周报技能润色如果两个技能依次触发、输出连贯说明编排链路通了。串联时要注意上游技能的输出格式要稳定下游技能才能可靠解析所以我在 SKILL.md 里都会明确写死输出结构。6. 本篇常见错误排查技能不加载九成是 SKILL.md 文件名没大写或者name字段和 openclaw.json 键名不一致。另外确认文件在~/.openclaw/workspace/skills/下而不是别的地方。模型调用报 401Key 无效或没传进去。检查环境变量是否 export 成功openclaw.json 里是否用了${TAOTOKEN_API_KEY}而不是写死的旧 Key。如果 Key 刚在控制台重建过记得更新环境变量。技能被误触发description写得太宽泛比如只写「处理文本」。改成具体场景描述比如「当用户要求生成行业简报时使用」能明显降低误触发。改了 SKILL.md 不生效确认skills.load.watch为 true或者手动openclaw gateway restart。有时候编辑器保存的是临时文件确认改的是真正的 SKILL.md。多技能串联时下游拿不到上游输出上游输出格式不稳定。解决办法是在上游 SKILL.md 里固定输出模板下游按模板解析不要依赖自由文本。排查时优先看日志openclaw gateway logs会把加载失败、Key 缺失、模型报错都打出来比猜快得多。如果你在接入阶段卡住可以先看接入文档对照配置接入文档https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite7. 继续扩展你的 AI 特工队走到这里你已经有了一个能加载、能调用、能串联的最小技能体系。接下来扩展的方向很明确把每个重复流程拆成一个 Skill用 openclaw.json 统一管理模型通道始终走 TaoToken 这一条线。技能越多统一 Key 的价值越明显——你不需要在十几个技能里找哪个 Key 过期了。如果你要验证不同模型对同一技能的效果可以直接在模型对话里试模型对话https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentchatutm_campaignrewrite如果你打算长期跑编码类或 Agent 类技能调用量会比较大可以了解下 Coding PlanCoding Planhttps://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite新建 Key 或管理已有 Key 都在这里API Keyshttps://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite我的建议是先把一个技能打磨到稳定输出再复制它的结构去建第二个、第三个。技能的质量取决于你指令写得有多具体而不是数量堆得多快。等你把三五个高频流程都封装好OpenClaw 才真正变成随叫随到的特工队。
返回列表