Explorer Lens
Focus on a handful of folders inside a large multi-root workspace — without switching .code-workspace files and without writing files.exclude into every package’s settings.json.
Ideal for monorepos where most of the tree is noise for the task at hand.
Features
- Lens activity bar — eye icon in the left activity bar with only the folders you care about
- Status bar picker —
Lens: Off / Lens: …
- Right-click to build lenses — Explorer Lens: Add to Lens
- No settings churn — apply/clear only updates workspace state
- Settings or UI — declare lenses in config, or build them interactively
Install
From source (symlink into Cursor)
cd ~/Documents/vscodeplugins/explorer-lens
npm install
npm run install-extension
Then Developer: Reload Window.
From a VSIX
npm run package
Then Extensions: Install from VSIX… and pick explorer-lens-*.vsix.
Quick start
- Right-click a folder → Explorer Lens: Add to Lens → New lens…
- Add any other folders the same way (same lens)
- Apply when prompted — look for the Explorer Lens eye icon in the activity bar
- Work from that view; clear via the status bar when done
Note: the main Explorer tree is intentionally left alone so git stays clean. The focused tree lives in the Explorer Lens activity bar.
{
"explorerLens.lenses": [
{
"id": "api",
"label": "API surface",
"folders": {
"backend": ["api/frontend"],
"shared": ["api/frontend"]
}
}
]
}
- Keys under
folders must match the name of each multi-root folder
- Paths are relative to that root; use
"." for the entire root
- UI-created lenses live in workspace state and overlay these by
id
Commands
| Command |
Action |
Explorer Lens: Pick Lens |
Choose / clear / delete (also status bar) |
Explorer Lens: Add to Lens |
Add selected Explorer folder |
Explorer Lens: Clear Lens |
Deactivate the current lens |
Explorer Lens: Delete Lens |
Permanently remove a saved lens |
Explorer Lens: Apply Lens by ID |
Apply by id |
How it works
Applying a lens sets an active id in workspace state and refreshes the Lens tree view. The main Explorer is left alone, so git stays clean.
Develop
npm install
npm run compile
npm run watch
npm run package
npm run install-extension
License
MIT