・
「Geminiで生成したコードやドキュメントを、手作業でGitHubに反映させている…」
「GitHubのIssueやプルリクエストの内容を把握するために、毎回サイトを開いて詳細を確認するのが大変…」
このように、GeminiとGitHub間での情報のやり取りに、手間や非効率さを感じていませんか?
開発プロセスにおけるこれらの手作業は、時間的なロスだけでなく、コピー&ペーストのミスや情報共有の漏れといったヒューマンエラーの原因にもなりかねません。
もし、<span class="mark-yellow">Geminiによるコンテンツ生成からGitHubへのプルリクエスト作成までを自動化したり、GitHub上の更新情報をGeminiで要約して通知したりする仕組み</span>があれば便利ですよね。
これらの悩みから解放され、開発者は本来注力すべきコーディングやレビューといったコア業務に集中できる時間を生み出すことができます。
今回ご紹介する自動化は、プログラミング不要で簡単に設定できます。
日々の開発業務をもっとスムーズに、そして効率的に進めるために、ぜひ参考にしてみてください!
Yoomには<span class="mark-yellow">GeminiとGitHubを連携するためのテンプレート</span>が用意されています。
今すぐ試したい方は以下よりバナーをクリックしてスタートしましょう!
GeminiとGitHubのAPIを連携させることで、これまで手動で行っていた多くの作業を自動化できます。
例えば、Geminiで生成したコンテンツを自動でGitHubに反映させるなど、開発プロセスの効率化を図れます。
ここでは具体的な自動化の例を複数紹介しますので、気になる内容があれば、ぜひクリックしてみてください!
専用フォームにプロンプトや仕様を入力して送信するだけで、Geminiが自動でコードやドキュメントを生成し、その内容でGitHub上にプルリクエストまで作成する連携です。
この仕組みにより、<span class="mark-yellow">アイデアの着想からコードの初期実装、そしてレビュー依頼までの一連のプロセスを短縮</span>し、開発のスタートダッシュを加速させることができます。
フォームに報告したいIssueの詳細を自由な形式で入力すると、Geminiがその内容を的確に要約し、定められたフォーマットでGitHubにIssueを自動で作成する連携です。
これにより、<span class="mark-yellow">Issue作成の手間を削減しつつ、Issue内容の品質を標準化できる</span>ため、開発チーム全体でのIssue管理がよりスムーズになるはずです。
それでは、さっそく実際にGeminiとGitHubを連携したフローを作成してみましょう!
今回はYoomを使用して、ノーコードでGeminiとGitHubの連携を進めていきます。
もしまだYoomのアカウントをお持ちでない場合は、こちらの登録フォームからアカウントを発行しておきましょう。
[Yoomとは]
今回は「フォームでプロンプトが送信されたら、Geminiでコンテンツを生成してGitHubでプルリクエストを作成する」フローを作成していきます!
作成の流れは大きく分けて以下です。
ここでは、Yoomとそれぞれのアプリを連携して、操作が行えるようにしていきます。
まずは基本的な設定方法を解説しているナビをご覧ください!
それではここから今回のフローで使用するアプリのマイアプリ登録方法を解説します。
Geminiの場合
新規接続をクリックしたあと、アプリのメニュー一覧が表示されるのでGeminiと検索し対象アプリをクリックしてください。
アカウント名とアクセストークンをそれぞれ入力し、「追加」をクリックしましょう。
APIキーはGeminiのAPI取得ページから取得可能です。
GitHubの場合
新規接続を押したあと、アプリのメニュー一覧が表示されるのでGitHubと検索し対象アプリをクリックしてください。
以下の画面が表示されたら、ユーザー名またはメールアドレスとパスワードを入力し、「Sign in」をクリックしてください。
認証コード入力画面が表示されます。
登録メールアドレスに届いた6桁のコードを入力し、「Verify」をクリックしてください。
以上でマイアプリ登録は完了です!
ここからいよいよフローの作成に入ります。
簡単に設定できるようテンプレートを用意しているので、まずはコピーします。
Yoomにログイン後、以下バナーの「試してみる」をクリックしてください。
テンプレートがコピーされると、以下のような画面が表示されますので、「OK」をクリックして設定を進めましょう。
「フォーム」をクリックします。
今回の例では、あらかじめ用意されているデフォルトのフォーム設定を使用し、プロンプトの送信フォームとして回答内容を活用する想定で進めます。
フォームは用途にあわせて設定・カスタマイズが可能です。
カスタマイズには一部有料プランの機能も含まれており、有料プランにはトライアル期間が用意されています。
プランについては、こちらをご確認ください。
また、フォームの詳しい設定方法については、以下のヘルプページをご参照ください。
フォームの基本設定・オプション設定について
完了ページの設定
画面を下へスクロールすると、送信完了ページに表示するメッセージを設定できるブロックが表示されます。
こちらの設定は必須ではありませんが、必要に応じて任意で設定しましょう。
アクセス制限
フォームへのアクセス権限は、トグルの切り替えで簡単に設定できます。
IP制限を有効にすると、指定したIPアドレスからのみアクセスできるように制御することが可能です。
詳しくはこちらのヘルプページを参照ください。
共有フォーム利用時のフローボットの起動者
フォームに回答が送信された際に「どのユーザーをフローボットの起動者とするか」を選択できる仕組みです。
この設定によって、エラーが発生した際等に誰に通知が届くかを管理することができます。
こちらの設定も必須ではありませんが、必要に応じて任意で設定してください。
設定が完了したら、「次へ」をクリックしましょう。
取得した値の項目に、テスト用のプロンプトを入力しておきましょう。
ここで入力した値(=取得した値)は、この後のステップでGeminiによりコンテンツを生成する際に利用されます。
入力が完了したら、「保存する」をクリックします。
「コンテンツを生成」をクリックします。
タイトルは任意で変更できます。
アプリとアクションはあらかじめ設定されているため、そのまま内容を確認してください。
Geminiと連携するアカウント情報に問題がなければ、「次へ」をクリックします。
モデル
入力欄をクリックすると連携が有効になっているアカウントから候補が表示されるので、対象の項目を選択しましょう。
プロンプト
Geminiに生成させたい文章を指示するために、プロンプトを設定します。
入力欄をクリックすると、前のステップでフォームに入力したプロンプトが表示されるので、それを選択しましょう。
アウトプットを活用することで、値が固定化されずに毎回最新の情報を反映できます。
アウトプットに加え、定型的な指示を追加したい場合は、内容を直接入力してください。
システムプロンプト
Geminiに「どのような立場・役割で文章を生成するか」を指示しましょう。
今回はデフォルトのテキストをそのまま使用しています。
入力が完了したら「テスト」をクリックして、設定した内容でコンテンツが生成されるか確認しましょう。
テストが成功すると、トリガーのステップでフォームに入力したプロンプトをもとに、Geminiが生成したコンテンツの情報が表示されます。
以下の画像の取得したアウトプットをもとに、GitHubでプルリクエストの作成が可能です。
内容を確認し、「保存する」をクリックします。
「プルリクエストを作成」をクリックします。
タイトルは任意で変更できます。
アプリとアクションはあらかじめ設定されているため、そのまま内容を確認してください。
GitHubと連携するアカウント情報に問題がなければ、「次へ」をクリックします。
【事前準備】
プルリクエストを作成するためには、必ず「差分があるブランチ」を事前に用意しておく必要があります。
空のリポジトリやmainと全く同じ内容のブランチを指定すると、プルリクエスト作成時にエラーとなってしまいます。
そのため、まずはGitHub上でリポジトリを作成し、mainブランチを確認したうえで、新しいブランチを切り、テスト用に簡単なファイルを追加しておきましょう。
Yoomの操作画面に戻ります。
リポジトリ所有者
注釈に沿って入力しましょう。
※GitHubURLの「オーナー名」がリポジトリ所有者になります。
リポジトリ名
こちらも同じく注釈に沿って入力してください。
プルリクエストのタイトル
任意で設定してください。
プルリクエストの内容
入力欄をクリックすると、前のステップで取得済みのアウトプットが表示されるので、選択して入力しましょう。
画像のように任意のテキストと組み合わせて自由に内容をカスタマイズすることも可能です。
また、アウトプットを活用することで値が固定化されず、フローボットを起動するたびに最新の情報を自動で反映できます。
※なお、テキストを直接入力した部分は固定値とされるため、アウトプットを活用せず設定を行うと毎回同じデータがGitHubに登録されてしまうので注意が必要です。
変更が実装されているブランチ名
新しく作業やテストで変更を加えたブランチ名を入力してください。
変更をプルするブランチ名
取り込み先のブランチ名を入力しましょう。
その他の項目についても、必要に応じて、注釈を参考に設定しましょう。
入力が完了したら「テスト」をクリックして、設定した内容でGitHubにプルリクエストが作成されるか確認してください。
テストが成功すると、作成されたプルリクエストの情報が表示されます。
あわせてGitHubを開き、指定した内容でプルリクエストが作成されているか確認してみましょう。
今回は下記の通り作成されていました!
問題がなければYoomの操作画面に戻り、「保存する」をクリックします。
以上ですべての設定が完了しました!
設定が完了すると、画面上に以下のようなメニューが表示されます。
トリガーをONにすることで、フォームにプロンプトが送信されたタイミングで、Geminiがコンテンツを生成し、その内容をもとにGitHub上でプルリクエストが自動作成されるようになります。
実際にフォームからプロンプトを送信し、GitHubにプルリクエストが正しく作成されているかを確認してみましょう。
今回はGeminiからGitHubへデータを連携する方法をご紹介しましたが、逆にGitHubでのアクションを起点としてGeminiと連携させたい場合は、下記のテンプレートも併せてご利用ください。
GitHubのリポジトリで新しいIssueが作成された際に、その内容をGeminiが自動で要約し、指定のメールアドレスへ通知します。
この連携により、<span class="mark-yellow">大量のIssue通知の中から重要なポイントを素早く把握できる</span>ため、迅速なトリアージや担当者の割り振りが可能になり、対応漏れの防止に繋がります。
GitHubで新しいプルリクエストが作成されると、Geminiが変更内容の概要を自動で生成し、関係者にメールで通知します。
レビュー担当者はメールを受け取るだけで、<span class="mark-yellow">コードレビュー前に変更点の全体像を効率的に確認できる</span>ため、レビュープロセス全体のスピードアップに繋がります。
GeminiやGitHubのAPIを使用することで、さまざまな業務を自動化することができます。
ここでは、複数のテンプレートをご紹介するので、気になるものがあればぜひ試してみてくださいね!
他のアプリをトリガーとして利用して連携することで、内容を要約する業務を自動化できます。
テンプレートを設定するだけで手動での要約作業が削減されるため、業務の効率化を図りたいときにおすすめです。
他のタスク管理ツールと連携することで、タスクの一元管理が可能になります。
手作業でタスクを転記する作業を削減できるため、転記漏れなどの人為的ミスを防ぎたいときは、以下のテンプレートを試してみてください!
GeminiとGitHubの連携を自動化することで、<span class="mark-yellow">これまで手作業で行っていたコードの転記やIssueの作成、更新内容の確認といった定型業務から解放され、ヒューマンエラーを防ぐことができます。</span>
これにより、開発者は煩雑な作業に時間を奪われることなく、より創造性が求められるコーディングや設計、レビューといった本質的な業務に集中できる環境が整うはずです。
今回ご紹介したような業務自動化は、ノーコードツールの「Yoom」を活用することで、プログラミングの知識がない方でも直感的な操作で簡単に構築できます。
もし開発プロセスの効率化に少しでも興味を持っていただけたなら、ぜひこちらから無料登録して、Yoomがもたらす業務効率化を体験してみてください!
Q:連携途中でエラーが発生した場合の対処法は?
A:フローボットでエラーが発生すると、Yoomに登録したメールアドレス宛に通知が届きます。
通知にはエラーが起きたオペレーションや詳細のリンクが記載されており、すぐに原因を確認できます。
まずは通知内容を確認し、設定の修正が必要な場合はYoomヘルプページを参照してください。
それでも解決しない場合は、お問い合わせ窓口からサポートにご連絡ください。
Q:フォーム入力以外の方法でフローを起動できますか?
A:はい、可能です。
今回の記事で紹介したフォームトリガーだけでなく、メールの受信やSlackなどのチャットツールでのメッセージなど、別のアプリやトリガーを起点にしても同じ連携を実現できます。
基本的なフローボットの作成方法はこちらからご確認いただけます。
Q:プライベートリポジトリでも安全に連携できますか?
A:はい、安全に連携できます。
YoomはOAuth2.0やAPIキーによる認証方式を採用しており、通信はすべてSSL/TLSで暗号化されています。
そのため、プライベートリポジトリであっても適切な認証を経て必要な範囲の権限だけを利用し、セキュリティを担保した形で連携可能です。
詳細についてはこちらをご参照ください。