vscode-project-init
Scaffold a new VS Code extension project using TypeScript via Yeoman generator (yo code), creating src/extension.ts entry point and package.json manifest. Use when the user wants to start a new VS Code extension project from scratch.
Best use case
vscode-project-init is best used when you need a repeatable AI agent workflow instead of a one-off prompt. It is especially useful for teams working in multi. Scaffold a new VS Code extension project using TypeScript via Yeoman generator (yo code), creating src/extension.ts entry point and package.json manifest. Use when the user wants to start a new VS Code extension project from scratch.
Scaffold a new VS Code extension project using TypeScript via Yeoman generator (yo code), creating src/extension.ts entry point and package.json manifest. Use when the user wants to start a new VS Code extension project from scratch.
Users should expect a more consistent workflow output, faster repeated execution, and less time spent rewriting prompts from scratch.
Practical example
Example input
Use the "vscode-project-init" skill to help with this workflow task. Context: Scaffold a new VS Code extension project using TypeScript via Yeoman generator (yo code), creating src/extension.ts entry point and package.json manifest. Use when the user wants to start a new VS Code extension project from scratch.
Example output
A structured workflow result with clearer steps, more consistent formatting, and an output that is easier to reuse in the next run.
When to use this skill
- Use this skill when you want a reusable workflow rather than writing the same prompt again and again.
When not to use this skill
- Do not use this when you only need a one-off answer and do not need a reusable workflow.
- Do not use it if you cannot install or maintain the related files, repository context, or supporting tools.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/vscode-project-init/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How vscode-project-init Compares
| Feature / Agent | vscode-project-init | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Scaffold a new VS Code extension project using TypeScript via Yeoman generator (yo code), creating src/extension.ts entry point and package.json manifest. Use when the user wants to start a new VS Code extension project from scratch.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
SKILL.md Source
## When to use this skill
Use this skill when the user wants to start a new VS Code extension project. This is the first step in the development workflow.
## How to use this skill
1. **Ask for Project Name**: If the user hasn't provided a name, ask for it (e.g., "my-awesome-extension").
2. **Execute Initialization Command**: Run the following command to scaffold the project non-interactively.
```bash
# Replace <project-name> with the actual name
npx --package yo --package generator-code -- yo code <project-name> --template typescript --quick
```
3. **Post-Initialization**:
* Change directory into the new project: `cd <project-name>`
* Explain the structure briefly:
* `src/extension.ts`: Main entry point.
* `package.json`: Manifest file.
* Run `npm install` (if not already done by the generator, though `--quick` usually handles it).
## Example Interaction
User: "Create a new vscode extension named helper"
Agent:
"I'll initialize the project for you.
Running: `npx --package yo --package generator-code -- yo code helper --template typescript --quick`
...
Project created! You can now start adding features."Related Skills
vscode-feature-webview
Add a Webview panel to a VS Code extension for displaying custom HTML content (forms, charts, complex layouts) using vscode.window.createWebviewPanel. Use when the user needs custom UI that cannot be achieved with standard VS Code UI elements, such as dashboards, settings forms, or rich previews.
vscode-feature-command
Register a new command in a VS Code extension by updating package.json contributes.commands and src/extension.ts activate function. Use when the user wants to add a functional command (e.g., text formatting, code generation, UI action) to a VS Code extension.
uniappx-project
Provides per-component and per-API examples with platform compatibility details for uni-app-x (Vue 3 + TypeScript + Vite). Use when the user needs official uni-app-x built-in components, API references with examples, cross-platform compatibility checks, or conditional compilation guidance for uni-app-x projects.
uniappx-project-creator
Creates new uni-app-x projects with Vue 3 + TypeScript + Vite via CLI or HBuilderX, including tsconfig.json setup, manifest.json and pages.json configuration, and Composition API project templates. Use when the user wants to scaffold a new uni-app-x project, initialize TypeScript project files, or set up the uni-app-x development environment.
uniapp-project
Provides per-component and per-API examples with cross-platform compatibility details for uni-app, covering built-in components, uni-ui components, and APIs (network, storage, device, UI, navigation, media). Use when the user needs official uni-app components or APIs, wants per-component examples with doc links, or needs platform compatibility checks.
uniapp-project-creator
Creates new uni-app projects via the official CLI or HBuilderX with Vue 2/Vue 3 template selection, manifest.json and pages.json configuration, and directory structure setup. Use when the user wants to scaffold a new uni-app project, initialize project files with a single command, or set up the development environment.
stitch-mcp-list-projects
List all Stitch projects accessible to the user, returning project names, titles, update times, and thumbnails. Use when the user wants to resume work on an existing Stitch project, browse available projects, or obtain a projectId for screen generation. Supports owned and shared project filters.
stitch-mcp-get-project
Retrieve detailed metadata of a specific Stitch project including design theme, fonts, device type, and screen instances. Use when you need project context before generating new screens or to verify project existence. Requires the project resource name in projects/{id} format.
stitch-mcp-create-project
Create a new Stitch project container via MCP create_project. Use when starting a new design task, app idea, or fresh workspace in Stitch. Extracts a meaningful title from the user request, returns both the full resource name (projects/{id}) and numeric projectId needed for subsequent screen generation.
speckit-initial
Run `specify init` in the current or target directory to bootstrap a Spec Kit project (pull .specify/ and slash commands); supports multiple AI agents and --script sh/ps. Use when the user says "initialize Spec Kit project", "specify init", or "set up Spec Kit in this repo".
react-native-project-creater
Provides one-command project creation for React Native including project initialization, configuration, and template generation. Use when the user asks about creating React Native projects, needs to initialize a new React Native project, or generate React Native project structure.
openspec-initial
Run `openspec init` to initialize OpenSpec in a project directory, creating the openspec/ folder structure and configuring AI tool integrations. Use when the user says "initialize OpenSpec", "openspec init", or "set up OpenSpec in this project".