All-in-one daily briefing that combines Google Calendar events, Gmail/Outlook email highlights, weather forecast, GitHub PR and CI status, Hacker News and RSS feeds, and Todoist/ClickUp/Linear tasks into a single prioritized morning summary delivered via Telegram, Slack, WhatsApp, or Discord. Use this skill for: morning briefing, daily digest, daily summary, daily standup prep, "what's on my plate today", "brief me", "what did I miss", end-of-day recap, personalized news digest, schedule overview, inbox summary, daily notification, recurring morning update via cron, or any request to see a combined overview of calendar plus email plus tasks plus news. This is your AI chief of staff that replaces checking 6 apps every morning. Works with whatever tools you have configured — skips what's missing, uses what's available.
Your AI Chief of Staff. This skill pulls data from multiple sources and generates a single, prioritized daily briefing — delivered however the user wants it.
Most OpenClaw users end up building their own morning briefing by manually calling 5-8 separate tools. This skill does it in one step: gather everything, prioritize it, format it beautifully, and deliver it.
When triggered, gather data from whichever sources the user has available, then compose a structured briefing. Not every source needs to be configured — the skill gracefully skips unavailable sources and works with whatever is connected.
Attempt to pull from these sources in order. If a source is unavailable (tool not enabled, API not configured), skip it silently and move on. Never fail because one source is missing.
Use the gog tool or Google Calendar CLI to fetch today's events.
Use Gmail via gog or the configured email tool to scan recent unread messages.
Use curl to fetch weather from a public API, or use an installed weather skill.
Use the GitHub CLI (gh) or GitHub skill to check activity.
Check configured task managers: Todoist, ClickUp, Linear, GitHub Issues, or local task files.
Use web_search or RSS feeds to pull relevant headlines.
ALWAYS structure the briefing like this. Adapt sections based on available data:
☀️ Good [morning/afternoon], [Name]! Here's your briefing for [Day, Date].
📅 TODAY'S SCHEDULE
[Calendar events in chronological order]
[Flag any conflicts or notable gaps]
📧 EMAIL HIGHLIGHTS
[Top priority emails with one-line summaries]
[Total unread count]
⚡ ACTION ITEMS
[Overdue tasks — URGENT]
[Tasks due today]
[PRs needing your review]
🌤️ WEATHER
[Only if notable — rain, extreme temps, etc.]
💻 DEV ACTIVITY
[CI failures, new issues, PR updates]
📰 NEWS
[3-5 relevant headlines, one line each]
---
Have a great day! Reply with any item number to dive deeper.
The briefing should feel like a smart assistant, not a data dump. Apply these rules:
If the user asks to "send me a briefing every morning" or "set up a daily digest":
Example cron setup:
{
"schedule": "0 7 * * 1-5",
"prompt": "Generate my daily briefing and send it to me",
"channel": "telegram"
}
The user can customize their briefing at any time:
Store all preferences in OpenClaw's memory system so they persist across sessions.
User: "Brief me" → Generate full briefing with all available sources
User: "What's on my plate today?" → Focus on calendar + tasks, lighter on news
User: "Set up a daily morning briefing on Telegram at 7 AM" → Configure cron job, confirm channel, generate a test briefing
User: "What did I miss today?" → Evening recap: summarize the day's emails, completed tasks, GitHub activity
User: "Add Hacker News to my daily briefing" → Store preference, confirm, show preview of how it'll look