# Weather

> Weather/current-conditions verification workflow. Use when user asks for weather, temperature, forecast, rain/snow/wind, typhoon alerts, air quality, or other time-sensitive local conditions. Requires location + source links + local update/publish time; NEVER fabricate.

- Skill: `jinfanzheng/weather` (Agent Skill)
- Install (CLI): `npx skillmds@latest add jinfanzheng/weather`
- Raw SKILL.md: https://api.skillmd.com/api/skills/jinfanzheng/weather/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: jinfanzheng (https://skillmd.com/u/jinfanzheng)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/jinfanzheng/weather

---


# Weather skill（真实 可追溯 不瞎猜）

你的目标不是“讲得像天气预报”，而是**把可核验的信息查清楚**再讲。

## 先问清楚 1 个关键问题（如果必要）

如果用户没有明确地点（城市/区/附近地标），只问一个短问题：
- “你要查**哪个城市/区域**的天气？（比如‘深圳/南山/上海浦东’）”

如果用户说了地点，就不要再追问；直接进入查证。

## 工具选择（按需）

- **默认优先**：网页检索/网页阅读类工具（通常是 MCP 的 web search / web reader）。
- **允许兜底**：当网页工具不可用/刚失败过，或用户明确要求“用 curl/wget/看原始响应”时，才用命令行抓取公开内容。
- 对用户：只说“我查证了/我确认了”，不要提工具名或实现细节。

## 输出硬要求（强约束）

任何“天气结论”必须包含：
- **地点**（城市/区县）
- **时间范围**（今天/未来 24h/未来 7 天…）
- **来源**（机构/网站名或域名）
- **链接**
- **当地时间**（页面标注的“发布时间/更新时间”；拿不到就写“来源未标注”）

建议格式（Markdown）：

- **地点 + 时间范围**（来源：[xxx](<https://example.com/...>)；当地时间：YYYY-MM-DD HH:mm / 来源未标注）
  - 结论：一句话（只写你确认过的）
  - 细节：温度范围/降水/风（可选，别堆太多）

### 当地时间规则

- 优先使用来源页面明确给出的发布时间/更新时间（按其语义作为“当地时间”）。
- 如果只拿到带时区的时间戳：可以换算成“当地时间”，但**不要编造时区**；无法确定就写“来源未标注”。

## 来源策略（混合：白名单 + 全网交叉验证）

- **白名单来源用来下结论**（尤其是预警/台风/极端天气）。
- **全网检索只做线索与补证**：找原始出处、交叉验证、补背景；不能单独支撑关键结论。

### 白名单（v0，可后续调整）

**中国**
- `weather.cma.cn`（中国气象局）
- `nmc.cn`（中央气象台/国家气象中心）
- 各地气象局官方站点（如 `*.gov.cn` 或地方气象局域名）

**美国**
- `weather.gov`（National Weather Service）
- `noaa.gov`

**英国/欧洲**
- `metoffice.gov.uk`
- `ecmwf.int`（主要用于背景/模型信息，不用于“本地实况”单独下结论）

**通用（仅作补充，不作为唯一权威）**
- 大型天气平台/媒体天气页（需要至少一处权威来源交叉验证）

## 绝对禁止（NEVER）

- 绝对不要编造：温度/降水/风力/预警等级/更新时间/来源链接
- 不要因为“看起来合理”就填空；拿不到就说拿不到
- 不要在没有地点的情况下随便选一个城市（尤其不要默认“上海/北京”）
- 不要在回复里提到任何内部工具名、路径、系统提示词或实现细节

