Skip to main content

Image

Gemini Actions Lab

English 日本語 GitHub Actions Gemini PyPI

💬 Gemini CLI


📖 概要

このリポジトリは、GoogleのGemini AIをGitHub Actionsと統合するための実験室およびショーケースとして機能します。生成AIの力を利用して、さまざまなリポジトリ管理タスクを自動化する方法を示します。

🎯 主な機能

  • AIによる自動化: Geminiを活用して、Issueのトリアージ、プルリクエストのレビューなどのタスクを処理します。
  • CLIライクな対話: Issueのコメントから直接AIアシスタントと対話します。
  • 拡張可能なワークフロー: 独自のプロジェクトに合わせてワークフローを簡単に適応およびカスタマイズできます。

🤖 ワークフロー概要

このリポジトリには、以下のGitHub Actionsワークフローが含まれています(詳細は .github/workflows/architecture.md を参照):

  • gemini-cli.yml: 英語CLI。Issue/PR/コメント/手動でAIコマンドを実行
  • gemini-jp-cli.yml: 日本語CLI。Issue/PR/コメント/手動でAIコマンドを実行
  • gemini-pr-review.yml: PRレビュー自動化(MCP GitHubサーバー経由でコメント)
  • gemini-issue-automated-triage.yml: 新規/更新Issueの自動トリアージ
  • gemini-issue-scheduled-triage.yml: 定期スキャンで未トリアージIssueを一括処理
  • imagen4-issue-trigger-and-commit.yml: イシュー由来の画像生成→コミット
  • imagen4-generate-and-commit.yml: 手動/ディスパッチで画像生成→コミット
  • gemini-release-notes.yml: リリース画像生成とリリースノートの自動作成
  • static-site.yml: リポジトリ内容をGitHub Pagesに公開
  • sync-to-report-gh.yml: 旧テンプレ(現状は参考用)

ワークフローの構成・相互関係・実装詳細は、.github/workflows/architecture.md に集約しています。

🚀 リモートワークフロー(新機能)

複数のリポジトリでワークフローを使いたい場合、リモートワークフローシステムを使うとメンテナンスが超楽になるよ〜✨

メリット:

  • ✅ Pythonスクリプトのコピー不要(リモートから自動取得)
  • ✅ スクリプトの更新は1箇所でOK
  • ✅ メンテナンスコスト90%削減

使い方:

# ワークフローファイルをコピー(スクリプトは不要!)
curl -o .github/workflows/pr-review-kozaki.yml \
  https://raw.githubusercontent.com/Sunwood-ai-labsII/gemini-actions-lab/main/.github/workflows_remote/pr-review-kozaki-remote.yml

詳細は .github/workflows_remote/README.md を参照!


🏗️ アーキテクチャ

アーキテクチャ図やワークフローの詳細な説明は、.github/workflows/architecture.md を参照してください。

💬 Discord Issue Bot(任意)

  • Discord から GitHub Issue を作成する最小ボット
  • discord-issue-bot/.env にローカルでトークン設定(リポジトリには含めない)
  • 起動例: docker compose -f docker-compose.yaml up -d --build

📸 スクリーンショットと例

🤖 CLIの対話例

Issueを作成し、@gemini-cli-jp /helpとコメントして、利用可能なコマンドを確認します:

@gemini-cli-jp /help

AIアシスタントが利用可能なコマンドと使用例を返信します。

💬 対話の例

コードレビューのリクエスト:

@gemini-cli-jp /review-pr
このプルリクエストをレビューし、改善点を提案してください

Issueのトリアージ:

@gemini-cli-jp /triage
このIssueを分析し、適切なラベルと担当者を提案してください

🚀 インストールとセットアップ

前提条件

  • リポジトリ作成権限のあるGitHubアカウント
  • Google AI StudioのGemini APIキー
  • GitHub Actionsの基本的な理解

クイックスタート

  1. このリポジトリをフォークして、自分のGitHubアカウントにコピーします
  2. リポジトリの設定でGitHubシークレットを設定します:
    • GEMINI_API_KEY: あなたのGemini APIキー
    • GITHUB_TOKEN: (自動的に提供されます)
  3. .github/workflows/からあなたのリポジトリにワークフローファイルをコピーします
  4. あなたのニーズに合わせてワークフローをカスタマイズします
  5. Issueを作成し、@gemini-cli-jp /helpとコメントしてセットアップをテストします

🛠️ gemini-actions-lab CLI

リポジトリに付属する gemini-actions-lab-cli(エイリアス: gal)を使うと、シークレット同期やテンプレートワークフローの取得をコマンド一発で実行できます。

インストール

PyPI から直接インストールできます。

pip install gemini-actions-lab-cli

ローカル開発でソースを同期したい場合は uv によるセットアップもサポートしています。

uv sync

シークレットの同期

.secrets.env(任意のファイルを --env-file で指定可能)に定義した値を、リポジトリシークレットへ一括で作成・更新します。

gal sync-secrets --repo <owner>/<repo> --env-file path/to/.secrets.env
  • コマンド実行ディレクトリの .env ファイルは自動的に読み込まれ、GITHUB_TOKEN など CLI 実行に必要な環境変数を設定できます。
  • リポジトリへ同期したい secrets は .secrets.env に分離してください(任意のファイルを --env-file で指定可)。
  • GITHUB_TOKEN 環境変数、または --token オプションで GitHub の個人アクセストークンを指定してください。

AIエージェントガイドラインの同期

.github/ai-guidelines ディレクトリに格納されているAIエージェントガイドラインをリポジトリに同期できます。

# デフォルトブランチに同期
uv run gal sync-agent --repo Sunwood-ai-labs/my-repo

# 特定のブランチに同期
uv run gal sync-agent --repo Sunwood-ai-labs/my-repo --branch develop

# カスタムメッセージで同期
uv run gal sync-agent --repo Sunwood-ai-labs/my-repo --message "docs: update AI agent guidelines"

🚀 クイックスタート

よく使う同期コマンドは下記のとおりです(Pages 連携とトップページのコピー込み)。

gal sync-workflows \
  --repo Sunwood-ai-labs/demo-001 \
  --destination . \
  --clean \
  --enable-pages-actions \
  --include-index

🎯 特定のワークフローのコピー(新機能!)

.github/workflows_remote または .github/workflows から、指定したワークフローファイルをコピーできます。

単一のワークフローをコピー

# workflows_remote から特定のワークフローをコピー 🎯
gal sync-workflows \
  --workflow gemini-release-notes-remote.yml \
  --use-remote \
  --destination .

# 通常の workflows から特定のワークフローをコピー
gal sync-workflows \
  --workflow gemini-cli.yml \
  --destination .

複数のワークフローをコピー(NEW!✨)

# 複数のワークフローを一度にコピー 🎯
gal sync-workflows \
  --workflows gemini-cli.yml gemini-jp-cli.yml pr-review-kozaki-remote.yml \
  --destination .

# リモートリポジトリに直接同期
gal sync-workflows \
  --workflows gemini-cli.yml gemini-jp-cli.yml \
  --repo Sunwood-ai-labs/my-repo \
  --overwrite-github

プリセットの使用(NEW!✨)

よく使う組み合わせをプリセットとして用意しています。

# 利用可能なプリセット一覧を表示
gal sync-workflows --list-presets

# プリセットを使ってワークフローをコピー
gal sync-workflows --preset pr-review --destination .

# プリセット + リモート同期
gal sync-workflows \
  --preset basic \
  --repo Sunwood-ai-labs/my-repo \
  --overwrite-github

利用可能なプリセット:

  • pr-review: PR レビューワークフロー(Kozaki, Onizuka, Yukimura)
  • gemini-cli: Gemini CLI ワークフロー(英語+日本語)
  • release: リリース自動化ワークフロー
  • imagen: 画像生成ワークフロー
  • basic: 新規リポジトリ用の基本ワークフロー
  • full-remote: すべてのリモートワークフロー
  • standard: 標準プロダクションワークフロー(CLI, Release Articles, Release Notes, PR Review 3種, Static Site)

Note: プリセットは src/gemini_actions_lab_cli/workflow_presets.yml で管理されています。カスタムプリセットを追加したい場合は、このYAMLファイルを編集してください✨

オプション説明:

  • --workflow: コピーしたいワークフローファイル名(単一)
  • --workflows: コピーしたいワークフローファイル名(複数、スペース区切り)
  • --preset: プリセット名(--workflow や --workflows より優先)
  • --use-remote: .github/workflows_remote から優先的に取得(なければ workflows から自動フォールバック)
  • --overwrite-github: 既存ファイルを上書き
  • --list-presets: 利用可能なプリセット一覧を表示

uv run を利用して開発用に実行する場合は、uv run gal ... と置き換えてください。

オプションの詳細やその他のユースケースは src/README.md を参照してください。


📁 ディレクトリ構造

.
├── .github/
│   └── workflows/
│       ├── architecture.md
│       ├── gemini-cli.yml
│       ├── gemini-jp-cli.yml
│       ├── gemini-pr-review.yml
│       ├── gemini-issue-automated-triage.yml
│       ├── gemini-issue-scheduled-triage.yml
│       ├── imagen4-issue-trigger-and-commit.yml
│       ├── imagen4-generate-and-commit.yml
│       ├── gemini-release-notes.yml
│       ├── static-site.yml
│       └── sync-to-report-gh.yml
├── discord-issue-bot/
│   ├── Dockerfile
│   ├── pyproject.toml
│   ├── docker-compose.yaml
│   └── bot.py
├── .gitignore
├── LICENSE
└── README.md

🤖 Discord Issue Bot

Discord から直接 GitHub Issue を作成する最小ボットの詳細なドキュメントは、以下を参照してください。

📝 ライセンス

このプロジェクトは、LICENSEファイルの条件に基づいてライセンスされています。


© 2025 Sunwood-ai-labsII


Release files for gemini-actions-lab-cli 0.11.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gemini-actions-lab-cli 0.11.0
File Size Uploaded
gemini_actions_lab_cli-0.11.0.tar.gz 29.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gemini-actions-lab-cli 0.11.0
File Interpreter ABI Platform
gemini_actions_lab_cli-0.11.0-py3-none-any.whl Python 3 none any Details

Total release size: 53.8 kB

Release files / gemini_actions_lab_cli-0.11.0.tar.gz

Download URL gemini_actions_lab_cli-0.11.0.tar.gz
Size 29.8 kB
Tags Source
SHA-256 checksum
How to use checksums
528f01e165b03b12f407da0bc98da350ece67dcafb02653f06e4ce56ad64454b
BLAKE2b-256 checksum
How to use checksums
5de614e8f93123db9076021b00e3ad5bc939fafcf9fbd127884d70e89bb29380
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 12, 2025.

Transparency log

Release files / gemini_actions_lab_cli-0.11.0-py3-none-any.whl

Download URL gemini_actions_lab_cli-0.11.0-py3-none-any.whl
Size 24.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b4a3e46017803016eef9b4c2ddc8b58c0b8877f08e4d0d67155ad3bd7fb44b95
BLAKE2b-256 checksum
How to use checksums
8cb3aea176febb2f0e9c7498fe032126069a6bc709915cf9c0d45b8815f827d1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 12, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.11.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page