awesome-copilot との出会い
GitHub Copilot をより効果的に活用したいと思っていたところ、素晴らしいリポジトリに出会いました。それが GitHub 公式の awesome-copilot です。
このリポジトリには、Copilot を最大限に活用するためのプロンプト、インストラクション、コレクションが体系的にまとめられています。しかも、サイトのページにあるボタンをクリックするだけで VS Code に直接インストールできる手軽さが魅力です。
awesome-copilot の魅力
ワンクリックでインストールできる手軽さ
従来、カスタムプロンプトやインストラクションを設定するには、ファイルを手動で作成したり、リポジトリをクローンしたりする必要がありました。しかし、awesome-copilot では、Web ページ上のボタンをクリックするだけで、必要なファイルが自動的に VS Code にインストールされます。
この UX の良さは、開発者の心理的なハードルを大きく下げてくれます。「とりあえず試してみよう」という気持ちになれるのです。
suggest-awesome-github-copilot-prompts の体験
特に印象的だったのが、suggest-awesome-github-copilot-prompts というプロンプトです。これは、現在のリポジトリの状態を分析し、利用可能なプロンプトを提案してくれる対話型ツールです。
このプロンプトを実行すると、Copilot が「あなたのプロジェクトには、この機能が使えますよ」と教えてくれます。自分では気づかなかった便利な機能を発見できるので、これは体験しておくべきだと強く感じました。
github-copilot-starter の自動設定
もう一つ素晴らしいのが、github-copilot-starter です。このツールは、リポジトリの状態を調べて、適切なプロンプトやインストラクションを自動的に選んでインストールしてくれます。
まるで「Copilot があなたのプロジェクトに最適な設定を用意してくれる」ような体験です。新しいプロジェクトを始める際に、このツールを使えば、すぐに Copilot を最大限に活用できる環境が整います。
カスタムエージェントの現状と課題
素晴らしい体験ができる一方で、いくつかの課題も見えてきました。
VS Code チャット画面での利用
awesome-copilot で提供されるプロンプト(.prompt.md)は、VS Code のチャット画面で使う前提のようです。これは非常に便利なのですが、GitHub の Copilot coding agent(エージェントパネル)からは残念ながら使用できません。
VS Code のチャット機能と Copilot coding agent は、UI も使い方も異なるため、プロンプトの互換性がないのは理解できますが、将来的に統合されることを期待しています。
日本語コミュニケーションの課題
また、AGENTS.md や copilot-instructions.md でコミュニケーション言語を日本語に設定していても、Copilot がかなりの頻度で英語で応答してくることがあります。
これは、プロンプト自体が英語で書かれていることや、モデルのデフォルト動作が影響しているのかもしれません。日本語で開発している開発者にとっては、少し不便に感じる点です。
ドメイン特化型 AI の重要性
awesome-copilot を使う中で、AI をうまく使うには専門性を高める方が良いという考えに辿り着きました。
具体的には、汎用的な大きなエージェントを一つ作るのではなく、ドメイン特化型のカスタムエージェントを多く作成して、必要に応じて使い分けるというアプローチです。
専門性を高めるメリット
ドメイン特化型 AI には、以下のような効果があることが研究で示されています:
- ドメイン内性能の向上: 特定領域に特化することで、より正確で詳細な回答が得られる
- ハルシネーションとリスク低減: 専門知識に絞ることで、誤った情報を生成する確率が下がる
- 専門知識・語彙のキャプチャ: ドメイン固有の用語や概念を適切に理解できる
- 少量データでの有効性: 微調整手法により、少ないデータでも高い性能を発揮
- コストと効率のトレードオフ: 必要な機能に絞ることで、効率的に動作する
カスタムエージェントの効果
カスタムエージェントを正しく使えば、素晴らしいツールになります。Copilot coding agent からは使いにくいかもしれませんが、ドメイン特化型のカスタムエージェントを多く定義しておけば、再利用しやすくなるのです。
今やっていることは、決して無駄にはなりません。
学びの旅路
Docker/Kubernetes との類似点
AI 関連の技術をキャッチアップしていて、ふと数年前のことを思い出しました。あの頃、コンテナ技術(Docker や Kubernetes)を一生懸命に勉強していました。
あまり使う機会がなくて、Kubernetes は今でもイマイチよくわかっていません。でも、Docker はそれなりにわかっている気がしています。
分からないなりにも、色々と経験をしていくと、あるタイミングで急に理解が深まることがあります。だから、今はこれでよしとしています。
Copilot に調査を依頼する時代
ただ、数年前と違うのは、調べるのも Copilot に頼めることです。
例えば、上で書いた「専門性を向上させる方が良い」という話も、Copilot に調査してもらいました。自分で Google 検索して論文を読んで…という従来の方法よりも、圧倒的に効率的です。
AI を活用した学習スタイルは、これからのスタンダードになるでしょう。
まとめ:カスタムエージェントの未来
色々と話題が発散してしまいましたが、何が言いたいかというと、カスタムエージェントは正しく使えば、素晴らしいツールになるということです。
Copilot coding agent からは使いにくいかもしれませんが、ドメイン特化型のカスタムエージェントを多く定義しておけば、再利用しやすくなります。今やっていることは決して無駄にはならないのです。
Stay hungry. Stay foolish.
これからも、新しい技術に触れながら、少しずつ理解を深めていきたいと思います。