基本目录

当前 CLIProxyAPI 使用裸机方式运行,主要目录如下:

程序目录:
/root/cliproxyapi

主程序:
/root/cliproxyapi/cli-proxy-api

主配置文件:
/root/cliproxyapi/config.yaml

OAuth 账号目录:
/root/.cli-proxy-api/

Systemd 服务:
/etc/systemd/system/cliproxyapi.service

默认 API 端口:
8317

进入 CLIProxyAPI 目录:

cd /root/cliproxyapi

查看 CLIProxyAPI 自带帮助:

./cli-proxy-api --help

登录 Codex

CLIProxyAPI 支持通过 OpenAI Codex OAuth 登录 ChatGPT 账号。远程 VPS 建议使用 --no-browser,由终端输出登录链接。

cd /root/cliproxyapi && ./cli-proxy-api --codex-login --no-browser

每增加一个 Codex 账号,重新执行一次即可。

登录成功后,账号凭据会保存在:

/root/.cli-proxy-api/

多个 Codex OAuth 账号可以同时存在,并由 CLIProxyAPI 进行多账号调度。

登录 Claude

Claude Code OAuth 登录命令:

cd /root/cliproxyapi && ./cli-proxy-api --claude-login --no-browser

每增加一个 Claude 账号,重新执行一次。

CLIProxyAPI 支持 Claude Code OAuth 多账号使用。

登录 Gemini

Gemini 需要区分 Gemini CLI 与 Antigravity。

Gemini CLI

如果当前 CLIProxyAPI 已安装 Gemini CLI provider 插件,可以使用:

cd /root/cliproxyapi && ./cli-proxy-api --geminicli-login --no-browser

Gemini CLI 插件提供 --geminicli-login 登录参数,并将 OAuth 信息保存为 Gemini CLI 类型的认证文件。

如果不确定当前版本有没有这个参数,可以直接查看:

cd /root/cliproxyapi && ./cli-proxy-api --help

Antigravity

如果使用 Google Antigravity OAuth:

cd /root/cliproxyapi && ./cli-proxy-api --antigravity-login --no-browser

CLIProxyAPI 官方同时支持 Antigravity OAuth 和多账号轮询。

登录 Grok

Grok Build 使用 xAI OAuth,因此参数名称是 xai:

cd /root/cliproxyapi && ./cli-proxy-api --xai-login --no-browser

每增加一个 Grok 账号,重新执行一次。

默认 OAuth 回调端口为 56121,登录后的账号由 CLIProxyAPI 作为 xAI provider 使用。

查看全部账号

OAuth 账号统一保存在:

/root/.cli-proxy-api/

查看所有账号文件:

ls -1 /root/.cli-proxy-api/

带文件大小和修改时间查看:

ls -lh /root/.cli-proxy-api/

只查看 JSON 凭据文件:

find /root/.cli-proxy-api -maxdepth 1 -type f -name '*.json' -printf '%f\n'

建议平时只查看文件名,不直接使用 cat 输出完整 OAuth JSON,因为文件中通常包含 access token、refresh token 等敏感凭据。

查看账号数量

统计所有 OAuth JSON 文件:

find /root/.cli-proxy-api -maxdepth 1 -type f -name '*.json' | wc -l

如果账号文件名带有 provider 前缀,也可以按名称筛选。

例如 Codex:

ls -1 /root/.cli-proxy-api/codex-*.json

统计 Codex 账号:

find /root/.cli-proxy-api -maxdepth 1 -type f -name 'codex-*.json' | wc -l

删除账号

先查看账号:

ls -1 /root/.cli-proxy-api/

删除指定 OAuth 账号:

rm -i "/root/.cli-proxy-api/账号文件.json"

rm -i 会在真正删除之前再次确认。

删除后可以重启 CLIProxyAPI:

systemctl restart cliproxyapi

如果不希望直接删除,可以先建立备份目录:

mkdir -p /root/.cli-proxy-api-backup

然后将账号移动进去:

mv "/root/.cli-proxy-api/账号文件.json" "/root/.cli-proxy-api-backup/"

恢复账号:

mv "/root/.cli-proxy-api-backup/账号文件.json" "/root/.cli-proxy-api/"

创建客户端 API Key

这里的 API Key 是提供给 OpenCode、Cherry Studio、Chatbox 或其他客户端连接 CLIProxyAPI 使用的下游 Key,不是 OpenAI 官方 API Key。

生成一个 OpenAI 风格随机 Key:

echo "sk-$(openssl rand -hex 32)"

生成普通随机 Key:

openssl rand -hex 32

sk- 只是命名形式,CLIProxyAPI 并不要求 Key 必须以 sk- 开头。

添加客户端 API Key

打开主配置:

nano /root/cliproxyapi/config.yaml

找到:

api-keys:

例如:

api-keys:
  - "sk-key-1"
  - "sk-key-2"
  - "sk-key-3"

可以同时保存多个客户端 Key。

这些 Key 是 CLIProxyAPI 的入口认证 Key,并不是分别绑定 Codex、Claude、Gemini 或 Grok 的 provider Key。

修改完成后保存:

Ctrl + O
Enter
Ctrl + X

然后重启:

systemctl restart cliproxyapi

删除客户端 API Key

打开配置:

nano /root/cliproxyapi/config.yaml

找到:

api-keys:
  - "sk-key-1"
  - "sk-key-2"

直接删除不再需要的那一行即可。

例如原来:

api-keys:
  - "sk-opencode"
  - "sk-image"
  - "sk-old"

删除后:

api-keys:
  - "sk-opencode"
  - "sk-image"

保存后重启:

systemctl restart cliproxyapi

查看客户端 API Key

打开配置文件:

nano /root/cliproxyapi/config.yaml

或者只查看 api-keys 附近内容:

grep -A 10 '^api-keys:' /root/cliproxyapi/config.yaml

如果 Key 正在正式使用,不建议截图或复制到公开位置。

修改账号独立代理

CLIProxyAPI 可以给 OAuth 账号单独保存代理配置,因此不同账号可以使用不同出口。

先查看账号文件:

ls -1 /root/.cli-proxy-api/

打开需要修改的账号:

nano "/root/.cli-proxy-api/账号文件.json"

在 JSON 最外层加入:

"proxy_url":"socks5://用户名:密码@IP:端口"

例如整个 JSON 最末尾原本类似:

{"access_token":"...","email":"example@example.com"}

修改为:

{"access_token":"...","email":"example@example.com","proxy_url":"socks5://用户名:密码@IP:端口"}

proxy_url 必须位于最外层 {} 内部。

如果它是最后一个字段,末尾不要再加逗号。

保存后:

systemctl restart cliproxyapi

修改 SOCKS5 代理

重新打开对应账号:

nano "/root/.cli-proxy-api/账号文件.json"

找到:

"proxy_url":"socks5://用户名:密码@IP:端口"

直接修改 IP、端口、用户名或密码。

保存后:

systemctl restart cliproxyapi

CLIProxyAPI 的账号级凭据可以覆盖代理设置,从而让不同 OAuth 账号使用不同网络出口。配置系统同时支持 provider 级代理覆盖。

删除账号代理

打开账号:

nano "/root/.cli-proxy-api/账号文件.json"

假设末尾是:

,"proxy_url":"socks5://用户名:密码@IP:端口"}

删除整个:

,"proxy_url":"socks5://用户名:密码@IP:端口"

最终重新保持:

}

保存后:

systemctl restart cliproxyapi

Nano 常用操作

打开文件:

nano 文件路径

跳到当前行末尾:

Ctrl + E

跳到文件最后:

Alt + /

保存:

Ctrl + O
Enter

退出:

Ctrl + X

不保存退出时,在提示是否保存时选择:

N

查找内容:

Ctrl + W

查看路由策略

当前账号调度配置位于:

/root/cliproxyapi/config.yaml

查看 routing:

grep -A 6 '^routing:' /root/cliproxyapi/config.yaml

常见配置:

routing:
  strategy: "round-robin"

round-robin 表示在可用账号之间轮询。

例如三个同类账号:

请求 1 → 账号 A
请求 2 → 账号 B
请求 3 → 账号 C
请求 4 → 账号 A

CLIProxyAPI 支持 Codex、Claude、Gemini 和 Grok 多账号负载均衡。

修改路由策略

打开:

nano /root/cliproxyapi/config.yaml

普通轮询:

routing:
  strategy: "round-robin"

优先使用前面的账号:

routing:
  strategy: "fill-first"

如果当前版本配置中已经提供 weighted round robin,也可以使用:

routing:
  strategy: "weighted-round-robin"

修改完成后:

systemctl restart cliproxyapi

查看主配置

直接编辑查看:

nano /root/cliproxyapi/config.yaml

只读分页查看:

less /root/cliproxyapi/config.yaml

退出 less:

q

备份主配置

修改重要配置前可以先备份:

cp /root/cliproxyapi/config.yaml /root/cliproxyapi/config.yaml.bak

恢复:

cp /root/cliproxyapi/config.yaml.bak /root/cliproxyapi/config.yaml

恢复后:

systemctl restart cliproxyapi

服务管理

启动 CLIProxyAPI:

systemctl start cliproxyapi

停止:

systemctl stop cliproxyapi

重启:

systemctl restart cliproxyapi

设置开机启动:

systemctl enable cliproxyapi

取消开机启动:

systemctl disable cliproxyapi

查看当前服务状态:

systemctl status cliproxyapi --no-pager

常用命令速查

登录 Codex

cd /root/cliproxyapi && ./cli-proxy-api --codex-login --no-browser

登录 Claude

cd /root/cliproxyapi && ./cli-proxy-api --claude-login --no-browser

登录 Gemini CLI

cd /root/cliproxyapi && ./cli-proxy-api --geminicli-login --no-browser

登录 Antigravity

cd /root/cliproxyapi && ./cli-proxy-api --antigravity-login --no-browser

登录 Grok

cd /root/cliproxyapi && ./cli-proxy-api --xai-login --no-browser

创建 API Key

echo "sk-$(openssl rand -hex 32)"

添加或删除 API Key

nano /root/cliproxyapi/config.yaml

查看全部账号

ls -1 /root/.cli-proxy-api/

删除账号

rm -i "/root/.cli-proxy-api/账号文件.json"

修改账号代理

nano "/root/.cli-proxy-api/账号文件.json"

查看路由策略

grep -A 6 '^routing:' /root/cliproxyapi/config.yaml

修改主配置

nano /root/cliproxyapi/config.yaml

重启服务

systemctl restart cliproxyapi

查看服务状态

systemctl status cliproxyapi --no-pager

查看 CLIProxyAPI 帮助

/root/cliproxyapi/cli-proxy-api --help

总结

日常管理 CLIProxyAPI 基本只需要记住三类位置:/root/cliproxyapi/config.yaml 管理服务配置和客户端 API Key,/root/.cli-proxy-api/ 管理 Codex、Claude、Gemini、Grok 等 OAuth 账号,systemctl 负责服务启动、停止与重启。

新增账号时重复执行对应 provider 的 OAuth 登录命令;删除账号时删除对应认证 JSON;需要不同网络出口时,在对应 OAuth JSON 中单独设置 proxy_url。多个账号可以继续通过 round-robin 等路由策略进行调度。