先说结论:手头没有Mac,只有一台普通的Windows电脑,外加一部退下来不用的安卓手机,也能把OpenClaw部署成一个24小时在线的AI助理,总投入可以控制在100块以内。这个结论我实测了一个多月,不是看完教程脑补出来的。OpenClaw这类开源个人Agent框架,能做的事包括定时任务、网页信息收集、文件整理、跨平台消息提醒等等,听起来很玄,拆开看其实就是一个常驻后台的调度服务加一个模型大脑。这篇就讲清楚怎么用最便宜的组合把它跑起来,以及我在这个过程中踩到的那些坑。
1. OpenClaw是什么,以及它为什么能这么便宜
很多人第一次听说OpenClaw,是看到别人用它在Mac上做自动化演示:让它自动打开网页、整理表格、回复消息,全程不用手点。第一反应往往是"这不就是套壳AI吗",等自己动手才发现,它跟你平时用的聊天机器人完全是两回事。
1.1 它和聊天机器人的本质区别
聊天机器人是一问一答,你说一句它回一句,任务结束。OpenClaw更像一个"有手有脚"的实习生:你给它一个目标,它会自己拆解成几个步骤,然后调用你本机的文件系统、浏览器、命令行工具、消息推送服务,一步一步执行完回给你结果。
举个我自己的例子。我让它每天早上九点半整理一遍我关注的几个博客,把新增文章的标题和摘要汇总成一段内容,推送到我的手机。这在纯聊天机器人里做不了,因为聊天机器人碰不到我的文件系统,也碰不到我的定时任务调度器。OpenClaw能做,因为它的架构里就包含了"调度器+工具调用+模型推理"这一整套东西。
跟传统定时脚本的区别也在这。传统cron是写死规则,到点执行固定命令,任务一旦有变化就得去改脚本。OpenClaw则是把规则描述清楚后,由模型动态理解当前情况、决定执行路径。同样的"帮我盯一下某个商品价格",脚本只能死等一个页面结构,OpenClaw可以容忍页面改版,自己重新分析出价格字段。这种灵活度是它最值钱的地方。
1.2 一次部署后能干的几件实在事
网上很多介绍OpenClaw的文章动不动就提"改变生活""生产力革命",听着飘。说几个我这一个多月里真的在用的场景,都是低成本硬件上跑出来的:
- 定时抓取几个固定网站的更新内容,汇总后推送成一条消息,代替我每天早上刷网页。
- 监控某个商品的页面价格,低于心理价位就发通知到手机上,比任何比价软件都直接。
- 自动整理下载目录。我下载东西很随意,桌面和下载文件夹常年一团糟,给它定义好规则后,它会按扩展名和关键词把文件分门别类归到不同目录。
- 把一段会议速记的杂乱文字丢给它,让它整理成结构化的待办事项,再写入本地笔记文件。
这些任务不炫技,但都是每天真实重复的琐事。关键是,这些操作全部发生在本地,数据不需要上传给某个不知名的云端平台。
1.3 为什么便宜:架构决定成本
OpenClaw本体是一个用Node.js写的服务进程,不依赖GPU。它需要算力的地方只有模型推理这一环,而模型推理恰好是可以外包的:本地没有好显卡,就调云端的API;本地有点闲余算力,就用Ollama跑一个小模型;两头都能接。所以整套系统的成本被分成了三块:一台能跑Node.js的常驻设备、一个模型接入方式、以及若干工具执行端。这三块没有一个绑定Mac硬件。
这也解释了为什么网上大量教程都在用Mac举例子——不是Mac必须,而是Mac自带类Unix环境,Homebrew装依赖方便,开发工具链开箱即用,教程作者用着顺手。但对多数人来说,Windows加WSL2、或者一台旧安卓手机,照样能满足同样的运行条件,后面两章就讲具体怎么搭。
2. 不用Mac的底层逻辑与三条开工路线
既然OpenClaw不是Mac专属,那它到底对硬件有什么要求?这个问题想明白了,选路线就不纠结了。
2.1 认知纠偏:OpenClaw对系统的真实要求
从架构上看,OpenClaw的运行只需要满足三个条件:能常驻跑Node.js、能联网访问模型服务、有配套的工具执行端。对应的硬性要求是这么拆的:
- 核心调度服务:一个Node.js进程,任何有Node运行时的地方都能跑,不管是Windows的WSL2、原生Linux、旧安卓手机的Termux,还是十几块的树莓派。
- 模型大脑:可以接本地Ollama服务,也可以接云端兼容OpenAI格式的API。只要给到模型地址和密钥就能通。
- 工具执行端:这一层最灵活。要操作浏览器就用浏览器扩展,要操作微信/钉钉就用消息渠道,要操作Windows桌面就用官方出的Windows Companion,它只负责把Agent的操作指令翻译成本机的鼠标键盘和系统调用。
所以你会发现,Mac在整个链条里的角色只是"一个跑Node的环境"而已,完全可以用更低成本的设备替代。我甚至见过有人在软路由上把OpenClaw跑起来的,虽然功能会受点限制,但说明这事的硬件门槛真的不高。
2.2 三条路线和一份可复制的账单
根据你手头已有的设备,我整理了三条最现实的路线:
| 路线 | 硬件条件 | 额外花费 | 适合谁 |
|---|---|---|---|
| Windows电脑+WSL2 | 手头有台式机或笔记本 | 0元 | 电脑常开、想先尝鲜的人 |
| 旧安卓手机+Termux | 一台闲置安卓机(不用太好) | 约100元内 | 想要低功耗常驻、不占主力电脑的人 |
| 二手小主机+Linux | 二手N100迷你主机或旧笔记本 | 200-400元 | 想本地跑7B以内模型的人 |
花费明细我按自己的情况算过一笔账:
- 路线A:硬件0元。电脑反正要开着,OpenClaw只是其中一个后台进程,额外功耗可以忽略。缺点是电脑一关机,AI助理就跟着休眠。
- 路线B:二手安卓手机100元左右。一台5V1A充电器的功耗也就5瓦上下,一天耗电约0.12度,按居民电价算一个月约两三块钱。如果模型走API而不是本地跑,这个成本几乎可以忽略。
- 路线C:二手小主机200到400元。整机功耗大约10瓦,一个月电费约5到7元。好处是能本地跑3B到7B的小模型,数据不出门,断网的时候还能继续执行简单任务。
我的建议是,第一次接触OpenClaw的人先别急着买硬件,把手头电脑的WSL2弹出来跑一遍,觉得确实有用,再考虑用旧手机换到常驻模式。直接花几百块买二手小主机,结果玩两天吃灰,这种例子我见太多了。
2.3 我的路线选择
我自己最后的配置是:旧安卓手机常驻后台跑OpenClaw核心服务,主力Windows电脑上装官方Companion作为工具执行端。这样分工的逻辑很简单——手机功耗低,适合7x24小时在线;电脑只在需要操作桌面应用时才真正出力,不用一直开着。每次出差或者电脑关机,核心AI助理照常运行,需要用到桌面工具的任务会等到电脑开机后再补执行。这个"调度端在低功耗设备、执行端按需启用"的配合方式,是我觉得低成本方案里体验最好的形态。
3. Windows电脑部署实录:从环境安装到那个WSL2验证报错
第一批踩坑经验基本都集中在Windows部署阶段。网上那些"OpenClaw安装教程"看着很短,实际跑一遍各种环境问题冒出来。下面是我完整走通的流程,每一步都附上我更推荐的做法和踩过的坑。
3.1 为什么Windows先套一层WSL2
OpenClaw的核心服务在Windows原生环境下跑会有一堆系统调用问题,因为它的不少依赖是按类Unix环境设计和编译的。WSL2相当于在Windows内部开了一个轻量级Linux子系统,不占多少资源,却能提供完整的Linux内核支持,完美满足运行条件。
安装WSL2有两种方式。如果你用的是Windows 10 2004以上版本或者Windows 11,用管理员身份打开PowerShell,执行:
wsl --install -d Ubuntu-22.04装完按要求重启,系统会自动完成配置。老版本系统控制面板里如果找不到"适用于Linux的Windows子系统"和"虚拟机平台"这两个可选功能,需要先手动勾选开启,然后再次重启。
这里有个很关键的判断点:装完Ubuntu之后,先确认WSL版本是2而不是1。WSL1和WSL2的内核差异很大,很多第三方工具在WSL1底下会报莫名其妙的内核错误,OpenClaw的启动自检也认版本。
3.2 安装核心服务的过程
进入Ubuntu子系统之后,按顺序执行这几步:
sudo apt update && sudo apt upgrade -y sudo apt install -y git curl build-essential然后装Node.js。我建议用nvm管理Node版本,因为OpenClaw对Node版本有要求,用系统自带的apt源装的Node往往版本过旧,导致npm install阶段报错。nvm安装完成后:
nvm install 18 nvm use 18 node -v确认node版本号正常后,拉取代码:
git clone 官方仓库地址 cd openclaw npm installnpm install这一步是重灾区。如果你的网络环境不太好,会看到一堆timeout和ETIMEDOUT错误。这种情况优先检查npm源是不是能正常访问,或者切换到国内镜像源。装完之后别急着启动,先改配置。
配置文件的重点是几个字段:模型接入地址(本地Ollama就写http://localhost:11434/v1,云端API就写对应的平台地址)、模型名称、时区、技能目录、以及消息推送的开关。时区经常被人忽略,OpenClaw默认用的是UTC时间,你设置了早上9点的定时任务,结果每天下午5点才执行,八成就是时区没改成Asia/Shanghai。
3.3 最常见的"wsl环境验证失败"处理套路
我遇到的最典型报错,是启动OpenClaw时提示"无法安全验证WSL2环境,请在PowerShell中运行wsl --status"。这个提示第一次看到很慌,其实原因不复杂。
按这个顺序排查:
- 在PowerShell里执行
wsl --status,看"默认版本"是不是2。如果显示默认版本是1,说明系统里旧版本WSL残留配置影响到了新版本,执行wsl --set-default-version 2强制切过去。 - 执行
wsl --update把内核补丁更新到最新。这个问题在Windows 10上特别常见,系统自带的WSL组件版本太老,识别不到子系统的安全状态。 - 更新完执行
wsl --shutdown,把整个WSL彻底重启,再重新打开Ubuntu窗口。很多配置改动要重启之后才能生效。 - 如果上面都做了还是报错,检查一下BIOS里的虚拟化选项是不是被关了。AMD平台看SVM,Intel平台看VT-x,这两个没开,WSL2根本起不来完整内核,自检必然失败。
- 实在搞不定WSL2,退路是用VirtualBox装一个完整的Ubuntu虚拟机,OpenClaw照跑。管理上比WSL2重一点,但胜在环境隔离干净。
3.4 顺手把Windows Companion配好
Windows Companion是让OpenClaw获得操作Windows桌面应用能力的关键组件——比如自动填表、模拟鼠标点击、读取剪贴板内容。它的安装很简单,在OpenClaw的发布页面下载配套安装包,双击装完即可。
装完记得做三件事。第一,在OpenClaw配置里把桌面操作能力打开,同时确认只监听localhost,不要开放公网端口。第二,授权本机回环访问,否则Companion连接不到核心服务。第三,确认Windows防火墙没有拦截两者之间的本地通信。配置好之后,你可以直接在OpenClaw里给它发一条"打开记事本,输入一行指定的文字",它应该能自己完成整套动作。如果没反应,先看Companion的日志是不是有权限弹窗被系统拦截了。
4. 模型接入与算力成本:本地Ollama和云端API怎么选
模型是整个OpenClaw体验里最影响"智商"的部分。选不好模型,硬件配得再漂亮,任务完成质量也是一言难尽。我试过几个方案,差别非常明显。
4.1 三种接入方式,先看对比表
| 方式 | 成本 | 推理质量 | 响应速度 | 适用场景 |
|---|---|---|---|---|
| Ollama本地小模型(3B) | 零API费用 | 简单任务够用 | 慢,约每秒十几个token | 隐私敏感、离线、日常简单指令 |
| Ollama本地大模型(7B-14B) | 零API费用 | 中上 | 需要一定内存和CPU | 不想按月付费、设备有一定算力 |
| 云端API | 按量计费 | 高 | 快 | 复杂任务、追求质量、懒得调校 |
我的实际经验是:本地小模型适合做"格式转换、关键词提取、文本分类"这类确定性任务,云端API适合做"多步推理、长文总结、跨工具协调"这类复杂任务。别指望3B模型能像云端大模型一样流畅地操控多步骤流程,它偶尔会自己绕晕。
4.2 用小模型qwen2.5:3b跑通的配置实例
我第一批试的就是Ollama加qwen2.5:3b,因为这台二手小主机只有8G内存,跑更大的模型会很吃力。配置过程很简单:
ollama pull qwen2.5:3b然后在OpenClaw的配置文件里指向本地模型服务:
{ "model": { "provider": "ollama", "base_url": "http://localhost:11434/v1", "name": "qwen2.5:3b", "api_key": "ollama" }, "timezone": "Asia/Shanghai", "skill_dir": "./skills", "notify": { "push": true } }实测下来,在纯CPU的廉价小主机上,3B模型生成速度大约是每秒十个token出头,一句100字的回复要等十到二十秒。对"整理文件、提取标题、生成提醒"这类任务完全够用,反正后台执行不赶时间。但如果你想让它做多步骤的复杂任务,比如"先搜某只股票的近期新闻,再结合财报做综合分析,最后生成报告",3B模型的思维能力会明显吃力,经常中途丢掉前置步骤。
4.3 一个月到底花多少钱
我按自己实际用量算过一笔明账。硬件方面,我走的是旧手机加二手小主机双线方案,一次性硬件成本约280元。如果纯走手机加API,硬件100元出头。日常运行成本分两块:
电费:手机路线一个月2到3块钱,小主机路线一个月5到7块钱。这个部分基本上可以忽略。
API费用:按每天200次轻量请求来算,每次请求平均消耗2000个输入token加800个输出token,一个月大约130万token。现在国产中文模型API的市场价格普遍在每百万token几块钱的量级,按质量中等偏上的平台算,一个月大概5到10块钱。如果你只跑本地模型,这笔费用直接归零。
所以真实账目是一次性100到400元的硬件投入,加每月不到10元的运行开销。相比按年订阅的商业AI助理服务,这个成本确实廉价,而且数据还都在自己手里。
4.4 那个高频疑问:OpenClaw只能靠API消耗算力吗
看到很多人在问"OpenClaw只能用接入API的方式使用算力吗",显然是被网上那些教程误导了,因为教程作者默认展示的都是API方案,方便演示效果。
其实OpenClaw的模型层是抽象过的,它只要求你给一个兼容OpenAI格式的base_url和模型名称。你给它Ollama的本地地址,它就走本地算力;给它一个云API的地址,它才走云端算力。甚至可以配置成混合形态:简单任务走本地小模型,复杂任务走云端大模型,按任务类型自动路由。这个灵活性是它设计上的一个优点,不用为了体验去绑定任何特定服务商。
5. 让AI助理干活的Skill机制,以及长期运行要盯的事
模型接好只是第一步,真正让AI助理产生价值的,是Skill。Skill这个词在OpenClaw体系里含义很具体:你预先给Agent写好的操作说明书,包含触发条件、执行步骤、允许调用的工具集合。有了Skill,Agent到了点就知道该干什么,不用每次都从对话里临时理解需求。
5.1 Skill是什么:一次技能配置的拆解
你可以把Skill理解成给一个聪明但没有常识的实习生发标准作业流程。模型本身知道怎么做,但不知道你的具体业务环境。Skill把你日常重复的任务描述成一份结构化的规则,让Agent按SOP执行,远比每次聊天来回解释要可靠。
我配置一个技能时,通常会定义这几个字段:
- name:技能名字,调度器用它来识别。
- schedule:Cron表达式,控制什么时间触发。
- prompt:给模型的目标描述,越具体越好,尽量包含输入、期望输出、限定条件。
- tools:允许调用哪些工具,比如网页搜索、文件系统、消息推送。
- params:额外参数,比如监控的URL、阈值价格。
格式上各地版本略有差异,我的写法是直接在配置文件里维护一个技能列表。第一次写的时候建议先只加一个技能,跑通链路后再逐步扩充,不然日志刷屏时你根本不知道是哪个任务出了问题。
5.2 三个拿来就能改的技能模板
我自己一直在用的三个技能,你可以直接改改参数套用。
第一个是日报推送。每天早上抓取指定博客和资讯页的更新,整理成摘要推送到手机。配置里把schedule设为每天九点半:
{ "skill": { "name": "daily_report", "schedule": "0 30 9 * * *", "prompt": "抓取指定博客列表在过去24小时内的新增文章,输出标题加一句话摘要,推送给我", "tools": ["web_search", "http_get", "notify"] } }第二个是下载目录整理。凌晨两点执行,把下载目录里散乱的文件按扩展名和关键词分门别类:
{ "skill": { "name": "clean_downloads", "schedule": "0 2 * * *", "prompt": "扫描下载目录中的文件,按扩展名和文件名关键词移动到对应子目录,保留原始文件名", "tools": ["file_system"] } }第三个是商品比价监控。每半小时检查一次目标商品的价格,低于阈值就提醒我:
{ "skill": { "name": "price_watch", "schedule": "*/30 * * * *", "prompt": "检查指定商品页面的最终成交价,低于500元时发送通知,否则只记录日志", "tools": ["http_get", "notify"], "params": { "url": "https://example.com/item/12345", "threshold": 500 } } }实际用下来,价格监控这种技能最吃页面结构变化,一旦商品页改版,模型可能解析不到字段。解决办法是让同样的监控任务在日志里保留原始网页内容片段,下次失败时可以直接看出是不是页面结构变了。
5.3 24小时在线运行的真实维护经验
让Agent热热闹闹装了一堆技能之后,真正考验人的是长期运行。以下几条都是我踩过坑后总结出来的经验:
日志是第一排障手段。OpenClaw每次任务执行都会记录任务链,包括模型的中间思考过程和每一步工具调用的返回值。很多"好像没反应"的问题,翻日志就看到是模型第一步就把方向搞错了。别盯着界面看,直接看日志。
进程守护必须配。裸跑Node进程,一旦崩了就得手动拉起。我用pm2做进程守护,配置了自动重启,崩溃后能自己恢复。Windows上如果你走WSL2,记得在Ubuntu里设置systemd对应的开机服务,否则Windows重启后不会自动拉起WSL里的进程。
时区坑记得排查。前面提到过UTC和Asia/Shanghai的错位,这个特别阴。你会看到技能明明配置了,日志里也有执行记录,就是时间对不上,翻到调度记录才发现系统时间跟北京时间差了八个小时。
密钥和配置分离。API密钥这类敏感信息不要硬编码在共享的配置文件里,套一层环境变量,哪怕自己用,养成这个习惯也能避免误发配置文件的尴尬。
版本更新要克制。OpenClaw更新频率不低,但不必追新。跑得好好的就别手痒升级,升级前先看一眼发布说明里的breaking change,我有一次升级后技能配置格式变了,一整个星期都在修。
6. 跟安卓手机也有关:Termux路线与手机/电脑取舍
如果你的主要诉求是"低功耗、7x24小时常驻、不占主力电脑",那旧安卓手机加Termux的路线可能比再买一台小主机更划算。我把这条线完整走了一遍,可行,但有一些需要注意的限制。
6.1 Termux安装与OpenClaw接入步骤
Termux是一个安卓上的终端模拟器,能在手机上跑真实的Linux环境包。安装来源我建议用F-Droid,版本更新及时,从应用商店装的那个版本经常因为和系统存储交互受限而踩坑。
装好Termux后,按顺序执行:
pkg update && pkg upgrade -y pkg install -y nodejs-lts git termux-setup-storage git clone 官方仓库地址 cd openclaw npm install这里有个很容易忽略的点:termux-setup-storage必须先执行,它帮你申请存储权限,否则后面文件系统类的技能会全部失败。npm install阶段如果报错,检查一下网络和npm源,处理方式跟电脑端一样。
配置HTTP和模型接入的步骤跟前面windows部分一致。手机端如果没有配套的消息推送权限,通知功能会失效,需要在系统设置里把Termux的通知权限打开。我手机上常驻运行时,配合了Ollama局域网服务器——手机不自己跑模型,而是连接家里小主机上的Ollama服务,既保留了本地模型的隐私性,又不用承受手机端推理的发热问题。
6.2 手机后台保活的几个关键设置
安卓系统对后台进程有一套严格的清理机制,装好OpenClaw只是第一步,关键是让它在息屏状态下活下去。
第一,系统电池优化要设置成"不优化"。各品牌手机设置路径不一样,但原理相同:把Termux加入白名单,防止系统把它杀了。
第二,执行termux-wake-lock,让Termux持有唤醒锁,息屏后CPU不会进入深度睡眠。这行命令我写在OpenClaw的启动脚本里,确保每次启动都自动执行。
第三,用pm2管理进程,再配合Termux:Boot插件,让手机开机后自动拉起pm2,进而拉起OpenClaw。无线电管理、后台限制这些能关就关。
第四,长期插电要保护电池。多数手机系统支持充电限制功能,把电量设成只能充到80%左右,能明显减缓电池鼓包。反正这手机专职挂着当Agent主机,不需要满电续航。
6.3 手机路线和电脑路线到底怎么选
用了一张表总结我的建议:
| 对比项 | Windows电脑+WSL2 | 安卓Termux | 二手小主机+Linux |
|---|---|---|---|
| 硬件成本 | 0元 | 约100元 | 200-400元 |
| 桌面GUI操作 | 支持(配合Companion) | 不支持 | 支持有限 |
| 全天候在线成本 | 高(电脑耗电) | 最低 | 低 |
| 维护难度 | 中等 | 中上 | 低 |
| 适合场景 | 尝鲜、需要桌面操作 | 轻量常驻、调度中心 | 本地模型、重任务 |
我的看法是,如果你已经有一台每天要开着的电脑,直接在电脑上部署最省事。如果想长期运行、省电、不占资源,旧手机这条线性价比太高了,100块不到的投入,换来一个完全独立的常驻Agent节点。只有当你开始不满足于API模型的输出质量、准备跑更大的本地模型时,再考虑二手小主机。三条路线之间并不冲突,我最终就是手机加小主机配合着用,电脑反而只是出差时才临时顶班。
最后聊两句个人体会。折腾OpenClaw这么长时间,我发现最大的收获反而不是它帮我省了多少时间,而是你会慢慢习惯把重复工作描述成一个个明确任务的思维方式。给模型写prompt、给技能配调度、调工具权限,本质上是在把日常流程拆成机器能理解的指令,这个能力练熟了,用到任何自动化场景都受益。还有一个小技巧:做任何新技能之前,先在聊天界面用自然语言把任务完整跑一遍,把跑通的步骤再固化到Skill里,比直接对着配置文件盲写靠谱得多。你想要的不是一句口号式的AI助理,而是一个每天都在帮自己兜底干活的数字员工。