Weather

Get current weather and forecasts via wttr.in or Open-Meteo. No API key needed.

The Weather skill is one of OpenClaw's simplest yet most universally useful capabilities. It wraps two free weather services — wttr.in (a curl-friendly weather service) and Open-Meteo (an open-source weather API) — to give your AI agent instant access to current conditions and forecasts for any location worldwide. No API key needed. The primary interface is wttr.in, which returns weather data in multiple formats: human-readable terminal output, one-line summaries, JSON for programmatic use, and even PNG images. The skill teaches OpenClaw the right curl incantations for different weather questions — current temperature, 3-day forecasts, 'will it rain?' checks, and location-specific lookups using city names or airport codes. Open-Meteo serves as a fallback and provides more structured data — hourly forecasts, specific weather variables (wind speed, humidity, UV index), and coordinate-based lookups. It's particularly useful when you need machine-readable data for automation rather than human-friendly summaries. This skill is the perfect entry point for OpenClaw beginners — zero configuration, instant gratification. Ask your AI 'what's the weather?' and it just works. It's also the backbone of morning briefing routines, travel planning workflows, and proactive notifications ('it's going to rain in 2 hours, grab an umbrella').

Tags: weather, forecast, utility, no-key

Category: Utility

Use Cases

  • Morning briefing — AI includes weather in your daily summary
  • Travel planning — check forecast for destination before packing
  • Proactive rain alerts — cron job checks hourly and warns you
  • Outfit suggestions — AI factors in temperature and precipitation
  • Event planning — check weekend forecast for outdoor activities
  • Commute planning — wind and precipitation data for cyclists

Tips

  • Use `format=3` for clean one-line summaries: `curl wttr.in/Mumbai?format=3`
  • Use `format=j1` for JSON output that's easy to parse programmatically
  • Combine with cron for automated daily weather briefings sent to Telegram/Discord
  • Airport codes work as locations: `curl wttr.in/BOM` for Mumbai airport weather
  • Use `?0` suffix for current conditions only (no forecast), `?1` for tomorrow only
  • Custom format strings let you pick exactly what to show: `%c %t %w %h` for emoji + temp + wind + humidity

Known Issues & Gotchas

  • wttr.in is rate-limited — don't spam requests or you'll get temporarily blocked
  • Location detection by IP is unreliable behind VPNs — always specify the city explicitly
  • wttr.in occasionally has downtime — Open-Meteo is the fallback but requires coordinate lookup
  • Weather codes from Open-Meteo need mapping to human-readable descriptions (code 61 = 'slight rain')
  • ASCII art output from wttr.in can look garbled in some terminal/chat contexts — use format=3 or format=j1
  • Historical weather data is NOT supported — use specialized archives for that

Alternatives

  • OpenWeatherMap
  • WeatherAPI.com
  • Visual Crossing
  • AccuWeather API

Community Feedback

You'd use OpenClaw's cron system to schedule a daily job that fetches weather and sends it to you. The job would call web_fetch on the wttr.in API.

— Reddit r/openclaw

Get current weather and forecasts — no API key required. 268 stars, 84.5k downloads. One of the most installed OpenClaw skills.

— LLMBase

wttr.in is brilliant for terminal weather. Just curl it and you get a beautiful ASCII art forecast. The JSON mode is great for scripting.

— Reddit r/commandline

Find coordinates for a city, then query Open-Meteo. Returns JSON with temp, windspeed, weathercode. Simple and reliable.

— OpenClaw Skills Directory

Configuration Examples

Quick one-line weather check

# Current weather for any city
curl -s "wttr.in/Mumbai?format=3"
# Output: Mumbai: ☀️ +32°C

# Detailed format
curl -s "wttr.in/London?format=%l:+%c+%t+(feels+like+%f),+%w+wind,+%h+humidity"

JSON output for automation

# Full JSON weather data
curl -s "wttr.in/NewYork?format=j1" | jq '.current_condition[0]'

# Open-Meteo (coordinate-based)
curl -s "https://api.open-meteo.com/v1/forecast?latitude=19.08&longitude=72.88&current_weather=true"

Cron job for daily weather briefing

{
  "schedule": { "kind": "cron", "expr": "0 7 * * *", "tz": "Asia/Calcutta" },
  "payload": {
    "kind": "agentTurn",
    "message": "Fetch today's weather for Mumbai and send a brief summary"
  },
  "sessionTarget": "isolated",
  "delivery": { "mode": "announce" }
}

Installation

# Built-in (bundled with OpenClaw)

Homepage: https://wttr.in/:help

Source: bundled