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,...
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 coordinatesOptions
--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 thisVariables
Defaults are sensible for general weather. Override only when needed.
Current & hourly:
temperature_2m β air temp, Capparent_temperature β feels-like, Cprecipitation β rain+showers+snow, mmprecipitation_probability (hourly only) β chance of precipitation, %weather_code β condition, auto-resolved to textwind_speed_10m β wind, km/hwind_gusts_10m β gusts, km/hcloud_cover β cloud cover, %snowfall β snowfall, cmuv_index (hourly only) β UV indexDaily:
temperature_2m_max / temperature_2m_min β max/min temp, Cprecipitation_sum β total precipitation, mmprecipitation_probability_max β max precipitation chance, %weather_code β dominant conditionwind_speed_10m_max β max wind, km/hsunrise / sunset β timessnowfall_sum β total snowfall, cmRules
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.