広告枠を募集中 ご相談ください

VS CodeのCodeGPTでカスタムAPIキーを接続しワークスペースをインデックス化してコード解説・リファクタリングを行う方法

365Finds Editorial
Wiki 記事 11,430 本収録

あなたの AI で 365 Wiki を使う

下のプロンプトをコピーして、普段使っている AI に貼り付け、そのまま質問してください。

完全版 Skill をダウンロード

まずはプロンプトでお試しください。よく使う場合は完全版 365Wiki Skill をインストールすると、毎回貼り付ける必要がありません。普段使う AI がなければ、Gemini や Microsoft Copilot のウェブ版でも使えます。

Visual Studio CodeでCodeGPTを利用する際、チャット欄にコード断片を貼り付けるだけの使い方では、プロジェクト全体の依存関係やアーキテクチャを踏まえた回答は得られません。CodeGPTをリポジトリ全体を理解するAIアシスタントへ進化させる鍵は、カスタムAPIキー(BYOK方式およびカスタムエンドポイント)の接続と**ローカルワークスペースのインデックス作成(Codebase Indexing)**の2点にあります。これらを整えることで、内蔵のセマンティック検索ツール(Semantic Search Tool)とプロファイルモードが機能し、複数ファイルにまたがるコードの解説や安全なリファクタリングがエディタ内で完結します。


1. カスタムAPIキーの接続(BYOKとカスタムエンドポイント)

CodeGPTはハイブリッドな料金体系を採用しています。新規ユーザーには月間30回の無料インタラクション枠が提供されますが、本格的な開発では**BYOK(Bring Your Own Key)**プランまたはチーム向けサブスクリプションの利用が一般的です。BYOKを利用すると、CodeGPT側のメッセージ上限を気にすることなく、モデルのToken利用料を各AIプロバイダーへ直接支払う形で運用できます。

プロバイダーとAPIキーの設定手順

  1. 拡張機能のインストールとアカウント同期:VS Codeの拡張機能マーケットプレイスでDanielSanMediumが提供するCodeGPT: AI Coding Agents & Chatをインストールします。サイドバーでCodeGPTを開き、Google、GitHub、またはメールでログインしてアカウントを同期します。
  2. プロバイダー設定画面を開く:
    • CodeGPTチャット下部の Manage Models ボタンをクリックし、Providers タブを開きます。
    • または、VS Codeのコマンドパレット(Windows/Linuxは Ctrl+Shift+P、macOSは Cmd+Shift+P)を開き、CodeGPT: Set API KEY を実行します。
  3. AIプロバイダーの選択:
    • CodeGPTは、OpenAI、Anthropic、Google AI Studio、DeepSeek、Mistral、Cohere、Groq、Cerebras、Perplexityのほか、ローカル環境のOllamaやLM Studioに標準対応しています。
    • 利用するプロバイダーのコンソールで発行したシークレットAPIキーを入力します(組織管理がある場合はOrganization IDも設定可能)。
  4. OpenAI互換カスタムエンドポイントの接続(Custom Provider):
    • 社内プライベートクラウド、自社ホストのLLM(vLLMやリモートOllama環境)、OpenRouter等のプロキシを利用する場合は、プロバイダー一覧から Custom を選択します。
    • 対象のモデル名(例: cognitivecomputations/dolphin3.0-mistral-24b:free や独自タグ)を入力します。
    • APIキーを入力します。
    • エンドポイントの完全なURL(Custom Link、例: /chat/completions のHTTP URL)を入力します。
    • Connect をクリックして接続を確立します。
  5. BYOK利用時の必須操作:APIキー登録後、チャット画面上部のモデル選択メニューから使用するモデルを明示的に選択してください。モデルが未選択の状態でプロンプトを送信すると、「You must select a model first」というエラーが発生します。

2. ローカルワークスペースのインデックス作成(Augmented Context)

通常の大規模言語モデルは、エディタで開いていないファイルや別階層のモジュール構成を認識できません。CodeGPTの**Codebase Indexing(拡張コンテキスト)**は、ローカルにベクトルインデックスを構築し、プロジェクト全体の文脈をAIに提供します。

コード選択とコードベースインデックスの使い分け

ワークスペースのインデックス構築手順

  1. CodeGPTサイドバーのメインメニューから、Augmented Context内の Codebase ボタンをクリックします。
  2. Create Codebase Index をクリックします。
  3. フォルダ選択ダイアログで、インデックス対象とするワークスペースのルートフォルダを選択します。
  4. プロジェクト内のソースコードが解析され、ローカルベクトルインデックスが生成されます。
  5. 作成が完了すると、AIエージェントに Semantic Search Tool(セマンティック検索ツール) が自動的に付与されます。

会話内でのコンテキスト注入方法


3. ワークスペース文脈を活用したコード解説

大規模なコードベースや引き継いだ既存システムを読み解く際、単体の構文だけを見ても設計意図は把握できません。

推奨プロファイルモード:Search Mode(検索モード)

CodeGPTのチャットには3種類のプロファイルモードが用意されています:

コード解説の手順

  1. 解説したいコードの選択:VS Codeエディタ上で、理解したい関数やクラス、複雑な処理ブロックをハイライトします。
  2. /Explain コマンドの実行:
    • CodeGPTチャット入力欄に /Explain と入力して Enter を押します。
    • または、エディタ内で右クリックし、コンテキストメニューから Explain CodeGPT を選択します。
  3. プロジェクト全体の文脈を踏まえた出力:インデックスが機能しているため、呼び出しているユーティリティがどこで定義されているか、受け取る引数がどのレイヤーから渡されているかを含めた、構造的な解説が生成されます。
  4. 追加の深掘り質問:Search Modeのまま、さらに踏み込んだ質問が可能です:
    • 「このハンドラーはワークスペース内のどのルーティングから呼び出されているか?」
    • 「この型定義とデータベース層のリポジトリとの関連性を説明してほしい」

4. ワークスペース全体を意識した安全なリファクタリング

部分的なリファクタリングは、呼び出し側のシグネチャ不整合やプロジェクト規則の破壊を招きがちです。CodeGPTはスラッシュコマンドと適切な権限設定により、安全なコード改善を支援します。

リファクタリングの手順

  1. リファクタリング対象の選択:可読性改善や最新構文化(async/await化など)を行いたいコードブロックを選択します。
  2. /Refactor コマンドの実行:
    • チャット入力欄に /Refactor と要望(例: /Refactor コールバックチェーンをasync/awaitに書き換え、バリデーションロジックを分離して)を入力して Enter を押します。
    • または右クリックメニューから Refactor CodeGPT を選択します。
  3. 差分の確認と適用:
    • Search Mode または Chat Mode の場合:チャットパネル内にリファクタリング後のコードブロックが提示されます。内容を確認後、コードブロック右上の Insert code(矢印アイコン)をクリックしてエディタのアクティブファイルへ直接反映します。
    • Agent Mode の場合:内蔵の Edit File ツールを呼び出してディスク上のファイルを直接編集します。設定でAuto-Approveを無効にしていれば、変更前の承認ステップが挟まれます。

確実性を高めるベストプラクティス


参考文献