Skip to content

feat(extension): Update extension packaging to distribute skills #251

@WilliamBerryiii

Description

@WilliamBerryiii

Issue Description

Update the VS Code extension to support packaging and distributing skills. Skills must be included in the VSIX package so Copilot can discover them via workspace scanning.

Background

Skills are stored in .github/skills/ and must be included when packaging the extension for distribution. Currently, the extension packaging scripts exclude skills:

!.github/prompts/**
!.github/instructions/**
!.github/agents/**
# Missing: !.github/skills/**

VS Code 1.109 Update (Feb 2026): Agent Skills are now generally available and enabled by default. No experimental settings are required. See VS Code 1.109 Release Notes.

Technical Details

VS Code 1.109 introduces the chatSkills contribution point for extension authors to package and distribute skills. Skills can be discovered two ways:

  1. Extension contribution point (chatSkills) - Skills bundled with extensions
  2. Workspace scanning - Copilot looks for SKILL.md files in default paths or custom chat.agentSkillsLocations

Default skill discovery paths:

  • .github/skills/ (workspace)
  • .claude/skills/ (workspace)
  • ~/.copilot/skills/ (user home)
  • ~/.claude/skills/ (user home)

For the HVE-Core extension, we use both approaches:

  • chatSkills contribution in package.json for extension-installed skills
  • .vscodeignore inclusion to ensure skill files are in the VSIX
  • chat.agentSkillsLocations settings for clone-based installations

Available chat contribution points:

Contribution Point Purpose
contributes.chatParticipants Chat participants
contributes.languageModelTools Tools for agent mode
contributes.chatInstructions Instruction files (we use this)
contributes.chatPromptFiles Prompt files (we use this)
contributes.chatSkills Skills (NEW in 1.109)

Value

Aspect Detail
Enables Skills Distribution Required for skills to be usable via extension
Single Implementation All future skills automatically benefit
No Config Required Skills GA in 1.109, enabled by default

Tasks

Extension Package Updates

  • extension/package.json - Add chatSkills contribution point
{
  "contributes": {
    "chatSkills": [
      {
        "path": "./.github/skills/video-to-gif"
      }
    ]
  }
}
  • extension/.vscodeignore - Add !.github/skills/** to include skills in VSIX

Packaging Script Updates

  • scripts/extension/Prepare-Extension.ps1 - Add skills discovery count and SKILL.md frontmatter validation
  • Handle missing skills directory gracefully (warning, not error)

Documentation Updates

  • extension/PACKAGING.md - Document skills in "What Gets Included" section
  • docs/getting-started/install.md - Add skills support mention
  • docs/contributing/skills.md - Add extension distribution method
  • extension/README.md - Document skills included in extension

VS Code Settings Updates

  • .vscode/settings.json - Verify skills location (.github/skills is a default path, may not need explicit config)

Note: VS Code 1.109 automatically discovers skills in .github/skills/ by default. The chat.agentSkillsLocations setting is only needed for clone-based installations where hve-core is in a non-standard location.

Installer Agent Updates

  • .github/agents/hve-core-installer.agent.md - Update settings templates to include skills paths

Add to all settings template blocks:

{
  "chat.agentSkillsLocations": {
    "<PREFIX>/.github/skills": true
  }
}

Where <PREFIX> varies by method:

Method PREFIX
1 (Peer Clone) ../hve-core
2 (Git-Ignored) .hve-core
3-4 (Mounted/Codespaces) /workspaces/hve-core
5 (Multi-Root) ../hve-core
6 (Submodule) lib/hve-core
  • Update Extension Success Report to mention skills
  • Update validation scripts to check skills directory exists

Cleanup

  • Remove any references to chat.useAgentSkills: true (now GA and enabled by default)

Acceptance Criteria

  • Extension registers skills via chatSkills contribution point in package.json
  • Extension packages skills correctly in VSIX via .vscodeignore
  • Skill SKILL.md frontmatter validated during Prepare-Extension.ps1
  • Skills work automatically (no special settings required - GA in 1.109)
  • Packaging scripts handle missing skills directory gracefully
  • Clone-based installations include chat.agentSkillsLocations in settings
  • hve-core-installer agent configures skills paths for all methods
  • Documentation updated for extension distribution method

Dependencies

  • VS Code 1.109+ required (Agent Skills GA)

References

Metadata

Metadata

Assignees

Labels

featureNew feature triggering minor version bumpmaintainers-onlyRestricted to maintainers — AI artifact expertise required

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions