教程

OpenClaw Skills 开发完全指南:从零编写高质量 SKILL.md 自定义技能文件

OpenClaw Skills 开发完整教程:SKILL.md 文件结构详解、自动触发 vs 显式触发原理、三个实战模板(GitHub 仓库管理/每日信息简报/代码健康检查)、让技能精准自动触发的描述写法,以及技能质量标准和 clawhub.ai 使用方法。

2026/4/197分钟 阅读ClaudeEagle

OpenClaw 的 Skills 系统是它最强大的扩展机制——一个 SKILL.md 文件,给 Agent 提供特定任务的专属指南、工具使用说明、执行步骤。写好技能文件,Agent 处理对应任务的质量会大幅提升。

这篇文章从头教你如何写一个高质量的 Skills 文件。


Skills 的工作原理

技能文件的结构:SKILL.md 是给 Agent 读的专业手册。当 Agent 遇到触发条件时,自动加载对应技能,按里面的步骤执行。

触发方式有两种

  1. 显式触发:用户说「/github-manage」或「帮我用 github 技能...」
  2. 自动触发:Agent 识别到任务匹配技能描述,自动加载

存放位置

~/.openclaw/workspace-content/skills/ # 全局技能 /project-workspace/skills/ # 项目级技能

SKILL.md 文件结构

一个完整的技能文件包含这几个部分:

markdown
# 技能名称

## 描述
[一句话说明这个技能做什么,用于自动触发判断]

## 触发条件
[什么情况下应该使用这个技能]

## 工具和权限
[需要哪些工具、API 密钥、外部服务]

## 执行步骤
[详细的步骤说明]

## 输出格式
[期望的输出格式和风格]

## 注意事项
[常见错误、边界情况、重要限制]

## 示例
[典型调用示例]

实战示例 1:GitHub 仓库管理技能

创建 ~/.openclaw/workspace-content/skills/github-manage/SKILL.md

markdown
# GitHub 仓库管理技能

## 描述
管理 GitHub 仓库的 Issues、PRs、代码审查和 Release。
当用户需要操作 GitHub 时自动激活。

## 触发条件
- 提到 GitHub、Issue、PR、pull request、代码审查
- 要求创建、关闭、管理任何 GitHub 资源
- 需要查看 GitHub 通知或仓库信息

## 工具和权限
需要 GITHUB_TOKEN 环境变量(在 ~/.openclaw/.env 里配置)
权限范围:repo, issues, pull_requests

## 执行步骤

### 查看 Issues
1. 使用 `gh issue list --repo [OWNER/REPO]` 列出开放的 Issues
2. 按优先级/标签过滤
3. 总结每个 Issue 的核心问题

### 创建 PR
1. 确认当前分支和改动内容
2. 运行 `git log main..HEAD --oneline` 获取改动摘要
3. 生成符合项目规范的 PR 描述
4. 使用 `gh pr create` 创建(附标题、描述、标签)
5. 根据改动内容请求合适的 Reviewer

### 代码审查
1. 使用 `gh pr view [PR_NUMBER] --json` 获取 PR 详情
2. 用 `gh pr diff [PR_NUMBER]` 查看代码改动
3. 按以下维度审查:正确性、安全性、可维护性、性能
4. 用 `gh pr review` 提交审查意见

### 处理通知
1. 使用 `gh api notifications` 获取未读通知
2. 按重要性分类(@提到我的、需要我操作的、其他)
3. 汇报需要我处理的通知

## 输出格式
- Issue/PR 列表:编号 + 标题 + 状态 + 最后更新
- 审查意见:分类列表(必改/建议/疑问)
- 通知摘要:按优先级排序的行动项

## 注意事项
- 创建 PR 前确认 CI 是否通过
- 批量关闭 Issue 前先确认
- 不要在未授权仓库上执行操作

## 示例调用
- "查看 openclaw/openclaw 仓库这周的 Issue 动态"
- "给当前分支创建 PR,标题参考最近的 commit message"
- "帮我审查 PR #234,重点关注安全性"

实战示例 2:每日简报技能

markdown
# 每日信息简报技能

## 描述
聚合并整理每日需要关注的信息:GitHub 通知、邮件摘要、
日历事件、重要新闻。当用户要求每日简报或早报时激活。

## 触发条件
- "每日简报"、"早报"、"今天有什么需要关注的"
- 用户要求信息聚合/汇总

## 工具和权限
- GitHub CLI(查看通知)
- 日历 API(如果配置了)
- Web 搜索(获取新闻)

## 执行步骤

1. **GitHub 通知**(优先级最高)
   - 获取未读通知(`gh api notifications`)
   - 识别:直接 @ 我的、需要我操作的 PR/Issue
   - 只报告需要我行动的,忽略纯信息类

2. **日历事件**
   - 查看今天和明天的事件
   - 标记 2 小时内的紧急事件
   - 提醒需要准备的内容

3. **开发进度**
   - 查看 git status 和最近的 commit
   - 有没有未完成的 PR 或 branch
   - 昨天的工作连接到今天的什么任务

4. **可选:相关新闻**(如果用户配置了关键词)
   - 搜索用户关心的技术领域(从 USER.md 读取)
   - 筛选最重要的 1-3 条

## 输出格式

📅 [日期] 每日简报

⚡ 需要立即处理([N]项)

  • [具体行动项]

📌 今日日程

  • [时间] [事项]

🔀 开发状态

  • [当前 PR/分支状态]

📰 今日资讯(可选)

  • [1-3 条相关新闻]
## 注意事项 - 早上 8 点以前不要主动发简报(通过 HEARTBEAT.md 控制) - 如果没有紧急事项,简报要简短,不超过 10 行 - 优先级:需要行动 > 有时间限制 > 信息性内容

实战示例 3:代码健康检查技能

markdown
# 代码健康检查技能

## 描述
定期扫描代码库,检测技术债、安全问题、
性能瓶颈和文档缺失。支持按需调用和定时运行。

## 触发条件
- "代码健康检查"、"技术债扫描"
- HEARTBEAT.md 中配置的定时任务

## 工具和权限
- 读取所有代码文件
- 执行 lint 工具(npm run lint、flake8 等)
- 运行安全扫描(npm audit、safety 等)

## 执行步骤

### 快速扫描(默认,约 2 分钟)
1. 运行 lint,统计警告数量
2. 检查过时依赖(`npm outdated`)
3. 统计 TODO/FIXME 注释数量
4. 检查超过 300 行的文件(可能需要拆分)

### 深度扫描(用户明确要求时)
1. 运行安全扫描(`npm audit`)
2. 分析圈复杂度(嵌套超过 4 层的函数)
3. 检查没有测试覆盖的公共函数
4. 扫描硬编码的 URL、密钥、配置

### 对比基准
如果有 baseline.json,对比本次和基准的差异:
- 技术债增加了还是减少了?
- 哪些指标变化最大?

## 输出格式

代码健康报告 [日期] ────────────────── ✅ 通过:[项目列表] ⚠️ 警告:[项目列表] ❌ 问题:[项目列表]

需要关注:

  1. [最重要的问题] - [建议行动]
  2. [次要问题]

与上周对比:技术债 [↑↓N%]

## 注意事项 - 只报告新出现的问题(不重复上周已知的) - 按影响程度排序,不要列出 20 条无关紧要的 - 发现 Critical 安全漏洞时立即通知,不等定时汇报

让技能自动触发的技巧

描述(Description)是自动触发的关键,写得越精准,触发越准确:

不够精准(可能误触发或漏触发)

markdown
## 描述
帮助用户做代码相关的事情

精准(触发时机明确)

markdown
## 描述
当用户需要操作 GitHub(Issues/PR/代码审查/通知)时激活的专属技能。
包含 GitHub CLI 工具的完整使用指南和最佳实践。
触发词:GitHub、Issue、PR、pull request、代码审查、gh 命令

技能文件的质量标准

好的技能文件满足:

  1. 可执行:步骤足够具体,按步骤操作不会有歧义
  2. 有边界:明确说明什么情况不用这个技能
  3. 有格式:输出格式清晰,用户一眼看懂
  4. 有容错:常见错误和边界情况都写了处理方式
  5. 不太长:重点突出,不超过 300 行

在 clawhub.ai 寻找现成技能

不需要全部自己写——clawhub.ai 是 OpenClaw 和 Claude Code 的技能市场:

bash
# 浏览热门技能
openclaw skills browse

# 安装技能
openclaw skills install weather
openclaw skills install github-management
openclaw skills install obsidian-notes

# 查看已安装
openclaw skills list

来源:docs.openclaw.ai Skills 文档 | clawhub.ai | 整理:ClaudeEagle

相关文章推荐

教程OpenClaw Skills 开发指南:从零打造你的专属 AI 工作流插件OpenClaw Skills 完整开发教程:Skills 工作原理、SKILL.md 文件格式、触发机制(关键词/描述匹配)、脚本和资源文件组织、发布到 ClaWHub 市场,以及 5 个实用 Skill 开发案例(天气/代码审查/日报生成/数据监控/自动翻译)。2026/3/15教程Claude Code Skills 完全指南:创建自定义技能、Bundled Skills 与高级模式Claude Code Skills 完全指南:5 个内置 Bundled Skills(/simplify 并行 3 Agent/\batch Git Worktree 并行/\debug 会话日志/\loop 定时执行/\claude-api 自动激活)、3 步创建自定义 Skill(目录/SKILL.md/测试)、存储位置与优先级(Enterprise/Personal/Project/Plugin 命名空间)、Frontmatter 完整配置(name/description/disable-model-invocation/tools)、两种内容类型(参考型内联/任务型手动)、高级模式($ARGUMENTS 字符串替换/支持文件目录/动态注入上下文/子 Agent 执行),以及三种共享方式和故障排查。2026/3/8教程OpenClaw 零基础完全入门:安装、Telegram 配置、记忆系统和技能插件完整指南OpenClaw 从零开始完整教程:用宠物龙虾类比理解架构、npm 安装步骤、Telegram Bot 配置、SOUL.md 性格定义、三层记忆系统(每日日志/长期记忆/MEMORY.md)、HEARTBEAT.md 主动任务、技能安装,以及安全配置和常见问题解决。2026/4/18教程OpenClaw 快速入门:用 Telegram 控制 AI Agent,5 分钟搭建个人 AI 助理OpenClaw 5 分钟快速入门:用 Telegram 控制 AI Agent,含安装配置、Bot 创建、Skills 定义、多渠道支持、Claude Code 编程任务集成,以及与 Claude Code CLI 的区别和互补关系。2026/4/13教程Claude Code SKILL.md 自定义技能教程:创建可复用 AI 工作流,告别重复配置Claude Code SKILL.md 自定义技能教程:4 种技能类型详解(领域知识、工作流、安全检查、支付约束),含团队共享配置和全局 Skill 设置,告别每次重复配置。2026/4/10教程OpenClaw 多 Agent 架构入门:用 Telegram Bot 控制你的 AI Agent 集群OpenClaw 多 Agent 架构入门指南:通过 Telegram 控制 AI Agent 集群,支持子 Agent 编排、MCP 集成和多节点部署。含快速开始教程。2026/4/7