Founder

The Morning Briefing That Replaced My First Hour of Work

45-60 min β†’ 2 min morning prepCommunication & Messaging5 min read

Key Takeaway

A daily 6am cron synthesizes my calendar, urgent emails, and deadlines into one Telegram message β€” replacing 45-60 minutes of manual morning prep with a 2-minute read.

The Problem

Every morning looked the same. Wake up. Open Gmail. Scroll through 40-60 overnight emails. Open Google Calendar. Check what's today, what's tomorrow. Cross-reference: do I need to prep for any meetings? Open Notion for project deadlines. Check Slack for anything urgent from the team.

Forty-five minutes to an hour. Every single morning. Before I'd done a single productive thing.

The worst part: it felt productive. I was "staying on top of things." But I wasn't making decisions or creating anything. I was just loading context into my brain that a machine could load for me.

What I actually needed every morning was simple: What's happening today? What needs my attention? What can I ignore? Give me that in 60 seconds, and I'll spend the other 58 minutes doing real work.

The Solution

A daily cron job at 6:00 UTC (7:00 CET, my timezone) that pulls the next 48 hours of calendar events plus urgent unread emails, synthesizes everything into a structured briefing, and delivers it as a single Telegram message.

Not a list of raw events. Not a forwarded email dump. A briefing β€” with context, prep notes, and prioritization. Like having a chief of staff who read everything overnight and gives you the executive summary over coffee.

The Process

The cron configuration:

yamlShow code
- name: morning-briefing
  schedule: "0 6 * * *"   # 6am UTC = 7am CET
  channel: telegram
  model: claude-sonnet-4-20250514
  task: |
    Generate my morning briefing. Pull data from these sources:

    1. CALENDAR (next 48 hours):
       - Use gog to fetch all events for today and tomorrow
       - For each meeting: title, time, attendees, location/link
       - Add prep notes: who are these people, what did we last discuss, what's the likely agenda

    2. EMAIL (urgent unread):
       - Use gog to check unread emails labeled URGENT or ACTION
       - Summarize each in one line: sender, topic, what they need

    3. DEADLINES:
       - Check if any calendar events are deadlines (keywords: "due", "deadline", "submit", "launch")
       - Flag anything due within 48 hours

    Format the briefing as:
    πŸ“‹ MORNING BRIEFING β€” [date]

    πŸ—“ TODAY ([count] meetings)
    β€’ [time] β€” [meeting] with [people] β€” [one-line context]

    πŸ—“ TOMORROW ([count] meetings)
    β€’ [time] β€” [meeting] with [people] β€” [one-line context]

    πŸ“§ NEEDS ATTENTION ([count])
    β€’ [sender]: [one-line summary + what they need]

    ⚠️ DEADLINES
    β€’ [item] β€” due [when]

    🎯 SUGGESTED PRIORITIES
    1. [highest impact action]
    2. [second priority]
    3. [third priority]

The agent uses the gog CLI to pull both data sources:

bashShow code
# Calendar: next 48 hours
gog calendar list --from "today" --to "+2d" --format json

# Urgent/action emails
gog gmail list --unread --label "URGENT" --format json
gog gmail list --unread --label "ACTION" --format json

Here's what a real briefing looks like in Telegram:

View details
πŸ“‹ MORNING BRIEFING β€” Thursday, March 12

πŸ—“ TODAY (3 meetings)
β€’ 10:00 β€” LP call with Meridian Capital β€” They asked about Q4 performance last time.
  Prep: Have the updated deck ready. They care about DPI.
β€’ 14:00 β€” Mr.Chief standup β€” Thom pushed the gateway fix yesterday, check if it's in prod.
β€’ 17:00 β€” Coffee with Marc (Station F) β€” He's exploring AI infra for his portfolio.
  Angle: Show the multi-agent orchestration demo.

πŸ—“ TOMORROW (2 meetings)
β€’ 09:00 β€” Board prep sync β€” Pierre wants the agenda finalized today.
β€’ 15:00 β€” Podcast recording (AI Builders) β€” Topic: "Why agents beat chatbots."
  Prep: They sent questions last week, review the doc.

πŸ“§ NEEDS ATTENTION (2)
β€’ Legal counsel: Signature needed on the amended partnership agreement. Deadline Friday.
β€’ Thom: Blocking issue on the cron scheduler β€” needs architecture decision.

⚠️ DEADLINES
β€’ Partnership agreement signature β€” due Friday March 13
β€’ Podcast prep doc review β€” due today (recording tomorrow)

🎯 SUGGESTED PRIORITIES
1. Sign the partnership agreement (legal deadline, 5 min)
2. Reply to Thom on scheduler architecture (unblocks the team)
3. Review podcast prep doc before tomorrow's recording

The Results

MetricBeforeAfterDelta
Morning prep time45-60 min2 min-96%
Missed meeting prep1-2/week0-100%
First productive hour starts9:00-9:30 AM7:15 AM-2 hours earlier
Surprise meetings (no context)3-4/week0-100%
Calendar + email apps opened before noon4-6 times0-1-90%

The biggest win isn't time saved. It's cognitive clarity. I wake up, read one message, and know exactly what my day looks like. No decision fatigue about what to check first. No anxiety about what I might be missing. The agent already checked everything.

Try It Yourself

  1. Configure gog with your Google Workspace account (calendar + Gmail)
  2. Start with calendar-only briefings β€” email integration adds complexity
  3. Customize the prep notes prompt with your actual contacts and their context
  4. Run it for a week and note what's missing from the briefing
  5. Iterate the prompt until the briefing matches what you'd manually compile

Pro tip: add a "suggested priorities" section. The agent ranking your day by impact is worth more than the raw data.


My first hour used to be Gmail and Google Calendar. Now it's a 2-minute Telegram read and straight into deep work. The agent handles the context loading. I handle the decisions.

AI briefingcalendar automationmorning productivityTelegram bot

Want results like these?

Start free with your own AI team. No credit card required.

The Morning Briefing That Replaced My First Hour of Work β€” Mr.Chief