Project Workspace Manager
A VS Code extension for managing and switching between project workspaces.
Features
- 🚀 Quickly switch between projects — Click the status bar or press
Alt+D
- 💾 Auto save & restore workspace state — Your workspace is preserved when switching
- 📁 Multi-folder project support — Group multiple folders into one project
- 📝 Add new projects from UI — Open config file directly from the selector
- ✨ Status bar display — Shows current project name at a glance
Keyboard Shortcut
| Shortcut |
Action |
Alt+D |
Open project selector |
You can customize it in VS Code's keyboard shortcuts (Ctrl+K Ctrl+S), search for Project Manager: Select Project.
Quick Start
- Install the extension in VS Code
- Open a
.code-workspace file — the extension activates automatically
- Press
Alt+D or click the status bar item to open the project selector
- Select a project to switch, or click New Project to open the config file
Usage
Switch Projects
Press Alt+D (or click the status bar), then select a project from the list.
Add a New Project
- Press
Alt+D to open the selector
- Select $(new-file) New Project
- The
work.code-workspace config file opens in the editor
- Add your project under
projectManager.projectList and save
- Press
Alt+D → Refresh to reload the list
Refresh Project List
Select $(refresh) Refresh Project List in the selector, or run:
Ctrl+Shift+P → Project Manager: Refresh Project List
Configuration
Projects are defined in a *.code-workspace file under the projectManager.projectList key:
{
"folders": [
{ "name": "workspace", "path": "./" }
],
"settings": {
"editor.fontSize": 14
},
"projectManager.projectList": {
"project1": {
"description": "project1 description",
"folders": [
{ "name": "project1", "path": "/root/work/project1" }
],
"settings": {
"editor.fontSize": 14
}
},
"project2": {
"description": "project2 description",
"folders": [
{ "name": "project2 main", "path": "/root/work/project2" },
{ "name": "project2 verification", "path": "/root/work/project2/verification" }
]
}
}
}
Fields
| Field |
Required |
Description |
description |
No |
Shown as a subtitle in the selector |
folders |
Yes |
Array of { name, path } objects |
settings |
No |
Project-specific VS Code settings (override globals) |
Troubleshooting
Extension not activating — Make sure a *.code-workspace file is open in VS Code.
Projects not loading — Verify the workspace file is valid JSON and projectManager.projectList is present. Use Refresh to reload.
Changes not saving — Check that the workspace file is writable.
Development
npm install # Install dependencies
npm run compile # TypeScript compile
npm run webpack # Development build
npm run webpack-prod # Production build
vsce package # Package as .vsix
Changelog
v1.3.0
- ✨ New Project action opens config file directly in the editor
- ⌨️ Default keyboard shortcut
Alt+D to open project selector
- 🔧 Improved error handling with user-friendly messages
- ⚡ 5-second project list cache for better performance
- 🔄 Event-driven workspace refresh (replaces polling)
v1.2.1
- ✅ Basic project switching
- ✅ Workspace file integration
- ✅ Status bar display
License
MIT