天气信息获取Skill:一条 curl 命令,让 AI 和脚本随时查全球天气
- 零门槛接入:完全免费、无需注册、无需 API 密钥,唯一依赖是系统自带的
curl。 - 双数据源:主用 wttr.in 输出人类可读文本(含表情符号),备用 Open-Meteo 返回标准 JSON,兼顾人看与程序读。
- 三种粒度:单行速览、自定义字段紧凑格式、完整多日预报,还能直接导出 PNG 天气图。
- 地点写法灵活:城市名、
New+York式的 URL 编码、机场三字码(如JFK)、经纬度均可。 - 适合嵌进自动化:把"查天气"变成一行可脚本化的命令,直接塞进告警、日报、AI 对话中。
1. 该技能叫什么?如何下载安装 AI 技能提升开发效率?
技能基本信息
| 项目 | 内容 |
|---|---|
| 中文名 | 天气信息获取Skill |
| 英文名 | weather |
| 技能ID | 13529 |
| 官方主页 | https://wttr.in/:help |
| 运行依赖 | curl(详情中声明的唯一依赖) |
| 费用 | 免费,无需 API 密钥 |
它解决什么问题
AI 助手和自动化脚本天生"看不见窗外",被问到"今天伦敦要带伞吗"或"帮我给值班群发一条带天气的告警"时,往往只能泛泛而谈。传统做法是去注册商业天气 API,申请 Key、处理配额、写鉴权代码,一套流程下来半小时起步。这个技能把这件事压缩成一条命令——直接用 curl 请求公开的免费天气服务,把结果交给模型或脚本消费。
一键安装的思路与步骤
- 确认前提:检查运行环境是否具备
curl。在终端执行curl --version,能打印版本号即可;若提示命令不存在,先用系统包管理器安装 curl(技能详情中的元数据只声明了这一项依赖)。 - 获取技能:在 AI 技能市场或技能管理入口中,按技能英文名
weather或技能ID13529检索并添加该技能(具体安装命令、入口路径与支持平台以官方说明为准)。 - 无需额外配置:该技能不涉及 API 密钥、账号、环境变量,添加后即可调用。
- 验证是否生效:让助手或直接在终端执行
curl -s "wttr.in/London?format=3",若返回形如London: ⛅️ +8°C的单行结果,说明安装成功、链路通畅。 - 备用验证方式:若所在网络访问 wttr.in 不稳定,改用详情中提供的 Open-Meteo 接口测试,能返回 JSON 即代表基本能力可用。
2. 该技能的主要功能和特点
- 单行速览:
?format=3输出"地点 + 天气图标 + 温度"极简一行,适合塞进通知、日志、聊天消息。 - 自定义字段拼接:通过格式代码自由组合内容——
%c天气条件、%t温度、%h湿度、%w风速风向、%l地点、%m月相,想要什么拼什么。 - 完整预报:
?T参数输出带排版的多日天气预报,适合需要未来趋势的问答。 - 地点识别能力强:支持普通城市名、URL 编码空格(
wttr.in/New+York)、机场三字码(wttr.in/JFK),并可通过经纬度查询。 - 单位与范围可控:
?m切公制、?u切美制;?1只看今天、?0只看当前时刻,避免输出过长。 - 可生成图片:
curl -s "wttr.in/Berlin.png" -o /tmp/weather.png直接落地一张天气图,可用于日报配图。 - JSON 备用通道:Open-Meteo 接口免费、免密钥,返回结构化的温度、风速、天气代码,适合程序解析。
- 对 AI 友好:输出是纯文本或纯 JSON,不需要额外解析层,模型可直接读懂并转述。
和普通天气 App 相比,它强在"可被程序调用、可被 AI 调用、可被任意拼装",而不是提供一个固定的界面。
3. 如何使用该技能?
步骤 1:拿到最快的当前天气
curl -s "wttr.in/London?format=3"
输出示例:London: ⛅️ +8°C。适合做最简通知。
步骤 2:按需拼装字段
curl -s "wttr.in/London?format=%l:+%c+%t+%h+%w"
输出示例:London: ⛅️ +8°C 71% ↙5km/h。这里 %l 是地点、%c 是天气条件、%t 温度、%h 湿度、%w 风。你可以删掉不需要的字段,只保留温度和降水相关信息。
步骤 3:查看完整预报
curl -s "wttr.in/London?T"
得到带 ASCII 排版的未来数日预报,适合回答"这周哪天适合露营"这类问题。
步骤 4:处理特殊地点
- 城市名含空格:改用
+,如wttr.in/New+York; - 只知道机场:直接用三字码,如
wttr.in/JFK; - 需要精确单位:追加
?m(公制)或?u(美制); - 只想要当前一刻:加
?0;只看今天:加?1。
步骤 5:产出图片
curl -s "wttr.in/Berlin.png" -o /tmp/weather.png
保存后即可作为日报、群公告的配图。
步骤 6:程序化调用(JSON)
curl -s "https://api.open-meteo.com/v1/forecast?latitude=51.5&longitude=-0.12¤t_weather=true"
思路是先用坐标查询(城市坐标需自行确定),再解析返回 JSON 中的温度、风速与天气代码字段,用于前端渲染或自动判断逻辑。详细参数见详情中给出的文档地址 https://open-meteo.com/en/docs。
4. 同类型竞品对比分析
| 方案名称 | 定位 | 核心功能 | 安装/使用门槛 | 适用场景 | 优势与不足 |
|---|---|---|---|---|---|
| 天气信息获取Skill(weather) | 轻量级命令行天气查询,供 AI 与脚本调用 | 当前天气、紧凑自定义格式、完整预报、PNG 图、JSON 备用源 | 极低,只需 curl,无需密钥 | AI 对话补天气、脚本通知、快速调试 | 优势:零成本、零配置、一行出结果;不足:依赖第三方免费服务,稳定性与字段丰富度不如商业 API |
| 商业天气 API(如 OpenWeatherMap 等) | 面向生产的专业气象数据服务 | 分钟级预报、历史数据、预警、AQI 等 | 中,需注册账号、申请密钥、处理配额与鉴权 | 商业化产品、对精度与 SLA 有要求的系统 | 优势:数据全、稳定性强;不足:有注册与计费门槛,接入代码更多 |
| 手机/网页天气 App | 面向普通用户的图形化天气服务 | 实时天气、逐小时预报、生活指数 | 极低,打开即用 | 个人日常查看 | 优势:直观好看;不足:无法被脚本或 AI 批量调用,难以嵌入工作流 |
| 自写爬虫抓取天气页面 | 自定义采集方案 | 视目标站点而定 | 高,需处理页面结构变化、反爬 | 有特殊数据需求且愿意维护 | 优势:字段可定制;不足:维护成本高、易失效,远不如现成接口省事 |
5. 该技能的典型应用场景与实际体验情况
场景一:AI 助手回答出行与穿衣建议
用户问"我明天要去柏林,需要带外套吗"。接入该技能后,助手可以先跑一条 curl -s "wttr.in/Berlin?format=3" 拿到实时天气,再结合预报给出建议,而不是给出泛泛回答。体验:上手几乎无门槛,复制命令即可;注意模型调用时要把地点参数替换正确,避免直接照搬示例中的 London。
场景二:运维与值班告警增强 运维同学在告警通知模板里追加一行天气信息,遇到机房断电、外场施工等场景时,值班人员能立刻判断现场条件。体验:一行命令即可嵌入 shell 脚本,成本极低;注意给 curl 加超时与失败兜底,避免第三方服务抖动拖慢告警链路。
场景三:自动化日报与定时任务
每天早上定时任务拉取 ?format=%l:+%c+%t+%h+%w 的紧凑结果,拼进团队晨报或社群问候语。体验:输出短、易排版,省去自己解析字段的功夫;建议固定使用 ?m 公制单位,避免团队看到华氏度产生误解。
场景四:开发调试与演示素材 做聊天机器人、语音助手 demo 时,需要一个"真实但结构简单"的外部数据源来演示工具调用能力,该技能是最省事的素材之一。体验:输出天然带表情符号,演示效果友好;若演示需要结构化数据,切到 Open-Meteo 的 JSON 通道更合适。共性注意事项:wttr.in 属公开免费服务,请避免高频轮询;中文城市名如识别不准,可改用拼音或英文名重试。
6. 该技能能为用户带来的价值
- 把准备时间压到接近零:从"想接天气数据"到"跑通第一条结果",只需确认 curl 存在,跳过了注册、申请密钥、读鉴权文档的全部环节。
- 降低非专业开发者的门槛:不会写后端也能用一条命令拿到天气,产品、运营、测试同学都能自助取数。
- 让 AI 回答更可靠:为模型补上真实世界数据,减少凭空编造的天气信息,提升对话可信度。
- 两条通道覆盖两种需求:文本给人看,JSON 给程序读,同一技能服务"汇报"和"计算"两类用途,长期维护成本低。
- 可量化收益:单次查询耗时通常在秒级,相比自建采集与解析流程,节省的是每次几十分钟的接入与调试时间;脚本化后每天可无人值守产出数十条天气信息。
7. 常见问题 FAQ
Q1:这个技能怎么安装?需要付费吗?
不需要付费。该技能基于免费公开服务,无需 API 密钥与账号。安装时先确认环境中有 curl,再到技能市场或技能管理入口按名称 weather 或技能ID 13529 添加即可,具体安装命令与入口以官方说明为准。安装后执行 curl -s "wttr.in/London?format=3" 能返回结果即表示生效。
Q2:支持中文城市名和国内城市吗? 详情中的示例以英文城市名与机场三字码为主。实际使用中可先直接尝试中文或拼音城市名,若识别不准确,改用英文名或经纬度查询会更稳妥;Open-Meteo 通道本身按经纬度取数,不受城市名语言影响。
Q3:和商业天气 API 相比该怎么选? 如果只是给 AI 对话补天气、给脚本加一行通知,选本技能即可,零成本、零配置;如果产品需要分钟级预报、历史数据、气象预警或明确的稳定性承诺,则应选择商业 API,付出注册与计费成本换取数据完整度与 SLA。
Q4:查不到数据或者请求超时怎么办? 优先排查网络与 curl 是否可用,其次替换地点写法(如把中文换成英文、把城市名换成机场码)。若 wttr.in 暂时不可达,改用详情中提供的 Open-Meteo JSON 接口作为备用通道;同时建议在脚本里设置超时与失败兜底,不要让天气查询影响主流程。
Q5:能查历史天气或多日精细化预报吗?
详情中给出的能力是"当前天气与预报"(如 ?T 完整预报、?1 仅今天、?0 仅当前),并未包含历史天气数据。如有历史气象需求,需要另选支持历史数据的数据源,具体以各服务官方说明为准。