Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Project Command LauncherNew to Visual Studio Code? Get it now.
Project Command Launcher

Project Command Launcher

ADITHYA-LOCHANA

|
2 installs
| (0) | Free
Find and run package scripts, VS Code tasks, Docker Compose actions and custom commands from one panel, safely through native VS Code Tasks.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Project Command Launcher

Find and run your project's commands from one panel in VS Code: package scripts, VS Code tasks, Docker Compose actions and your own custom commands. Every run goes through VS Code's native Tasks, in the right folder, with Workspace Trust respected.

Beta. Feedback and bug reports are welcome in the Q & A tab on this page.

Features

  • Automatic discovery. Commands appear as each source is found, so slow sources like VS Code tasks don't hold up the rest. Folders without a .vscode/tasks.json skip VS Code's task lookup entirely, which also avoids waking other task-providing extensions. Finds scripts in every package.json (npm, pnpm, Yarn and Bun, including nested packages in monorepos), tasks in .vscode/tasks.json, and Docker Compose files (Up, Down, Build, Logs).
  • Recommended commands. A short list of the commands you're most likely to need, grouped by folder. Pin, rename, hide and reorder them; your choices stay on your machine.
  • Run safely. Commands run as VS Code tasks in the correct working directory. Risky commands (such as clean, deploy or Docker Down) ask before running and show a ⚠ mark.
  • Clear status. Each command shows a type icon and a running, completed, stopped or failed dot. Failed runs offer the terminal, diagnostics and an explicit Run again; nothing retries automatically.
  • Stop and Restart. While a command runs, its Run button becomes Stop, and Restart is in its ⋯ menu. Stopping (or pressing Ctrl+C in its terminal) shows Stopped, not Failed. Running a command again reuses one terminal per command: the previous run's terminal is closed first (never while it is still running).
  • Custom commands. Add your own Process command (one executable with separate arguments) or Shell command (pipelines and compound commands) in a form, saved to .vscode/project-commands.json so your team can share them.
  • Inputs and secrets. Process commands can ask for a text answer or a choice when you run them. Secret values are asked for at Run and never written to the repository; you can optionally remember one in VS Code's secure SecretStorage.
  • Workspace Trust and remote. In Restricted Mode you can browse commands, but nothing runs. Works in local folders, multi-root workspaces, WSL and Dev Containers.

Getting started

  1. Open a folder that has a package.json, .vscode/tasks.json or Compose file.
  2. Click the Project Commands icon in the Activity Bar.
  3. Click Run beside a command. Use More commands (the search icon in the panel's title bar) to see everything that was found, grouped by folder.

If the folder isn't trusted yet, the panel shows a Manage Workspace Trust button. Commands run only in trusted folders.

Adding a custom command

Click + Add custom command. The form opens as a Process command; use the Process / Shell switch at the top to change it.

  • Process: enter the executable (npm, node, python or a path) and each argument separately, so spaces and special characters are passed exactly. Paste command line… can split a line for you to check.
  • Shell: enter the command as you would type it in your terminal. It runs in VS Code's task shell.
  • Inputs asked at Run (Process): add a text question or a choice list; the answer becomes an argument.
  • Environment variables: plain values are saved in the file and shared with the repository. Never put secrets there; use a secret variable instead, which is asked for at Run.
  • Ask before running is on by default.

The preview at the bottom shows how the command will run. Saving never runs anything.

Saved commands live in .vscode/project-commands.json. You can also edit it by hand; VS Code validates it against the bundled schema:

{
  "version": 1,
  "commands": [
    {
      "id": "build-backend",
      "label": "Build backend",
      "cwd": "backend",
      "confirm": false,
      "execution": {
        "kind": "process",
        "executable": "npm",
        "args": ["run", "build"]
      }
    }
  ]
}

Settings

Setting Default Description
projectCommands.recommendationLimit 5 Maximum commands shown in Recommended.
projectCommands.packageSearchLimit 200 Maximum package.json files discovered per workspace folder.

Privacy and security

  • No account, backend or telemetry. Pins, names and usage counts stay in your local VS Code workspace storage.
  • Nothing runs on startup, discovery or save; only an explicit Run starts a command.
  • Restricted Mode blocks running and reading stored secrets.
  • Secret values are never written to .vscode/project-commands.json, previews, errors or logs. Remembered secrets use VS Code SecretStorage and are removed when you delete the command.

Known limitations

  • Package managers are fully tested on Windows; on Linux and macOS automated tests cover npm. Yarn 2 and later (Berry) is not tested.
  • Remembered secrets are tested locally on Windows; remote and other platforms are not yet verified.
  • Dev Containers is verified with current VS Code; with VS Code 1.96 it needs a Docker version older than 29.
  • Saving custom commands from two VS Code windows at the same moment is not verified.
  • Shell commands don't support inputs or secrets; use a Process command for those.
  • Stop works for commands started from the panel in the current window; after a full window reload, stop a still-running command from its terminal. On Windows, a script stopped from its terminal can occasionally exit with code 1, which shows as Failed.
  • Closing the command form's tab directly discards unsaved changes; use Cancel to be asked first.

Requirements

VS Code 1.96 or later. Docker with Compose v2 for Compose actions.

Feedback

Found a bug or have an idea? Please use the Q & A tab on this page.

License

This project is licensed under the MIT License. The full text is shown under License in this page's sidebar.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft