Skip to content

Personalized Daily Briefing

Start every morning with a concise, AI-curated summary of what matters to you — delivered automatically to Telegram before you finish your coffee.

Unlike static notification feeds, Moltbot dynamically calls tools at runtime to fetch live data. Every briefing is unique because the underlying information changes daily.

Prerequisites

Before setting up your daily briefing, make sure the following are in place:

  • Moltbot running and connected to Telegram — You need a working Moltbot instance linked to your Telegram account.
  • Scheduled tasks enabled — Cron support must be configured in your Moltbot setup. See Scheduled Tasks for details.
  • MCP tools for data fetching — Depending on the data sources you want, you may need one or more MCP tools installed:
    • Brave Search MCP for web/news searches
    • GitHub MCP for repository activity
    • RSS/Fetch MCP for reading RSS feeds or arbitrary URLs
  • Memory system active — Optional but recommended. With memory enabled, Moltbot can learn your preferences over time and refine the briefing.

How It Works

Moltbot's cron system triggers a prompt at your chosen time. That prompt instructs the AI to call external tools, gather data, synthesize it, and send you a formatted message. There is no static template — the LLM decides how to structure the output based on what it finds.

This means:

  • On a quiet day with no major updates, the briefing will be short.
  • On a busy day with multiple repo releases and breaking news, it will be richer.
  • If a tool fails (e.g., a search API is temporarily down), Moltbot gracefully skips that section rather than crashing.

Setup

Step 1: Configure Your Data Sources

Decide what you want in your briefing. Common choices include:

SourceMCP Tool NeededExample
Tech newsBrave Search"AI agent" news from the past 24 hours
GitHub activityGitHub MCPNew releases on starred repos
RSS feedsFetch/Browser MCPBlog posts from specific feeds
WeatherBrave SearchLocal weather forecast
CalendarGoogle Calendar MCPToday's meetings

Step 2: Write the Cron Prompt

Add the following to your Moltbot configuration:

yaml
cron:
  - name: morning-briefing
    schedule: "0 8 * * *"
    channel: telegram
    prompt: |
      Generate my morning briefing:
      1. Check my starred GitHub repos for new releases
      2. Search "AI agent" news from the past 24 hours via Brave Search
      3. Check my RSS feeds for updates
      Summarize in under 300 words.

The schedule field uses standard cron syntax. "0 8 * * *" means every day at 8:00 AM (server time). Make sure your server timezone matches your local timezone, or adjust the hour accordingly.

Step 3: Customize the Prompt

The prompt above is a starting point. Here are variations to consider:

Minimal briefing (weekdays only):

yaml
cron:
  - name: weekday-briefing
    schedule: "0 7 * * 1-5"
    channel: telegram
    prompt: |
      Give me a quick weekday briefing:
      - Top 3 AI/tech headlines from the last 24 hours
      - Any new GitHub issues on steipete/moltbot
      Keep it under 150 words. No fluff.

Extended weekend briefing:

yaml
cron:
  - name: weekend-briefing
    schedule: "0 10 * * 0,6"
    channel: telegram
    prompt: |
      It's the weekend. Give me a relaxed briefing:
      - Notable tech news from the past 48 hours
      - Interesting articles from my RSS feeds
      - Any open source projects trending on GitHub this week
      Longer is fine — up to 500 words.

Multi-topic briefing with sections:

yaml
cron:
  - name: full-briefing
    schedule: "0 8 * * *"
    channel: telegram
    prompt: |
      Generate my morning briefing with these sections:
      ## Tech News
      Search for the top AI and developer tool news from the past 24 hours.
      ## Open Source
      Check for new releases on: steipete/moltbot, langchain-ai/langchain, ollama/ollama
      ## Reading List
      Check if there are any saved articles in my memory I haven't reviewed yet.
      ## Weather
      Search for today's weather in Vienna, Austria.
      Format with headers and keep the total under 400 words.

Step 4: Test Before Going Live

Before relying on the cron schedule, test the prompt manually. Send the prompt text directly to Moltbot in Telegram and verify:

  1. All data sources return results.
  2. The summary length and format meet your expectations.
  3. No tools are missing or misconfigured.

Once satisfied, deploy the cron configuration and let it run.

Edge Cases and Troubleshooting

  • Timezone mismatch: If your briefing arrives at the wrong time, check your server's timezone setting. You can verify with timedatectl on Linux or by checking your Docker container's TZ environment variable.
  • Empty briefings: If a search returns no results (e.g., no new releases overnight), the briefing may be sparse. You can add a fallback instruction: "If no new releases are found, suggest an interesting open source project instead."
  • Rate limits: If you are using free-tier API keys for search tools, daily cron jobs are usually fine. Avoid scheduling more frequently than every few hours for search-heavy briefings.
  • Tool failures: Moltbot handles tool errors gracefully, but if a tool consistently fails, the briefing will be incomplete. Check your MCP tool logs if a section is always missing.

Pro Tips

  • Use memory to refine over time. After receiving a few briefings, tell Moltbot what you liked and didn't like: "Skip weather from now on" or "Always include Rust ecosystem news." If memory is enabled, it will remember these preferences.
  • Chain with other automations. Your briefing can reference data from other Moltbot workflows. For example, if you use the Weekly Report recipe, your Monday briefing could include a summary of last week's logged work.
  • Add a "quote of the day." Append "End with an inspiring quote about engineering or creativity." to the prompt for a small motivational touch.
  • Use conditional delivery. Add "If there is genuinely nothing notable today, do NOT send a message." to avoid empty briefings cluttering your chat.
  • Localize the output. Even if your tools return English results, you can instruct Moltbot to summarize in another language: "Write the entire briefing in German."

Community tutorial site — not affiliated with official Moltbot