Files
openclaw/docs/zh-CN/platforms/windows.md
2026-03-16 07:03:19 +00:00

6.4 KiB
Raw Permalink Blame History

read_when, summary, title, x-i18n
read_when summary title x-i18n
在 Windows 上安装 OpenClaw
查找 Windows 配套应用状态
WindowsWSL2支持 + 配套应用状态 WindowsWSL2
generated_at model provider source_hash source_path workflow
2026-03-16T06:24:52Z gpt-5.4 openai 2e905b129f34ac31e30d5767504233411b306b5985252f1a285e09f1ece19962 platforms/windows.md 15

WindowsWSL2

推荐在 Windows 上通过 WSL2 运行 OpenClaw推荐 Ubuntu。CLI + Gateway 网关在 Linux 内运行,这能保持运行时一致,并使 工具链兼容性高得多Node/Bun/pnpm、Linux 二进制文件、Skills。原生 Windows 可能会更棘手。WSL2 可提供完整的 Linux 体验 —— 只需一条命令 即可安装:wsl --install

原生 Windows 配套应用已在规划中。

安装WSL2

原生 Windows 状态

原生 Windows CLI 流程正在改进,但 WSL2 仍然是推荐路径。

当前在原生 Windows 上运行良好的内容:

  • 通过 install.ps1 使用网站安装器
  • 本地 CLI 用法,例如 openclaw --versionopenclaw doctoropenclaw plugins list --json
  • 嵌入式 local-agent/provider 冒烟测试,例如:
openclaw agent --local --agent main --thinking low -m "Reply with exactly WINDOWS-HATCH-OK."

当前注意事项:

  • 除非你传递 --skip-health,否则 openclaw onboard --non-interactive 仍然要求本地 Gateway 网关可访问
  • openclaw onboard --non-interactive --install-daemonopenclaw gateway install 会优先尝试 Windows Scheduled Tasks
  • 如果拒绝创建 Scheduled TaskOpenClaw 会回退到每用户 Startup 文件夹登录项,并立即启动 Gateway 网关
  • 如果 schtasks 本身卡住或停止响应OpenClaw 现在会快速中止该路径并回退,而不是无限挂起
  • 在可用时仍优先使用 Scheduled Tasks因为它们能提供更好的 supervisor 状态

如果你只想使用原生 CLI而不安装 Gateway 网关服务,可使用以下任一方式:

openclaw onboard --non-interactive --skip-health
openclaw gateway run

如果你确实想在原生 Windows 上使用受管启动:

openclaw gateway install
openclaw gateway status --json

如果无法创建 Scheduled Task回退服务模式仍会通过当前用户的 Startup 文件夹在登录后自动启动。

Gateway 网关

Gateway 网关服务安装CLI

在 WSL2 内:

openclaw onboard --install-daemon

或者:

openclaw gateway install

或者:

openclaw configure

出现提示时,选择 Gateway 服务

修复/迁移:

openclaw doctor

在 Windows 登录前自动启动 Gateway 网关

对于无头设置,请确保完整的启动链即使在无人登录 Windows 时也能运行。

1在未登录时保持用户服务运行

在 WSL 内:

sudo loginctl enable-linger "$(whoami)"

2安装 OpenClaw Gateway 网关用户服务

在 WSL 内:

openclaw gateway install

3在 Windows 启动时自动启动 WSL

以管理员身份打开 PowerShell

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

Ubuntu 替换为以下命令输出中的发行版名称:

wsl --list --verbose

验证启动链

重启后(在 Windows 登录前),在 WSL 中检查:

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

高级:通过局域网暴露 WSL 服务portproxy

WSL 有自己的虚拟网络。如果另一台机器需要访问 在 WSL 内运行的服务SSH、本地 TTS 服务器或 Gateway 网关),你必须 将 Windows 端口转发到当前的 WSL IP。WSL IP 会在重启后变化, 因此你可能需要刷新转发规则。

示例(以管理员身份打开 PowerShell

$Distro = "Ubuntu-24.04"
$ListenPort = 2222
$TargetPort = 22

$WslIp = (wsl -d $Distro -- hostname -I).Trim().Split(" ")[0]
if (-not $WslIp) { throw "WSL IP not found." }

netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=$ListenPort `
  connectaddress=$WslIp connectport=$TargetPort

允许该端口通过 Windows 防火墙(一次性):

New-NetFirewallRule -DisplayName "WSL SSH $ListenPort" -Direction Inbound `
  -Protocol TCP -LocalPort $ListenPort -Action Allow

在 WSL 重启后刷新 portproxy

netsh interface portproxy delete v4tov4 listenport=$ListenPort listenaddress=0.0.0.0 | Out-Null
netsh interface portproxy add v4tov4 listenport=$ListenPort listenaddress=0.0.0.0 `
  connectaddress=$WslIp connectport=$TargetPort | Out-Null

说明:

  • 来自另一台机器的 SSH 应指向Windows 主机 IP(例如:ssh user@windows-host -p 2222)。
  • 远程节点必须指向可访问的 Gateway 网关 URL而不是 127.0.0.1);请使用 openclaw status --all 进行确认。
  • 使用 listenaddress=0.0.0.0 可供局域网访问;127.0.0.1 则仅限本地。
  • 如果你希望自动执行此操作,请注册一个 Scheduled Task在登录时运行刷新 步骤。

分步 WSL2 安装

1安装 WSL2 + Ubuntu

打开 PowerShell管理员

wsl --install
# 或显式选择一个发行版:
wsl --list --online
wsl --install -d Ubuntu-24.04

如果 Windows 提示,请重启。

2启用 systemdGateway 网关安装所必需)

在你的 WSL 终端中:

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

然后在 PowerShell 中运行:

wsl --shutdown

重新打开 Ubuntu然后验证

systemctl --user status

3安装 OpenClaw在 WSL 内)

在 WSL 内按照 Linux 入门指南流程操作:

git clone https://github.com/openclaw/openclaw.git
cd openclaw
pnpm install
pnpm ui:build # 首次运行时会自动安装 UI 依赖
pnpm build
openclaw onboard

完整指南:入门指南

Windows 配套应用

我们还没有 Windows 配套应用。如果你想推动这件事发生,欢迎 贡献。