
Handles the specific conventions for contributing commands to VS Code extensions, covering the distinction between regular Command Palette commands and Side Bar commands. It enforces proper naming patterns like the underscore prefix and #sideBar suffix for sidebar commands, ensures you set up icons and enablement rules correctly, and guides you through the group positioning for view/title and view/item/context menus. The skill is focused on the mechanical details that trip up extension developers, like when commands should be visible in the Command Palette versus when they shouldn't, and how to structure the contribution points properly.
$ npx -y skills add github/awesome-copilot --skill vscode-ext-commands --agent claude-codeInstalls into .claude/skills of the current project.
This skill helps you to contribute commands in VS Code extensions
Use this skill when you need to:
VS Code commands must always define a title, independent of its category, visibility or location. We use a few patterns for each "kind" of command, with some characteristics, described below:
Regular commands: By default, all commands should be accessible in the Command Palette, must define a category, and don't need an icon, unless the command will be used in the Side Bar.
Side Bar commands: Its name follows a special pattern, starting with underscore (_) and suffixed with #sideBar, like _extensionId.someCommand#sideBar for instance. Must define an icon, and may or may not have some rule for enablement. Side Bar exclusive commands should not be visible in the Command Palette. Contributing it to the view/title or view/item/context, we must inform order/position that it will be displayed, and we can use terms "relative to other command/button" in order to you identify the correct group to be used. Also, it's a good practice to define the condition (when) for the new command is visible.
Sponsors