⚠️ 重要提示
本项目为 GitHub Copilot API 的逆向代理。GitHub 官方并不支持,可能会随时失效,请谨慎使用。
⚠️ GitHub 安全提醒
大量自动化或脚本化使用 Copilot(如通过工具快速、批量请求)可能触发 GitHub 的反滥用机制。
你可能会收到 GitHub 安全团队的警告,严重时可能导致 Copilot 临时停用。
GitHub 明确禁止用其服务器进行“过度自动化批量操作”或任何加重基础设施负担的行为。
请务必阅读:
- GitHub 可接受使用政策
- GitHub Copilot 条款
请负责任地使用本代理,避免账号受限。
说明:如果你已在使用 opencode,则无需本项目;Opencode 已内置 GitHub Copilot 支持。
本代理将 GitHub Copilot API 逆向封装为兼容 OpenAI 与 Anthropic 的服务。
借助它,你可以把 任何支持 OpenAI Chat Completions 或 Anthropic Messages API 的工具(包括 Claude Code)连接到 GitHub Copilot。
/v1/chat/completions、/v1/models、/v1/embeddings)与 Anthropic 风格(/v1/messages)端点。--claude-code 参数即可生成启动 Claude Code 所需的完整命令。--rate-limit 控制调用间隔,--wait 可在触发限速时自动等待而非报错。--manual 后,每次请求需手动确认,精细控制用量。--show-token 显示 GitHub 与 Copilot Token。https://github.com/user-attachments/assets/7654b383-669d-4eb9-b23c-06d7aefee8c5
bun install
docker build -t copilot-api .
# 在宿主机创建目录保存 GitHub Token
mkdir -p ./copilot-data
# 启动容器并挂载目录,重启后 Token 仍保留
docker run -p 4141:4141 -v $(pwd)/copilot-data:/root/.local/share/copilot-api copilot-api
宿主机
./copilot-data与容器内/root/.local/share/copilot-api映射,确保 Token 持久化。
# 构建时直接写入 Token(不推荐公开镜像)
docker build --build-arg GH_TOKEN=你的_github_token -t copilot-api .
# 运行时传入 Token
docker run -p 4141:4141 -e GH_TOKEN=你的_github_token copilot-api
# 运行时附加更多参数
docker run -p 4141:4141 -e GH_TOKEN=你的_token copilot-api start --verbose --port 4141
version: "3.8"
services:
copilot-api:
build: .
ports:
- "4141:4141"
environment:
- GH_TOKEN=你的_github_token
restart: unless-stopped
镜像特性:多阶段构建、非 root 用户、健康检查、固定基础镜像版本。
# 最新版
npx copilot-api@latest start
# 指定端口
npx copilot-api@latest start --port 8080
# 仅做认证
npx copilot-api@latest auth
新版采用子命令设计:
start 启动代理服务器(如未登录会先认证)auth 仅执行 GitHub 认证流程(生成 Token 供 --github-token 使用)check-usage 直接在终端查看当前用量与配额(不启动服务器)debug 输出诊断信息(版本、路径、认证状态等)start 子命令| 参数 | 说明 | 默认值 | 简写 |
|---|---|---|---|
--port | 监听端口 | 4141 | -p |
--verbose | 详细日志 | false | -v |
--account-type | 账户类型:individual / business / enterprise | individual | -a |
--manual | 手动确认每条请求 | false | 无 |
--rate-limit | 请求间隔(秒) | 无 | -r |
--wait | 触发限速时等待而非报错 | false | -w |
--github-token | 直接提供 GitHub Token(需先用 auth 生成) | 无 | -g |
--claude-code | 生成启动 Claude Code 的完整命令 | false | -c |
--show-token | 显示获取到的 Token(调试用) | false | 无 |
auth 子命令| 参数 | 说明 | 默认值 | 简写 |
|---|---|---|---|
--verbose | 详细日志 | false | -v |
--show-token | 认证后显示 Token | false | 无 |
debug 子命令| 参数 | 说明 | 默认值 | 简写 |
|---|---|---|---|
--json | 以 JSON 输出诊断信息 | false | 无 |
服务器同时提供 OpenAI 与 Anthropic 兼容端点,方便不同客户端接入。
| 端点 | 方法 | 说明 |
|---|---|---|
POST /v1/chat/completions | POST | 创建聊天补全 |
GET /v1/models | GET | 列出可用模型 |
POST /v1/embeddings | POST | 创建文本向量 |
| 端点 | 方法 | 说明 |
|---|---|---|
POST /v1/messages | POST | 创建消息回复 |
POST /v1/messages/count_tokens | POST | 计算消息 Token 数 |
| 端点 | 方法 | 说明 |
|---|---|---|
GET /usage | GET | 获取 Copilot 用量统计 |
GET /token | GET | 获取当前使用的 Copilot Token |
# 基本启动
npx copilot-api@latest start
# 自定义端口 + 详细日志
npx copilot-api@latest start --port 8080 --verbose
# 商业版账户
npx copilot-api@latest start --account-type business
# 企业版账户
npx copilot-api@latest start --account-type enterprise
# 每条请求手动确认
npx copilot-api@latest start --manual
# 限速:每 30 秒最多 1 次请求
npx copilot-api@latest start --rate-limit 30
# 限速时等待而非报错
npx copilot-api@latest start --rate-limit 30 --wait
# 直接提供 GitHub Token
npx copilot-api@latest start --github-token ghp_你的_TOKEN
# 仅认证
npx copilot-api@latest auth --verbose
# 终端查看用量
npx copilot-api@latest check-usage
# 调试信息
npx copilot-api@latest debug --json
启动服务器后,控制台会显示仪表盘 URL,例如:
https://ericc-ch.github.io/copilot-api?endpoint=http://localhost:4141/usage
/usage 数据本代理可为 Claude Code 提供后端。
--claude-codenpx copilot-api@latest start --claude-code
按提示选择主模型和轻量模型后,会自动复制一条完整命令到剪贴板。在新终端粘贴运行即可启动 Claude Code。
settings.json在项目根目录创建 .claude/settings.json,写入:
{
"env": {
"ANTHROPIC_BASE_URL": "http://localhost:4141",
"ANTHROPIC_AUTH_TOKEN": "dummy",
"ANTHROPIC_MODEL": "gpt-4.1",
"ANTHROPIC_SMALL_FAST_MODEL": "gpt-4.1"
}
}
更多选项见官方文档:
bun run dev
bun run start
--manual:每条请求手动确认--rate-limit <秒>:设置最小调用间隔--wait:限速时等待恢复而非报错--account-type business 或 enterprise 以匹配 GitHub 路由策略。Content type
Image
Digest
sha256:08633aa3a…
Size
57.9 MB
Last updated
about 1 year ago
docker pull kukuqi/copilot-api