$npx -y skills add MagicCube/agentara --skill daily-pollen花粉过敏指数权威发布与实时监控。当用户询问花粉浓度、过敏风险、花粉预警, 或设置每日定时推送花粉播报时使用。数据来源:花粉通(中国天气网 × 北京同仁医院)+ wttr.in 天气。 支持自定义城市,支持设置 cron 定时每日推送。 触发关键词:花粉、过敏、花粉指数、花粉预警、花粉浓度、今天花粉、每日花粉、 pollen、allergy、pollen alert、花粉播报、花粉监控、每天推送花粉。
| 1 | # 花粉过敏指数 🌿 |
| 2 | |
| 3 | 每日花粉浓度查询与推送,数据权威来源:中国天气网 × 首都医科大学附属北京同仁医院。 |
| 4 | |
| 5 | ## 城市配置 |
| 6 | |
| 7 | 默认城市可通过环境变量设置: |
| 8 | |
| 9 | ```bash |
| 10 | export POLLEN_CITY="北京" # 支持中文或拼音 |
| 11 | ``` |
| 12 | |
| 13 | **支持花粉监测的城市:** |
| 14 | 北京、淄博、昆明、天津、烟台、广州、西宁、沧州、杭州、鄂尔多斯、包头、聊城、兰州、 |
| 15 | 长春、西安、郑州、太原、银川、哈尔滨、乌鲁木齐、海口、重庆、武汉、石家庄、泊头、 |
| 16 | 大连、济南、南充、扬州、乌海、保定等。 |
| 17 | |
| 18 | ## 工作流 |
| 19 | |
| 20 | ### Step 1: 确认城市与日期 |
| 21 | |
| 22 | 1. 读取 `$POLLEN_CITY`,若未设置则默认使用「北京」。 |
| 23 | 2. 记录当前日期(格式:M月D日)和时间。 |
| 24 | |
| 25 | ### Step 2 & 3: 并发获取天气与花粉数据 |
| 26 | |
| 27 | 运行 `$SKILL_DIR/scripts/fetch_data.py`,并发调用天气和花粉 API,将结果输出为 JSON: |
| 28 | |
| 29 | ```bash |
| 30 | POLLEN_CITY="${POLLEN_CITY:-北京}" python3 "$SKILL_DIR/scripts/fetch_data.py" |
| 31 | ``` |
| 32 | |
| 33 | 从 JSON 输出中提取: |
| 34 | |
| 35 | - **天气**:`weather.desc`、`weather.temp_c`、`weather.humidity`、`weather.wind_kmph`、`weather.today_rain` / `tomorrow_rain` |
| 36 | - **今日花粉**:`pollen.level_label`(很低/低/中/高/很高)、`pollen.concentration`(粒/千平方毫米)、`pollen.content`(官方建议) |
| 37 | - **7日趋势**:`pollen.weekly`(按日期倒序数组,含 `date`/`level`/`num`) |
| 38 | |
| 39 | ### Step 4: 解析等级与趋势 |
| 40 | |
| 41 | **花粉浓度等级划分:** |
| 42 | |
| 43 | | 等级 | 浓度(粒/千平方毫米) | 风险描述 | 行动建议 | |
| 44 | |------|---------------------|---------|---------| |
| 45 | | 1级 | ≤70 | 很低,一般无需防护 | 正常户外活动 | |
| 46 | | 2级 | 71-150 | 低,敏感人群注意 | 敏感人群携带药物 | |
| 47 | | 3级 | 151-290 | 中,敏感人群需防护 | 减少户外活动时间 | |
| 48 | | 4级 | 291-520 | 高,减少户外活动 | 尽量避免户外 | |
| 49 | | 5级 | >520 | 很高,避免户外活动 | 强烈建议待室内 | |
| 50 | |
| 51 | **7日趋势判断规则:** |
| 52 | |
| 53 | | 趋势描述 | 判断标准 | |
| 54 | |---------|---------| |
| 55 | | 持续很高 | 近7日均>500,连续多日高浓度 | |
| 56 | | 持续高位 | 近7日均>300,整体处于中高浓度 | |
| 57 | | 今日更高 | 今日浓度>昨日,且涨幅>20% | |
| 58 | | 有所降低 | 今日浓度<昨日,且降幅>20% | |
| 59 | | 开始升高 | 连续3天浓度上升,进入高峰期 | |
| 60 | | 逐渐缓解 | 连续3天浓度下降,离开高峰期 | |
| 61 | | 波动较大 | 近7天忽高忽低,不稳定 | |
| 62 | |
| 63 | **花粉来源季节参考:** |
| 64 | |
| 65 | - 春季(3-5月):柏树、榆树、杨树、柳树、杏树、桃花、樱花(高峰3月中旬-4月中旬) |
| 66 | - 初夏(5-6月):槐树、梧桐、桑树 |
| 67 | - 夏秋(8-10月):蒿草、豚草、葎草(秋季过敏主因) |
| 68 | |
| 69 | ### Step 5: 格式化输出 |
| 70 | |
| 71 | 使用 Markdown 列表格式输出,确保在各类终端和 IM 应用中正确渲染。 |
| 72 | |
| 73 | ```markdown |
| 74 | # 花粉播报 🌿 — {M月D日} |
| 75 | |
| 76 | > {一句话今日总结,说明风险等级和核心建议,例如:北京今日花粉5级爆表,连续5日超安全值10倍,过敏人群务必全天待室内。} |
| 77 | |
| 78 | ## 🚨 今日过敏风险 |
| 79 | |
| 80 | - **等级**:{N}级({很低/低/中/高/很高})· 浓度 {数值} 粒/千平方毫米 |
| 81 | - **超标**:安全值 70,{超标约N倍 / 在安全范围内} |
| 82 | - **主要来源**:{植物1}、{植物2}、{植物3} |
| 83 | - **7日趋势**:{趋势描述}({近7日数据简述,如:近5日均800,3月13日520}) |
| 84 | - **日内峰值**:午后 14–17 时浓度最高,早晚相对较低 |
| 85 | |
| 86 | --- |
| 87 | |
| 88 | ## 🛡️ 今日行动指南 |
| 89 | |
| 90 | ### 必须做 |
| 91 | |
| 92 | 1. {强制建议1} |
| 93 | 2. {强制建议2} |
| 94 | 3. {强制建议3,视等级增减} |
| 95 | |
| 96 | ### 建议做 |
| 97 | |
| 98 | - {推荐建议1} |
| 99 | - {推荐建议2} |
| 100 | |
| 101 | ### 禁止做 |
| 102 | |
| 103 | - ❌ {禁忌1} |
| 104 | - ❌ {禁忌2} |
| 105 | |
| 106 | --- |
| 107 | |
| 108 | ## 📊 天气参考 |
| 109 | |
| 110 | - **今日**:{天气描述} · {温度} · 湿度{湿度} · 风速{风速} |
| 111 | - **花粉影响**:{晴天无雨说明扩散条件好;有降雨则说明预计浓度下降} |
| 112 | |
| 113 | --- |
| 114 | |
| 115 | ## 📌 温馨提示 |
| 116 | |
| 117 | {2–3句个性化提示,结合当前等级和趋势给出最实用的一条行动建议,以及今明两日花粉走势预判。 |
| 118 | 例如:今天全天晴朗,是近期花粉最猛的一天,建议上午尽量不出门。如果必须出门,N95 是底线。 |
| 119 | 明日天气相似,花粉不会缓解,药不要停。} |
| 120 | |
| 121 | 📱 更精准数据:微信搜索「花粉健康宝」小程序 |
| 122 | ``` |
| 123 | |
| 124 | **等级对应的行动建议内容:** |
| 125 | |
| 126 | - **1–2级(很低/低)** |
| 127 | - 必须做:过敏史者随身携带抗过敏药 |
| 128 | - 建议做:可正常户外运动,注意观察症状变化 |
| 129 | - 禁止做:无特别限制 |
| 130 | |
| 131 | - **3级(中)** |
| 132 | - 必须做:① 减少户外活动时间 ② 回家后洗手洗脸 |
| 133 | - 建议做:外出佩戴口罩;服用抗过敏药物 |
| 134 | - 禁止做:❌ 花粉峰值期(14–17时)户外剧烈运动 |
| 135 | |
| 136 | - **4级(高)** |
| 137 | - 必须做:① 尽量避免户外活动 ② 外出必须佩戴N95口罩 ③ 回家立即洗脸漱口换衣 |
| 138 | - 建议做:提前服用抗过敏药;关闭门窗开启空气净化器 |
| 139 | - 禁止做:❌ 开窗通风 ❌ 晾晒衣物 |
| 140 | |
| 141 | - **5级(很高)** |
| 142 | - 必须做:① 强烈建议全天待室内 ② 关闭门窗开启空气净化器 ③ 外出必须佩戴N95口罩 ④ 外出后立即洗脸漱口换衣 |
| 143 | - 建议做:提前服用抗过敏药持续规范用药;关注「花粉健康宝」精确数据 |
| 144 | - 禁止做:❌ 开窗通风 ❌ 晾晒衣物 ❌ 户外运动 |
| 145 | |
| 146 | ## 关键规则 |
| 147 | |
| 148 | - **必须使用 Python 脚本**:数据获取必须运行 Step 2 & 3 中的 async Python 脚本,严禁使用 `agent-browser` 或 `WebFetch` 工具直接抓页面。 |
| 149 | - **依赖自动安装**:脚本首次运行会自动 `uv pip install aiohttp`,无需手动安装。 |
| 150 | - **数据兜底**:若 `pollen.error` 字段存在(城市不支持或数据暂无),直接告知用户并提示支持城市列表;若脚本报错,提示用户稍后重试。 |
| 151 | - **使用列表,不用表格**:推送内容使用 Markdown 列表格式,确保在各类 IM 应用中正确渲染 |
| 152 | - **中文全角标点**:推送内容中使用中文全角标点(,、:!) |
| 153 | - **超标计算**:超标倍数 = (浓度 - 70) / 70,保留整数 |
| 154 | - **降雨影响**:若今夜或明早有降雨预报,需在天气提示中注明「预计降雨后花粉浓度将明显下降」 |
| 155 | - **数据时效**:花粉数据通常每天更新一次,推送时注明数据发布时间 |