sideshell
Allows AI agents to execute commands in a visible iTerm2 terminal pane, maintaining session persistence and allowing user intervention.
Integrates with JetBrains IDEs via a plugin to run commands in a terminal within the IDE, supporting persistent sessions and user interaction.
Enables AI agents to run commands in a tmux session, providing a persistent terminal with visible history and intervention capability.
Provides integration with WezTerm for running commands in a persistent, visible terminal pane.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@sideshellrun 'python -m http.server' in a new side terminal"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
sideshell
AI sidecar terminal — let any MCP client (Claude Code, Cursor, Codex, OpenCode, Pi, …) run commands in a visible, persistent terminal you control.
Why?
When AI assistants run shell commands, they execute in a hidden terminal:
❌ No visible history
❌ Can't intervene (enter password, confirm prompts)
❌ Output mixed with AI conversation
sideshell runs commands in a separate visible terminal:
✅ Full command history visible
✅ Persistent session (survives AI restarts)
✅ Intervene anytime (passwords, confirmations)
✅ Clean separation from AI conversation
Related MCP server: Terminal Hook
Supported Terminals
Verified on lists the operating systems where the backend is exercised by a live end-to-end test pass. Other combinations may work but are not yet verified — see Notes.
Terminal | Verified on | Notes |
iTerm2 | macOS | Native Python API |
tmux | macOS, Linux | Also expected in WSL (tmux on |
WezTerm | macOS, Linux | Windows expected ( |
Kitty | macOS, Linux | — |
Ghostty | macOS |
|
maquake | macOS | Drop-down terminal via Unix socket |
VS Code / Cursor | macOS, Linux | Extension + Unix-socket bridge. |
JetBrains IDEs | macOS, Linux | Plugin + Unix-socket bridge; verified on both terminal engines (Classic + Reworked). Windows named-pipe server pending |
Features
Multi-Backend - Works with iTerm2, tmux, WezTerm, Kitty, Ghostty, maquake, VS Code/Cursor, or JetBrains IDEs
Sidecar Terminal - AI commands run in a visible terminal pane
You Stay in Control - See everything, intervene anytime
Session Persistence - Terminal survives AI session restarts
TUI Support - Arrow keys, F1-F12, Ctrl+C/D/Z for interactive apps
Focus Management - Optionally returns focus after operations
Installation
Using uvx (Recommended)
# Install uv first
curl -LsSf https://astral.sh/uv/install.sh | sh
# Run sideshell
uvx sideshell-mcpClaude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"sideshell": {
"command": "uvx",
"args": ["sideshell-mcp"]
}
}
}Using pipx
pipx install sideshell-mcp
sideshell-mcpBackend Selection
# Auto-detect (default)
uvx sideshell-mcp
# Force specific backend
uvx sideshell-mcp --backend=tmux
uvx sideshell-mcp --backend=iterm2Available Tools (17)
Tool | Description |
| Execute commands (supports |
| Read terminal output |
| Send special keys: Ctrl+C/D/Z, arrows, F1-F12, Home/End, PageUp/Down |
| List all windows/tabs/sessions |
| Split pane horizontally or vertically |
| Create new window |
| Create new tab |
| Smart session creation (splits if window exists) |
| Focus specific session |
| Close terminal session |
| Set tab title, badge, and color |
| Get detailed terminal state |
| List available color presets |
| Apply color preset |
| Show alert dialog |
| Clear terminal screen |
| Paste text to terminal |
MCP Resources
Resource | Description |
| List all terminal sessions |
| Backend features and system info |
| Session details |
| Screen content |
Prerequisites
iTerm2 (macOS)
Open iTerm2 → Preferences → General → Magic
Enable "Enable Python API"
Restart iTerm2
tmux
# macOS
brew install tmux
# Ubuntu/Debian
sudo apt install tmuxWezTerm
Download from wezfurlong.org/wezterm
Kitty
# macOS
brew install --cask kitty
# Linux
curl -L https://sw.kovidgoyal.net/kitty/installer.sh | shArchitecture
┌─────────────┐ ┌──────────────┐ ┌─────────────┐
│ MCP Client │────▶│ sideshell │────▶│ Terminal │
│ (Claude) │ │ MCP Server │ │ Backend │
└─────────────┘ └──────────────┘ └─────────────┘
│
┌───────┴────────────┐
│ Backends │
├────────────────────┤
│ • iTerm2 │
│ • tmux │
│ • WezTerm │
│ • Kitty │
│ • Ghostty │
│ • maquake │
│ • VS Code / Cursor │
│ • JetBrains IDEs │
└────────────────────┘VS Code/Cursor and JetBrains backends talk to their IDE extension/plugin over a
local Unix domain socket (~/.sideshell/<ide>.sock) using newline-delimited
JSON-RPC 2.0 with a token handshake.
Development
git clone https://github.com/menemy/sideshell
cd sideshell
uv pip install -e ".[dev]"
# Run tests
python tests/test_iterm2_backend.py # iTerm2
python tests/test_tmux_backend.py # tmux
python tests/test_wezterm_backend.py # WezTerm
python tests/test_kitty_backend.py # Kitty
# Lint & format
ruff format .
ruff check . --fixRequirements
Python 3.11+
One of: iTerm2, tmux, WezTerm, Kitty, Ghostty, maquake, VS Code/Cursor, or a JetBrains IDE
License
MIT
Contributing
Fork the repository
Create a feature branch
Add tests for new functionality
Ensure all tests pass
Submit a pull request
This server cannot be deployed
Maintenance
Related MCP Connectors
Work on your own computers from Claude or ChatGPT: run commands, edit and search files.
Persistent cloud workspaces for AI agents: run commands, edit files, use git and a browser.
Use your Mac, Windows or Linux computer from ChatGPT, Claude or Codex: files, commands, documents.
Persistent memory for AI agents: one brain shared across Claude, Cursor, Codex and more.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMonitors development commands and exposes terminal output to Claude in real-time, allowing AI assistants to see errors, logs, and stack traces without copy-pasting.2 npm3MIT
- AlicenseNot gradedqualityCmaintenanceA VSCode and Cursor extension that captures real-time terminal output and exposes it to AI assistants via the Model Context Protocol. It enables agents to proactively monitor logs, command execution, and errors without requiring manual copy-pasting from the user.3MIT
- FlicenseNot gradedqualityAmaintenanceThe terminal AI agents can drive: a cross-platform desktop terminal (macOS/Linux/Windows, MIT) that runs a local MCP server. Spawn tabs/panes, run commands with structured output, read screens and full scrollback, take scrolling screenshots, record sessions with secret redaction, switch identity profiles. Auto-registers with Claude Code / Codex / Gemini CLI on install.15-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to securely execute terminal commands with persistent sessions, async jobs, and mission control, while providing a live dashboard for human oversight.4Apache 2.0