
1. Windows 下 OpenClaw 是什么为什么要在 PowerShell 里跑OpenClaw 是一个跑在本地的 AI 工具链网关你可以把它理解成「一个装在自己电脑上的 AI 调度中枢」它对外暴露一个本地 WebSocket 服务默认ws://127.0.0.1:18789对内把模型供应商、技能插件、会话记忆、命令钩子这些东西统一管起来。你在浏览器里打开http://127.0.0.1:18789/就能和它对话也可以让别的客户端通过 gateway 连进来。它适合谁适合想在 Windows 上快速搭一套本地 AI 工具链、又不想折腾复杂容器和云主机的开发者。尤其是你已经在用 Node.js 写脚本、平时习惯 PowerShell 操作那 OpenClaw 的安装和配置会非常顺手——官方安装脚本就是 PowerShell 写的gateway 服务在 Windows 上也是注册成计划任务来跑。为什么强调 PowerShell因为 OpenClaw 的 Windows 一键安装脚本install.ps1需要通过iwr -useb ... | iex这种方式执行而 PowerShell 默认的执行策略ExecutionPolicy可能会拦住它。你得先确认策略不是Restricted否则脚本根本跑不起来。这一步是很多新手卡住的第一个坑后面我会给出具体命令。整个流程拆开看是四件事检查 Node.js 和 Git 环境、跑安装脚本、配置 gateway 的模型供应商、启动服务并验证响应。30 分钟跑通完全够用前提是网络能正常访问 npm 源和模型 API 地址。下面按顺序来每一步都给可复制的命令和预期输出。需要提前说明的是OpenClaw 本身只是本地网关它要真正干活得接一个模型供应商。你可以接官方支持的供应商也可以接兼容 OpenAI 协议的自定义端点。本文会以接入 TaoToken 为例演示 gateway 配置因为它的 API 地址和 Key 获取方式比较清晰适合作为第一个跑通的供应商。TaoToken 的官网是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 端点是 https://taotoken.net/api 后面配置里会用到。2. 前置环境Node.js、Git 与 PowerShell 执行策略检查在装 OpenClaw 之前先把三样东西确认好Node.js 版本、Git 是否可用、PowerShell 执行策略。这三项任何一项不满足安装脚本都会中途报错。先看 Node.js。OpenClaw 建议 v22 及以上低版本可能在依赖解析时出问题。打开 PowerShell普通权限即可后面装服务时再用管理员执行node --version正常输出类似v22.22.0如果提示node 不是内部或外部命令说明 Node.js 没装或者没进 PATH。去 Node.js 官网下载 LTS 安装包安装时勾选「Add to PATH」装完重开一个 PowerShell 窗口再试。版本低于 v22 的话建议直接升级别在旧版本上硬扛。接着看 Git。OpenClaw 的部分技能和插件依赖 Git 拉取仓库没有 Git 会在后续步骤报git not foundgit --version预期输出git version 2.23.0.windows.1版本号不用太新能正常执行就行。没装的话去 Git 官网下 Windows 版一路默认安装即可。然后是 PowerShell 执行策略。这是 Windows 特有的门槛。先查当前策略Get-ExecutionPolicy可能返回Restricted、RemoteSigned、AllSigned、Unrestricted等。只要不是Restricted安装脚本一般能跑。如果是Restricted需要改成RemoteSigned——它的含义是「本地脚本不受签名限制远程脚本必须有签名」对本地开发足够用也比Unrestricted安全Set-ExecutionPolicy RemoteSigned -Scope CurrentUser执行后会弹出确认提示输入Y回车。这里用-Scope CurrentUser只影响当前用户不需要管理员权限也不会动系统全局策略比较稳妥。改完再Get-ExecutionPolicy确认一下变成RemoteSigned就行。注意不要随手把策略设成Unrestricted那等于对所有脚本放行没必要。RemoteSigned是本地开发场景的合理选择。三项检查都过了环境就算齐了。这一步大概花 3 到 5 分钟主要时间在下载安装包上。3. 安装 OpenClaw 并配置 gateway 接入 TaoToken环境就绪后跑官方安装脚本。在 PowerShell 里执行iwr -useb https://openclaw.ai/install.ps1 | iexiwr是Invoke-WebRequest的别名-useb表示用基本解析模式拿内容然后通过管道交给iexInvoke-Expression执行。脚本会检测系统、检查 Node.js、安装openclawlatest然后自动跑一次doctor做初始化迁移。输出里会看到类似OpenClaw Installer [OK] Windows detected [*] Existing OpenClaw installation detected [OK] Node.js v22.22.0 found [*] Installing OpenClaw (openclawlatest)... [OK] OpenClaw installed [*] Running doctor to migrate settings...doctor阶段会显示 gateway 的目标地址、配置文件路径、绑定方式等信息。默认配置写在C:\Users\你的用户名\.openclaw\openclaw.jsongateway 监听ws://127.0.0.1:18789绑定 loopback只允许本机访问。如果提示Gateway service not installed先不用管后面可以手动装。安装完成后验证命令是否可用where.exe openclaw预期能看到openclaw、openclaw.cmd、openclaw.ps1三个路径。能看到就说明基础环境没问题。接下来是核心配置 gateway 的模型供应商。OpenClaw 的模型配置写在openclaw.json里models和agents是平级字段。下面这段配置把供应商指向 TaoToken模型用claude-opus-4-6你可以直接复制到配置文件里把你的用户名换成实际路径{ models: { mode: merge, providers: { taotoken: { baseUrl: https://taotoken.net/api, apiKey: ${TAOTOKEN_API_KEY}, api: openai-completions, models: [ { id: claude-opus-4-6, name: Claude-Opus-4.6 } ] } } }, agents: { defaults: { model: { primary: taotoken/claude-opus-4-6 }, workspace: C:\\Users\\你的用户名\\.openclaw\\workspace, compaction: { mode: safeguard }, maxConcurrent: 4, subagents: { maxConcurrent: 8 } } }, tools: { profile: coding }, gateway: {} }几个关键点解释一下。baseUrl填https://taotoken.net/api这是 TaoToken 的 API 端点注意不要带末尾斜杠。apiKey用${TAOTOKEN_API_KEY}这种环境变量引用方式避免把明文 Key 写进配置文件——这是好习惯后面会讲怎么设环境变量。api字段填openai-completions表示用 OpenAI 兼容的补全协议去调用。agents.defaults.model.primary里的taotoken/claude-opus-4-6要和上面 provider 名加模型 id 对应上写错了会报找不到模型。Key 从哪来去 TaoToken 控制台创建 API Key地址是 https://taotoken.net/console 。拿到 Key 之后在 PowerShell 里设成当前用户的环境变量[Environment]::SetEnvironmentVariable(TAOTOKEN_API_KEY, 你的Key, User)设完要重开一个 PowerShell 窗口才能读到新变量。验证一下$env:TAOTOKEN_API_KEY能打印出 Key 就对了。如果你更习惯用系统属性面板设环境变量效果一样但记得设完重启终端。配置文件改完回到 PowerShell 重启 gateway 服务openclaw gateway --port 18789这个命令是前台运行窗口不能关关了服务就退出。想让它后台常驻用openclaw doctor --fix把 gateway 装成计划任务登录时自动启动。两种方式按需选。4. 验证 gateway 是否正常响应服务起来之后先确认端口在监听。开一个新的 PowerShell 窗口别关掉跑 gateway 的那个执行Test-NetConnection -ComputerName 127.0.0.1 -Port 18789看TcpTestSucceeded是不是True。是True说明端口通了gateway 在正常监听。然后打开浏览器访问http://127.0.0.1:18789/会看到 OpenClaw 的 Web UI。在对话框里输入一句测试比如「用一句话解释什么是 WebSocket」回车。如果配置正确几秒内会返回模型生成的回答。这一步能出结果就说明从 PowerShell 到 Node.js 到 gateway 再到 TaoToken 的整条链路是通的。如果 Web UI 打不开先用命令行验证 gateway 进程状态openclaw doctordoctor会输出 gateway 连接信息、配置文件路径、绑定方式等。重点看Gateway target是不是ws://127.0.0.1:18789Config路径是不是你改的那个openclaw.json。如果Gateway service not installed说明服务没装成后台任务但你用openclaw gateway --port 18789前台跑着也能用。再验证一下模型调用是否真的走了 TaoToken。可以在 Web UI 里问一个需要模型能力的问题同时观察跑 gateway 的那个 PowerShell 窗口正常会有请求日志滚动。如果日志里出现401或No auth configured说明 Key 没读到或者配置里的 provider 名对不上回到上一节检查环境变量和primary字段。想更直接地测 API 端点可以用 PowerShell 发一个请求$headers { Authorization Bearer $env:TAOTOKEN_API_KEY Content-Type application/json } $body { model claude-opus-4-6 messages ({ role user; content ping }) } | ConvertTo-Json -Depth 5 Invoke-RestMethod -Uri https://taotoken.net/api/v1/chat/completions -Method Post -Headers $headers -Body $body能返回带choices字段的 JSON就说明 Key 和端点都没问题问题只可能在 OpenClaw 的配置层。这个命令也方便你排查到底是网络问题还是配置问题。5. 常见报错排查401、local proxy failed、reading choices、OAuth跑 OpenClaw 接 gateway 的过程中报错基本集中在几类。下面按真实遇到的错误对照排查。401 Unauthorized / No auth configured for provider这是最常见的。原因通常是环境变量没读到或者配置文件里apiKey写成了明文但值不对。先确认$env:TAOTOKEN_API_KEY能打印出 Key再确认openclaw.json里apiKey字段是${TAOTOKEN_API_KEY}而不是别的变量名。改完环境变量一定要重开终端PowerShell 不会自动刷新。另外检查baseUrl是不是https://taotoken.net/api多一个斜杠或少一段都可能 401。local proxy failed / connection refusedgateway 没起来或者端口被占。先Test-NetConnection 127.0.0.1 18789看端口通不通。不通的话检查跑 gateway 的窗口是不是被关了或者换个端口openclaw gateway --port 18790再试。如果提示端口被占用用netstat -ano | findstr 18789找到占用进程决定是换端口还是结束进程。reading choices of undefined这个报错说明请求发出去了但返回结构里没有choices字段。常见原因是api字段配错了——比如填了anthropic-messages但实际端点返回的是 OpenAI 格式。把api改成openai-completions再试。另一个可能是模型 id 写错供应商返回了错误对象而不是正常响应日志里会带具体错误信息照着改。OAuth / 登录相关报错如果你在配置里选了需要 OAuth 的供应商但没走完授权流程就会卡在这。最省事的做法是先用 API Key 方式的供应商把链路跑通比如本文的 TaoToken 配置不需要 OAuth。等基础链路验证过了再回头折腾 OAuth 供应商。gateway 服务装了但开机不启动openclaw doctor --fix装的是计划任务有时候任务状态是禁用的。打开「任务计划程序」找到OpenClaw Gateway任务看是不是被禁用右键启用。或者干脆用前台方式openclaw gateway --port 18789跑简单直接。排查的核心思路是分层先确认端口通不通网络层再确认 Key 能不能用认证层最后确认配置字段对不对应用层。用第 4 节那个Invoke-RestMethod命令能快速定位问题出在哪一层。6. 后续怎么用模型对话、Coding Plan 与接入文档链路跑通之后日常使用有几个入口。最直接的是 Web UI浏览器打开http://127.0.0.1:18789/就能对话适合快速测试和轻量使用。如果你想让 OpenClaw 参与编码工作流可以了解 Coding Plan地址是 https://taotoken.net/coding-plan 它面向长期编码和 Agent 场景配合 OpenClaw 的tools.profile: coding配置能发挥更大作用。想单独验证某个模型是否可用用模型对话页面最方便https://taotoken.net/models 。接入过程中遇到配置字段不确定的查接入文档https://taotoken.net/doc 。API Key 的管理和新建在控制台https://taotoken.net/api-keys 。如果你用的是 Claude Code 这类工具Anthropic 兼容接入的说明在 https://taotoken.net/claudecode-anthropic 。配置文件里那几个字段——Base URL、Key、Model ID——是接入任何供应商都要对齐的三件套。Base URL 填https://taotoken.net/apiKey 从控制台拿并设成环境变量Model ID 填claude-opus-4-6或你实际要用的模型。这三样对上了gateway 就能正常转发请求。最后提醒一句openclaw.json改完必须重启 gateway 才生效前台跑的 CtrlC 停掉再起后台任务的重启计划任务或者用openclaw doctor --fix重新应用。配置文件建议改之前备份一份改坏了能快速回滚。