copilot-api
将 GitHub Copilot API 逆向转换为 OpenAI/Anthropic 兼容接口的轻
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
将 GitHub Copilot API 逆向转换为 OpenAI/Anthropic 兼容接口的轻
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
图1:Copilot API Proxy 架构示意图
想象一下:你是独立开发者,每个月为 Claude Pro 支付 20 美元,但真正高频使用的只是代码补全——那个按 token 计费的 Claude Sonnet 对你来说已经足够好用了。问题是,市面上大多数 AI 编程工具(Cursor、Claude Code、Codex CLI)都绑定 OpenAI 或 Anthropic API,你没法把自己的 GitHub Copilot 订阅(每月 10 美元,包 120 小时代码补全)当作通用后端来用。
开发者 Erick Christian 遇到了同样的困扰。他在 GitHub 上开源了一个叫 copilot-api 的项目——本质上是一个逆向工程代理,能把 GitHub Copilot 的底层 API 暴露成 OpenAI 和 Anthropic 兼容的格式,让任何支持这两种协议的工具都能接入 Copilot。这个项目在 GitHub 上迅速获得超过 4000 颗星,引发了大量开发者的关注和讨论。
GitHub Copilot 本身有官方的 API 吗?没有。GitHub 官方从未开放 Copilot 的 API 接口,市面上所有的 Copilot API 方案都依赖于对 GitHub 内部 API 的逆向分析。这意味着:任何时候 GitHub 更新了接口,这些第三方代理都可能失效。GitHub 官方也发出过安全警告,明确表示「过度自动化使用可能触发滥用检测系统」。
但这并不妨碍开发者的热情。Copilot 的代码补全质量在某些场景下被认为优于 GPT-4(比如对长上下文的代码理解),而且每月 10 美元的订阅价格对轻度用户来说非常友好。copilot-api 就是在这种背景下诞生的——它给 Copilot 装上了一个「通用转接头」,让它可以插入任何 AI 编程工具的接口。
你可以把 copilot-api 理解成:一个自带变压器的旅行插座适配器。GitHub Copilot 原本只支持自家插件的「美式插头」,copilot-api 把它变成了兼容「欧标」「英标」「国标」多种接口的万能插座。
copilot-api 的核心能力是将 GitHub Copilot 的 API 转换成两种主流格式:
OpenAI 兼容接口:支持 /v1/chat/completions、/v1/responses、/v1/models、/v1/embeddings 等端点。这意味着 Cursor、Windsurf、Cline 等大量依赖 OpenAI 协议的工具可以直接接入。
Anthropic 兼容接口:支持 /v1/messages 端点,这意味着 Claude Code 可以无缝使用 Copilot 作为后端。
Codex CLI 集成:OpenAI 的 Codex CLI 也支持 Responses API 端点,copilot-api 同样兼容。
工具调用(Tools)支持:Copilot API 原生支持工具调用,代理层也完整保留了这一能力,让 Claude Code 等支持 function calling 的工具可以在 Copilot 环境下使用自定义工具。
项目还提供了 setup-claude-code 命令,可以交互式配置 Claude Code,让用户零配置接入。
从源码来看,copilot-api 的技术选型非常务实:
oven/bun:1.2.19-alpine),比 Node.js 启动更快、内存占用更低--frozen-lockfile)路由设计模块化,src/routes/ 下按功能拆分:chat-completions、messages、embeddings、models、token、usage,每个路由职责单一。
部署方面,项目提供了三种方案:
docker run 或 docker-compose upnpx copilot-proxy-api start 或 npm i -g copilot-apiWeb UI 方面,pages/index.html 使用 Tailwind CSS 提供了一个简洁的用量监控仪表板,可以查看当前 token 使用量。
风险1:逆向工程本质。GitHub 并未授权此项目,官方明确警告可能触发滥用检测。一旦 GitHub 修改内部 API,项目可能立即失效,用户需要频繁更新。
风险2:稳定性无保障。没有 SLA,没有企业支持,生产环境使用存在不确定性。Copilot 的官方条款也禁止自动化批量使用。
风险3:功能受限。Copilot API 本身不支持多轮对话的某些高级特性,代理层无法弥补这一差距。
copilot-api 项目的 4000+ stars 反映了一个现实:开发者对 AI 编程工具的灵活性需求正在增长。不同的模型在不同的编程场景下各有优劣——Claude 强在推理和代码解释,GPT-4 强在通用性,Copilot 强在代码补全的速度和上下文感知。
当这些模型被各自的平台绑定时,用户失去了选择的自由。像 copilot-api 这样的项目,虽然在法律灰色地带,但客观上推动了 API 标准化和互操作性的讨论。这也是为什么 OpenAI 和 Anthropic 都大力推广自家 API 的 OpenAI-Compatible 标准——谁先建立生态,谁就赢得开发者。
总结:如果你已经在用 GitHub Copilot 订阅,同时又需要 Claude Code 或 Codex CLI 的能力,copilot-api 是一个值得一试的方案。但请务必了解其风险,不要在关键业务系统上依赖它。