This repository was archived by the owner on May 20, 2026. It is now read-only.
feat: wire plugins through CopilotCLI customization provider#4962
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR adopts the proposed vscode.chat.plugins API and plumbs plugin resources through the extension’s prompt-file abstraction so the Copilot CLI customization provider can surface “Plugins” in the chat customization UI.
Changes:
- Add
ChatPluginResourcepluschat.plugins/chat.onDidChangePluginsto the local proposedchatPromptFilesAPI typings. - Extend
IChatPromptFileServiceand its VS Code-backed implementation to exposepluginsandonDidChangePlugins. - Update the Copilot CLI customization provider to support and return plugin customization items, including test/mock updates and new plugin-focused unit tests.
Reviewed changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/extension/vscode.proposed.chatPromptFiles.d.ts | Adds ChatPluginResource and exposes chat.plugins + chat.onDidChangePlugins in the proposed API typings. |
| src/extension/chatSessions/common/chatPromptFileService.ts | Extends IChatPromptFileService with plugins and onDidChangePlugins. |
| src/extension/chatSessions/vscode-node/chatPromptFileService.ts | Wires vscode.chat.plugins and vscode.chat.onDidChangePlugins through the service implementation. |
| src/extension/chatSessions/vscode-node/copilotCLICustomizationProvider.ts | Adds Plugins to supportedTypes, emits invalidation on plugin changes, and returns plugin items. |
| src/extension/chatSessions/vscode-node/test/copilotCLICustomizationProvider.spec.ts | Updates mocks and adds coverage for plugin items + plugin change invalidation. |
| src/extension/chatSessions/copilotcli/vscode-node/test/testHelpers.ts | Updates test helper mock to include plugins and onDidChangePlugins. |
| src/extension/chatSessions/copilotcli/node/test/copilotCLISkills.spec.ts | Updates test stub to satisfy new IChatPromptFileService members. |
| src/extension/chatSessions/copilotcli/node/test/copilotCliAgents.spec.ts | Updates test stub to satisfy new IChatPromptFileService members. |
a4c45b5 to
54ab7e7
Compare
54ab7e7 to
b85db26
Compare
Consume the new chat.plugins API and plumb it through to the CopilotCLI customization provider: - Mirror updated chatPromptFiles d.ts with ChatPluginResource - Add plugins/onDidChangePlugins to IChatPromptFileService interface - Wire vscode.chat.plugins in ChatPromptFileService implementation - Add Plugins to CopilotCLI provider supportedTypes (unhides section) - Add getPluginItems() to CopilotCLI provider - Subscribe to onDidChangePlugins for provider invalidation - Fix all test mocks for new interface member - Add plugin tests (type, name, combined items, onDidChange) Depends on: microsoft/vscode josh/plugins-chatpromptfiles-api
1b0e951 to
30b27ae
Compare
bhavyaus
approved these changes
Apr 3, 2026
connor4312
approved these changes
Apr 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Consume the new
chat.pluginsAPI and plumb it through to the CopilotCLI customization provider.Changes
chatPromptFilesd.tsplugins/onDidChangePluginstoIChatPromptFileServiceinterfacevscode.chat.pluginsinChatPromptFileServiceimplementationPluginsto CopilotCLI providersupportedTypes(unhides Plugins section)getPluginItems()— derives name frombasename(uri)onDidChangePluginsfor provider invalidationDepends on: microsoft/vscode#307669