SkillAgentSearch skills...

TabzChrome

Chrome extension for managing tmux sessions in a persistent sidebar

Install / Use

/learn @GGPrompts/TabzChrome
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Tabz

Full Linux terminals in your Chrome sidebar

Version Chrome License

Claude, Gemini, Codex, and Solitaire in a quad-split terminal sidebar - do some shopping while you code

Watch: Subagent chaos with audio announcements - Multiple Claude subagents running with different voice status updates

What Is This?

Real bash terminals running in your browser sidebar. Not a web-based terminal emulator - actual Linux shells connected via WebSocket to your local machine.

Run anything you'd run in a normal terminal:

  • Claude Code, Gemini CLI, OpenAI Codex - AI coding assistants side-by-side with your browser
  • TUI applications - lazygit, htop, btop, vim, neovim, midnight commander
  • Development servers - npm, yarn, docker, kubectl, any CLI tool
  • Full interactivity - colors, mouse support, copy/paste, scrollback

Browse the web with your terminals always visible - no window juggling, no Alt+Tab. Terminals persist in tmux sessions, so they survive sidebar close/reopen and even browser restarts.

Why this exists: If you use AI coding tools (Claude Code, Gemini, Codex), you need terminals visible while browsing docs, PRs, and issues. Tabz keeps them docked to your browser instead of buried behind windows.

Give your AI full control: Through MCP tools and REST API, Claude Code can control your browser (screenshots, clicks, form filling, network inspection) and spawn/kill terminal sessions programmatically. Your AI assistant becomes a true automation partner.

⚠️ Security Note: By default, MCP tools only allow access to safe domains (GitHub, GitLab, Vercel, localhost, AI image generators). "YOLO mode" can be enabled in the Dashboard MCP settings (localhost:8129/#/mcp) to allow all URLs, but we recommend using a separate Chrome profile without personal accounts or saved passwords if you do.

Key Features

  • Persistent sessions - Powered by tmux, terminals survive everything
  • Profiles system - Save configurations for different tools (Claude Code, lazygit, htop)
  • Category organization - Color-coded groups for easy identification
  • Smart directory inheritance - Set a global working directory, profiles inherit it
  • 3D Focus Mode - Pop any terminal into an immersive full-tab 3D view (scroll to zoom, mouse to orbit, F2 to lock)
  • Terminal Popouts - Right-click tab → "Pop Out" for standalone terminal windows (theme synced, return or detach)
  • Tmux pane awareness - Detects splits inside terminals with per-pane status, audio voices, and chat targeting
  • Local dashboard - Web UI at localhost:8129 for terminal management and quick stats
  • Tabz MCP tools - Let Claude Code control your browser (screenshots, clicks, form filling)
  • Keyboard shortcuts - Quick access to paste text, send to chat, spawn terminals

Claude Code Integration

TabzChrome is designed to work seamlessly with Claude Code:

🚀 Quick Setup - /discover-profiles command

  • Manage TabzChrome profiles via the REST API (view, create, update, bulk-import)
  • Browse curated lists (awesome-tuis, modern-unix) to discover new CLI tools
  • Import ready-made profile configurations with sensible defaults

⚡ 0 Token Cost Up Front - MCP tools with no context overhead!

MCP settings

Using Claude Code's experimental MCP CLI mode, tool schemas are loaded on-demand instead of all 85 definitions into context. Enable with the ENABLE_EXPERIMENTAL_MCP_CLI=true environment variable. See the setup gist for details.

🎭 Power Features (Claude Code Integration):

TabzChrome includes a Claude Code plugin with agents, skills, and MCP tools:

| Component | Type | Description | |-----------|------|-------------| | Tabz MCP Server | MCP | 85 browser control tools (screenshots, clicks, bookmarks, network, tab groups, windows, history, cookies, emulation, profiles, plugins) | | tabz-browser | skill | Browser automation patterns (screenshots, forms, network debugging) | | tabz-terminals | skill | Terminal spawning and worker management via REST API | | tabz-development | skill | Terminal.tsx, xterm.js, WebSocket patterns | | tabz-expert | agent | Browser automation specialist with 85 MCP tools |

Quick setup: Skills auto-load when you run Claude Code in the TabzChrome directory.

Looking for orchestration plugins? The conductor, planner, spawner, and cleanup plugins (for multi-agent worker pipelines) are available in GGPrompts/my-plugins. These require beads for issue tracking.


Quick Start

Requirements

| Component | Version | Notes | |-----------|---------|-------| | Node.js | 18+ | Backend server | | Chrome | 116+ | Manifest V3, Side Panel API | | tmux | 3.0+ | Session persistence | | OS | WSL2 / Linux / macOS | Backend requires Unix shell | | edge-tts | 6.0+ | Optional - for TTS audio features |

Tip: Run ./scripts/dev.sh to automatically check all dependencies with install instructions.

<details> <summary>📦 Installing tmux</summary>

| Platform | Command | |----------|---------| | macOS | brew install tmux | | Ubuntu/Debian | sudo apt install tmux | | Fedora | sudo dnf install tmux | | Arch | sudo pacman -S tmux |

</details> <details> <summary>🔧 Installing build tools (Required for native modules)</summary>

The backend uses node-pty which requires native compilation:

| Platform | Command | |----------|---------| | Ubuntu/Debian/WSL | sudo apt install build-essential | | Fedora | sudo dnf groupinstall "Development Tools" | | Arch | sudo pacman -S base-devel | | macOS | xcode-select --install |

</details> <details> <summary>🔊 Installing edge-tts (Optional - for audio features)</summary>

| Platform | Command | |----------|---------| | All platforms | pip install edge-tts |

Requires Python 3.8+. If you have multiple Python versions, use pip3 install edge-tts.

Verify installation:

edge-tts --version  # Should show 6.0.0 or higher
</details> <details> <summary>🔤 Installing Nerd Fonts (Optional)</summary>

The default terminal font is monospace (works everywhere). For better icons and ligatures, install the bundled Nerd Fonts:

Quick Install (fonts included in repo):

| Platform | Command | |----------|---------| | Windows | Open fonts/ folder → Select all .ttf → Right-click → Install | | macOS | Double-click each .ttf in fonts/ → Click "Install Font" | | Linux | cp fonts/*.ttf ~/.local/share/fonts/ && fc-cache -fv |

After installing, restart Chrome and select the font in the Dashboard (localhost:8129/#/profiles) → Edit profile → Font Family.

See fonts/README.md for details.

</details>

Not on Chrome Web Store - This is a local developer tool that requires running a backend server. Install via "Load unpacked" in Chrome's developer mode.

Installation

⚠️ WSL Users: Run these commands inside a WSL terminal, not from Windows Git Bash or PowerShell accessing WSL paths. The backend uses native modules (node-pty) that require Linux npm to compile properly. Open WSL first: wsl in Windows Terminal, then proceed.

# Clone
git clone https://github.com/GGPrompts/TabzChrome.git
cd TabzChrome

# Install dependencies
npm install
cd backend && npm install && cd ..

# Build extension
npm run build

Load in Chrome

  1. Open chrome://extensions
  2. Enable Developer mode (top-right)
  3. Click Load unpacked → select dist-extension/

Start Backend

# Recommended (WSL/Linux/macOS)
./scripts/dev.sh

Why use dev.sh?

  • Checks dependencies - Verifies Node.js, npm, tmux are installed with helpful install instructions
  • Warns about optional deps - Alerts if edge-tts or Nerd Fonts are missing
  • Creates a tabzchrome tmux session with correct config
  • Enables log forwarding so the "Backend Logs" profile works (shows live server output)
  • Makes debugging with Claude Code easier (can capture logs via tmux capture-pane)
<details> <summary>Alternative: manual start</summary>
cd backend && npm start  # Runs on port 8129

Note: Without dev.sh, the "Backend Logs" profile won't show logs since it relies on the named tmux session.

</details>

Open Sidebar

  • Click extension icon in toolbar
  • Keyboard shortcut (set your own at chrome://extensions/shortcuts)
  • Right-click page → "Open Terminal Sidebar"

Note: Chrome doesn't allow extensions to close sidebars programmatically (requires user gesture), so the menu always says "Open" rather than "Toggle". Close via Chrome's built-in panel menu (⋮).


Features

Profiles System

Click the + dropdown to spawn terminals from saved profiles:

Profile settings form with all configuration options

  • Name - Display name for the profile
  • Category - Optional grouping (e.g., "Claude Code", "TUI Tools") with color coding
  • Working Directory - Optional (inherits from header if empty)
  • Startup Command - Optional command to run on spawn (e.g., lazygit, htop)
  • Font Size - 12-24px per profile
  • Appearance - Fully customizable with separate controls:
    • Text Colors - 11 themes (high-co
View on GitHub
GitHub Stars137
CategoryDevelopment
Updated19h ago
Forks10

Languages

TypeScript

Security Score

95/100

Audited on Apr 3, 2026

No findings