标签 OneAPI 下的文章


前言
最近 Anthropic 发布的 claudecode (Claude CLI) 很火,用来写代码确实舒服。但很多佬友(包括我)手里不仅有 Claude 的 Key,还有 GLM-4、Minimax 或者 DeepSeek 的 Key(配合 OneAPI/NewAPI 食用)。

之前为了切换模型,每次都要在终端敲一大串环境变量:
ANTHROPIC_BASE_URL=... ANTHROPIC_API_KEY=... claudecode
或者来回改全局配置,既不优雅,终端历史也乱糟糟的。

研究了一下 claudecode --help,发现了一个被低估的参数 --settings,配合 Alias 可以完美实现 “多进程、多模型、配置隔离”

下面分享一下这个优雅的解决方案。


核心思路

利用 --settings <path> 参数加载独立的配置文件,不再依赖全局的 ~/.claude/config.json。然后通过 Shell Alias 封装命令,实现一行指令启动特定模型。

步骤一:创建 Profile 配置文件

建议在 ~/.claude/ 下建个 profiles 文件夹,专门放不同厂商的配置。

1. 创建 GLM 配置文件
mkdir -p ~/.claude/profiles
nano ~/.claude/profiles/glm.json

写入以下内容(注意替换你的 Key 和转发地址):

{ "env": { "ANTHROPIC_BASE_URL": "https://你的OneAPI地址/v1", "ANTHROPIC_API_KEY": "sk-你的GLM渠道Key", "ANTHROPIC_DEFAULT_SONNET_MODEL": "glm-4" }, "permission-mode": "bypassPermissions", "auto-updater": false } 

重点参数解析:

  • ANTHROPIC_DEFAULT_SONNET_MODEL: 这是关键! claudecode 默认死磕 Sonnet 模型。通过这个变量,我们可以 “欺骗” CLI,让它把原本发给 Sonnet 的请求,强制指向 glm-4(或你 OneAPI 里映射的名字)。
  • permission-mode: 这里可以直接预设权限模式,比如 bypassPermissions (全自动) 或 ask (询问)。

2. 创建 Minimax 配置文件
nano ~/.claude/profiles/minimax.json

{ "env": { "ANTHROPIC_BASE_URL": "https://你的OneAPI地址/v1", "ANTHROPIC_API_KEY": "sk-你的Minimax渠道Key", "ANTHROPIC_DEFAULT_SONNET_MODEL": "minimax-v2-01" } } 


步骤二:配置 Shell Alias

打开你的 Shell 配置文件(.zshrc.bashrc),加入别名:

# Claude - GLM4 alias claude-glm='claude --settings ~/.claude/profiles/glm.json' # Claude - Minimax alias claude-mini='claude --settings ~/.claude/profiles/minimax.json' # Claude - 狂暴模式 (带参数预设) alias claude-god='claude --settings ~/.claude/profiles/glm.json --dangerously-skip-permissions --verbose' 

保存后记得 source ~/.zshrc 生效。


步骤三:实际使用与参数覆盖

现在,你可以丝滑地开启多个终端,并发操作不同模型了。

1. 基础用法
直接启动,自动加载 GLM 配置:

claude-glm

2. 混合参数用法(最强之处)
Alias 本质是文本替换,所以你依然可以在命令后面追加任何官方原生参数,且优先级 高于 配置文件。

比如,虽然 glm.json 里配置了自动通过权限,但我这次操作比较敏感,想手动确认,且想指定 Session ID:

claude-glm "帮我检查下这个代码" --permission-mode ask --session-id 1234-5678

系统实际执行的是:
claude --settings .../glm.json "帮我..." --permission-mode ask ...


总结

这个方案的优势:

  1. 环境隔离:GLM 和 Minimax 的 History、Session Token 互不干扰。
  2. 安全:API Key 不会明文暴露在 Shell History 里,而是藏在 JSON 文件中。
  3. 灵活:想用什么模型 claude-xxx 一键启动,甚至可以针对同一个模型做 “保守版” 和 “激进版” 两套配置。

希望能帮到大家,Happy Hacking!


📌 转载信息
原作者:
cdxiadong
转载时间:
2026/1/20 18:10:11

昨晚开始开始入手 OpenCode ,整理了一份从零开始的安装与配置笔记,分享给各位佬友。

第一阶段:基础安装与核心插件

1. 安装 OpenCode

推荐使用 brew 安装,稳定性更高:

  • macOS/Linux: brew install anomalyco/tap/opencode
  • Node 环境: npm i -g opencode-ai

2. 必装 “全家桶” 插件

安装完成后先输入 opencode 启动(能白嫖 GLM4.7),然后在会话中直接粘贴以下链接安装 oh-my-opencode

Install and configure by following the instructions here https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/refs/heads/master/README.md

进阶推荐:

  • opencode-dcp: 自动清理对话历史中过时的工具输出,显著减少 Token 消耗。

第二阶段:进阶配置(接入 OneAPI / 中转站)

由于 OpenCode CLI 执行任务时会有大量 Tool Use 调用,普通 URL 转发容易协议报错。这里推荐使用 CLIProxyAPI (CPA) 进行协议转换。

1. 部署 CPA 环境

建议直接走 Source Build,日志更透明:

git clone https://github.com/router-for-me/CLIProxyAPI.git
cd CLIProxyAPI
go mod download
go run main.go # 启动 

2. CPA 核心配置 (config.yaml)

坑点: 字段名必须准确,否则会静默失败。

  • 确保使用 auth-dir 而不是旧版的 credentials-directory
  • 供应商字段是 openai-api-keys(复数,带 s)。
port: 8317 auth-dir: "/绝对路径/auth" allow-unauthenticated: true # 本地调试建议开启 openai-api-keys: - api-key: "sk-OneAPI令牌" base-url: "https://OneAPI地址/v1" models: - id: "claude-opus-4-5" # OpenCode 中显示的名称 map-to: "claude-opus-4-5-20251101" # OneAPI 后台真实 ID 

第三阶段:OpenCode 配置文件打通

修改 ~/.config/opencode/opencode.json。因为 CPA 侧开了免密,这里直接配置 Provider 即可:

{
  "$schema": "https://opencode.ai/config.json",
  "plugin": [
    "oh-my-opencode",
    "@tarquinen/opencode-dcp@latest"
  ],
  "provider": {
    "anthropic": {
      "options": {
        "baseURL": "http://127.0.0.1:8317/v1"
      }
    }
  }
}

踩坑

  1. 代理污染(502 报错):如果终端开了 http_proxy,请求 localhost 可能会被劫持导致失败。执行前记得:unset http_proxy https_proxy all_proxy 或者使用 curl -v --noproxy “*” http://127.0.0.1:8317/v1/models 测试连通性。
  2. Thinking 模式没显示?:按 Ctrl + P,搜索 think 即可手动开启或关闭思维链显示。
  3. YAML 解析失败:Go 解析路径时对~/ 支持不佳,建议在 config.yaml 中全部使用绝对路径。

管理端 UI


📌 转载信息
转载时间:
2026/1/15 18:27:44