VSCode Copilot 配置文件提示'未知工具'警告解析
最近在使用 VSCode Copilot Chat 时,不少开发者在 Ask.agent.md 配置文件中遇到了诊断警告。错误信息通常指向某些'未知工具',例如 github/issue_read 或 github.vscode-pull-request-github/issue_fetch。
现象描述
诊断提供者 prompts-diagnostics-provider 会报告如下错误:
{
"resource": "/d:/.vscode/User/globalStorage/github.copilot-chat/ask-agent/Ask.agent.md",
"owner": "prompts-diagnostics-provider",
"severity": 4,
"message": "未知工具 'github/issue_read'。",
"startLineNumber": 7,
"startColumn": 51
}
这类警告显示为 severity: 4(Warning),虽然不会直接阻断 Copilot 的运行,但看着确实让人心里没底。
原因分析
起初我们以为是因为缺少了特定的扩展插件。确实,部分工具如 github.vscode-pull-request-github/issue_fetch 需要安装对应的 GitHub Pull Requests 扩展才能被识别。
但在安装了相关扩展后,核心的 github/issue_read 依然报错。深入排查后发现,这个工具实际上是 Copilot 的内置工具,并非第三方扩展提供。问题出在 VSCode 的版本更新上。
根据社区反馈和 GitHub Issue 追踪,VSCode 1.113 版本引入了一个回归问题。在这个版本中,Copilot 内置的三个 Agent 文件引用了 github/issue_read,但没有任何已安装的扩展正确注册了这个工具 ID。这导致 VSCode 无法找到对应的实现,从而抛出警告。
解决方案
既然确认是版本层面的已知问题,手动修复比较困难,因为删除相关文件后,每次更新都会自动重建。目前的处理建议如下:
- 安装推荐扩展:为了覆盖其他依赖项,建议安装
GitHub Pull Requests扩展(ID:github.vscode-pull-request-github)。这能解决部分工具的警告。 - 忽略警告:如果只关注 的报错,且不影响实际使用,可以暂时忽略。这不是功能性错误(Error),只是诊断级别的提示(Warning)。

