OpenClaw Skills 入门:手把手教你写第一个 Skill

15 阅读1分钟

10 分钟打造你的专属 AI 能力,让 OpenClaw 更懂你

什么是 Skill?

Skill 是 OpenClaw 的扩展系统,让你的 AI 助手获得新能力:

  • 📊 查天气
  • 📧 发邮件
  • 📈 获取股票价格
  • 🤖 调用外部 API
  • ... 任何你能想到的

Skill 结构

my-skill/
├── SKILL.md          # 技能描述(必需)
├── skill.js          # 可选脚本
└── references/       # 可选参考文档
    └── api-docs.md

最简 Skill 示例

1. 创建目录

mkdir -p ~/.openclaw/skills/my-first-skill

2. 写 SKILL.md

# My First Skill

## 描述
这是一个示例 Skill,教你如何创建自定义能力。

## 触发条件
当用户说"测试 skill"时激活

## 行为
1. 读取用户输入
2. 回复"Skill 已激活!"
3. 可选:调用外部脚本

3. 测试

你: 测试 skill
OpenClaw: Skill 已激活!

进阶:带脚本的 Skill

SKILL.md

# 天气查询 Skill

## 触发
用户问天气时激活

## 脚本
运行 `skill.js` 获取天气数据

skill.js

#!/usr/bin/env node
const city = process.argv[2] || "Beijing";
const url = `https://wttr.in/${city}?format=3`;

fetch(url)
  .then(r => r.text())
  .then(data => {
    console.log(`${city} 天气: ${data}`);
  });

测试

你: 北京天气怎么样?
OpenClaw: [运行 skill.js]
输出: Beijing 天气: Beijing: ☀️ +15°C

实用 Skill 案例

1. 每日简报

// skill.js - 每日新闻摘要
const news = await fetchNews();
const summary = await summarize(news);
console.log(summary);

2. GitHub PR 检查

// skill.js - 检查 PR 状态
const prs = await checkPRs();
console.log(`有 ${prs.length} 个待审查的 PR`);

3. 股价提醒

// skill.js - 获取股价
const price = await getStockPrice("AAPL");
console.log(`AAPL 当前价格: $${price}`);

Skill 发布到 ClawHub

写好 Skill 后,可以分享给社区:

  1. Fork github.com/openclaw/cl…
  2. 把你的 Skill 放到 skills/ 目录
  3. 提交 PR
  4. 审核通过后,所有人都能用

常见问题

Q: Skill 和普通脚本有什么区别? A: Skill 是声明式的,OpenClaw 会根据 SKILL.md 自动决定何时调用。

Q: 可以用 Python 吗? A: 可以!脚本可以是任何可执行文件。

Q: Skill 有权限限制吗? A: 默认在沙箱中运行,可在配置中调整。

下一步


💬 你有什么 Skill 创意?评论区聊聊!