Weathercli
by @pjtf93
Get current weather conditions and forecasts for any location worldwide. Returns structured data with temperature, humidity, wind, precipitation, and more. No API key required.
clawhub install weathercliπ About This Skill
name: weathercli description: Get current weather conditions and forecasts for any location worldwide. Returns structured data with temperature, humidity, wind, precipitation, and more. No API key required.
Weather CLI
Use the weathercli command to retrieve weather information for any location worldwide.
Commands
Current Weather
Get real-time weather conditions including temperature, humidity, wind, and precipitation.weathercli current ""
weathercli current "" --json
Returns: Current temperature, "feels like" temperature, humidity %, wind speed/direction, pressure, cloud cover, UV index, precipitation, weather condition description, and timestamp in local timezone.
Forecast
Get daily or hourly weather forecasts.# Daily forecast (default: 7 days, max: 16)
weathercli forecast "" --days Hourly forecast (max: 384 hours)
weathercli forecast "" --hourly --hours JSON output for parsing
weathercli forecast "" --json
Returns: For each day/hour: temperature (high/low or current), weather condition, precipitation probability and amount, wind speed/direction, UV index, sunrise/sunset times (daily only).
Location Search
Find coordinates and timezone information for a location.weathercli search ""
weathercli search "" --json
Returns: Location name, coordinates (lat/lon), country, region/state, timezone.
Location Format
Locations are flexible and geocoded automatically:
"London", "Tokyo", "New York""Paris, France", "Berlin, Germany""Portland, Oregon", "Barcelona, Catalonia"Options
--json - Output structured JSON (recommended for parsing)--no-color - Disable color output (for plain text parsing)--days N - Number of days for forecast (1-16, default: 7)--hourly - Show hourly instead of daily forecast--hours N - Number of hours for hourly forecast (1-384)--verbose - Show detailed request informationOutput Format
Human-Readable (default)
Color-coded temperatures, formatted with emojis and units. Times shown in location's local timezone.JSON Structure
Current weather:
{
"location": {
"name": "Tokyo",
"latitude": 35.6895,
"longitude": 139.6917,
"country": "Japan",
"timezone": "Asia/Tokyo"
},
"time": "2026-01-12T18:45:00+09:00",
"temperature": 4.7,
"apparent": 1.8,
"humidity": 66,
"wind_speed": 3.6,
"wind_direction": 135,
"condition": "Clear sky",
"weather_code": 0,
"precipitation": 0,
"cloud_cover": 0,
"pressure": 1015.2,
"uv_index": 0
}
Forecast:
{
"location": { ... },
"daily": [
{
"date": "2026-01-12",
"temp_max": 12.1,
"temp_min": 4.3,
"condition": "Slight rain",
"precip_prob": 75,
"precipitation": 1.5,
"sunrise": "2026-01-12T08:04:00+09:00",
"sunset": "2026-01-12T16:45:00+09:00",
"wind_speed_max": 15.3,
"wind_direction": 202,
"uv_index_max": 2.4
}
]
}
Usage Guidelines
When to Use
Location Handling
1. If user provides clear location, use it directly
2. If ambiguous (e.g., "Portland"), ask for clarification or add context
3. If location not found, suggest checking spelling or adding country
4. For coordinates, use search command first to validate
Parsing Output
--json for programmatic parsingtemperature, condition, wind_speed for quick summariesprecip_prob for rain likelihoodsunrise/sunset for daylight planningweather_code follows WMO standard (0-99)Best Practices
apparent temperature for "feels like" comfortExamples
Quick weather check:
weathercli current "London" --json | jq '.temperature, .condition'
Week forecast for trip:
weathercli forecast "Barcelona" --days 5 --json
Detailed today's hourly:
weathercli forecast "Seattle" --hourly --hours 24
Check multiple cities:
for city in "Tokyo" "London" "New York"; do
weathercli current "$city" --json | jq -r '"\(.location.name): \(.temperature)Β°C, \(.condition)"'
done
Find exact location:
weathercli search "Springfield" --json
Notes
Error Handling
Location not found:
Error: location not found: Atlantis
β Check spelling, try adding country/regionNetwork error:
Error: weather API error: network timeout
β Retry after brief delayInvalid input:
Error: invalid days value
β Check --days is between 1-16Installation
If weathercli is not available:
# Via Go
go install github.com/pjtf93/weathercli/cmd/weathercli@latestOr download binary from releases
https://github.com/pjtf93/weathercli/releases
β‘ When to Use
π‘ Examples
Quick weather check:
weathercli current "London" --json | jq '.temperature, .condition'
Week forecast for trip:
weathercli forecast "Barcelona" --days 5 --json
Detailed today's hourly:
weathercli forecast "Seattle" --hourly --hours 24
Check multiple cities:
for city in "Tokyo" "London" "New York"; do
weathercli current "$city" --json | jq -r '"\(.location.name): \(.temperature)Β°C, \(.condition)"'
done
Find exact location:
weathercli search "Springfield" --json
βοΈ Configuration
--json - Output structured JSON (recommended for parsing)--no-color - Disable color output (for plain text parsing)--days N - Number of days for forecast (1-16, default: 7)--hourly - Show hourly instead of daily forecast--hours N - Number of hours for hourly forecast (1-384)--verbose - Show detailed request informationπ Tips & Best Practices
apparent temperature for "feels like" comfort