2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Visual Studio Code: GitHub Copilot Chat 標準スラッシュコマンドに関する調査メモ

2
Posted at

2026/03/17 時点の情報を自分なりに整理したメモです。

1. 概要

本メモは、Visual Studio Code(VS Code)における GitHub Copilot Chat の標準スラッシュコマンドを活用するために調査したメモです。「チャット参加者(エージェント)」、実行アクションを制御する「スラッシュコマンド」、そして 「コンテキスト変数」について記載してあります。

2. 動作フロー / 概念図(Workflow / Diagram)

以下、GitHub Copilot Chat におけるユーザー入力から回答生成までのコンテキスト制御のイメージです。

3. 仕様・設定項目(Specifications / Configuration)

3.1 チャット参加者(エージェント)の定義

GitHub Copilot において、 @ 記号は「エージェント(Agents)」を呼び出すための共通インターフェースです。これには GitHub が標準提供する「チャット参加者」のほか、カスタムエージェントも含まれます。

参加者(@) 専門領域・役割
@workspace ワークスペース全体(プロジェクト構造・コードベース)の解析と操作を担当
@terminal 統合ターミナルの内容、出力ログ、およびシェルコマンドの生成・解説を担当
@github GitHub リポジトリ(Issue, PR, リリース情報等)のメタデータに関する質問・操作を担当
@vscode VS Code 自体の設定、機能、および拡張機能開発 API に関する支援を担当

3.2 スラッシュコマンド・リファレンス

スラッシュコマンド( / )は、実行したい「アクション」を指定します。

3.2.1 参加者とコマンドの組み合わせ対応表

スラッシュコマンド (指定なし) @workspace @terminal @vscode @github
/explain OK OK OK OK OK
/fix OK OK - - -
/tests OK OK - - -
/doc OK - - - -
/simplify OK - - - -
/plan (OK) 推奨 - - -
/new OK OK - - -
/search - OK - - -
/help OK - - - -
/clear OK - - - -
/init - OK - - -

3.2.2 共通アクション・コマンド詳細

特定のファイルやコード断片に対して使用する主要なコマンドです。

  • /explain
    • 機能: コードの動作や概念をステップバイステップで解説
    • 単体利用: アクティブなエディタのコードを局所的に解説
    • @workspace: プロジェクト全体の構造や依存関係を考慮
    • @terminal: ターミナルの最後のエラー出力やシェルコマンドを解析
  • /fix
    • 機能: バグやエラーに対する修正案を提示
    • 出力: Diffビューによる比較画面を表示。ユーザーが Accept を選択するまで変更は確定されない
    • 推奨: 事前に /explain で修正の根拠を確認することを推奨
  • /tests
    • 機能: ユニットテストを自動生成
    • @workspace: プロジェクトの規約(命名規則、モック等)を自動検知し、一貫性のあるテストを作成
  • /simplify
    • 機能: ロジックを変えずに可読性を向上させるリファクタリングを実施
  • /doc
    • 機能: 言語に合わせたドキュメントコメント(JSDoc, Docstring等)を生成

3.2.3 プロジェクト操作・生成コマンド詳細

  • /plan
    • 機能: 複雑なタスクに対し、構造化されたステップ別の実装計画を作成
    • @workspace: アーキテクチャや他ファイルへの波及効果を考慮した計画を作成
  • /new
    • 機能: 指示に基づき、新しいプロジェクトやファイルの雛形を生成
  • /search
    • 機能: ワークスペース内を検索するための最適なクエリ(正規表現等)を生成

4. 変数 / プレースホルダー

# 記号(Chat variables)を使用することで、AI が参照する文脈(コンテキスト)を明示的に指定できます。

4.1 エディタ・コード関連変数

  • #file: ワークスペース内の特定のファイル内容を追加
  • #selection: 現在選択しているコード範囲を明示
  • #codebase: ワークスペース全体のインデックス情報を参照

4.2 ターミナル・実行関連変数

  • #terminalSelection: ターミナルで選択されているテキストを参照
  • #terminalLastCommand: 最後に実行されたコマンドとその出力を参照

4.3 システム・外部連携変数

  • #gitDiff: 未コミットの変更点(diff)を参照
  • #editor: アクティブなエディタの可視範囲や状態を参照
  • #fetch: 指定した URL のコンテンツをリアルタイムで取得

5. 実践的な使用例 / 連携パターン

ケース1:既存コードの迅速な理解

  1. 全体像の把握: @workspace /explain overall architecture using #codebase
  2. 特定ロジックの深掘り: /explain how #selection interacts with #file:config.ts

ケース2:新機能の設計と基盤実装

  1. 実装計画の策定: @workspace /plan implement a new feature following #file:existing_service.ts
  2. 雛形生成: @workspace /new service classes for the planned feature

ケース3:デバッグ・不具合修正

  1. ログ解析: @terminal /explain why the last command failed with #terminalLastCommand
  2. 整合性を保った修正: @workspace /fix the error while maintaining compatibility with #file:test_helper.ts
  3. 回帰テスト追加: /tests add regression test cases for the fix

ケース4:品質維持とメンテナンス

  1. リファクタリング: /simplify #selection based on standards in #fetch:https://styleguide.example.com
  2. ドキュメント整備: /doc #editor generating comments for all exported functions

6. 出典

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?