default 和 Claude Code 分组的令牌,可以随时切换模型。
准备密钥
在令牌管理创建令牌,计费模式选按量优先。两种格式要用不同分组的令牌:default分组:给 OpenAI 格式(GPT)用,写入LAOZHANG_API_KEY。Claude Code分组:给 Anthropic 格式(Claude、DeepSeek、GLM)用,写入LAOZHANG_CLAUDE_API_KEY。只用向导接入 GPT 时,不需要这个令牌。
~/.zshrc 换成 ~/.bashrc。
安装 OpenClaw
OpenClaw 要求 Node.js 24.16.0 及以上的 24.x,或 26.1.0 及以上,官方推荐 Node 26。用安装脚本时,缺少 Node.js 会自动安装:- npm 11.15 及更早版本不认识
--allow-scripts,去掉这个参数即可。 --install-daemon会把网关装成后台服务,网关默认监听 18789 端口。- macOS 也可以从 GitHub Releases 下载桌面版 DMG。
用向导接入老张API
只用 GPT 模型时,用向导最快。1
选择 Custom provider
运行
openclaw onboard,到选择模型服务商的步骤时选 Custom provider,兼容类型选 OpenAI,然后填写:- Base URL:
https://api.laozhang.ai/v1 - API Key:老张API密钥
- Provider ID:
laozhang
2
或者用一条命令完成
不想逐步回答时,用非交互模式。密钥从环境变量读取,不会以明文留在命令历史里:不写
--custom-model-id 时,OpenClaw 会从 /v1/models 读取老张API的全部模型,列表会很长,建议只填要用的模型。3
确认模型可用
gpt-6.1-sol,说明 provider 已经添加。之后要修改向导里的设置,运行 openclaw configure。在配置文件中同时接入 GPT 与 Claude
Claude、DeepSeek、GLM 按 Anthropic 格式接入,需要单独一个anthropic-messages 类型的 provider,并使用 Claude Code 分组的令牌。这种组合用配置文件写最清楚。
1
找到配置文件
~/.openclaw/openclaw.json,格式为 JSON5,可以写注释和尾逗号。2
写入两个 provider
把下面的
models 和 agents 合并进现有配置,不要删除其他字段:apiKey 里的 ${LAOZHANG_API_KEY} 和 ${LAOZHANG_CLAUDE_API_KEY} 会替换成同名环境变量,配置文件里不出现密钥原文。3
检查配置并设置默认模型
laozhang-anthropic/claude-sonnet-5-5。修改 provider、模型列表和默认模型后,OpenClaw 会自动重新加载配置,不需要重启网关。4
跑一轮测试
用命令行让模型调用一次工具:
--local用本机配置的凭据直接跑一轮。--model临时指定模型,换成laozhang-anthropic/claude-sonnet-5-5即可测试 Claude。--session-id <名字>开一个新会话。
/model <provider ID/模型 ID> 可以随时换模型,每次请求和用量可以在调用日志中查看。字段说明
- OpenAI 格式的模型建议打开
supportsUsageInStreaming。 老张API在流式响应中返回 token 用量,OpenClaw 默认不读取,只能估算上下文占用,压缩时机容易偏差。 - Claude 单次输出上限为 32,768 tokens,
maxTokens不要超过这个值。 - 各模型价格见模型与价格总表。
选择模型
在配置里添加模型时,按上一节的格式在对应 provider 的
models 中加一项,id 要与模型与价格总表完全一致。
常见问题
提示 Auto-compaction could not recover?
完整报错是Auto-compaction could not recover this turn,表示自动压缩后上下文仍然放不下。按顺序处理:
- 重试这一轮。
- 发送
/compact手动压缩,或发送/new开一个新会话。 - 换上下文更长的模型,例如
claude-sonnet-5-5。
contextWindow 填准,并打开 compat.supportsUsageInStreaming,让 OpenClaw 按真实用量判断压缩时机。
reserveTokensFloor 还能用吗?
不能。compaction 下的 reserveTokens、reserveTokensFloor 和 maxHistoryShare 都已废弃。运行下面的命令会把它们从配置中删除:
openclaw doctor,加 --deep 做更深入的检查,加 --json 以 JSON 输出结果。
网关启动报 EADDRINUSE?
网关的端口(默认 18789)已被占用。先运行openclaw gateway status,看是否已经有一个网关在运行,例如之前用 --install-daemon 装好的后台服务。不是 OpenClaw 占用时,用 lsof -i :18789 找出占用端口的进程。
报 AUTH_TOKEN_MISMATCH?
多数情况是改了另一份配置。使用--profile 或设置了 OPENCLAW_STATE_DIR 时,OpenClaw 读取的不是默认目录。用 openclaw config file 确认当前生效的配置文件,在这份文件里修改;需要重新生成网关令牌时运行 openclaw doctor --generate-gateway-token。
Claude 的思考关不掉?
只把reasoning 设为 false 不够,Claude 仍会自适应思考。在会话中发送 /think off,或在配置中设置 thinkingDefault,写法见 OpenClaw 官方文档。
GPT-6 提示 Function tools with reasoning_effort are not supported?
2026 年 11 月 4 日之前,GPT-6 系列在 Chat Completions 中调用工具时会报这个错。老张API现在已兼容这类请求,gpt-6.1-sol、gpt-6-sol 可以在推理的同时调用工具,reasoning: true 保持即可。
仍然报错时,确认 OpenAI 格式 provider 的地址是 https://api.laozhang.ai/v1,再把报错时间和模型发给客服。
报 401、403、404 或 503?
- 401:密钥错误或没有复制完整。在终端分别运行
test -n "$LAOZHANG_API_KEY" && echo 已设置和test -n "$LAOZHANG_CLAUDE_API_KEY" && echo 已设置,确认两个变量都已设置,再在令牌管理确认令牌已启用,见 API Key 无效与 Base URL。 - 403 或 503 no available channels:令牌分组不包含该模型,或模型 ID 写错。GPT 用
default分组的令牌,Claude、DeepSeek、GLM 用Claude Code分组的令牌,见如何确认模型是否可用。 - 404:地址里的
/v1重复或缺失。OpenAI 格式写https://api.laozhang.ai/v1,Anthropic 格式写https://api.laozhang.ai。 - 余额不足:见余额不足。
LAOZHANG_API_KEY 和 LAOZHANG_CLAUDE_API_KEY 写进配置文件的 env.vars,此后这份配置文件含有密钥,不要提交到代码仓库或截图外发。