OpenClaw养虾插件清单与使用指南
在OpenClaw生态中,插件是扩展其核心能力的关键。而这一切的起点,都始于一份清晰、规范的插件清单(Plugin Manifest)。这份清单定义了插件的身份、能力和行为准则,确保网关能够正确识别、加载并与之交互。今天,我们就来深入拆解OpenClaw插件清单的构成要素与开发约定。
package.json 要求
每个OpenClaw插件的身份证明,都内置于其package.json文件中。一个合规的最小化结构示例如下:
{
"name": "@openclaw/my-plugin",
"version": "1.0.0",
"description": "我的 OpenClaw 插件",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"openclaw": {
"type": "tool",
"displayName": "我的工具插件",
"minGatewayVersion": "0.5.0",
"permissions": ["network", "file-read"]
},
"keywords": ["openclaw", "openclaw-plugin"],
"license": "MIT"
}
关键在于那个特殊的openclaw字段,它是网关识别插件的唯一标识。
清单字段详解
让我们聚焦于openclaw节点下的各个字段,它们共同勾勒出插件的轮廓。
openclaw 节点字段
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
type |
string | ✅ | 插件类型:channel、tool、hook |
displayName |
string | ✅ | 面向用户的友好显示名称 |
minGatewayVersion |
string | ❌ | 插件运行所要求的最低网关版本 |
permissions |
string[] | ❌ | 插件运行所需的能力权限列表 |
configSchema |
object | ❌ | 用于定义插件配置项的JSON Schema对象 |
multiInstance |
boolean | ❌ | 是否支持同时运行多个实例(默认 false) |
其中,permissions字段的声明尤为重要。它相当于插件的“能力说明书”,让用户在安装前就能清晰了解插件会访问哪些系统资源,例如网络(network)、文件读取(file-read)、文件写入(file-write)或执行命令(exec)。这是一种建立信任的良好实践。
插件类型
OpenClaw插件主要分为三种类型,每种都有其特定的接口和用途。
Channel(渠道插件)
这类插件负责与外部消息平台(如微信、钉钉、Slack)对接,处理消息的接收与发送。其基本结构如下:
import { ChannelPlugin } from '@openclaw/sdk'
const plugin: ChannelPlugin = {
type: 'channel',
name: 'my-channel',
async onMessage(message, context) {
// 处理来自渠道的消息
},
async sendMessage(to, content, context) {
// 向渠道发送消息
}
}
export default plugin
Tool(工具插件)
工具插件用于扩展AI模型的能力,使其能够调用外部API或执行特定任务。一个工具插件可以包含多个工具:
import { ToolPlugin } from '@openclaw/sdk'
const plugin: ToolPlugin = {
type: 'tool',
tools: [{
name: 'my_tool',
description: '工具描述',
parameters: { /* JSON Schema */ },
handler: async (params, ctx) => {
return { result: 'done' }
}
}]
}
export default plugin
Hook(钩子插件)
钩子插件用于在消息处理的生命周期中注入自定义逻辑,实现拦截、修改或增强功能。
import { HookPlugin } from '@openclaw/sdk'
const plugin: HookPlugin = {
type: 'hook',
hooks: {
'message:before': async (message, ctx) => {
// 消息处理前的拦截逻辑
return message
},
'message:after': async (response, ctx) => {
// 消息处理后的后处理逻辑
}
}
}
export default plugin
导出约定
这里有一个必须遵守的硬性规则:插件必须使用默认导出(export default)。网关在加载时只会识别默认导出的对象,命名导出将被忽略。
// ✅ 正确
export default plugin
// ❌ 错误
export { plugin }
生命周期钩子
为了让插件能够优雅地管理资源,OpenClaw SDK提供了一系列生命周期钩子。实现这些方法可以让插件在加载、就绪、卸载等关键时刻执行相应操作。
| 钩子 | 触发时机 | 典型用途 |
|---|---|---|
onLoad |
插件被加载时 | 初始化数据库连接、加载配置文件等资源 |
onReady |
网关完全就绪后 | 执行依赖网关其他组件的启动后逻辑 |
onUnload |
插件被卸载时 | 关闭连接、释放内存、清理临时文件 |
onConfigChange |
用户修改插件配置后 | 实现配置的热更新,无需重启插件 |
一个简单的实现示例:
export default {
type: 'tool',
async onLoad(config, gateway) {
console.log('插件加载完成')
// 初始化逻辑
},
async onUnload() {
console.log('插件已卸载,资源已释放')
// 清理逻辑
}
}
本地测试
在发布之前,充分的本地测试至关重要。OpenClaw CLI提供了便捷的链接命令,允许你将本地开发的插件目录链接到网关中进行实时调试:
openclaw plugins link ./my-plugin
执行此命令后,以调试模式启动网关,即可加载并测试你的本地插件。
发布到 npm
当插件开发测试完毕,就可以准备发布到npm仓库,供他人使用了。流程非常标准:
# 构建生产代码
npm run build
# 登录 npm 账户
npm login
# 发布包(公开)
npm publish --access public
在点击发布按钮前,建议对照以下清单做最后确认:
- ✅
package.json中的版本号已按语义化版本规范更新。 - ✅
openclaw字段完整且正确。 - ✅ 项目包含清晰的README文档。
- ✅ 所有测试用例均已通过。
遵循上述规范,你就能构建出结构清晰、行为可靠、易于分发的OpenClaw插件,从而为整个生态贡献你的独特能力。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
物理学家用算子统一数学告别背公式时代
还记得那些年背过的数学公式吗?从三角函数的sin、cos、tan,到对数函数ln、log,再到指数、幂运算、平方根……它们像一片茂密的丛林,盘踞在从中学到大学的课本里,每一种都有自己独特的图像、性质和一大堆需要记忆的规则。 我们似乎默认了数学就是这样——知识不断叠加,体系日益庞杂,公式永远背不完。但
智能体协作:企业AI应用落地的关键路径与未来形态
AI正经历一场深刻的角色变革——它正从辅助工具演变为一支真正的“数字劳动力”大军。清晰的企业AI架构正在形成,呈现出三层体系:底层的微型智能体专注执行具体任务,中层的宏观智能体负责编排流程、交付最终成果,而顶层的元智能体则提供至关重要的治理与风险管控。 过去十年,企业AI的应用核心集中在预测分析与流
人大与OPPO突破图像检索:DeepImageSearch实现主动上下文推理
DeepImageSearch 这项研究,标志着图像检索领域一次重要的范式升级。它不再满足于单张图像的语义匹配,而是直面我们每个人在翻看相册、寻找记忆时的真实场景,提出了一个全新的方向:「主动探索」与「多步上下文推理」。 现有的图像检索系统,无论是传统的语义匹配方法,还是近期兴起的推理密集型方法,都
AI聊天记录可作法庭证据这些法律风险你需了解
和AI聊天,有些话还真得掂量掂量再说。 路透社在4月16日的一则报道中揭示了一个新趋势:随着人们越来越习惯向AI寻求各种建议,美国的律师们正忙着给客户打“预防针”——当问题涉及到人身自由或法律责任时,千万别把AI聊天机器人当成可以无话不谈的“树洞”。 这个警告,如今正变得前所未有的紧迫。导火索是今年
AI项目为何难以驱动业务增长十大试点困境解析
面对董事会日益增长的期待,许多企业正陷入一种“AI战略表演”的困境:各类试点项目不断涌现,汇报材料持续更新,但始终难以转化为清晰可衡量的商业成果。问题的根源往往不在于技术瓶颈,而在于业务流程未能重塑、数据基础尚未就绪、治理体系存在缺失,以及对技术供应商的过度依赖。 每隔一段时间,企业首席信息官(CI
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
相关攻略
2015-03-10 11:25
2015-03-10 11:05
2021-08-04 13:30
2015-03-10 11:22
2015-03-10 12:39
2022-05-16 18:57
2025-05-23 13:43
2025-05-23 14:01
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

