Skip to content

Conversation

@pwang347
Copy link
Member

No description provided.

Copilot AI review requested due to automatic review settings January 10, 2026 01:23
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 pull request unifies the agent skills internal architecture by integrating skills into the existing prompt file provider system. Skills are now treated as a first-class prompt type alongside prompts, instructions, and agents.

Key changes:

  • Adds SkillProvider API to the proposed extension API for registering skill providers
  • Integrates PromptsType.skill into the type system and all related switch statements
  • Implements NewSkillFileAction for creating new skill files with validation

Reviewed changes

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

Show a summary per file
File Description
src/vscode-dts/vscode.proposed.chatPromptFiles.d.ts Adds SkillProvider, SkillResource, and SkillContext types with registration method
src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.ts Replaces hardcoded 'SKILL.md' string with SKILL_FILENAME constant
src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.ts Adds skill activation event handling for PromptsType.skill case
src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.ts Exports SKILL_PROVIDER_ACTIVATION_EVENT constant
src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.ts Adds SKILL_LANGUAGE_ID, SKILL_DOCUMENTATION_URL, and PromptsType.skill enum value
src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.ts Adds SKILL_FILENAME constant, SKILLS_DEFAULT_SOURCE_FOLDER, and skill file type detection logic
src/vs/workbench/contrib/chat/common/promptSyntax/config/config.ts Adds SKILLS_LOCATION_KEY configuration and skill case in getPromptFileLocationsConfigKey
src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.ts Implements NewSkillFileAction with skill name validation and getSkillContentSnippet helper
src/vs/workbench/api/common/extHostChatAgents2.ts Extends provider map type to include SkillProvider and adds skill handling in switch statements
src/vs/workbench/api/common/extHost.api.impl.ts Registers registerSkillProvider method in the chat namespace
Comments suppressed due to low confidence (1)

src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.ts:184

  • Test coverage is missing for getCleanPromptName with SKILL.md files. The test suite should include a test case to verify that getCleanPromptName correctly extracts the name from SKILL.md files (case insensitive), returning 'SKILL' for all variations like 'SKILL.md', 'skill.md', and 'Skill.md'.
	// For SKILL.md files (case insensitive), return 'SKILL'
	if (fileName.toLowerCase() === SKILL_FILENAME.toLowerCase()) {
		return basename(fileUri.path, '.md');
	}

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.

2 participants