每个 PR 都有人工代码审查,成本高、速度慢。Claude Code GitHub Actions 让 AI 自动完成初步审查、实现 Issue 需求、修复 Bug——全程在 GitHub CI 环境里运行,你只需在 PR 或 Issue 里 @claude 一声。
能做什么?
- 自动代码审查:每个 PR 自动分析安全漏洞、代码规范、潜在 Bug
- Issue 转 PR:在 Issue 里
@claude 实现这个功能,Claude 直接提交 PR - 自动修复 Bug:在 PR 评论里
@claude 修复这个问题,Claude push commit - 执行自定义任务:生成文档、跑测试、更新 Changelog 等
5 分钟快速配置
Step 1:安装 GitHub App
在 Claude Code 终端运行:
claude
/install-github-app按提示完成:
- 安装 GitHub App(需要仓库 Admin 权限)
- 授予权限:Contents(读写)、Issues(读写)、Pull Requests(读写)
或手动安装:访问 github.com/apps/claude
Step 2:添加 API Key Secret
在仓库 Settings → Secrets and variables → Actions 里添加:
ANTHROPIC_API_KEY = sk-ant-xxxxx
Step 3:创建 Workflow 文件
在仓库里创建 .github/workflows/claude.yml:
name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
pull_request_review:
types: [submitted]
jobs:
claude:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
steps:
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}完成!现在在任何 PR 或 Issue 里 @claude 就能触发。
核心使用场景
场景 1:按需 PR 代码审查
在 PR 评论里:
@claude 请审查这个 PR,重点关注:
1. 安全漏洞(SQL 注入、XSS、认证绕过)
2. 边界条件和错误处理
3. 是否符合 CLAUDE.md 里的代码规范
Claude 会读取 diff,给出详细的逐行评审意见。
场景 2:Issue 自动实现
在 Issue 里:
@claude 请实现这个功能:
用户个人资料页面需要支持头像上传,
最大 2MB,支持 JPG/PNG,
上传后裁剪为 200x200 圆形
实现完成后创建 PR
Claude 会:
- 读取当前代码库了解架构
- 实现功能(前端上传组件 + 后端处理)
- 写测试
- 提交代码并创建 PR
场景 3:PR 里快速修复
在 PR 评论里:
@claude 这里的错误处理太简单了,
空值情况没有覆盖,
帮我改进一下
Claude 直接 push 一个 commit 修复。
场景 4:自动生成 Changelog
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
根据这个 PR 的改动,更新 CHANGELOG.md。
格式参考现有条目,放在 [Unreleased] 节下面。每个 PR 自动审查(无需触发)
如果想每个 PR 都自动触发审查而不需要 @claude,用 Code Review 模式:
name: Automatic PR Review
on:
pull_request:
types: [opened, synchronize]
jobs:
review:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
审查这个 PR。检查:
- 潜在 Bug 和边界条件
- 安全问题
- 性能影响
- 与现有代码风格的一致性
只报告值得关注的问题,不要挑剔小事。高级配置
指定模型
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
claude_args: --model claude-opus-4-6 # 用最强模型做复杂任务限制对话轮数(控制成本)
claude_args: --max-turns 10追加系统提示
claude_args: --append-system-prompt "只用中文回复,遵循公司内部代码规范"限制可用工具(安全)
claude_args: --allowedTools "Read,Write,Bash(git diff:git log:npm test)"使用 AWS Bedrock(企业用户)
- uses: anthropics/claude-code-action@v1
with:
use_bedrock: true
claude_args: --model us.anthropic.claude-sonnet-4-5-20251001-v2:0
env:
AWS_REGION: us-east-1
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}CLAUDE.md 在 CI 里同样生效
Claude Code GitHub Actions 会读取仓库里的 CLAUDE.md,所以你的项目规范自动应用于 CI:
# CLAUDE.md(自动被 CI 里的 Claude 读取)
## 代码规范
- 使用 TypeScript strict mode
- 所有公共函数必须有 JSDoc
## 审查重点
- API 端点必须有输入验证
- 数据库查询使用参数化,防 SQL 注入
- 敏感数据不能出现在日志里安全注意事项
- API Key 用 GitHub Secrets 存储,不要硬编码在 workflow 里
- Fork PR 触发限制:默认不响应外部 fork 的 PR,防止 API Key 泄露
- 权限最小化:workflow 里只给必要的
permissions - 代码在 GitHub Runner 上执行,不经过第三方服务器
常见问题
@claude 没有响应?
- 检查 GitHub App 是否安装在正确仓库
- 确认
ANTHROPIC_API_KEYSecret 名称正确 - 查看 Actions Tab 里的运行日志
Claude 的 commit 没有触发后续 CI?
- 这是 GitHub 的安全限制,需要用 Personal Access Token 代替 GITHUB_TOKEN
- 在 workflow 里配置
github_token: ${{ secrets.PAT_TOKEN }}
来源:Claude Code GitHub Actions 文档 | Anthropic 官方