VSenv 是一个完全免费开源的 VS Code 离线实例管理器,允许您创建、启动、停止和删除独立的 VS Code 实例。每个实例拥有独立的用户数据和扩展目录,实现完全隔离的开发环境。
命令 | 描述 | 示例 |
---|---|---|
create <实例名> [路径] |
创建新的 VS Code 实例 | vsenv create work |
start <实例名> [选项] |
启动指定的实例 | vsenv start work |
stop <实例名> |
停止指定的实例 | vsenv stop work |
remove <实例名> |
删除指定的实例 | vsenv remove work |
list |
列出所有实例 | vsenv list |
命令 | 描述 | 示例 |
---|---|---|
regist <实例名> |
将 vscode:// 协议重定向到此实例 | vsenv regist work |
regist-guard <实例名> |
守护 vscode:// 协议不被篡改 | vsenv regist-guard work |
logoff |
恢复默认的 vscode:// 协议处理程序 | vsenv logoff |
rest <路径> |
手动重建 vscode:// 协议 | vsenv rest "C:\Program Files\VS Code\Code.exe" |
命令 | 描述 | 示例 |
---|---|---|
extension <实例名> <扩展ID> |
安装单个扩展 | vsenv extension work ms-python.python |
extension import <实例名> <列表文件> |
批量安装扩展 | vsenv extension import work extensions.txt |
extension list <实例名> |
列出已安装的扩展 | vsenv extension list work |
命令 | 描述 | 示例 |
---|---|---|
export <实例名> <导出路径> |
导出实例为 .vsenv 文件 | vsenv export work backup.vsenv |
import <配置文件> [新实例名] |
导入实例 | vsenv import backup.vsenv restored |
--lang <en|cn>
- 设置界面语言(默认为英文)--host
- 随机化主机名(需要管理员权限)--mac
- 生成随机 MAC 地址(需要管理员权限)--proxy <url>
- 设置 HTTP(S) 代理--sandbox
- 在受限的 Logon-Session 沙箱内启动--appcontainer
- 在 AppContainer 内启动(实验功能)--wsb
- 在 Windows Sandbox 内启动(实验功能)--fake-hw
- 随机化硬件指纹# 创建名为 "work" 的实例
vsenv create work --lang cn
# 启动实例(基本)
vsenv start work
# 启动实例(带网络隔离)
vsenv start work --host --mac --proxy http://proxy.internal:3128
# 启动实例(带硬件指纹随机化)
vsenv start work --fake-hw
# 启动实例(在 Windows Sandbox 中)
vsenv start work --wsb
# 安装中文语言包
vsenv extension work
# 安装 Python 扩展
vsenv extension work ms-python.python
# 批量安装扩展
vsenv extension import work extensions.txt
# 列出已安装的扩展
vsenv extension list work
# 将 vscode:// 协议重定向到 work 实例
vsenv regist work
# 守护协议不被篡改
vsenv regist-guard work
# 恢复默认协议处理程序
vsenv logoff
# 手动重建协议
vsenv rest "C:\Program Files\VS Code\Code.exe"
VSenv 提供多种隔离方案,按隔离程度从低到高:
启用 --fake-hw
选项后,VSenv 会随机化以下硬件信息:
VSenv 提供以下网络隔离选项:
要安装扩展,您需要知道其扩展 ID。查找方法:
例如,Python 扩展的 URL 是:https://marketplace.visualstudio.com/items?itemName=ms-python.python
,其扩展 ID 就是 ms-python.python
。
创建文本文件,每行一个扩展 ID,支持注释(以 # 开头):
# 开发工具
ms-python.python
ms-vscode.cpptools
dbaeumer.vscode-eslint
# 主题
PKief.material-icon-theme
然后使用以下命令批量安装:
将实例打包为 .vsenv 文件,包含:
从 .vsenv 文件恢复实例:
如果不指定新实例名,将使用原始名称。
问题:启动实例时提示 "Code.exe not found"
解决:确保已将 VS Code 离线包解压到实例目录的 vscode
子目录中。
问题:注册协议后,vscode:// 链接仍打开默认 VS Code
解决:
vsenv logoff
恢复默认设置vsenv rest
手动重建协议问题:安装扩展时提示 "VS Code CLI not found"
解决:确保实例目录中存在 vscode\bin\code.cmd
文件。
问题:使用 --wsb
选项时启动失败
解决:
问题:使用 --host
或 --mac
选项时提示需要管理员权限
解决:以管理员身份运行命令提示符或 PowerShell,然后执行命令。
如果您遇到问题或有建议,请通过以下方式获取帮助:
记住:VSenv 是完全免费开源的软件,由社区驱动开发。欢迎贡献代码和文档!