很多新手刚接触小龙虾(OpenClaw),都会有这样的疑问:怎么给它加新技能?Skill文档到底要写啥?开发的时候总出错,有没有简单的办法?
大家完全不用慌!小龙虾的Skill开发一点都不复杂,就跟给手机装APP一样简单,跟着步骤走,新手10分钟就能搞定。
本文全程用大白话,按「先懂概念→做准备→学开发→练案例→避坑→总结」的逻辑,把每一步拆到最细,新手看完就能直接动手,轻松解锁小龙虾新技能!
第一步:先搞懂2个核心概念(不绕弯,一看就会)
动手开发前,先搞懂两个关键名词,后续操作不迷路,不用记复杂定义,大白话讲明白:
1. 小龙虾(OpenClaw):不是AI助手,是AI时代的操作系统
很多人误以为小龙虾是普通AI助手,其实它和我们电脑用的Windows、手机用的iOS一样,是AI时代的操作系统,核心作用就一个——帮我们「指挥AI、调用各种技能」。
简单说区别:传统操作系统管硬件、装软件;小龙虾不管硬件,只管AI能力,用起来更简单:
不用记复杂命令、不用点一堆图标,说一句大白话(比如「帮我从文件里找关键词」),就能自动完成操作;
想要新功能,不用重装系统,只需要加一个「Skill」,就能解锁新能力;
不管懂不懂编程,都能开发Skill,零代码也能轻松上手。
2. Skill:小龙虾的「AI版APP」(能力扩展包)
Skill就是给小龙虾装的「APP」,一个Skill只做一件事(比如提取文本、统计文件数量),接收你的指令、执行操作、返回结果,是解锁小龙虾全部能力的关键。
重点提醒:一个完整的Skill,就是一个文件夹,里面必须有核心文件(要么是SKILL.md,要么是plugin.json),没有这个核心文件,小龙虾就识别不了你的技能,再努力也白搭。
第二步:做好3个准备(必做,避免后续踩坑)
开发前的准备工作很简单,都是「下一步下一步」的操作,跟着做就行,所有开发路径都需要准备这些:
安装Node.js:小龙虾的核心依赖,建议装v18及以上版本(v22版本更好用),直接官网下载,一路下一步安装即可;
安装并启动OpenClaw网关:安装完成后启动,启动后默认监听 http://localhost:18789(这个地址记好,后面测试要用);
准备编辑器:用VS Code最方便,也可以用你平时用惯的,只要能写简单的文档和脚本就可以;
可选操作:安装ClawHub CLI(终端输入npm install -g clawhub),后续测试、发布技能更方便,新手可以先不装,用到再补。
第三步:2种开发路径(新手优先选零代码,不用写代码)
OpenClaw给了2种Skill开发路径,新手直接选零代码,30分钟就能做出第一个能正常用的技能;懂一点编程的,再选深度开发做复杂功能。
路径1:零代码/轻量开发(新手首选,最快上手)
适合场景:做简单自动化任务(比如提取文本、执行简单命令),不用写复杂代码,不管会不会编程,复制粘贴就能做,所有系统都适配。
核心3步(直接照做,不用改任何内容):
1. 创建技能目录:复制下面的命令,粘贴到终端执行,自动创建并进入技能文件夹(括号里是示例,不用改):
mkdir -p ~/.openclaw/skills/技能名(比如text-keyword-extract-skill)cd ~/.openclaw/skills/技能名
2. 创建核心文件:在刚才的文件夹里,新建2个东西——① SKILL.md(必须建,告诉小龙虾这个技能是做什么的);② scripts文件夹(可选,放脚本,零代码新手建空文件夹即可);
3. 测试验证:不用重启OpenClaw网关(系统30秒内自动刷新识别),打开浏览器输入 http://127.0.0.1:18789/ ,输入指令就能测试。
路径2:深度开发(复杂功能用,懂一点JS/TS即可)
适合场景:需要对接第三方接口、做复杂逻辑(比如生成统计报表),想和小龙虾深度结合,适合懂一点JavaScript/TypeScript的小伙伴。
核心4步(简化版,不用记复杂操作):
进入技能目录,终端输入2个命令:npm init -y(初始化项目),再安装相关依赖(跟着终端提示输命令就行);
新建plugin.json文件:相当于给技能办「身份证」,填好技能名称、参数、所需权限,后面有模板,复制改一改即可;
新建index.ts/js文件:写核心逻辑(比如对接API、生成报表),写完后导出,供小龙虾调用;
测试验证:修改代码后,必须重启OpenClaw网关(终端输入openclaw gateway restart),重启后再打开网页测试。
第四步:核心重点:Skill文档怎么写(小龙虾的「说明书」)
Skill文档就相当于小龙虾的「使用说明书」,没有它,小龙虾不知道怎么调用你的技能。主要分2种,新手重点学SKILL.md,简单好写;深度开发再用plugin.json。
(一)新手款:SKILL.md(零代码必备,复制模板就够用)
这个文件由「顶部元数据+正文说明」两部分组成,不用自己写,复制模板改一改就行,一共6个核心部分,一看就懂:
元数据(顶部,用---包裹,必须填):只填4个关键信息——技能名称、功能描述、版本、所需权限(比如读文件填file.read,写文件填file.write);
技能概述:用一句话说清,这个技能能做什么、适合什么场景(比如「快速提取文本里的关键词,不用手动找,省时间」);
执行步骤:一步一步写清,小龙虾要怎么操作(比如「1. 接收我输入的文件路径和关键词 2. 检查文件在不在 3. 提取包含关键词的内容」);
参数说明:有输入参数(比如文件路径)就写,明确是否必填、是什么类型(新手基本都是「字符串」,不用纠结);
输出格式:写清技能执行后,会返回什么(比如「提取成功,告诉你文件存在哪里」「提取失败,告诉你哪里错了」);
可选补充:加一点注意事项、测试示例(新手一定要加,测试时更方便,不容易出错)。
元数据示例(直接复制,把括号里的内容改成自己的即可):
---name: text-keyword-extract-skilldescription: 提取文本文件中的关键词,保存到新文件,支持中文,不用手动查找version: 1.0.0author: 新手开发者permissions: [file.read, file.write]---
(二)进阶款:plugin.json(深度开发必备,套用模板)
这个文件也是技能的「身份证」,比SKILL.md详细一点,适合深度开发,直接套用下面的模板,把括号里的内容改成自己的,不用自己写代码:
{"name": "技能名","version": "1.0.0","description": "技能功能描述","author": "你的名字","skills": [{"action": "技能触发动作","description": "动作描述","parameters": [{"name": "参数名","type": "string","required": true,"description": "参数说明"}],"permissions": ["需要的权限"]}]}
(三)Skill规范目录结构(新手直接照做,不踩坑)
给大家一个规范的文件夹结构,新手直接照着建,不用自己琢磨,避免出错:
├── SKILL.md / plugin.json (必须有,核心文件)├── index.ts/js (可选,深度开发才用)├── scripts/ (可选,放Shell/bat脚本)└── references/ (可选,放参考文档)
第五步:实战案例(零代码,10分钟落地,直接复制)
光说不练假把式,下面给大家一个完整的零代码案例——「文本关键词提取Skill」,不用写一行代码,复制粘贴就能做,跟着操作,10分钟就能测试成功,新手直接照做就行。
案例核心信息(先看清楚,心里有底)
技能名:text-keyword-extract-skill(不用改,直接用)
功能:输入文件路径和关键词,自动提取文件里包含这个关键词的内容,保存到新文件,不用手动查找;
所需权限:file.read(读文件)、file.write(写文件)(固定填这两个,不用改);
适配系统:Linux/Mac(用Shell脚本)、Windows(用bat脚本),对应自己的电脑系统选就行。
Step1:创建技能目录(复制命令,终端直接执行)
不用自己新建文件夹,复制下面的命令,粘贴到终端,回车就能自动创建并进入目录,全程不用改:
# 创建目录(不用改)mkdir -p ~/.openclaw/skills/text-keyword-extract-skill# 进入目录(不用改)cd ~/.openclaw/skills/text-keyword-extract-skill
Step2:创建核心文件(复制内容,粘贴即可)
1. 新建SKILL.md文件(复制下面所有内容,粘贴到文件里)
新建一个名为SKILL.md的文件,把下面的内容全部复制粘贴进去,不用改任何东西,直接用:
---name: text-keyword-extract-skilldescription: 提取指定文本文件(.txt/.log)中的关键词内容,保存到新文件,支持中文,不用手动查找version: 1.0.0author: 新手开发者permissions: [file.read, file.write]---## 技能概述快速提取文本、日志文件里的关键词内容,自动保存到新文件,不用手动一行一行找,节省时间。## 执行步骤1. 我输入文本文件的绝对路径(比如D:/logs/202405.log、/home/user/docs/note.txt)和要找的关键词;2. 技能检查这个文件在不在,不在就提示“文件找不到”;3. 自动提取文件里包含这个关键词的所有内容;4. 生成一个带时间戳的新文件,把提取的内容存进去(避免多次提取的文件重复);5. 提示我“提取完成”,并告诉我新文件存在哪里。## 参数说明- filePath:必须填,就是文本文件的绝对路径(比如D盘的logs文件夹里的202405.log,或者Mac里的文档文件夹里的note.txt),必须是.txt、.log这类文本格式;- keyword:必须填,就是我要找的关键词(中文、英文、数字都可以,比如“OpenClaw”“报错”“2024”)。## 输出格式- 成功:提示“关键词提取完成!输出文件路径:XXX”(XXX是新文件的具体位置);- 失败:提示具体错误(比如“文件不存在”“关键词没填”)。## 注意事项1. 如果文件很大(超过100MB),提取会慢一点,耐心等一会儿就行;2. 关键词区分大小写(比如“OpenClaw”和“openclaw”是两个不同的关键词,找的时候不会混为一谈);3. 改SKILL.md文件,不用重启OpenClaw网关;但改脚本文件,必须重启网关(终端输入openclaw gateway restart);4. 新文件默认存在当前的技能文件夹里,不用自己找。## 测试示例输入指令:提取/home/user/docs/note.txt文件中的关键词“OpenClaw”输出结果:生成一个叫extract_result_20240520163000.txt的文件,里面是note.txt里所有包含“OpenClaw”的内容。
2. 新建脚本文件(二选一,对应自己的系统)
① Linux/Mac系统:在技能文件夹里,新建scripts文件夹,再在scripts里新建extract.sh文件,复制下面的内容粘贴(每一步都有简单注释,不用懂编程也能看懂)
#!/bin/bash# 作用:接收小龙虾传递的2个信息(文件路径、关键词),完成提取并告诉我结果(适合Linux/Mac系统)# 1. 接收信息(第一个是文件路径,第二个是关键词,顺序不能乱)filePath=$1keyword=$2# 2. 检查:文件路径和关键词都不能空,空了就提示错误,退出操作if [ -z "$filePath" ] || [ -z "$keyword" ]; thenecho "参数错误:文件路径和关键词都不能空,请重新输入"exit 1fi# 3. 检查:文件是不是真的存在,不存在就提示错误,退出操作if [ ! -f "$filePath" ]; thenecho "文件不存在:$filePath"exit 1fi# 4. 生成新文件名:加上当前时间戳,避免多次提取的文件重名currentTime=$(date +%Y%m%d%H%M%S)outputFile="extract_result_$currentTime.txt"# 5. 核心操作:找到文件里包含关键词的内容,写入新文件grep "$keyword" "$filePath" > "$outputFile"# 6. 提示结果:成功或失败,都明确告诉我if [ $? -eq 0 ]; thenecho "提取完成!文件路径:$(pwd)/$outputFile"elseecho "提取失败,检查一下文件格式是不是文本,或者关键词有没有输错"fi
② Windows系统:在技能文件夹里,新建scripts文件夹,再在scripts里新建extract.bat文件,复制下面的内容粘贴,直接用:
@echo off# 作用:接收小龙虾传递的2个信息(文件路径、关键词),完成提取并告诉我结果(适合Windows系统)# 1. 接收信息(第一个是文件路径,第二个是关键词,顺序不能乱)set filePath=%1set keyword=%2# 2. 检查:文件路径不能空,空了就提示错误,退出操作if not defined filePath (echo 参数错误:文件路径不能为空,请重新输入exit /b 1)# 检查:关键词不能空,空了就提示错误,退出操作if not defined keyword (echo 参数错误:关键词不能为空,请重新输入exit /b 1)# 3. 检查:文件是不是真的存在,不存在就提示错误,退出操作if not exist "%filePath%" (echo 文件不存在:%filePath%exit /b 1)# 4. 生成新文件名:加上当前时间戳,避免多次提取的文件重名set currentTime=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%set outputFile=extract_result_%currentTime%.txt# 5. 核心操作:找到文件里包含关键词的内容,写入新文件findstr /C:"%keyword%" "%filePath%" > "%outputFile%"# 6. 提示结果:成功或失败,都明确告诉我if %errorlevel% equ 0 (echo 提取完成!文件路径:%cd%\%outputFile%) else (echo 提取失败,检查一下文件格式是不是文本,或者关键词有没有输错)exit /b 0
Step3:测试验证(新手必做,3步搞定,超简单)
确认OpenClaw网关已启动:如果没启动,打开终端,输入openclaw gateway start,回车即可;
不用重启网关:第一次创建脚本,系统会自动识别,不用多操作;
打开测试页面:浏览器输入 http://127.0.0.1:18789/ ,在输入框输测试指令(比如案例里的「提取/home/user/docs/note.txt文件中的关键词‘OpenClaw’」),回车就能看到结果。
第六步:避坑指南(5个新手必看,少走80%弯路)
新手开发Skill,很容易踩一些小坑,总结5个简单的注意事项,记好就能少走很多弯路:
SKILL.md写清楚:别写模糊的话(比如别写「处理文件」,要写「提取文件里的关键词」),加上测试示例,小龙虾更容易识别你的指令;
一个Skill只做一件事:别把「提取文本」和「统计文件数量」揉在一个Skill里,调用更精准,后续修改也更简单;
权限别多要:用什么权限就填什么(比如提取文本,只填file.read和file.write),不用的权限别填,避免冗余;
测试要到位:修改脚本后必须重启网关,不然修改不生效;多测试几种情况(比如文件不存在、关键词没填),确保技能能正常用;
命名要规范:技能文件夹用「小写字母+横杠」(比如text-keyword-extract-skill),别用中文和特殊符号,不然小龙虾可能识别不了。
第七步:总结(新手极简流程,照做就对了)
最后给大家总结一个极简流程,新手照着做,不用想太多,就能快速开发出自己的第一个Skill:
准备环境:安装Node.js和OpenClaw网关,启动网关;
创建目录:复制终端命令,新建技能文件夹;
写核心文件:复制模板,改一改SKILL.md和对应系统的脚本;
测试验证:打开 http://127.0.0.1:18789/ ,输指令测试,看结果;
发布分享(可选):想分享给别人用,就安装ClawHub CLI,发布到社区。
其实小龙虾的Skill开发真的一点都不复杂,核心就是「明确技能要做什么、写清楚说明书、跟着步骤测试」。哪怕你完全不懂编程,用零代码路径,复制粘贴也能快速开发自己的Skill,轻松解锁AI时代的高效能力~
夜雨聆风