Bulk Extension Remover

Bulk cleanup for installed Visual Studio Code extensions, with dry-run previews
and protected-extension guardrails.
Preview


Features
- Lists installed, non-built-in extensions.
- Filters by display name, publisher, description, or extension id.
- Supports selecting multiple visible extensions.
- Protects important extensions from bulk removal.
- Supports dry runs that preview removals without uninstalling anything.
- Confirms before uninstalling.
- Runs uninstall actions sequentially with cancellable progress feedback.
- Shows per-run success, pending-restart, skipped, and failed counts.
- Supports retrying failed removals.
- Explains common dependency-related uninstall failures in plain language.
- Opens VS Code's native restart screen when removed extensions require a restart.
Usage
- Open the Bulk Extension Remover activity bar icon.
- Search or filter the installed extension list.
- Protect anything that should never be removed in a batch.
- Use Dry Run to preview the cleanup without uninstalling anything.
- Select extensions and click Uninstall Selected.
Development
This project follows the common Microsoft VS Code extension sample layout:
src/extension.ts handles activation.
src/view/ handles webview setup and HTML generation.
src/domain/ contains testable extension-list, uninstall-plan, and failure-message logic.
src/shared/ contains message contracts.
media/ contains webview CSS, JavaScript, and icons.
out/ contains compiled JavaScript and is generated by TypeScript.
Install dependencies and compile:
npm install
npm run compile
Launch the Extension Development Host:
npm run watch
Then press F5 in VS Code.
Tests
Run the fast contributor checks:
npm run compile
npm run lint
npm run test:unit
Run the VS Code Extension Host smoke tests:
npm run test:integration
CI runs compile, lint, unit tests, integration tests, and packaging on pull
requests and pushes to main or master.
Packaging
npm run package
The command creates a .vsix package that can be installed from VS Code with
Extensions: Install from VSIX....
Contributing
Contributions are welcome. Please read CONTRIBUTING.md
before opening a pull request.
Security and Privacy
- This extension intentionally does not add telemetry.
- Built-in extensions are excluded.
- The extension excludes itself from the uninstall list.
- Security-sensitive changes should follow SECURITY.md.