WorkBuddy Manager - Docker Image
2.8K
腾讯 CodeBuddy 账号池管理控制台 · OpenAI 兼容反代网关
面向 workbuddy2api 的 Web 管理端:扫码纳管、定时签到与保活、密钥分发、IP 与模型白名单、日志与用量统计;上游源码随发布包分发(MIT),迁移见部署指南。
English · 简体中文 | 本项目在 LINUX DO 社区发布与交流
赞助商:ProxyLane 住宅代理,覆盖 195 个国家,95%+ IP 获 Scamalytics 低风险评级。在 WB_HTTP_PROXY 的用户名里写上国家、城市和会话名,每个实例走一个住宅 IP,最长 72 小时不变,换 IP 也留在同一城市。
首次购买使用优惠码 WORKBUDDY30 享 7 折。
界面预览
workbuddy2api 是一个把腾讯 CodeBuddy 账号池包装成 OpenAI 兼容接口的反代服务(Go 编写)。它的能力很完整,但只有命令行:加账号要跑脚本、看状态要 curl /status、发密钥没有界面。
本项目补上这一块 —— 一个可以公网运营的 Web 控制台:
| 你原本要做的 | 现在在面板上 |
|---|---|
服务器上跑 login.sh 扫码加号 | 点「添加账号」扫码,自动签到并纳管 |
curl /status 看哪个号挂了 | 仪表盘实时展示健康度、冷却、有效期 |
手动改 config.json 调签到/并发 | 中文可视化设置,开关 + 数字框 |
| 所有下游共用一个全局 Key | 多密钥分发,各自独立配额、IP 与模型白名单 |
| 无法知道谁用了多少 | 每次调用的模型、Token、延迟、来源 IP 全量留痕 |
| 无任何 IP 防护 | 入站白/黑名单 + 每密钥 IP 上限与白名单 |
与 workbuddy2api 的关系:本项目是为它做可视化的配套项目 —— 让能力强大的 上游网关变得看得见、管得动。面板不侵入上游:没有修改它一行代码,账号轮询、 并发与熔断仍由它负责。两者配合的方式很自然:
欢迎参与共建:面板与上游源码的问题、想法都提到 本仓库 (上游源码随本项目的发布包分发)。
/v1)api_key完整清单(每条带详解)见 功能一览(完整版)。
账号管理:分组切换、状态分档、积分与有效期
密钥:版本、额度、IP 与模型白名单
用量统计:按天 / 按小时、失败与延迟
调用日志:每一笔的模型、状态、首字延迟与扣费
其余界面截图见 界面预览(全部)。
服务器部署需要 Docker(1 核 1G 起);Windows 桌面用户可直接用图形安装器。三种方式任选:
① Windows 安装器(桌面图形化,无需 Docker / 命令行)
WorkBuddyManagerSetup.exe(发版时由 CI 在 Windows runner 上自动构建并附带,同目录还有
一个 .sha256 可核对)。v1.0.88 的安装器曾因卸载会误删文件被下线(见该版本 Release
说明),v1.0.89 起已修复:卸载只删程序自己的文件,安装目录也改成「选中目录 +
WorkBuddyManager 子目录」。默认成功构建的单文件安装包内置全部运行环境(Python 运行时、上游网关、前端页面), 目标机器无需安装任何依赖,Windows 10 (1903+) / 11 双击即用。当前安装器没有 Authenticode 签名,SmartScreen 可能显示警告;请确认文件来自可信 Release 或自行构建。 安装器自身不会自动升级,升级时重新获取新 exe 并覆盖安装即可;
.env、账号和data等个人数据会保留。卸载:设置 → 应用 或开始菜单「卸载 WorkBuddy Manager」, 可选保留账号与配置。细节见 Windows 启动器。
② Docker(自己起容器)
docker run -d --name workbuddy-manager -p 7864:7864 -v /opt/workbuddy-manager/data:/app/data ghcr.io/ithtelab/workbuddy-manager:latest
③ 服务器一键脚本(装依赖、拉包、配 systemd)
bash <(curl -fsSL https://raw.githubusercontent.com/ithtelab/workbuddy-manager/main/deploy/install.sh)
装完浏览器打开 http://<服务器>:7864,首次启动的日志里会打印初始管理员密码。
日常就三步:纳管账号 → 分发密钥 → 把下游指到 /v1。每步怎么做、下游接入示例
(OpenAI SDK、cc-switch 等)与常见问题见 使用指南。
| 方法 | 路径 | 鉴权 | 说明 |
|---|---|---|---|
POST | /v1/chat/completions | 网关密钥 | OpenAI 兼容对话(流式 / 非流式) |
POST | /v2/chat/completions | 网关密钥 | 同上(v2 路径) |
POST | /v1/responses /responses | 网关密钥 | OpenAI Responses API 兼容(流式 / 非流式) |
POST | /v1/messages | 网关密钥 | Anthropic Messages API 兼容(Claude Code 等) |
POST | /v1/messages/count_tokens | 网关密钥 | 按字符数粗估输入 token |
GET | /v1/models | 网关密钥 | 模型列表 |
GET | /v1/usage | 网关密钥 | 密钥自查:已用 / 剩余额度、有效期与模型范围(只读面板记录,不产生调用) |
GET | /healthz | 无 | 存活探测(含上游连通性) |
GET | /api/me | 会话 | 当前登录用户 |
POST | /api/login /api/logout | 无 | 登录 / 登出 |
GET | /api/accounts | 会话 | 账号列表 |
GET | /api/accounts/credits-snapshot | 会话 / 只读令牌 | 已登记积分的只读快照(给看板 / 对账脚本,不查上游) |
POST | /api/auth/start /api/auth/poll | 管理员 | 扫码授权流程 |
POST | /api/accounts/{file}/checkin /test /refresh | 管理员 | 签到 / 测活 / 刷新 |
DELETE | /api/accounts/{file} | 管理员 | 删除账号 |
GET/POST/PATCH/DELETE | /api/keys[/{id}] | 会话 / 管理员 | 密钥管理(发给下游调模型) |
GET/POST/PATCH/DELETE | /api/upstreams[/{id}] | 会话(管理员) | 多上游接入点(密钥绑定上游 = 账号池分组);POST /api/upstreams/{id}/probe 探测连通性 |
GET/POST/PATCH/DELETE | /api/tokens[/{id}] | 会话(管理员) | 管理面 API Token(给脚本 / CI,见 docs/api-tokens.md) |
GET | /api/logs /api/stats/* | 会话 | 日志与用量 |
GET/POST/DELETE | /api/security/* | 会话 / 管理员 | IP 规则与审计 |
GET/POST | /api/settings/* | 会话 / 管理员 | 上游配置、模型映射 |
GET/POST | /api/settings/pg-sync* | 会话(管理员) | PostgreSQL 异地备份:配置 / 测试连接 / 迁移 / 恢复 |
管理端接口细节可在服务启动后访问 /docs 查看(Swagger UI)。
完整的威胁模型与加固建议见 安全说明 与 安全审计报告。
usage_daily 表。.tar.gz / .zip(含已构建的前端产物),解压后执行 sudo bash deploy/install.sh 即可反馈时请附上版本号与错误日志,并先移除其中的密钥、Token 等敏感信息。 上游 workbuddy2api 自身的问题也提到本仓库 ——上游源码随本项目的发布包分发。
维护者打 tag 即可自动构建并发布:
git tag v1.0.1 && git push origin v1.0.1
CI 会构建前端、打包产物、从 CHANGELOG 提取对应版本段落作为发布说明, 并创建 Release 附带压缩包。
/api/*(账号池、密钥、
统计、日志、安全、设置、用户、系统更新)与数据面 /v1/*(Chat Completions /
Responses / Anthropic Messages / Models)。用 Go 写运维工具时可直接 go get,
不必自己拼 HTTP 与登录态。以上为社区项目,与本仓库无代码依赖;使用中遇到问题请到其仓库反馈。
Content type
Image
Digest
sha256:c18af82d7…
Size
147.6 MB
Last updated
about 6 hours ago
docker pull oozzbb/workbuddy-manager