Blog
Tutorials·15 min read

Claude Code 精通指南 第8篇:生产工作流

从实验走向生产:GitHub Actions 集成、@claude 提及、自动化 PR 审查,以及可扩展的团队工作流。

Jo Vinkenroye·January 15, 2026
Claude Code 精通指南 第8篇:生产工作流

你已经在本地使用了 Claude Code——命令、技能、子代理、MCP 服务器。它改变了你的工作方式。但当你不在终端前呢?你的团队怎么办?

Claude Code 的 GitHub 集成让你可以在 Issue 和 PR 中直接 @提及 Claude。团队成员无需在本地安装任何东西就能获得 AI 辅助。通过 GitHub Actions,Claude 还可以自动审查每一个 PR。

GitHub 集成

只需在任何 PR 或 Issue 中简单地 @claude 提及,Claude 就能:

  • 分析代码 — 审查 PR,解释改动,发现问题
  • 创建 Pull Request — 根据 Issue 描述实现功能
  • 修复 Bug — 调查、定位根因、提交补丁
  • 回答问题 — 解释代码库的模式和架构
  • 遵循你的标准 — 使用你的 CLAUDE.md 约定

所有这些都是异步的。你 @提及 @claude,去喝杯咖啡,回来就看到一个 PR 或详细的分析报告。

安装

最简单的方式是通过 Claude Code 本身:

claude
/install-github-app

这个命令会引导你完成:

  1. 在你的仓库上安装 Claude GitHub App
  2. 授权所需权限
  3. 设置 ANTHROPIC_API_KEY Secret

你需要仓库管理员权限才能完成安装。

手动设置

如果你偏好手动配置:

  1. 创建工作流文件,路径为 .github/workflows/claude.yml
name: Claude Code Assistant
on:
issue_comment:
types: [created]
pull_request:
types: [opened, synchronize]
issues:
types: [opened, labeled]
permissions:
contents: read
pull-requests: write
issues: write
jobs:
claude:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
  1. 添加 API 密钥:仓库 Settings → Secrets → 添加 ANTHROPIC_API_KEY

  2. 提交并推送工作流文件

@claude 提及

安装后,在任何 Issue 或 PR 中 @提及 @claude 即可触发协助。

在 Issue 中

@claude 按照我们的认证模式实现这个功能

Claude 会分析 Issue,创建计划,并开一个包含实现的 PR。

@claude 调查为什么用户在结账流程中遇到超时错误

Claude 探索代码库,识别潜在原因,并报告发现。

在 Pull Request 中

@claude 审查这个 PR 的安全问题

Claude 分析 diff,在特定行上评论,并提供总结。

@claude 解释为什么选择这种方案而不是使用状态机

Claude 阅读更改,理解上下文,并解释推理过程。

在 PR 评论中

@claude 你能把这段代码重构为使用 async/await 而不是回调吗?

Claude 更新代码并向 PR 推送一个新提交。

@claude 为你发现的边界情况添加测试

Claude 编写并提交额外的测试。

工作流触发器

配置 Claude 何时激活:

评论触发(交互式)

on:
issue_comment:
types: [created]

Claude 响应评论中的 @claude 提及。最灵活——团队成员在需要时触发。

PR 触发(自动审查)

on:
pull_request:
types: [opened, synchronize]

Claude 自动审查每个新 PR 以及推送新提交时。添加 prompt 来指定要关注什么:

- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: "Review this PR for security vulnerabilities, performance issues, and adherence to our coding standards"

Issue 触发(自动分类)

on:
issues:
types: [opened, labeled]

Claude 可以对新 Issue 进行分类、添加标签,或在应用特定标签时开始实现。

定时触发(维护)

on:
schedule:
- cron: '0 9 * * 1' # 每周一上午 9 点

运行维护任务:依赖更新、文档刷新、代码库健康检查。

生产工作流模式

模式 1:双环审查

将自动化检查与 AI 审查结合:

jobs:
automated-checks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm ci
- run: npm run lint
- run: npm run typecheck
- run: npm run test
ai-review:
needs: automated-checks
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
Review this PR for:
1. Logic errors the linter wouldn't catch
2. Architecture and design concerns
3. Performance implications
4. Missing edge cases
Automated checks already passed. Focus on higher-level review.

为什么有效: Linter 抓语法问题。Claude 抓设计问题。两者结合起来才全面。

Two buttons meme - 在信任 linter 和信任 Claude 审查之间纠结
Two buttons meme - 在信任 linter 和信任 Claude 审查之间纠结

模式 2:需求驱动开发

从需求到实现的结构化工作流:

1. 需求阶段
└── 创建带验收标准的详细 Issue
└── @claude 创建实现计划
└── 审查并完善计划
2. 实现阶段
└── 批准计划 → Claude 创建 PR
└── 自动化测试运行
└── 人工审查
3. 合并阶段
└── 最终审批
└── 合并并部署

示例 Issue:

## 功能:用户导出
### 需求
- 将用户数据导出为 CSV 或 JSON
- 包括:姓名、邮箱、注册日期、最后登录
- 仅管理员可用
- 每次导出最多 10,000 条记录
### 验收标准
- [ ] 管理后台仪表板上的导出按钮
- [ ] 格式选择(CSV/JSON)
- [ ] 大型导出的进度指示器
- [ ] 超过 1000 条记录的导出通过邮件发送下载链接
@claude 按照 src/exports/ 中现有的导出模式实现

模式 3:Bug 修复流水线

精简的 Bug 调查和修复流程:

## Bug:国际地址结账失败
### 复现步骤
1. 添加商品到购物车
2. 输入非美国国家的收货地址
3. 点击"继续支付"
4. 报错:"Invalid address format"
### 期望行为
结账应支持国际地址
@claude 调查并修复这个 bug

Claude 会:

  1. 分析代码库中的地址处理逻辑
  2. 定位根因
  3. 创建包含修复的 PR
  4. 添加国际地址的测试

模式 4:基于路径的审查

根据变更内容触发不同深度的审查:

jobs:
security-review:
if: contains(github.event.pull_request.changed_files, 'auth/') ||
contains(github.event.pull_request.changed_files, 'payments/')
runs-on: ubuntu-latest
steps:
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
CRITICAL SECURITY REVIEW
This PR modifies authentication or payment code.
Perform a thorough security audit:
- Check for injection vulnerabilities
- Verify authentication/authorization
- Look for data exposure risks
- Validate input sanitization
Flag any concerns for human review before merge.

团队配置

团队共享的 CLAUDE.md

你项目的 CLAUDE.md 同时被本地 Claude Code 和 GitHub Actions 使用。包含团队特定的指令:

重要提示: 当你在 GitHub 上 @提及 Claude 时,它会自动读取你项目的 CLAUDE.md 配置(来自第3篇)来理解团队的标准、约定和限制。

# 团队项目标准
## @claude 触发器
在响应 GitHub 提及时:
- `@claude review` - 带安全重点的完整代码审查
- `@claude implement` - 根据 Issue 描述创建 PR
- `@claude fix` - 调查并修补 Bug
- `@claude explain` - 解释代码或架构决策
- `@claude triage` - 分析并标记新 Issue
## PR 要求
- 所有 PR 在 Claude 审查前需要通过测试
- 安全关键变更需要人工审批
- 数据库迁移需要技术负责人审查
## 编码规范
[你现有的编码标准...]
## 受限区域
不要自动修改:
- config/production.json - 需要人工审查
- database/migrations/ - 需要技术负责人审批
- src/auth/ - 安全关键,标记待审查
- src/payments/ - PCI 合规,标记待审查

权限边界

配置 Claude 能做和不能做的事:

permissions:
contents: read # 可以读取文件
pull-requests: write # 可以评论 PR
issues: write # 可以评论 Issue
# 注意:没有额外配置不能合并 PR

始终要求人工审批合并。 Claude 可以审查、建议甚至提交代码——但最终应该由人来点击合并按钮。

Change my mind meme - Claude 应该不经人工审查自动合并 PR
Change my mind meme - Claude 应该不经人工审查自动合并 PR

认证方式

直接 API(推荐)

- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

最直接的方式。通过你的 Anthropic 账户按 Token 付费。

Amazon Bedrock

- uses: anthropics/claude-code-action@v1
with:
provider: bedrock
aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws_region: us-east-1

适用于拥有 AWS 基础设施的企业环境。

Google Vertex AI

- uses: anthropics/claude-code-action@v1
with:
provider: vertex
gcp_project_id: ${{ secrets.GCP_PROJECT_ID }}
gcp_region: us-central1

适用于使用 Google Cloud 的团队。

成本管理

GitHub Actions 使用量 + API Token 可能累积很快。监控和控制成本:

设置 Token 限制

- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
max_tokens: 4096

限制触发频率

on:
pull_request:
types: [opened] # 只在新开时,不是每次推送
paths:
- 'src/**' # 只在源代码文件变更时
- '!**.md' # 忽略文档变更

使用标签作为门控

on:
pull_request:
types: [labeled]
jobs:
claude-review:
if: github.event.label.name == 'needs-ai-review'

只在添加特定标签时才触发。

最佳实践

1. 指令要具体

# 模糊的(效果差)
@claude review this
# 具体的(效果好)
@claude 审查这个 PR 中新用户搜索端点的 SQL 注入漏洞,
重点关注 src/api/users.ts 中的查询构造

2. 提供上下文

@claude 实现这个功能
应遵循我们在 src/exports/ 中现有导出功能的模式。
使用 ExportJob 队列进行异步处理,
就像我们在报告生成中做的那样。

3. 迭代和完善

像对待一个能从反馈中成长的初级开发者一样对待 Claude:

@claude 接近了,但我们需要处理用户没有邮箱地址的情况。
你能添加一个回退逻辑,改用用户名代替吗?

4. 记录团队命令

为团队创建 @claude 使用参考:

## 团队 @claude 命令参考
- `@claude review` — 完整代码审查 — 用于所有 PR
- `@claude security` — 安全重点审查 — 用于 auth/payment 变更
- `@claude implement` — 创建实现 — 用于功能 Issue
- `@claude fix` — 调查并修补 — 用于 Bug Issue
- `@claude explain` — 解释代码/决策 — 用于新人入职、复杂 PR

提示: 关于在本地组织团队范围的自定义命令(而非仅在 GitHub 中),请参阅第4篇中的全局 vs 项目命令

5. 保护敏感代码

配置 Claude 对关键区域进行标记而非修改:

## 在 CLAUDE.md 中
当审查或实现涉及以下内容的改动时:
- src/auth/
- src/payments/
- config/production.json
- database/migrations/
不要直接修改。相反:
1. 将文件标记为安全关键
2. 描述需要做什么改动
3. 在任何修改之前请求人工审查

故障排除

Claude 不响应提及

  1. 检查工作流文件是否存在于 .github/workflows/claude.yml
  2. 验证 ANTHROPIC_API_KEY Secret 已设置
  3. 检查 Actions 标签页的工作流运行日志
  4. 确认 issue_comment 触发器已配置

响应被截断

Token 限制可能太低。增加 action 配置中的 max_tokens

Claude 做出错误假设

在 CLAUDE.md 中添加更多上下文,或在提及时更具体。

成本太高

  • 使用标签门控触发器代替每个 PR 自动触发
  • 限制到特定文件路径
  • 减少 max_tokens
  • 简单任务用 Haiku,复杂任务用 Opus

下一步

你现在已经将 Claude 集成到了开发工作流中——无论是本地还是 GitHub。命令、技能、子代理、MCP 服务器和 GitHub Actions 给了你一套完整的 AI 辅助开发工具包。

第9篇:高手秘籍中,我们将探索资深用户依赖的高级技巧:Prompt 工程模式、调试策略,以及最大化 Claude 能力的工作流。

Quick Reference

设置/install-github-app

工作流文件.github/workflows/claude.yml

常用 @claude 命令

@claude review — 代码审查

@claude implement — 根据 Issue 构建

@claude fix — 调试并修补

@claude explain — 解释代码

@claude add tests — 编写测试

@claude refactor — 清理代码

工作流触发器

issue_comment — @claude 提及

pull_request — 自动 PR 审查

issues — Issue 分类

schedule — 定时维护

Stay Updated

Get notified about new posts on automation, productivity tips, indie hacking, and web3.

No spam, ever. Unsubscribe anytime.

Comments

Related Posts