Claude Code官方文档GitHub Enterprise自托管

Claude Code with GitHub Enterprise Server - 自托管 GitHub 集成

将 Claude Code 连接到自托管 GitHub Enterprise Server 实例,启用 Web 会话、代码审查和插件市场。

· 阅读约 12 分钟

Claude Code 与 GitHub Enterprise Server

将 Claude Code 连接到您的自托管 GitHub Enterprise Server 实例,以使用 Web 会话、代码审查和插件市场。

ℹ️ GitHub Enterprise Server 支持适用于 Team 和 Enterprise 计划。

GitHub Enterprise Server (GHES) 支持让您的组织能够将 Claude Code 与托管在自管理 GitHub 实例上的仓库一起使用,而不是 github.com。一旦管理员连接您的 GHES 实例,开发人员就可以运行 Web 会话、获得自动代码审查,并从内部市场安装插件,无需任何按仓库配置。

对于 github.com 上的仓库,请参阅 Web 上的 Claude Code代码审查。要在您自己的 CI 基础设施中运行 Claude,请参阅 GitHub Actions

GitHub Enterprise Server 支持的功能

下表显示哪些 Claude Code 功能支持 GHES,以及与 github.com 行为的任何差异。

功能GHES 支持备注
Web 上的 Claude Code✅ 支持管理员一次性连接 GHES 实例;开发人员像往常一样使用 claude --remoteclaude.ai/code
Code Review✅ 支持与 github.com 相同的自动 PR 审查
Teleport 会话✅ 支持使用 --teleport 在 Web 和终端之间移动会话
插件市场✅ 支持使用完整的 git URL 而不是 owner/repo 简写
贡献指标✅ 支持通过 webhook 传送到分析仪表板
GitHub Actions✅ 支持需要手动工作流设置;/install-github-app 仅适用于 github.com
GitHub MCP server❌ 不支持GitHub MCP 服务器不适用于 GHES 实例

管理员设置

管理员一次将您的 GHES 实例连接到 Claude Code。之后,您组织中的开发人员可以使用 GHES 仓库,无需任何额外配置。您需要对 Claude 组织的管理员访问权限以及在 GHES 实例上创建 GitHub Apps 的权限。

引导式设置生成 GitHub App 清单并将您重定向到 GHES 实例,以一键创建应用。如果您的环境阻止重定向流程,可以使用替代手动设置

步骤 1:打开 Claude Code 管理员设置

转到 claude.ai/admin-settings/claude-code 并找到 GitHub Enterprise Server 部分。

步骤 2:开始引导式设置

点击连接。输入连接的显示名称和您的 GHES 主机名,例如 github.example.com。如果您的 GHES 实例使用自签名或私有证书颁发机构,请将 CA 证书粘贴到可选字段中。

步骤 3:创建 GitHub App

点击继续到 GitHub Enterprise。您的浏览器将重定向到您的 GHES 实例,其中包含预填充的应用清单。审查配置并点击创建 GitHub App。GHES 将您重定向回 Claude,应用凭证已自动存储。

步骤 4:在您的仓库上安装应用

从 GHES 实例上的 GitHub App 页面,将应用安装到您希望 Claude 访问的仓库或组织。您可以从子集开始,稍后添加更多。

步骤 5:启用功能

返回 claude.ai/admin-settings/claude-code 并使用与 github.com 相同的配置为您的 GHES 仓库启用代码审查贡献指标

GitHub App 权限

清单使用 Claude 在 Web 会话、代码审查和贡献指标方面所需的权限和 webhook 事件来配置 GitHub App:

权限访问权限用途
Contents读写克隆仓库和推送分支
Pull requests读写创建 PR 和发布审查评论
Issues读写响应 issue 提及
Checks读写发布代码审查检查运行
Actions读取读取 CI 状态以进行自动修复
Repository hooks读写接收 webhook 用于贡献指标
Metadata读取GitHub 要求所有应用都有此项

应用订阅 pull_requestissue_commentpull_request_review_commentpull_request_reviewcheck_run 事件。

手动设置

如果引导式重定向流程被您的网络配置阻止,请点击手动添加而不是连接。在 GHES 实例上创建具有上述权限和事件的 GitHub App,然后在表单中输入应用凭证:主机名、OAuth 客户端 ID 和密钥、GitHub App ID、客户端 ID、客户端密钥、webhook 密钥和私钥。

网络要求

您的 GHES 实例必须可从 Anthropic 基础设施访问,以便 Claude 可以克隆仓库并发布审查评论。如果您的 GHES 实例位于防火墙后面,请将 Anthropic API IP 地址列入白名单。

开发者工作流

一旦您的管理员连接了 GHES 实例,开发者端无需任何配置。Claude Code 会自动从您工作目录中的 git 远程检测 GHES 主机名。

像通常一样从您的 GHES 实例克隆仓库:

git clone git@github.example.com:platform/api-service.git
cd api-service

然后启动 Web 会话。Claude 从您的 git 远程检测 GHES 主机,并通过您组织配置的实例路由会话:

claude --remote "Add retry logic to the payment webhook handler"

会话在 Anthropic 基础设施上运行,从 GHES 克隆您的仓库,并将更改推送回分支。使用 /tasks 或在 claude.ai/code 监控进度。请参阅 Web 上的 Claude Code 了解完整的远程会话工作流,包括差异审查、自动修复和例程。

将会话 Teleport 到您的终端

使用 claude --teleport 将 Web 会话拉入您的本地终端。Teleport 在获取分支并加载会话历史之前验证您是否在同一 GHES 仓库的检出中。请参阅 teleport 要求了解详情。

GHES 上的插件市场

在 GHES 实例上托管插件市场以在您的组织中分发内部工具。市场结构与 github.com 托管的市场相同;唯一的区别是您如何引用它们。

添加 GHES 市场

owner/repo 简写始终解析为 github.com。对于 GHES 托管的市场,使用完整的 git URL:

/plugin marketplace add git@github.example.com:platform/claude-plugins.git

HTTPS URL 也可以工作:

/plugin marketplace add https://github.example.com/platform/claude-plugins.git

请参阅创建和分发插件市场了解构建市场的完整指南。

在托管设置中允许列表 GHES 市场

如果您的组织使用托管设置来限制开发人员可以添加的市场,请使用 hostPattern 源类型来允许来自您的 GHES 实例的所有市场,而无需枚举每个仓库:

{
  "strictKnownMarketplaces": [
    {
      "source": "hostPattern",
      "hostPattern": "^github\\.example\\.com$"
    }
  ]
}

您还可以为开发人员预先注册市场,以便它们无需手动设置即可显示。此示例使内部工具市场在整个组织中可用:

{
  "extraKnownMarketplaces": {
    "internal-tools": {
      "source": {
        "source": "git",
        "url": "git@github.example.com:platform/claude-plugins.git"
      }
    }
  }
}

请参阅 strictKnownMarketplacesextraKnownMarketplaces 设置参考以获取完整架构。

限制

少数功能在 GHES 上的行为与 github.com 不同。功能表总结了支持;本节涵盖了变通方法。

  • /install-github-app 命令:在 claude.ai 上遵循管理员设置流程。如果您还希望 GHES 上的 GitHub Actions 工作流,请手动调整示例工作流
  • GitHub MCP 服务器:使用为您的 GHES 主机配置的 gh CLI。运行 gh auth login --hostname github.example.com 进行身份验证,然后 Claude 可以在会话中使用 gh 命令。

故障排除

Web 会话无法克隆仓库

如果 claude --remote 因克隆错误而失败,请验证您的管理员是否已为您的 GHES 实例完成设置,并且 GitHub App 已安装在您正在处理的仓库上。与您的管理员核实,注册在 Claude 设置中的实例主机名是否与您的 git 远程中的主机名匹配。

添加市场失败并出现策略错误

如果 /plugin marketplace add 因您的 GHES URL 而被阻止,则您的组织已限制市场源。请管理员在托管设置中为您的 GHES 主机名添加 hostPattern 条目。

GHES 实例不可访问

如果审查或 Web 会话超时,您的 GHES 实例可能无法从 Anthropic 基础设施访问。确认您的防火墙允许来自 Anthropic API IP 地址的入站连接。

相关资源

这些页面更深入地涵盖了本指南中引用的功能:


本文翻译自 Anthropic Claude Code 官方文档,最近一次同步:2025-05-01。 (原文为英文,已翻译)