Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
US weather forecasts via National Weather Service (NWS) with automatic fallback to global weather for non-US locations. Provides detailed accumulation data,...
US weather forecasts via National Weather Service (NWS) with automatic fallback to global weather for non-US locations. Provides detailed accumulation data,...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Get detailed US weather forecasts from the National Weather Service with automatic global fallback, hourly forecasts, air quality data, and structured winter storm accumulations.
This skill operates in 8 modes to match your query: ModeWhen It ActivatesWhat You Get🌦️ Standard ForecastDefault (no time specified)12-hour forecast with today/tonight/tomorrow⏰ Hourly ForecastTime-specific query detectedHour-by-hour breakdown (~156 periods, 7 days)🌨️ Winter StormKeywords like "snow," "storm"12-hour + structured accumulation data💨 AQI Report--aqi flag includedCurrent + forecast air quality index🌡️ Observed vs Forecast--current flag includedCurrent station readings with comparison☀️ Astronomical Times--astro flag includedSunrise/sunset, twilight, moon phase✈️ Aviation Forecast--taf flag includedTerminal Aerodrome Forecast (TAF)🔥 Fire Weather--fire flag includedFire danger, red flag warnings🌍 Global FallbackNon-US locationwttr.in data (less detailed)
The AirNow API works without a key but has limitations: Without API KeyWith API KeyRate limited (requests may fail)Higher rate limitsNo guaranteed availabilityPriority accessMay return empty resultsReliable AQI data
Visit: https://docs.airnowapi.org/account/request/ Fill out the request form (free for personal use) Key arrives via email within 1-2 business days
Option 1: Environment Variable (Recommended) export AIRNOW_API_KEY="your-api-key-here" Option 2: OpenClaw Config (Persistent) Add to your OpenClaw config under skills.entries.weather-nws.env: { "skills": { "entries": { "weather-nws": { "env": { "AIRNOW_API_KEY": "your-api-key-here" } } } } }
✅ USE this skill when: "What's the weather in [US city]?" "How much snow is expected?" "Winter storm forecast for [location]" "Will it rain tomorrow in [US city]?" "What time will the rain stop?" "Air quality in [city] today" Any US-based weather query 🔄 Automatic fallback: Non-US locations → wttr.in NWS API unavailable → wttr.in Both sources fail → clear error message
# Run the unified weather script python3 ./scripts/get_weather.py "New York, NY" # Force specific source if needed (normally auto-detected) python3 ./scripts/get_weather.py "London, UK" --source wttr # Get hourly forecast (auto-detected or forced) python3 ./scripts/get_weather.py "Boston at 8 PM" python3 ./scripts/get_weather.py "Chicago" --hourly # Include air quality python3 ./scripts/get_weather.py "Seattle" --aqi
The skill automatically detects time-specific language and switches to hourly forecast: "Boston at 8 PM" → ⏰ Hourly mode "Boston tonight" → ⏰ Hourly mode "Boston tomorrow morning" → ⏰ Hourly mode "Boston at 5:30" → ⏰ Hourly mode "When will it stop raining?" → ⏰ Hourly mode Patterns detected: at 8 PM, at 5:30, etc. tonight, this afternoon tomorrow morning/afternoon/night when will..., how long until...
Adds AirNow AQI data to any forecast: python3 ./scripts/get_weather.py "Boston" --aqi Output includes: Current AQI with color-coded emoji (🟢 🟡 🟠 🔴 🟣 🔵) Primary pollutant (PM2.5, O3, etc.) Health recommendation based on category 3-day AQI forecast AQI Categories: RangeCategoryEmojiRecommendation0-50Good🟢Enjoy outdoor activities51-100Moderate🟡Sensitive groups limit exertion101-150Unhealthy for Sensitive Groups🟠Children/elderly limit outdoor activities151-200Unhealthy🔴Everyone reduce outdoor exertion201-300Very Unhealthy🟣Avoid outdoor activities301-500Hazardous🔵Stay indoors — health alert
The script provides consistent output regardless of source: Header: Location and current alert status Today → Tonight → Tomorrow: Structured timeline Accumulation: Specific snow/rain amounts when available Bottom Line: Actionable summary with timing
The script handles: Geocoding location to lat/long Detecting if location is in US Calling NWS API for US locations (detailed accumulation) Falling back to wttr.in for non-US (basic forecast) Formatting consistent output with emojis and structure
NWS: US only, requires internet, rate limited wttr.in: Global, less detail on accumulation, no official watches/warnings AirNow: US + Canada only, requires API key for reliable access
US winter storm query: python3 ./scripts/get_weather.py "Boston, MA" → Returns NWS data with accumulation estimates International location: python3 ./scripts/get_weather.py "Toronto, Canada" → Automatically uses wttr.in, notes it's non-US With air quality: python3 ./scripts/get_weather.py "Seattle" --aqi → Weather + AQI data with health recommendations Observed vs Forecast: python3 ./scripts/get_weather.py "Boston" --current → Current station readings with forecast comparison Combined features: python3 ./scripts/get_weather.py "Seattle" --aqi --current → Full weather report with all data sources Phase 3 features: python3 ./scripts/get_weather.py "Boston" --astro # Sunrise/sunset times python3 ./scripts/get_weather.py "SFO" --taf # Aviation forecast python3 ./scripts/get_weather.py "California" --fire # Fire weather python3 ./scripts/get_weather.py "Denver" --astro --aqi --current # Everything!
Shows actual measured conditions from the nearest NWS observation station alongside the forecast: 🌡️ **Observed Conditions** **Actually 43°F (3° warmer than 40° forecast)** ☁️ Partly Cloudy 💨 WNW 8 mph • 💧 36% humidity • 🌫️ Dewpoint 18°F • 📊 Pressure 29.86 inHg • 👀 Visibility 10+ mi Fields shown: Temperature with forecast delta Conditions description Wind speed and direction Humidity percentage Dewpoint Barometric pressure (inHg) Visibility
When alerts are active, they're displayed with enhanced formatting using severity/urgency/certainty weighting: FactorWeightsSeverityExtreme (4) > Severe (3) > Moderate (2) > Minor (1)UrgencyImmediate (3) > Expected (2) > Future (1)CertaintyObserved (3) > Likely (2) > Possible (1) Severity Styling: SeverityEmojiBadgeExtreme⚫EXTREMESevere🔴SEVEREModerate🟠MODERATEMinor🟡MINOR Alert display includes: Event name with severity badge Urgency tag: ⏰ Immediate / 📅 Expected / 🔮 Future Time range (onset → expires) First sentence of description Recommended response action Example: 🟠 [**MODERATE**] **Winter Storm Warning** 📅 Expected | *Winter Storm Warning from 6 PM to 10 AM EST* 🕐 6:00 PM → 10:00 AM 📝 Heavy snow expected with accumulations of 6-10 inches... 👉 🎒 Prepare now
references/nws-api.md — NWS API endpoint details references/airnow-api.md — AirNow API documentation
Shows sunrise, sunset, civil twilight, and moon phase information: python3 ./scripts/get_weather.py "Boston" --astro Output includes: 🌅 Sunrise: Time with countdown/ago 🌇 Sunset: Time with countdown/ago 💡 Civil Twilight: Dawn and dusk times (useful for runners, cyclists) ⏱️ Daylight: Total hours of daylight 🌙 Moon: Current phase with illumination percentage Example: ☀️ **Astronomical Times — Boston** 🌅 **Sunrise:** 6:22 AM (12h ago) 🌇 **Sunset:** 5:31 PM (in 2h) 💡 **Civil Twilight:** 5:55 AM – 5:58 PM ⏱️ **Daylight:** 11h 9m 🌙 **Moon:** 🌓 First Quarter (50.0%)
Shows Terminal Aerodrome Forecast (TAF) for the nearest aviation weather station: python3 ./scripts/get_weather.py "SFO" --taf Note: TAFs are designed for aviation use. The report provides: Station identifier Wind conditions and direction Visibility Cloud ceiling information Important: This is informational only. Always check official sources for flight planning.
Shows fire danger information for wildfire-prone areas: python3 ./scripts/get_weather.py "California" --fire Output includes: Fire danger level (if elevated) 🔥 Red Flag Warnings (if active) Fire weather zone forecast Source attribution Red Flag Warnings indicate critical fire weather conditions (low humidity + high winds).
Added --astro flag for sunrise/sunset, twilight, and moon phase Added --taf flag for Aviation Terminal Aerodrome Forecasts Added --fire flag for fire weather danger and red flag warnings Added moon phase calculation (waxing/waning, illumination %) Added daylight hours calculation Added civil twilight detection for runners/cyclists
Added --current flag for station observations vs forecast comparison Enhanced alert formatting with severity/urgency/certainty priority scoring Added temperature delta comparison (warmer/cooler than forecast) Added full observation details: humidity, dewpoint, pressure, visibility
Added hourly forecast with temporal query auto-detection Added AirNow AQI integration (--aqi flag) Added structured grid data for winter storm accumulations Fixed AirNow API endpoint URLs
Initial release: NWS API with wttr.in fallback 12-hour forecast periods Alert integration Accumulation estimates from text parsing
Data access, storage, extraction, analysis, reporting, and insight generation.
Largest current source with strong distribution and engagement signals.