Build and publish VSCode/Cursor extensions to multiple marketplaces with a single GitHub Action
Streamline your extension publishing workflow
Publish to VSCode Marketplace and Open VSX Registry simultaneously
Build for specific platforms like macOS, Linux, and Windows with architecture targeting
Lint, build, package, and publish your extension in one seamless action
Get started in minutes
All available inputs
Input | Description | Default |
---|---|---|
node-version |
Node.js version to use | 20 |
version |
Version to set in package.json | (none) |
lint |
Run lint command before packaging | true |
lint-command |
Lint script name from package.json | lint |
build-command |
Build script name from package.json | package-bundle |
platforms |
Target platforms (comma-separated) | (all) |
vsce-pat |
VSCode Marketplace PAT | (required) |
ovsx-pat |
Open VSX Registry PAT | (optional) |
package-name |
Custom package name for VSIX files | (auto) |
Platform | Description |
---|---|
darwin-x64 |
macOS Intel |
darwin-arm64 |
macOS Apple Silicon |
linux-x64 |
Linux 64-bit |
linux-arm64 |
Linux ARM 64-bit |
win32-x64 |
Windows 64-bit |
win32-arm64 |
Windows ARM 64-bit |
alpine-x64 |
Alpine Linux 64-bit |
alpine-arm64 |
Alpine Linux ARM 64-bit |