最近不少朋友来问我,Windows 10 上到底怎么装 OpenClaw。说实话我第一次看到这个词,第一反应是某个游戏项目,毕竟 OpenClaw 这名字撞过不少车。结果聊下来才发现,他们想装的是一个开源的 AI 代理工具,中文圈习惯叫它“小龙虾”——Claw 就是爪子,龙虾钳子也是爪,叫起来还挺顺口。这东西不是普通聊天机器人,而是一个能自己看屏幕、敲键盘、执行命令的 AI 助手。我花了一整个下午,在 Windows 10 里从零走通了安装、配置、Companion、跑任务全流程,这篇文章就把整个过程和踩过的坑原原本本写出来,给想在自己电脑上装小龙虾的人做个参考。
1. 先搞明白:OpenClaw 和小龙虾到底是个啥
在动手安装之前,必须先搞清楚 OpenClaw 的定位,不然你装完大概率会问:这玩意怎么不像 ChatGPT 那样直接聊天?
1.1 它和普通聊天软件的本质区别
OpenClaw 的核心是一个 Agent(代理)运行环境。普通聊天机器人是“你问一句、它答一句”的问答循环;而代理的工作循环是:接收任务 → 拆解步骤 → 调用工具 → 观察结果 → 再拆解 → 直到完成。你可以把它想象成一个坐在你电脑前面的实习生,它的眼睛是截图功能,手是命令行和窗口操作,大脑是背后的 LLM 模型。
这个区别特别重要,因为安装完成以后,你用它的方式也会完全不同。聊天软件是你喂一句它回一句,OpenClaw 是你丢给它一个完整目标,然后看它自己倒腾。我第一次跑通时,心理上适应了很久——明明没有给具体操作,它就自己把脚本写了、把命令执行了、把结果整理好了。这种“放权”的感觉,恰恰是它和传统软件最大的分水岭。
1.2 四个组件:引擎、模型、技能、伴侣
从架构上看,OpenClaw 拆成四个部分:
- 引擎:负责读配置、调度模型、记录任务日志,是整个项目的主进程。
- 模型:负责思考,默认接云端 API,也可以接本地 Ollama。
- 技能:以文件为单位打包的“动作脚本”,模型会按需选择调用。
- 伴侣:一个本地辅助进程,负责截图、模拟键鼠、管理窗口。
这四个部分不是必须同时装。核心引擎加一个模型就能跑,但那样它只能在终端里回答你,没法操作桌面。想让小龙虾真正“动手”,就必须再配一个伴侣。
1.3 为什么 Windows 10 原生安装够用
至于 Windows 10,完全没问题。OpenClaw 的底层依赖是 Node.js 和 Python,这两个在 Windows 10 上都有成熟的原生支持。我反而建议先别急着上 Docker 或 WSL,原生安装的排查链路短,出了问题直接改环境变量就行,对新手友好得多。
我选择 Windows 10 而不是最新系统的原因很实际:公司电脑还是 Win10 LTSC,生产环境大多数也是 Win10,能用原生方式跑通,就不需要引入额外的虚拟化层。后面所有的配置、报错、修复,面对的都是一个普通 Windows 桌面环境,这也是最主流的运行场景。
2. 装之前的环境准备:三件套和一个目录
OpenClaw 不是一个单文件 exe,它跑起来依赖一套工具链。我在 Windows 10 上准备的顺序是:先确认系统里有没有 Python、Node 和 Git,再规划目录,最后再碰 OpenClaw 本体。
2.1 工具链版本与检查命令
工具版本没必要追新,稳定就行。我用的组合是:Python 3.11、Node.js 20 LTS、Git for Windows 最新版。如果你机器上已经有更高版本,问题也不大,只要别低于项目要求的下限。
| 工具 | 最低版本参考 | 检查命令 | 主要用途 |
|---|---|---|---|
| Python | 3.10 | python --version | 跑技能脚本 |
| Node.js | 18 LTS | node -v | 跑引擎 |
| Git | 最新稳定版 | git --version | 拉源码 |
检查完版本,顺手把 Windows Terminal 也装一下。不是必须,但后面要看日志、观察代理的思考过程,一个支持多标签的终端能省不少事。PowerShell 5.1 也能跑,只是显示效果和操作体验差一些。
2.2 用目录归拢配置,卸载重装更干净
OpenClaw 默认会在用户目录下生成一堆配置和日志,重装时很容易残留旧配置导致启动异常。我习惯单独建一个工作目录,比如D:\openclaw,然后设置一个OPENCLAW_HOME环境变量指向它。把所有状态集中到一起,出问题大不了整个目录删掉重来。
设置方法不复杂:在 Windows 搜索框里输入“环境变量”,打开系统属性里的环境变量编辑窗口,新建一个用户变量,变量名OPENCLAW_HOME,变量值填你的工作目录。设完之后要新开一个终端窗口才生效,这是个非常容易忽略的细节。
2.3 API Key 还是 Ollama,先定个方向
如果你打算用云端 API 方式,现在就把 key 准备好。OpenClaw 默认走 Anthropic 的 Claude API,你需要有一个有效 API Key。Windows 下设置环境变量很容易,在 CMD 里用set,在 PowerShell 里用$env:。我给个 PowerShell 例子:
$env:ANTHROPIC_API_KEY = "sk-ant-你的密钥"不想用云端 API 也可以,后面第 6 章会讲怎么接 Ollama 本地模型。但第一次安装时,我建议先老老实实用云端 key 跑通一遍,排除掉本地模型引起的变量,之后再切换到 Ollama 做对照。这就像学开车,先在最熟悉的路上练熟,再换复杂路况。
提示:API Key 是属于你个人的敏感凭证,别写进仓库、别发给任何聊天窗口。OpenClaw 会记录执行过的命令,如果命令里带了 key,等于在日志里留了一份明文密钥。
3. 安装三步走:拉代码、装依赖、初始化
环境准备完就可以正式安装了。我这边 Windows 10 上走的流程是三步:拉源码、装依赖、跑初始化向导。没有走 exe 安装包,因为开源项目的安装包经常滞后于仓库代码,直接拉源码反而不容易踩到旧版 bug。
3.1 拉源码与装依赖
第一步,拉源码。打开命令行,进到你规划好的父目录,执行:
git clone [OpenClaw官方仓库地址] cd openclaw如果你网络条件一般,拉取时间会久一些,耐心等就行。拉到本地以后,第二步是装依赖。OpenClaw 的引擎是 Node.js 项目,进入目录后运行:
npm install如果项目是纯 Node 还好,但它混合了 Python 技能,所以部分依赖还需要 pip 安装。具体要不要跑 Python 依赖,看仓库里的 README 和 setup 脚本。别跳步,Windows 下最常见的问题就是依赖没装全,启动时各种ModuleNotFound,那种错最浪费时间。
3.2 初始化向导和第一次启动
第三步,初始化。通常是运行npm run setup或npx openclaw init,会有一个交互式向导:让你填模型提供商、API Key、角色设定、数据目录。首次配置我强烈建议全部用默认值,先把最小可用环境拉起来,再慢慢改。上来就改一堆自定义选项,出了错你根本分不清是哪一项引起的。
启动命令是npm start或openclaw。正常情况下,终端会打印日志,然后出现一个后台 Web 控制台地址。打开浏览器访问它就能和它对话。第一次看到那个控制台界面时,我心里那块石头才落地——前半小时全在跟环境变量较劲,真到启动反而一路顺畅。
3.3 首次启动报错排查表
但第一次启动没这么顺利。我遇到的报错,按出现概率排序是:PowerShell 执行策略拦截、端口被占用、防火墙弹窗、缺依赖。下面这张表是排查思路。
| 常见错误 | 现象 | 处理 |
|---|---|---|
| PowerShell 阻止脚本 | 报错“因为在此系统上禁止运行脚本” | 执行Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser |
| 端口被占用 | 启动后控制台打不开 | netstat -ano | findstr 端口号,找到占用进程并关闭 |
| 防火墙弹窗 | Windows 安全中心提示 Node.js 或 Python 网络访问 | 点击允许,并勾选专用网络 |
| 缺 Python 依赖 | 日志报ModuleNotFoundError | 按 README 提示执行 pip install 相关依赖 |
这些问题都有一个共同点:不是 OpenClaw 本身的逻辑问题,而是 Windows 10 的默认策略太保守。每次解决完,记得重开一个新的终端窗口再启动,否则环境变量不生效。我前两次就是省了这步,改完环境变量直接在旧终端里跑,结果系统根本读不到新值,白白多试了十分钟。
4. 配 Windows Companion:给小龙虾装上眼睛和手
如果只装完了引擎,那 OpenClaw 还是个只会聊天的脑子。要让它真正操作 Windows 桌面,需要 Windows Companion。这个组件我在第一次安装时忽略了,结果任务是能跑,但它全程只能靠命令行,没法点窗口、看截图,能力至少砍掉一半。
4.1 Companion 负责眼睛和手
Companion 的定位是“本地操作层”。引擎负责思考,Companion 负责动手:截取屏幕、读取当前窗口、移动鼠标、点击按钮、输入文字。两者通过本地端口通信,数据不出本机。
这个设计和人很像:大脑在颅内做决策,但它看不到世界,必须靠眼睛传回画面、靠手去执行动作。没有 Companion 的 OpenClaw,就像蒙着眼罩、绑住双手的实习生,只能在终端里敲字,做不了任何桌面级操作。
4.2 配置步骤与权限
在 Windows 10 上配置 Companion,大致是这几步:先下载安装官方 Windows Companion 程序;然后在 OpenClaw 配置里填上 Companion 端口;最后在 Windows 的隐私设置里允许它访问屏幕录制、辅助功能等权限。
具体菜单路径很容易找:设置 → 隐私 → 屏幕截图,打开允许桌面应用访问。设置 → 隐私 → 辅助功能,同样把权限打开。如果不放权,Companion 可能启动正常,但一截图就是黑屏,这会让人误以为引擎坏了。
4.3 两个隐藏很深的坑
容易踩的坑有两个。第一个,Windows 10 的屏幕录制权限默认用来保护隐私,传统桌面程序有时拿不到截图权限,表现就是 Companion 截出来的图是全黑或者其他程序窗口。解决办法就是上面说的隐私设置。第二个坑更隐蔽:如果你的显卡驱动太老,部分截屏 API 会返回空白帧,我的老笔记本就是这个症状,更新显卡驱动后恢复正常。
安全上,我给的建议是别常开 Companion。不是不能用,而是它一旦授予了键鼠控制权限,所有能看到你屏幕的进程理论上都能间接操作系统。我平时只在跑自动化任务前启动 Companion,跑完立刻退出。权限最小化,出事范围才最小化。
5. 实践验证:让小龙虾自己写脚本并执行
装完不跑一次真实任务是心里没底的。我挑了一个完全本地、不依赖外网、还能同时验证文件操作和命令执行的小任务:在D:\openclaw_demo下创建目录,写一个计算斐波那契数列的 Python 脚本,运行它,然后把结果报告给你。
5.1 选一个安全的小任务
为什么不直接让它联网查天气、发邮件?因为第一次跑,你需要尽可能少的变量。我选的这个任务不涉及外部网络,又能检验截图、命令执行、文件读写三条链路。如果一开始就上高难任务,出了问题你根本不知道是哪个环节的锅。
任务定义得越清晰,后面排查越轻松。我当时给自己定的要求是:这个任务即使让小学生在五分钟内也能手动完成。代理模型能力再强,也架不住任务描述模棱两可。
5.2 下指令要说人话
下达任务指令时,我有一个心得:把话说完整。不要只写“写个 Python 脚本算一下斐波那契”,而是把路径、脚本名、语义都交代清楚。我给小龙虾的任务是这样的:“请先确认d:\openclaw_demo目录是否存在,不存在就创建;然后在里面写一个fib.py,内容是从 1 打印到 10 的斐波那契数列;最后用py执行它,并把输出贴给我。”边界越清晰,它越不容易自由发挥。
这里有个细节值得反复强调:Windows 上没有python3这个命令,只有python和py。如果任务里写的是“使用 python3 执行”,OpenClaw 大概率会先去尝试,然后得到一条报错,再自己纠偏。这种纠偏能力它具备,但会消耗额外的时间和上下文,所以指令里最好直接点名用py。
5.3 看懂日志才能信任它
然后就是观察日志。OpenClaw 会习惯性地打印类似Thought / Action / Observation的循环记录。这一步是整个过程中最有意思的部分:你能看到它在“思考”用哪个技能、在“执行”什么命令、看到了什么输出并据此决定下一步。跑通一次之后,你对它的行为模式就有了直观的把握。
我这次的结果是它成功创建了目录、写出了脚本、执行完也返回了对的数列。但我同时观察到一个值得注意的现象:任务描述里我若写python,它有时会调用python3,而 Windows 上通常没有这个命令;改成py后就稳了。这说明,OpenClaw 的很多“翻车”不是能力问题,而是它的行动经验和 Windows 环境存在细节偏差。
6. 本地算力、Skills 机制和手机部署:绕不开的进阶话题
基础跑通之后,网上那些高频关键词你基本都能看得懂了:Ollama 部署、Skill、Termux 安装、ROS2 Gazebo。它们本质上都是把 OpenClaw 往不同方向扩展。
6.1 不用 API,用 Ollama 把算力留在本地
很多人问大模型是不是只能用接入 API 的方式调用算力。答案是否定的。OpenClaw 也支持接兼容 OpenAI 接口的本地推理服务,最简单的方式是装 Ollama。Windows 10 直接装 Ollama 客户端,然后在终端里拉一个模型,比如qwen2.5:7b。然后在 OpenClaw 的配置里把模型服务地址改成http://127.0.0.1:11434/v1,模型名改成你拉的模型,就能用本地算力跑。
ollama pull qwen2.5:7b ollama serve本地模型和云端 API 各有取舍。用一个对比表看得更清楚。
| 对比维度 | 云端 API | 本地 Ollama |
|---|---|---|
| 效果 | 理解能力强,复杂任务稳定 | 7B 档理解能力弱一截 |
| 成本 | 按 token 计费 | 免费但耗电耗显存 |
| 隐私 | 对话数据要交给服务商 | 数据不出本机 |
| 安装 | 只需 Key | 需要装 Ollama 并拉模型 |
我的建议很实用:日常跑简单任务、想省心,用云端 API;隐私敏感或想离线,用本地模型。两个可以并存,配置里随时切换。先用云端跑通流程,再切到本地做性能对比,这是最稳的上手路径。
6.2 Skills 到底怎么玩
Skill 是 OpenClaw 最有扩展性的部分。说白了,Skill 就是把“一个工具怎么用”的说明和代码打包成一个文件夹。模型在任务中会读这些说明,按需调用。比如我写过一个打开系统工具的 Skill:描述文件里写明“当用户需要打开计算器、记事本或任务管理器时使用本技能”,脚本里分别调用calc、notepad、taskmgr这三个命令。
写 Skill 的几点经验:命令用绝对路径或者纯命令,不要依赖当前工作目录;脚本里处理中文路径时要显式编码;任何可能失败的操作都要有错误输出。不然模型看到空白输出,根本不知道下一步该干什么。
顺便说一个容易混淆的词:rosclaw。它是 ROS2 机器人社区里的一个夹爪控制项目,和 OpenClaw 重名但没有任何关系。热词里经常出现“rosclaw openclaw ros2 humble gazebo”,那是在 ROS2 环境下做机器人控制的话题。如果你确实想在 OpenClaw 里控制 Gazebo 仿真,思路不是装 rosclaw,而是写一个调用ros2命令的 Skill,让模型通过命令行操作仿真环境。这是进阶中的进阶,基础不牢先别碰。
6.3 手机端 Termux 是怎么实现的
还有人问能不能在手机上装 OpenClaw。能,但思路是套壳 Linux。在安卓 Termux 里用 proot-distro 装一个 Ubuntu 容器,然后按照 Linux 的部署流程装 Node 和 Python。手机和电脑同一个流程,核心区别是性能和续航。我在旧手机上跑通过一次简单任务,结论是:能跑,但别在手机上跑本地模型,最好把模型请求指向电脑上的 Ollama,手机只当一个远程遥控器。
而且要明确一点:手机版不是为了替代电脑,而是为了让你出门在外也能给家里的电脑下任务。真要天天办公,还是老老实实回到 Windows 10。
6.4 高频问题汇总
| 现象 | 原因 | 建议 |
|---|---|---|
| API 超时 | 网络不稳定 | 检查网络连通性,重试 |
| 中文路径乱码 | 编码问题 | 脚本里统一用 UTF-8,并检查系统代码页 |
| 杀毒软件拦截 | OpenClaw 执行命令触发行为检测 | 把项目目录加入白名单 |
| 任务执行一半卡住 | 模型上下文过长 | 拆分成小任务,或换更强模型 |
最后说说我的整体体会。Windows 10 装 OpenClaw 真不难,难的是接受“它是个 Agent(代理)”这件事。它和聊天软件最大的不同是:聊天软件说错话你可以一笑而过,它做错操作可能会改坏文件。我现在的习惯是,小任务放手让它自己跑,大任务先让它列步骤给我看,确认以后再执行。这个习惯建议你也留着,毕竟小龙虾还没聪明到能替你兜底。