Community Guide

在 Windows 上安装 OpenClaw

一篇务实的 Windows 安装指南:使用 WSL2、开启 systemd、在 Linux 环境里安装 Gateway,并避开最常见的 Windows 误区。

2026/03/19

Windows 上的推荐路线是 WSL2

当前最合理的方式,不是把 OpenClaw 当作原生 Windows 应用去装,而是把它当成“运行在 Windows 里的 Linux 安装”。

这不是权宜之计,而是官方平台文档明确推荐的路径。因为这样运行时、工具链和服务模型都更接近 OpenClaw 的主路径。

最实际的规则就是:

  • 用 WSL2
  • 除非你有明确理由,否则优先 Ubuntu
  • CLI 和 Gateway 都在 Linux 里运行

如果你从第一天就和这个模型对着干,后面遇到的问题往往不是 OpenClaw 本身的问题。

为什么 WSL2 是正确默认值

WSL2 直接解决了原生 Windows 路径最别扭的几件事:

  • Node、pnpm、Bun 和 Linux 工具链行为更正常
  • systemd user service 可以按官方文档工作
  • browser、skills、gateway 的运维方式和主文档更一致
  • 后续调试更容易,因为你离标准安装路径更近

如果你的目标是“把 OpenClaw 稳定跑起来”,WSL2 仍然是最短路径。

开始前先确认这些前提

先确认下面这些假设成立:

  • 你的 Windows 机器支持 WSL2
  • 你愿意在 WSL 里使用 Ubuntu 或其他 Linux 发行版
  • Node 22 或更高版本会安装在 WSL 里,而不是只装在 Windows 上
  • 你准备让 Gateway 跑在 WSL 里

如果你还处在最开始阶段,先读总安装页会更顺:

第一步:安装 WSL2 和 Linux 发行版

在 PowerShell 管理员窗口里执行:

wsl --install

如果你想明确指定发行版:

wsl --list --online
wsl --install -d Ubuntu-24.04

安装完成后,打开 Linux 终端,后续所有 OpenClaw 安装动作都在里面继续。

第二步:在 WSL 里开启 systemd

OpenClaw 在 Linux / WSL2 下的 service install 依赖 systemd user service。如果 systemd 没开,就算二进制能跑,守护进程体验也会非常不稳定。

在 WSL 内执行:

sudo tee /etc/wsl.conf >/dev/null <<'EOF'
[boot]
systemd=true
EOF

然后回到 PowerShell:

wsl --shutdown

重新打开 WSL,再验证:

systemctl --user status

第三步:在 WSL 里安装 OpenClaw

进入 Linux 之后,按标准受支持路径来:

curl -fsSL https://openclaw.ai/install.sh | bash
openclaw onboard --install-daemon

这里最重要的不是“装上 CLI”本身,而是 onboarding wizard。因为它会一起处理:

  • 模型和认证
  • workspace 创建
  • Gateway 安装
  • 健康检查
  • 可选渠道配置

如果你想完全从源码安装,官方 docs 也给了 WSL 内的 from-source 路线。但对大多数用户来说,先走正常安装路径更合理。

第四步:在 WSL 里验证 Gateway

在去碰渠道或网络暴露之前,先确认基础安装真的是健康的:

openclaw gateway status
openclaw status
openclaw doctor
openclaw dashboard

你想确认的是:

  • Gateway 已经在跑
  • service install 成功
  • Control UI 能打开
  • 自检没有提示明显配置问题

如果这一步都不稳定,就先在 WSL 内排查,不要过早跳去调 Windows 网络。

Windows 上的 service install 应该怎么理解

在 WSL2 里,OpenClaw 用的是 Linux 服务模型,不是原生 Windows service 模型。

这意味着:

  • Gateway 服务本质上是 systemd user unit
  • openclaw onboard --install-daemonopenclaw gateway install 才是正路
  • 服务状态也应该在 WSL 内检查

这很正常。正确的心智模型是“Windows 承载 Linux 服务”,而不是“一个 Linux 插件式的 Windows app”。

如果你想在 Windows 登录前自动启动

如果你需要更接近 headless 的运行方式,官方平台文档给出了一条可行的启动链。

在 WSL 内执行:

sudo loginctl enable-linger "$(whoami)"
openclaw gateway install

然后在 PowerShell 管理员窗口里执行:

schtasks /create /tn "WSL Boot" /tr "wsl.exe -d Ubuntu --exec /bin/true" /sc onstart /ru SYSTEM

重启之后,再回到 WSL 验证:

systemctl --user is-enabled openclaw-gateway
systemctl --user status openclaw-gateway --no-pager

只有当你真的需要“用户还没登录也要启动”时,才值得做这一步。很多人并不需要这么早上复杂度。

如果你要把 WSL 里的服务暴露给局域网

WSL 有自己的虚拟网络。如果别的设备要访问运行在 WSL 里的服务,你不能假设对方也能直接用 127.0.0.1

官方 docs 推荐在确实需要时,用 Windows 端口转发去做暴露。

最重要的操作认知是:

  • 只想本机访问,就坚持 loopback
  • 只有在别的机器真的要连进来时,才加 Windows port proxy
  • remote node 应该指向可达主机,而不是 127.0.0.1

如果你还不确定是否需要局域网访问,那第一轮安装时就先不要加。

常见 Windows 安装错误

只在 Windows 里装,不在 WSL 里装

这会让你的运行环境和官方推荐模型脱节。

忘了开 systemd

不开 systemd,service install 和重启行为就很难和文档一致。

第一次安装就把它当成网络工程项目

先让 Gateway 在 WSL 里稳定工作,再谈端口转发、远程访问和公网暴露。

在需要外部访问时仍然用 127.0.0.1

这是 WSL 网络里最常见的错误之一。

FAQ

Windows 支持 OpenClaw 吗?

支持,但推荐路径是 WSL2。

我必须让 OpenClaw 原生跑在 Windows 上吗?

不需要。当前更推荐的方式,是让 CLI 和 Gateway 跑在 WSL2 里的 Linux 环境里。

Windows 上还要用 onboarding wizard 吗?

要。只不过是在 WSL 里运行它,它仍然是推荐的安装路径。

现在有原生 Windows companion app 吗?

当前主支持路径并不是原生 Windows companion app,而是 WSL2。

下一步看什么