Skip to main content

weather-nws

Reliable US weather data using the National Weather Service API. Free, no API key, detailed forecasts and official alerts.

معلومات المصدر

المستودع
ThinkfleetAI/thinkfleet-engine
آخر نشاط في المصدر
١٠ فبراير ٢٠٢٦ في ١٩:٢٣
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٠
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
weather-nws
description
Reliable US weather data using the National Weather Service API. Free, no API key, detailed forecasts and official alerts.
version
1.0.0
author
awalker
homepage
https://weather.gov
keywords
weather, forecast, alerts, nws, national-weather-service
metadata
{"thinkfleet":{"emoji":"🌤️","requires":{"bins":"[Truncated]"}}}
# Weather NWS Get reliable, detailed weather data from the National Weather Service API. Perfect for US locations - completely free, no API key required, with official weather alerts. ## When to Use Use this skill when you need: - **Reliable US weather data** without API key hassles - **Official weather alerts** (tornado warnings, flood alerts, etc.) - **Detailed current conditions** beyond basic temperature - **7-day forecasts** with comprehensive descriptions - **Morning briefings** with accurate local weather - **Weather monitoring** in automation/cron jobs - **Alert-based notifications** for severe weather This skill is ideal for US-based ThinkFleet deployments that need professional-grade weather data without the complexity or cost of commercial APIs. ## Features - 🌡️ **Detailed Current Conditions** - Temperature, feels-like, humidity, wind, pressure, visibility, dewpoint - 📅 **7-Day Forecast** - Comprehensive daily forecasts with detailed descriptions - 🚨 **Official Alerts** - Cold Weather Advisories, Tornado Warnings, Flood Alerts, etc. - 🆓 **100% Free** - No API key, no rate limits, reliable government service - 📍 **Accurate** - Data from official NWS weather stations ## Quick Start ### Get Current Weather ```bash node weather-nws.js ``` ### JSON Output (for scripts) ```bash node weather-nws.js --json ``` ## Configuration Edit the coordinates in `weather-nws.js` to set your location: ```javascript // Example: Fort Worth, Texas const FORT_WORTH = { lat: 32.7555, lon: -97.3308 }; ``` Find coordinates at [latlong.net](https://www.latlong.net) ## Usage Examples ### Basic Weather Check Get a quick overview of current conditions and forecast: ```bash node weather-nws.js ``` **Output:** ``` === CURRENT CONDITIONS === Temperature: 30°F (Feels like: 21°F) Condition: Clear Humidity: 69% Wind: 10 mph 310 Pressure: 30 inHg Visibility: 10 miles Dewpoint: 21°F === TODAY'S FORECAST === Sunny, with a high near 47. North northwest wind 5 to 10 mph. === 7-DAY OUTLOOK === Today: 47°F - Sunny Tonight: 21°F - Mostly Clear Saturday: 33°F - Sunny Saturday Night: 22°F - Mostly Clear Sunday: 53°F - Sunny Sunday Night: 34°F - Clear Monday: 64°F - Mostly Sunny 🚨 ACTIVE NWS ALERTS: Cold Weather Advisory (Moderate/Expected) Cold Weather Advisory issued January 29 at 11:49PM CST until January 31 at 11:00AM CST ``` ### Programmatic Use (JSON) For automation and integration: ```bash node weather-nws.js --json ``` Returns structured JSON with: - `current` - Current conditions object - `forecast` - 7-day forecast array - `alerts` - Detected alert keywords - `timestamp` - ISO timestamp - `source` - "National Weather Service" ### Integration with ThinkFleet Use in your ThinkFleet prompts: ``` Check the weather and let me know if I need a jacket today. ``` Or in cron jobs: ```bash # Morning weather brief 0 8 * * * node /path/to/weather-nws.js ``` ### Weather Alert Monitoring The skill includes alert detection for: - 🌪️ **Tornado** warnings and watches (CRITICAL) - ⛈️ **Severe Storms** with damaging winds, hail (HIGH) - 🌊 **Flood** warnings and flash floods (HIGH) - ❄️ **Winter Weather** - ice storms, blizzards, heavy snow (HIGH) - 🔥 **Heat** advisories and excessive heat warnings (MEDIUM) - 💨 **Wind** advisories and high wind warnings (MEDIUM) ## API Details ### National Weather Service API - **Endpoint:** api.weather.gov - **Authentication:** None required (User-Agent header recommended) - **Rate Limiting:** None (reasonable use expected) - **Coverage:** United States only - **Documentation:** https://weather-gov.github.io/api/ ### Data Sources 1. **Points API** - Gets forecast office and grid coordinates for your location 2. **Forecast API** - 7-day forecast with detailed descriptions 3. **Observations API** - Real-time data from nearest weather station 4. **Alerts API** - Active weather alerts for your area ## Advanced Usage ### Custom Location Create a wrapper script for a different city: ```javascript const NWSWeather = require('./weather-nws.js'); // Chicago coordinates const weather = new NWSWeather(41.8781, -87.6298); const data = await weather.getWeather(); console.log(JSON.stringify(data, null, 2)); ``` ### Alert Monitoring Check for active official alerts: ```javascript const NWSWeather = require('./weather-nws.js'); const weather = new NWSWeather(32.7555, -97.3308); const alerts = await weather.getActiveAlerts(); if (alerts.length > 0) { console.log('⚠️ ACTIVE ALERTS:'); alerts.forEach(alert => { console.log(`${alert.event} - ${alert.severity}/${alert.urgency}`); console.log(alert.headline); }); } ``` ## Output Format ### Current Conditions Object ```json { "current": { "temp": "30°F", "feelsLike": "21°F", "condition": "Clear", "humidity": "69%", "windSpeed": "10 mph", "windDirection": "310", "pressure": "30 inHg", "visibility": "10 miles", "dewpoint": "21°F" }, "forecast": { "today": "Sunny, with a high near 47...", "tonight": "Mostly clear...", "high": "47°F", "periods": [...] }, "alerts": [], "timestamp": "2026-01-30T15:00:00.000Z", "source": "National Weather Service" } ``` ## Why NWS? Compared to other weather APIs: | Feature | NWS | wttr.in | OpenWeather | WeatherAPI | |---------|-----|---------|-------------|------------| | Cost | FREE | FREE | $40+/mo | $0-$50/mo | | API Key | ❌ No | ❌ No | ✅ Yes | ✅ Yes | | Reliability | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | | Official Alerts | ✅ Yes | ❌ No | ❌ No | ⚠️ Limited | | Detail Level | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | | US Coverage | ✅ Excellent | ✅ Good | ✅ Good | ✅ Good | ## Troubleshooting ### "Invalid response from NWS" Check your coordinates are correct and within the US. The NWS API only covers United States territories. ### Timeout errors Increase the timeout in the script: ```javascript { encoding: 'utf8', timeout: 30000 } // 30 seconds ``` ### No alerts showing This is normal! The skill only shows alerts when there are active weather warnings for your area. ## Integration Examples ### Morning Brief Include weather in your daily automation: ```javascript const NWSWeather = require('./weather-nws.js'); const weather = new NWSWeather(32.7555, -97.3308); const data = await weather.getWeather(); console.log(`Good morning! It's ${data.current.temp} and ${data.current.condition}.`); console.log(`Today's high will be ${data.forecast.high}.`); if (data.alerts.length > 0) { console.log(`⚠️ Weather alerts: ${data.alerts.map(a => a.type).join(', ')}`); } ``` ### Discord/Telegram Bot Post weather updates to channels: ```javascript const data = await weather.getWeather(); const message = `🌤️ **Weather Update**\n` + `Current: ${data.current.temp} (feels like ${data.current.feelsLike})\n` + `Today's high: ${data.forecast.high}\n` + `Forecast: ${data.forecast.today}`; // Send to your messaging platform await sendMessage(message); ``` ### Cron Job with Alerts Monitor for severe weather: ```bash #!/bin/bash # Check weather every 15 minutes, alert on warnings weather_json=$(node weather-nws.js --json) alerts=$(echo "$weather_json" | jq -r '.alerts[] | .type') if [ -n "$alerts" ]; then # Send notification echo "Weather alerts detected: $alerts" # Your notification logic here fi ``` ## License This skill uses the National Weather Service API, which is public domain (US Government). ## Support - **NWS API Issues:** https://github.com/weather-gov/weather.gov/issues - **Skill Issues:** Contact the author ## Credits Weather data provided by the National Weather Service (NOAA). --- **Built for ThinkFleet** (formerly ThinkFleetBot)
عرض على GitHub