Morning Briefing

Lesson 3 of 4

Add Weather, News & Calendar Data

Estimated time: 8 minutes

Add Weather, News & Calendar Data

Your basic briefing works, but it relies on the AI's general knowledge. In this lesson, you'll connect real-time data sources so your briefing includes actual weather for your city, today's calendar events, and current news headlines.

OpenClaw supports data sources through ClawHub skills — community-built plugins you can install with a single command.

Search for available skills

ClawHub is OpenClaw's skill registry. Search for briefing-related skills:

Search weather skills
clawhub search "weather"
Search calendar skills
clawhub search "calendar"
Search news skills
clawhub search "news"

You'll see community-built skills for each data source. Install the ones you want — each adds a new capability to your OpenClaw agent.

Add weather data

Install weather skill
clawhub install weather-forecast

Most weather skills use the OpenWeatherMap API, which has a generous free tier (1,000,000 calls/month).

  1. Sign up at openweathermap.org
  2. After email verification, find your API key under API keys in your dashboard
  3. Note: new keys take up to 2 hours to activate

Add the key to your OpenClaw environment:

echo 'OPENWEATHERMAP_API_KEY=your_key_here' >> ~/.openclaw/.env

The skill calls the OpenWeatherMap API with your location coordinates. Example response data:

  • Temperature: 62F (feels like 59F)
  • Conditions: "overcast clouds"
  • Humidity: 72%
  • Wind: 8 mph

The AI formats this into a human-readable summary in your briefing.

Add Google Calendar events

Install calendar skill
clawhub install google-calendar

This skill uses the Google Calendar API to fetch today's events.

  1. Go to console.cloud.google.com and create a project (or use an existing one)
  2. Enable the Google Calendar API in the API Library
  3. Go to Google Auth Platform > Clients, create an OAuth 2.0 Client ID (Desktop app type)
  4. Download the credentials JSON file
  5. Place it at ~/.openclaw/google-credentials.json

The first time the skill runs, it will open a browser window for you to authorize access. After that, it stores a refresh token and works automatically.

Google Tasks too

If you use Google Tasks, you can add the google-tasks skill with the same credentials — just add the Tasks API scope. One OAuth setup covers both Calendar and Tasks.

Add news headlines

Install news skill
clawhub install news-headlines

GNews API is best for the free tier:

  • 100 requests/day (more than enough for a daily briefing)
  • Sign up at gnews.io — free, no credit card
  • Supports filtering by topic: general, world, business, technology, science, health, sports, entertainment
echo 'GNEWS_API_KEY=your_key_here' >> ~/.openclaw/.env

Add Todoist tasks (optional)

If you use Todoist for task management:

Install Todoist skill
clawhub install todoist

Get your API token from Todoist: Settings > Integrations > Developer > API token

echo 'TODOIST_API_KEY=your_token_here' >> ~/.openclaw/.env

The Todoist API returns tasks filtered by today — including overdue items. The AI will list them by priority in your briefing.

Update your briefing prompt

Now that you have data sources connected, update your cron job prompt to use them:

openclaw cron edit <job-id> --message "Give me my morning briefing for today.

Use the available tools to gather real data:
1. Get the current weather for San Francisco, CA
2. Get my Google Calendar events for today
3. Get my Todoist tasks due today
4. Get top 3 news headlines in technology and business

Format the briefing as a clean message with these sections:
- Greeting with today's date
- Weather summary (temperature, conditions, high/low)
- Calendar events (time and title for each)
- Tasks due today (sorted by priority)
- News headlines (title and one-line summary each)

Use emoji section headers. Keep it concise — readable in under 60 seconds."

Replace San Francisco, CA with your city. Test it:

Test the updated briefing
openclaw cron run <job-id>

You should now receive a briefing with real weather data, your actual calendar events, your real tasks, and current news headlines.

Skills are optional and composable

You don't need all of these. Install only the data sources you care about and adjust the prompt accordingly. A briefing with just weather and calendar is already very useful. You can always add more skills later.

Troubleshooting

Make sure your prompt specifies the city name clearly. The weather skill uses geocoding to convert city names to coordinates.

The first run requires browser-based OAuth authorization. Run openclaw cron run <job-id> manually once and complete the authorization flow. Subsequent runs use the stored refresh token.

Double-check your API key in ~/.openclaw/.env. New keys from OpenWeatherMap and GNews can take a few minutes to activate.

List installed skills
clawhub list

This shows all installed skills and their status.

Knowledge Check

What is the recommended free news API for a daily briefing?

Narwhalexpert
0

Configuring Reliable Cron Jobs in OpenClaw

# Reliable Cron Jobs Cron jobs allow you to automate recurring tasks. Here is how to set them up effectively. ## 🛠 Basic Setup Add a new cron job using the CLI: ```bash openclaw cron add --name "...