1. Windows 安装 OpenClaw 前先把 npm、Git、SSH 这三件事理顺OpenClaw 是一个可以在本地跑起来的 AI Agent 运行环境支持接入多种大模型、IM 机器人和技能插件适合想在 Windows 上折腾本地智能助手、又不想被复杂环境劝退的人。它的安装流程本身不复杂真正卡人的地方往往在 npm 全局目录权限、Git 拉取时的 SSH 认证以及初始化阶段模型 API Key 的填写方式。这篇就把 Windows 安装 OpenClaw 的完整链路拆开讲从 npm 依赖、Git 配置、SSH 密钥到 config.toml 骨架和 TaoToken 统一 Key 接入每一步都给可复制的命令。我自己的机器是 Windows 11PowerShell 和 CMD 混着用踩过的坑主要集中在两处一是 npm 全局安装时 optional 依赖编译失败二是 onboard 初始化时没给管理员权限导致守护进程起不来。下面按顺序来你跟着敲基本不会偏。先明确一下整体路径装 Node.js 和 npm → 装 Git 并配好 SSH → 用 npm 全局装 OpenClaw → 管理员权限跑 onboard 初始化 → 填模型 API Key这里用 TaoToken 统一通道→ 验证本地服务 → 排查常见报错。整个流程大概 20 到 30 分钟取决于网络和依赖下载速度。需要提前准备的东西一台 Windows 10/11 电脑能正常访问 npm registry一个可用的模型 API Key后面会讲怎么用 TaoToken 统一管理以及管理员权限的终端窗口。如果你之前装过 Node.js 但版本很老建议先升级到 18 以上OpenClaw 对 Node 版本有要求低于 18 会在安装阶段直接报 engine 不匹配。另外提醒一句OpenClaw 的初始化向导里会让你选模型、选 IM 接入方式、选技能和 memory新手直接选 QuickStart别去碰高级配置那个是给熟悉整套架构的人准备的。选错了我见过有人卡在插件依赖上半小时出不来。1.1 安装 Node.js 与 npm 依赖环境Windows 上装 Node.js 最省事的方式是去官网下 LTS 安装包一路下一步安装时勾选“Add to PATH”。装完打开新的 PowerShell 窗口敲node -v npm -v能分别打印出版本号就说明环境变量生效了。如果提示node 不是内部或外部命令八成是装完没重开终端或者 PATH 没勾上重装一遍勾选即可。Node 版本建议 18.17 以上我用的是 20.x LTS。版本太低会在npm install -g openclaw时报Unsupported engine。升级 Node 可以直接下新版安装包覆盖也可以用 nvm-windows 管理多版本但新手不建议一上来就上 nvm多一层变量容易乱。npm 本身随 Node 一起装好但国内网络下建议换一下 registry不然全局安装会慢到怀疑人生npm config set registry https://registry.npmmirror.com npm config get registry第二条命令用来确认是否切换成功。切回官方源用npm config set registry https://registry.npmjs.org。这一步不是必须但能明显减少超时概率。1.2 安装 Git 并生成 SSH 密钥Git 在 Windows 上同样去官网下安装包安装时建议选“Use Git from the Windows Command Prompt”这样 CMD 和 PowerShell 里都能直接用 git 命令。装完验证git --version接下来配 SSH。SSH 密钥的作用是让你在拉取私有仓库或走 git 协议时免密认证。先生成一对密钥ssh-keygen -t ed25519 -C your_emailexample.com一路回车默认存到C:\Users\你的用户名\.ssh\id_ed25519。然后启动 ssh-agent 并把私钥加进去PowerShell 管理员窗口执行Get-Service ssh-agent | Set-Service -StartupType Automatic Start-Service ssh-agent ssh-add $env:USERPROFILE\.ssh\id_ed25519公钥在id_ed25519.pub里用记事本打开复制内容粘贴到你 Git 托管平台的 SSH Keys 设置页。验证连通性ssh -T gitgithub.com看到类似Hi xxx! Youve successfully authenticated就说明 SSH 通了。这一步很多人跳过结果后面 OpenClaw 拉插件仓库时卡在认证上回头再补更麻烦。1.3 用 npm 全局安装 OpenClaw环境齐了就可以装 OpenClaw 本体。官方推荐的命令是npm install -g openclawlatest --omitoptional --legacy-peer-deps这里两个参数值得说清楚。--omitoptional是跳过可选依赖主要是本地模型相关的插件这些插件在配置一般的电脑上编译容易报错直接导致整个安装失败如果你不用本地模型跳过完全没影响。--legacy-peer-deps是让 npm 用旧版的 peer 依赖解析策略避免新版 npm 因为 peer 冲突直接中断安装。装完验证openclaw --version能打印版本号就说明全局命令注册成功。如果提示找不到命令检查 npm 全局 bin 目录有没有在 PATH 里用npm config get prefix看路径把它加到系统环境变量。2. TaoToken 前置用统一 Key 和 API 通道接管模型配置OpenClaw 初始化时会让你选模型并填 API Key如果你同时想用多个模型一个个去各家平台申请 Key、记不同 Base URL 会很乱。TaoToken 在这里的作用就是提供一个统一的 API 通道你只需要一个 Key就能在 OpenClaw 里切换不同模型配置也集中在一处。它的定位是模型 API 的统一入口适合需要频繁切换模型、或者不想在多个平台之间来回折腾 Key 的人。对 OpenClaw 这种支持多模型接入的工具来说把 Base URL 指向统一通道后续换模型只改一个 Model ID不用动 Key 和地址。2.1 获取 TaoToken API Key先到官网了解整体能力地址是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。注册登录后进入控制台在 API Keys 页面创建一个新 Key。创建时给它起个能认出来的名字比如openclaw-local方便后面区分用途。创建完把 Key 复制下来格式通常是一串以特定前缀开头的字符串。这个 Key 只显示一次丢了只能重建所以先存到安全的地方。注意不要把它提交到 Git 仓库或者贴到公开地方。如果你还没想好具体用哪个模型可以先在模型对话页面试几个确认效果和响应速度再决定 OpenClaw 里默认用哪个。模型对话入口在 https://taotoken.net/api 登录后可以直接对话测试。2.2 确认 Base URL 与 Model IDTaoToken 的 API 基础地址是https://taotoken.net/api注意这个地址不带任何查询参数是纯粹的 API 端点。在 OpenClaw 的配置里Base URL 就填这个。Model ID 则根据你想用的模型来填具体可用的模型列表在控制台或文档里能查到填的时候要和平台上的标识完全一致大小写错了会报模型不存在。这里有个容易混的点官网地址带 UTM 参数是给推广归因用的API 地址不要带这些参数否则请求可能被当成异常流量。配置时严格区分这两个地址。2.3 在 OpenClaw 中接入统一通道OpenClaw 的模型配置最终会落到 config.toml 里。初始化向导里选择“现在粘贴 API Key”时把 TaoToken 的 Key 贴进去如果向导里让你填 Base URL就填https://taotoken.net/api。如果向导没问 Base URL就等初始化完成后手动改 config.toml下一节会给完整骨架。这样配的好处是以后你想从 A 模型换到 B 模型只改 config.toml 里的 model 字段Key 和 Base URL 都不用动。对经常做模型对比的人来说省事很多。3. 可复制配置config.toml 骨架与 SSH 相关设置OpenClaw 初始化完成后会在用户目录下生成配置文件Windows 上通常在C:\Users\你的用户名\.openclaw\config.toml。下面给一份可直接改用的骨架把模型部分指向 TaoToken 统一通道其他字段按需调整。# OpenClaw 主配置 [general] # 本地服务监听地址与端口 host 127.0.0.1 port 18789 # 日志级别debug / info / warn / error log_level info [model] # 使用 TaoToken 统一 API 通道 provider openai-compatible base_url https://taotoken.net/api api_key sk-你的TaoTokenKey # 默认模型按控制台可用列表填写 model 你的ModelID # 请求超时秒 timeout 60 [model.params] temperature 0.7 max_tokens 4096 [daemon] # 守护进程onboard 时选 yes 会启用 enabled true # 开机自启 auto_start true [skills] # 技能目录初始化时选本地路径则填这里 path C:/Users/你的用户名/.openclaw/skills enabled true [memory] enabled true # 记忆存储路径 path C:/Users/你的用户名/.openclaw/memory [search] # 联网搜索暂不配置则保持 false enabled false几个关键点说明。provider填openai-compatible是因为 TaoToken 走的是兼容 OpenAI 的接口协议OpenClaw 能直接识别。base_url严格填https://taotoken.net/api不要加斜杠结尾之外的任何东西。api_key换成你自己的。model填你在控制台确认过的 Model ID。如果你在初始化时选了飞书接入config.toml 里还会多出[feishu]段包含 app_id、app_secret 和连接方式。连接方式选 websocket 的话长连接模式不需要公网回调地址本地开发很方便。飞书那段配置建议单独放别和模型配置混在一起改的时候不容易看花眼。SSH 相关的配置不在 config.toml 里而在.ssh目录。如果你需要 OpenClaw 通过 git 拉取技能仓库确保 ssh-agent 在跑、私钥已 add并且ssh -T能通。Windows 上 ssh-agent 服务默认可能是手动启动前面已经设成自动了重启后不用再手动开。改完 config.toml 记得保存为 UTF-8 编码Windows 记事本默认可能是 GBK中文注释会乱码建议用 VS Code 或 Notepad 编辑。4. 验证请求从本地服务到模型调用的完整链路配置写完不能只看文件得实际跑一遍确认链路通。验证分三层本地服务是否起来、模型 API 是否通、IM 机器人是否配对成功。4.1 启动 OpenClaw 并检查本地服务初始化时如果选了安装守护进程OpenClaw 会自动在后台跑。手动启动或重启用openclaw start查看状态openclaw status正常会显示 running 和监听端口。然后浏览器访问http://127.0.0.1:18789/能看到聊天界面就说明本地服务正常。如果打不开先看openclaw status是不是 running再看端口有没有被占用netstat -ano | findstr 18789有占用就改 config.toml 里的 port或者把占用进程结束掉。4.2 用 curl 验证模型 API 通道在确认 OpenClaw 能调模型之前先用 curl 直接打 TaoToken 的接口排除配置问题curl https://taotoken.net/api/v1/chat/completions ^ -H Content-Type: application/json ^ -H Authorization: Bearer sk-你的TaoTokenKey ^ -d {\model\:\你的ModelID\,\messages\:[{\role\:\user\,\content\:\你好\}]}Windows CMD 里换行用^PowerShell 里用反引号。返回里有choices数组和内容就说明 Key、Base URL、Model ID 三者都对。如果返回 401是 Key 问题返回模型不存在是 Model ID 写错连接超时检查网络和 Base URL。这一步过了再回 OpenClaw 界面发一条消息能正常回复就说明整条链路通了。4.3 飞书机器人配对与验证如果你接了飞书配置完事件和长连接后需要重新发布机器人版本才生效。然后在飞书里 机器人会收到一个配对码。用管理员 CMD 执行openclaw pairing approve feishu 你的配对码提示配对成功后再 机器人就能正常对话了。如果配对码一直不出现检查飞书应用的事件订阅是否加了消息接收事件、长连接是否开启、机器人是否已发布。5. 本篇常见错排查401、local proxy failed、reading choices 与 OAuth安装和接入过程中有几类报错出现频率特别高这里逐个对照。401 Unauthorized最常见。先确认 config.toml 里的 api_key 是不是完整复制有没有多余空格。再确认 Base URL 是不是https://taotoken.net/api写成官网地址会 401。如果 Key 刚重建过旧 Key 会失效换新的。local proxy failed通常是本地代理或网络层拦截导致。检查系统代理设置确认没有把taotoken.net走异常路由。另外 ssh-agent 没起来时某些走 git 的插件加载也会报类似错误确认Get-Service ssh-agent是 Running。reading choices 报错这个一般出现在模型返回结构不符合预期时。原因多是 Model ID 填错或者 provider 没填openai-compatible。检查 config.toml 的[model]段确认 provider、base_url、model 三个字段一致。OAuth 相关报错如果你在初始化时选了需要 OAuth 的接入方式但回调地址没配好会卡在授权环节。本地开发建议先用 API Key 方式别一上来就 OAuth。已经选了的回 config.toml 改成 Key 方式重新启动。npm 安装时报 peer 依赖冲突确认命令里带了--legacy-peer-deps。如果还报先npm cache clean --force再重装。onboard 初始化后启动不了九成是没用管理员权限的终端。关掉当前窗口用管理员身份重开 CMD再跑openclaw onboard --install-daemon。飞书配对码不生效确认机器人已重新发布事件订阅里有消息事件长连接模式已开。配对码有时效过期了重新 获取。排查思路统一是先看报错关键词再对照配置文件的对应字段最后用 curl 单独验证 API 通道。把变量一个个隔离比盲目重装快得多。6. 后续接入与统一通道的持续使用环境跑起来之后日常使用主要围绕两件事模型切换和技能扩展。模型切换在 config.toml 里改model字段就行Key 和 Base URL 保持 TaoToken 统一通道不变改完openclaw restart生效。技能扩展把插件放到 skills 目录在配置里确认enabled true。如果你打算长期跑 Agent 类任务比如让 OpenClaw 持续处理消息、调用工具建议把守护进程和开机自启都打开省得每次手动启动。Coding Plan 这类长期编码场景可以在 https://taotoken.net/api 里看模型对话和额度情况确认通道稳定。API Key 的管理集中在控制台地址是 https://taotoken.net/api 需要新建或吊销 Key 都在这里操作。接入文档在 https://taotoken.net/api 可以查到最新的 Base URL 和模型列表配置前对一眼避免 Model ID 过期。最后说个实际经验config.toml 改完一定要重启服务OpenClaw 不会热加载模型配置。我见过有人改完直接发消息发现还是旧模型以为配置没生效其实是没重启。养成改完就openclaw restart的习惯能省不少排查时间。