最近由于Team拼车的风控以及涨价等不可控因素,我自己手动想办法搞了一些免费ChatGPT账号,对于我的日常使用以及养龙虾,基本够用了

不过由于免费账号额度太低,动不动就要切换,虽然已经用了第三方工具可以一键切换,但是对于龙虾来说也是有诸多不便

正好看到了有大佬分享了基于群晖NAS部署CliProxyApi的教程,所以我就“站在巨人的肩膀”上在飞牛上尝试了一下并且成功调用,便有了这篇文章

在这里特别感谢L站大佬【是人类】的教程 新手教程-CLIProxyAPI (CPA) 的 docker 最小可用 部署步骤 给了我很大的启发 🙏


什么是 CliProxyApi?

简单说一句人话版本:

👉 CliProxyApi(CPA)就是一个统一代理层

它可以帮你把多个账号 / 多种模型(OpenAI / Gemini / Claude / Codex)统一成一个 API 接口来调用。

优点就是:

  • 不用来回切账号
  • 自动处理额度问题
  • 支持多模型
  • 兼容各种客户端(OpenClaw、SDK 等)

安装过程

1、开启飞牛SSH

通过终端连接后待定 Snipaste_2026-04-07_10-19-05

2、创建目录

在飞牛文件管理中,创建CPA安装目录

Snipaste_2026-04-07_10-17-49

3、获取原始路径

右键刚才创建的cpa文件夹 -> 详细信息

Snipaste_2026-04-07_10-18-24

点击复制原始路径

Snipaste_2026-04-07_10-18-40

4、准备配置文件

将原始路径替换下方命令中的 ${cpa_dir}

cat <<EOF > ${cpa_dir}/config.yaml
# 监听所有网络接口,允许局域网和桥接网络访问
host: "0.0.0.0"
port: 8317
auth-dir: "~/.cli-proxy-api"
request-retry: 3
quota-exceeded:
  switch-project: true
  switch-preview-model: true
# 按预定规则生成高强度随机key
api-keys:
  - "sk-cpa-$(tr -dc 'a-z0-9' </dev/urandom | head -c 32)"
remote-management:
  allow-remote: true
  # 按预定规则生成高强度随机key
  secret-key: "mgt-cpa-$(tr -dc 'a-z0-9' </dev/urandom | head -c 32)"
  disable-control-panel: false
logging-to-file: true
usage-statistics-enabled: true
logs-max-total-size-mb: 100
EOF

echo "*** --config.yaml-- *** 已生成"
echo "*** --仅显示一次,请记录你的明文密钥-- ***"
grep -E '(sk-cpa-|mgt-cpa-)' ${cpa_dir}/config.yaml

⚠️ 重点:
执行完之后一定要保存:

  • API Key(sk-cpa-xxx)
  • Secret Key(mgt-cpa-xxx)

Pasted image 20260407140243

5、创建docker-compose.yml文件并启动

打开Docker应用->Compose->新增项目

Pasted image 20260407140420

安装目录一定要选择刚才创建的cpa文件夹

Snipaste_2026-04-07_10-29-11

docker-compose.yml文件直接粘贴下方的即可

services:
  cli-proxy-api:
    image: eceasy/cli-proxy-api:latest
    container_name: cli-proxy-api
    networks:
      - cpa_net
    ports:
      - "8317:8317"
    volumes:
      - ./config.yaml:/CLIProxyAPI/config.yaml
      - ./auths:/root/.cli-proxy-api
      - ./logs:/CLIProxyAPI/logs
    restart: unless-stopped

#网络部分,设置专属网络
networks:
  cpa_net:
    name: cpa_net
    driver: bridge

👉 如果提示 YAML 格式错误,基本是复制问题,找个在线格式化工具过一下就行。

启动容器,等它跑起来。

Pasted image 20260407140730

6、进入CPA

启动成功后可以通过如下地址进行访问

http://{飞牛ip}:8317/management.html

Snipaste_2026-04-07_10-31-20

密码输入刚才获取到的Secret-Key,点击登录进入

Snipaste_2026-04-07_10-32-01

7、导入认证文件

首先进入配置面板 配置网络代理(如果使用国内大模型可跳过这一步)

Snipaste_2026-04-07_11-36-41

进入认证文件 ,将json文件导入即可

Snipaste_2026-04-07_10-35-04

导入成功

Snipaste_2026-04-07_12-38-36

查看配额

Snipaste_2026-04-07_12-38-54

也可以直接用 OAuth 登录账号。

导入成功之后可以直接看到额度情况。

👉 到这里其实就已经可以用了。

Codex配置

修改 ~/.codex/config.toml 和 ~/.codex/auth.json 文件

config.toml:

# 无需确认是否执行操作,危险指令,初次接触codex不建议开启,移除#号即可开启
# approval_policy = "never"

# 沙箱模式超高权限,危险指令,初次接触codex不建议开启,移除#号即可开启
# sandbox_mode = "danger-full-access"

model_provider = "cliproxyapi"
model = "gpt-5-codex" # 或者是gpt-5,你也可以使用任何我们支持的模型
model_reasoning_effort = "high"

[model_providers.cliproxyapi]
name = "cliproxyapi"
base_url = "http://飞牛IP:8317/v1"
wire_api = "responses"

auth.json:

{
  "OPENAI_API_KEY": "sk-cpa-xxx"
}

Claude Code配置

由于我也没有用Claude Code,所以直接通过cc-switch等工具自行修改吧~

OpenClaw配置

直接将URL跟API-Key扔给龙虾自己配置吧~

模型名称:

cliproxyapi/gpt5.4

飞牛OpenClaw配置

Pasted image 20260407143606

Pasted image 20260407143656

最终效果

Pasted image 20260407143729

Pasted image 20260407143742


总结一下

这个方案本质解决了两个问题:

1️⃣ 免费账号额度碎片化
2️⃣ 多账号切换成本高

通过 CPA,相当于做了一层“统一调度”,体验直接提升一个档次。

如果你也在折腾免费号 + 龙虾,这套方案还是挺值得一试的 👍