Daily
Hear about new releases of the tools you use
When a library or tool you depend on ships a new version, your dev channel gets the release notes link.
- Runs
- Daily
- Apps
- Slack
- AI
- Optional
- Access
- chat:write
Send this to your assistant
Create a ClickRuntime automation: every morning, check for new releases of vercel/next.js, psf/requests and pallets/flask on GitHub, and post any new ones to #dev with a link to the release notes.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A modern app depends on dozens of open-source libraries. When one publishes a security fix or a breaking major version, the maintainers announce it on GitHub, and nobody on your team is watching. A bug that was fixed in version 4.2.1 stays in production for months, or a deprecation notice goes unread until upgrading becomes an emergency. Subscribing to every repository's release emails buries individual inboxes, and the notifications do not reach the people who plan the work.
Each day, ClickRuntime calls GitHub's public releases endpoint for each repository on your list and compares the latest tag with the one it saw last time. New releases are posted to #dev with the repo name, version and link, and release notes can be summarized by AI into a few lines about what changed.
It is useful for platform teams, open-source maintainers watching upstream projects, and agencies maintaining many client sites.
What you get out of it
Security fixes are applied sooner
When a dependency ships a patch for a vulnerability, hearing about it the next morning rather than in a quarterly audit shortens the window your application is exposed to a known issue.
Upgrades are planned, not rushed
Learning about a major release with breaking changes on the day it appears lets a team schedule the migration gradually, instead of being forced into it when an old version loses support.
The team shares one source of truth
One channel lists what changed upstream, so developers do not each maintain private watch lists, and nobody assumes someone else saw the notice while the release quietly goes unread for a month.
Release notes become digestible
A few lines on what is new and what might break save engineers from reading long changelogs for each of thirty libraries just to decide whether an update matters this sprint or can wait.
Maintenance work is justified
A visible stream of releases helps engineers show managers why dependency updates take time, with a dated record of what was available and when the team acted on it, so the work is visible rather than invisible overhead.
How it works
What happens, step by step
Every day ClickRuntime checks GitHub for the latest release of each project on your watch list.
It compares the release with the one it saw last time and ignores projects with no new version.
Each new release is posted to your Slack channel with the project name, version number and a link to the release notes.
Before it runs live
- Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)
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
- Change what the AI looks for, or how it writes the result
- Add another app, for example also send it to Google Sheets
- Combine it with other Slack steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_trigger, state, notify, http
REPOS = ["vercel/next.js", "psf/requests", "pallets/flask"]
@on_trigger
def run(event):
seen = state.get("latest_tags") or {}
posted = []
for repo in REPOS:
resp = http.get(f"https://api.github.com/repos/{repo}/releases/latest",
headers={"Accept": "application/vnd.github+json"})
if resp.status_code == 404:
continue # repo has no releases yet
resp.raise_for_status()
release = resp.json()
tag = release["tag_name"]
if seen.get(repo) not in (None, tag):
notify.slack(f"{repo} released {tag}\n{release['html_url']}", channel="#dev")
posted.append(f"{repo}@{tag}")
seen[repo] = tag
state.set("latest_tags", seen)
return {"posted": posted}FAQ
Common questions
Do I need a GitHub token?
Will it post every old release on the first run?
What if a project uses tags but not GitHub Releases?
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
Get alerts about security issues that affect you
When a serious vulnerability is published for software you use, your security channel hears about it the same hour.
See how it worksGet a daily news digest in Slack
Each morning your team gets a short summary of what's new on the sites and blogs you follow.
See how it worksKnow the moment your website goes down
Your team hears in Slack when the site stops responding or slows down, and again when it's back.
See how it worksKeep exploring
Set up “Hear about new releases of the tools you use” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.