Smart Command Manager: Save and Run Terminal Commands in Your Code Editor
Smart Command Manager is a code editor extension that stores the terminal commands you use often, organizes them in a sidebar, and runs them with one click or from a keyboard-driven Quick Command Picker. Saved commands can include placeholders such as <branch>, so one saved command can be reused with different values each time.
Use it to keep your Git, build, test, package-manager, and deployment commands within reach instead of retyping them or searching through shell history.
Who it's for
Developers who run the same long or easy-to-forget commands in the terminal, such as Git workflows, project build and test commands, npm or yarn scripts, flutter pub add, or deployment commands, and want them saved, organized, and shareable inside their editor.
Compatibility
Works in editors that support VS Code extensions, such as Visual Studio Code, Cursor, and Windsurf.
Features
- Sidebar view: A Smart Command Manager view in the Activity Bar lists your saved commands. Run any command with a single click.
- Quick Command Picker: Press
Ctrl+Shift+Space (Cmd+Shift+Space on macOS) to search and run any saved command from the keyboard. Starred and frequently or recently used commands appear first.
- Favorites: Star the commands you use most. Favorites show a ⭐ prefix, appear at the top of the Quick Command Picker, and are remembered across editor sessions.
- Technology Command Packs: Browse 229 technology stacks and choose from more than 2,700 predefined commands to add to your own command list.
- Dynamic commands: Add placeholders such as
<package> or {{message}} to a saved command and enter the values each time you run it. See Dynamic commands.
- Command groups: Organize related commands into groups, for example one group per project.
- Command Panel: A full management panel for your commands. For dynamic commands it shows an input form with a live command preview.
- Search: Find saved commands by searching.
- Import and export: Export your saved commands as JSON and import them to share a collection with teammates.
- Open Folder in Code Editor: Right-click a folder in the Explorer to open it in a new editor window. See Open Folder in Code Editor.
Installation
- Open the Extensions view in your editor (
Ctrl+Shift+X, or Cmd+Shift+X on macOS).
- Search for Smart Command Manager.
- Select Install.
You can also find the extension on its Marketplace page.
Quick start
- Open the Smart Command Manager view in the Activity Bar.
- Click the + button to add your first command, for example
npm test.
- Run the command with a single click from the view.
- Right-click a command you run often and select Toggle Favorite (⭐).
- Press
Ctrl+Shift+Space (Cmd+Shift+Space on macOS) to search and run any saved command from the keyboard.
Browse Technology Command Packs
Need commands for a project stack? Run Smart Commands: Browse Technology Command Packs from the Command Palette, choose a technology, then select the predefined commands you want to add. The catalog includes 229 technology packs and more than 2,700 commands for common development workflows.
Selected commands are added to your saved command list, ready to run, edit, or favorite. Browsing packs does not run commands, and commands you already have are left out of the selection list.
Dynamic commands
Use placeholders in a saved command when you want to enter a value each time you run it. The extension recognizes <name>, {name}, and {{name}} syntax.
For example, save:
flutter pub add <package>
git checkout <branch>
git commit -m "<message>"
When you run a dynamic command, enter the requested value or values.
- Command Panel: A form shows all the inputs and a live command preview. Choose Run Command to execute it, or Paste to Terminal to review or edit it in the terminal before running.
- Tree view and Quick Command Picker: Values are requested one at a time. Cancel the prompt to stop without running the command.
Placeholders named file, filename, filepath, path, folder, or directory also offer suggestions from files in the current workspace when you run from the tree view or Quick Command Picker. You can select a suggestion or enter a custom value.
The saved command template is not changed. The values you enter are used only for that run.
Keyboard shortcuts
| Action |
Windows/Linux |
macOS |
| Quick Command Picker |
Ctrl+Shift+Space |
Cmd+Shift+Space |
| Open Command Panel |
Ctrl+Shift+Z |
Cmd+Shift+Z |
| Add new command |
Ctrl+Shift+A |
Cmd+Shift+A |
These are editor keybindings. To change one or check for conflicts, open your editor's Keyboard Shortcuts editor (Ctrl+K Ctrl+S, or Cmd+K Cmd+S on macOS) and search for the key combination.
Open Folder in Code Editor
Right-click any folder in the Explorer and select Open Folder in Code Editor. The folder opens in a new editor window, using whichever of Cursor, Windsurf, or VS Code is installed.
Examples
Run common project commands from the keyboard
- Save
npm run build and npm test.
- Star both commands.
- Press
Ctrl+Shift+Space (Cmd+Shift+Space on macOS). Your starred commands appear at the top of the picker.
- Select a command to run it.
Reuse one Git command with different values
- Save
git checkout <branch>.
- Run it from the Command Panel, tree view, or Quick Command Picker.
- Enter a branch name when prompted. The command runs with that value, and the saved template stays as
git checkout <branch>.
Share commands with a teammate
- Export your saved commands as JSON.
- Send the file to your teammate.
- They import it into their own Smart Command Manager.
Frequently asked questions
What does Smart Command Manager do?
It saves terminal commands inside your code editor and lets you run them with one click, from a Quick Command Picker, or from the Command Panel. Commands can contain placeholders that you fill in at run time.
Which editors does it work with?
It works in editors that support VS Code extensions, such as Visual Studio Code, Cursor, and Windsurf.
How do I open the Quick Command Picker?
Press Ctrl+Shift+Space on Windows and Linux, or Cmd+Shift+Space on macOS. Starred and frequently or recently used commands appear first.
How do I mark a command as a favorite?
Right-click the command in the tree view and select Toggle Favorite (⭐). Favorites show a ⭐ prefix, appear at the top of the Quick Command Picker, and are remembered across editor sessions.
How do I run a saved command with a different value each time?
Add a placeholder (<name>, {name}, or {{name}}) to the saved command. When you run it, the extension asks for the value. See Dynamic commands.
How do I organize commands for different projects?
Use command groups to separate commands by project or purpose.
Can I share my commands with my team?
Yes. Export your commands as JSON and import them on another machine.
Where are my commands stored? Are they sent anywhere?
Commands are stored locally in your editor's workspace settings. They are not transmitted to any external server.
Which shells does it work with?
Commands run in your editor's integrated terminal, so they use whichever shell that terminal is configured for, such as bash, zsh, or PowerShell. Write each command in the syntax of the shell you use.
How is it different from shell history or tasks.json?
Shell history is an unlabeled list of past commands. Editor task files such as tasks.json define tasks in a JSON file that you edit by hand. Smart Command Manager gives you a sidebar and panel for saving, grouping, and starring commands, plus prompts for placeholder values.
A keyboard shortcut doesn't work or does something else. What should I do?
Another editor binding or extension may use the same key combination. Open the Keyboard Shortcuts editor (Ctrl+K Ctrl+S, or Cmd+K Cmd+S on macOS), search for the combination, and reassign or remove the conflicting binding.
Feedback and support
Share questions, bug reports, and feature requests through the extension's Marketplace page.
If Smart Command Manager saves you time, consider supporting its continued development using the Buy Me a Coffee badge below.
