A terminal UI for monitoring CI/CD pipelines.
Run it from any git repository and get an instant overview of pipeline runs and job statuses — no browser required.
- No context-switching: see pipelines, jobs and logs without leaving your terminal.
- Keyboard-first: rerun / cancel with a single keypress.
- Works with both GitHub Actions and GitLab CI/CD from the same tool.
# Option A: Homebrew
brew tap waabox/gitdeck && brew install gitdeck
# Option B: One-liner install (requires Go 1.24+)
curl -sSL https://raw.githubusercontent.com/waabox/gitdeck/main/install.sh | bash
cd /path/to/your/repo
gitdeckOn first run gitdeck will authenticate via OAuth Device Flow — just open a link and enter a code.
- Hierarchical drill-down navigation: Pipelines → Jobs → Steps
- Live pipeline list with status icons and durations
- Auto-refresh every 5 seconds
- Configurable number of pipelines to display (default: 3)
- OAuth Device Flow authentication for GitHub and GitLab (no manual token copy-paste)
- Config via
~/.config/gitdeck/config.tomlwith environment variable overrides - Auto-detects repository from the current working directory
- View full raw job logs from Jobs or Steps view (press
l) - Re-run or cancel any pipeline with a single keypress and inline confirmation
brew tap waabox/gitdeck
brew install gitdeckNote: The binary is not yet signed with an Apple Developer certificate, so macOS may flag it as unverified. If that happens, remove the quarantine attribute:
xattr -d com.apple.quarantine "$(readlink -f $(which gitdeck))"
wget https://github.com/waabox/gitdeck/releases/latest/download/gitdeck_linux_amd64.deb
sudo dpkg -i gitdeck_linux_amd64.debFor ARM64:
wget https://github.com/waabox/gitdeck/releases/latest/download/gitdeck_linux_arm64.deb
sudo dpkg -i gitdeck_linux_arm64.debsudo rpm -i https://github.com/waabox/gitdeck/releases/latest/download/gitdeck_linux_amd64.rpmcurl -sSL https://raw.githubusercontent.com/waabox/gitdeck/main/install.sh | bashClones the repo into a temp directory, builds from source, and installs the binary to /usr/local/bin. Requires Git and Go 1.24+.
git clone https://github.com/waabox/gitdeck.git
cd gitdeck
go build -o gitdeck ./cmd/gitdeck
mv gitdeck /usr/local/bin/Requires Go 1.24 or later.
gitdeck ships with built-in OAuth credentials for GitHub and GitLab. On first run it starts the Device Flow automatically — just open a link and enter a code:
No GitHub token found. Starting OAuth authentication...
Visit: https://github.com/login/device
Enter code: ABCD-1234
Waiting for authorization...
Authenticated. Token saved to /Users/you/.config/gitdeck/config.toml
The token is saved so subsequent runs are silent. No config file needed for the common case.
Optionally create ~/.config/gitdeck/config.toml to customize behavior:
# Number of recent pipelines to show (default: 3)
pipeline_limit = 3
[github]
# Override the built-in OAuth Client ID with your own
# client_id = "YOUR_GITHUB_OAUTH_APP_CLIENT_ID"
[gitlab]
# Override the built-in OAuth Application ID with your own
# client_id = "YOUR_GITLAB_OAUTH_APP_CLIENT_ID"
# Only needed for self-hosted GitLab instances
# url = "https://gitlab.example.com"| Variable | Overrides |
|---|---|
GITHUB_TOKEN |
github.token |
GITLAB_TOKEN |
gitlab.token |
GITLAB_URL |
gitlab.url |
If you prefer to use your own OAuth credentials instead of the built-in ones:
GitHub: Create an OAuth App at Settings → Developer settings → OAuth Apps. Set the callback URL to http://localhost. Copy the Client ID into the config.
GitLab: Create an OAuth App at User Settings → Applications. Enable the read_api scope and tick Allow Device Authorization Grant. Copy the Application ID into the config.
| Key | Action |
|---|---|
↑ / ↓ |
Navigate items / scroll logs |
Enter |
Drill down: Pipelines → Jobs → Steps |
Esc |
Go back: Steps → Jobs → Pipelines |
l |
View full logs (from Jobs or Steps view) |
r |
Re-run selected pipeline (asks confirmation) |
x |
Cancel selected pipeline (asks confirmation) |
PgUp / PgDn |
Scroll logs by page (in log viewer) |
g / G |
Jump to top / bottom of log (in log viewer) |
ctrl+r |
Refresh pipelines now |
q / Ctrl+C |
Quit |
Contributions are welcome! See CONTRIBUTING.md for guidelines.
- Go
- Bubble Tea — TUI framework
- Lip Gloss — Styling
MIT — see LICENSE.
