2026年了,OpenClaw 和 Skills 这套组合在个人开发者和 AI 玩家圈子里,已经算得上绕不开的话题。OpenClaw 是一个开源智能体运行时,你可以把它理解成给大模型装了一副能干活的身体:接上微信、网页或命令行之后,它就能帮你收发消息、跑任务、调工具;Skills 则是这套体系里最灵活的“插件系统”,相当于给这个身体装上不同功能的双手。而华为云提供了一键部署脚本,把原本要从装环境、配依赖、起服务一路手搓的活,压缩成一条命令的事。
这篇博客没有别的高深目标,就是把我最近在华为云上从零部署 OpenClaw、安装 Skills 的完整过程原封不动摊开来讲。云主机怎么选、安全组怎么配、一键部署脚本执行后要检查什么、Skills 到底装哪个怎么装、以及我踩过的那些坑,都会写清楚。适合完全没接触过 OpenClaw 的小白入门,也适合老手直接跳到拆解部分捡现成的经验,省掉自己折腾半天的时间。
1. 为什么把 OpenClaw 放到华为云上:先想清楚再动手
1.1 OpenClaw、Skills 和“云端”这三个名词先对齐
先花两分钟把概念对齐。OpenClaw 是一个可以直接跑在 Linux、macOS 甚至 Windows 子系统环境里的智能体运行时,本质上它帮我们做了三件事:第一,接消息渠道,把微信、Web、命令行等入口统一起来;第二,做任务调度,不同任务可以交给对应的大模型接口去推理;第三,管理工具调用,把你授权的外部操作通过技能包执行。
Skills 是这个体系里最精髓的存在。一个 Skill 就是一个可以让智能体执行特定任务的技能包,里面包含了任务描述、调用参数、提示词模板和可执行脚本。同一个模型,装不装技能,用起来完全像是两个东西。没装技能的时候,你问它“帮我整理这个目录下的图片”,它只能嘴上说说;装上文件处理、图片识别相关 Skills 之后,它真的会去遍历目录、调用脚本、把结果输出成表格,整个过程你只需要盯着日志就好。
那为什么还要用到华为云?因为 OpenClaw 这类智能体适合 7×24 小时在线工作。本地电脑会关机、会睡眠、会断网,而且很多时候你希望它帮你接收微信消息并自动处理,这些都需要一台永远在线的服务器。云服务器正好就是那块“永远插着电”的底座,把 OpenClaw 放上去,才能发挥它真正的价值。
1.2 本地跑和云端跑的真实差距
我在第一台机器上跑 OpenClaw 是在自己的 MacBook 上,当时只想验证功能,装完确实能跑,但用了一阵子就发现几个让人抓狂的问题。
最大的问题是关机即失联。笔记本合上盖子,OpenClaw 就睡了,微信里喊它没有任何反应。第二个问题是网络环境,本地宽带的上行带宽和公网可达性都不稳定,如果想让微信机器人接收外部消息回调,本地会被运营商的大内网卡得死死的。第三个问题相对隐蔽,就是环境冲突,本机已经装了一堆 Python、Node、数据库服务,再塞一个 OpenClaw 进去,依赖版本经常打架。
换到华为云之后,这三个问题基本消失。云主机有固定的公网 IP,安全组规则由自己控制,服务跑在 systemd 下,进程挂了会自动拉起,日志也集中在 journald 里,排查起来比本地翻终端窗口方便得多。而且云主机的网络环境对国内各类模型 API 的访问也稳定,模型调用的延迟和超时几率都小不少。
注意:如果你的目标只是本地学习、测试一下 OpenClaw 有什么功能,那在 Mac 或 Windows 上装一个跑通流程就够了。一旦你想让它稳定接管消息、跑定时任务、对外提供服务,就直接上云,省掉后面反复换环境的痛苦。
1.3 为什么是华为云,而不是其他厂
选择华为云不是因为它有什么独门绝技,而是三个因素叠加起来刚好合适。
第一是门槛低。华为云对新用户有免费试用额度和入门级云主机的优惠活动,对只是想跑通 OpenClaw 的个人开发者很友好,不用一上来就买高配,成本压力小。第二是在华为云控制台上操作简单,安全组、弹性 IP、系统盘快照这些基础能力都做得很明白,新手也能按照控制台指引一步步完成,不用翻太多文档。开一台 Ubuntu 云主机,从创建到能 SSH 登录,在网页上点几下就能完成。
第三是生态方向对上了,今年的华为云使用指南和一键部署脚本更新很频繁,OpenClaw 社区里不少安装脚本都是优先适配国内主流云平台的,跑起来意外少。加上华为云实验里已经有不少基于 DeepSeek 搭建 Agent 智能助手的操作案例,和 OpenClaw 的玩法一脉相通,后面做扩展参考也会方便很多。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 部署前准备:云主机、安全组和系统初始化
2.1 云主机配置怎么选,够用和好用差在哪里
部署 OpenClaw 不需要很强的机器,它本身不是一个重型应用,真正的推理开销在大模型 API 那边,云主机承担的更多是消息转发、场景编排、脚本执行这些轻量任务。
以我个人经验,1 核 2G 的入门机可以跑,但不太推荐。因为 OpenClaw 的基础服务再加上模型接口的响应处理,内存很容易吃紧,Swap 一开,整机响应就会变慢。比较舒服的最低配置是 2 核 4G,日常占用大概在 1.5G 到 2.5G 之间,剩余内存还能让你同时跑一两个辅助工具。如果你希望把 OpenClaw 和数据库、监控面板、反向代理这些放在同一台机器上,那直接上 4 核 8G 会更从容。
系统镜像建议选 Ubuntu 22.04 LTS 或 24.04 LTS。这两个版本的软件源里,OpenClaw 依赖的运行时环境都能顺利装上,不像某些精简系统镜像连 Python 和 Git 都没预装,还得自己折腾半天。硬盘给 40G 起步,安装脚本会拉取代码仓库、模型配置文件和技能包,加上日志增长,40G 是比较稳的基线。带宽按 3M 到 5M 买就够了,OpenClaw 和管理界面走的流量都很小,不需要太高的带宽,省下来的钱加到内存上更划算。
2.2 安全组端口:一次放行对,后面少踩坑
华为云的弹性云主机有一道安全组防火墙,默认只放行少量端口。很多新手部署完 OpenClaw 发现网页管理界面打不开、微信回调失败,十有八九就是安全组忘了放行对应端口。
我这次实际用到的端口有三个:
- 22 端口,SSH 登录用,默认放行,但建议之后改成密钥登录并禁用密码登录。
- 7860 端口,OpenClaw 自带的 Web 控制台端口,需要放行。
- 80 和 443 端口,如果你后面要绑域名、配 HTTPS 回调,这两个必须提前放行。
安全组的配置顺序是在控制台先找到云主机的“安全组”入口,然后添加入方向规则。源地址建议不要写 0.0.0.0/0,尤其 22 端口,只允许你自己的固定 IP 访问。7860 端口如果是你自己管理用,也可以限制 IP,但要注意如果你经常换网络,限制太死会导致自己都进不去。我的做法是 22 和 7860 限制来源 IP,80 和 443 放开,反正真正的服务安全性要靠登录认证和令牌来保证。
注意:改完安全组规则是秒级生效的,不需要重启云主机。但如果改了规则还是连不上,记得看下云主机内部的系统防火墙(比如 ufw)是不是也开着,有时候是两层防火墙都要放行才通。
2.3 系统初始化:用专用用户防止手滑
拿到云主机后,我习惯先做一次系统初始化。第一步是更新软件源,执行 sudo apt update && sudo apt upgrade -y,把系统基础包升到最新,避免部署过程中因为某个库版本太旧导致奇怪报错。第二步是创建一个专用系统用户,比如叫 claw,后续 OpenClaw 的所有服务都用这个用户跑,而不是直接使用 root。
这样做的原因很简单,OpenClaw 的技能脚本里有大量执行外部命令的逻辑,如果它以 root 身份跑,一旦某个技能包有安全问题,整台机器就裸奔了。用普通用户跑服务,即使脚本出问题,影响范围也被限制住。创建用户的命令是:
bash复制sudo adduser claw
sudo usermod -aG sudo claw
第三步是安装基础依赖。OpenClaw 的安装脚本一般会自动检测并安装缺的东西,但 Git 和 curl 这两个工具是底层依赖,建议手动确认一下:
bash复制sudo apt install -y git curl wget
装完之后,可以用 curl -I https://www.baidu.com 简单测一下云主机的公网连通性。这一步特别重要,因为有些云主机的默认安全策略很严格,出站流量也可能受限。实测如果这里通了,后面模型 API 的调用基本就不会有问题。
3. 一键部署 OpenClaw:这台机器的“第一次启动”
3.1 一键脚本到底帮你做了什么
很多人听到“一键部署脚本”就以为是无脑双击,其实了解脚本背后的流程,出了问题才知道去哪查。打开安装脚本看一遍,它做的事情无非是下面这五步。
第一步检查系统环境,确认操作系统、CPU 架构、内存大小,不符合要求就直接退出,可以避免你在不支持的机器上浪费半天时间。第二步安装运行时依赖,OpenClaw 服务端通常需要特定版本的运行时环境,脚本会帮你装好并设置环境变量。第三步拉取 OpenClaw 主仓库代码和默认配置文件,生成服务运行目录。第四步生成 systemd 服务文件,注册为系统服务,设置开机自启。第五步启动服务并做健康检查,等待端口起来,最后输出访问地址和初始令牌。
明白这个流程后,你就知道部署后第一件事不是急着用,而是确认每一步都正常结束。现在的部署脚本已经相当成熟,社区里甚至能看到“一键部署脚本 yolo 最新版本更新内容”这类更新日志,说明维护频率很高,功能一直在完善。
我用的安装方式是从官方仓库直接执行安装脚本。由于项目版本迭代比较快,我建议以官方文档里最新的命令为准,我在下面的实操过程中也是以 v2.x 版本为例。
3.2 实操实录:从 SSH 登录到看到控制台
我先用 SSH 登录到云主机:
bash复制ssh root@你的公网IP
登录之后,切换到刚才创建的 claw 用户,或者直接用 root 执行安装再授权给用户。我这里为了演示方便,用 root 执行了安装,但随后会把服务目录的所有权改给 claw 用户:
bash复制curl -fsSL https://github.com/openclaw/openclaw/releases/latest/download/install.sh -o install.sh
sudo bash install.sh
执行后会有滚动日志,等待的时间取决于服务器和源站的带宽,我在华为云上大概等了两三分钟。看到 OpenClaw has been successfully installed 字样之后,脚本会输出一行 Web 控制台地址和初始访问令牌。
用浏览器打开 http://服务器公网IP:7860,输入初始令牌,会进入向导页面。向导会要求设置管理员密码、填写模型 API 信息和选择默认模型服务。我在这里填的是 DeepSeek 的 API Key,因为国内访问更稳定,而且成本划算。填写时注意选择正确的接口地址和模型名称,模型名称填错是常见问题,但控制台里一般有下拉选项,选对就行。
配置向导完成后,会自动跳转到主控制台。到这里,OpenClaw 的核心服务就已经跑起来了,前后大概花了不到十分钟,这还包含了我在浏览器里填写配置的时间。
3.3 部署后的健康检查与开机自启
服务起来只是开始,我建议立刻做一轮健康检查,确保它在机器重启后还能自动恢复。
第一步看服务状态:
bash复制sudo systemctl status openclaw
正常情况下,输出里会显示 active (running),并且没有报错信息。如果显示 failed 或者 activating 卡住,马上执行 sudo journalctl -u openclaw -f 看实时日志,排查原因。
第二步测重启恢复。直接 sudo reboot 重启云主机,等一两分钟再 SSH 进来,执行 sudo systemctl status openclaw,确认服务是自动拉起的。这是最容易被人忽略的一步,很多新手部署完当时能跑,但机器一重启就全忘了,服务挂在后台没有注册开机自启,一切又要手动重新来。
第三步检查磁盘空间。OpenClaw 刚装完不算大,但日志会慢慢涨。我建议配置日志轮转,限制日志文件大小:
bash复制sudo journalctl --vacuum-size=100M
这个命令会立即清理到 100M 以内,后续如果想自动控制,可以编辑 journald 配置文件设置 SystemMaxUse=200M。别小看这一步,我之前有一台服务器就是日志被刷满,整个系统变得卡顿,排查了很久才发现是 journald 日志撑爆了磁盘。
4. Skills 安装实战:让智能体真正“长出双手”
4.1 Skills 的定位:模型是大脑,Skill 是手
OpenClaw 跑通之后,下一步最有意思的部分就是装 Skills。我刚才已经说过,Skills 是 OpenClaw 的技能扩展机制,每个技能包解决一类具体问题。
我习惯用一个比喻来理解 OpenClaw、模型和 Skills 三者的关系:模型是大脑,负责理解和推理;OpenClaw 是躯体,负责接收消息、调度执行和回传结果;Skills 是手,负责具体操作。没有 Skills,大脑再聪明,躯体也只能聊天不能干活;装上合适的 Skills,它才真正具备执行任务的能力。
当前 Skills 的生态已经相当丰富,社区里常见的就有 Superpower Skills、前端开发 Skills、图片生成 Skills、结构图 Skills 等。还有很多人把其他生态里好用的技能包移植过来,比如 Claude Code Skills、Codex Skills、OpenCode Skills 这类跨工具技能包,格式逐渐走向通用化,换个平台也能直接导入。甚至还有人整理出了 Awesome Claude Skills 合集仓库,里面收录了经过验证的高质量技能包,装之前可以去翻一翻。
4.2 第一批 Skills 装什么、怎么装
第一次装 Skills,我的建议是克制一点,装三到五个核心技能就够了。装太多技能,一是会拖慢任务调度时匹配技能的时间,二是在多个技能场景重叠时,智能体可能选错工具,反而影响效果。
先打开终端,用 OpenClaw 自带的管理命令查看仓库里有哪些可用技能:
bash复制openclaw skill search file-management
openclaw skill search image-generation
看到合适的包之后,直接通过命令安装。以安装一个文件管理技能包为例:
bash复制openclaw skill install file-management
对于社区仓库里的技能包,也可以直接通过 Git 地址安装:
bash复制openclaw skill install https://github.com/example/superpower-skills.git
安装完成后,控制台的 Skills 页面通常会出现对应的技能卡片,包含技能描述、触发条件和所需环境变量。这里最容易忽略的是环境变量配置。技能包在执行任务时往往需要调用外部服务,比如图片生成要填图像 API 的 Key,网页搜索要填搜索服务的凭据。控制台里的技能详情页会列出需要填的环境变量,挨个填好,保存并重载技能列表。
注意:装 Skills 不是越多越好。每个技能包都会增加上下文长度和调度开销,装太多之后,智能体在匹配任务时反而会犹豫不决。我个人的经验是,先装 5 个以内,用一周梳理出真正高频的需求,再针对性扩充。
4.3 安装后不生效怎么办:重载、重启与日志
Skill 装完之后,如果发现它不生效,不要急着卸载重装。我的排查顺序通常是这样。
先检查服务端是否识别到新技能。到控制台 Skills 页面看有没有对应的技能卡片,如果没有,大概率是技能列表没有刷新。执行下面的命令重新加载:
bash复制openclaw skill reload
如果重载之后还是没有效果,再看环境变量有没有填齐。比如你装了一个图片生成 Skill,但没填图片服务 API Key,那么技能组件可能直接跳过当前场景,表现为“智能体没有调用图片生成技能”。这种情况日志里通常会有 Key 缺失的警告,查看日志的命令是:
bash复制journalctl -u openclaw -n 100 --no-pager | grep -i skill
最后一种情况是服务缓存问题。有些技能脚本在启动时被加载到内存,新装的技能需要重启服务才能生效:
bash复制sudo systemctl restart openclaw
我还试过一种情况:同一类技能装了多个包,OpenClaw 会根据优先级和场景匹配度选择最合适的一个,但偶尔也会出现匹配偏差。如果一直触发的不是你想要的那个技能,可以把不常用技能的优先级调低,或者在任务描述里写得更明确一些。这个“提示词细节决定技能命中率”的问题,是实际使用中非常容易被忽视的坑。
5. 常见问题与排查技巧实录
5.1 高频报错速查表
把我在部署和使用过程中遇到的高频问题按场景整理出来,方便大家直接对号入座。
| 问题现象 | 常见原因 | 排查与解决思路 |
|---|---|---|
| 安装时报错“could not safely verify the WSL2 environment” | 在 Windows 上部署时 WSL2 环境校验失败 | 更新 WSL2 内核到最新版,执行 wsl --update 后重试;更建议直接用云上 Linux 环境 |
| 控制台页面一直打不开 | 安全组未放行 7860 端口,或云主机内防火墙拦截 | 到华为云控制台添加 7860 入方向规则,再检查系统内部 ufw 状态 |
| OpenClaw 能发微信消息,但微信发消息没回复 | 回调地址不可达、会话响应配置缺失或消息渠道配置错误 | 检查微信侧回调地址是否填了公网 IP,确认安全组放行 80/443,查看日志看是否收到回调 |
| 集成微信报错 | 密钥、令牌配置错误,或渠道参数填错 | 检查微信配置页面里的 Token、EncodingAESKey 是否与控制台一致 |
| 模型调用慢或超时 | 选择的模型 API 服务本身延迟高 | 更换模型服务,或切换到国内可直连的服务商,检查模型名称是否填对 |
| Skill 安装后没有出现在技能列表 | 技能列表未刷新、仓库路径错误 | 执行 openclaw skill reload,确认包名或 Git 地址正确 |
5.2 我踩过的三个坑和完整排查过程
第一个坑是安全组忘记放行 Web 控制台端口。当时按照安装脚本的输出,看到访问地址是 http://公网IP:7860,但浏览器始终打不开,本地 curl 也超时。我一开始以为服务没起来,反复重启了好几遍,后来才想起华为云安全组默认不放开非标准端口。在控制台添加入方向规则放行 7860 之后,页面立刻就能打开了。这个坑很小,但误导性极强,因为它会让你把所有时间花在检查服务本身。
第二个坑是日志刷爆磁盘。OpenClaw 跑起来之后要对接模型 API 和消息渠道,日志是相当啰嗦的。我第一台云主机系统盘 40G,跑了不到一个月,磁盘占用飙到 95%,整机响应变卡,最后登录上去执行 journalctl --disk-usage 才发现是 journald 日志占了几十个 G。从那次之后,我给自己定了一个硬规矩:任何云主机部署完,第一件事就是配置日志轮转和人数据大小限制。
第三个坑是微信发消息没回复。当时的情况是 OpenClaw 可以主动推送消息到微信,但我在微信里回复之后,它一直没反应。排查时我先看日志,发现 OpenClaw 根本没收到任何回调,问题出在微信侧填写的回调地址。因为我的手机和电脑在不同网络环境下切换,公网 IP 变了,回调地址没有同步更新。后来在华为云上绑定固定弹性 IP,彻底解决了这个问题。顺带一提,只要云主机换了公网 IP,所有配置了回调的服务都有可能失效,这一点一定要记住。
6. 进阶扩展:从能用走向好用
6.1 对接魔塔和国内大模型
OpenClaw 默认可以对接各种主流模型服务,但在国内使用,我更推荐优先考虑国内可以直接访问的模型服务商。魔塔平台提供了丰富的模型服务和工具调用能力,OpenClaw 对接魔塔之后,可以直接复用平台上已经开放的工具和模型生态。配置时要注意接口地址、模型名称和调用凭据这三项必须完全匹配,填错任何一个都会导致调用失败。
我实际测试下来,OpenClaw 搭配 DeepSeek 模型跑日常文本任务的效果很稳定,延迟低,成本也低。如果你需要图片生成或者更复杂的能力,可以在 Skills 层加上对应的服务,让模型负责规划,由 Skill 去调外部 API。这种“模型负责决策、Skill 负责执行”的分工模式,正是 OpenClaw 区别于传统聊天机器人的核心优势。
华为云实验里有一个“基于 DeepSeek 搭建 Agent 智能助手”的典型场景,思路和 OpenClaw 的玩法非常相似。如果之后你打算让它跑更复杂的任务栈,比如定时抓取信息、生成日报、调用第三方工具,可以拿这个实验作为参考,能少走不少弯路。
6.2 安全加固与长期稳定运行
OpenClaw 具备对外服务能力之后,安全层级至少要做到以下三件事。
第一,关闭密码登录,改用 SSH 密钥。这是最便宜、最有效的安全措施,只需要把本地生成的公钥写到 ~/.ssh/authorized_keys,然后修改 sshd_config 禁用密码认证。
第二,给 Web 控制台加反向代理和 HTTPS。直接用 IP 加端口访问管理界面,密码很容易被中间人截获。用 Nginx 做一层反向代理,同时申请免费证书,既好看又安全。Nginx 配置的核心部分大致是这样:
nginx复制server {
listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /etc/nginx/ssl/yourdomain.crt;
ssl_certificate_key /etc/nginx/ssl/yourdomain.key;
location / {
proxy_pass http://127.0.0.1:7860;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
第三,定期做快照备份。华为云控制台支持手动和自动创建系统盘快照,建议至少每周做一次,或者在做重大配置变更前手动打一个快照。这样即使操作失误搞坏了环境,也可以很快回滚,不用从零重装。
6.3 成本账:一台云主机一年到底花多少
最后来聊钱的问题。2 核 4G 的入门云主机,加上 40G 系统盘和基础带宽,华为云的年付价格通常在几百到一千元这个区间,新用户活动期间有很大折扣,可能几百元就能拿下。再加上模型 API 的调用费用,按日常使用量估算,每天几百次调用的话,一个月也就几块钱到几十元,综合下来整年花费大约在一千多元。
对比一下自己攒一台家用小主机或者长期开一台电脑,电费加宽带成本其实也不低。云主机胜在稳定性和省心程度,公网 IP、安全组、快照这些能力全是现成的。如果你已经积累了一些自动化任务,让 OpenClaw 帮你节约的时间成本,远高于这点服务器开销。
最后分享一个我实际用了很久的小技巧:每次部署完 OpenClaw,我都会在控制台里建一个“自检清单”技能,让它定期巡检服务的健康状态。包括检查磁盘空间、查看最近日志有没有报错、确认模型 API 的响应时间是否正常。这样智能体不仅能对外服务,还能自我监控,真正像个贴身助理了。如果你照着本文把整套流程走下来,你会发现,从一台裸机到一个能自动干活的智能体,其实只差一个晚上的折腾时间。
