The moment it happens
File incoming bug reports as GitHub issues with a Telegram alert
Each bug report sent to your trigger link becomes a GitHub issue with a clear title, severity and labels, and Telegram alerts you.
- Runs
- The moment it happens
- Apps
- GitHub, Telegram
- AI
- Yes, uses the built-in AI allowance
- Access
- GitHub issues write; bot token
Send this to your assistant
Create a ClickRuntime automation: when a bug report arrives at the trigger link from our feedback form, have AI write a title, severity and labels, open an issue in acme/app, and alert me on Telegram.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A small app studio collects bug reports through an in-app form. Reports arrive in a mailbox with vague subjects like 'it broke', and someone has to rewrite each one before it can go into GitHub.
Turning each report into a GitHub issue with a clear title, a severity and labels, and pinging the developer on Telegram, makes the path from report to fix short. Serious bugs are seen in minutes.
What you get out of it
Clear issues from vague reports
AI writes a specific title and picks labels from the report text. Developers can read the backlog at a glance.
Severity up front
Each issue carries a severity, and the Telegram alert shows it. Crashes get attention before cosmetic glitches.
Nothing waits in a mailbox
Reports become issues straight away. No inbox to clear and no copying.
Original wording is kept
The full report is in the issue body under the AI title. Nothing the user said is lost.
How it works
What happens, step by step
When a bug report is submitted, your form sends it to your automation's trigger link.
AI reads the report and writes a clear title, picks a severity and suggests labels.
A GitHub issue is opened with that title and the full report.
Your Telegram bot sends an alert with the severity and a link.
Before it runs live
- Connect GitHub
- Connect Telegram
- 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 Slack
- Combine it with other GitHub and Telegram steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_event, credentials, http, ai
def gh(method, path, **kw):
resp = http.request(method, f"https://api.github.com{path}", headers={
"Authorization": f"Bearer {credentials.connection('github', 'work')}", "Accept": "application/vnd.github+json"}, **kw)
return resp.raise_for_status() or (resp.json() if resp.content else None)
CHAT_ID = "123456789"
def telegram(text):
http.post(f"https://api.telegram.org/bot{credentials.secret('TELEGRAM_BOT_TOKEN')}/sendMessage",
json={"chat_id": CHAT_ID, "text": text, "disable_web_page_preview": True}).raise_for_status()
REPO = "acme/app"
SCHEMA = {"type": "object", "properties": {"title": {"type": "string"}, "severity": {"type": "string", "enum": ["critical", "major", "minor"]},
"labels": {"type": "array", "items": {"type": "string"}}}}
@on_event
def handle(event):
report = event.json or {}
text = f"{report.get('message', '')}\nDevice: {report.get('device', '')}\nVersion: {report.get('version', '')}"
t = ai.generate(text[:4000], json_schema=SCHEMA, max_output_tokens=100,
system="Write a specific bug title, a severity, and up to 3 labels from: ui, crash, data, performance, billing.").json
issue = gh("POST", f"/repos/{REPO}/issues", json={"title": t["title"], "labels": ["bug", f"severity: {t['severity']}"] + t["labels"],
"body": f"Reported by {report.get('email', 'unknown')}\n\n{text}"})
telegram(f"🐞 [{t['severity']}] {t['title']}\n{issue['html_url']}")
return {"issue": issue["number"], "severity": t["severity"]}FAQ
Common questions
What can send reports to it?
What severities does it use?
Can it alert only for serious bugs?
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 GitHub issue updates on Telegram
Telegram messages you when an issue in your repository is opened, commented on or closed, with the title and a link.
See how it worksBack up Telegram bot messages to GitHub
Every message your Telegram bot receives is saved, and at 02:00 the day's messages are committed to a private GitHub repo as one file.
See how it worksSave notes from Telegram to a GitHub repo
Send your bot a thought, link or to-do, and it is committed to your GitHub notes repo as a Markdown file you can pull into Obsidian or any editor.
See how it worksKeep exploring
Set up “File incoming bug reports as GitHub issues with a Telegram alert” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.