https://github.com/starburst997/workspaces-list
VSCode extension to display all currently opened instances with status
https://github.com/starburst997/workspaces-list
claude-code vscode-extension window-manager workspaces
Last synced: 2 months ago
JSON representation
VSCode extension to display all currently opened instances with status
- Host: GitHub
- URL: https://github.com/starburst997/workspaces-list
- Owner: starburst997
- License: mit
- Created: 2025-10-06T15:09:11.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-10-16T15:49:13.000Z (8 months ago)
- Last Synced: 2025-10-17T00:30:50.094Z (8 months ago)
- Topics: claude-code, vscode-extension, window-manager, workspaces
- Language: TypeScript
- Homepage: https://workspaces-list.jd.boiv.in/
- Size: 482 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Workspaces List
[](https://marketplace.visualstudio.com/items?itemName=jdboivin.workspaces-list)
[](https://open-vsx.org/extension/jdboivin/workspaces-list)
A VSCode/Cursor extension that lists all currently opened workspaces in a sidebar with Claude Code session status monitoring.
**Install from:** [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=jdboivin.workspaces-list) | [Open VSX Registry](https://open-vsx.org/extension/jdboivin/workspaces-list)
## Why Use This Extension
When working with multiple Cursor instances, it's easy to lose track of which workspace Claude is working on. This extension provides a single view of all open workspaces and shows real-time status of Claude Code sessions, making it easy to:
- See which workspaces have Claude running, executing tasks, or waiting for input
- Quickly switch between workspaces with a single click
- Monitor multiple AI-assisted projects simultaneously
> ⚠️ **macOS Only**: This extension currently only works on macOS as it uses native macOS window detection via AppleScript.
## Features
### Workspace List
Displays all open VSCode/Cursor windows in the sidebar. Click any workspace to switch focus to that window.
### Claude Code Status Monitoring
Automatically monitors Claude Code activity in all workspaces and displays status badges:
- 🔴 **WaitingForInput**: Claude needs your approval or input (orange/red)
- 🟠 **Executing**: Claude is actively working on tasks (orange)
- 🟢 **RecentlyFinished**: Claude completed a task (green gradient fading over 30 minutes)
- 🔵 **Running**: Claude process is running but idle
- ⚫ **NotRunning**: No active Claude process
- ⚪ **NoSession**: No Claude conversation found
Status updates occur at configurable intervals only when the extension window is focused.
### Browser Window Listing
Also displays open Safari and Chrome windows for quick access.
### Workspace Customization (Optional)
Add a `.workspaces-list.json` file in your workspace root to customize appearance:
```json
{
"displayName": "My Project",
"icon": "folder",
"color": "#4ECDC4"
}
```
**Icon formats:**
- Codicons: `"folder"`, `"file"`, `"git-branch"`
- Emojis: `"🚀"`, `"📦"`
- SVG: `"..."`
- File paths: `"./icon.png"` or absolute paths
- URLs: `"https://example.com/icon.png"`
## Requirements
- macOS (uses native window detection)
- VSCode 1.85.0+ or Cursor
## Installation
### From VS Code Marketplace
1. Open VS Code or Cursor
2. Go to Extensions (Ctrl+Shift+X)
3. Search for "Workspaces List"
4. Click Install
### Manual Installation
1. Download the latest `.vsix` file from [Releases](https://github.com/starburst997/workspaces-list/releases)
2. Open VS Code or Cursor
3. Run `Extensions: Install from VSIX...` from the Command Palette (Ctrl+Shift+P)
4. Select the downloaded `.vsix` file
### From Source
```bash
git clone https://github.com/starburst997/workspaces-list.git
cd workspaces-list
npm install
npm run compile
```
Press F5 in VSCode to run the extension.
## Usage
1. Open the "Workspaces" panel in the sidebar
2. View all open workspaces with their Claude status
3. Click a workspace to switch to it
4. Use the refresh button if needed
## Settings
All settings are optional. The extension works with defaults out of the box.
### `workspacesList.statusMonitorInterval`
- **Type:** number (milliseconds)
- **Default:** 5000
- **Description:** Interval for monitoring Claude Code status. Lower values provide faster updates but use more resources.
### `workspacesList.processMonitorInterval`
- **Type:** number (milliseconds)
- **Default:** 30000
- **Description:** Interval for scanning Claude Code processes. This detects when Claude starts or stops running.
### `workspacesList.executingThreshold`
- **Type:** number (milliseconds)
- **Default:** 30000
- **Description:** Time threshold for detecting executing status. File activity within this threshold indicates Claude is actively working.
### `workspacesList.waitingMessageAge`
- **Type:** number (milliseconds)
- **Default:** 10000
- **Description:** Minimum age for assistant messages to be considered as waiting for input. This prevents false positives during rapid execution.
## How It Works
The extension reads Cursor's workspace storage to discover open windows and monitors Claude Code's conversation cache (`~/.claude/projects/`) for activity. Status is determined by analyzing message timestamps and content.
## Known Limitations
- macOS only (uses system-specific window detection)
- Claude status detection is heuristic-based and may not be 100% accurate
## License
MIT