A VS Code extension that provides intelligent terminal management for GitHub Copilot and AI assistants. The primary benefit is preventing terminal spawning chaos - instead of creating new terminals for every command, this extension allows AI agents to reuse named terminals, maintaining clean workspace organization and process continuity.
🎯 Key Benefits
- Prevents Terminal Spam: Stop AI agents from creating dozens of disposable terminals
- Organized Workflow: Group related commands in appropriately named terminals
- Process Continuity: Maintain context between commands in the same terminal
- Resource Efficiency: Reuse terminals instead of spawning new processes
- Better Debugging: Named terminals make it easy to track command history and output
🚀 Features
Core Functionality
- Named Terminal Management: Create, list, and delete terminals with meaningful names
- Smart Command Execution: Send commands to existing terminals or create them automatically
- Output Capture: Execute commands and capture their output, errors, and execution details
- Process Control: Cancel running commands with proper signal handling
- GitHub Copilot Integration: Provides language model tools for AI-driven development
| Tool |
Description |
Use Case |
listTerminals |
List all named terminals with status |
Check existing terminals before creating new ones |
createTerminal |
Create a new named terminal |
Set up dedicated terminals for specific purposes |
sendCommand |
Send command to terminal (create if needed) |
Primary tool for command execution |
executeCommandWithOutput |
Execute command and capture output |
Get command results for processing |
deleteTerminal |
Remove a named terminal |
Clean up when terminals are no longer needed |
cancelCommand |
Send Ctrl+C to interrupt commands |
Stop long-running or stuck processes |
📋 Recommended Terminal Names
Organize your development workflow with these suggested terminal names:
dev-server - Development servers (npm run dev, python manage.py runserver, cargo run)
build - Build operations (npm run build, cargo build, dotnet build)
test - Testing commands (npm test, pytest, cargo test)
package-manager - Dependencies (npm install, pip install, cargo add)
git - Version control operations
docker - Container management
database - Database operations
cloud - Cloud CLI commands
general - File operations and utilities
scripts - Automation and custom scripts
🛠️ Installation
From VS Code Marketplace
- Open VS Code
- Go to Extensions (Ctrl+Shift+X)
- Search for "Copilot Terminal Tools"
- Click Install
Manual Installation
- Download the latest
.vsix file from releases
- In VS Code:
Ctrl+Shift+P → "Extensions: Install from VSIX..."
- Select the downloaded file
💡 Usage Examples
With GitHub Copilot Chat
Instead of Copilot creating multiple terminals:
❌ Before: "run npm install" → Creates Terminal 1
❌ Before: "start dev server" → Creates Terminal 2
❌ Before: "run tests" → Creates Terminal 3
With this extension:
✅ After: Commands go to organized, named terminals
📁 package-manager: npm install, npm update
🖥️ dev-server: npm run dev (keeps running)
🧪 test: npm test, npm run test:watch
Manual Commands
Use the Command Palette (Ctrl+Shift+P):
- Terminal Tools: List Named Terminals - See all your named terminals
- Terminal Tools: Create Named Terminal - Create a new terminal with a specific name
- Terminal Tools: Send Command to Terminal - Execute commands in named terminals
- Terminal Tools: Delete Terminal - Clean up unused terminals
- Terminal Tools: Cancel Command - Stop running processes
⚙️ Configuration
The extension works out of the box with no configuration required. When using the tools:
- Terminal Name: Choose descriptive names that match your workflow
- Working Directory: Optionally specify where commands should run
- Shell Path: Use custom shells if needed (defaults to system shell)
🔄 How It Works
- AI Request: Copilot or other AI wants to run a command
- Tool Selection: Extension provides the
sendCommand tool instead of generic terminal access
- Terminal Resolution:
- If named terminal exists → Use it
- If not → Create it automatically
- Command Execution: Run the command in the appropriate terminal
- Output Handling: Capture and return results to the AI
🤝 Contributing
Contributions are welcome! Please see CONTRIBUTING.md for detailed guidelines on how to contribute to this project.
Development Setup
# Clone the repository
git clone https://github.com/mijur/vsc-terminal-tools.git
cd vsc-terminal-tools
# Install dependencies
npm install
# Start development
npm run watch
Testing
# Run tests
npm test
# Watch mode for development
npm run watch-tests
📝 License
This project is licensed under the MIT License - see the LICENSE file for details.
🐛 Issues & Support
Made with ❤️ for developers who want organized, efficient AI-assisted workflows