Claude Code 平台集成
Claude Code 平台集成
GitHub Enterprise Server
4 分钟阅读
Claude Code 与 GitHub Enterprise Server
将 Claude Code 连接到您的自托管 GitHub Enterprise Server 实例,以进行 Web 会话、代码审查和插件市场。
GitHub Enterprise Server 支持适用于 Team 和 Enterprise 计划。
GitHub Enterprise Server (GHES) 支持使您的组织能够在自托管的 GitHub 实例(而非 github.com)上使用 Claude Code 与仓库协作。一旦所有者连接了您的 GHES 实例,开发人员即可运行 Web 会话并获得自动代码审查,无需任何按仓库配置。托管在您的实例上的插件市场也受支持;凭证要求因界面而异,如 GHES 上的插件市场 所述。
对于 github.com 上的仓库,请参阅 Claude Code on the web 和 Code Review。要在您自己的 CI 基础设施中运行 Claude,请参阅 GitHub Actions。
GitHub Enterprise Server 支持的功能
下表显示了哪些 Claude Code 功能支持 GHES 以及与 github.com 行为的任何差异。
| Feature | GHES 支持 | 说明 |
|---|---|---|
| Claude Code on the web | ✅ 支持 | 所有者一次性连接 GHES 实例;开发人员照常使用 claude --cloud 或 claude.ai/code |
| Code Review | ✅ 支持 | 与 github.com 相同的自动 PR 审查 |
| Claude Security | ✅ 支持 | 面向 Enterprise 计划的公开测试版,位于 claude.ai/security |
| Teleport sessions | ✅ 支持 | 使用 --teleport 在 Web 和终端之间移动会话 |
| Plugin marketplaces | ✅ 支持 | 凭证要求因界面而异。请参阅 GHES 上的插件市场 |
| Contribution metrics | ✅ 支持 | 通过 webhook 交付到 分析仪表板 |
| GitHub Actions | ✅ 支持 | 需要手动工作流设置;/install-github-app 仅适用于 github.com |
| GitHub MCP server | ❌ 不支持 | GitHub MCP 服务器无法与 GHES 实例配合使用 |
管理员设置
所有者一次性将您的 GHES 实例连接到 Claude Code。之后,组织中的开发人员无需任何额外配置即可使用 GHES 仓库。您需要在 Claude 组织中具有 Owner 或 Primary Owner 角色,并在您的 GHES 实例上具有创建 GitHub Apps 的权限。
引导式设置会生成 GitHub App 清单,并将您重定向到 GHES 实例以一键创建应用。如果您的环境阻止重定向流,则可以使用替代手动设置。
打开 Claude Code 管理员设置
前往 claude.ai/admin-settings/claude-code 并找到 GitHub Enterprise Server 部分。
开始引导式设置
点击连接。输入连接的显示名称和您的 GHES 主机名,例如 github.example.com。如果您的 GHES 实例使用自签名或私有证书颁发机构,请在可选字段中粘贴 CA 证书。
创建 GitHub App
点击继续前往 GitHub Enterprise。您的浏览器将重定向到您的 GHES 实例,并携带预填充的应用清单。查看配置并点击创建 GitHub App。GHES 将您重定向回 Claude,并自动存储应用凭证。
在您的仓库上安装应用
在您的 GHES 实例上的 GitHub App 页面,将应用安装在您希望 Claude 访问的仓库或组织上。您可以从一部分开始,稍后添加更多。
启用功能
返回 claude.ai/admin-settings/claude-code 并为您的 GHES 仓库启用 Code Review、Claude Security 和 贡献指标,配置与 github.com 相同。
GitHub App 权限
该清单为 GitHub App 配置 Claude 在 Web 会话、Code Review、Claude Security 和贡献指标中所需的权限和 webhook 事件:
| Permission | Access | 用途 |
|---|---|---|
| Contents | Read and write | 克隆仓库和推送分支 |
| Pull requests | Read and write | 创建 PR 和发布审查评论 |
| Issues | Read and write | 响应 issue 提及 |
| Checks | Read and write | 发布 Code Review 检查运行 |
| Actions | Read | 读取 CI 状态以进行自动修复 |
| Repository hooks | Read and write | 接收贡献指标的 webhook |
| Metadata | Read | GitHub 对所有应用的要求 |
该应用订阅 pull_request、issue_comment、pull_request_review_comment、pull_request_review 和 check_run 事件。
手动设置
如果引导式重定向流被您的网络配置阻止,请点击手动添加而非连接。在您的 GHES 实例上创建具有上述权限和事件的 GitHub App,然后在表单中输入应用凭证:主机名、OAuth 客户端 ID 和密钥、GitHub App ID、客户端 ID、客户端密钥、webhook 密钥和私钥。
网络要求
您的 GHES 实例必须可以从 Anthropic 基础设施访问,以便 Claude 可以克隆仓库和发布审查评论。如果您的 GHES 实例位于防火墙后面,请将 Anthropic API IP 地址 加入允许列表。
开发者工作流
一旦所有者连接了 GHES 实例,就不需要开发者端配置。Claude Code 会自动从您工作目录中的 git remote 检测您的 GHES 主机名。
像平常一样从您的 GHES 实例克隆仓库:
然后启动 Web 会话。Claude 从您的 git remote 检测 GHES 主机,并通过您组织配置的实例路由会话:
会话在 Anthropic 基础设施上运行,从 GHES 克隆您的仓库,并将更改推送到分支。使用 /tasks 或在 claude.ai/code 监控进度。有关完整的云会话工作流(包括差异审查、自动修复和例程),请参阅 Claude Code on the web。
将会话传送到您的终端
使用 claude --teleport 将 Web 会话拉入本地终端。Teleport 会在获取分支和加载会话历史之前验证您处于同一 GHES 仓库的检出中。有关详细信息,请参阅 teleport 要求。
GHES 上的插件市场
在您的 GHES 实例上托管插件市场,以在整个组织内分发内部工具。市场结构与 github.com 托管的市场相同,但安装方式因添加位置而异,且凭证在不同界面间有所不同:
| Surface | 安装方式 | 每个用户所需内容 |
|---|---|---|
| Claude Code CLI 和桌面 | Claude Code 使用机器现有的 git 凭证克隆市场仓库 | 从其机器访问您的 GHES 主机的 Git 权限 |
托管设置 (extraKnownMarketplaces) | Claude Code 注册条目并使用机器现有的 git 凭证克隆仓库 | 从其机器访问您的 GHES 主机的 Git 权限 |
| claude.ai 组织插件设置 | 所有者选择 GHES 实例作为来源;Anthropic 的后端使用 管理员设置 中的 GitHub App 获取和同步仓库 | 添加后每个用户无需操作。添加它的所有者需要连接自己的 GitHub Enterprise 账户作为访问检查,且 GitHub App 必须安装在插件市场仓库上 |
| claude.ai 用户设置 | Anthropic 的后端使用提交用户的 GitHub Enterprise 连接获取仓库 | 将自己的 GitHub Enterprise 账户连接到 Claude |
| Claude Code on the web | 云会话在会话沙箱内克隆市场。沙箱仅在会话的仓库位于同一实例时才能访问您的 GHES 实例,且其 git 凭证仅限于会话的仓库 | 对于 GHES 托管的市场不可靠:与会话仓库不同的主机无法访问,即使是同一实例的安装也可能失败。请改用 CLI、托管设置或 claude.ai |
添加 GHES 插件市场
owner/repo 简写始终解析为 github.com。对于 GHES 托管的市场,请使用完整的 git URL。建议使用 HTTPS URL:
如果机器已信任您的 GHES 主机,SSH URL 也可以工作:
Claude Code 以非交互方式运行 git,并拒绝连接到不在机器 known_hosts 文件中的主机的 SSH 连接。使用带有 git 凭证助手的 HTTPS URL 可以避免 known_hosts 要求。
有关构建市场的完整指南,请参阅 创建和分发插件市场。
通过托管设置预注册 GHES 插件市场
extraKnownMarketplaces 设置预注册市场,使开发人员无需手动设置即可获得它。它适用于任何设置文件,包括仓库的 .claude/settings.json;托管设置将其组织范围交付:
Claude Code 在本地安装这些市场:它注册每个条目并使用机器现有的 git 凭证克隆仓库。此路径不通过 claude.ai,因此不需要每用户的 GitHub Enterprise 连接。为了成功推广:
- 使用完整的 git URL。
owner/repo简写始终解析为 github.com,无法引用 GHES 主机。 - 优先使用 HTTPS URL。 在不信任您的 GHES 主机密钥的机器上,SSH 克隆会失败。带有您组织的标准 git 凭证助手的 HTTPS URL 可在任何配置了凭证的机器上工作。
- 确认每台机器都可以从您的 GHES 主机克隆。 如果机器缺少凭证,市场会被注册但永远不会安装,其插件会报告为未找到,而不是提示输入凭证。
- 确认设置到达每台机器。 托管设置文件仅在其部署到的机器上生效,例如通过您的设备管理系统。有关文件位置,请参阅 托管设置。
在托管设置中允许 GHES 插件市场
如果您的组织使用 托管设置 来限制开发人员可以添加的市场,请使用 hostPattern 源类型来允许来自您的 GHES 实例的所有市场,而无需枚举每个仓库:
有关完整架构,请参阅 strictKnownMarketplaces 和 extraKnownMarketplaces 设置参考。
限制
一些功能在 GHES 上的行为与 github.com 不同。功能表总结了支持情况;本节介绍变通方法。
/install-github-app命令:改为按照 claude.ai 上的 管理员设置 流程。如果您还想在 GHES 上使用 GitHub Actions,请手动调整 示例工作流。- GitHub MCP 服务器:改为使用为您的 GHES 主机配置的
ghCLI。运行gh auth login --hostname github.example.com进行身份验证,然后 Claude 可以在会话中使用gh命令。
故障排查
Web 会话无法克隆仓库
如果 claude --cloud 因克隆错误而失败,请验证所有者是否已为您的 GHES 实例完成设置,以及 GitHub App 是否已安装在您正在处理的仓库上。请连接实例的所有者确认 Claude 设置中注册的主机名与您的 git remote 中的主机名匹配。
插件市场添加失败并显示策略错误
如果 /plugin marketplace add 因您的 GHES URL 被阻止,则您的组织已限制市场来源。请要求管理员在 托管设置 中为您的 GHES 主机名添加 hostPattern 条目。
在 claude.ai 上添加插件市场失败并显示 GitHub 访问错误
如果从用户设置添加 GHES 市场失败并显示"无法添加市场"等通用错误,请首先检查您的 GitHub Enterprise 连接。即使您组织的 GHES 实例已配置且其他用户已连接,当您自己的 GitHub Enterprise 账户未连接到 Claude 时也会出现此错误。对话框不会指向 GitHub Enterprise 连接流程,且浏览选项卡上的"连接到 GitHub"选项会登录到 github.com,这不会授予对 GHES 仓库的访问权限。
要连接您的 GitHub Enterprise 账户:claude.ai/code 上的仓库选择器为每个配置的 GHES 实例提供连接选项,所有者也可以从 Claude Code 管理员设置 的 GitHub Enterprise 部分进行连接。然后再次添加市场。或者,请所有者在组织插件设置中添加市场,这消除了每用户连接要求。
在其他 claude.ai 界面上,GHES 市场上的"仓库未找到。如果是私有仓库,则需要 GitHub 访问权限"错误通常表示相同的连接缺失。通过上述路径之一连接您的 GitHub Enterprise 账户,然后重试。
GHES 实例无法访问
如果审查或 Web 会话超时,您的 GHES 实例可能无法从 Anthropic 基础设施访问。确认您的防火墙允许来自 Anthropic API IP 地址 的入站连接。
相关资源
这些页面深入涵盖了本指南中引用的功能:
- Claude Code on the web:在云端基础设施上运行 Claude Code 会话
- Code Review:自动 PR 审查
- Plugin marketplaces:构建和分发插件目录
- Analytics:跟踪使用和贡献指标
- Managed settings:组织范围的策略配置
- Network configuration:防火墙和 IP 允许列表要求