☰
小白程序员用 OpenClaw 配 TaoToken:settings.json 骨架与 SSH 远程控制验证
2026/9/27 22:10:09 网站建设 项目流程

1. 为什么小白程序员需要 OpenClaw + TaoToken 这套组合

OpenClaw 是一个开源的 AI 助手框架,它能让你把 Claude、GPT 这类大模型接到微信、Telegram、飞书、企微等聊天平台上,变成一个 7x24 小时在线的私人 AI 助手。但真正让它区别于普通套壳聊天工具的地方在于:它可以通过 SSH 远程控制你的电脑,帮你打开文件、执行命令、跑脚本。也就是说,你人在外面用手机发一条消息,家里那台 Windows 就能替你干活。

听起来很爽,但实际配置的时候有两个坎。第一个坎是模型接入:OpenClaw 默认要你分别填各家大模型的 Key 和 Base URL,Claude 一个、GPT 一个,管理起来很碎。第二个坎是远程控制链路:云服务器上的 Gateway 和本地电脑上的 Node 之间要通过 SSH 隧道打通,settings.json 里任何一个字段写错,连接就静默失败,屏幕上什么都不报。

这篇就是来解决这两个坎的。我会用 TaoToken 作为统一的 Key/API 通道,把模型接入收敛成一个地址加一个 Key,然后给出 OpenClaw 的 settings.json 骨架,最后用 SSH 远程操控电脑做一次完整的连通性验证。适合有基础 Node.js 认知、想搭一套 7x24 在线私人 AI 助手的小白程序员。整套流程走完,你会在 Telegram 上对助手说一句“帮我打开记事本”,然后亲眼看到自己电脑上弹出记事本窗口。

2. 前置准备:TaoToken 统一通道与 Node.js 环境

2.1 为什么用 TaoToken 收敛模型接入

OpenClaw 的模型配置支持自定义 Base URL 和 API Key。如果你直连各家官方,settings.json 里会散落多个 provider 配置,换模型要改多处。TaoToken 提供的是统一 Key/API 通道,一个 API Key 就能调用多种模型,Base URL 统一指向https://taotoken.net/api。这样 OpenClaw 的配置里只需要维护一份凭证,切换模型只改模型名,不动地址和 Key。

对小白来说,这省掉的最大麻烦是:不用分别去注册多个平台、不用记多套 Key、不用担心某个平台的额度用完了还要去另一处改配置。

2.2 获取 TaoToken API Key

打开官网https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=,注册登录后进入控制台,在 API Keys 页面创建一个新的 Key。创建时给它起个能认出来的名字,比如openclaw-gateway,方便以后区分用途。

创建完成后把 Key 复制下来,形如sk-xxxxxxxx。这个 Key 只显示一次,先存到记事本里,后面 settings.json 和 Node 环境变量都要用。

如果你还想先确认这个 Key 能正常调模型,可以到模型对话页面发一条测试消息,确认通道通了再往下走。这一步不是必须的,但能帮你把“Key 本身有问题”和“OpenClaw 配置有问题”提前分开。

2.3 Node.js 环境准备

OpenClaw 依赖 Node.js 运行。Windows 上到 nodejs.org 下载 LTS 版本安装即可,安装时勾选“Add to PATH”。装完后打开 PowerShell 验证:

node -v npm -v

两条命令都能输出版本号就说明环境就绪。建议 Node.js 版本不低于 18,低版本在跑 OpenClaw 的 gateway 时可能遇到模块兼容报错。

然后全局安装 OpenClaw:

npm i -g openclaw

安装完成后执行openclaw -v确认命令可用。如果提示openclaw 不是内部或外部命令,说明 npm 全局路径没进 PATH,重新打开一个 PowerShell 窗口通常就能解决。

3. 可复制配置:settings.json 骨架与 SSH 隧道

3.1 settings.json 骨架

OpenClaw 的配置文件在用户目录下的.openclaw文件夹里。Windows 上是C:\Users\你的用户名\.openclaw\settings.json,Linux 服务器上是~/.openclaw/settings.json。如果文件不存在,手动创建即可。

下面是一份可以直接改用的骨架,重点是把模型通道指向 TaoToken,把远程执行指向本地 Node:

{ "auth": { "token": "你的gateway-token" }, "models": { "default": "claude-sonnet-4-20250514", "providers": { "taotoken": { "baseUrl": "https://taotoken.net/api", "apiKey": "sk-你的taotoken-key", "models": [ "claude-sonnet-4-20250514", "gpt-4o", "deepseek-chat" ] } } }, "tools": { "exec": { "host": "node", "node": "我的Windows", "security": "full" } }, "gateway": { "port": 18789, "host": "127.0.0.1" } }

几个字段说明一下。auth.token是 Gateway 的访问令牌,本地 Node 连接时要用它做身份校验,自己生成一串随机字符串填进去就行。models.providers.taotoken.baseUrl固定填https://taotoken.net/api,注意结尾不要多加斜杠。models.default填你想默认使用的模型名,模型名要和models数组里的一致。tools.exec.host设为node表示命令默认走本地 Node 执行,node字段填你在启动 Node 时用的--display-name,两边必须完全一致,包括大小写。

注意:security设为full表示不再逐条审批命令。这是为了方便自己电脑上的操作,但前提是你信任这条链路。如果电脑上有敏感数据,建议先用默认审批模式跑一段时间。

3.2 建立 SSH 隧道

云服务器上的 Gateway 默认只监听127.0.0.1:18789,外网连不上。本地 Node 要连它,得用 SSH 隧道把端口引出来。在 Windows PowerShell 里执行:

ssh -N -L 18790:127.0.0.1:18789 -p 22 root@你的服务器IP

参数逐个解释:-N表示只建隧道不执行远程命令;-L 18790:127.0.0.1:18789表示把本地的 18790 端口映射到服务器的 18789 端口;-p 22是 SSH 端口,改过就填改后的;root@你的服务器IP是登录地址。

执行后会提示输入服务器密码。输密码时屏幕不显示任何字符,这是正常的安全机制,盲打后回车即可。登录成功后屏幕上没有任何输出,这也是正常的,-N模式本来就不回显。这个窗口不要关,一关隧道就断。

3.3 启动本地 Node 并连接

另开一个新的 PowerShell 窗口,设置 Gateway Token 环境变量并启动 Node:

$env:OPENCLAW_GATEWAY_TOKEN="你的gateway-token" openclaw node run --host 127.0.0.1 --port 18790 --display-name "我的Windows"

--host和--port指向的是本地隧道入口,也就是刚才-L里写的 18790。--display-name就是 settings.json 里tools.exec.node要对应的名字。

如果输出里出现类似node host PATH: C:\Users\...的信息,说明本地 Node 已经连上 Gateway 了。

3.4 审批设备配对

第一次连接时,服务器端会看到一个待审批的设备请求。在服务器上执行:

openclaw devices list

找到状态为pending的那条,记下它的 ID,然后审批:

openclaw devices approve 请求ID

审批通过后,本地 Node 就正式注册到 Gateway 了。如果devices list里看不到请求,检查本地 Node 窗口有没有报连接错误,通常是 Token 不一致或隧道没通。

4. 验证请求:SSH 远程操控电脑连通性测试

配置写完不代表链路通了,必须做一次端到端的验证。验证的目标是:在聊天平台上发一条指令,让云端的 AI 大脑通过 SSH 隧道把命令传到本地 Windows 执行,再把结果返回。

4.1 从服务器侧发起测试

先在服务器上直接测试 Gateway 能不能把命令路由到本地 Node。执行:

openclaw exec --node "我的Windows" --command "powershell -Command Get-Date"

如果返回了当前时间,说明 Gateway 到 Node 的路由是通的。如果报node not found,说明--display-name和配置里的node字段不一致;如果报approval required,说明审批没放行,回到 3.4 重新审批,或者确认security已设为full。

4.2 从聊天平台发起测试

在 Telegram(或其他你接的渠道)上给助手发:

帮我打开记事本

正常情况下,你本地 Windows 上会弹出记事本窗口。这一步成功,意味着完整链路打通了:手机 → 聊天平台 → 云服务器 Gateway → SSH 隧道 → 本地 Node → Windows 执行。

4.3 验证文件读取

再测一个更实用的场景,让助手读本地文件:

帮我看看桌面上 test.txt 里写了什么

助手会通过本地 Node 执行读取命令并把内容返回。如果返回乱码,参考第 5 节的编码排查。

4.4 验证结果对照表

测试动作预期结果失败时优先检查
服务器侧 exec 测试返回当前时间node 名称、审批状态
聊天平台打开记事本本地弹出窗口隧道是否存活、Node 是否在线
读取桌面文件返回文件内容编码设置、路径写法
执行 PowerShell 命令返回命令输出白名单、security 配置

5. 本篇常见错误排查

5.1 openclaw node pair 报 unknown command

网上一些旧教程写的是openclaw node pair,但新版本里这个命令已经不存在了,正确命令是openclaw node run。如果你照着老文章操作报unknown command,换成run即可。

5.2 SSH 隧道输密码无回显

输密码时屏幕一个字符都不显示,不是键盘坏了,是 Linux 的安全机制。盲打密码后直接回车。如果连续输错,重新执行 ssh 命令再来一次。

5.3 Gateway 重启后 Node 断连

每次修改 settings.json 并重启 Gateway,本地 Node 的连接都会断。需要重新执行 SSH 隧道命令和openclaw node run。所以改配置前想清楚要改什么,一次性改完再重启,别反复折腾。

5.4 审批两边都要放行

只在 Windows 端加了命令白名单还不够,Gateway 端也有自己的安全策略。两边都放行才能执行。最省事的做法是服务器端security设为full,本地端白名单设为*。如果不想全放行,就两边分别配置对应的命令白名单。

5.5 中文乱码

用cmd.exe执行dir之类的命令,返回的中文经常是乱码。解决办法是改用 PowerShell,并在命令前加上编码设置:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8

或者在 settings.json 里把默认 shell 指向 PowerShell 而不是 cmd。

5.6 模型调用报 401 或 404

401 通常是 TaoToken 的 API Key 填错或过期,回控制台重新创建一个。404 多半是baseUrl写错了,确认是https://taotoken.net/api,结尾没有多余斜杠,也没有拼错。如果模型名不存在,也会报类似错误,检查models.default里的模型名是否在models数组里。

5.7 Node 连不上 Gateway

先确认 SSH 隧道窗口还开着,然后确认--port填的是隧道本地端口 18790,不是服务器的 18789。再确认OPENCLAW_GATEWAY_TOKEN和 settings.json 里的auth.token完全一致。三者任一不对都会静默失败。

6. 把链路跑通之后:从配置到长期在线

走到这里,你的 OpenClaw 已经具备了云端大脑加本地手脚的完整能力。模型通道收敛在 TaoToken 一个 Key 上,远程执行通过 SSH 隧道打通,settings.json 骨架可以直接复用。接下来要做的,是让这套东西稳定地 7x24 跑下去。

几个实用建议。SSH 隧道窗口不要关,如果服务器重启或网络波动导致隧道断了,本地 Node 会掉线,写个简单的守护脚本定时检查重连会省心很多。Gateway 的配置改完后先本地测一遍再重启,避免把正在工作的连接弄断。如果你打算长期跑编码类任务或者接 Agent 工作流,可以了解一下 Coding Plan,它针对长时间、高频次的模型调用场景做了额度优化,比按次调用更划算。

需要复查 Key 和通道状态时,直接到 API Keys 页面看;想确认模型通道是否正常,用模型对话发一条消息最快;接入过程中遇到配置字段不确定的,接入文档里有完整的参数说明。把这几处存成书签,下次排障不用重新翻文章。

整套流程里最容易出问题的从来不是模型本身,而是 SSH 隧道和 Node 名称这类“看起来不起眼但错了就静默失败”的字段。配置时多核对一遍,比事后排查省时间。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询