将 OpenClaw 连接到 TokenCode,为个人 AI 助手、消息渠道和 MCP 工具提供统一模型入口。
OpenClaw 需要 Node.js 22 或更高版本:
node --version
macOS / Linux 推荐使用安装脚本:
curl -fsSL https://openclaw.ai/install.sh | bash
也可以使用 npm:
npm install -g openclaw@latest
Windows PowerShell:
iwr -useb https://openclaw.ai/install.ps1 | iex
首次安装时可以在向导中选择 Skip for now,稍后手动配置 TokenCode 模型。
安装 OpenClaw 后,推荐先运行 TokenCode CLI 的交互式菜单向导:
npm install -g @tokencode/tokencode
tokencode
在菜单中选择 OpenClaw,按提示输入 TokenCode API Key 和默认模型即可。CLI 会自动合并写入 ~/.openclaw/openclaw.json。
如果你已经熟悉参数,也可以一键写入:
npx @tokencode/tokencode oc -k sk-your-api-key -m claude-sonnet-4-6
CLI 会写入 TokenCode provider 和默认主模型,并保留已有的 channels、gateway、其它 provider 和其它顶级配置。
如果你不想使用 TokenCode CLI,也可以手动编辑配置文件。
OpenClaw 配置文件位于 ~/.openclaw/openclaw.json。如果你已有钉钉、飞书、微信、QQ 或 MCP 配置,请只合并 models.providers.tokencode 这一段,不要全量覆盖旧配置。
最小配置示例:
{
"models": {
"mode": "merge",
"providers": {
"tokencode": {
"baseUrl": "https://tokencode.dev",
"apiKey": "sk-your-api-key",
"api": "anthropic-messages",
"models": [
{
"id": "claude-sonnet-4-6",
"name": "claude-sonnet-4-6",
"reasoning": false,
"input": ["text", "image"],
"contextWindow": 200000,
"maxTokens": 8192,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "gpt-5.5",
"name": "gpt-5.5",
"reasoning": false,
"input": ["text", "image"],
"contextWindow": 128000,
"maxTokens": 4096,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "deepseek-chat",
"name": "deepseek-chat",
"reasoning": false,
"input": ["text"],
"contextWindow": 128000,
"maxTokens": 8192,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
}
]
}
}
}
}
保存后重启网关:
openclaw gateway restart
进入 OpenClaw 终端界面:
openclaw tui
输入:
/model
选择 TokenCode provider 下的模型。如果能正常发起对话,说明配置成功。
不要把示例 JSON 整体复制到已有文件中。只需要把 tokencode provider 合并到现有的 models.providers 下,并保留原有 channels、plugins、agents 等配置。
检查 apiKey 是否完整,并确认 OpenClaw 没有读取历史缓存。必要时删除 ~/.openclaw/agents/main/agent/models.json 中旧的 provider 缓存后重启。
OpenClaw 的 api 设置为 anthropic-messages 时,baseUrl 填写 https://tokencode.dev,不要添加 /v1。