OpenClaw Proxy 设置,7890 端口为例

Windows 下给 OpenClaw 配本地代理的实用方法,重点是让 Node.js 真正读取代理环境变量,其中 NODE_USE_ENV_PROXY=1 非常关键。

OpenClaw Proxy 设置,7890 端口为例
目录

OpenClaw Proxy 设置,7890 端口示例

如果 OpenClaw 在 Windows 下联网异常,尤其是 OpenAI OAuth token exchange 卡住、登录失败、请求超时,这类问题很多时候不是 OpenClaw 本身坏了,而是 终端代理没有真正传递给 Node.js。

这篇直接给一个能用的配置,假设你本地代理端口是 7890。

OpenClaw Proxy 设置示意图

临时设置,先在 PowerShell 里直接执行

$env:http_proxy = "http://127.0.0.1:7890"
$env:https_proxy = "http://127.0.0.1:7890"
$env:all_proxy = "http://127.0.0.1:7890"
$env:NO_PROXY = "localhost,127.0.0.1,::1"
$env:NODE_USE_ENV_PROXY = "1"

这里面最关键的是这一行:

$env:NODE_USE_ENV_PROXY = "1"

很多人前面四个代理变量都配了,但 Node.js 默认未必会按你预期走这些环境变量。对于 OpenClaw 里依赖 Node 网络层的场景,这行经常才是决定成败的关键。

为什么这一行关键

像 OpenClaw 登录、OAuth token exchange、部分 fetch 请求,底层会经过 Node.js。

如果只是设置了:

  • http_proxy
  • https_proxy
  • all_proxy

但没加:

  • NODE_USE_ENV_PROXY=1

那就可能出现一种很烦的现象:

  • 浏览器能代理
  • curl 有时能代理
  • Clash 明明开着
  • 但 OpenClaw / Node fetch 还是连不上

所以这不是“可选优化”,很多情况下它是必须项。

永久自动化方案

如果你不想每次开 PowerShell 都手动敲一遍,最省事的办法就是把配置写进 $PROFILE。

先执行:

if (!(Test-Path $PROFILE)) { New-Item -Type File -Path $PROFILE -Force }
notepad $PROFILE

然后把下面这段完整写进去:

# ================== OpenClaw + Clash 代理设置 (Windows) ==================
# 自动设置终端代理
$proxy = "http://127.0.0.1:7890"

$env:http_proxy = $proxy
$env:https_proxy = $proxy
$env:all_proxy = $proxy
$env:NO_PROXY = "localhost,127.0.0.1,::1"

# 关键一行:让 Node.js fetch 真正走代理(OpenAI OAuth token exchange 必须)
$env:NODE_USE_ENV_PROXY = "1"

# 启动提示
Write-Host "✅ PowerShell 已自动设置 OpenClaw 代理 (端口 7890 + NODE_USE_ENV_PROXY)" -ForegroundColor Green

# 可选:一键开关函数(以后想临时关闭就输入 proxy-off)
function proxy-on {
 $proxy = "http://127.0.0.1:7890"
 $env:http_proxy = $proxy
 $env:https_proxy = $proxy
 $env:all_proxy = $proxy
 $env:NO_PROXY = "localhost,127.0.0.1,::1"
 $env:NODE_USE_ENV_PROXY = "1"
 Write-Host "✅ 代理已开启 (7890)" -ForegroundColor Green
}

function proxy-off {
 $env:http_proxy = $null
 $env:https_proxy = $null
 $env:all_proxy = $null
 $env:NO_PROXY = $null
 $env:NODE_USE_ENV_PROXY = $null
 Write-Host "❌ 代理已关闭" -ForegroundColor Yellow
}

# 默认启动时开启代理
proxy-on

这套配置的好处

这样配完以后:

  • 每次打开 PowerShell 自动带代理
  • OpenClaw 更容易直接正常联网
  • 需要关闭时可以手动执行 proxy-off
  • 要恢复时执行 proxy-on

基本不用再反复折腾。

适用场景

这套方案尤其适合:

  • Windows + PowerShell
  • Clash / Mihomo 本地代理
  • OpenClaw 登录或联网异常
  • Node fetch 不走代理

如果你用的不是 7890,把文里的端口统一替换成你自己的本地代理端口就行。

最后一句

如果你只记一个点,那就是:

代理变量配了不算完,NODE_USE_ENV_PROXY=1 很关键。

这一行,真的是很多 Windows 环境下 OpenClaw 联网问题的胜负手。

相关文章

OpenClaw · 2026-04-16OpenClaw 多 Agent CLI 配置与 Channel 绑定指南AI 工具 · 2026-05-20Hermes 安装实战:WSL 代理配置、macOS proxychains 与多 Profile 克隆技术 · 2026-03-16我的赛博老婆文文是怎么安装搜索引擎的