实战

Claude Code GitLab CI/CD 完整指南:@claude 创建 MR、Bedrock/Vertex 企业部署

Claude Code GitLab CI/CD 官方文档中文整理:beta 状态、工作原理、最小 .gitlab-ci.yml、masked CI/CD variables、issue/MR 评论触发、AI_FLOW_INPUT/AI_FLOW_CONTEXT、GitLab MCP server、Bedrock/Vertex AI 企业认证和安全建议。

2026/5/203分钟 阅读ClaudeEagle

Claude Code GitLab CI/CD 让你在 GitLab issue、MR 和 pipeline 中调用 Claude。它目前是 beta,由 GitLab 维护,底层基于 Claude Code CLI 和 Agent SDK。


为什么在 GitLab 里用 Claude Code?

它能把评论里的需求转成 GitLab MR:

text
@claude implement this feature based on the issue description

Claude 会读取 issue/MR 上下文、仓库代码和 CLAUDE.md,在 GitLab runner 中执行任务,然后通过 MR 交付结果。

典型能力:

  • 从 issue 描述创建 MR
  • 根据 MR 评论继续修改代码
  • 分析性能回归并提出优化
  • 修复测试失败或异常
  • 在企业 runner 中运行,保留现有 branch protection 和 approvals

工作原理

  1. GitLab 监听事件:评论、MR、手动 pipeline、API trigger
  2. Job 收集上下文:线程内容、仓库、分支、MR 信息
  3. Job 构造 Prompt 并运行 Claude Code CLI
  4. Claude 在容器中读写代码
  5. 结果通过分支/MR 回到 GitLab

关键点:它运行在你的 GitLab runner 中,所以比纯托管方案更容易满足企业网络、区域和权限要求。


最小配置思路

.gitlab-ci.yml 至少需要:

  • 一个 ai stage
  • Node 或包含 Claude Code 的镜像
  • 安装 git/curl/bash 等基础工具
  • 调用 Claude Code CLI
  • 在 GitLab 设置中添加 masked CI/CD variable:ANTHROPIC_API_KEY

Job 可以根据 CI_PIPELINE_SOURCE 区分手动触发、MR 触发或 API 触发。


mention-driven 触发

可以用 webhook 或事件监听器捕捉评论里的 @claude,再调用 pipeline trigger API,并传入:

  • AI_FLOW_INPUT:用户评论内容
  • AI_FLOW_CONTEXT:issue/MR 上下文
  • AI_FLOW_EVENT:触发事件类型

例如:

text
@claude fix the TypeError in the user dashboard component

Job 中的 Claude 会拿到这段输入并执行修复。


企业部署:Bedrock 与 Vertex AI

如果企业不能直接使用 Claude API,可以改用云厂商托管模型。

Amazon Bedrock 方案通常需要:

  • Bedrock 模型访问权限
  • GitLab OIDC identity provider
  • IAM role,限定项目和 protected refs
  • CI/CD variables:AWS_ROLE_TO_ASSUMEAWS_REGION

Google Vertex AI 方案通常需要:

  • Vertex AI API
  • Workload Identity Federation
  • 专用 service account
  • CI/CD variables:GCP_WORKLOAD_IDENTITY_PROVIDERGCP_SERVICE_ACCOUNTCLOUD_ML_REGION

两者的共同目标都是避免长期静态密钥,让 runner 用 OIDC/WIF 换取短期凭证。


安全最佳实践

  • 使用 masked/protected variables
  • 最小化 allowed tools
  • 所有变更通过 MR,不直接 push main
  • 对 runner 网络 egress 做限制
  • 保护分支与审批规则继续生效
  • 对 Bedrock/Vertex 使用 OIDC/WIF,而不是长期 key
  • CLAUDE.md 写清测试命令、禁止目录和审查标准

来源:Claude Code 官方文档 - GitLab CI/CD | 整理:ClaudeEagle

相关文章推荐

实战Claude Code GitLab CI/CD 集成指南:@claude 触发 MR 自动化与 Bedrock/Vertex AI 企业配置Claude Code GitLab CI/CD 集成完整指南:事件驱动编排原理(@claude 触发/沙箱执行/MR 审批流)、两步快速配置(ANTHROPIC_API_KEY 掩码变量 + .gitlab-ci.yml Job)、AWS Bedrock OIDC 认证示例、Google Vertex AI Workload Identity 示例、CLAUDE.md CI 专用配置、安全最佳实践(掩码变量/分支保护/工具范围限制),以及三大常见问题排查。2026/3/5实战Claude Code 跨会话协作实战:用 SendMessage 和 ListAgents 串联你的多台设备解析 Claude Code v2.1.224 新增的跨会话消息能力,探讨 SendMessage/ListAgents 的实战用法、crossSessionInbound 安全边界与多设备协作的应用潜力。2026/8/7实战Claude Code 长会话优化实战:让 CLAUDE.md 规则在 Compaction 后依然存活实战教学:基于官方 Compaction 存活规则表,指导你如何重新组织 CLAUDE.md 规则、调整 SKILL.md 写作顺序、合理使用 /compact focus 和 /clear,确保关键约定在长会话压缩后仍然存活,附完整检查清单。2026/7/12实战Claude Code Agent Teams 实战:三视角协作设计一个 CLI 工具基于官方文档实例,实战演示如何启用 Claude Code Agent Teams 并用三个视角(UX、技术架构、唱反调)协作探索一个 CLI 工具的设计方案,详解空闲行显示逻辑、折叠交互、In-process 与 Split panes 两种显示模式的适用场景。2026/7/12实战Claude Code 实战:Desktop 内置浏览器 + Auto Mode 组合,从查文档到自动提交 PR通过一个真实集成第三方 API 的完整场景,演示 Claude Code Desktop 内置浏览器与 Auto Mode 组合使用如何实现从查阅官方文档、编写集成代码、本地预览验证到提交推送创建 PR 的端到端自动化,并梳理背后的多层安全边界设计。2026/7/11实战Claude Code 生产力工具箱:MCP + GitHub Actions + Prompt Caching 三件套实战组合实战讲解如何组合 MCP 数据连接、GitHub Actions 自动化和 Prompt Caching 优化,搭建从 Issue 到 PR 的完整自动化工作流,并给出权限最小化配置和团队级实战检查清单。2026/7/6