OpenClaw 概览 入门
OpenClaw 是一款开源 AI 自动化代理工具,GitHub 星标超 18 万。它可以将 Claude / GPT / Gemini 等大语言模型连接到消息平台、开发工具和办公软件,通过自然语言完成流程化工作。
基础办公自动化
数据处理、文件分类、文档生成、定时报告等重复性任务自动完成
跨工具协同
关联 Git、浏览器、办公软件、飞书 / 钉钉等通讯工具
定制化扩展
自定义 Skill、接入 API 和私有知识库、灵活构建工作流
开发辅助
集成 Cursor Agent CLI,远程运维、日志分析、代码生成一条龙
架构流程
环境要求 准备
安装前请确认以下环境已就绪。
| 项目 | 要求 | 说明 |
|---|---|---|
| Node.js | ≥ 22.x | 必须,推荐使用 nvm 管理版本 |
| 操作系统 | macOS / Linux / Windows (WSL2) | Windows 需先启用 WSL2 |
| 内存 | ≥ 8 GB | 建议 16 GB 以获得更好体验 |
| 磁盘 | ≥ 20 GB 可用空间 | 包含模型缓存与日志 |
| Git | 可选 | 仅源码安装需要 |
| LLM API Key | 至少一个 | Anthropic / OpenAI / Google 等 |
安装 OpenClaw 核心
支持一键脚本和 npm 两种安装方式,以下分平台详解。
-
安装 Node.js 22+(若已有可跳过)
推荐使用 nvm 管理 Node 版本:
bash# 安装 nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash # 重新加载 shell 配置 source ~/.zshrc # 安装并使用 Node 22 nvm install 22 nvm use 22 node -v # 确认输出 v22.x.x -
一键安装 OpenClaw
官方安装脚本会自动检测系统、安装依赖并完成基础配置:
bashcurl -fsSL https://openclaw.ai/install.sh | bash备选方式:npm 全局安装 如果一键脚本遇到网络问题,也可以用 npm 安装:
npm install -g openclaw@latest -
运行初始配置向导
bashopenclaw onboard --install-daemon--install-daemon参数会将 OpenClaw 安装为系统服务(launchd),实现开机自启。 -
验证安装
bashopenclaw doctor该命令会检查运行时环境、依赖、API 连通性等,全部通过即安装成功。
-
访问 Web 控制面板
浏览器打开以下地址进入管理界面:
urlhttp://127.0.0.1:18789#token=YOUR_TOKENToken 保存在
~/.openclaw/openclaw.json配置文件中。
-
启用 WSL2
以管理员身份打开 PowerShell,执行:
powershell(管理员)wsl --install安装完成后重启电脑。重启后首次进入 WSL 时会提示设置用户名和密码。
-
在 WSL2 中安装 Node.js 22+
打开 WSL 终端(在开始菜单搜索「Ubuntu」或对应发行版),执行:
bash (WSL2)# 安装 nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash # 重新加载配置 source ~/.bashrc # 安装 Node 22 nvm install 22 nvm use 22 node -v # 确认输出 v22.x.x -
安装 OpenClaw
仍然在 WSL2 终端中执行:
bash (WSL2)curl -fsSL https://openclaw.ai/install.sh | bash备选方式:npm 全局安装npm install -g openclaw@latest -
运行初始配置向导
bash (WSL2)openclaw onboard --install-daemon在 WSL2 中
--install-daemon会配置 systemd 守护进程。 -
验证安装
bash (WSL2)openclaw doctor -
访问 Web 控制面板
在 Windows 浏览器中打开:
urlhttp://127.0.0.1:18789#token=YOUR_TOKENWSL2 的端口默认会映射到 Windows 宿主机。Token 在
~/.openclaw/openclaw.json中。
初始配置 设置
运行 openclaw onboard 后的向导会引导完成以下配置。
-
选择运行模式
选择 本地模式(Local)即可。如果是团队使用,也可选择远程服务器模式。
-
配置 AI 模型
选择 LLM 提供商并输入 API Key:
提供商 模型 API Key 获取 Anthropic Claude 4 / 3.5 console.anthropic.com OpenAI GPT-4o / o1 platform.openai.com Google Gemini 2.5 aistudio.google.com 本地 Ollama 模型 无需 Key,需先安装 Ollama -
连接消息渠道
选择要接入的消息平台(钉钉、飞书、Telegram、WhatsApp 等)。钉钉详细配置见下方章节。
-
安装守护进程
选择「是」以保持后台常驻运行,OpenClaw 会在系统启动时自动启动。
配置文件位置
~/.openclaw/openclaw.json
~/.openclaw/openclaw.json
# 在 Windows 资源管理器中访问:
\\wsl$\Ubuntu\home\你的用户名\.openclaw\openclaw.json
Skills 体系概览 技能
OpenClaw 和 Cursor 都支持 Skills 机制,用于为 AI Agent 扩展专门能力。Skills 将特定领域的知识和工作流打包为可复用模块。
OpenClaw Skills
在 OpenClaw 运行时中安装,为 OpenClaw Agent 赋予特定能力(如 Cursor CLI 集成、钉钉通知等)
Cursor Agent Skills
在 Cursor IDE 中使用 SKILL.md 定义,让 IDE 内的 Agent 自动调用匹配的技能
OpenClaw Skills 管理
安装社区 Skill
# 安装 Cursor Agent Skill(让 OpenClaw 调用 Cursor CLI)
openclaw skill add swiftlysingh/cursor-agent
# 安装钉钉插件
openclaw plugins install @soimy/dingtalk
# 查看已安装 Skills
openclaw skill list
Skill 配置文件
所有 Skill 配置位于 ~/.openclaw/openclaw.json 的 skills 字段:
{
"skills": {
"entries": {
"swiftlysingh/cursor-agent": {
"enabled": true
}
},
"load": {
"extraDirs": [],
"watch": true
},
"install": {
"nodeManager": "npm"
}
}
}
| 配置项 | 说明 |
|---|---|
entries | 各 Skill 的覆盖配置(启用/禁用、API Key、环境变量) |
load.extraDirs | 扫描额外 Skill 目录 |
load.watch | 监视 Skill 文件夹并自动刷新(默认开启) |
install.nodeManager | 包管理器偏好:npm / pnpm / yarn / bun |
创建自定义 Skill 技能
无论是 OpenClaw 还是 Cursor,Skill 的核心都是一个 SKILL.md 文件。以下是完整创建流程。
目录结构
├── SKILL.md ← 必须:主指令文件
├── reference.md ← 可选:详细文档
├── examples.md ← 可选:用法示例
└── scripts/ ← 可选:工具脚本
├── validate.py
└── helper.sh
存储位置
| 类型 | 路径 | 作用域 |
|---|---|---|
| 个人 Skill | ~/.cursor/skills/skill-name/ | 所有项目可用 |
| 项目 Skill | .cursor/skills/skill-name/ | 仅当前项目 |
SKILL.md 完整模板
---
name: my-skill-name
description: 简要描述该技能的作用和触发场景。第三人称书写。
---
# 技能名称
## Instructions
清晰的逐步指导,告诉 Agent 如何执行任务。
## Examples
具体的使用示例,帮助 Agent 理解输出格式。
## Additional Resources
- 详细文档参见 [reference.md](reference.md)
- 用法示例参见 [examples.md](examples.md)
Frontmatter 字段说明
| 字段 | 要求 | 用途 |
|---|---|---|
name | 最长 64 字符,仅小写字母/数字/连字符 | 技能唯一标识 |
description | 最长 1024 字符,不能为空 | Agent 据此判断何时调用该技能 |
编写高质量 description 的原则
- 第三人称 — ✓ "处理 Excel 并生成报告" ✗ "我可以帮你处理 Excel"
- 具体 + 包含触发词 — ✓ "从 PDF 文件中提取文本和表格。在处理 PDF 或用户提到 PDF 时使用。"
- 包含 WHAT 和 WHEN — 既说明能做什么,也说明何时触发
常用模式示例
模板模式 — 定义输出格式
## 报告结构
使用以下模板:
# [分析标题]
## 摘要
[一段话概述核心发现]
## 关键发现
- 发现1及支撑数据
## 建议
1. 具体可执行的建议
工作流模式 — 分步检查清单
## 工作流
Task Progress:
- [ ] Step 1: 分析输入
- [ ] Step 2: 创建映射
- [ ] Step 3: 验证结果
- [ ] Step 4: 生成输出
**Step 1: 分析输入**
运行:`python scripts/analyze.py input.pdf`
最佳实践
- SKILL.md 控制在 500 行以内
- 将详细资料放在独立文件,通过链接引用(只嵌套一层)
- 使用 POSIX 路径(
scripts/helper.py),避免 Windows 反斜杠 - 提供一个默认方案,不要列举大量选项让 Agent 纠结
- 避免写入时效性信息
- 术语保持一致
Cursor Agent Skills 配置 技能
Cursor IDE 内置的 Skills 机制,包括 Rules(规则)和 Skills(技能)两套体系。
前置条件
- 使用 Cursor Nightly 更新渠道
- 打开设置(
Cmd+Shift+J/Ctrl+Shift+J),启用 Agent Skills 开关
一、Cursor Rules(规则)
规则文件在 .cursor/rules/ 目录下,格式为 .mdc,提供持久化的 AI 行为引导。
├── typescript-standards.mdc
├── react-patterns.mdc
└── api-conventions.mdc
.mdc 文件格式
---
description: 简述该规则的作用
globs: **/*.ts
alwaysApply: false
---
# 规则标题
规则内容:编码规范、最佳实践等...
| 字段 | 类型 | 说明 |
|---|---|---|
description | string | 规则描述(显示在规则选择器中) |
globs | string | 文件匹配模式,匹配时自动应用 |
alwaysApply | boolean | 设为 true 则每次会话都生效 |
两种配置方式
Always Apply
适用于团队通用编码规范,每次对话自动加载。alwaysApply: true
File-Specific
仅当打开匹配文件时生效。globs: **/*.tsx
二、Cursor Agent Skills(技能)
技能(SKILL.md)让 Agent 获得领域专用能力,Agent 根据上下文自动判断是否调用。
设置路径
# 个人全局 Skill
~/.cursor/skills/your-skill-name/SKILL.md
# 项目级 Skill
.cursor/skills/your-skill-name/SKILL.md
# 设置文件
~/Library/Application Support/Cursor/User/settings.json
# 个人全局 Skill
%USERPROFILE%\.cursor\skills\your-skill-name\SKILL.md
# 项目级 Skill
.cursor\skills\your-skill-name\SKILL.md
# 设置文件
%APPDATA%\Cursor\User\settings.json
内置 Skills 示例
Cursor 自带了以下内置技能(位于 ~/.cursor/skills-cursor/,只读):
| 技能 | 作用 | 触发场景 |
|---|---|---|
create-rule | 创建 .cursor/rules/ 规则文件 | 用户要求添加编码规范、项目约定 |
create-skill | 引导创建新的 SKILL.md | 用户要求创建新技能 |
update-cursor-settings | 修改 settings.json 配置 | 用户要求更改编辑器设置 |
打通钉钉 集成
将 OpenClaw 接入钉钉,实现在钉钉群中与 AI 助手实时对话、接收自动化通知。
集成架构
单向推送(Webhook Out)
OpenClaw 主动向钉钉群发送消息,适合定时报告、自动通知,配置最简单
双向交互(Stream 模式)
使用钉钉 Stream 长连接,无需公网 IP,在钉钉中直接与 AI 对话。推荐方案
方案一:官方 Stream 模式(推荐)
Stream 模式通过长连接实现双向通信,无需公网 IP、无需内网穿透,是最推荐的方案。
-
创建钉钉应用
访问 钉钉开放平台(open-dev.dingtalk.com):
- 登录后点击「应用开发」→「创建应用」
- 选择「企业内部应用」→ 填写应用名称(如 "AI助手")和描述
- 创建后进入应用详情页
-
获取凭证
在应用详情页的「凭证与基础信息」中找到并保存:
字段 说明 Client ID(AppKey) 应用唯一标识 Client Secret(AppSecret) 应用密钥,务必妥善保管 -
添加机器人能力
- 在应用详情 → 「应用能力」→「添加应用能力」→ 选择「机器人」
- 消息接收模式选择 Stream 模式
- 填写机器人名称和头像
-
配置权限
在「权限管理」中申请以下权限:
qyapi_robot_sendmsg— 机器人发送消息qyapi_chat_manage— 群管理(可选)
-
发布应用
在应用详情页点击「版本管理与发布」→ 创建版本 → 发布。管理员审批通过后应用生效。
-
配置 OpenClaw 接入钉钉
有两种配置方式:
方式 A:通过 Web 管理界面
打开
http://127.0.0.1:18789,导航到 Channels → DingTalk,填入 Client ID 和 Client Secret。方式 B:通过命令行
bashopenclaw config set 'channels.dingtalk' \ --clientId "你的ClientID" \ --clientSecret "你的ClientSecret"方式 C:直接编辑配置文件
json — ~/.openclaw/openclaw.json{ "channels": { "dingtalk": { "enabled": true, "clientId": "你的ClientID", "clientSecret": "你的ClientSecret", "mode": "stream" } } } -
启动 / 重启 Gateway
bash# 如果已安装为守护进程 openclaw restart # 或手动启动 openclaw gateway --port 18789 -
验证连接
在钉钉中搜索你创建的机器人名称,发送一条消息。如果 AI 正常回复,说明配置成功!
验证清单 ✓ 钉钉应用状态为"已发布"
✓ Client ID / Secret 填写正确(无多余空格)
✓ OpenClaw Gateway 正在运行(openclaw doctor检查)
✓ LLM API Key 有效
方案二:社区插件模式
如果更喜欢插件化管理,也可以使用社区维护的钉钉插件:
# 安装钉钉社区插件
openclaw plugins install @soimy/dingtalk
# 在配置文件中添加到 allow 列表
openclaw config set 'plugins.allow' '["@soimy/dingtalk"]'
然后同样需要在钉钉开放平台创建应用、获取凭证。插件会自动读取 OpenClaw 配置中的凭证信息。
方案三:单向 Webhook(仅推送通知)
如果只需要 OpenClaw 向钉钉群发送通知(不需要在钉钉中对话),配置最简单:
-
在钉钉群中添加自定义机器人
群设置 → 智能群助手 → 添加机器人 → 自定义 Webhook → 获取 Webhook URL。
安全设置 建议选择「加签」方式,记下生成的 Secret。 -
配置 OpenClaw Webhook
json — ~/.openclaw/openclaw.json{ "channels": { "dingtalk-webhook": { "enabled": true, "webhookUrl": "https://oapi.dingtalk.com/robot/send?access_token=xxx", "secret": "你的加签Secret" } } }
Windows 平台补充说明
唯一区别是:编辑配置文件时,路径为 WSL2 内的
~/.openclaw/openclaw.json。在 Windows 资源管理器中可通过 \\wsl$\Ubuntu\home\你的用户名\.openclaw\ 访问。
常见应用场景
| 场景 | 实现方式 | 说明 |
|---|---|---|
| 每天定时发送工作日报 | 单向 Webhook + 定时任务 | 配合 crontab 或 OpenClaw 定时 Skill |
| 服务器状态监控告警 | 单向 Webhook | 异常时自动推送到钉钉群 |
| 在钉钉中直接问 AI 问题 | Stream 模式(双向) | @机器人 即可对话 |
| 代码审查通知 | Stream + Cursor Skill | OpenClaw 调用 Cursor CLI 审查后回传钉钉 |
| 会议记录整理 | Stream 模式 | 发送会议纪要,AI 自动提取行动项 |
常见问题 FAQ
Q: 安装后执行 openclaw 提示 command not found?
curl -fsSL https://clawd.org.cn/install.sh | bash 安装的中文社区版,命令名是 openclaw-cn,不是 openclaw。解决方法:直接使用
openclaw-cn,或添加别名:echo 'alias openclaw="openclaw-cn"' >> ~/.zshrc && source ~/.zshrc
Q: 安装脚本下载很慢怎么办?
可以先手动下载脚本或使用 npm 方式安装:npm install -g openclaw@latest(国际版)或 npm install -g openclaw-cn@latest(中文社区版)。如果 npm 也慢,可以先设置镜像源:npm config set registry https://registry.npmmirror.com
Q: openclaw doctor 报 Node 版本不满足?
使用 nvm 切换到 22+ 版本:nvm install 22 && nvm use 22。
Q: Windows 上 WSL2 无法启动?
确保在 BIOS 中启用了虚拟化(VT-x / AMD-V),并以管理员身份运行 wsl --install。如果之前安装过 WSL1,执行 wsl --set-default-version 2 升级。
Q: 钉钉机器人收不到消息?
排查步骤:
- 确认应用已发布且审批通过
- 检查 Client ID / Secret 无误(注意不要复制到多余空格)
- 确认
openclaw doctor全部通过 - 查看日志:
openclaw logs --tail 50
Q: Cursor Skills 在 Agent 中不生效?
确认已切换到 Cursor Nightly 更新渠道,并在 Cursor Settings 中开启了 Agent Skills 选项。另外确认 SKILL.md 中 description 字段包含了准确的触发关键词。
Q: OpenClaw 如何更新?
npm update -g openclaw@latest
openclaw restart
Q: 如何查看 OpenClaw 运行日志?
# 实时查看最新日志
openclaw logs --tail 100 --follow
# 仅看错误
openclaw logs --level error