Automate issue triage & pull request reviews with Gemini CLI Github Action

Google for DevelopersAbout 5 min readAug 14, 2025Watch original
THE SUMMARYAI-generated

Key Concepts

  • Gemini CLI: An open-source AI agent from Google that brings the power of Gemini directly into the terminal.
  • GitHub Action: A feature of GitHub that automates tasks within a repository.
  • Issue Triage: The process of categorizing and prioritizing issues reported in a software project.
  • Pull Request Review: The process of reviewing code changes proposed in a pull request before they are merged into the main codebase.
  • ASCII Art: A graphic design technique that uses computers for presentation and consists of pictures pieced together from the 95 printable (from a total of 128) characters defined by the ASCII Standard from 1963 and ASCII-compliant character sets with proprietary extended characters (beyond the 95 printable ones).
  • Font Selection: The ability to choose different fonts for displaying text.
  • Code Commit: Saving changes to a repository.

1. Introduction to Gemini CLI GitHub Action

  • Jerop Kipruto, a software engineer at Google, introduces Gemini CLI GitHub Action, now in beta.
  • Gemini CLI is an open-source AI agent that brings the power of Gemini directly into the terminal.
  • The tool was initially used internally to manage contributions to the Gemini CLI project on GitHub by automating issue triage and pull request reviews.
  • The GitHub Action can be used in two ways:
    • Automate routine tasks in repositories.
    • Act as an on-demand collaborator on issues and pull requests.

2. End-to-End Software Development Lifecycle Example: Adding Font Selection to Logo Maker

  • The example focuses on adding font selection to a logo maker application that uses ASCII Art.
  • The initial logo maker only allowed a fixed set of fonts.
  • The goal is to enable users to select different fonts from a dropdown menu.

3. Filing a Feature Request

  • A feature request for font selection is filed as a GitHub issue.
  • The issue description specifies the need for a dropdown menu to try out different font options.

4. Automated Issue Triage and Task Delegation

  • Gemini CLI automatically categorizes the issue and applies appropriate labels based on the issue description.
  • The task is delegated to Gemini CLI by @ mentioning gemini-cli in a comment with a prompt to implement the feature.

5. Gemini CLI's Execution Plan

  • Gemini CLI starts a GitHub Action in the background.
  • It checks out the code and analyzes the issue request.
  • It generates a plan that includes:
    • Backend changes to app.py.
    • Frontend changes to index.html.
    • Committing the changes to the repository.

6. Code Review and Summary

  • After executing the task, Gemini CLI provides a summary of the changes made.
  • It implemented the font selection feature, allowing users to choose fonts from a dropdown menu.
  • A link to the pull request containing the changes is provided.

7. Pull Request Review and Initial Changes

  • The pull request is reviewed to examine the changes made by Gemini CLI.
  • The hard-coded fonts were replaced with a library to provide font options.
  • Frontend changes were added to enable font selection.

8. Automated Pull Request Review and Feedback

  • Gemini CLI performs an automated review of the pull request.
  • It identifies that the default font is hard-coded and suggests using a constant instead.
  • It also suggests disabling the selected option in the dropdown menu for a better user experience.

9. Incorporating Feedback and Creating a New Commit

  • The feedback from Gemini CLI is incorporated by collaborating with it again.
  • A new commit is created to address the suggested improvements.

10. Demonstration of the Updated Application

  • The updated application is demonstrated, showing the font selection dropdown menu.
  • Different fonts are selected and the generated ASCII Art is displayed.

11. Conclusion

  • The example demonstrates an end-to-end workflow using Gemini CLI GitHub Action to add a new feature (font selection) to an application.
  • Jerop Kipruto encourages viewers to explore the source code on GitHub and start using Gemini CLI GitHub Action.

Key Quotes

  • "Recently, we launched Gemini CLI, an open source AI agent that brings the power of Gemini directly into your terminal." - Jerop Kipruto
  • "So, today, we're launching Gemini CLI GitHub Action now in beta." - Jerop Kipruto
  • "This allowed us to manage the influx of contributions into the project." - Jerop Kipruto

Technical Terms and Concepts

  • Gemini CLI: An AI agent that brings the power of Gemini directly into the terminal.
  • GitHub Action: An automated workflow within a GitHub repository.
  • Issue: A report of a bug, feature request, or other task in a software project.
  • Pull Request: A proposal to merge code changes into a repository.
  • ASCII Art: A visual representation created using ASCII characters.
  • Repository: A storage location for code and other files.
  • Commit: A saved change to a repository.

Logical Connections

  • The introduction sets the stage by explaining what Gemini CLI GitHub Action is and its purpose.
  • The example provides a concrete use case of how the tool can be used in a software development lifecycle.
  • The steps of filing a feature request, delegating the task, reviewing the code, and incorporating feedback are logically connected to demonstrate the end-to-end workflow.
  • The conclusion summarizes the example and encourages viewers to use the tool.

Synthesis/Conclusion

Gemini CLI GitHub Action is a powerful tool for automating tasks and collaborating on software development projects. The example of adding font selection to a logo maker demonstrates how it can be used to streamline the development process, from filing a feature request to incorporating feedback and creating a final product. The tool's ability to automate issue triage, generate execution plans, and provide code review feedback makes it a valuable asset for software development teams.

AI summaries can miss context or contain errors. Check important details against the original video.

Go a little deeper.

Have a question about this video? Load its transcript to open the video chat.