GitHubイシューのコマンドによる自動アサイン - n8n ワークフロー

「assign me」のようなコメントコマンドを利用してGitHubイシューの割り当てトリアージを自動化します。このn8nワークフローは、条件分岐ロジックとGitHub n8nトリガーを活用し、割り当て管理を効率化します。

ワークフロープレビュー

自動化の準備はいいですか?

このn8nワークフローテンプレートをダウンロードして、今すぐ使い始めましょう。

こんな方におすすめ

開発チーム: イシューのトリアージプロセスを効率化したいチーム。
OSSメンテナー: 貢献者が自己申告した場合の割り当てを自動化したい方。
n8nオートメーションスペシャリスト: n8nワークフロー内で高度な条件付きルーティングの活用に関心がある方。
DevOps専門家: コマンドベースでGitHubと確実に連携させたい方。

概要

大量のGitHubリポジトリでアサインを管理するのは時間がかかる作業です。この堅牢なn8nワークフローは、ユーザーがイシューの本文中や後続のコメントで「assign me」といったコマンドを入力するだけで、セルフアサインを可能にすることでこの問題を解決します。n8nの基盤ロジックにより、イシューが現在未アサインの場合にのみ割り当てが行われ、コンフリクトを防ぎます。もし既にアサイン済みのイシューを取得しようとした場合、自動化は役立つコメントで応答し、透明性を確保します。この特定のn8nテンプレート実装は、強力なフロー制御を示し、開発タスクの調整を簡素化します。

仕組み

プロセス全体は、新しいイシュー(issuesイベント)または新しいコメント(issue_commentイベント)を監視するように設定された「Github Trigger1」n8nトリガーから始まります。


  1. トリガーとルーティング: イベントが発生すると、データはn8nワークフローに入ります。「Switch」n8nノードが、イベントアクション(例:イシューの「opened」やコメントの「created」)を分析します。

  2. 新規イシューのアサイン: アクションが「opened」の場合、フローは「IF no assignee?」に進みます。この条件付きn8nノードは、イシューが未アサインであり、かつイシュー本文に「assign me」が含まれているかをチェックします。両方が真の場合、「Assign Issue Creator」n8nノードがイシューを作成者に割り当て、'assigned'ラベルを適用します。

  3. コメントによるアサイン試行: アクションが「created」(新規コメント)の場合、フローは「IF wants to work?」に進みます。このn8nノードは、コメント本文に「assign me」が含まれているかをチェックします。

  4. コンフリクトチェック: コメントにアサインフレーズが含まれている場合、フローは「IF not assigned?」に進みます。この条件付きn8nノードは、現在の割り当て状況を確認します。

  5. アサインまたは通知: イシューが未アサインであれば、「Assign Commenter」n8nノードがコメントしたユーザーにイシューを割り当てます。既にアサインされている場合は、「Add Comment」n8nノードが自動的に返信を投稿し、現在の担当者を言及して、イシューが既に誰かに対応されていることを通知します。一致しないその他のイベントやアクションは、「No Operation, do nothing」n8nノードに送られ、その特定のエグゼキューションパスを安全に終了させます。

インストールガイド

この強力なn8nワークフローを展開するには、以下の手順に従ってください。


  1. インポート: 提供されたJSONコードをコピーし、n8nインスタンスの「ワークフロー」メニューから「新規作成」>「JSONからインポート」を選択して直接インポートします。

  2. GitHub認証情報: n8nで有効なGitHub OAuth2認証情報が設定されている必要があります。これらの認証情報が次のn8nノードコンポーネント('Github Trigger1'、'Assign Issue Creator'、'Add Comment'、'Assign Commenter')にリンクされていることを確認してください。

  3. トリガーの設定: 「Github Trigger1」n8nトリガーノードで、監視対象の実際のオーナーとリポジトリ名に[username]および[reponame]を置き換えてください。

  4. アクティベーション: 認証情報とリポジトリの詳細設定が完了したら、トグルを「アクティブ」に設定してn8nワークフローを有効化します。

  5. Webhook設定: セルフホスト型n8nインスタンスを使用している場合は、リポジトリ設定内のGitHub Webhook URLが、n8nトリガーエンドポイントを指すように正しく設定されていることを確認してください。

ノード詳細

このn8nテンプレートは、そのロジックのためにいくつかの主要なn8nノードコンポーネントに依存しています。

Github Trigger1 (n8nトリガー): エントリーポイント。issue_commentおよびissuesイベントをリッスンし、新規イシューと後続コメントの両方でn8nワークフローが起動するように保証します。
Switch (n8nノード): イベントアクション(「opened」対「created」)に基づいて実行をルーティングし、n8nワークフローのコアパスを定義します。
IF no assignee? (n8nノード): 新規イシューについて2つの主要なパラメーターをチェックする条件付きロジックのn8nノード:アサイン済みのユーザーがいないこと(assignees.lengthが0と等しい)と、イシュー本文が正規表現コマンド/assign me/gmに一致すること。
Assign Issue Creator (GitHub n8nノード): イシューを作成したuser.loginにイシューを割り当て、'assigned'ラベルを適用するために使用されます。
IF wants to work? (n8nノード): 続行する前に、コメントに正規表現コマンド/assign me/gmが含まれているかを確認します。
IF not assigned? (n8nノード): コメントベースのアサイン試行に対して最終チェックを実行し、イシューが既にアサインされていないことを保証します。
Assign Commenter (GitHub n8nノード): 依頼を行ったコメント投稿者にイシューを割り当て、このn8nワークフロー機能を活用します。
Add Comment (GitHub n8nノード): アサインコンフリクトが検出されたときに実行され、GitHubイシューに対して役立つ通知を投稿します。

関連するn8nワークフロー

無料

ノード: 6 ノード
更新済み: 12月 26 2025
すべて表示
作成者
Roshan Ramani
Roshan Ramani

特徴*