1. 项目概述
OpenClaw(曾用名ClawdBot/MoltBot)是一款开源的本地优先AI代理与自动化平台,它的核心定位是通过自然语言指令替代人工完成流程化、重复性工作。与市面上大多数云端AI助手不同,OpenClaw的最大特点是数据完全存储在本地设备,不经过第三方服务器,在隐私安全方面具有显著优势。
作为一个长期从事企业自动化解决方案的技术从业者,我亲身体验了OpenClaw在实际工作场景中的应用价值。它不仅能通过飞书、钉钉等常用聊天工具直接交互,更重要的是能够真正执行具体任务——从简单的文件操作到复杂的业务流程自动化,这种"能干活"的特性使其在办公自动化领域独树一帜。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备
2.1 系统要求
在CentOS Stream 9系统上部署OpenClaw需要满足以下基本条件:
- 操作系统:推荐使用较新的Linux发行版(如CentOS Stream 8/9、Ubuntu 20.04/22.04)
- Node.js:版本不低于22.x(实测24.13.0版本兼容性最佳)
- 内存:至少2GB,建议4GB以上以获得更好性能
- 存储空间:至少500MB可用空间(含依赖项)
实际测试中发现,在CentOS 7等较老系统上安装会遇到glibc版本不兼容问题。如果必须使用旧系统,建议考虑Docker部署方案。
2.2 开发工具链安装
作为基础环境,需要先安装必要的编译工具和依赖包:
bash复制# 对于RHEL系系统(CentOS/Fedora等)
sudo dnf install -y git cmake gcc-c++ make python3
# 对于Debian系系统(Ubuntu/Debian等)
sudo apt update && sudo apt install -y git cmake gcc g++ make python3
这些工具将用于后续Node.js原生模块的编译安装。特别提醒:如果缺少python3,某些npm包(如node-gyp)的安装会失败。
3. Node.js环境配置
3.1 使用nvm安装Node.js
强烈建议通过nvm(Node Version Manager)管理Node.js环境,这能带来以下优势:
- 多版本并行管理,避免影响系统原有Node.js服务
- 无需root权限即可安装全局包
- 版本切换灵活方便
安装步骤如下:
bash复制# 下载安装nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
# 加载nvm环境变量
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
# 安装Node.js 24.x LTS版本
nvm install 24
# 验证安装
node -v # 应输出v24.x.x
npm -v # 应输出对应版本号
3.2 常见问题排查
问题1:nvm安装后命令未找到
解决方案:
bash复制# 手动加载nvm配置
source ~/.bashrc
# 或
source ~/.zshrc
问题2:npm全局包权限错误
解决方案:
bash复制# 配置npm全局安装目录
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
4. OpenClaw核心安装
4.1 官方脚本安装(推荐)
这是最简便的安装方式,会自动完成依赖检查和环境配置:
bash复制curl -fsSL https://openclaw.ai/install.sh | bash
安装脚本会:
- 检测Node.js版本
- 通过npm全局安装openclaw包
- 创建默认配置文件目录(~/.openclaw)
- 初始化基础配置
如果网络环境不佳导致脚本卡顿,可以尝试添加--verbose参数查看详细进度,或改用npm安装方式。
4.2 npm全局安装
作为备选方案,可以直接通过npm安装:
bash复制npm install -g openclaw
安装完成后验证:
bash复制openclaw --version
# 应输出类似:1.2.3
4.3 安装后配置
首次运行需要进行基础配置:
bash复制openclaw onboard
配置向导会引导完成以下设置:
- 风险确认(选择Yes)
- 安装模式选择(推荐QuickStart)
- 模型供应商配置(可暂跳过)
- 聊天工具集成(可暂跳过)
- 功能钩子启用(建议全选):
- boot-md:自动执行BOOT.md任务
- command-logger:操作日志记录
- session-memory:会话上下文保持
- Shell补全脚本安装(可选)
5. 飞书集成配置
5.1 飞书应用创建
- 访问飞书开放平台
- 创建"企业自建应用"
- 在"功能"选项卡启用机器人能力
- 在"权限管理"添加以下权限:
json复制{ "scopes": { "tenant": [ "contact:user.base:readonly", "im:chat", "im:chat:read", "im:chat:update", "im:message", "im:message.group_at_msg:readonly", "im:message.p2p_msg:readonly", "im:message:send_as_bot", "im:resource" ] } } - 发布版本并获取App ID/App Secret
5.2 OpenClaw插件安装
安装飞书官方插件:
bash复制openclaw plugins install @m1heng-clawd/feishu
如安装失败可尝试:
bash复制rm -rf ~/.openclaw/extensions/feishu
openclaw plugins install @m1heng-clawd/feishu
5.3 渠道配置
通过命令行快速配置:
bash复制openclaw config set channels.feishu.appId "你的AppId" \
&& openclaw config set channels.feishu.appSecret "你的AppSecret" \
&& openclaw config set channels.feishu.enabled true \
&& openclaw config set channels.feishu.domain "feishu" \
&& openclaw config set channels.feishu.groupPolicy "disabled"
或通过交互式配置:
bash复制openclaw channels add
# 选择Feishu渠道并按提示输入凭证
6. 国内模型配置
6.1 MiniMax模型接入
MiniMax是国内较稳定的大模型API服务,配置方法如下:
bash复制openclaw config set 'models.providers.minimax' --json '{
"baseUrl": "https://api.minimaxi.com/v1",
"apiKey": "你的API_KEY",
"api": "openai-completions",
"models": [
{ "id": "MiniMax-M2", "name": "MiniMax M2" },
{ "id": "MiniMax-M2.1", "name": "MiniMax M2.1" },
{ "id": "MiniMax-M2.1-lightning", "name": "MiniMax M2.1 Lightning" }
]
}'
切换使用模型:
bash复制openclaw models set minimax/MiniMax-M2.1
6.2 其他国内模型
如需接入GLM、Kimi等模型,可参考类似结构配置。关键参数包括:
- baseUrl:API端点地址
- apiKey:平台提供的访问密钥
- models:可用模型列表及对应标识
7. 服务部署与管理
7.1 手动启动测试
bash复制openclaw gateway --port 18789 --verbose
启动后可在飞书客户端中测试机器人响应。
7.2 系统服务配置
创建systemd服务文件:
bash复制cat > /etc/systemd/system/openclaw-gateway.service << 'EOF'
[Unit]
Description=OpenClaw Gateway Service
After=network.target
[Service]
Type=simple
User=root
Environment="PATH=/root/.nvm/versions/node/v24.13.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
Environment="NODE_PATH=/root/.nvm/versions/node/v24.13.0/lib/node_modules"
WorkingDirectory=/root
ExecStart=/root/.nvm/versions/node/v24.13.0/bin/node /root/.nvm/versions/node/v24.13.0/lib/node_modules/openclaw/openclaw.mjs gateway run
Restart=on-failure
RestartSec=10
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
EOF
启用服务:
bash复制systemctl daemon-reload
systemctl start openclaw-gateway
systemctl enable openclaw-gateway
8. 进阶配置建议
8.1 技能扩展
OpenClaw支持通过插件扩展能力:
bash复制# 列出可用插件
openclaw plugins list
# 安装插件(示例:Git操作插件)
openclaw plugins install @m1heng-clawd/git
8.2 自动化工作流
利用BOOT.md实现开机自启动任务:
markdown复制# BOOT.md示例
- task: 每日报表生成
command: report-generator --date $(date +%Y-%m-%d)
schedule: "0 9 * * *"
8.3 性能调优
对于资源受限的环境,可调整:
bash复制# 限制内存使用
openclaw config set performance.memoryLimit "2GB"
# 设置并发数
openclaw config set performance.concurrency 5
9. 故障排查指南
9.1 常见错误代码
| 错误代码 | 可能原因 | 解决方案 |
|---|---|---|
| ENOENT | 路径错误 | 检查~/.openclaw目录权限 |
| ECONNREFUSED | 服务未启动 | 确认gateway进程运行状态 |
| 401 Unauthorized | 凭证错误 | 重新验证飞书App ID/Secret |
9.2 日志查看
关键日志位置:
- 系统日志:
journalctl -u openclaw-gateway -f - 命令日志:
~/.openclaw/logs/command.log - 会话记录:
~/.openclaw/sessions/
9.3 网络问题处理
如果遇到API连接问题:
bash复制# 测试网络连通性
curl -v https://api.minimaxi.com/v1
# 如需代理配置
openclaw config set network.proxy "http://proxy.example.com:8080"
10. 安全最佳实践
-
凭证管理:
- 不要将App Secret等敏感信息硬编码在脚本中
- 使用环境变量或配置加密工具
-
访问控制:
bash复制# 限制可访问IP openclaw config set security.allowedIPs ["192.168.1.0/24"] -
定期更新:
bash复制# 更新OpenClaw核心 npm update -g openclaw # 更新插件 openclaw plugins update --all
在实际生产部署中,建议将OpenClaw运行在内网环境,并通过飞书等企业IM工具的安全策略限制访问范围。对于特别敏感的操作,可以实现二次验证机制,例如:
bash复制# 在BOOT.md中添加确认步骤
- task: 数据库备份
confirm: 确实要执行生产数据库备份吗?
command: db-backup --full
通过近半年的实际使用,我发现OpenClaw在以下场景表现尤为出色:
- 定时数据报表生成与分发
- 跨系统数据同步
- 批量文件处理
- 异常监控与自动告警
它的本地化部署特性让我们在金融、医疗等对数据敏感行业的项目中能够满足合规要求,而真正的任务执行能力(不仅仅是聊天应答)则显著提升了工作效率。一个典型的案例是我们用OpenClaw实现的日报系统,现在只需在飞书中发送"生成昨日销售报告",5分钟后就能在指定频道收到整理好的PDF文件和分析图表。
