vscode-extension-expert

Guide VS Code extension development across architecture, debugging, and publishing workflows.

21|11|Updated Jul 4, 2025
One-click install
npx skills add https://github.com/s-hiraoku/vscode-sidebar-terminal --skill vscode-extension-expert
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vscode-extension-expert
Source: https://github.com/s-hiraoku/vscode-sidebar-terminal/tree/main/.claude/skills/vscode-extension-expert
Command: npx skills add https://github.com/s-hiraoku/vscode-sidebar-terminal --skill vscode-extension-expert

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides expert-level guidance for VS Code extension development, covering architecture, activation events, security, testing, and publishing workflows.

Core Features & Use Cases

  • Extension architecture: Plan and structure extension projects with activation events and contributes.
  • WebView security: Implement CSP and nonce-based security.
  • LSP features: Design and implement Language Server Protocol features.
  • Performance & publishing: Optimize startup, packaging, and distribution.

Quick Start

Create a new extension project scaffold with activation events configured in package.json, implement a basic WebView, and prepare for publishing.

Frequently Asked Questions about vscode-extension-expert

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure a VS Code extension project with activation events?

VS Code extension architecture starts with configuring activation events and contribution points in package.json. Define when your extension activates (e.g., onCommand, onLanguage) and what commands or UI elements it contributes, then implement handlers in your main extension file to satisfy those declared capabilities.

What security practices should I follow when building WebViews in VS Code?

Implement Content Security Policy (CSP) headers and nonce-based script injection in WebViews to prevent XSS attacks. Load resources only from trusted sources, sanitize user input, and use VS Code's messaging API to communicate securely between the extension host and WebView context.

How do I implement Language Server Protocol features in a VS Code extension?

Design LSP features by defining server capabilities in your language server initialization, then implement handlers for requests like hover, completion, and diagnostics. Connect your VS Code extension client to the server using vscode-languageclient, which manages the protocol communication and lifecycle.

What steps should I take before publishing a VS Code extension to the Marketplace?

Prepare your extension for publishing by optimizing startup performance, packaging with vsce, and configuring metadata in package.json. Test activation events and contribution points thoroughly, verify security practices, then create a publisher account and push your package to the Marketplace.

Can I debug runtime issues in a VS Code extension efficiently?

Debug VS Code extensions using the built-in debugger by launching with F5, which attaches to both the extension host and renderer processes. Set breakpoints in your code, inspect variables, and use the Debug Console to test VS Code API calls and diagnose activation or messaging failures.