首页/新闻资讯/正文详情

OpenClaw 只会答不会做?用 Skills + SKILL.md 让它在嵌入式 Linux 上主动干活

发布时间:2026/9/27 12:10:27 来源:云帆数科 栏目:资讯中心
OpenClaw 只会答不会做?用 Skills + SKILL.md 让它在嵌入式 Linux 上主动干活
1. 为什么你的 OpenClaw 在嵌入式 Linux 上只会“动嘴”如果你已经在 OK1126B-S 这类开发板上跑通了 OpenClaw也接上了本地模型或者飞书入口大概率会遇到一个很尴尬的场景你问它“板子上有哪些 LED”它能答得头头是道你让它“把 work 灯点亮”它回你一段看起来正确、但根本没执行的命令。问题不在模型而在于它没有“手”。OpenClaw 本身是一个对话与任务编排框架模型负责理解意图但真正去读写/sys/class/leds/、操作 GPIO、跑一段 shell 的是 Skills 机制。没有 SkillOpenClaw 就只是一个装在开发板上的聊天窗口有了 Skill它才会在识别到“点灯”“闪烁”“读 GPIO”这类意图时主动去调用本地脚本并返回真实执行结果。这篇就围绕嵌入式 Linux 场景把 Skills 和 SKILL.md 讲清楚Skill 目录放哪、SKILL.md 怎么写、scripts 里的 GPIO 脚本怎么组织最后给一条可以直接复制运行的 GPIO 读写验证动作让你确认 OpenClaw 是真的在“干活”而不是在“背课文”。适合已经在开发板上部署过 OpenClaw、想让它接管硬件外设的嵌入式开发者。2. 前置准备TaoToken 与 OpenClaw 的接入位置在写 Skill 之前先把模型调用这条链路理顺。OpenClaw 的“大脑”需要稳定的模型接口我这边习惯用 TaoToken 来做统一接入它的 API 地址是https://taotoken.net/api兼容常见的 OpenAI 风格调用方式配置到 OpenClaw 的模型后端里就行。具体操作上先在 TaoToken 控制台创建一个 API Key然后把它填到 OpenClaw 的模型配置中。控制台入口在这里控制台https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite创建 Key 的页面API Keyshttps://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite如果你还没决定用哪个模型可以先去模型对话页面试一下确认模型对“GPIO”“LED”“shell 脚本”这类嵌入式语义的理解是否到位模型对话https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentchatutm_campaignrewrite接入文档里有 OpenClaw 这类客户端的具体配置字段说明建议对照着填接入文档https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite这一步的意义在于Skill 负责“做什么”模型负责“判断该不该做、用哪个参数做”。两者缺一不可。模型接口不稳定Skill 触发就会时灵时不灵Skill 写得不清楚模型再强也不知道该调哪个脚本。3. 可复制配置SKILL.md 骨架与 Skills 目录3.1 Skill 目录结构与命名规范OpenClaw 默认从下面这个路径加载 Skill~/.openclaw/workspace/skills/${SKILL_NAME}一个完整的 Skill 目录长这样gpio-led-control/ ├── SKILL.md # 核心元数据 操作手册 ├── scripts/ # 可直接运行的脚本 │ ├── led_on.sh │ ├── led_off.sh │ └── led_blink.sh ├── references/ # 按需加载的参考资料 │ └── ok1126b-led-map.md └── assets/ # 输出用资源不参与推理 └── led-report-template.md目录名有硬性规范只能用小写字母、数字和连字符比如gpio-led-control。我踩过的坑就是一开始用了下划线gpio_led_control结果 OpenClaw 死活不加载排查半天才发现是命名问题。这一点在嵌入式场景里尤其要注意因为很多工程师习惯用下划线命名脚本。3.2 SKILL.md 的元数据部分SKILL.md 分两段前置元数据和正文。元数据用---包裹负责让 OpenClaw 识别和语义匹配--- name: gpio-led-control description: 控制嵌入式 Linux 开发板上的 GPIO LED支持点亮、熄灭、按节奏闪烁适用于 OK1126B-S 等板卡。 user-invocable: true ---name和description是必填。description写得越贴近用户真实说法触发越准。比如用户会说“让灯闪起来”“work 灯亮一下”那 description 里就该出现“点亮”“熄灭”“闪烁”这些词而不是只写“LED 控制”。3.3 SKILL.md 正文操作手册怎么写正文是给模型看的“行动指南”要写清楚什么时候执行、执行哪个脚本、参数怎么传。下面是一份可以直接改的骨架# GPIO LED Control - 开发板 LED 灯控制 控制 OK1126B-S 等开发板上的系统 LEDwork / net 等。 ## 快速开始 ### 查看可用 LED 执行ls /sys/class/leds/ ### 点亮指定 LED 执行bash scripts/led_on.sh led_name 示例bash scripts/led_on.sh work ### 熄灭指定 LED 执行bash scripts/led_off.sh led_name ### 按节奏闪烁 执行bash scripts/led_blink.sh led_name interval_ms count 示例bash scripts/led_blink.sh work 500 6 ## 使用场景示例 - 用户说“把 work 灯点亮” → 调用 led_on.sh work - 用户说“让 net 灯闪 6 次每次 500 毫秒” → 调用 led_blink.sh net 500 6 - 用户说“现在有哪些灯” → 执行 ls /sys/class/leds/ ## 权限说明 操作 /sys/class/leds/ 通常需要 root 权限脚本内已包含 sudo 判断。 ## 注意事项 - 执行前先确认 LED 名称存在不存在则返回错误提示。 - 闪烁间隔不要低于 100ms避免占用过多 CPU。正文里把“用户可能怎么说”和“对应执行什么”一一列出来模型匹配起来就稳。很多人 Skill 不触发不是模型笨是正文里只写了命令没写触发语。3.4 scripts 里的 GPIO 脚本scripts/放固定逻辑的脚本避免模型每次现生成代码。以led_blink.sh为例#!/bin/bash # led_blink.sh - 按节奏闪烁指定 LED LED_NAME$1 INTERVAL_MS${2:-500} COUNT${3:-6} LED_PATH/sys/class/leds/${LED_NAME} if [ ! -d $LED_PATH ]; then echo ERROR: LED ${LED_NAME} 不存在可用 LED ls /sys/class/leds/ exit 1 fi for i in $(seq 1 $COUNT); do echo 1 ${LED_PATH}/brightness sleep $(echo scale3; ${INTERVAL_MS}/1000 | bc) echo 0 ${LED_PATH}/brightness sleep $(echo scale3; ${INTERVAL_MS}/1000 | bc) done echo OK: ${LED_NAME} 已闪烁 ${COUNT} 次间隔 ${INTERVAL_MS}ms脚本最后一定要输出明确的结果字符串OpenClaw 会把这段回显给用户用户才知道是真执行了。4. 验证请求确认 OpenClaw 真的在主动执行配置完成后重启 OpenClaw 让它重新加载 Skill 目录openclaw restart # 或者 systemctl --user restart openclaw然后通过飞书或本地对话入口发一条自然语言指令让 work 灯闪 6 次每次间隔 500 毫秒预期行为是OpenClaw 识别意图 → 匹配gpio-led-control→ 读取 SKILL.md → 调用scripts/led_blink.sh work 500 6→ 返回类似下面的结果OK: work 已闪烁 6 次间隔 500ms同时你盯着开发板work 灯应该真的在闪。如果灯闪了、回显也对说明 OpenClaw 已经从“只会答”变成“会做”了。再补一条 GPIO 读写的直接验证确认底层通路没问题# 读一个 GPIO 的当前方向 cat /sys/class/gpio/gpio12/direction # 导出并设置为输出点亮 echo 12 /sys/class/gpio/export echo out /sys/class/gpio/gpio12/direction echo 1 /sys/class/gpio/gpio12/value # 读取当前值 cat /sys/class/gpio/gpio12/value把这段逻辑也封装成scripts/gpio_rw.sh在 SKILL.md 里加一条“读写任意 GPIO”的说明OpenClaw 就能接管更通用的引脚操作而不只是板载 LED。5. 本篇常见错排查Skill 不加载九成是目录名不规范。检查是否用了下划线、大写字母或中文。必须是小写字母数字连字符。Skill 加载了但不触发看 SKILL.md 的description和正文触发语。用户说“闪一下”你只写了“闪烁控制”匹配度就低。把口语化说法补进去。脚本执行报权限错误/sys/class/leds/和/sys/class/gpio/多数需要 root。要么脚本里加 sudo要么给 OpenClaw 运行用户配置对应的 udev 规则。回显是模型编的灯没动说明模型没真正调用脚本而是自己“脑补”了结果。检查 SKILL.md 里是否明确写了“必须执行 scripts 下的脚本不得自行编造输出”。闪烁间隔异常sleep不支持小数时用bc或改成毫秒级usleep。上面脚本用了bc如果板子上没装换成整数秒或sleep 0.5的写法。GPIO 导出失败部分内核已经废弃 sysfs GPIO改用libgpiod。这时把脚本里的echo /sys/class/gpio/换成gpioset/gpioget命令即可SKILL.md 里同步更新调用方式。6. 让 OpenClaw 长期接管嵌入式任务单次点灯只是验证。真正让 OpenClaw 在嵌入式 Linux 上长期干活建议把常用外设都做成独立 SkillUART 收发、I2C 读传感器、SPI 驱动屏幕、PWM 调电机。每个 Skill 一个目录SKILL.md 写清触发语和脚本入口scripts 里放稳定脚本references 里放寄存器手册和引脚映射。如果你打算让它承担更连续的编码和 Agent 任务比如自动写驱动、批量改设备树、跑回归脚本可以了解下 Coding Plan把长期编码场景的额度规划好Coding Planhttps://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewriteClaude Code 这类编码 Agent 的接入方式在文档里也有说明ClaudeCodeAnthropichttps://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_contentclaude-code-anthropicutm_campaignrewrite回到最实际的一点先把gpio-led-control这个 Skill 跑通看着灯真的闪起来再去扩展下一个外设。嵌入式场景里能动手的 OpenClaw价值远大于能聊天的 OpenClaw。

相关推荐

分布式物联网平台如何实现设备接入到业务闭环
分布式物联网平台如何实现设备接入到业务闭环

1. 这不是又一个“平台演示”,而是一套能扛住产线压力的物联网底座乐吾乐Web组态——这个词最近在工业自动化、智慧能源和实训教学圈子里被反复提起,但很多人点开官网看到“自研分布式物联网平台”几个字,第一反应还是:又一个PPT架… · 2026/9/27 12:10:20

3类方案对比评测:怎么做网页宣传防被黑指南
3类方案对比评测:怎么做网页宣传防被黑指南

3类方案对比评测:怎么做网页宣传防被黑指南 昨晚刚帮一个做建材的老板处理完网站挂马的事,看着后台全是红色的“高危漏洞”提示,他急得直拍桌子。这种网站被黑挂马不知道怎么办,是无数中小企业主建站后的噩梦,也是我在做怎么做网页宣传方案时最警惕的隐… · 2026/9/27 12:10:14

搞懂网络营销与直播电商是做什么的,源码下载别踩备案坑
搞懂网络营销与直播电商是做什么的,源码下载别踩备案坑

搞懂网络营销与直播电商是做什么的,源码下载别踩备案坑 备案流程一头雾水?这是90%新手站长在接触网络营销与直播电商是做什么的这个问题时,最先撞上的南墙。很多人以为只要把网站代码写好,找台服务器部署上去就能开张,结果卡在工信部ICP备案系统那… · 2026/9/27 12:10:08

STM32F410-Nucleo-64 开发板 RT-Thread BSP 使用指南:快速上手与源码级解析
STM32F410-Nucleo-64 开发板 RT-Thread BSP 使用指南:快速上手与源码级解析

操作系统嵌入式物联网嵌入式OSRTOS 【免费下载链接】rt-thread RT-Thread is an open source IoT Real-Time Operating System (RTOS). https://rt-thread.github.io/rt-thread/ 项目地址: https://gitcode.com/gh_mirrors/rt/rt-thread 点击查看 免费下载 本指南以… · 2026/9/27 13:02:28

响应式网页设计案例实现与分析:5个注意事项避免白花冤枉钱
响应式网页设计案例实现与分析:5个注意事项避免白花冤枉钱

响应式网页设计案例实现与分析:5个注意事项避免白花冤枉钱 网站做好了没人访问,这往往是老板们最头疼的事。很多甲方朋友找过来,第一句话就是:“我花了大几万做的响应式官网,怎么百度搜不到,手机上也打不开?” 这时候,问题通常不出在设计,而出在… · 2026/9/27 13:02:15

Local 与 Cloud:什么时候让它在本机做,什么时候丢到云端
Local 与 Cloud:什么时候让它在本机做,什么时候丢到云端

1 用本地 Local 的情况适合:项目只在你电脑上;需要本地数据库、硬件、GPU、私有文件;需要看实时日志;需要频繁手工调试;你想严格控制网络和文件范围。优点: 快、上下文近、能用本地环境、适合调试。风险&am… · 2026/9/27 13:02:15

立体库堆垛机无线数据采集:Metis-I网关与Modbus链路实施详解
立体库堆垛机无线数据采集:Metis-I网关与Modbus链路实施详解

去年接手一套自动化立体库的改造项目时,最先把我卡住的不是堆垛机控制逻辑,反而是看起来最不起眼的数据采集链路。堆垛机提升机构上的高度编码器、货叉状态、防撞激光信号一直靠滑触线传到地面柜,运行半年后滑触线接触不良的次数越来越多&… · 2026/9/27 13:02:03

SVG 导出 PNG 总是缺字、发糊、图片空白:前端图表导出的六个坑
SVG 导出 PNG 总是缺字、发糊、图片空白:前端图表导出的六个坑

流程图、思维导图、各种图表&#xff0c;只要是 SVG 渲染的&#xff0c;迟早会遇到一个需求&#xff1a;导出成 PNG。 网上的标准答案只有四行&#xff1a;把 SVG 序列化成字符串&#xff0c;塞进 <img>&#xff0c;画到 canvas 上&#xff0c;toBlob 导出。 const svg… · 2026/9/27 13:01:56

WebSocket 接收不到服务器端消息排查:从 IFRAME 到 window.parent 的消息监听链路
WebSocket 接收不到服务器端消息排查:从 IFRAME 到 window.parent 的消息监听链路

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 13:01:50

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介&#xff1a;这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程&#xff0c;从线性调频&#xff08;LFM&#xff09;信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑&#xff0c;面向电子信息工程、计算机、数学等专业学生&#xff0c;适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介&#xff1a;基于PyTorch的多模态虚假新闻检测项目完整代码包&#xff0c;面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者&#xff0c;解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征&#xff0c;以Res… · 2026/9/27 0:00:01

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介&#xff1a;这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程&#xff0c;从线性调频&#xff08;LFM&#xff09;信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑&#xff0c;面向电子信息工程、计算机、数学等专业学生&#xff0c;适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介&#xff1a;基于PyTorch的多模态虚假新闻检测项目完整代码包&#xff0c;面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者&#xff0c;解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征&#xff0c;以Res… · 2026/9/27 0:00:01

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码