現在VSCodeの./github/prompts/*.prompt.md
で、フロントマターのtools
に指定したMCPサーバー等のツールが正しく使用されないバグが起こっています。
このバグは#255739で修正されており、次回アップデートで反映される予定です。
既にinsidersではこの修正が反映されていて、私も手元のinsidersで修正が確認できました。
バグの概要
詳しくはissueに掲載されていますが、tools
に指定したツールを使うようにGitHub Copilotに指示しても「使用許可がない」と実行されません。
---
mode: "agent"
tools: ["codebase", "create_pull_request", "get_issue", "get_issue_comments", "get_pull_request", "update_pull_request", "git_branch", "git_diff", "git_log", "git_push"]
description: "Pull Request を作成"
---
上記のtools
では組み込みのcodebase
の他、GitHub MCP ServerとGit MCP Serverのツールを指定しています。
実際にGitHub CopilotのAgentモードでスラッシュコマンドとして呼び出します。
mainブランチとの差分取得やコミット一覧取得など、Pull Request アップデート手順の一部に必要なツールが現在ご利用できません。
git_diffやgit_commitなどのツールが有効化されているか、または作業ディレクトリが正しく設定されているかご確認ください。
ツールが有効になり次第、再度お試しください。
明示的に許可が与えられているにも関わらず、利用できないというエラーが返ってきてしまいます。
原因と対策
どうやらがツールセット→その中のツールを参照するロジックにバグがあり、指定したツール類が正しく参照されないことが原因だったようです。
先述した通り、このエラーは既に修正が取り込まれており時期アップデートで修正される予定です。
既に*.prompt.md
を活用してGitHub CopilotのAgentモードを利用している方は以下の選択肢があります。
- 次期アップデートを待つ(7月末〜8月頭頃)
- VSCode insidersを使用する
もしVSCode insidersを利用する場合は既存のVSCodeとは別でインストールすることが可能です。
// Homebrewの場合
$ brew install --cask visual-studio-code@insiders
VSCodeのSettings Syncを利用すれば、VSCodeとVSCode insiders間の設定や拡張機能等も同期されるのでそんなに違和感なく一時的に利用可能です。