A beautiful, modern Python TUI for managing tmux sessions with style and efficiency.
๐จ Complete Rewrite: Migrated from bash to modern Python TUI using Textual framework
๐ Beautiful Interface: Gradient headers, modern styling, and emoji indicators
โก Rock Solid: Fixed all runtime errors and session jumping issues
๐ง Professional: Installation system with virtual environments and proper packaging
- Beautiful TUI built with Textual framework for stunning visuals
- Gradient header with modern styling and emoji indicators
- Rich session display with colors, status icons, and metadata
- Responsive design that works perfectly on all screen sizes
- Mouse and keyboard support for maximum accessibility
- Favorites system - star sessions for quick access with persistent storage
- Live search - filter sessions in real-time as you type
- Status indicators - see attached (โ) vs detached (โ) sessions at a glance
- Session metadata - creation time, window count, and current window info
- Current session highlighting - clearly shows which session you're in
- Smart context detection - different behavior inside vs outside tmux
- Session switching - seamless switching without detaching when inside tmux
- Safe attachment - proper handling to prevent session jumping issues
- Error handling - comprehensive error messages and recovery
- Real-time search - filter sessions as you type
- Favorites filter - toggle to show only starred sessions
- Search highlighting - visual feedback for active filters
- Quick clear - easily reset all filters
curl -sSL https://raw.githubusercontent.com/sobechestnut-dev/tpik/main/install-tui.sh | bashThis will:
- โ Check all dependencies (Python 3.8+, tmux, python3-venv)
- โ Create an isolated virtual environment
- โ Install tpik from GitHub with all dependencies
- โ
Set up the
tpikcommand andtpalias - โ Create configuration directories
For mobile devices or when you prefer step-by-step commands:
curl -sSL https://raw.githubusercontent.com/sobechestnut-dev/tpik/main/manual.sh | bashThis displays easy-to-copy commands you can paste one by one.
# Clone the repository
git clone https://github.com/sobechestnut-dev/tpik.git
cd tpik
# Create virtual environment
python3 -m venv ~/.local/share/tpik
source ~/.local/share/tpik/bin/activate
# Install dependencies
pip install textual rich
# Install tpik
pip install -e .
# Create wrapper script
mkdir -p ~/.local/bin
cat > ~/.local/bin/tpik << 'EOF'
#!/bin/bash
exec "$HOME/.local/share/tpik/bin/python" -m tpik.app "$@"
EOF
chmod +x ~/.local/bin/tpik
# Add to PATH and create alias
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
echo 'alias tp="tpik"' >> ~/.bashrc
source ~/.bashrctpik # Launch the modern TUI
# or
tp # Same as tpik (alias)โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ ๐ TPIK - Enhanced TMUX Manager ๐ โ
โ Modern Terminal Interface โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
โโ Search โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ Search sessions... โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโ Sessions โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โ
โ main (3w) - 08/04 15:30 [nvim] [CURRENT] โ
โ โ โ development (2w) - 08/04 14:20 [zsh] โ
โ โญ โ background (1w) - 08/04 13:10 [htop] โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโ Controls โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ [๐ฏ Attach] [โจ New] [๐ Kill] [โญ Favorite] [๐ Filter] โ
โ [๐ Refresh] [โ Quit] โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
๐ข Ready - Welcome to tpik!
| Key | Action | Description |
|---|---|---|
Enter |
Attach | Attach to selected session |
N |
New Session | Create new session |
Del |
Kill Session | Delete selected session |
Space |
Toggle Favorite | Add/remove from favorites |
F |
Filter Favorites | Show only starred sessions |
F5 |
Refresh | Reload session list |
Q |
Quit | Exit application |
๐ |
Search | Type to filter sessions |
- โ / โ - Favorite status (filled/empty star)
- โ / โ - Attachment status (filled/empty circle)
- ๐ - App header with gradient background
- ๐ข - Status indicators with emoji feedback
- [CURRENT] - Highlights your current session
- Green text - Currently attached sessions
- Yellow stars - Favorite sessions
- Cyan numbers - Window counts
- Dim text - Timestamps and metadata
- Gradient buttons - Modern button styling with hover effects
- Responsive layout - Adapts to terminal size
- Rich text rendering - Beautiful typography and spacing
- Context awareness - Different behavior inside vs outside tmux
- Error recovery - Graceful handling of edge cases
tpik stores configuration in ~/.config/tpik/:
favorites- Your starred sessions (one per line)templates- Session templates for future usehistory- Usage history and statistics
development
main
background
monitoring
- Python 3.8+ - Modern Python with type hints
- tmux - Terminal multiplexer
- Textual - Modern TUI framework
- Rich - Beautiful terminal formatting
- Python package - Proper packaging with
pyproject.toml - Virtual environment - Isolated dependencies
- Modern TUI - Built on Textual framework for reliability
- Type hints - Full typing for maintainability
- Error handling - Comprehensive exception management
- โ Linux - Full support
- โ macOS - Full support
- โ WSL - Works in Windows Subsystem for Linux
- โ Windows - Not supported (tmux requirement)
If you're upgrading from the old bash version:
# Remove old script
rm ~/scripts/tpik.sh
# Remove old alias from shell config
sed -i '/tp.*scripts\/tpik.sh/d' ~/.bashrc
# Reload shell
source ~/.bashrccurl -sSL https://raw.githubusercontent.com/sobechestnut-dev/tpik/main/install-tui.sh | bashYour favorites will be preserved if stored in ~/.config/tpik/favorites.
"tmux not available"
# Ubuntu/Debian
sudo apt install tmux
# macOS
brew install tmux"python3-venv not available"
# Ubuntu/Debian
sudo apt install python3-venv
# Usually included on macOS"Command not found: tpik"
# Add to PATH
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc"Import errors"
# Reinstall in clean environment
rm -rf ~/.local/share/tpik
curl -sSL https://raw.githubusercontent.com/sobechestnut-dev/tpik/main/install-tui.sh | bashContributions are welcome! This is a modern Python project using:
- Textual for the TUI framework
- Rich for text formatting
- Type hints throughout
- Modern Python practices
git clone https://github.com/sobechestnut-dev/tpik.git
cd tpik
# Create development environment
python3 -m venv venv
source venv/bin/activate
pip install -e .
# Run from source
python -m tpik.appMIT License - see LICENSE file for details.
- Textual Framework - For the amazing TUI capabilities
- Rich Library - For beautiful terminal formatting
- TMUX - The foundation this tool is built upon
- Python Community - For the excellent ecosystem
๐ Found a bug? Open an issue
๐ก Feature request? Start a discussion
โญ Like this project? Give it a star on GitHub!
tpik v3.0 - Modern TMUX session management made beautiful ๐