T-CREATOR

GitHub Copilot Chat コマンド速見表:ファイル/選択範囲/ターミナル指示の定型

GitHub Copilot Chat コマンド速見表:ファイル/選択範囲/ターミナル指示の定型

GitHub Copilot Chat を効率的に使いこなすには、定型コマンドの理解が不可欠です。本記事では、スラッシュコマンド、参照指定子、組み合わせパターンを体系的にまとめた早見表と、実践的な使用例を解説します。

コマンド早見表

スラッシュコマンド一覧

#コマンド用途基本構文使用例
1​/​explainコードの説明​/​explain [質問内容]​/​explain この関数の時間計算量を教えて
2​/​fixエラー修正​/​fix [修正内容]​/​fix 型エラーを修正して
3​/​testsテスト生成​/​tests [テスト要件]​/​tests Jest でユニットテストを生成
4​/​new新規作成​/​new [作成内容]​/​new Express サーバーを作成
5​/​newNotebookNotebook 作成​/​newNotebook [用途]​/​newNotebook データ分析用
6​/​docドキュメント生成​/​doc [ドキュメント形式]​/​doc JSDoc を追加して
7​/​terminalターミナル説明​/​terminal [質問内容]​/​terminal 最後のエラーを説明

参照指定子一覧

#参照指定子対象基本構文使用例
1#fileファイル全体#file:パス#file:src​/​utils.ts の関数を説明
2#selection選択範囲#selection#selection をリファクタリング
3#editor現在のエディタ#editor#editor の import を整理
4#terminalLastCommand最後のコマンド#terminalLastCommand#terminalLastCommand のエラーを修正
5#terminalSelectionターミナル選択範囲#terminalSelection#terminalSelection を解析
6#codebaseコードベース全体#codebase#codebase で認証処理を探す

組み合わせパターン一覧

#パターン用途構文例具体例
1コマンド + ファイルファイル全体への操作​/​コマンド #file:パス​/​tests #file:src​/​api.ts にテストを生成
2コマンド + 選択範囲選択範囲への操作​/​コマンド #selection​/​doc #selection にコメント追加
3コマンド + ターミナルターミナルエラー修正​/​fix #terminalLastCommand​/​fix #terminalLastCommand のエラーを修正
4複数ファイル参照ファイル間の整合性#file:A と #file:B#file:model.ts と #file:controller.ts の型を統一
5コマンド + 複数参照複雑な操作​/​コマンド #file:A #selection​/​fix #terminalLastCommand #file:package.json も更新

​/​explain - コード説明

選択したコードや関数の動作を詳しく説明してもらえます。

typescript// 関数を選択してから実行
/explain この関数の時間計算量と処理フローを説明してください

活用ポイント:複雑なアルゴリズムやレガシーコードの理解に最適です。

​/​fix - エラー修正

コード内のバグやエラーを修正してもらえます。

typescript// エラー箇所を選択して実行
/fix 型エラーを修正し、null チェックを追加してください

活用ポイント:具体的な修正内容を指示すると、より適切な修正案が得られます。

​/​tests - テスト生成

関数やモジュールのテストコードを自動生成できます。

typescript// テスト対象の関数を選択
/tests Jest を使ったユニットテストを生成してください。正常系と異常系を含めてください

活用ポイント:テストフレームワークやテストケースの種類を明示すると実用的です。

​/​doc - ドキュメント生成

関数やクラスにドキュメントコメントを追加できます。

typescript// ドキュメント化したい関数を選択
/doc JSDoc コメントを追加してください。引数と戻り値の型も明記してください

活用ポイント:コードレビュー前や公開 API の整備に便利です。

参照指定子詳細解説

#file - ファイル全体を参照

特定のファイル全体をコンテキストとして渡せます。

typescript#file:src/api/user.ts のすべての関数に JSDoc コメントを追加してください

活用ポイント:ファイル全体への一括操作に最適です。

#selection - 選択範囲を参照

エディタで選択した範囲を明示的に指定できます。

typescript#selection をより効率的なアルゴリズムに書き換えてください。時間計算量を O(n) に改善してください

活用ポイント:部分的なリファクタリングや最適化に便利です。

#terminalLastCommand - 最後のターミナルコマンドを参照

ターミナルで実行した最後のコマンドとその出力を参照できます。

bash/fix #terminalLastCommand で発生したエラーを修正してください

活用ポイント:ビルドエラーやテスト失敗の修正に非常に効率的です。

#codebase - コードベース全体を検索

プロジェクト全体から関連コードを検索できます。

typescript#codebase でユーザー認証の実装を探し、セキュリティ上の問題がないか確認してください

活用ポイント:大規模プロジェクトでの横断的な調査に最適です。

効果的な組み合わせパターン

パターン 1:ファイル全体へのテスト追加

typescript/tests #file:src/utils/validation.ts の各関数に対して、正常系・異常系・境界値のテストを生成してください

パターン 2:選択範囲へのドキュメント追加

typescript/doc #selection に TSDoc コメントを追加してください。引数、戻り値、例外を含めてください

パターン 3:ターミナルエラーの即座修正

bash/fix #terminalLastCommand のエラーを修正し、#file:package.json の依存関係も更新してください

パターン 4:複数ファイル間の整合性確認

typescript#file:src/models/User.ts と #file:src/controllers/UserController.ts の型の整合性を確認し、不一致があれば修正してください

実践例

ケース 1:React コンポーネントのリファクタリング

指示例

typescript#file:src/components/UserProfile.tsx を関数コンポーネントに変換してください。useState と useEffect を使い、TypeScript の型定義も追加してください

実行結果:クラスコンポーネントが関数コンポーネントに変換され、型安全性とエラーハンドリングが追加されます。

改善項目変更前変更後
コンポーネント形式クラスコンポーネント関数コンポーネント
状態管理this.stateuseState Hook
ライフサイクルcomponentDidMountuseEffect Hook
型安全性なしTypeScript 型定義

ケース 2:ターミナルエラーの即座修正

エラー例

bash$ yarn build
error TS2307: Cannot find module 'lodash' or its corresponding type declarations.
error TS2345: Argument of type 'string' is not assignable to parameter of type 'number'.

指示例

bash/terminal #terminalLastCommand のエラーを分析し、解決方法を提案してください

実行結果

  • 型定義の不足を検出し、yarn add -D @types​/​lodash を提案
  • 型エラーの修正方法を提示(Union 型の使用など)
  • 必要に応じてコード修正も自動生成

ケース 3:API クライアントの統一リファクタリング

目的:プロジェクト全体の fetch API を axios に統一

指示手順

  1. 検索
typescript#codebase で fetch API を直接使用している箇所をすべて探してください
  1. 共通クライアント作成
typescript/new src/lib/apiClient.ts に axios ベースの API クライアントを作成してください。エラーハンドリングとインターセプターを含めてください
  1. ファイル更新
typescript#file:src/api/user.ts を #file:src/lib/apiClient.ts を使用するように書き換えてください

実行結果

改善項目変更前変更後
HTTP クライアントfetch APIaxios
エラーハンドリング各ファイルで個別実装インターセプターで一元管理
認証トークン各関数で設定自動付与
型安全性any 型具体的な型定義

活用のコツ

より良い結果を得るためのポイント

具体性を持たせる:「修正して」ではなく「TypeScript の型定義を追加して null チェックも実装して」のように詳細に指示します。

技術スタックを明示する:「Jest でテスト生成」「React Hooks で実装」など、使用する技術を明確にします。

段階的に進める:大規模な変更は、検索 → 計画立案 → 実装の順に分けて指示することで、品質を確保できます。

コンテキストを活用する#file#selection を使って、対象範囲を明確にすることで、精度の高い結果が得られます。

注意事項

生成されたコードの確認:AI が生成したコードは必ず確認し、プロジェクトの要件に合っているか検証してください。

セキュリティの考慮:認証情報や API キーなどの機密情報が含まれていないか確認しましょう。

テストの実施:リファクタリングや修正後は、必ずテストを実行して動作を確認してください。

まとめ

GitHub Copilot Chat の定型コマンドを理解することで、開発効率が劇的に向上します。本記事で紹介したコマンドを日常的に活用し、あなたの開発ワークフローを最適化してください。

記事のポイント

  • スラッシュコマンド​/​explain​/​fix​/​tests​/​doc などで明確な指示を出せます
  • 参照指定子#file#selection#terminalLastCommand でコンテキストを明示できます
  • 組み合わせ:コマンドと参照指定子を組み合わせることで、複雑なタスクも一度の指示で実行可能です

効果的な使い方

ポイント説明
具体的な指示「修正して」より「TypeScript の型定義を追加して null チェックも実装」
技術の明示使用するフレームワークやライブラリを明記する
段階的実行大規模な変更は検索 → 計画 → 実装の順に分割する
コンテキスト活用#file#selection で対象範囲を明確にする

この速見表をブックマークして、日々の開発に活用してください。慣れてくると、自然と効率的な指示が出せるようになります。

関連リンク