---
name: weather
description: '免 API Key 的天气查询技能，支持多数据源与自然语言请求。'
version: "1.0.0"
author: "seaworld008"
source: "in-house"
source_url: ""
tags: '["productivity", "weather"]'
created_at: "2026-03-15"
updated_at: "2026-03-20"
quality: 2
complexity: "intermediate"
---

# Weather

用于天气查询、出行规划、活动排期等需要气象信息的场景。Weather 技能不仅提供基础的温度和降水预报，还能根据气象数据为用户提供穿衣建议、户外活动适宜度及极端天气预警，是日常生活和出差办公的得力助手。

## 安装

```bash
npx clawhub@latest install weather
```

## 特点

- **无需 API 密钥，开箱即用**：集成了 `wttr.in` 和 `Open-Meteo` 等开源且无需注册的数据源。
- **结合双数据源交叉校验**：提高在不同地区的定位准确度和预报精度。
- **支持自然语言查询与结构化输出**：能够理解“北京明天热吗？”并返回具体的最高/最低气温。
- **包含体感温度与湿度指数**：提供更真实的生活参考。
- **多维度气象参数**：风速、气压、能见度、紫外线指数（UV）及空气质量（AQI）等。

## 触发条件 / When to Use

- **日常早间播报**：用户询问“今天天气怎么样？”或设定了定时任务。
- **差旅与行程规划**：当用户在日历（Google Calendar）中添加了外地行程时，Agent 自动检测目的地天气。
- **户外活动评估**：用户计划进行露营、马拉松或摄影时，需要查看详细的分时降水概率。
- **物流与供应链影响评估**：检测极端天气（如台风、大雪）是否可能导致物流延误。
- **服装选择建议**：需要根据气温、风力和湿度综合判断穿衣层数。
- **农业与园艺管理**：根据降水量决定是否需要人工灌溉。

## 核心能力 / Core Capabilities

### 1. 实时天气探测 (Current Observations)
- **操作步骤**：
  1. 调用 `get_weather` 接口，传入目标城市或经纬度。
  2. 提取当前气温（Celsius/Fahrenheit）、天气现象（Sunny, Cloudy, Raining等）。
  3. 获取体感温度 (Feels Like)，因为它比单纯的数值更具参考意义。
- **最佳实践**：如果用户未指定地点，尝试从 `MEMORY.md` 或系统 IP 定位中提取当前所在地。

### 2. 长周期趋势预报 (7-Day Forecast)
- **操作步骤**：
  1. 获取未来 7 天的每日最高、最低温。
  2. 分析降水概率趋势，识别可能的“雨窗期”。
  3. 生成包含 Emoji 的可视化天气摘要。
- **最佳实践**：在展示预报时，使用 Markdown 表格形式以便于阅读。

### 3. 分时气象详情 (Hourly Details)
- **操作步骤**：
  1. 检索接下来 24 小时的逐小时气温和风速变化。
  2. 特别关注早晚温差。
- **最佳实践**：在报告中加入类似“下午 3 点可能有阵雨，建议带伞”的温馨提示。

### 4. 极端天气与 AQI 预警 (Alerting)
- **操作步骤**：
  1. 订阅特定地区的严重气象警报。
  2. 监测空气质量指数（AQI），对敏感人群给出健康建议。

## 常用命令/模板 / Common Patterns

### 差旅天气助手模板 (Travel Helper Template)
```markdown
### 行程基本信息
- **目的地**: [上海]
- **出发日期**: [2026-04-10]
- **返程日期**: [2026-04-12]

### 天气概览 (Weather Overview)
| 日期 | 天气状态 | 温度范围 | 降水概率 | 建议 |
| :--- | :--- | :--- | :--- | :--- |
| 04-10 | 多云转晴 | 12°C - 20°C | 5% | 适合户外，需穿长袖 |
| 04-11 | 小雨 | 10°C - 15°C | 80% | **记得带伞**，气温骤降 |
| 04-12 | 晴间多云 | 13°C - 22°C | 10% | 紫外线强，注意防晒 |

### 专家穿衣建议 (Clothing Advice)
- **叠穿法则**: 10号晚上温差大，建议穿一件轻便外套。
- **鞋履建议**: 11号有雨，建议穿防水鞋。

### 特别提醒
- 上海当前 AQI 为 45（优），适合所有户外活动。
```

### 快速查询示例
```javascript
// 示例：查询纽约未来 3 天的天气
mcp_call({
  name: 'get_weather_forecast',
  arguments: {
    city: "New York",
    days: 3,
    units: "metric"
  }
});
```

## 进阶应用场景 / Advanced Use Cases

### 1. 自动化智能家居联动
- Agent 检测到明天最高气温超过 30°C，自动在 `task_list` 中添加“提前检查空调滤网”的提醒，或联动 IoT 技能在下班前 15 分钟开启冷气。

### 2. 摄影黄金时刻计算
- 结合天气情况（云量）和日出日落时间，为摄影师推荐最适合拍摄“蓝调时刻”或“火烧云”的日期。

## 边界与限制 / Boundaries

- **定位精度限制**：仅凭 IP 定位可能存在偏差，建议优先使用显式提供的城市名称。
- **预报时效性**：超过 10 天的长期预报准确度显著下降，仅供趋势参考。
- **特殊微气候**：山区、海岛等特殊地理位置的实测天气可能与大市级预报有较大出入。
- **数据源延迟**：开源接口的数据更新频率通常为 15-60 分钟一次，不适合毫秒级的即时监测。
- **语言支持**：部分开源接口返回的是英文描述，Agent 需要具备优秀的翻译和润色能力。

## 最佳实践总结

1. **人性化解读**：不要只报数字，要告诉用户“这代表什么”。
2. **场景化推荐**：结合用户的当前任务（如“跑步”、“露营”）给出建议。
3. **主动推送**：发现极端天气剧烈变化时，应通过 `question` 或 `see_image` 主动警示。
4. **多点备份**：如果主数据源（wttr.in）挂了，自动切换到备用源。
5. **单位一致性**：根据用户偏好自动切换摄氏度（°C）与华氏度（°F）。
