Terminal Restore
Automatically create named terminal tabs when you open a workspace in VS Code or Cursor. Configure per-project via settings or a dedicated config file.
Features
- Auto-restore terminals on workspace open
- Named tabs for each terminal
- Startup commands — run a command when a terminal is created
- Icons and colors — customize terminal tabs with codicons and theme colors
- Shell-ready detection — waits for the shell to fully initialize before running commands (uses shell integration with
processId fallback)
- Per-project config via
.terminal-restore.json (takes priority over settings)
- Commands to manually create or close all managed terminals
Configuration
Option 1: .terminal-restore.json (recommended)
Create a .terminal-restore.json file in your workspace root:
{
"terminals": [
{ "name": "dev", "command": "npm run dev", "icon": "play", "color": "terminal.ansiGreen" },
{ "name": "tests", "command": "npm test -- --watch", "icon": "beaker" },
{ "name": "deploy", "icon": "rocket", "color": "terminal.ansiRed" },
{ "name": "git", "icon": "git-merge", "color": "terminal.ansiMagenta" },
{ "name": "shell" }
]
}
Option 2: VS Code Settings
Add to your settings.json (workspace or user):
{
"terminalRestore.terminals": [
{ "name": "dev", "command": "npm run dev", "icon": "play", "color": "terminal.ansiGreen" },
{ "name": "shell" }
],
"terminalRestore.autoRestore": true
}
If both exist, .terminal-restore.json takes priority.
Terminal Options
| Property |
Type |
Required |
Description |
name |
string |
yes |
Terminal tab name |
command |
string |
no |
Command to run on terminal creation |
icon |
string |
no |
Codicon name (e.g. terminal-bash, rocket, hubot) |
color |
string |
no |
Theme color for the icon (e.g. terminal.ansiRed, terminal.ansiGreen, terminal.ansiBlue) |
Settings
| Setting |
Type |
Default |
Description |
terminalRestore.terminals |
array |
[] |
List of terminals to create |
terminalRestore.autoRestore |
boolean |
true |
Automatically restore terminals when the workspace opens |
Commands
| Command |
Description |
| Terminal Restore: Create All Terminals |
Close existing managed terminals and recreate them |
| Terminal Restore: Close All Managed Terminals |
Close all terminals created by this extension |
License
MIT