name: kma-weather
description: 从韩国气象厅获取天气信息。提供当前天气状况、预报(3-10天)以及天气警报/预警。当用户需要韩国天气数据、天气预警或精确的本地预报(5公里网格)时使用。需要 KMA_SERVICE_KEY。
metadata:
openclaw:
emoji: "🌦️"
homepage: "https://www.data.go.kr/data/15084084/openapi.do"
requires:
bins: ["python3"]
env: ["KMA_SERVICE_KEY"]
primaryEnv: "KMA_SERVICE_KEY"
# 当前天气 + 6小时预报
python3 skills/kma-weather/scripts/forecast.py brief --lat 37.5665 --lon 126.9780
# 所有预报的 JSON 格式输出(当前 + 超短期 + 短期)
python3 skills/kma-weather/scripts/forecast.py all --lat 37.5665 --lon 126.9780 --json
# 短期预报(3天)
python3 skills/kma-weather/scripts/forecast.py shortterm --lat 37.5665 --lon 126.9780 --days all
# 全国天气警报/预警
python3 skills/kma-weather/scripts/weather_warnings.py
# 中期预报(3-10天)
python3 skills/kma-weather/scripts/midterm.py --region 서울
ServiceKey在 ~/.openclaw/openclaw.json 文件中配置:
沙盒环境(添加到 agents.defaults.sandbox.docker.env):
{
"agents": {
"defaults": {
"sandbox": {
"docker": {
"env": {
"KMA_SERVICE_KEY": "你的密钥"
}
}
}
}
}
}
主机环境(添加到 env.vars):
{
"env": {
"vars": {
"KMA_SERVICE_KEY": "你的密钥"
}
}
}
| 命令 | 描述 |
|---|---|
current |
实时观测数据 |
ultrashort |
6小时预报 |
shortterm |
3天预报 |
brief |
当前 + 超短期预报 |
all |
当前 + 超短期 + 短期预报 |
选项:
- --lat, --lon:坐标(必需)
- --days:针对短期预报 - 1(明天,默认)、2、3 或 all
- --json:输出原始 JSON 数据
输出示例 (current):
🌤️ 현재 날씨 (초단기실황)
🌡️ 기온: 5.2°C
💧 습도: 65%
🌧️ 강수량: 0mm (1시간)
💨 풍속: 2.3m/s
🧭 풍향: NW (315°)
返回当前全国范围的天气预警:
🚨 기상특보 현황
발표시각: 2026-02-01 10:00
발효시각: 2026-02-01 10:00
📍 현재 발효 중인 특보
• 건조경보 : 강원도, 경상북도, ...
• 풍랑주의보 : 동해중부안쪽먼바다, ...
⚠️ 예비특보
• (1) 강풍 예비특보 : 02월 02일 새벽(00시~06시) : 울릉도.독도
按地区提供 3-10 天预报。
python3 skills/kma-weather/scripts/midterm.py --region 서울
python3 skills/kma-weather/scripts/midterm.py --stn-id 109
支持地区:서울, 인천, 경기, 부산, 대구, 광주, 대전, 울산, 세종, 강원, 충북, 충남, 전북, 전남, 경북, 경남, 제주
将经纬度坐标转换为 KMA 5公里网格坐标(其他脚本会自动处理):
python3 skills/kma-weather/scripts/grid_converter.py 37.5665 126.9780
# 输出: Grid: (60, 127)
| weather | kma-weather | |
|---|---|---|
| 覆盖范围 | 全球 | 仅限韩国 |
| API 密钥 | 不需要 | 必需 |
| 分辨率 | 城市级别 | 5公里网格 |
| 天气预警 | 无 | 支持 (기상특보) |
建议搭配使用:weather 用于全球天气,kma-weather 用于详细的韩国预报和天气预警。
| 错误 | 解决方案 |
|---|---|
KMA API service key not found |
设置 KMA_SERVICE_KEY 环境变量 |
SERVICE_KEY_IS_NOT_REGISTERED_ERROR |
检查 API 申请状态,确认密钥正确 |
SERVICE_TIMEOUT_ERROR |
稍后重试 |
| 无数据返回 | 确认坐标在韩国境内 |