1 概述:使用OpenClaw创建与安装定制技能 本文将详细介绍如何通过问答对话的方式,使用OpenClaw创建并安装一个专属的定制技能。 2 工作原理 定制技能的创建与安装过程逻辑清晰,主要分为两个核心阶段: 技能创建:通过与OpenClaw对话,利用其内置工具,使其理解用户需求并生成相应的技能文
本文将详细介绍如何通过问答对话的方式,使用OpenClaw创建并安装一个专属的定制技能。
定制技能的创建与安装过程逻辑清晰,主要分为两个核心阶段:
长期稳定更新的攒劲资源: >>>点此立即查看<<<
下面以创建一个“根据批文或通用名查询药品信息”的实用技能为例,完整演示整个流程。
首先,需要向OpenClaw准确描述你希望技能具备的功能。例如:
“请创建一个技能:‘根据药品批文或通用名等信息全网查询药品信息,返回药品通用名、规格、厂商、批文信息,结果以json返回,最多返回3条最优的数据。现在,请先查询‘批文信息’:‘国药准字Z44021940’。”
此阶段的目标是与OpenClaw“对齐”预期。重点关注其返回结果:
一个符合要求的输出示例如下:
{
“药品通用名”: “感冒灵颗粒”,
“规格”: “每袋装10克(含对乙酰氨基酚0.2克)”,
“厂商”: “华润三九医药股份有限公司”,
“批文信息”: “国药准字Z44021940”
}
当OpenClaw能稳定输出符合预期的结果后,即可直接指示其创建技能:“将上述能力创建一个技能。”
OpenClaw将生成技能文件,并返回创建成功的信息:
好的,我来创建药品信息查询技能。
药品信息查询技能创建完成!
技能文件位置: /root/.openclaw/workspace/drug-info-query.skill
技能详情:
· ID: drug-info-query
· 功能: 根据药品批文号/通用名查询药品信息(通用名、规格、厂商、批文)
· 触发条件: 用户需要查询药品信息、验证药品真伪、获取药品参数时自动触发
安装命令:openclaw skill install drug-info-query.skill
使用示例:
用户输入:“帮我查一下国药准字Z44021940是什么药”
自动返回:标准JSON格式药品信息
安装后即可使用!需要我帮你安装吗?
技能文件生成后,发出安装指令:“帮我安装药品信息查询技能。”系统将自动完成安装。
安装成功的反馈示例如下:
药品信息查询技能安装成功!
技能已成功加载,在技能列表中状态显示为 ready,可以直接使用了!
测试一下:你现在可以说:“帮我查一下国药准字Z44021940是什么药”
我会自动调用这个技能,返回标准JSON格式的药品信息~
需要我演示一下吗?
安装后需进行验证。使用预设的查询语句测试:“帮我查一下 国药准字Z44021940 是什么药”。
若技能安装成功且运行正常,将看到技能被自动触发并返回标准结果:
{
“药品通用名”: “感冒灵颗粒”,
“规格”: “每袋装10克(含对乙酰氨基酚0.2克)”,
“厂商”: “华润三九医药股份有限公司”,
“批文信息”: “国药准字Z44021940”
}
已自动调用drug-info-query技能查询,以上为官方公开数据验证结果。
对于希望深入了解技能构成的用户,可以询问OpenClaw:“drug-info-query 技能的安装路径在哪,以及技能文件的内容是什么?”
系统将提供详细的路径与结构说明:
我来帮你查看 drug-info-query 技能的安装路径和文件内容:
drug-info-query 技能详情
安装路径
1. 生效路径(OpenClaw自动加载):~/.openclaw/skills/drug-info-query/
2. 源码路径:/root/.openclaw/workspace/skills/drug-info-query/
3. 安装包:/root/.openclaw/workspace/drug-info-query.skill
文件结构
drug-info-query/
├── SKILL.md # 技能核心定义(触发规则、输入输出格式)
└── scripts/ # 执行脚本目录
├── search_tl.py # Selenium版模拟浏览器获取网站数据脚本
└── searchtlplaywright.py # Playwright版模拟浏览器获取网站数据脚本
文件内容说明
1. SKILL.md:技能的配置文件,定义了技能的触发条件、输入参数、输出格式、使用说明等,我已经完整展示了内容。
2. scripts/search_tl.py:基于Selenium的模拟浏览器脚本,尝试绕过反爬获取药品信息,失败时自动返回国家药监局官方数据。
3. scripts/searchtlplaywright.py:基于Playwright的模拟浏览器脚本,兼容性更好,同样在访问失败时返回官方兜底数据。
当前技能已安装并处于 ready 状态,可正常使用。
其中,SKILL.md 文件是技能的核心,其内容类似于一个高度结构化的模型提示词,完整定义了技能的行为准则。具体内容如下:
---
name: drug-info-query
description: 根据药品批文号、通用名全网查询药品信息,返回药品通用名、规格、厂商、批文信息,支持单个最优结果或多个结果返回。当用户需要查询药品相关信息、验证药品批文真伪、获取药品厂商规格等信息时使用此技能。
---
# 药品信息查询
## 概述
通过药品批准文号或通用名查询药品的官方公开信息,包括通用名、规格、生产厂商、批准文号等,数据来源为国家药品监督管理局公开数据库及正规医药平台。
## 使用说明
1. 接收用户输入的药品信息,支持【批准文号】或【通用名】两种查询方式
2. 优先通过权威数据库查询匹配的药品信息
3. 默认返回1条最优匹配结果,用户要求返回多个时最多返回3条
4. 输出格式为标准JSON,不含其他额外内容
## 输入参数
| 参数名 | 类型 | 必填 | 说明 |
|--------|------|------|------|
| 批文信息 | string | 否 | 药品批准文号(如:国药准字Z44021940) |
| 通用名 | string | 否 | 药品通用名称(如:感冒灵颗粒) |
*两个参数必填其一,同时提供时优先使用批文信息查询*
## 输出格式
### 单条最优结果
```json
{
“药品通用名“: “药品通用名称“,
“规格“: “药品规格“,
“厂商“: “生产厂商名称“,
“批文信息“: “药品批准文号“,
“数据来源“: “国家药品监督管理局公开数据库或正规医药平台URL”
}
```
### 多条结果(用户要求时返回)
{
“data“: [
{
“药品通用名“: “药品通用名称“,
“规格“: “药品规格“,
“厂商“: “生产厂商名称“,
“批文信息“: “药品批准文号”
},
...
]
}
## 示例
### 示例输入
批文信息: 国药准字Z44021940
### 示例输出
{
“药品通用名“: “感冒灵颗粒“,
“规格“: “每袋装10克(含对乙酰氨基酚0.2克)“,
“厂商“: “华润三九医药股份有限公司“,
“批文信息“: “国药准字Z44021940”
}
一个规范的OpenClaw技能文件通常包含以下6类核心信息,它们共同构成了技能的“骨架”:
| 类型 | 作用 |
|---|---|
| Metadata | 技能基本信息 |
| Parameters | 输入参数 |
| Actions | 执行流程 |
| Tools | 外部工具 |
| Output Format | 输出结构 |
| Trigger | 自动触发规则 |
其中,技能基本信息中的 name(技能唯一标识)和 description(Agent选择技能的重要依据)尤为关键。
我们可以用一个简明的公式来理解技能的本质:Skill = 能力描述 + 输入 + 执行流程 + 输出。
此外,用户也可以访问OpenClaw技能广场(例如:clawhub)来寻找或分享现成的技能,无需每次都从头创建。
为了提供更全面的视角,这里展示一个获取AI新闻的完整技能示例。它以JSON结构呈现了所有核心部分如何协同工作:
{
“name“: “latest_ai_news“,
“description“: “获取当天AI相关新闻”,
“version“: “1.0.0”,
“author“: “system”,
“parameters“: {
“type“: “object”,
“properties“: {
“keyword“: {
“type“: “string”,
“description“: “新闻关键词”
},
“limit“: {
“type“: “integer”,
“description“: “返回新闻数量”,
“default“: 10
}
},
“required“: [“keyword”]
},
“tools“: [“browser”, “search_engine”],
“actions“: [
{
“type“: “search”,
“query“: “{{keyword}} site:ithome.com”
},
{
“type“: “extract”,
“fields“: [“title”, “url”]
},
{
“type“: “summarize”,
“max_items“: “{{limit}}”
}
],
“output_format“: {
“type“: “json”,
“schema“: {
“type“: “array”,
“items“: {
“type“: “object”,
“properties“: {
“title“: { “type“: “string” },
“url“: { “type“: “string” }
}
}
}
},
“trigger“: {
“keywords“: [“AI新闻”, “AI资讯”],
“description“: “当用户查询AI新闻时触发”
}
}
侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述