On a schedule
Get your GitHub notifications in one email
Twice a day you get one email of your unread GitHub notifications, grouped by repo, instead of dozens.
- Runs
- On a schedule
- Apps
- GitHub
- AI
- Not needed
- Access
- classic PAT notifications scope
Send this to your assistant
Create a ClickRuntime automation: at 9am and 4pm every day, email me my unread GitHub notifications grouped by repo, with a link to each.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A developer on a few active repositories can receive fifty GitHub notification emails in a day: review comments, CI results, mentions in threads they only skimmed, bot chatter and issue updates. The important ones, such as a direct review request or a question aimed at you, are buried between automated messages. People respond by muting everything, and then miss the one comment that blocked a teammate.
On the schedule you set, such as twice a day, your GitHub notifications since the last run are listed and grouped by repository and by reason, for example review requested, mentioned or assigned. They arrive as one email with links, so you read it in two minutes and open only the threads that need you.
It suits engineers who work across several repos, maintainers of busy projects and managers who need to stay informed without living in GitHub.
What you get out of it
Important mentions stop getting lost
Grouping by reason puts review requests and direct mentions together at the top, so a question aimed at you is not hidden under thirty automated build updates from other threads.
Interruptions drop sharply
One email at a set time replaces a steady drip of alerts. You can finish a task without a ping, then deal with everything GitHub wanted in one focused sitting.
Teammates are unblocked sooner
Because you actually read the digest, comments that were waiting on you get answered within hours, not weeks, which is often the difference between a PR merging this sprint and the next.
Muting everything is no longer needed
Many developers silence GitHub email entirely out of frustration. A single organized summary lets you keep notifications on and still stay sane, which closes the gap that muting leaves. Staying subscribed while reading less is the healthiest compromise.
Cross-repo view in one place
Seeing activity from all your repositories side by side reveals which projects are demanding your attention, which helps when you split your week between several codebases. That helps when you are the only person who knows two codebases.
Links jump straight to the thread
Every item links to its thread, so acting on a notification takes one click instead of searching through the notifications page and guessing which entry mattered. It removes the guesswork about which notification actually mattered.
How it works
What happens, step by step
Twice a day, at 9 am and 4 pm, the automation collects your unread GitHub notifications since the last digest.
It groups them by repo, with the reason for each, like a review request.
You get one email with every notification and its link, instead of dozens.
Before it runs live
- Connect GitHub
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Run it at a different time, more or less often, or only on weekdays
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other GitHub steps into one automation
Under the hood
The code that runs this automation
from collections import defaultdict
from clickruntime import on_trigger, credentials, http, notify
@on_trigger
def run(event):
items = http.get("https://api.github.com/notifications", params={"all": "false", "per_page": 50},
headers={"Authorization": f"Bearer {credentials.secret('GITHUB_TOKEN')}",
"Accept": "application/vnd.github+json"}).json()
if not items:
return {"unread": 0}
by_repo = defaultdict(list)
for n in items:
url = (n["subject"].get("url") or "").replace("api.github.com/repos", "github.com").replace("/pulls/", "/pull/")
by_repo[n["repository"]["full_name"]].append(f" - [{n['reason']}] {n['subject']['title']}\n {url or n['repository']['html_url']}")
notify.email_me(f"{len(items)} unread GitHub notifications",
"\n\n".join(f"{repo}\n" + "\n".join(lines) for repo, lines in sorted(by_repo.items())))
return {"unread": len(items)}FAQ
Common questions
Does it mark my GitHub notifications as read?
Can it include only notifications where I am directly involved?
How far back does each digest go?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Back up your data to a GitHub repo every night
Your exports and configs are committed to a private repo each night, only when something changed, with a summary by email.
See how it worksGet weekly stats for your repos by email
Every Monday you see stars, forks, open issues and open pull requests for your repos, and how they changed since last week.
See how it worksGet a morning digest of new pull requests
Each weekday morning you get one email with the pull requests opened in the last day, grouped by repo.
See how it worksKeep exploring
Set up “Get your GitHub notifications in one email” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.