Skip to content

Use case

Get a notification the moment Claude Code needs your input or permission

Pairbar is a macOS app that tells you the moment a Claude Code chat stops and waits for you, for a permission, a question or a plan to approve. The chat shows Needs you at the top of Pairbar's sidebar with what it's asking ("Bash · git push"), and while you're in another app a banner, an optional sound and a count on the menu-bar icon say so. Click the banner or the row to land in that chat in the Claude app. It works with Claude Code alone; Codex threads get the same if you use Codex too.

Last updated

✎Search chats or type a commandNEEDS YOU?Pick a chart libraryRecharts or Chart.js?ACME-BACKENDRun the migration testsBash · npm testUpdate the READMEFinished 2m agoRefactor billing APIfeature/billingPlan-limit ringstightest of the 5-hour and weekly windowsNeeds youmoved to the top, with the questionWorkingand on what: tool and targetUnreadfinished since you last looked
Pairbar's chat list: a chat that needs you at the top with what it's asking, a chat working on a Bash command, and a finished chat.

The problem

Depending on its permission mode, Claude Code asks before it runs a shell command, edits a file or carries out a plan. That's what you want, but the question only shows inside the chat. If you switched to a browser while it worked, it waits there, quietly, sometimes for most of an hour.

Finishing is the easy case: you'll get back to it eventually. The costly case is a chat that's blocked on you two minutes in, so this page is about that moment: knowing it happened, knowing what's being asked, and getting there in one click.

How Pairbar solves it

  1. Allow notifications
    The welcome asks for the Notifications permission. macOS asks only once; after that, Settings → General → Permissions → Notifications has Open Settings… to turn it on in System Settings.
  2. Turn on alerts for Claude chats
    In Settings → Notifications, turn on Claude chats, and choose Notification banner and Sound. If you want to read the question on the banner itself, turn on Include what the chat is asking (off by default, because banners show on the lock screen).
  3. Optional: make it instant with live status
    Settings → Integrations → Live status for Claude (hooks) → Install… has Claude Code tell Pairbar each permission request the moment it happens. Without it, Pairbar reads the same thing from the files Claude already writes. See live status for Claude.
  4. Work somewhere else
    When a chat stops for you and you're not looking at it, the banner arrives, and the menu-bar icon shows how many chats need you. In Pairbar's list, the chat's row shows what it's asking.
  5. Answer it in Claude
    Click the banner, the chat in ⌃⌥K quick search, or its row in Pairbar: the chat opens in the Claude app, where you allow, deny or answer as usual.

What counts as needing you

The chat is…Shows asHow Pairbar knows
asking to run a commandNeeds you · "Bash · git push"a hook event (with live status), or Claude Code's own record of the running session in ~/.claude/sessions
asking a question or presenting a planNeeds you with the questionat once, from the conversation
waiting on a quick tool with no answer (an edit, a file read)Needs youtreated as a permission prompt after about 12 seconds (about 20 for an MCP tool) when there's no record or event
running a subagent that asks you somethingNeeds you on the parent chatthe subagent's own status

Commands are shown only as their program and subcommand (git push), never with arguments, which could contain passwords. A chat stays in Needs you until it's answered or its Claude process ends (without Claude's record, for up to 7 days), so it can't slip down the list while you're away. See how the status is worked out.

Every signal, and where it's set

SignalWhere it's set
Needs you section at the top of the list, orange ? on the iconalways on
Banner (click to open the chat)Settings → Notifications → Claude chats, Notification banner
SoundSettings → Notifications → Sound
Count next to the menu-bar iconalways on

Without Pairbar

Without Pairbar, Claude Code users wire this up in a few ways:

ApproachHowTrade-off
A Notification hooka Claude Code hook that runs osascript or terminal-notifier when Claude needs permission or inputyou write and maintain the script; a banner, but no list of what's waiting
The terminal bellClaude Code in a terminal can ring the bell, which many terminals turn into a notificationterminal sessions only, one tab at a time
Keep the chat visibleleave the Claude window on screen and glance at itworks until you switch to another app

Frequently asked questions

Do I need Codex or live status for this?
No. It works with the Claude app alone, and without the hooks Pairbar reads the status from the files Claude Code already writes. Live status makes it instant and shows the exact tool the moment Claude asks.
How is this different from a notification when Claude Code finishes?
Both are covered by the same settings. A finished chat gets a banner and an unread dot; a chat that needs you also moves to the Needs you section, shows its question, counts on the menu-bar icon and stays there until answered. See notifications when a chat finishes.
Can I approve the permission from the notification?
No. The banner opens the chat in Claude, where you allow or deny it. Pairbar never answers Claude's permission prompts for you.
Will the banner show my command on the lock screen?
Only if you turn on Include what the chat is asking. By default a banner shows the app, the chat title and the project.

Try Pairbar free for 7 days

One sidebar for the Claude and Codex desktop apps. Everything on for 7 days, no card needed; then $49/year ($39 first year with LAUNCH), $9/month or $129 lifetime (first 200 buyers). macOS 26 or later, Apple silicon.