# Weather

Get current weather and forecasts with verified location matching (no API key required).

- Repository: https://github.com/sipeed/picoclaw (30078 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-10-30
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add sipeed/picoclaw --skill weather -g -a claude-code -y`
Codex: `npx skills add sipeed/picoclaw --skill weather -g -a codex -y`
Cursor: `npx skills add sipeed/picoclaw --skill weather -g -a cursor -y`
Gemini CLI: `npx skills add sipeed/picoclaw --skill weather -g -a gemini-cli -y`

## Description

Get current weather and forecasts with verified location matching (no API key required).

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Weather

Use the most reliable location match first. For Chinese city names or other non-Latin input, prefer `wttr.in` with the original query because it resolves native names directly. Use Open-Meteo for structured current conditions and forecasts only after you have confirmed the exact city.

## Accuracy Rules

- Always restate the matched location, region/country, and observation time in the final answer.
- Do not trust the first geocoding hit blindly. Check `country`, `admin1`, `admin2`, and `population`.
- For Chinese city queries, do not send Hanzi directly to Open-Meteo geocoding unless the top result is obviously correct. Prefer `wttr.in` with the original Chinese name, or geocode the English/pinyin city name instead.
- If multiple plausible matches remain, ask a follow-up question or state the assumption clearly.
- Use `timezone=auto` when calling Open-Meteo so the reported time matches the location.

## wttr.in (best for direct city-name queries)

Quick current conditions:
```bash
curl -s "https://wttr.in/London?format=%l:+%c+%t+%h+%w"
```

Chinese city example:
```bash
curl -s "https://wttr.in/%E6%88%90%E9%83%BD?format=%l:+%c+%t+%h+%w"
curl -s "https://wttr.in/%E4%B8%8A%E6%B5%B7?format=%l:+%c+%t+%h+%w"
```

JSON output if you need more detail:
```bash
curl -s "https://wttr.in/Chengdu?format=j1"
```

Tips:
- URL-encode spaces: `New York` -> `New+York`
- URL-encode non-ASCII text before sending the request
- Use `?m` for metric units and `?u` for US units

## Open-Meteo (best for structured forecasts)

1. Geocode the city and verify the returned location metadata:
```bash
curl -s "https://geocoding-api.open-meteo.com/v1/search?name=Chengdu&count=3&language=en&format=json"
```

The rest: https://github.com/sipeed/picoclaw/blob/HEAD/workspace/skills/weather/SKILL.md
