GitHub to Telegram, AI digests you will actually read
You check GitHub “later,” then later becomes never. Pull requests pile up, breaking changes sneak in, and the only people who feel confident are the ones who live inside the repo all day.
Engineering managers get blindsided in standups. DevOps leads end up playing messenger. And product folks still need the gist without reading 30 comments. This GitHub Telegram digest automation fixes that by turning new PRs into one clear daily summary you will actually read.
You’ll set up an n8n workflow that checks the n8n GitHub repo every morning, filters to today’s pull requests, generates an AI summary, then posts it straight into Telegram.
How This Automation Works
Here’s the complete workflow you’ll be setting up:
n8n Workflow Template: GitHub to Telegram, AI digests you will actually read
flowchart LR
subgraph sg0["Daily Check at 10 AM Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Daily Check at 10 AM", pos: "b", h: 48 }
n1["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/github.dark.svg' width='40' height='40' /></div><br/>Fetch Latest Pull Request"]
n2@{ icon: "mdi:swap-vertical", form: "rounded", label: "Extract PR Summary", pos: "b", h: 48 }
n3@{ icon: "mdi:robot", form: "rounded", label: "Generate AI Summary", pos: "b", h: 48 }
n4@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model", pos: "b", h: 48 }
n5["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/telegram.svg' width='40' height='40' /></div><br/>Send to Telegram Channel"]
n6@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Filter Today's Updates Only", pos: "b", h: 48 }
n4 -.-> n3
n2 --> n3
n3 --> n5
n0 --> n1
n1 --> n6
n6 --> n2
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
class n3 ai
class n4 aiModel
class n6 decision
classDef customIcon fill:none,stroke:none
class n1,n5 customIcon
Why This Matters: Pull Requests Don’t “Keep You Updated”
Most teams don’t miss important repo updates because they’re careless. They miss them because PR information is scattered, noisy, and timed badly. A new pull request might be relevant to your workflows, your integrations, or your release schedule, but the signal is buried under labels, long descriptions, CI output, and side conversations. So you skim. Then you forget. Then something changes in production and everyone swears it “wasn’t communicated.” Honestly, it probably was. It was just communicated in the least readable place possible.
It adds up fast. Here’s where the friction compounds.
- People keep opening GitHub just to “check updates,” which turns into 20 minutes of tab hopping.
- Important PRs get missed because they don’t look urgent until they break something.
- Context gets lost when someone forwards a link without explaining why it matters to the rest of the team.
- Status meetings turn into catch-up sessions, because nobody has a shared, readable summary.
What You’ll Build: A Daily AI PR Digest Posted to Telegram
This workflow runs on a simple schedule: every morning at 10 AM, it checks the n8n GitHub repository for the latest pull requests. It immediately filters down to only the PRs created today, so you’re not re-reading yesterday’s news. Then it takes the useful parts of each PR (title, description, and summary fields you choose), packages them into a clean input, and hands that to an AI agent powered by an OpenAI chat model. Finally, it posts a single, readable digest message into your Telegram channel so the whole team sees the same update at the same time.
The workflow starts with the scheduled trigger and a GitHub fetch. Next, n8n filters and maps only the PR data you care about. AI turns it into plain-English clarity, then Telegram delivers it where your team already pays attention.
What You’re Building
| What Gets Automated | What You’ll Achieve |
|---|---|
|
|
Expected Results
Say your team checks GitHub updates twice a day and spends about 10 minutes each time skimming PRs, comments, and descriptions. That’s roughly 20 minutes per person per day, and on a team of 6 it turns into about 2 hours of attention gone. With this workflow, the “checking” becomes zero: you still get the same awareness, but it lands as one Telegram message. Most people read it in a minute, click through only when something is actually relevant.
Before You Start
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- GitHub for reading pull requests from a repo
- Telegram to deliver the digest to a channel
- OpenAI API key (get it from the OpenAI dashboard)
Skill level: Beginner. You’ll connect accounts, paste an API key, and tweak a prompt.
Want someone to build this for you? Talk to an automation expert (free 15-minute consultation).
Step by Step
A scheduled check runs each morning. The workflow uses a schedule trigger set for 10 AM, so you get updates at a predictable time instead of random pings all day.
GitHub pull requests are retrieved and narrowed down. n8n pulls the latest PRs from the n8n repository, then filters to only the ones created “today,” which keeps the final message short.
Key PR details are cleaned up for summarization. A “set/edit fields” step maps PR titles and descriptions into a consistent structure, so the AI agent doesn’t get confused by missing fields.
AI writes the digest and Telegram posts it. The workflow sends the mapped PR data into an AI chain using an OpenAI chat model, then publishes the final summary to your Telegram channel as one digest message.
You can easily modify the schedule time or which repositories you watch based on your needs. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Scheduled Morning Trigger
Set the workflow to run automatically each morning so it can fetch new GitHub updates.
- Add the Scheduled Morning Trigger node.
- Set the schedule rule to run at 10 by configuring Trigger At Hour to
10. - Connect Scheduled Morning Trigger to Retrieve Latest PR.
Step 2: Connect GitHub and Filter Today’s PRs
Retrieve the most recent pull request and keep only items created today.
- Add the Retrieve Latest PR node and set Resource to
repositoryand Operation togetPullRequests. - Set Limit to
1, Owner tohttps://github.com/n8n-io, and Repository ton8n. - Credential Required: Connect your githubApi credentials in Retrieve Latest PR.
- Add Filter Today's PRs and set the condition to compare leftValue
={{ $json.created_at }}with rightValue={{ $today }}using the after dateTime operator. - Connect Retrieve Latest PR → Filter Today's PRs.
Step 3: Map the PR Summary for AI Processing
Extract the pull request body into a clean summary field for the AI chain.
- Add the Map PR Summary node.
- Create a string field named Summary and set its Value to
={{ $json.body }}. - Connect Filter Today's PRs → Map PR Summary.
Step 4: Set Up the AI Digest Generation
Use the AI chain to transform the PR summary into a formatted Telegram update.
- Add the Create AI Digest node and set Prompt Type to
define. - Set the Text field to
=Here is the update to process: {{ $json.Summary }} Release date of this update: {{ $('Retrieve Latest PR').item.json.created_at }}. - Ensure the message prompt content includes the detailed role/instructions as defined in the node’s messages configuration.
- Add the OpenAI Chat Engine node as the language model connection for Create AI Digest.
- Credential Required: Connect your openAiApi credentials in OpenAI Chat Engine.
- Connect Map PR Summary → Create AI Digest.
Step 5: Configure Telegram Output
Send the AI-generated update to your Telegram channel or user.
- Add the Post to Telegram node.
- Set Text to
={{ $json.text }}and Chat ID to[YOUR_ID]. - In Additional Fields, set parse_mode to
HTMLand appendAttribution tofalse. - Credential Required: Connect your telegramApi credentials in Post to Telegram.
- Connect Create AI Digest → Post to Telegram.
Step 6: Test and Activate Your Workflow
Run a test to confirm the entire flow works, then activate it for daily use.
- Click Execute Workflow to run a manual test from Scheduled Morning Trigger.
- Verify Retrieve Latest PR outputs a PR, and Filter Today's PRs passes items created today.
- Confirm Create AI Digest outputs a formatted message and Post to Telegram posts it to your chat.
- When successful, toggle the workflow to Active to enable daily automated alerts.
Troubleshooting Tips
- GitHub credentials can expire or need specific permissions. If things break, check the n8n credential you selected in the GitHub node first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.
Quick Answers
About 30 minutes if your GitHub, Telegram, and OpenAI accounts are ready.
No. You’ll connect credentials and adjust a prompt. The logic is already built into the workflow.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API costs, which are usually a few cents per digest.
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
Yes, and it’s the best part. You can swap the “Retrieve Latest PR” node to point at your own repositories, then adjust “Filter Today’s PRs” to look back a week if you prefer weekly summaries. In “Map PR Summary,” include labels, authors, or links if your team needs more context. You can also change the AI prompt in “Create AI Digest” to produce a non-technical version for leadership, or a more technical one for engineers.
Usually it’s an expired token or missing repo permissions.
Practically, it can handle “normal repo” volume without issues: dozens of PRs in a day are fine, because it summarizes text, not huge files. On n8n Cloud, your limit is based on monthly executions (Starter is fine for daily digests). If you self-host, there’s no execution cap, so it mostly depends on server resources and API rate limits. If you start summarizing hundreds of PRs daily, you’ll want batching and a slightly stricter filter.
Often, yes, because n8n handles filtering, mapping, and more complex logic without forcing you into expensive task counts. It also supports self-hosting, which is a big deal if you want predictable costs and more control. Zapier and Make can still work for simple “new PR → send message” alerts, but those alerts get noisy fast. The AI digest step is where the value is, and n8n gives you more flexibility to shape the prompt and the output format. If you’re torn, Talk to an automation expert and you’ll get a clear recommendation.
Once this is running, PR awareness stops being a daily chore. You get one clean update in Telegram, and your brain stays on real work.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.