# workbuddy-manager **Repository Path**: m5-work/workbuddy-manager ## Basic Information - **Project Name**: workbuddy-manager - **Description**: 【镜像】https://github.com/ithtelab/workbuddy-manager.git 每天同步 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-06 - **Last Updated**: 2026-10-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
**界面预览**
账号管理:分组切换、状态分档、积分与有效期
密钥:版本、额度、IP 与模型白名单
用量统计:按天 / 按小时、失败与延迟
调用日志:每一笔的模型、状态、首字延迟与扣费
其余界面截图见 [界面预览(全部)](docs/screenshots.md)。
---
## 快速开始
部署需要一台能跑 Docker 的服务器(1 核 1G 起)。两种方式任选:
**① Docker(自己起容器)**
```bash
docker run -d --name workbuddy-manager -p 7864:7864 -v /opt/workbuddy-manager/data:/app/data ghcr.io/ithtelab/workbuddy-manager:latest
```
**② 服务器一键脚本(装依赖、拉包、配 systemd)**
```bash
bash <(curl -fsSL https://raw.githubusercontent.com/ithtelab/workbuddy-manager/main/deploy/install.sh)
```
装完浏览器打开 `http://<服务器>:7864`,首次启动的日志里会打印初始管理员密码。
> 上游源码随发布包一起分发,装完即可用。反向代理与 HTTPS、端口收敛、Windows 原生
> 部署(无需 Docker)、本地开发等细节见 [部署指南](deploy/README.md) 与
> [开发与架构](docs/development.md)。
---
## 使用指南
日常就三步:**纳管账号 → 分发密钥 → 把下游指到 `/v1`**。每步怎么做、下游接入示例
(OpenAI SDK、cc-switch 等)与常见问题见 [使用指南](docs/usage.md)。
---
## 接口说明
| 方法 | 路径 | 鉴权 | 说明 |
|---|---|---|---|
| `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](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)。
---
## 安全说明
- 密钥只在创建时显示一次,库里只存哈希;账号凭据不返回前端
- 入站 IP 白 / 黑名单(支持 CIDR)、每把密钥的 IP 与模型白名单
- 敏感操作全部留审计日志(谁、什么时候、做了什么)
- 发布包带签名校验,一键更新验签通过才安装
完整的威胁模型与加固建议见 [安全说明](docs/security-notes.md) 与
[安全审计报告](docs/SECURITY-AUDIT.md)。
---
## 已知限制
- **账号出口线路**:管理端支持按账号绑定命名 HTTP/HTTPS 代理。聊天和上游后台任务还需 workbuddy2api 配套支持,配置与兼容条件见 [账号出口线路](docs/account-proxy-routes.md)。
- 请求的**请求体 / 响应体内容不做留存**,仅记录元数据(模型、状态、Token、延迟、来源),以保护隐私。
- 用量统计按「天 × 密钥 × 模型」聚合;如需小时粒度可扩展 `usage_daily` 表。
---
## 更多文档
- [使用指南](docs/usage.md) —— 三部曲怎么点、下游怎么接
- [功能一览(完整版)](docs/features.md) —— 每条功能的细节
- [界面预览(全部)](docs/screenshots.md) —— 全部截图
- [开发与架构](docs/development.md) —— 本地开发、架构、目录结构
- [安全说明](docs/security-notes.md) —— 威胁模型与加固
- [部署指南](deploy/README.md) —— 反向代理、HTTPS、Windows 原生、一键更新
- [账号出口线路](docs/account-proxy-routes.md) —— 每个账号走不同代理出口
- [API 令牌](docs/api-tokens.md) —— 只读令牌与作用域
---
## 更新日志与反馈
- **更新日志**:[CHANGELOG.md](CHANGELOG.md) —— 各版本的新增、修复与变更
- **下载发布包**:[Releases](https://github.com/ithtelab/workbuddy-manager/releases) —— 每个版本提供可直接部署的
`.tar.gz` / `.zip`(含已构建的前端产物),解压后执行 `sudo bash deploy/install.sh` 即可
- **反馈问题**:[提交 Bug](https://github.com/ithtelab/workbuddy-manager/issues/new?template=bug_report.yml) ·
[功能建议](https://github.com/ithtelab/workbuddy-manager/issues/new?template=feature_request.yml)
> 反馈时请附上版本号与错误日志,并**先移除其中的密钥、Token 等敏感信息**。
> 上游 workbuddy2api 自身的问题也提到[本仓库](https://github.com/ithtelab/workbuddy-manager/issues)
> ——上游源码随本项目的发布包分发。
### 版本发布流程
维护者打 tag 即可自动构建并发布:
```bash
git tag v1.0.1 && git push origin v1.0.1
```
CI 会构建前端、打包产物、从 CHANGELOG 提取对应版本段落作为发布说明,
并创建 Release 附带压缩包。
---
## 相关项目
- [**sanguine886/workbuddy-sdk**](https://github.com/sanguine886/workbuddy-sdk)(Go,MIT)——
社区维护的 Go 客户端库,完整覆盖本项目的两个 API 面:管理面 `/api/*`(账号池、密钥、
统计、日志、安全、设置、用户、系统更新)与数据面 `/v1/*`(Chat Completions /
Responses / Anthropic Messages / Models)。用 Go 写运维工具时可直接 `go get`,
不必自己拼 HTTP 与登录态。
> 以上为社区项目,**与本仓库无代码依赖**;使用中遇到问题请到其[仓库](https://github.com/sanguine886/workbuddy-sdk/issues)反馈。
---
## 致谢
- [**LINUX DO**](https://linux.do) —— 本项目的发布与交流社区
- [**linux-do/cdk**](https://github.com/linux-do/cdk)(MIT)—— 界面设计令牌与浮动底栏组件来源,本项目 UI 视觉与其保持一致
- [**Sliverkiss/workbuddy2api**](https://github.com/Sliverkiss/workbuddy2api) —— 底层账号池与 OpenAI 兼容代理(MIT;源码随本项目的发布包分发,版权归原作者)
- [**lbjlaq/Antigravity-Manager**](https://github.com/lbjlaq/Antigravity-Manager) —— 管理端功能形态参考
---
## License
[MIT](LICENSE)