These days most of my coding happens with several Claude Code sessions running at once, plus a browser the agents sometimes need to use. Three things kept costing me time, so I built three small tools for them. They're free, MIT-licensed, and as of today public.
Pullbell: a GitHub inbox in the menu bar
Review requests and comments on my PRs got lost in email, and with agents opening PRs for me there are more of them than ever. Pullbell sits in the macOS menu bar and raises a banner only for the things that need me: someone requests my review, comments or replies on my PR, approves it or asks for changes, a PR becomes ready to merge or gets a conflict, a deploy on the default branch fails. Everything else (bots, CI runs) goes into a quiet list.
- ⌃⌘G opens a searchable queue, ⌃⌘P my open PRs and the ones waiting for my review, with CI and review state.
- Watch everything, or only the repos of the teams you pick; mute the noisy ones.
- Signs in with GitHub's device flow; the token lives in the macOS Keychain.
https://pullbell.zexa.se · https://github.com/aaronsuns/pullbell
Hopback: which Claude Code session needs me?
With five or six VS Code windows each running a Claude Code session, the question is always "which one is waiting for me?" Hopback answers it from the menu bar: ⚠1 ⚙2 · ▢8 means one session waits for an approval or an answer, two are working, eight windows are open.
- A small Claude Code plugin (hooks) tells Hopback when a session starts working, finishes, or waits for you, and you get a banner.
- ⌃⌥1–9 jumps to a window, ⌃⌥0 to the next session that needs you.
- ⌃⌘C searches open sessions, ⌃⇧⌘C searches your whole history, including the conversation text. Type
?and a description and it asks Claude (read-only tools) to find the session you mean.
https://hopback.zexa.se · https://github.com/aaronsuns/hopback
Tabrelay: let an agent use your real Chrome
Headless browsers are great until the site needs your login. Tabrelay is a small Chrome extension plus a CLI that lets a script or an AI agent drive your real, logged-in Chrome through the DevTools Protocol, without raising windows or stealing focus while you keep working.
TAB=$(tabrelay open https://example.com/) # a background window; prints the tab id
tabrelay eval "$TAB" 'document.title' # "Example Domain"
tabrelay shot "$TAB" page.png
- Only sites on an allow-list you set in the extension's options (empty by default).
- A local token, and requests from web pages are refused.
- Includes example scripts for posting to a few social sites, with a disclaimer: what you automate is your responsibility, and each site's rules apply.
https://tabrelay.zexa.se · https://github.com/aaronsuns/tabrelay
How they're built
Pullbell and Hopback are Tauri 2 apps (Rust + a small React UI), universal builds for Apple silicon and Intel, with signed auto-updates from GitHub releases. Tabrelay is a Manifest V3 extension and a single-file Python CLI. All three have CI and tag-driven releases.
They aren't notarized yet (no Apple Developer ID), so the first launch needs one xattr command; the READMEs show it.
About AI: I designed these and wrote the specs; most of the code was written by Claude Code under my direction, then reviewed and tested by me.
If you try one, I'd love to hear what's missing or confusing — issues on GitHub are the best place.

Top comments (1)
😀