BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース GitHub Copilot拡張機能はIDEと外部サービスを統合

GitHub Copilot拡張機能はIDEと外部サービスを統合

原文リンク(2025-02-26)

現在一般提供されているGitHub Copilot 拡張機能により、開発者はIDEを離れることなく自然言語を使用してドキュメント照会し、コード生成し、データ取得し、外部サービス上でアクションを実行できる。Docker、MongoDB、Sentryなど多くの企業が公開している拡張機能を利用できるほか、開発者は内部ライブラリやAPIと連携するための独自の拡張機能を作成することもできる。

開発向けの幅広いサービスをカバーする数十の拡張機能が、GitHub Marketplaceですでに提供されている。例えばStack Overflow拡張機能を使えばエディタを離れることなくコーディング作業に関する質問ができる;代わりにGitBook拡張機能を使えばGitBookのドキュメントについて質問できる。

ドキュメントへのアクセスを提供するだけでなく、Copilot拡張機能は開発者がIDEから直接サービスにアクセスするのに役立つかもしれない。例えばDocker拡張機能を使えばDockerアセットを生成したり、脆弱性を分析したりできる;LambdaTest拡張機能を使えば開発者はテストのワークフローを管理し、テストの実行、自動化、インサイト生成を効率化できる;Mermaid Chart拡張機能を使えばGitHub Actions、SQL、その他IDE内で作業中のファイルに基づいてさまざまな種類の図を生成できる。

前述の通り、開発者は個人データや社内サービスにアクセスするために独自の拡張機能を作成することもできる。開発者が拡張機能を作りやすくするために、GitHubは基本的な "Hello World" 拡張機能の作り方や、拡張機能のベータユーザーからのフィードバックの収集方法などを紹介するリポジトリをいくつか公開している。

Copilot拡張機能を作るには2つの方法がある。一つはスキルセットを定義する方法で、Copilotに拡張機能とのすべてのAIインタラクションを処理させ、ユーザーリクエストを処理するために呼び出せる複数のエンドポイントの説明を提供することを意味する。現在、1つの拡張機能で最大5つの異なるスキルを使用できる。

もう一つは独自のAIエージェントを使用する方法で、この場合、ユーザーのコンテキストからユーザーの現在のファイル、選択されたテキスト、リポジトリに関する詳細などの特定情報をエージェントに渡す。この場合、エージェントは、ユーザーメッセージと現在の環境への参照を含むサーバー送信イベント(SSE)を受け取る。実際のコンテキスト情報は、拡張機能をホストするクライアントによって異なる。例えばVisual StudioとVisual Studio Codeは現在の選択範囲やファイルの内容全体を渡すが、GitHub.comは渡さず、ユーザーが現在訪れているページのURLを提供する

拡張機能ビルダーが認証を管理しやすくするために、GitHubは最近OpenID Connect(OIDC)のサポートを追加した。これにより、事前交換されたトークンを使用できるようになり、開発者はリクエストごとにGitHubトークンの有効性を確認する必要がなくなった。

GitHub Copilot拡張機能はVisual StudioやVisual Studio Code、GitHub.comやGitHubのモバイルアプリ、JetBrainsのIDEなど、さまざまなクライアントで使用できる。XcodeやGitHub Codespaces、vimやemacsではサポートされていない。

作者について

関連するコンテンツ

BT