Giselle のアクション ノード

アクション ノードは、Giselle ワークフローを外部サービスと接続し、制御することを可能にします。橋渡しの役割を果たし、Giselle 環境を超えたタスクの自動化を可能にします。現在、主要な統合は GitHub との連携で、さまざまなリポジトリ操作が可能です。他の外部サービスのサポート拡大に継続的に取り組んでいます。

GitHub アクション

アクション ノード内の GitHub アクション機能により、ワークフローは GitHub リポジトリで特定の操作を実行できます。これは、Giselle フロー内で処理されたロジックとデータに基づいて、イシューの作成、コメント、データの取得などのタスクを自動化するのに役立ちます。

GitHub アクションの設定:

  1. GitHub アカウント/組織の選択:
    • アクション ノードを追加し、サービスとして GitHub を選択すると、まず対象リポジトリが存在する GitHub アカウントまたは組織を選択する必要があります(例:giselles-ailiam-hq)。
  2. リポジトリの選択:
    • 次に、選択されたアカウント/組織下でアクセス可能なリポジトリのリストが表示されます(例:docsgiselle)。
    • アクションの対象とするリポジトリの横にある セットアップ ボタンをクリックします(例:giselle)。
  3. 実行する GitHub アクションの選択:
    • リポジトリが選択されると(例:giselles-ai/giselle)、Giselle アプリが実行すべきアクションを指定する必要があります。
    • 「実行したいアクションを選択してください」というラベルが付いているドロップダウンメニューをクリックします。
    • リストから希望のアクションを選択します。例には以下が含まれます:
      • イシューの作成
      • イシューコメントの作成
      • プルリクエストコメントの作成
      • プルリクエストレビューコメントへの返信
      • ディスカッションの取得
    • アクションを選択した後、アクション設定 ボタンをクリックしてパラメーター設定に進みます。
  4. アクションパラメーターの設定:
    • 各 GitHub アクションは、正しく実行するために特定のパラメーターが必要です。例えば、「イシューコメントの作成」アクションには、「必須」フィールドで示されるように、コメント用の issueNumberbody が必要です。
    • 設定パネルには、選択されたリポジトリと選択されたアクション(例:「イシューコメントの作成」)が表示されます。その下に、必要なパラメーターが一覧表示されます。
    • 各パラメーターに値を提供する必要があります。これは通常以下の方法で行えます:
      • 直接静的な値を入力する。
      • ソースを選択: これにより、フロー内の前のノードの出力や Giselle アプリフローの初期トリガー入力からデータを動的にマッピングできます。各パラメーターフィールドの横にある「ソースを選択」オプションがこれを促進します。
    • 「必須」とマークされたすべてのパラメーターが入力されていることを確認してください。
    • すべてのパラメーターが設定されると、変更は通常「アクション」ボタンまたは UI での同様の確認によって保存されます。キャンバス上のノードは、設定されたアクションを反映するように更新されます(例:issueNumberbody の入力を持つ「イシューコメントの作成」を表示)。

アクション ノードの出力:

タスクを正常に実行した後、アクション ノードは通常 出力 を生成します。この出力には、実行されたアクションに関連する情報が含まれる可能性があります(作成されたイシューやコメントの ID や URL、またはサービスから取得されたデータ(ディスカッションコンテンツなど))。この出力は、ワークフロー内の後続ノードの入力として使用でき、複雑な操作チェーンを可能にします。ノードプレビューは、しばしば「出力」の可用性を示します。

例:イシューコメントの作成

giselles-ai/giselle リポジトリに対して「イシューコメントの作成」を行うようアクション ノードを設定したとします:
  • リポジトリ: giselles-ai/giselle
  • アクション: イシューコメントの作成
  • 必須パラメーター(入力):
    • issueNumber: ワークフロートリガーまたは前のノードから取得(例:フロー内で以前に特定されたイシュー番号)。
    • body: 別のノードから取得(例:前のステップで AI モデルが生成したテキスト要約)。
  • 実行: このノードが実行されると、giselles-ai/giselle リポジトリ内の issueNumber で指定されたイシューに、提供された body を使用して新しいコメントを投稿します。
  • 潜在的な出力: ノードは、新しく作成されたコメントの URL や ID などの詳細を出力する可能性があり、これはさらなるステップで使用できます。

例:プルリクエストレビューコメントへの返信

giselles-ai/giselle リポジトリで「プルリクエストレビューコメントへの返信」を行うアクション ノードの設定方法は以下の通りです:
  • リポジトリ: giselles-ai/giselle
  • アクション: プルリクエストレビューコメントへの返信
  • 必須パラメーター(入力):
    • pullNumber: レビューコメントを含むプルリクエストの番号。これは通常、トリガーイベント(例:「プルリクエストレビューコメント作成」の GitHub トリガー)またはプルリクエストを特定した前のノードから取得されます。
    • commentId: 返信対象の特定のレビューコメントの ID。これも通常、トリガーデータまたはコメント詳細を取得した前のノードから取得されます。
    • body: 返信のコンテンツ。これは静的なテキストでもよく、より効果的には、ワークフロー内の AI ノードから動的に生成されたテキスト(例:自動確認、質問、または要約)でもよいでしょう。
  • 実行: このアクション ノードが実行されると、giselles-ai/giselle リポジトリ内の指定された pullNumbercommentId に対して、body パラメーターのコンテンツを返信として投稿します。
  • 潜在的な出力: ノードは投稿された返信に関する情報(独自の ID や URL など)を出力する可能性があり、これはさらなる条件付きワークフローロジックに役立つ可能性があります。

例:GitHub ディスカッションの取得

このアクションにより、ワークフローはリポジトリから特定の GitHub ディスカッションのコンテンツと詳細を取得できます。
  • リポジトリ: giselles-ai/giselle(または他の設定されたリポジトリ)
  • アクション: ディスカッションの取得
  • 必須パラメーター(入力):
    • discussionNumber: 取得する GitHub ディスカッションの番号。これは静的な値でも、前のノードの出力やトリガー入力から動的に取得したものでも構いません。
  • 実行: このノードが実行されると、GitHub に接続し、選択されたリポジトリから discussionNumber で指定されたディスカッションの詳細を取得します。
  • 潜在的な出力: ノードはディスカッションデータを含むオブジェクトを出力します。これには通常、ディスカッションの idtitlebodyHTML(HTML 形式のディスカッションのコンテンツ)、createdAtupdatedAtauthor 情報、およびディスカッションに関連する comments の配列(各コメントも bodyHTMLauthor などの詳細を持つ)などの詳細が含まれます。この構造化されたデータは、ワークフロー内の後続ノードで使用でき、例えば、ディスカッションの要約、要点の抽出、コメントの分析の実行、またはコンテンツに基づく他のアクションのトリガーなどに使用できます。
アクション ノード、特に GitHub 統合機能は、Giselle の自動化機能をソフトウェア開発およびプロジェクト管理ライフサイクルに拡張するための汎用的なツールです。より多くのアクションと他の外部サービスとの統合にご期待ください。