☰
OpenClaw Agent Skills 实战配置:从聊天到干活的插件安装与 settings.json 骨架
2026/9/26 13:02:20 网站建设 项目流程

1. 为什么你的 OpenClaw 只会聊天,不会干活

很多人第一次跑 OpenClaw 的场景都差不多:装好、启动、问一句“帮我看看今天有什么 AI 新闻”,结果它回你一句“我的知识截止到某个时间点,无法获取实时信息”。不是模型不行,而是它手里没有工具。OpenClaw 的核心模型负责理解意图和生成语言,真正去打开网页、查数据库、发邮件这些动作,全靠 Agent Skills 来完成。

你可以把 OpenClaw 想成一台刚装好系统的电脑,模型是 CPU,Agent Skills 就是一个个软件。没装浏览器就上不了网,没装 Office 就处理不了文档。Agent Skills 本质上是封装好的工具函数或 API 调用模块,每个 Skill 给 AI 加一项具体能力:agent-browser 让它会看网页,tavily-search 让它会搜实时信息,database-query 让它会查库。

这篇面向的是想让 AI 从“会聊”变成“会干”的开发者。我会给出一份可直接复制的 settings.json 骨架、插件安装步骤,并演示一次技能调用验证动作,目标是一次配置跑通你的第一个 Agent Skill。过程中涉及模型调用和密钥管理,我会用 TaoToken 作为统一的接入层来演示,这样配置集中、排查也方便。

2. TaoToken 前置:把模型接入和密钥先理顺

在装 Skill 之前,先把模型接入这层理顺,否则后面 Skill 调用了模型却报鉴权错误,你会以为是插件坏了。TaoToken 在这里扮演的是统一接入层:你拿到一个 API Key,就能在 OpenClaw 里配置模型对话、编码类任务等不同用途的调用,不用为每个 Skill 单独折腾一套凭证。

第一步,去控制台创建 API Key。打开 https://taotoken.net/api-keys ,新建一个 Key,复制出来先存到本地临时文件里,别直接贴在聊天窗口。这个 Key 后面会写进 OpenClaw 的环境变量或 settings.json。

第二步,确认你要用的模型入口。如果你只是想让 Skill 能调用模型做对话和推理,用模型对话的接入地址即可;如果你打算长期跑编码类 Agent,比如让 Skill 自动改代码、跑测试,那更适合用 Coding Plan 这类面向长期编码的入口。两者的 Key 可以复用,但用途分开配置更清晰。

第三步,把接入信息落到配置里。OpenClaw 读取模型配置一般走环境变量或 settings.json,我建议密钥走环境变量,模型参数走 settings.json,这样配置文件可以进版本库,密钥不会泄露。下面这段先放进你的 shell 配置或.env:

# ~/.openclaw/.env TAOTOKEN_API_KEY="sk-你的TaoToken密钥" TAOTOKEN_BASE_URL="https://taotoken.net/api"

注意.env权限设成 600,别提交到 git。到这里前置就完成了,接下来才是 Skill 的安装和 settings.json 骨架。

3. 可复制配置:settings.json 骨架与插件安装

OpenClaw 的 Skill 安装有两种方式:命令行npx clawhub@latest install 技能名,或者 Web 控制台里搜索安装。我习惯命令行,因为可复制、可脚本化。先装两个基础件:find-skills 用来发现和管理技能,agent-browser 用来做网页操作,这两个装完你就能验证整条链路。

# 安装技能发现工具 npx clawhub@latest install find-skills # 安装浏览器自动化技能 npx clawhub@latest install agent-browser # 查看已加载技能 openclaw skills list

装完之后,核心是 settings.json。下面这份骨架你可以直接复制,改掉路径和 Key 就能用。它把模型接入、技能开关、单个技能的参数分开管理:

{ "model": { "provider": "taotoken", "baseUrl": "https://taotoken.net/api", "apiKeyEnv": "TAOTOKEN_API_KEY", "defaultModel": "claude-sonnet", "timeoutMs": 60000 }, "skills": { "enabled": true, "autoReload": true, "directory": "~/.openclaw/skills", "items": { "agent-browser": { "enabled": true, "headless": true, "timeoutMs": 30000 }, "find-skills": { "enabled": true } } }, "logging": { "level": "info", "skillLog": true } }

几个参数说明一下。apiKeyEnv指向环境变量名而不是明文密钥,这样 settings.json 可以安全地放进仓库。autoReload打开后,你新装技能不用重启进程。headless让浏览器技能在后台跑,服务器上没有图形界面也能用。skillLog打开后,技能调用失败时日志里能看到具体是哪一步断了。

配置写好后,把 settings.json 放到 OpenClaw 的工作目录,通常是~/.openclaw/settings.json。然后重载一次配置:

openclaw config reload openclaw skills reload

如果你遇到下载慢,可以临时切一下 npm 镜像源,但别长期改全局配置,用完切回来:

npm config set registry https://registry.npmmirror.com # 装完记得切回 npm config set registry https://registry.npmjs.org

4. 验证请求:跑通第一次技能调用

配置写完不验证,等于没配。这一步我们让 OpenClaw 真正调用 agent-browser 去抓一个网页,确认模型接入、技能加载、工具执行三段都通。

先做一个最小验证,直接命令行调用技能,绕过模型,确认技能本身能跑:

agent-browser visit https://example.com --text

如果这条命令返回了网页正文文本,说明技能安装没问题。如果报 command not found,看第 5 节的排查。

接着验证模型加技能的完整链路。让 OpenClaw 用 agent-browser 抓取一个页面并总结:

openclaw run "用 agent-browser 打开 https://example.com,提取页面标题和第一段正文,然后用一句话总结"

预期结果是:OpenClaw 先解析你的意图,判断需要调用 agent-browser,执行抓取,把结果回传给模型,模型生成一句总结。整个过程你能在日志里看到技能调用记录:

openclaw logs --skill agent-browser --tail 50

日志里应该出现类似skill=agent-browser action=visit status=success的行。如果 status 是 error,看下一段。

再验证一次带参数的调用,确认 settings.json 里的参数生效:

openclaw run "用 agent-browser 对 https://example.com 截图,保存到 ./claw-test.png"

跑完检查文件是否存在:

ls -lh ./claw-test.png

文件存在且大小不为 0,说明 headless 模式和超时参数都正常。到这里,你的第一个 Agent Skill 就算跑通了。后面再装 tavily-search、database-query 这些,流程完全一样:装技能、在 settings.json 的 items 里加一段、reload、验证。

5. 本篇常见错排查

报错一:command not found。多数是 npx 或全局 bin 不在 PATH 里。先用完整路径试:

$(npm prefix -g)/bin/npx clawhub@latest install agent-browser

能跑通就说明是 PATH 问题,把$(npm prefix -g)/bin加进 PATH 即可。或者干脆全局装 clawhub 客户端:

npm install -g clawhub clawhub install agent-browser

报错二:技能装了但 openclaw skills list 里没有。先确认技能目录对不对,settings.json 里的directory要和你实际安装路径一致。然后强制重载:

openclaw skills reload openclaw skills list --verbose

如果 verbose 里显示技能被 disabled,检查 settings.json 的items里对应技能是不是enabled: false。

报错三:调用技能时报鉴权失败。这是模型接入层的问题,不是技能本身。确认TAOTOKEN_API_KEY在当前 shell 里能读到:

echo $TAOTOKEN_API_KEY

如果为空,说明.env没被加载。OpenClaw 不会自动读.env,你需要在启动脚本里 source 它,或者用openclaw config set把密钥写进配置。另外确认baseUrl是https://taotoken.net/api,末尾不要多加斜杠。

报错四:技能调用超时。agent-browser 抓动态渲染页面时容易超时。把 settings.json 里该技能的timeoutMs调大,比如从 30000 改成 60000。同时确认headless: true,服务器上没有显示环境时非 headless 会卡住。

报错五:日志里技能调用成功但模型没回复。这通常是模型超时或返回被截断。把model.timeoutMs调大,并检查defaultModel是否是你 Key 有权限调用的模型。如果长期跑编码类任务频繁超时,考虑换成 Coding Plan 的接入方式,它在长任务上更稳。

排查顺序建议固定成:先命令行直调技能确认技能本身,再看日志确认技能调用状态,最后查模型接入。这样能快速定位是技能层还是模型层的问题。

6. 接下来怎么走:按用途选对入口

跑通第一个 Skill 之后,你会发现真正花时间的不是装插件,而是把模型接入、密钥管理、技能参数这三层配置理顺。我的建议是:密钥统一走环境变量,技能参数统一写进 settings.json,模型接入按用途分流。

如果你接下来主要是做技能接入和排障,先把 API Key 和接入文档过一遍,地址在 https://taotoken.net/api-keys 和 https://taotoken.net/doc ,里面把鉴权和调用方式讲得比较细。如果你只是想先验证模型对话和技能联动是否正常,用模型对话入口跑几个测试请求最快。如果你打算长期跑编码类 Agent,比如让 Skill 自动改代码、跑测试、提交 PR,那 Coding Plan 更适合,配置一次就能持续用。

最后留一个实用习惯:每装一个新技能,先在命令行直调一次确认技能本身能跑,再用openclaw run验证模型加技能的完整链路。两步都过,再写进 settings.json 长期启用。这样你不会在配置层和技能层之间来回猜,排障时间能省一大半。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询