主题:Dify × GitHub Copilot 模型集成 采集来源:GitHub Issues · GitHub Discussions · dify-official-plugins 调研日期:2026-03-16
📖 目录
- Dify 是否支持 GitHub Copilot OAuth 接入?
📋 结论摘要
截至 2026-03-16,Dify 官方不支持 GitHub Copilot 的 OAuth 登录接入。
该功能需求曾在 GitHub Issue #22384 提出,已于 2025-09-15 被 bot 以 "Not planned" 关闭,官方亦无相关 roadmap 计划。
🔍 背景与技术细节
GitHub Copilot 的 API 现状
GitHub Copilot 确实存在公开的 LLM API 端点:
POST https://api.githubcopilot.com/chat/completions
该端点的请求格式与 OpenAI Chat Completions API 兼容,理论上可以对接 Dify 的 OpenAI-compatible 自定义供应商。
核心阻塞点:认证机制不匹配
| 维度 | Dify 现有机制 | GitHub Copilot 需求 |
|---|---|---|
| 认证方式 | 静态 API Key / Bearer Token | GitHub OAuth 流程(需要用户授权登录) |
| Token 生命周期 | 长期有效 | 短期有效,需要 Token Refresh |
| 商业限制 | 无限制 | 账号必须订阅 Copilot(Individual/Business/Enterprise) |
本质矛盾:Dify 的模型供应商系统假设凭据是静态的"密钥",而 Copilot 要求通过 GitHub OAuth 动态获取令牌,并自动刷新。Dify 当前架构不支持供应商级别的 OAuth 流程。
📊 社区讨论现状
Issue #22384 关键讨论时间线
| 时间 | 事件 |
|---|---|
| 2025-07-15 | 用户 constCD 提出需求:Dify 模型供应商中没有 GitHub Copilot |
| 2025-07-15 | 维护者 crazywoola 建议在 dify-official-plugins 提 PR |
| 2025-07-16 | 用户补充:GitHub 已有公开端点,Cherry Studio 已实现 OAuth 登录接入 Copilot |
| 2025-07-16 | Dosubot 分析:技术上可行,但需要 Dify 新增 OAuth 凭据管理逻辑 |
| 2025-09-15 | 因无活动,被 bot 标记 stale 并关闭为 Not Planned |
dify-official-plugins 现状
检索 dify-official-plugins 仓库,无任何 GitHub Copilot 相关插件。仅有两条无关 issue 在搜索结果中匹配了"copilot"关键词。
🛠️ 当前可行的变通方案
方案 A:手动 Bearer Token(不稳定)
- 通过 GitHub CLI 或 OAuth 手动获取 Copilot Access Token
- 在 Dify 中配置 OpenAI-compatible 自定义供应商:
- Base URL:
https://api.githubcopilot.com - API Key:填入手动获取的 Bearer Token
- Base URL:
- 缺陷:Token 会短期过期,需要手动更新;且此用法可能违反 GitHub Copilot ToS
方案 B:接入 GitHub Models(推荐,合规)
GitHub 同时提供 GitHub Models,支持通过 Personal Access Token 直接调用 GPT-4o、Claude 等模型:
- Base URL:
https://models.inference.ai.azure.com - 认证:GitHub PAT(静态,与 Dify 机制兼容)
- Dify 中国内开发者常用此方式接入 GPT-4o / Claude(社区已有多篇教程)
方案 C:贡献 Copilot 插件到官方仓库
维护者明确建议在 langgenius/dify-official-plugins 提 PR,实现一个支持 GitHub OAuth 的 Copilot 模型插件。技术路径如下:
- 实现
OAuthCredentialForm类型的 credential schema - 添加 Token 获取 / 刷新逻辑
- 映射 Dify LLM interface ↔ Copilot API 请求格式
💡 结论与建议
| 场景 | 推荐方案 |
|---|---|
| 想快速使用 GitHub 账号的 AI 模型配额 | 接入 GitHub Models(PAT 认证,合规稳定) |
| 想用 Copilot 具体功能(代码补全等) | Copilot 本身不是通用 LLM,不适合 Dify 工作流集成 |
| 想为社区贡献 | 在 dify-official-plugins 实现 OAuth-based Copilot 插件 |
| 等待官方支持 | 当前无 roadmap,短期内不太可能由官方实现 |
关键:GitHub Copilot 的公开 API 端点在技术层面与 OpenAI 格式兼容,真正的壁垒是 OAuth 认证流程,而不是协议不兼容。还有一点:Copilot是按次数计费的,在Dify的Agent或Workflow环境中如何控制计费次数也是一个值得深入探讨的话题。
📎 参考链接
- dify/issues #22384 - There is no GitHub Copilot in the model vendor
- GitHub Copilot LLM API 文档
- GitHub Models Marketplace
- dify-official-plugins 仓库
Dify 接入 GitHub Models
本文中我们采用合规的方式接入Github Models。
GitHub Models 暴露的是 OpenAI 兼容端点:
Base URL: https://models.inference.ai.azure.com
API Key: GitHub PAT(Personal Access Token)
Dify 里的 openai_api_compatible 插件支持这种配置,直接填进去就能用,无需额外插件。
参考下图:
GitHub PAT(Personal Access Token)获取步骤
路径入口
登录 GitHub 后,按以下路径导航:
GitHub 右上角头像 → Settings
→ 左侧菜单最底部:Developer settings
→ Personal access tokens
→ Tokens (fine-grained) ← 推荐使用新版
或
→ Tokens (classic) ← 旧版,兼容性更好
如下图:
方式一:Fine-grained Token(推荐,权限更精细)
路径:Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token
| 字段 | 填写说明 |
|---|---|
| Token name | 随意,如 dify-github-models |
| Expiration | 按需设置,建议 90 天或 1 年 |
| Resource owner | 选你自己的账号 |
| Repository access | 选 "Public Repositories (read-only)" 或 All repositories |
| Permissions | Repository 权限里找 Models → 设为 Read-only |
点击 Generate token,复制 token(形如 github_pat_xxx...,只显示一次)。
方式二:Classic Token(兼容性更好,推荐用于 API 调用)
路径:Settings → Developer settings → Personal access tokens → Tokens (classic) → Generate new token (classic)
| 字段 | 填写说明 |
|---|---|
| Note | 随意,如 dify-models |
| Expiration | 按需,最长 1 年,也可选 No expiration |
| Scopes | 勾选 read:user 即可(GitHub Models 只需要账号验证,不需要 repo 权限) |
点击 Generate token,复制 token(形如 ghp_xxxxxxxxxx,只显示一次)。
在 Dify 中填写相关信息
在 Dify 添加自定义 OpenAI-compatible 供应商时:
Base URL: https://models.inference.ai.azure.com
API Key: ghp_xxxxxxxxxx (粘贴你的 PAT)
模型名需手动输入,例如:gpt-4o、gpt-4o-mini、Meta-Llama-3.3-70B-Instruct。
实测发现
Github Models方式接入时,模型列表与Github Copilot不一样,要少很多,官方的说明可以参见这里。实际可用的模型要比下面这张表里的还要少。
注意事项
- Token 只在创建时显示一次,务必立即复制保存
- 如果忘记复制,只能重新生成(旧 token 自动失效)
- PAT 相当于你的账号密码,不要提交到代码仓库
- Token 到期后需要重新生成并在 Dify 中更新 API Key
配置完成后,创建1个测试工作流进行对话,看效果:
扩展阅读 -- GitHub Models 的发展趋势
1. 限额太低,不适合生产:免费额度极其有限(如 GPT-4o:每天 50 次请求),Dify 工作流一跑就超,实用价值低
2. GitHub Models 正在并入 Copilot:访问 GitHub Models 的旧文档路径时,会被重定向到 "Configuring access to AI models in GitHub Copilot"(Copilot 产品文档)。GitHub 正把 Models 服务整合进 Copilot 订阅体系,未来的独立免费 API 路径可能进一步受限。
3. 关于企业订阅计费:我使用的Github Copilot企业订阅账号,GPT4.1模型,目前没有发现扣费情况。跟官方确认,Model billing跟Copilot应该不是一条产品线,不共享billing。以下是官方回复,作为参考: