🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Weather via OpenMeteo (via openmeteo-sh cli; simple ver)

by @lstpsche

Get current weather and forecasts for any city or coordinates using free OpenMeteo API. Use when the user asks about weather, temperature, rain, snow, wind,...

Versionv1.2.1
Downloads2,043
Stars⭐ 4
TERMINAL
clawhub install openmeteo-sh-weather-simple

πŸ“– About This Skill


name: openmeteo-sh-weather-simple description: "Get current weather and forecasts for any city or coordinates using free OpenMeteo API. Use when the user asks about weather, temperature, rain, snow, wind, or wants to know if they need an umbrella." metadata: {"openclaw":{"emoji":"🌀","requires":{"bins":["openmeteo"]}}} homepage: https://github.com/lstpsche/openmeteo-sh user-invocable: true

OpenMeteo Weather (openmeteo-sh)

Current weather and forecasts (up to 16 days) via openmeteo CLI. No API key required.

Quick reference

openmeteo weather --current --city=Berlin --llm
openmeteo weather --current --forecast-days=2 --city=London --llm
openmeteo weather --forecast-days=7 --forecast-since=5 --city=Rome --llm
openmeteo weather --current --lat=48.85 --lon=2.35 --llm

Location (pick one)

  • --city=NAME β€” city name (auto-geocoded)
  • --city=NAME --country=CODE β€” disambiguate (e.g. Portland --country=US)
  • --lat=NUM --lon=NUM β€” direct coordinates
  • Options

  • --current β€” current conditions
  • --forecast-days=N β€” forecast length, 1–16 (default 7)
  • --forecast-since=N β€” start from day N (1=today, 2=tomorrow). Must be <= forecast-days.
  • --hourly-params=LIST β€” override hourly variables (comma-separated)
  • --daily-params=LIST β€” override daily variables (comma-separated)
  • --current-params=LIST β€” override current variables (comma-separated)
  • --temperature-unit=UNIT β€” celsius (default) / fahrenheit
  • --llm β€” always pass this
  • Variables

    Defaults are sensible for general weather. Override only when needed.

    Current & hourly:

  • temperature_2m β€” air temp, C
  • apparent_temperature β€” feels-like, C
  • precipitation β€” rain+showers+snow, mm
  • precipitation_probability (hourly only) β€” chance of precipitation, %
  • weather_code β€” condition, auto-resolved to text
  • wind_speed_10m β€” wind, km/h
  • wind_gusts_10m β€” gusts, km/h
  • cloud_cover β€” cloud cover, %
  • snowfall β€” snowfall, cm
  • uv_index (hourly only) β€” UV index
  • Daily:

  • temperature_2m_max / temperature_2m_min β€” max/min temp, C
  • precipitation_sum β€” total precipitation, mm
  • precipitation_probability_max β€” max precipitation chance, %
  • weather_code β€” dominant condition
  • wind_speed_10m_max β€” max wind, km/h
  • sunrise / sunset β€” times
  • snowfall_sum β€” total snowfall, cm
  • Rules

    1. Always pass --llm. 2. Quote all user-provided values in shell commands: --city="New York", --city="St. Petersburg". Only known-safe tokens (numbers, single ASCII words) may be unquoted. 3. Never use help subcommand or --raw β€” work only with what's described here. 4. No location specified -> use the user's default city/country if known from session context. 5. Summarize results naturally β€” never paste raw output. 6. Use --forecast-days=1 for today, =2 for tomorrow β€” minimize token waste. 7. Use --forecast-since=N to skip to a specific future day. 8. For targeted questions, override params to fetch only what's needed. 9. When the user switches cities ("and what about London?"), carry over all params used in prior weather queries this conversation β€” including any added in follow-ups. The new city gets the union of all previously requested params.

    Examples

    "What's the weather like?" -> openmeteo weather --current --city=Berlin --llm Summarize: "Clear, -12C (feels -17C), wind 9 km/h."

    "When will the rain stop?" -> openmeteo weather --forecast-days=2 --city=Berlin --hourly-params=precipitation,precipitation_probability,weather_code --llm Find when precipitation hits ~0. Answer: "Should stop around 14:00."

    "Do I need an umbrella?" -> openmeteo weather --forecast-days=1 --city=Berlin --hourly-params=precipitation,precipitation_probability,weather_code --llm "Yes β€” 70% chance between 11:00-15:00, up to 2mm."

    "Weather this weekend in Rome?" -> openmeteo weather --forecast-days=7 --forecast-since=5 --city=Rome --daily-params=temperature_2m_max,temperature_2m_min,weather_code,precipitation_sum --llm Present only Sat/Sun: "Saturday: 14/8C, partly cloudy. Sunday: 16/9C, clear."

    "Temperature outside?" -> openmeteo weather --current --city=Berlin --current-params=temperature_2m,apparent_temperature --llm "-5C, feels like -9C."

    πŸ’‘ Examples

    "What's the weather like?" -> openmeteo weather --current --city=Berlin --llm Summarize: "Clear, -12C (feels -17C), wind 9 km/h."

    "When will the rain stop?" -> openmeteo weather --forecast-days=2 --city=Berlin --hourly-params=precipitation,precipitation_probability,weather_code --llm Find when precipitation hits ~0. Answer: "Should stop around 14:00."

    "Do I need an umbrella?" -> openmeteo weather --forecast-days=1 --city=Berlin --hourly-params=precipitation,precipitation_probability,weather_code --llm "Yes β€” 70% chance between 11:00-15:00, up to 2mm."

    "Weather this weekend in Rome?" -> openmeteo weather --forecast-days=7 --forecast-since=5 --city=Rome --daily-params=temperature_2m_max,temperature_2m_min,weather_code,precipitation_sum --llm Present only Sat/Sun: "Saturday: 14/8C, partly cloudy. Sunday: 16/9C, clear."

    "Temperature outside?" -> openmeteo weather --current --city=Berlin --current-params=temperature_2m,apparent_temperature --llm "-5C, feels like -9C."

    βš™οΈ Configuration

  • --current β€” current conditions
  • --forecast-days=N β€” forecast length, 1–16 (default 7)
  • --forecast-since=N β€” start from day N (1=today, 2=tomorrow). Must be <= forecast-days.
  • --hourly-params=LIST β€” override hourly variables (comma-separated)
  • --daily-params=LIST β€” override daily variables (comma-separated)
  • --current-params=LIST β€” override current variables (comma-separated)
  • --temperature-unit=UNIT β€” celsius (default) / fahrenheit
  • --llm β€” always pass this
  • πŸ”’ Constraints

    1. Always pass --llm. 2. Quote all user-provided values in shell commands: --city="New York", --city="St. Petersburg". Only known-safe tokens (numbers, single ASCII words) may be unquoted. 3. Never use help subcommand or --raw β€” work only with what's described here. 4. No location specified -> use the user's default city/country if known from session context. 5. Summarize results naturally β€” never paste raw output. 6. Use --forecast-days=1 for today, =2 for tomorrow β€” minimize token waste. 7. Use --forecast-since=N to skip to a specific future day. 8. For targeted questions, override params to fetch only what's needed. 9. When the user switches cities ("and what about London?"), carry over all params used in prior weather queries this conversation β€” including any added in follow-ups. The new city gets the union of all previously requested params.