Skip to content

skills: bubble plugin skills through the "configure skills" and agent customization view#297754

Merged
connor4312 merged 1 commit intomainfrom
connor4312/297249
Feb 25, 2026
Merged

skills: bubble plugin skills through the "configure skills" and agent customization view#297754
connor4312 merged 1 commit intomainfrom
connor4312/297249

Conversation

@connor4312
Copy link
Member

Closes #297249

Copilot AI review requested due to automatic review settings February 25, 2026 18:46
@connor4312 connor4312 enabled auto-merge February 25, 2026 18:46
@connor4312 connor4312 self-assigned this Feb 25, 2026
@vs-code-engineering vs-code-engineering bot added this to the February 2026 milestone Feb 25, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds first-class support for plugin-provided skills/prompt files by introducing a new PromptsStorage.plugin storage type and wiring it through prompt discovery, pickers, and the AI Customization management UI so plugin artifacts show up and are treated as read-only.

Changes:

  • Add PromptsStorage.plugin + IPluginPromptPath and plumb plugin prompt files through PromptsService (listing, labeling, telemetry, skill discovery ordering).
  • Update plugin discovery to surface skills via skills/<skill>/SKILL.md.
  • Update UI surfaces (prompt file pickers + AI Customization management/list) to display plugin items and treat them as read-only (with a plugin icon).

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/vs/workbench/test/browser/componentFixtures/promptFilePickers.fixture.ts Updates test fixture switch to handle PromptsStorage.plugin.
src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.ts Tracks plugin prompt files, exposes plugin storage listing, updates labels/telemetry, and includes plugin skills in discovery ordering.
src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.ts Extends prompt storage and prompt path/source unions to include plugin storage and pluginUri.
src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.ts Adds PromptFileSource.Plugin for classification/telemetry.
src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.ts Adjusts plugin skill discovery to expect SKILL.md within skill folders.
src/vs/workbench/contrib/chat/common/chatModes.ts Serializes/revives custom chat mode sources for plugin-backed agents.
src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.ts Adds plugin section to prompt pickers and adds an exhaustive storage switch.
src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.ts Treats plugin items as read-only in the embedded editor path.
src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.ts Prevents deleting plugin-provided files (alongside extensions).
src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.ts Adds plugin grouping/badging so plugin artifacts appear in the management list.
src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.ts Registers a new plugin storage icon.
Comments suppressed due to low confidence (1)

src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.ts:204

  • This dialog is now shown for both extension and plugin files, but the title/detail strings still say “Extension File” and only mention disabling extensions. Update the user-facing text to cover plugins as well (or use a generic read-only message).
		// Extension and plugin files cannot be deleted
		if (storage === PromptsStorage.extension || storage === PromptsStorage.plugin) {
			await dialogService.info(
				localize('cannotDeleteExtension', "Cannot Delete Extension File"),
				localize('cannotDeleteExtensionDetail', "Files provided by extensions cannot be deleted. You can disable the extension if you no longer want to use this customization.")
			);

@connor4312 connor4312 merged commit 3b06e45 into main Feb 25, 2026
20 checks passed
@connor4312 connor4312 deleted the connor4312/297249 branch February 25, 2026 19:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

agent plugins: workiq plugin not working?

4 participants