跳到主要内容使用 copilot-api 实现 GitHub Copilot 兼容 OpenAI 与 Anthropic 生态 | 极客日志Python
使用 copilot-api 实现 GitHub Copilot 兼容 OpenAI 与 Anthropic 生态
项目简介:copilot-api 让 Copilot 兼容 OpenAI/Anthropic 生态 作为开发者,你是否曾因 GitHub Copilot 仅能在指定 IDE 中使用而感到受限?是否想让 Copilot 对接 Raycast、Claude Code 等工具,却苦于接口不兼容?由 ericc-ch 开发的 copilot-api 项目提供了实现方案——这是一个反向工程实现的 GitHu…
筑梦师44K 浏览 项目简介:copilot-api 让 Copilot 兼容 OpenAI/Anthropic 生态
作为开发者,你是否曾因 GitHub Copilot 仅能在指定 IDE 中使用而感到受限?是否想让 Copilot 对接 Raycast、Claude Code 等工具,却苦于接口不兼容?由 ericc-ch 开发的 copilot-api 项目提供了实现方案——这是一个反向工程实现的 GitHub Copilot API 代理,能将 Copilot 封装为兼容 OpenAI 和 Anthropic 规范的 API 服务,让你在任意支持该规范的工具中轻松调用 Copilot 能力,解锁 Copilot 的全场景使用潜力。
项目核心价值:打破生态壁垒,复用 Copilot 订阅
GitHub Copilot 凭借优秀的代码补全、推理能力成为开发者常用工具,但原生仅支持 VS Code、JetBrains 等少数 IDE,且无公开的标准 API 接口。而 copilot-api 的核心作用,就是架起 Copilot 与 OpenAI/Anthropic 生态的桥梁:
- 对于拥有 Copilot 订阅(个人/企业/商业版)的开发者,无需额外购买其他 AI 服务,就能在 Raycast、Claude Code 等工具中复用 Copilot 能力;
- 尤其适合学生群体——通过 GitHub 学生包免费获取的 Copilot,能借助该代理实现多场景使用,大幅降低 AI 工具使用成本;
- 弥补了 Copilot 原生无标准 API 的短板,让 Copilot 融入现有 AI 工具链,提升开发流程的连贯性。
需要注意的是,该项目是反向工程实现的非官方代理,并非 GitHub 官方支持,使用时需遵守 GitHub 的可接受使用政策,避免过度自动化请求触发风控。
核心特性:功能强大,适配多场景使用需求
copilot-api 并非简单的接口转发,而是围绕开发者实际使用需求做了全方位优化,核心特性覆盖兼容性、可控性、可观测性等多个维度,兼顾易用性和灵活性:
1. 双生态兼容,无缝对接海量工具
完美支持 OpenAI 兼容接口(/v1/chat/completions、/v1/models、/v1/embeddings)和 Anthropic 兼容接口(/v1/messages、/v1/messages/count_tokens),只要工具支持这两大主流 API 规范,就能直接接入 Copilot,无需修改任何代码。
2. 深度集成 Claude Code,赋能开发者助手
通过 --claude-code 命令行标识,可一键生成 Claude Code 的配置命令,快速将 Copilot 设为 Claude Code 的后端服务;也可通过配置 .claude/settings.json 文件实现永久生效,让这款开发者专属 AI 助手拥有 Copilot 的代码能力。
3. 精细化流量控制,规避风控限制
针对 GitHub Copilot 的速率限制,提供多重防护机制,避免因请求过于频繁导致账户被限制:
--rate-limit:设置请求间隔(秒),强制控制请求频率;
--wait:触发速率限制时自动等待冷却,而非直接报错;
--manual:手动审批每一个 API 请求,实现精细化流量管控。
4. 可视化监控,实时掌握使用状态
内置 Web 版使用仪表盘,启动服务后可通过控制台输出的 URL 直接访问,支持查看 Copilot 的使用配额、请求统计、令牌状态等核心信息,还能通过 URL 参数配置自定义 API 端点,方便团队共享和书签保存。
5. 灵活的认证与部署,适配多环境
- 认证方式:支持交互式认证,也可通过
auth 子命令生成令牌,配合 --github-token 实现无交互认证,适配 CI/CD 等自动化环境;
- 部署方式:支持本地直接运行、Docker 容器部署、npx 一键启动,无需复杂的环境配置;
- 账户支持:兼容个人、商业、企业三种 GitHub Copilot 账户类型,通过
--account-type 即可快速切换。
6. 调试友好,提升问题排查效率
提供 --show-token 标识,可在认证和令牌刷新时显示 GitHub 和 Copilot 令牌,方便开发者排查认证相关问题;配合 --verbose 日志标识,能查看详细的请求和服务运行日志。
快速上手:3 种启动方式,5 分钟完成部署
copilot-api 的使用门槛极低,仅需满足两个前置条件:Bun(≥1.2.x)运行环境、拥有 Copilot 订阅的 GitHub 账户,接下来即可通过多种方式快速启动。
方式 1:npx 一键启动(推荐,无需安装)
无需克隆项目,直接通过 npx 运行,零环境污染:
# 基础启动,默认端口 4141
npx copilot-api@latest start
# 自定义端口 + 详细日志
npx copilot-api@latest start
# 企业版账户 +30 秒请求间隔 + 自动等待
npx copilot-api@latest start
方式 2:Docker 容器部署(适合服务化运行)
docker build -t copilot-api .
docker run -p 4141:4141 copilot-api
FROM node:25.0.0
LABEL maintainer="Johnny"
RUN useradd
USER appuser
WORKDIR /home/appuser
USER root
RUN npm install -g copilot-api@latest
USER appuser
EXPOSE 4141
ENTRYPOINT ["copilot-api"]
CMD ["start","--port","4141"]
docker build -t copilot-api:0.7.0 .
docker run -d --name copilot-api -p 4141:4141 copilot-api:0.7.0 start --port 4141 --github-token ghu_xxxxxxx
方式 3:从源码运行(适合二次开发)
git clone https://github.com/ericc-ch/copilot-api.git
cd copilot-api
bun install
bun run dev
bun run start
启动成功后,即可将工具的 API 端点配置为 http://localhost:4141,像调用 OpenAI/Anthropic API 一样使用 Copilot 了!
典型场景:这些用法让 Copilot 价值提升
场景 1:对接 Raycast,打造本地 AI 助手
Raycast 支持自定义 AI API 提供商,只需在 Raycast 的 AI 设置中,将 API 端点设为 copilot-api 的地址,即可在 Raycast 中调用 Copilot 完成代码生成、问题解答、文本处理等操作,让本地效率工具拥有 Copilot 能力。
场景 2:作为 Claude Code 后端,强化代码助手
npx copilot-api@latest start
按照提示选择模型后,控制台会生成 Claude Code 的启动命令,复制到新终端运行,即可让 Claude Code 使用 Copilot 作为推理后端,结合两者的优势提升开发效率。
场景 3:监控 Copilot 使用情况,合理分配配额
启动服务后,访问控制台输出的仪表盘 URL(如 https://ericc-ch.github.io/copilot-api?endpoint=http://localhost:4141/usage),即可实时查看 Copilot 的聊天、补全服务配额使用情况,通过进度条快速掌握剩余额度,避免配额耗尽影响开发。
场景 4:CI/CD 环境中调用 Copilot,实现自动化代码处理
npx copilot-api@latest auth
将生成的令牌通过 --github-token 传入,即可在 CI/CD 等无交互环境中启动 copilot-api,让自动化脚本调用 Copilot 完成代码检查、补全、文档生成等操作。
重要使用建议:合规使用,避免账户风险
由于 copilot-api 是反向工程实现,使用时需严格遵守 GitHub 的规则,避免因不当使用导致 Copilot 访问被暂停:
- 避免批量、高频的自动化请求,建议通过
--rate-limit 设置合理的请求间隔(如 30 秒),降低风控概率;
- 不要将代理服务公网暴露,仅在本地或内网使用,防止令牌泄露和恶意请求;
- 优先使用
--manual 手动审批请求,尤其在测试阶段,避免误操作产生大量请求;
- 若收到 GitHub Security 的警告,立即停止使用,排查请求行为是否违规。
总结
copilot-api 是一款极具创意的开发者工具,它以反向工程的方式打破了 GitHub Copilot 的生态壁垒,让原本仅能在指定 IDE 中使用的 Copilot,成为了能对接 OpenAI/Anthropic 生态的通用 AI 服务。对于拥有 Copilot 订阅的开发者而言,这一项目能最大化复用订阅价值,让 Copilot 融入 Raycast、Claude Code、自定义脚本等全场景开发流程,大幅提升开发效率。
当然,作为非官方代理,合规使用是前提——只要遵守 GitHub 的使用政策,合理控制请求频率,copilot-api 就能成为你的开发利器。目前项目仍在持续更新,最新版本已实现使用监控、令牌可视化等实用功能,未来还将有更多优化。
微信扫一扫,关注极客日志
微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
相关免费在线工具
- curl 转代码
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
- Base64 字符串编码/解码
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
- Base64 文件转换器
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
- Markdown 转 HTML
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML 转 Markdown 互为补充。 在线工具,Markdown 转 HTML在线工具,online
- HTML 转 Markdown
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML 转 Markdown在线工具,online
- JSON 压缩
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online