Multi-Shell Executor is a Visual Studio Code extension that allows you to configure and launch multiple terminals with predefined commands and working directories.
- Launch multiple terminals with predefined commands and working directories.
- Customize terminal names, colors, and commands.
- Supports both Unix-like systems and Windows.
- Easy configuration via
terminalConfig.json
. - New: Use terminal profile names instead of shell paths for more flexibility.
- Clone the repository:
git clone https://github.com/Teut2711/multi-shell-executor.git
- Open the project in Visual Studio Code.
- Install dependencies:
npm install
- Build the extension:
npm run build
- Run the extension in a VS Code development instance:
npm run start
To configure Multi-Shell Executor, add your terminal settings to terminalConfig.json
located in the .vscode
directory of your workspace.
.vscode/terminalConfig.json
[
{
"name": "Check Node Version",
"color": "terminal.ansiBrightCyan",
"command": "node -v",
"cwd": ".",
"delay": 500,
"shellName": "powershell"
},
{
"name": "List Files (Detailed)",
"color": "terminal.ansiBrightGreen",
"command": "ls -lh",
"cwd": "projects",
"delay": 1000,
"shellName": "cmd"
},
{
"name": "Ping Google",
"color": "terminal.ansiBrightBlue",
"command": "ping -n 3 google.com",
"cwd": ".",
"delay": 1500,
"shellName": "cmd"
},
{
"name": "System Info",
"color": "terminal.ansiYellow",
"command": "systeminfo",
"cwd": "scripts",
"delay": 2000,
"shellName": "powershell"
},
{
"name": "Show Environment Variables",
"color": "terminal.ansiBrightMagenta",
"command": "printenv",
"cwd": "configs",
"delay": 2500,
"shellName": "bash"
},
{
"name": "Check Python Version",
"color": "terminal.ansiRed",
"command": "python --version",
"cwd": "python_scripts",
"delay": 3000,
"shellName": "bash"
},
{
"name": "Echo a Message",
"color": "terminal.ansiBrightBlack",
"command": "echo 'Hello from the terminal!'",
"cwd": "logs",
"delay": 3500,
"shellName": "bash"
},
{
"name": "Network Configuration",
"color": "terminal.ansiBrightYellow",
"command": "ipconfig /all",
"cwd": "network",
"delay": 4000,
"shellName": "cmd"
}
]
- Create or open
.vscode/terminalConfig.json
in your workspace. - Add your terminal configurations as shown in the example above.
- Save the file.
- Restart VS Code to apply the changes.
- Open the Command Palette (
Ctrl+Shift+P
orCmd+Shift+P
on macOS). - Search for and run the command: Multi-Shell Executor: Launch Terminals.
- The extension will open multiple terminals as per your configuration.
This project is licensed under the Mozilla Public License Version 2.0. See the LICENSE file for details.