Claude Code GitHub Actions 為您的 GitHub 工作流程帶來 AI 驅動的自動化。只需在任何 PR 或問題中簡單地提及 @claude,Claude 就能分析您的程式碼、創建拉取請求、實現功能並修復錯誤 - 同時遵循您專案的標準。

Claude Code GitHub Actions 目前處於測試階段。隨著我們完善使用體驗,功能和特性可能會有所變化。

Claude Code GitHub Actions 建立在 Claude Code SDK 之上,該 SDK 可將 Claude Code 以程式化方式整合到您的應用程式中。您可以使用該 SDK 構建超越 GitHub Actions 的自定義自動化工作流程。

為什麼使用 Claude Code GitHub Actions?

  • 即時 PR 創建:描述您的需求,Claude 會創建一個包含所有必要更改的完整 PR
  • 自動化程式碼實現:只需一個命令即可將問題轉化為可運行的程式碼
  • 遵循您的標準:Claude 尊重您的 CLAUDE.md 指南和現有程式碼模式
  • 簡單設置:通過我們的安裝程式和 API 密鑰,幾分鐘內即可開始使用
  • 預設安全:您的程式碼保留在 Github 的執行器上

Claude 能做什麼?

Claude Code 提供強大的 GitHub Actions,改變您處理程式碼的方式:

Claude Code Action

這個 GitHub Action 允許您在 GitHub Actions 工作流程中運行 Claude Code。您可以使用它在 Claude Code 之上構建任何自定義工作流程。

查看儲存庫 →

Claude Code Action (Base)

用於使用 Claude 構建自定義 GitHub 工作流程的基礎。這個可擴展框架讓您完全訪問 Claude 的功能,以創建量身定制的自動化。

查看儲存庫 →

快速開始

設置此 action 的最簡單方法是通過終端機中的 Claude Code。只需打開 claude 並運行 /install-github-app

此命令將指導您完成 GitHub 應用程式和所需密鑰的設置。

  • 您必須是儲存庫管理員才能安裝 GitHub 應用程式並添加密鑰
  • 此快速開始方法僅適用於直接使用 Anthropic API 的用戶。如果您使用的是 AWS Bedrock 或 Google Vertex AI,請參閱 與 AWS Bedrock 和 Google Vertex AI 一起使用 部分。

如果設置腳本失敗

如果 /install-github-app 命令失敗或您更喜歡手動設置,請按照以下手動設置說明操作:

  1. 安裝 Claude GitHub 應用程式到您的儲存庫:https://github.com/apps/claude
  2. 將 ANTHROPIC_API_KEY 添加到您的儲存庫密鑰中(了解如何在 GitHub Actions 中使用密鑰
  3. 複製工作流程文件,從 examples/claude.yml 到您儲存庫的 .github/workflows/
1

測試 action

完成快速開始或手動設置後,通過在問題或 PR 評論中標記 @claude 來測試 action!

使用案例示例

Claude Code GitHub Actions 可以幫助您完成各種任務。有關完整的工作示例,請參閱 examples 目錄

將問題轉化為 PR

# In an issue comment:
@claude implement this feature based on the issue description

Claude 將分析問題,編寫程式碼,並建立 PR 供審查。

獲取實現幫助

# In a PR comment:
@claude how should I implement user authentication for this endpoint?

Claude 將分析您的程式碼並提供具體的實現指導。

快速修復錯誤

# In an issue:
@claude fix the TypeError in the user dashboard component

Claude 將定位錯誤,實現修復,並建立 PR。

最佳實踐

CLAUDE.md 配置

在您的儲存庫根目錄創建一個 CLAUDE.md 文件,定義程式碼風格指南、審查標準、項目特定規則和首選模式。此文件指導 Claude 理解您的項目標準。

安全考慮

⚠️ 重要:永遠不要將 API 密鑰直接提交到您的儲存庫!

始終使用 GitHub Secrets 存儲 API 密鑰:

  • 將您的 API 密鑰添加為名為 ANTHROPIC_API_KEY 的儲存庫密鑰
  • 在工作流程中引用它:anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
  • 將 action 權限限制為僅必要的內容
  • 在合併前審查 Claude 的建議

始終使用 GitHub Secrets(例如 ${{ secrets.ANTHROPIC_API_KEY }})而不是在工作流程文件中直接硬編碼 API 密鑰。

優化性能

使用問題模板提供上下文,保持您的 CLAUDE.md 簡潔明了,並為您的工作流程配置適當的超時時間。

CI 成本

使用 Claude Code GitHub Actions 時,請注意相關成本:

GitHub Actions 成本:

  • Claude Code 在 GitHub 託管的執行器上運行,這會消耗您的 GitHub Actions 分鐘數
  • 有關詳細定價和分鐘限制,請參閱 GitHub 的計費文檔

API 成本:

  • 每次 Claude 互動都會根據提示和回應的長度消耗 API 令牌
  • 令牌使用量因任務複雜性和程式碼庫大小而異
  • 有關當前令牌費率,請參閱 Claude 的定價頁面

成本優化提示:

  • 使用特定的 @claude 命令減少不必要的 API 調用
  • 配置適當的 max_turns 限制,防止過度迭代
  • 設置合理的 timeout_minutes 以避免失控的工作流程
  • 考慮使用 GitHub 的並發控制來限制並行運行

配置示例

有關不同用例的現成工作流程配置,包括:

  • 用於問題和 PR 評論的基本工作流程設置
  • 拉取請求上的自動化程式碼審查
  • 針對特定需求的自定義實現

訪問 Claude Code Action 儲存庫中的 examples 目錄

示例儲存庫包含完整、經過測試的工作流程,您可以直接複製到您的 .github/workflows/ 目錄中。

與 AWS Bedrock 和 Google Vertex AI 一起使用

對於企業環境,您可以將 Claude Code GitHub Actions 與您自己的雲基礎設施一起使用。這種方法讓您可以控制數據駐留和計費,同時保持相同的功能。

先決條件

在使用雲提供商設置 Claude Code GitHub Actions 之前,您需要:

對於 Google Cloud Vertex AI:

  1. 啟用了 Vertex AI 的 Google Cloud 項目
  2. 為 GitHub Actions 配置的工作負載身份聯合
  3. 具有所需權限的服務帳戶
  4. GitHub 應用程式(推薦)或使用默認的 GITHUB_TOKEN

對於 AWS Bedrock:

  1. 啟用了 Amazon Bedrock 的 AWS 帳戶
  2. 在 AWS 中配置的 GitHub OIDC 身份提供商
  3. 具有 Bedrock 權限的 IAM 角色
  4. GitHub 應用程式(推薦)或使用默認的 GITHUB_TOKEN
1

創建自定義 GitHub 應用程式(推薦用於第三方提供商)

為了在使用 Vertex AI 或 Bedrock 等第三方提供商時獲得最佳控制和安全性,我們建議創建您自己的 GitHub 應用程式:

  1. 前往 https://github.com/settings/apps/new
  2. 填寫基本信息:
    • GitHub 應用程式名稱:選擇一個唯一的名稱(例如,“YourOrg Claude Assistant”)
    • 主頁 URL:您組織的網站或儲存庫 URL
  3. 配置應用程式設置:
    • Webhooks:取消勾選”Active”(此集成不需要)
  4. 設置所需權限:
    • 儲存庫權限
      • Contents:讀取和寫入
      • Issues:讀取和寫入
      • Pull requests:讀取和寫入
  5. 點擊”創建 GitHub 應用程式”
  6. 創建後,點擊”生成私鑰”並保存下載的 .pem 文件
  7. 記下應用程式設置頁面中的應用程式 ID
  8. 將應用程式安裝到您的儲存庫:
    • 從您的應用程式設置頁面,點擊左側欄中的”安裝應用程式”
    • 選擇您的帳戶或組織
    • 選擇”僅選擇儲存庫”並選擇特定儲存庫
    • 點擊”安裝”
  9. 將私鑰添加為儲存庫的密鑰:
    • 前往您儲存庫的 Settings → Secrets and variables → Actions
    • 創建一個名為 APP_PRIVATE_KEY 的新密鑰,內容為 .pem 文件的內容
  10. 將應用程式 ID 添加為密鑰:
  • 創建一個名為 APP_ID 的新密鑰,內容為您 GitHub 應用程式的 ID

此應用程式將與 actions/create-github-app-token action 一起使用,在您的工作流程中生成認證令牌。

Anthropic API 的替代方案或如果您不想設置自己的 Github 應用程式:使用官方 Anthropic 應用程式:

  1. 從以下網址安裝:https://github.com/apps/claude
  2. 認證不需要額外配置
2

配置雲提供商認證

選擇您的雲提供商並設置安全認證:

3

添加所需密鑰

將以下密鑰添加到您的儲存庫(Settings → Secrets and variables → Actions):

對於 Anthropic API(直接):

  1. 用於 API 認證

  2. 用於 GitHub 應用程式(如果使用您自己的應用程式)

    • APP_ID:您的 GitHub 應用程式 ID
    • APP_PRIVATE_KEY:私鑰(.pem)內容

對於 Google Cloud Vertex AI

  1. 用於 GCP 認證

    • GCP_WORKLOAD_IDENTITY_PROVIDER
    • GCP_SERVICE_ACCOUNT
  2. 用於 GitHub 應用程式(如果使用您自己的應用程式)

    • APP_ID:您的 GitHub 應用程式 ID
    • APP_PRIVATE_KEY:私鑰(.pem)內容

對於 AWS Bedrock

  1. 用於 AWS 認證

    • AWS_ROLE_TO_ASSUME
  2. 用於 GitHub 應用程式(如果使用您自己的應用程式)

    • APP_ID:您的 GitHub 應用程式 ID
    • APP_PRIVATE_KEY:私鑰(.pem)內容
4

創建工作流程文件

創建與您的雲提供商集成的 GitHub Actions 工作流程文件。以下示例顯示了 AWS Bedrock 和 Google Vertex AI 的完整配置:

故障排除

Claude 不回應 @claude 命令

驗證 GitHub 應用程式是否正確安裝,檢查工作流程是否啟用,確保 API 密鑰已設置在儲存庫密鑰中,並確認評論包含 @claude(而不是 /claude)。

CI 不在 Claude 的提交上運行

確保您使用的是 GitHub 應用程式或自定義應用程式(而不是 Actions 用戶),檢查工作流程觸發器是否包含必要的事件,並驗證應用程式權限是否包含 CI 觸發器。

認證錯誤

確認 API 密鑰有效並具有足夠的權限。對於 Bedrock/Vertex,檢查憑證配置並確保密鑰在工作流程中正確命名。

高級配置

Action 參數

Claude Code Action 支持以下關鍵參數:

參數描述必需
prompt發送給 Claude 的提示是*
prompt_file包含提示的文件路徑是*
anthropic_api_keyAnthropic API 密鑰是**
max_turns最大對話回合數
timeout_minutes執行超時

*promptprompt_file 必需其一
**直接使用 Anthropic API 時需要,Bedrock/Vertex 不需要

替代集成方法

雖然 /install-github-app 命令是推薦的方法,但您也可以:

  • 自定義 GitHub 應用程式:對於需要品牌用戶名或自定義認證流程的組織。創建您自己的具有所需權限(內容、問題、拉取請求)的 GitHub 應用程式,並使用 actions/create-github-app-token action 在您的工作流程中生成令牌。
  • 手動 GitHub Actions:直接工作流程配置,提供最大靈活性
  • MCP 配置:動態加載模型上下文協議服務器

有關詳細文檔,請參閱 Claude Code Action 儲存庫

自定義 Claude 的行為

您可以通過兩種方式配置 Claude 的行為:

  1. CLAUDE.md:在您儲存庫的根目錄定義一個 CLAUDE.md 文件,包含編碼標準、審查標準和項目特定規則。Claude 在創建 PR 和回應請求時將遵循這些指南。查看我們的 Memory 文檔 了解更多詳情。
  2. 自定義提示:在工作流程文件中使用 prompt 參數提供工作流程特定的指令。這允許您為不同的工作流程或任務自定義 Claude 的行為。

Claude 在創建 PR 和回應請求時將遵循這些指南。