marcyhub
v0.9.0
Published
Opinionated TUI GitHub PR tracker
Readme
marcyhub
Opinionated TUI GitHub PR tracker. See your open pull requests across repositories without leaving the terminal.
This is a work in progress and might break all your stuff or change completely overnight.
Install
npx marcyhubOr install globally:
npm install -g marcyhubPrerequisites
- Node.js 20+
- GitHub CLI (
gh) — used to open PRs in your browser
Setup
On first run, marcyhub asks for a GitHub fine-grained personal access token. Create one at github.com/settings/tokens with read access to your repositories.
The token and your preferences are stored in ~/.config/marcyhub/config.json.
After entering your token, you'll see a searchable list of your repositories. Select the ones you want to track, and you're on the dashboard.
Usage
marcyhub [--interval <seconds>] [--reset-token]| Flag | Default | Description |
|------|---------|-------------|
| --interval | 300 | Poll interval in seconds |
| --reset-token | — | Clear saved config and re-enter setup |
Dashboard
marcyhub │ Last: 2m ago │ Next: 3m │ API: 26/30
[1] Created [2] Assigned [3] Mentioned [4] Review Requested
─────────────────────────────────────────────────────────────────
● ◆ #142 ● Fix auth redirect user/repo-a 2d ago 💬3 alice
◆ #89 Add dark mode org/repo-b 5h ago 💬1 bob
#301 ● Update deps user/repo-c 1d ago
↑↓ navigate │ Space select │ 1-4 category │ Enter open │ z snooze │ Z show snoozed │ r refresh │ s repos │ q quitThe second ● (after PR number) is the CI status dot (colored in real output). Only shown for Created category PRs with CI data. The 💬count author columns show comment count and last commenter.
Keyboard shortcuts
| Key | Action |
|-----|--------|
| 1 2 3 4 | Switch PR category |
| Tab / Shift+Tab | Cycle categories |
| ↑ ↓ | Navigate PR list |
| Space | Toggle selection on cursor PR |
| Escape | Clear selections in current category |
| Enter | Open selected PRs (or cursor PR) in browser |
| z | Snooze selected PRs (or cursor PR) |
| Z | Toggle visibility of snoozed PRs |
| r | Force refresh |
| s | Return to repo selection |
| q | Quit |
How it works
marcyhub uses the GitHub Search API to find open PRs matching four categories:
- Created — PRs you authored
- Assigned — PRs assigned to you
- Mentioned — PRs where you're mentioned
- Review Requested — PRs where your review is requested
Searches are batched across your tracked repos and run in parallel. Rate limits are checked before each poll cycle.
Development
git clone https://github.com/marcy/marcyhub
cd marcyhub
npm install
npm run build
npm startRun tests:
npm testLicense
MIT
