Appearance
OpenClaw 深度解析:GitHub 最快增长开源项目的完整教程
OpenClaw(原名 Clawdbot、Moltbot)在短短一个多月内突破 239,000+ stars,成为 GitHub 历史上增长最快的开源项目之一。这款由独立开发者打造的 AI 智能体框架,为何能在竞争激烈的开源 AI 领域脱颖而出?本文将深入解析 OpenClaw 的核心特性和使用方法。
OpenClaw 是什么
OpenClaw 是一个开源的 AI 智能体框架,支持多模型切换、多频道接入、Skills 技能扩展。它的设计理念是让每个人都能在自己的环境中部署和使用 AI 助手,完全掌控数据和隐私。
项目演进历程
OpenClaw 经历了几次名称变更:
| 名称 | 时期 | 说明 |
|---|---|---|
| Moltbot | 早期版本 | 首次发布时的名称 |
| Clawdbot | 中期版本 | 功能扩展阶段 |
| OpenClaw | 当前版本 | 开源社区版本 |
每次更名都伴随着架构升级和功能增强,当前的 OpenClaw 已经是一个成熟的 AI 智能体平台。
为什么增长如此迅速
免费大模型支持:内置多个免费模型接入方案,降低了使用门槛。
开箱即用:安装简单,几分钟内即可完成部署。
高度可扩展:Skills 系统让用户可以轻松扩展功能。
活跃社区:Discord 社区有大量用户分享经验和技能。
持续更新:开发团队保持高频更新,快速响应社区需求。
核心功能解析
多模型支持
OpenClaw 支持多种 AI 模型后端:
商业模型:
- OpenAI GPT 系列
- Anthropic Claude 系列
- Google Gemini
- DeepSeek
免费/开源模型:
- 内置免费模型接口
- Ollama 本地模型
- 其他 OpenAI 兼容 API
通过配置文件可以轻松切换模型,无需修改代码:
yaml
models:
- name: default
provider: openai
model: gpt-4
apiKey: ${OPENAI_API_KEY}
- name: free-model
provider: builtin-free
model: default多频道接入
支持主流通讯平台:
- Discord:最成熟的支持,功能最完整
- Slack:企业团队协作场景
- Telegram:隐私友好的选择
- 微信:国内用户常用渠道
每个频道可以独立配置智能体和权限。
Skills 技能系统
Skills 是 OpenClaw 的核心扩展机制。一个 Skill 可以包含:
- 工具函数(Tools)
- 提示词模板(Prompts)
- 工作流定义(Workflows)
安装 Skill 非常简单:
bash
# 从 ClawHub 安装
openclaw skill install <skill-name>
# 从本地安装
openclaw skill install ./my-skill记忆系统
OpenClaw 内置持久化记忆功能:
- 自动保存重要对话内容
- 跨会话上下文保持
- 可配置记忆保留策略
记忆数据存储在本地工作目录,完全由用户控制。
快速安装指南
环境要求
- Node.js 18+
- npm 或 pnpm
- Git(用于克隆仓库)
安装步骤
方式一:使用 CLI 安装
bash
# 全局安装 OpenClaw CLI
npm install -g @openclaw/cli
# 初始化工作目录
openclaw init my-assistant
cd my-assistant
# 启动服务
openclaw start方式二:从源码安装
bash
# 克隆仓库
git clone https://github.com/openclaw/openclaw.git
cd openclaw
# 安装依赖
npm install
# 构建项目
npm run build
# 启动服务
npm run start首次配置
启动后需要完成基础配置:
- 选择默认模型:从支持的模型列表中选择
- 配置频道:设置 Discord/Slack 等频道信息
- 设置智能体人设:定义智能体的性格和能力
配置文件位于 config/settings.yaml,可以手动编辑。
免费模型接入详解
OpenClaw 的一大亮点是支持免费大模型,这对于不想付费的用户来说非常有价值。
内置免费模型
OpenClaw 内置了几个免费模型接口,无需 API Key 即可使用:
yaml
# 在配置中启用免费模型
models:
- name: free-tier
provider: free-builtin
model: default免费模型限制
需要注意的是,免费模型通常有以下限制:
- 每日请求次数上限
- 响应速度可能较慢
- 模型能力可能不如付费版本
对于学习和轻度使用场景,免费模型完全够用。
混合使用策略
推荐的策略是:日常使用免费模型,复杂任务切换到付费模型:
yaml
agents:
- name: daily-assistant
model: free-tier # 免费模型
- name: expert-assistant
model: gpt-4 # 付费模型通过智能体切换命令 !switch expert-assistant 即可在需要时切换到更强的模型。
Skills 开发入门
Skills 是扩展 OpenClaw 功能的主要方式。下面介绍如何创建一个简单的 Skill。
Skill 目录结构
my-skill/
├── skill.md # Skill 定义文件
├── tools/ # 工具函数
│ └── my-tool.js
├── prompts/ # 提示词模板
│ └── my-prompt.md
└── workflows/ # 工作流定义
└── my-workflow.yamlskill.md 文件
这是 Skill 的核心定义文件:
markdown
---
name: my-skill
description: 我的自定义技能
version: 1.0.0
tools:
- my-tool
prompts:
- my-prompt
---
# My Skill
这是一个示例技能,用于演示 OpenClaw Skills 开发。工具函数示例
javascript
// tools/my-tool.js
module.exports = {
name: 'my-tool',
description: '一个示例工具',
parameters: {
type: 'object',
properties: {
input: {
type: 'string',
description: '输入内容'
}
},
required: ['input']
},
execute: async (params) => {
return `处理结果: ${params.input}`
}
}安装和测试
bash
# 本地安装测试
openclaw skill install ./my-skill
# 测试 Skill
openclaw skill test my-skill多智能体协作
OpenClaw 支持配置多个智能体,每个智能体可以有不同的定位和能力。
配置多个智能体
yaml
agents:
- name: developer
persona: 你是一个专业的程序员助手
model: gpt-4
skills:
- code-assistant
- debugging-helper
- name: writer
persona: 你是一个内容创作专家
model: claude-3-opus
skills:
- writing-assistant
- seo-optimizer智能体切换
在对话中使用命令切换智能体:
!switch developer # 切换到开发助手
!switch writer # 切换到写作助手协作模式
OpenClaw 支持智能体间的协作:
yaml
workflows:
- name: code-review
agents:
- developer # 编写代码
- reviewer # 审查代码
steps:
- agent: developer
action: write-code
- agent: reviewer
action: review常见问题解答
Q: 免费模型如何获取?
OpenClaw 内置了免费模型接口,安装后直接配置即可使用,无需额外注册或申请。
Q: 与 Claude Code 相比有什么优势?
OpenClaw 是完全开源的,可以自部署,支持多频道接入和 Skills 扩展。Claude Code 是 Anthropic 的闭源产品,功能更聚焦于代码开发场景。
Q: 如何迁移现有配置?
配置文件采用 YAML 格式,可以直接复制。Skills 通过 ClawHub 共享,安装命令即可获取。
Q: 支持 Windows 吗?
完全支持。OpenClaw 是跨平台的,Windows、macOS、Linux 都可以使用。
Q: 数据存储在哪里?
所有数据存储在本地工作目录,包括对话历史、记忆、配置等。你可以完全控制这些数据。
进阶使用技巧
自定义智能体人设
人设(Persona)定义了智能体的性格和行为方式:
yaml
agents:
- name: my-assistant
persona: |
你是一个专业但友好的助手。
回答问题时:
1. 先给出简短答案
2. 再提供详细解释
3. 最后给出相关建议
使用中文回复。配置心跳任务
心跳让智能体主动发起对话:
yaml
heartbeat:
enabled: true
interval: 3600000 # 每小时
tasks:
- name: daily-summary
schedule: "0 18 * * *" # 每天 18:00
action: |
总结今天的对话重点
提醒明天的重要事项接入 MCP 工具
OpenClaw 支持 Model Context Protocol(MCP),可以接入更多外部工具:
yaml
mcp:
servers:
- name: filesystem
command: mcp-filesystem
args:
- /path/to/allowed/directoryOpenClaw 作为一个快速发展的开源项目,正在不断进化。无论你是想体验免费大模型,还是构建自己的 AI 助手系统,OpenClaw 都值得一试。
