Task Deck
A VSCode extension that lists every task VSCode knows about — from tasks.json as well as from other extensions' task providers (npm, Gulp, Grunt, ...) — in a collapsible, per-source-grouped view in the Activity Bar.
Features
- Sidebar view ("Task Deck") showing all discovered tasks, grouped by their
source (e.g. Workspace for tasks.json, npm, Gulp, Grunt, or any custom task provider).
- Each source is its own collapsible group ("accordion"); tasks are always listed under their source.
- Click a task to run it.
- Per source: enable/disable visibility, pick an icon and a color, and restrict which tasks are shown via include/exclude name patterns (
*/? wildcards) — all edited from the regular VSCode Settings UI (Ctrl+,).
- The gear icon in the view title (or right-clicking a source) opens the Settings UI filtered to this extension's settings, for editing icon, color and filters across all sources at once.
- A source that has been configured but is no longer discovered (e.g. its task provider was removed, or a
tasks.json entry was deleted) keeps its stored configuration and stays visible in the tree with a warning triangle and an explanatory tooltip, instead of silently disappearing. Right-click it to permanently remove its configuration once it's no longer needed.
- The eye icon on a source hides it — the source and all of its tasks disappear from the tree entirely. Bring it back by flipping its entry in
quickTasks.sourceEnabled to true in Settings, or via Task Deck: Show Hidden Source… in the Command Palette.
- Pin your most-used tasks to a "Pinned" group at the top of the tree; pinned tasks still run from their original source too.
- While a task runs its icon spins; if it exits with a non-zero code, the icon turns into a warning triangle showing the exit code until the task runs again successfully.
- The search icon in the view title opens a fuzzy-searchable quick pick across every currently visible task, for workspaces with many sources or tasks.
- By default, changes to a source's visibility are saved to the current workspace. Set
quickTasks.sourceSaveToUser for a source to save it to your User Settings instead, so it stays hidden (or shown) across projects.
Development
npm install
npm run compile # or: npm run watch
Press F5 in VSCode to launch an Extension Development Host with the extension loaded.
Settings
Each source is configured through five settings, all keyed by the task's source id (e.g. Workspace, npm). quickTasks.sourceEnabled, quickTasks.sourceIcons and quickTasks.sourceColors render as editable tables directly in the Settings UI (icons and colors offer a dropdown of curated values, plus Edit in settings.json for any other codicon/theme-color id); quickTasks.sourceInclude/quickTasks.sourceExclude (arrays) still need Edit in settings.json, reachable from the same page.
"quickTasks.sourceEnabled": {
"Workspace": true,
"npm": true
},
"quickTasks.sourceIcons": {
"Workspace": "checklist",
"npm": "package"
},
"quickTasks.sourceColors": {
"Workspace": "charts.blue",
"npm": "charts.green"
},
"quickTasks.sourceExclude": {
"npm": ["pretest*"]
}
The older quickTasks.sources object setting is deprecated but still read as a fallback, so existing configuration keeps working.
License
Proprietary, all rights reserved. See the LICENSE file for the terms of use. Third-party components and their
licenses are listed in THIRD_PARTY_NOTICES.md.