The moment it happens
Get error alerts with a plain-English explanation
When one of your jobs or systems fails, #ops gets the error and a one-line guess at the cause, without the same error twice in an hour.
- Runs
- The moment it happens
- Apps
- Slack
- AI
- Yes, uses the built-in AI allowance
- Access
- chat:write
Send this to your assistant
Create a ClickRuntime automation: give me a link my scripts can send errors to. Post each one to #ops with a one-line explanation of what probably went wrong, and don't repeat the same error within an hour.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A nightly import fails at 2 a.m. with a stack trace that begins "Connection reset by peer". The error goes to a logging tool or an inbox, where it blends with other noise, and the on-call engineer wakes up to forty identical alerts and no idea whether this one is new. Non-technical teammates see "Job failed" and have to ask someone what it means. Time passes while people translate error text or investigate a retry loop that has already cleared itself.
When one of your jobs sends an error to ClickRuntime, it checks whether the same error was seen recently and drops the duplicate. For new ones, its built-in AI writes a plain-English explanation of the likely cause and a suggested first check, and the post goes to a channel like #ops with the original error beneath it.
It works for cron jobs, serverless functions, payment webhooks or any system that can send a JSON error to a URL.
What you get out of it
On-call engineers get context first
A short note such as "the database refused the connection, likely a restart or exhausted pool" gives the responder somewhere to start before they have opened a terminal or a log viewer.
Alert storms become one message
A broken integration can produce hundreds of identical errors in an hour. Skipping duplicates seen recently keeps the channel readable and means the one new problem is not buried under old ones.
Non-engineers can follow along
Support and operations see a sentence they can understand, so they know whether to warn customers or wait, rather than interrupting an engineer to ask what a stack trace means.
Failures are not missed overnight
Errors posted in a team channel are seen by whoever is online in any time zone, instead of sitting in a single person's inbox until they return from sleep, leave or a flight.
Recurring problems leave a trail
Because every distinct error is explained and logged in the channel, you can search for "timeout" and see how often it happened, which supports an argument for fixing the underlying cause.
How it works
What happens, step by step
When one of your systems reports an error, ClickRuntime receives it the moment it happens.
If the same error from the same system was already posted within the last hour, it stays quiet to avoid noise.
AI reads the error message and writes one plain-English sentence on what most likely caused it.
The alert goes to your Slack channel, such as #ops, with the system name, the error and the explanation.
Before it runs live
- Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)
- Paste your automation's link into the other app's webhook settings
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
- Act only on the items that match your own rules, and skip the rest
- 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
import hashlib, time
from clickruntime import on_event, state, ai, notify
@on_event
def handle(event):
err = event.json or {}
message = str(err.get("message", ""))[:1500]
key = "err:" + hashlib.sha1(f"{err.get('source')}:{message}".encode()).hexdigest()
last = state.get(key)
if last and time.time() - last < 3600:
return {"posted": False, "reason": "repeat within an hour"}
hint = ai.generate(
f"In one sentence, say what most likely caused this error:\n{message}",
max_output_tokens=80,
).text.strip()
notify.slack(f":rotating_light: {err.get('source', 'unknown')}: {message[:300]}\n_{hint}_", channel="#ops")
state.set(key, time.time())
return {"posted": True}FAQ
Common questions
How does it decide an error is a duplicate?
Is my error data sent to an outside AI provider I need to configure?
Does the explanation replace the real error?
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
Send your best leads to sales straight away
Every contact form message is scored, and the promising ones reach #sales while they're still warm.
See how it worksPost new orders and sign-ups to Slack
When something happens in your shop, app or form, the details land in the right channel straight away.
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 worksKeep exploring
Set up “Get error alerts with a plain-English explanation” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.