📑 目录
1. 什么是Agent Skills
2. Skills目录结构解剖
3. SKILL.md编写指南
4. 创建第一个Skill
5. 工具集成
6. 测试与调试
7. 发布到ClawHub
8. 高级模式
🤔 什么是Agent Skills
Agent Skills是OpenClaw的"技能包"系统。每个Skill本质上是一个SKILL.md文件加上可选的辅助文件,它告诉Agent在特定场景下应该如何行动。
💡 核心理念
Skills不是代码库,而是结构化的提示词+知识。Agent读取SKILL.md后,就知道如何处理特定类型的任务。这就像给Agent一本"操作手册"。
Skills vs 传统插件
- 传统插件:需要编写代码、处理API、管理依赖
- Agent Skills:只需写Markdown,Agent自己决定如何执行
- 零代码:非开发者也能创建强大的Skills
- 可组合:多个Skills可以协同工作
📁 Skills目录结构解剖
my-awesome-skill/
├── SKILL.md # 核心文件(必须)
├── templates/ # 可选:模板文件
│ └── report.md
├── examples/ # 可选:示例文件
│ └── sample-output.md
├── scripts/ # 可选:辅助脚本
│ └── fetch-data.sh
└── README.md # 可选:说明文档
📌 关键规则
- SKILL.md是唯一必须的文件
- 目录名就是Skill的标识符
- 所有路径相对于SKILL.md所在目录
- 辅助文件通过相对路径在SKILL.md中引用
📝 SKILL.md编写指南
SKILL.md是Skill的灵魂,Agent通过它来理解"我该怎么做"。
基本结构
# Skill名称
## 触发条件
描述什么时候应该使用这个Skill。
## 执行步骤
1. 第一步做什么
2. 第二步做什么
3. ...
## 输出格式
描述输出应该是什么样的。
## 工具使用
列出需要用到的工具和使用方式。
## 注意事项
特殊情况处理、边界条件等。
实战示例:SEO审计Skill
# SEO审计技能
## 触发条件
当用户要求"检查SEO"、"SEO审计"、"网站优化分析"时触发。
## 执行步骤
### 1. 获取目标页面
使用 `web_fetch` 获取页面HTML内容:
- 提取 title、meta description
- 检查 h1-h6 标签层级
- 分析内部链接和外部链接
### 2. 技术SEO检查
使用 `exec` 执行以下检查:
```bash
# 检查页面加载速度
curl -o /dev/null -s -w '%{time_total}' URL
# 检查robots.txt
curl -s URL/robots.txt
# 检查sitemap
curl -s URL/sitemap.xml
```
### 3. 内容分析
- 关键词密度检查
- 内容长度评估
- 图片alt标签检查
- 移动端友好性
### 4. 生成报告
按以下格式输出:
| 检查项 | 状态 | 建议 |
|--------|------|------|
| Title标签 | ✅/❌ | 具体建议 |
| Meta描述 | ✅/❌ | 具体建议 |
| ... | ... | ... |
## 工具使用
- `web_fetch` — 获取页面内容
- `web_search` — 搜索竞品对比
- `exec` — 执行技术检查命令
- `write` — 生成报告文件
## 注意事项
- 单次最多审计5个页面
- 对于SPA页面,需要使用browser工具
- 报告保存到 /var/www/miaoquai/seo-report.html
🎯 创建第一个Skill
1创建目录
mkdir -p ~/.openclaw/skills/my-first-skill
cd ~/.openclaw/skills/my-first-skill
2编写SKILL.md
# 每日新闻摘要
## 触发条件
当用户说"今天有什么新闻"、"AI新闻"、"行业动态"时触发。
## 执行步骤
1. 使用 web_search 搜索最新AI新闻
2. 筛选过去24小时内的新闻
3. 按重要性排序
4. 生成摘要报告
## 输出格式
### 📰 今日AI新闻速递
1. **标题** — 一句话摘要(来源)
2. ...
## 工具使用
- web_search: 搜索新闻
- web_fetch: 获取新闻详情
- write: 保存报告
3测试Skill
# 在OpenClaw中测试
openclaw skills check
# 然后对Agent说:"今天有什么AI新闻?"
🔧 工具集成
Skills可以调用OpenClaw的所有内置工具,这是Skills强大能力的来源。
常用工具速查
# 搜索
web_search(query="关键词", count=5)
# 获取网页
web_fetch(url="https://example.com")
# 文件操作
read(path="/path/to/file")
write(path="/path/to/file", content="内容")
edit(path="/path/to/file", edits=[{...}])
# 系统命令
exec(command="ls -la")
# 浏览器
browser(action="navigate", url="https://example.com")
browser(action="snapshot")
# 消息
message(action="send", message="内容", target="channel")
# 定时任务
cron(action="add", job={...})
工具权限控制
# 在SKILL.md中声明需要的工具
## 工具权限
本Skill需要以下工具:
- web_search(只读)
- exec(受限:仅允许curl命令)
- write(仅限/var/www/目录)
🧪 测试与调试
# 1. 检查Skill是否被正确加载
openclaw skills check
# 2. 查看Agent的Skills列表
# 在对话中说:"你有哪些skills?"
# 3. 调试模式
# 在SKILL.md中添加调试步骤
## 调试
如果执行出错,请:
1. 检查工具是否可用
2. 查看错误日志
3. 逐步执行并输出中间结果
📤 发布到ClawHub
# 1. 确保SKILL.md质量
openclaw skills check
# 2. 发布到ClawHub
clawhub publish ./my-first-skill
# 3. 设置可见性
clawhub visibility my-first-skill public
# 4. 查看发布状态
clawhub info my-first-skill
🎓 高级模式
条件分支
# 在SKILL.md中使用条件逻辑
## 执行步骤
如果用户提供了URL:
1. 使用 web_fetch 获取内容
否则:
1. 使用 web_search 搜索
2. 让用户选择结果
组合Skills
# 在一个Skill中引用另一个Skill的输出
## 执行步骤
1. 执行"数据收集"Skill获取原始数据
2. 执行"数据分析"Skill处理数据
3. 执行"报告生成"Skill输出报告
循环处理
# 处理列表数据
## 执行步骤
对于每个URL:
1. web_fetch获取内容
2. 提取关键信息
3. 追加到结果列表