Skip to main content

GitHub Copilot 拡張機能のデバッグ

公開する前に、コマンド ラインから GitHub Copilot Extension をデバッグする方法について説明します。

Copilot Extensions 用のデバッグ ツールを使うと、コマンド ラインから Copilot エージェント とチャットし、エージェントが応答を生成するときに詳細なログを表示できます。 ツールに複数のフラグを渡すことができます。最も重要なフラグは次のとおりです。

  • url フラグ: Copilot エージェント にアクセスするための URL が含まれます。 これは、ツールを起動するために必要な唯一のフラグです。
  • log-level フラグ: 応答を生成するための Copilot エージェント のプロセスに対するユーザーの可視性レベルを決定します。 使用可能なログ レベルは DEBUGNONE、および TRACE であり、ツールは既定で DEBUG を使用します。
  • token フラグ: Copilot エージェント が Copilot LLM を呼び出す場合、Copilot Chat への読み取りアクセス権を持つ fine-grained personal access token が含まれる必要があります。 エージェントが別の LLM を呼び出す場合は、このフラグを使用する必要はありません。

前提条件

デバッグ ツールを使用するには、GitHub CLI がマシンにインストールされている必要があります。 GitHub CLI は、次の 2 つの方法のいずれかでインストールできます。

  • パッケージ マネージャーを使用してコマンド ラインから。 たとえば、Homebrew で GitHub CLI をインストールするには、コマンド ラインに次のコマンドを貼り付け、プロンプトに従います。

    Bash
    brew install gh
    
  • GitHub CLI リリース ページから

CLI を使用した Copilot Extension のデバッグ

  1. 特定のサーバー送信イベント (SSE) のデバッグを準備する必要がある場合は、プロンプトに特定のキーワードが含まれているときに SSE を送信するコードを Copilot エージェント に追加します。

    メモ

    デバッグ ツールはペイロード検証プロセスを処理しません。 SSE を検証するには、ローカル テストのペイロード検証を一時的に無効にしてから、拡張機能を正常にテストした後で再度有効にする必要があります。

  2. コマンド ラインで Copilot エージェント を開始します。

  3. GitHub CLI OAuth app で認証するには、コマンド ライン アプリケーションの新しいウィンドウに次のコマンドを貼り付け、プロンプトに従います。

    Bash
    gh auth login --web -h github.com
    
  4. 同じウィンドウで、デバッグ ツールをインストールするには、次のコマンドを貼り付けます。

    Bash
    gh extension install github.com/copilot-extensions/gh-debug-cli
    
  5. 必要に応じて、使用可能なフラグとその説明の一覧については、次のコマンドをコマンド ラインに貼り付けます。

    Bash
    gh debug-cli -h
    
  6. 必要に応じて、使用するフラグごとに環境変数を設定します。 環境変数を使用すると、デバッグ ツールを実行するたびに値を渡すのではなく、フラグの定数値を設定できます。 たとえば、Blackbeard 拡張機能を使用してデバッグ ツールをテストする場合は、次のようにエージェント URL の環境変数を作成できます。

    Bash
    export URL="http://localhost:3000"
    

    メモ

    フラグの環境変数を設定するには、フラグの名前をすべての大文字で使用する必要があります。

  7. デバッグ ツールを起動するには、次のコマンドをコマンド ラインに貼り付け、使用するフラグを追加します。

    Bash
    gh debug-cli
    

    必要なフラグは url フラグだけですが、log-leveltoken などの追加のフラグを使用する必要があります。

    デバッグ ツールが実行されると、"入力を開始してアシスタントとのチャットを開始してください... " というメッセージが表示されます。

  8. エージェントを操作するには、コマンド ラインにプロンプトを入力します。 出力は、前の手順で選択したログ レベルによって異なります。DEBUGTRACE ログ レベルにより、より詳細な情報が提供されます。

    ヒント

    SSE をデバッグする場合は、Copilot エージェント で指定したキーワードを含むプロンプトを送信して SSE をトリガーし、コマンド ライン アプリケーションで出力を分析します。