A beautiful, interactive Terminal User Interface (TUI) for GitLab CI/CD pipelines.
Stop typing repetitive glab commands - see everything at once in a visual dashboard! ✨
# The easy way - choose from your repositories
glab-tui select
# Or use a specific GitLab URL
glab-tui remote https://gitlab.com/group/project-name
# Or the traditional way (from within a repo)
npx glab-tui
# Or download and run
curl -L https://github.com/rkristelijn/glab-tui/releases/latest/download/glab-tui-linux-amd64 -o glab-tui
chmod +x glab-tui
./glab-tuiglab pipeline list # Check pipelines
glab pipeline ci view 123 # Check specific pipeline
glab api jobs/456/trace # Get job logs
# Repeat every 30 seconds... 😴glab-tui # See everything at once! 🎉- 🔄 Real-time monitoring - Live pipeline status updates
- 🔥 Real-time log streaming - Stream job logs as they happen with auto-refresh ✅ CONFIRMED WORKING
- 🔀 Merge request support - View and navigate merge requests with pipeline integration ✅ NEW FEATURE
- 🔗 Child pipeline support - Navigate through mono-repo child pipelines seamlessly
- 🎨 Beautiful interface - Color-coded status indicators and visual formatting
- 📊 Visual overview - Multiple pipelines and merge requests at a glance in one screen
- ⌨️ Vim-style navigation - Complete keyboard shortcuts (hjkl, gg, G, Ctrl+U/D)
- 🔍 Advanced log search - Search through logs with highlighting and navigation
- 🎯 Interactive dashboard - Navigate through pipelines, jobs, merge requests, and child pipelines
- 🔍 Better UX - No more repetitive CLI commands for status checks
- 🚀 Easy setup - Uses your existing glab authentication
./glab-tui # Start the beautiful TUI🎯 TUI Quick Start:
- First time? Press
rto refresh and load pipelines - Navigate: Use ↑/↓ arrows or
j/k(vim-style) - Switch views: Press
pfor pipelines,mfor merge requests - Drill down: Press
Enterto go: Pipelines → Jobs → Logs, or MRs → Pipeline Jobs → Logs - Child pipelines: Press
Enteron 🔗 entries to navigate to child pipeline jobs - Real-time logs: Press
lon any job for live streaming - Search logs: Press
/to search,nfor next match - Go back: Press
Escto return to previous view - Quit: Press
qorCtrl+C
🔥 Pro tip: Navigate to a running job and press l for real-time log streaming!
./glab-tui pipelines # List pipelines
./glab-tui job 12345 # Check job status
./glab-tui logs 12345 # View job logs
./glab-tui logs --follow 12345 # 🔥 Stream logs in real-time
./glab-tui help # Show help| Key | Action |
|---|---|
q / Ctrl+C |
Quit |
j/k or ↓/↑ |
Navigate up/down |
g / G |
Go to first/last item |
Ctrl+U/D |
Page up/down |
Enter |
Drill down (Pipeline → Jobs → Logs, MR → Pipeline Jobs → Logs) |
Esc |
Go back |
p |
Switch to pipelines view |
m |
Switch to merge requests view |
r |
Refresh current view |
/ |
Search (in logs) |
n |
Next search match |
? |
Help |
npx glab-tui # Zero install, just works!# Linux/macOS
curl -L https://github.com/rkristelijn/glab-tui/releases/latest/download/glab-tui-linux-amd64 -o glab-tui
chmod +x glab-tui
# Or with Go
go install github.com/rkristelijn/glab-tui@latest- GitLab CLI (
glab) - Install from cli.gitlab.com - Authentication - Run
glab auth loginfirst - Git repository - Run from inside a GitLab project
Result: Better workflow + visual experience 🏆
┌─ GitLab TUI - group/project-name | 4 merge requests (2 open) ──────────┐
│ [P]ipelines [M]erge Requests [J]obs [L]ogs [?] │
├─────────────────────────────────────────────────────────────────────────┤
│ Merge Requests ↻ Auto-refresh │
│ ▶ 🔀 open feat: Add real-time log streaming johndoe feat → main 🔄 yes │
│ 🔀 open fix: Child pipeline navigation bug janesmith fix → main 🔄 yes │
│ ✅ merged docs: Update README with features bobwilson docs → main - │
│ ❌ closed refactor: Improve TUI performance alice refactor → main - │
├─────────────────────────────────────────────────────────────────────────┤
│ Pipeline Jobs (from MR #42) │
│ ✓ build success (45s) Dependencies installed │
│ ● test running (12s) Running test suite... │
│ 🔗 ● app-portal #1997363518 running Child pipeline │
│ ○ deploy pending Waiting for tests │
└─────────────────────────────────────────────────────────────────────────┘
Perfect for NX mono-repo workflows:
🔧 Jobs (Pipeline #1997353757)
📊 12 total | ✅ 2 success | 🔄 6 running | ❌ 0 failed
✓ nx-mono-repo-affected success mono-repo
● 🔗 ● app-demo #1997363434 running child-pipeline
● 🔗 ● app-portal #1997363518 running child-pipeline
● 🔗 ● app-quote #1997363593 running child-pipeline
● 🔗 ● app-social #1997363731 running child-pipeline
- Navigate to child pipelines with Enter key
- See real app names extracted from job logs
- Full drill-down support for mono-repo workflows
"Finally, a GitLab interface that doesn't make me want to cry."
— Frontend Developer
"Much better overview than running glab commands repeatedly."
— DevOps Engineer
"It's like k9s but for GitLab. Love the visual dashboard and child pipeline support."
— Platform Engineer
"The real-time log streaming and search is a game changer for debugging."
— Senior Developer
We welcome contributions! Please see our Contributing Guide.
MIT License - See LICENSE for details.
- Inspired by k9s - The gold standard for Kubernetes TUI
- Built with Bubble Tea - Excellent Go TUI framework
- Powered by GitLab CLI - Official GitLab command line tool
Transform your GitLab workflow today! 🚀
