A tool to download and install VS Code extensions in VSCodium-based IDEs.
This package was born out of the creator's experience trying out the Windsurf IDE. After discovering that many important extensions were missing, he learned that Windsurf, like other VSCodium-based IDEs, uses a different extensions marketplace due to Microsoft's licensing restrictions.
Rather than manually downloading and installing each extension, he decided to try out Windsurf's AI features by building a package that could copy over VS Code extensions with a single command. That package is vsix-to-vscodium
.
pip install vsix-to-vscodium
# Basic usage (defaults to windsurf)
vsix-to-vscodium publisher.extension-name
# Specify a different IDE
vsix-to-vscodium --ide windsurf publisher.extension-name
# Example: Install Python extension in Windsurf
vsix-to-vscodium --ide windsurf ms-python.python
If you're switching from VS Code to a VSCodium-based IDE, you can transfer all your installed extensions at once:
# Transfer all extensions (defaults to windsurf)
vsix-to-vscodium --transfer-all
# Transfer all extensions to a specific IDE
vsix-to-vscodium --transfer-all --ide windsurf
- Downloads extensions from VS Code Marketplace
- Automatically installs extensions in VSCodium-based IDEs
- Supports multiple VSCodium-based IDEs (e.g., Windsurf)
- Bulk transfer of all installed VS Code extensions
- Supports specific version installation
- Caches downloaded extensions to avoid redundant downloads
- Cleans up downloaded files after installation
-
When searching for installed extensions in the Extensions view, you must prepend
@enabled
to your search term to see extensions installed via this tool:
- Always remove downloaded files, even if installation fails
- Show failed installs in final message when installation is complete, especially when installing multiple extensions
- Allow updates of extensions that have newer versions of what's installed
- Allow selecting extensions for install instead of just installing everything in VS Code
- Some extensions actually don't make sense to copy, e.g., GitHub Copilot when running Windsurf
- Don't install disabled extensions
- Perhaps add a flag that allows user to specify that disabled extensions should also be installed
- Use open-vsx extensions directly when extensions are already available there
To set up the development environment:
# Clone the repository
git clone https://github.com/CodeWithOz/vsix-to-vscodium.git
cd vsix-to-vscodium
# Create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install development dependencies
pip install flit
flit install -s --deps develop
Run tests:
pytest
MIT