Skip to content

Skill 与 Plugin

深入理解 OpenClaw 中 Tool、Skill 和 Plugin 的区别,以及如何安全地扩展你的 Agent

OpenClaw 新用户最常问的问题是:"Skill、Plugin 和 Tool 有什么区别?"听起来好像可以互换使用,但它们实际上运行在完全不同的层级。理解这一区别是高效扩展 Agent 的关键。

三个层级

OpenClaw 的可扩展性建立在三个协作运行的层级之上:

层级是什么示例如何定义
Tool底层可执行能力read、write、exec、web_search、browser内置于 OpenClaw 核心(26 个内置 Tool)
Skill一份结构化的 Prompt 文档,教会 Agent 如何使用 Toolgithub、notion、spotify-playerSKILL.md + YAML 元数据(非代码)
Plugin一个运行时代码模块,在平台层面扩展 OpenClawTelegram 频道、向量记忆存储、自定义 LLM 供应商TypeScript/JavaScript 模块

三者的协作链路如下:

Plugin → 可以自带 Skill → Skill 教会 Agent 使用 Tool → Tool 执行操作

Tool:基础层

Tool 是 26 个内置能力,让你的 Agent 能够与外部世界交互。每个 Tool 都有风险分级:

  • Safe —— 只读操作,如 read、web_search、list_directory
  • Medium —— 写操作,如 write、edit、browser
  • High —— 不受限的执行,如 exec、shell

你可以通过 openclaw.json 中的 tools.allow 配置来控制 Agent 可以使用哪些 Tool。如果你的 Agent 只需要搜索网页和读取文件,就不要给它 exec 权限。

Skill:智能层

Skill 是最容易被误解的部分。**Skill 不是代码。**它是一份结构化文档(SKILL.md),带有 YAML 前置元数据,会被加载到 Agent 的系统 Prompt 中。它教会 Agent 如何利用已有的 Tool 完成任务。

例如,github Skill 不包含任何 GitHub API 代码。它包含的是详细指令,告诉 Agent 如何使用 exec Tool 来运行 gh CLI 命令,实现创建 PR、审查代码和管理 Issue 等操作。

Skill 采用渐进式加载——Agent 只会在与当前对话相关时加载对应的 Skill 指令,从而高效利用上下文窗口。

Plugin:平台层

Plugin 是在系统层面扩展 OpenClaw 的实际运行时代码。共有四种类型:

  • Channel Plugin —— 连接新的消息平台(Telegram、Discord、Slack、WhatsApp)
  • Memory Plugin —— 添加持久记忆后端(向量存储、数据库)
  • Tool Plugin —— 注册超出 26 个内置 Tool 之外的全新 Tool 能力
  • Provider Plugin —— 添加自定义 LLM 供应商

大多数用户永远不需要编写 Plugin。Skill 和内置 Tool 已经覆盖了绝大多数使用场景。

如果你正在想"我需要开发一个 Plugin",先问问自己:能不能用 Skill 教会 Agent 以不同的方式使用现有 Tool 来解决?十次中有九次,答案是可以的。

值得了解的内置 Skill

OpenClaw 开箱内置 53 个 Skill。以下是大家实际在用的:

开发

Skill功能
github通过 gh CLI 创建 PR、代码审查、Issue 管理
gh-issues专注于 Issue 分类和管理的工作流
coding-agent多文件代码生成和重构模式
node-connectNode.js 调试和开发工作流
tmux终端会话管理,适用于长时间运行的任务

AI 与生成

Skill功能
geminiGoogle Gemini 集成,用于多模态任务
openai-image-gen通过 DALL-E 生成图片
openai-whisper音频转写
nano-banana-pro轻量级图片生成

通讯

Skill功能
slack频道消息发送、线程管理
discord服务器和频道交互
himalaya邮件收发
voice-call语音通话处理

效率工具

Skill功能
notion页面和数据库管理
obsidian笔记库交互
apple-notesmacOS 备忘录集成
apple-remindersmacOS 提醒事项集成
trello看板和卡片管理

智能家居与媒体

Skill功能
openhuePhilips Hue 灯光控制
sonoscliSonos 音箱控制
spotify-player音乐播放控制

实用工具

Skill功能
weather天气预报
nano-pdfPDF 阅读和摘要
summarize长内容摘要
healthcheckAgent 健康监控
model-usageToken 用量追踪

部分内置 Skill 如 apple-notes、apple-reminders 和 imsg 需要 macOS 环境。在 Claw Buff 上你的 Agent 运行在 Linux 容器中,因此这些 Skill 会被自动过滤。

ClawHub 生态

除了 53 个内置 Skill,ClawHub 是一个拥有超过 13,700 个 Skill 的社区市场。其中最受欢迎的 Skill 拥有大量用户:

  • 网页浏览 —— 180,000+ 次安装
  • Telegram 集成 —— 145,000+ 次安装

ClawHub 上的 Skill 按类别组织:AI/ML、工具、开发、效率、Web、科学、媒体、社交和金融。

如何找到优质 Skill

在 13,700+ 个 Skill 中,质量参差不齐。以下是找到优质 Skill 的方法:

查看 awesome-openclaw-skills 列表

社区维护的 awesome-openclaw-skills 列表包含 5,400 多个经过筛选的 Skill。在直接搜索 ClawHub 之前先从这里开始。

选择已验证的发布者

在 ClawHavoc 事件(下文详述)之后,OpenClaw 引入了发布者验证机制。优先选择来自已验证账户的 Skill。

安装前阅读 SKILL.md

由于 Skill 本质上就是 Prompt 文档,你可以准确阅读将被注入 Agent 上下文的所有指令。如果某个 Skill 的指令看起来可疑或过于宽泛,就跳过它。

查看安装量和更新时间

高安装量加上近期更新表明该 Skill 在积极维护。已停止维护且指令过时的 Skill 可能导致意外行为。

MCP Tool

OpenClaw 原生支持 Model Context Protocol (MCP),允许你将外部 Tool 服务器连接到 Agent。这对于集成那些没有专门 OpenClaw Skill 的服务特别有用。

配置位于 openclaw.json 的 mcpServers 部分:

{
  "mcpServers": {
    "google-drive": {
      "command": "npx",
      "args": ["-y", "@anthropic/mcp-google-drive"]
    }
  }
}

目前有超过 1,000 个社区 MCP 服务器可用,覆盖 Google Drive、Slack、数据库(PostgreSQL、MongoDB)、云平台(AWS、GCP、Azure)等。每个 MCP 服务器暴露自己的 Tool 集合,你的 Agent 可以直接调用。

MCP 服务器和 OpenClaw Skill 是互补的。MCP 服务器为你的 Agent 提供新的 Tool 能力;Skill 教会 Agent 何时以及如何有效地使用这些 Tool。为了获得最佳效果,将 MCP 服务器与提供使用说明的 Skill 配合使用。

安全:ClawHavoc 事件

2026 年 1 月至 2 月,OpenClaw 社区经历了 ClawHavoc——一次通过 ClawHub 上的恶意 Skill 发起的供应链攻击。这不是假设,而是真实发生的事件。

事件经过

12 个发布者账户共上传了 1,184 个恶意 Skill,包含:

  • 反向 Shell —— 使攻击者获得宿主机的远程访问权限
  • 数据窃取 —— 静默上传文件、凭据和环境变量
  • AMOS 窃取程序 —— 针对 macOS 的恶意软件,窃取浏览器密码和加密钱包
  • 通过 MEMORY.md 实现持久感染 —— 将指令注入 Agent 的持久记忆,使恶意行为在 Skill 被删除后仍然存活

后续响应

OpenClaw 与 VirusTotal 合作,移除了超过 2,400 个可疑 Skill。引入了发布者验证机制,让用户能够区分经过审查的发布者和匿名上传者。

然而,Snyk 后续审计发现 ClawHub Skill 中仍有 36% 包含某种形式的 Prompt 注入。VirusTotal 能够捕获二进制恶意软件和已知攻击模式,但无法检测自然语言 Prompt 注入——隐藏在 Skill 中的指令会以微妙的方式操纵 Agent 的行为。

Skill 中的 Prompt 注入尤其危险,因为 Skill 本身就是 Prompt。恶意 Skill 不需要偷带可执行代码——它只需要包含能说服 Agent 利用现有 Tool 执行有害操作的指令。

如何保护自己

如果你使用社区 Skill,以下做法不是可选的而是必须的:

  1. **安装前审查每个未经验证的 Skill。**阅读 SKILL.md 文件。它是一份文本文档——只需几分钟而非几小时。
  2. **使用 allowBundled 白名单只加载你需要的 Skill。**如果你只用 5 个,不要加载全部 53 个内置 Skill。
  3. **锁定 Skill 版本。**不要自动更新社区 Skill,升级前查看更新日志。
  4. **定期运行 openclaw security audit。**这会扫描已安装的 Skill 中的已知恶意模式。
  5. **最小化 tools.allow 配置。**如果你的 Agent 不需要 Shell 访问权限,就不要授予 exec。被入侵 Skill 的影响范围仅限于 Agent 可访问的 Tool。

在 Claw Buff 上管理 Skill

在 Claw Buff 上,Skill 管理通过控制台完成,无需手动编辑 openclaw.json。

启用和禁用 Skill —— 每个已安装的 Skill 在控制台的 Agent 部分都有一个开关。禁用的 Skill 不会被加载到 Agent 上下文中。

配置 API Key —— 需要外部服务凭据的 Skill(如 spotify-player 或 notion)提供内联配置字段,你可以在其中设置所需的环境变量。

浏览和安装 ClawHub Skill —— 你可以直接从控制台搜索和安装 ClawHub Skill,无需 SSH 访问容器。

二进制依赖 —— 部分 Skill 需要外部二进制文件(如用于媒体处理的 ffmpeg 或用于 GitHub 的 gh)。如果某个 Skill 需要容器中未预装的二进制文件,安装时会显示依赖提示。如需额外的系统包,请联系支持团队。

为 macOS 设计的 Skill(如 apple-notes、apple-reminders 和 imsg)在 Claw Buff 上会被自动过滤,因为你的 Agent 运行在 Linux 容器中。如果某个 Skill 在 ClawHub 上存在但未出现在你的控制台中,很可能就是这个原因。