Terminal Module
Multi-terminal overlay with tiled/stacked layouts and automatic repo context switching
Overview
The Terminal module provides a full-featured terminal overlay that can be accessed from any module. It supports:
- Multiple concurrent terminal sessions (up to 4 tiled or 6 stacked)
- Two layout modes: tiled (grid) and stacked (main + sidebar)
- Automatic repository context switching when focusing terminals
- Pop-out terminals to separate windows
- Persistent tmux-backed sessions
- File path drag-and-drop from the file tree
Accessing the Terminal
Open the terminal overlay using: - Click the Terminal icon in the module switcher (left side) - The overlay appears on top of your current module (Code, Browser, etc.)
Layout Modes
Tiled Layout
Arranges terminals in a grid: - 1 terminal: Full screen - 2 terminals: Side by side (or stacked with vertical split) - 3 terminals: One large + two small - 4 terminals: 2x2 grid
Toggle split direction (horizontal/vertical) with the split button in the toolbar.
Stacked Layout
Main terminal on one side with smaller terminals stacked on the other: - Main terminal takes ~50% of width - Remaining terminals stack vertically - Toggle which side the main terminal appears on
Switch between layouts using the layout toggle button in the toolbar.
Repository Context Switching
When you focus a terminal in the overlay, the global repository context automatically switches to match that terminal’s repository. This means:
- The file tree updates to show the focused terminal’s repo
- The top bar reflects the new repository selection
- All module state syncs to the new repo context
This allows you to quickly switch between projects by clicking on different terminal windows.
Toolbar
| Button | Description |
|---|---|
| + | Add new terminal (shows count: X/4 or X/6) |
| Split | Toggle horizontal/vertical split (tiled mode, 2+ terminals) |
| Side | Toggle main terminal left/right (stacked mode, 2+ terminals) |
| Search | Open search bar (Ctrl+F) |
| Layout | Switch between tiled and stacked layouts |
Terminal Pane Features
Each terminal pane has:
- Header: Shows terminal name and action buttons
- Client badge: Shows connected client count (for shared sessions)
- Find: Open search panel to search terminal output
- Pop-out: Open terminal in a separate window
- Close: Remove terminal from the layout
- Focus border: Blue border indicates the currently focused terminal
Search
Search through terminal output in the visible buffer.
Opening Search
- Click the Find button in a terminal pane header
- Press Cmd+F (Mac) or Ctrl+F (Windows/Linux)
- Use the search button in the terminal overlay toolbar (searches all terminals)
Search Panel
When search is open, a search bar appears below the terminal header:
- Type to search - matches are highlighted in the terminal as you type
- Press Enter or click ↓ to go to next match
- Press Shift+Enter or click ↑ to go to previous match
- Press Escape or click X to close search
Search Features
- Searches visible content and recent scrollback
- Match highlighting with yellow for active match, darker yellow for other matches
- Works in both terminal overlay and code module split terminal
tmux Search (Full Scrollback)
The built-in search only accesses the visible buffer. To search through tmux’s full scrollback history:
- Press Ctrl+B then [ to enter tmux copy-mode
- Press ? to search backwards (or / to search forwards)
- Type your search term and press Enter
- Press n to find next match, N for previous match
- Press q to exit copy-mode
This gives you access to tmux’s complete scrollback buffer (typically 2000+ lines).
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
| Cmd/Ctrl+F | Open search in focused terminal |
| Enter | Next search match |
| Shift+Enter | Previous search match |
| Escape | Close search |
| Ctrl+Shift+T | Add new terminal |
File Drag-and-Drop
Drag files from the file tree into a terminal to insert the file path: - Paths are automatically escaped for shell use - Works with the code module’s file tree - Also supports dragging files from Finder (macOS)
Pop-out Windows
Click the pop-out button to open a terminal in a separate window: - Window reconnects to the same tmux session - Multiple windows can view the same session - Client count badge shows how many are connected
Toggleable Features
Access these features via Settings > Features > Terminal:
| Feature | Default | Description |
|---|---|---|
| Clickable File Paths | On | Click file paths in terminal output to open them in the editor |
| Copy on Select | Off | Automatically copy text to clipboard when selected |
| Right-Click Paste | On | Paste from clipboard on right-click |
| Bell Sound | Off | Play a sound when the terminal bell character is received |
| Shared Terminal Sessions | On | Allow sharing terminal sessions with collaborators (experimental) |
Settings
Terminal settings are available via Settings > Terminal. Changes apply immediately.
Appearance
| Setting | Options | Description |
|---|---|---|
| Theme | Dark, Light, Monokai, Solarized Dark | Terminal color scheme |
| Font Family | Menlo, Monaco, Consolas, Fira Code, JetBrains Mono, Source Code Pro, Ubuntu Mono, Courier New | Monospace font for terminal text |
| Font Size | 10-24px | Size of terminal text |
| Line Height | 1.0-2.0 | Spacing between lines |
| Cursor Style | Block, Underline, Bar | Shape of the cursor |
| Cursor Blink | On/Off | Whether the cursor blinks |
Overlay Indicator
The terminal overlay can show a colored border to indicate it’s active:
| Setting | Options | Description |
|---|---|---|
| Show Terminal Border | On/Off | Display a colored border around the terminal |
| Border Color | Custom or preset (Amber, Blue, Green, Red, Purple, Cyan, Pink, White) | Color of the overlay border |
| Border Width | 1-6px | Thickness of the overlay border |
Behavior
| Setting | Range | Description |
|---|---|---|
| Scrollback Buffer | 1,000-50,000 lines | How many lines of history to keep |
| Bell Sound | On/Off | Play audio on terminal bell |
| Copy on Select | On/Off | Auto-copy selected text to clipboard |
| Right-Click Paste | On/Off | Paste clipboard contents on right-click |
Editor Integration
| Setting | Options | Description |
|---|---|---|
| Preferred Terminal Editor | None (use GUI), Vim, Neovim, Emacs, Nano | Editor to use when opening files from terminal |
If set to “None”, clicking a file path opens it in TeamIDE’s built-in editor.
CLI Tool Mounting
When using Docker containers, you can mount CLI tools from your host system into containers. This allows tools like the Claude CLI, GitHub CLI, or cloud credentials to work inside containers.
Accessing Tool Mounting
- Open the Terminal module
- Look for the Tools section in the right panel
- Click Detect Tools to scan for available tools on your system
Available Tools
| Tool | Description |
|---|---|
| Claude CLI | Anthropic Claude Code CLI for AI-assisted development |
| GitHub CLI | GitHub CLI credentials (gh) |
| Docker Socket | Docker socket for container management |
| AWS Credentials | AWS credentials and config |
| Google Cloud | Google Cloud Platform credentials |
| Kubernetes Config | Kubernetes cluster configuration |
| SSH Keys | SSH keys and config for remote access |
How It Works
- Click Detect Tools to find available tools on your system
- Toggle on the tools you want to mount
- Click Restart Container to apply changes
- The tools are now available in your container terminal
Note: Changes require a container restart to take effect.
Related
- Code Module - File tree for drag-and-drop
Changelog
| Date | Change |
|---|---|
| 2026-02-02 | Documentation audit: add toggleable features, complete settings documentation, add CLI tool mounting, remove internal component paths |
| 2026-02-02 | Add terminal search with scrollback buffer support |
| 2026-02-02 | Refactor CodeMain to use TerminalPane for consistent UI |
| 2026-02-02 | Add automatic repo context switching on terminal focus |
| 2026-02-02 | Fix terminal pane focus border visibility |