Chirpy features

Chirpy plays a different notification sound for every Slack channel, contact, or Mac app, so you know what happened without looking. You build rules that match a notification on its app, channel, person, or keyword, assign each rule a sound and a volume, and Chirpy handles the rest from the menu bar. It all runs on your Mac, with no account and no API connection to Slack, Teams, or Discord.

How does Chirpy's rule engine work?

A rule is a set of conditions plus a sound. The conditions can match on:

  • App: Slack, Microsoft Teams, Discord, Mail, or anything else in Notification Center.
  • Channel: #prod-alerts, #deals, a Teams channel, a Discord server channel.
  • Person: a DM from your manager, or from one specific customer.
  • Keyword: any word in the notification text, such as "deploy", "invoice", or your own name.

Conditions combine with AND/OR, so "Slack AND (#prod-alerts OR keyword: PagerDuty)" is a single rule. Wildcards cover families of channels: #prod-* matches #prod-alerts, #prod-deploys, and every other channel with that prefix, without a rule for each.

Which rule wins when two rules match?

Rules are ordered, and the most specific one wins. A rule for #prod-alerts beats a catch-all rule for Slack, so you can keep a general "Slack sounds like this" rule at the bottom of the list and stack the exceptions above it. Reordering the list changes the priority.

What sounds can Chirpy play?

Chirpy includes 72+ built-in sounds, from short chimes to obnoxious ones you will notice from the kitchen. You can also upload your own audio in .mp3, .wav, or .caf: a custom jingle, a cash-register ding for closed deals, a recording of your own voice. Every sound can be previewed in the app before you attach it to a rule, so you are not saving and waiting for a real notification to find out what it sounds like.

Can I set a different volume for each rule?

Yes. Volume is per rule, not global. A production incident can play at full volume while a marketing-newsletter notification barely registers, without you touching the system volume.

Which apps does Chirpy work with?

Any app that shows up in macOS Notification Center. Chirpy watches notifications at the operating-system level rather than integrating with individual services, so it works with apps that have no plugin API at all. Commonly used ones include Slack, Microsoft Teams, Discord, Telegram, WhatsApp, Signal, Apple Mail, Gmail, Outlook, Apple Messages, FaceTime, Apple Calendar, Google Calendar, Zoom, Chrome, Safari, Arc, Notion, Linear, and Figma. There are 118 app-specific setup guides with the exact steps for each.

Is Chirpy private? Does it read my messages?

Chirpy is 100% local. It uses the macOS Accessibility API to read the text of notifications as they appear on your screen and matches that text against your rules on your Mac. It does not connect to the Slack, Teams, or Discord APIs, it has no account to sign into, and notification content never leaves your Mac. See the privacy policy for the full statement.

That is also why Chirpy is not on the Mac App Store. The Accessibility API approach for observing other apps' notifications is incompatible with App Store sandboxing, so Chirpy is distributed directly from chirpy.pro, notarized by Apple, with licensing handled by Gumroad.

What does Chirpy deliberately not do?

  • It does not send or read your messages inside the app. Chirpy is not a Slack client and never opens a conversation.
  • It does not connect to any service API. No OAuth, no workspace install, no admin approval needed.
  • It does not create notifications. Chirpy reacts to the notifications macOS already shows; if an app is silent, Chirpy stays silent.
  • It does not filter or block notifications. That is what Focus modes and each app's own settings are for.
  • It does not run on iPhone, iPad, or Windows. Chirpy is a macOS menu-bar app and nothing else.

Chirpy vs Hammerspoon vs Focus modes: when would you pick each?

Pick Hammerspoon if you already write Lua and want general-purpose Mac automation. It handles window management, hotkeys, and notification handling in one scriptable tool, and it can play per-channel sounds. You write and maintain the script yourself, though. There is no GUI rule builder and no sound library, so you supply the audio files and the matching logic.

Pick a macOS Focus mode if your problem is volume of interruptions rather than identification. Focus is excellent at silencing everything except a short allowlist. What it cannot do is tell two notifications apart. Everything that gets through sounds identical.

Pick Chirpy if you want to know what happened without looking, and you would rather build rules in a UI than maintain a script. Chirpy pairs well with Focus: let Focus decide what reaches you, and let Chirpy decide what each thing sounds like.

Frequently asked questions

What does Chirpy do?

Chirpy plays a different notification sound for every Slack channel, contact, or Mac app, so you know what happened without looking.

How do Chirpy's rules work?

A rule matches on app, channel, person, or keyword, and you can combine those conditions with AND/OR and use wildcards such as #prod-* to cover a whole family of channels. Each rule gets a sound and its own volume.

How many sounds does Chirpy include?

Chirpy ships with 72+ built-in sounds, and you can add your own in .mp3, .wav, or .caf. Every sound can be previewed before you assign it to a rule.

What happens when two rules match the same notification?

Rules are ordered by priority and the most specific rule wins, so a rule for one channel beats a catch-all rule for the whole app. You can reorder rules to change which one takes precedence.

Which apps does Chirpy work with?

Chirpy works with any app that appears in macOS Notification Center, including Slack, Microsoft Teams, Discord, Telegram, WhatsApp, Signal, Apple Mail, Gmail, Outlook, Apple Messages, FaceTime, Apple Calendar, Google Calendar, Zoom, Chrome, Safari, Arc, Notion, Linear, and Figma. There are 118 app-specific setup guides on the site.

Does Chirpy read my messages or send them anywhere?

Matching is 100% local. Chirpy uses the macOS Accessibility API to read notification text on your Mac, it does not connect to the Slack, Teams, or Discord APIs, and notification content never leaves your Mac.

Can Chirpy set a different volume for each rule?

Yes. Every rule has its own volume, so a production alert can be loud while a newsletter notification stays quiet.

How is Chirpy different from Hammerspoon?

Hammerspoon is a scriptable automation tool that can do this and much more, but you have to write Lua, there is no GUI rule builder, and it comes with no sound library. Chirpy does one thing, with a graphical rule builder and 72+ sounds included, and needs no code.

How is Chirpy different from a macOS Focus mode?

A Focus mode can silence notifications or let a few through, but it cannot tell you which notification arrived. Chirpy distinguishes them by sound, so the two work well together. Focus decides what gets through, and Chirpy decides what it sounds like.

Try it

Download Chirpy for a free 3-day trial with no credit card, see the install steps and requirements, or check pricing ($19.99 once, lifetime license, all updates included).