把 Google Gemini 装进 GitHub,让 AI 替你写代码、审 PR、管 Issue

十分钟读完,二十分钟即可跑起来。专科以上学历就能看懂,不玩概念,只讲落地。


为什么要让 AI 住进仓库

每天打开 GitHub,你可能会遇到这些场景:

  • 🍄
    刚提的 Pull Request 没人审,合并按钮永远是灰色。
  • 🍄
    Issues 里堆满“帮看看”“+1”,真正的优先级却没人整理。
  • 🍄
    想写单元测试,但 deadline 就在眼前。

run-gemini-cli 这个官方开源的 GitHub Action,把 Google Gemini 直接塞进你的工作流:

  • 🍄
    自动审 PR:代码变更一推送就收到人类可读的评审意见。
  • 🍄
    智能分类 Issue:根据描述自动打标签、分优先级。
  • 🍄
    随时召唤 AI 助理:在评论里 @gemini-cli 就能让它解释代码、补测试、修 Bug。

一句话:把重复的事交给 AI,把时间留给创造


它能做什么?一张表看懂

场景 触发方式 AI 能帮你做的事
Pull Request 评审 新建 PR 或手动评论 /review 代码风格检查、潜在 Bug 指出、改进建议
Issue 分类 新建 Issue 或手动评论 /triage 打标签、定优先级、给出下一步建议
通用问答 任意评论 @gemini-cli + 问题 解释代码、生成测试、重构方案、文档补全
定时任务 按 cron 表 每晚跑静态检查、生成日报

快速上手:四步把 AI 装进仓库

全程不需要本地安装,浏览器里点点就能完成。

步骤 1:拿到 Gemini 的“通行证”

  1. 打开 Google AI Studio(用任意 Google 账号)。
  2. Create API Key,复制那一长串字符串。

步骤 2:把钥匙锁进 GitHub

  1. 进入你的仓库 → Settings → Secrets and variables → Actions
  2. New repository secret
  3. Name 填 GEMINI_API_KEY,Value 粘贴刚才复制的字符串。

这样 AI 就能在 GitHub 服务器里安全调用 Gemini,不会泄露给任何人。

步骤 3:挑一条现成工作流

你有两条路可选:

  • 🍄
    懒人推荐:把 examples/workflows 目录下的 YAML 文件直接复制到 .github/workflows 目录。
  • 🍄
    极客玩法:打开终端,运行 gemini,输入 /setup-github,它会帮你自动生成并推送工作流文件。

步骤 4:第一次试跑

  • 🍄
    提一个新的 Pull Request,标题随便写。
  • 🍄
    等几十秒,你会看到 PR 下方出现一条来自 gemini-bot 的“代码评审”。
  • 🍄
    或者在任意 Issue 下评论 @gemini-cli /triage,AI 会自动回复优先级和下一步动作。

深度指南:把 AI 调教成“自家员工”

如何让它更懂你的代码风格

在项目根目录新建 GEMINI.md,像写团队手册一样告诉 AI:

# 项目约定
- 使用 2 个空格缩进,不用 tab。  
- 函数名用 camelCase,常量用 UPPER_SNAKE_CASE。  
- 所有公开函数必须带 JSDoc 注释。

AI 会把这份文档当作“上岗必读”,之后的评审、补测试都会按这个风格来。


常见问题(FAQ)

把大家最常问的问题一次性答完。

Q1:收费吗?
A:Google AI Studio 的 API Key 有免费额度,跑开源项目足够;用量大了再考虑升级。

Q2:会泄露源码吗?
A:代码只在 GitHub 官方 runner 内存里传给 Google,不会被持久化,也不会进 Gemini 的公开训练集。

Q3:能同时用 Vertex AI 吗?
A:可以。把工作流里的 use_vertex_ai: true 打开,再配好 GCP 的 Workload Identity 即可。

Q4:企业私有仓库能用吗?
A:能,只要仓库能跑 GitHub Actions 就能用,无需把代码搬到外部。

Q5:能审私有依赖包吗?
A:可以。AI 能看到 PR 里所有改动文件,但不会把依赖包内容外传。


进阶玩法:三条工作流模板

下面给出最常用 3 个 YAML 文件的最小可用配置,复制即用。

1) 自动审 PR

# .github/workflows/pr-review.yml
name: Gemini PR Review
on:
  pull_request:
    types: [opened, synchronize]
jobs:
  review:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: google-gemini/run-gemini-cli@main
        with:
          gemini_api_key: ${{ secrets.GEMINI_API_KEY }}
          prompt: "你是资深代码审查者,请逐行检查代码质量并给出具体改进建议。"

2) Issue 自动分类

# .github/workflows/issue-triage.yml
name: Gemini Issue Triage
on:
  issues:
    types: [opened, edited]
jobs:
  triage:
    runs-on: ubuntu-latest
    steps:
      - uses: google-gemini/run-gemini-cli@main
        with:
          gemini_api_key: ${{ secrets.GEMINI_API_KEY }}
          prompt: "根据标题和正文,给 issue 打上 bug/enhancement/question 标签并写一句下一步建议。"

3) 万能 AI 助理

# .github/workflows/gemini-cli.yml
name: Gemini On-Demand Assistant
on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
jobs:
  chat:
    if: contains(github.event.comment.body, '@gemini-cli')
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: google-gemini/run-gemini-cli@main
        with:
          gemini_api_key: ${{ secrets.GEMINI_API_KEY }}
          prompt: ${{ github.event.comment.body }}

参数速查表

当你想微调行为时,只需改 YAML 里的 with: 字段。

参数 默认值 用途示例
prompt “You are a helpful assistant.” 自定义 AI 身份,如“你是熟悉 React 的资深工程师”
settings 把复杂规则写成 JSON,写进 .gemini/settings.json
use_vertex_ai false 设为 true 即切到 Vertex AI,适合企业级用量
gemini_cli_version latest 想锁定版本就写 v1.2.3

故障排查:三分钟定位问题

现象 可能原因 解决
工作流没触发 YAML 文件放错目录 确认在 .github/workflows 且扩展名 .yml
AI 没回复 API Key 没设置 检查 Secrets 里是否有 GEMINI_API_KEY
报错 403 仓库限制了 Actions Settings → Actions → 设为 “Allow all actions”
回复乱码 非 UTF-8 文件 统一代码文件编码为 UTF-8

写在最后

run-gemini-cli 不是“换个地方聊天的玩具”,而是把 AI 能力拆成可组合、可审计、可回滚的 GitHub Actions。
当你把重复劳动交给 AI,就能把注意力放在真正的创造:架构设计、产品体验、社区建设。

现在就打开你的仓库,花 20 分钟跑完上面的四步,让 AI 成为你团队里最勤奋的新同事。