Claude Code GitHub Actions
使用 RunAPI 密鑰、模型、權限、觸發器和最小化工作流程配置 Claude Code GitHub Actions。
概覽
官方 anthropics/claude-code-action 在 GitHub Actions 工作流程中執行 Claude Code。本指南將 RunAPI 金鑰儲存為 GitHub Secret,在 Claude Code 設定中設定非敏感的 Base URL,選擇模型,並回應已授權的 @claude 評論。
開始之前
- 您需要代碼庫管理員存取權限,才能安裝 Claude GitHub App、建立 Actions 密鑰及新增工作流程。
- 依照身份驗證指南建立標準 RunAPI API 金鑰。
- 從模型目錄複製支援 Anthropic Messages 的模型識別碼。
- 查閱 Claude Code GitHub Actions 設定及您所在組織的工作流程政策。
安裝
在目標儲存庫的 Claude Code 中,執行 /install-github-app 並按照提示安裝 GitHub App。當系統提示建立 Anthropic 憑證時,請在儲存前停止:本指南改用 RunAPI 儲存庫或組織密鑰。
如需手動設定,請安裝 Claude GitHub App,然後將以下
工作流程新增至 .github/workflows/claude.yml。
配置 RunAPI
建立名為
RUNAPI_API_KEY 的存儲庫或組織 Actions 密鑰。僅通過操作的密鑰輸入傳遞:
anthropic_api_key: ${{ secrets.RUNAPI_API_KEY }}
請勿將金鑰放入工作流程檔案或 action 的 settings JSON 中。
action 會單獨處理設定;只有非敏感的 Base
URL 應放在那裡。
以下最簡互動工作流程監聽新的議題及拉取請求審查評論:
name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
jobs:
claude:
if: contains(github.event.comment.body, '@claude')
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
actions: read
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 1
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.RUNAPI_API_KEY }}
settings: |
{
"env": {
"ANTHROPIC_BASE_URL": "https://runapi.ai"
}
}
claude_args: "--model YOUR_RUNAPI_MODEL_ID"
密鑰
GitHub 不會將普通 Actions 密鑰傳遞給來自 fork pull request 或 Dependabot 事件觸發的工作流程。若某次執行沒有憑證,請在輪換 RunAPI 金鑰前確認事件來源。有關儲存庫和組織範圍,請使用 GitHub 的 Actions 密鑰指南。
權限
contents: write允許操作提交代碼更改。pull-requests: write和issues: write允許其讀取並回覆觸發該操作的對話。id-token: write支援操作預設的 GitHub App 身份驗證。actions: read允許其查看工作流程結果。
使用這些明確的權限,而非 write-all。移除
您的工作流程不需要的功能。
觸發事件
issue_comment 涵蓋議題及拉取請求對話中的留言;pull_request_review_comment 涵蓋差異行上的留言。工作流程檔案必須存在於預設分支上,issue_comment 才能觸發它。此動作亦會檢查誰發起了執行;請以官方安全行為作為權威參考。
選擇模型
將 claude_args 中的 YOUR_RUNAPI_MODEL_ID 替換為模型目錄中的確切識別符。將模型選擇置於 settings.env 之外,可使工作流程所選的模型在操作設定中清晰可見。
驗證
- 確認
RUNAPI_API_KEY密鑰已存在,但不要打印其值。 - 將工作流程合併至預設分支,並確認 Actions 已啟用。
- 從擁有代碼庫寫入權限的帳戶,在議題留言中新增
@claude describe this repository in one sentence。 - 開啟工作流程運行記錄,確認操作成功,並驗證 Claude 已在同一議題中回覆。
疑難排解
- 未啟動任何工作流程: 請確認檔案位於預設分支,評論事件相符,且 Actions 已啟用。
- 任務被跳過: 請確認評論包含
@claude,且操作者擁有所需的儲存庫存取權限。 - 身份驗證失敗: 請確認工作流程引用了
secrets.RUNAPI_API_KEY,如有需要,請透過身份驗證指南輪換金鑰。 - Fork 的 pull request 無法使用金鑰: GitHub 刻意對 fork 觸發的執行隱藏普通 secrets。請勿以明文替換該 secret。
- 模型不可用: 請從模型目錄複製確切的識別碼。
- Claude 的提交未啟動另一個工作流程: 請查閱官方 action 的 GitHub token 疑難排解。
後續步驟
使用 LLM API 快速入門 了解協定行為,使用 Anthropic Messages API 參考 查看請求欄位。如需更多觸發器及操作輸入,請使用官方範例及配置參考。