Bundle
@qianluo-ly/dsh-weather
DSH Web 会话顶栏的天气插件:当前天气 + 实时日期时间 + 未来预报(含逐日详情)+ 多城市收藏 + 每日简报(Open-Meteo 数据源,无需 API key)。
- Source
- QianLuo-Ly
- License
- MIT
- Updated
- Updated 4 hours ago
Readme
# dsh-weather DSH Web 会话顶栏的天气插件:**当前天气 + 实时日期时间 + 未来 12 小时/7 天预报**。 装上后,打开 DeepSeek Harness 网页版进入任一会话,即可在会话顶部操作行看到天气 chip——它内嵌在 app 布局里,不与任何浮层插件抢位置。 - 数据来自 [Open-Meteo](https://open-meteo.com/):免费、无需 API key、浏览器直连 - 自动定位优先使用浏览器定位(GPS/WiFi,可精确到区),失败或拒绝时回退 IP 定位 - **不收集、不上传任何个人数据**,配置仅保存在本地   ## 安装 **方式一:插件市场一键安装(推荐)** 1. 如果还没有插件市场,先安装它: ```sh dsh plugin --profile web add dshmarket ``` 2. 重启 `dsh web`,打开 **设置 → 插件市场**,搜索 **weather**,一键安装 `dsh-weather`。 3. 刷新页面,进入会话即可在顶部操作行看到天气 chip。 **方式二:命令行从 GitHub 安装** ```sh dsh plugin --profile web add https://github.com/QianLuo-Ly/dsh-weather ``` 重启(或按提示刷新)`dsh web` 后生效。 > 要求 dsh web 0.1.0-rc.6 或更新版本。 ## 使用 - **天气 chip**:常驻在会话顶部操作行,单行紧凑显示天气图标、温度、具体天气与**日期时间**(分钟级自动刷新,如 `⛅ 26° 晴 · 7月5日 14:05`),点击展开详情;展开/收起都看得到时间。 - **详情弹层**: - **当前天气**:大图标 + 大温度,以及湿度 / 风速 / 阵风 / 风向 / 气压 / 能见度 / 云量 / 露点 / 今日降水量 / 空气质量(AQI + PM2.5,**AQI 按 HJ 633-2012 用六项污染物的 24 小时平均浓度自算**,不是数据源那套美国 EPA 口径的指数 —— 同一片空气两者会给出不同的数) - **今日信息**:日出 / 日落 / **UV 峰值**指数 / PM2.5 + 一句话出行建议(带伞 / 防晒 / 防暑等) - **未来 6 小时降水**:15 分钟级降水柱状条(Open-Meteo `minutely_15`),直接告诉你「预计几点开始下雨 / 会下多久」 - **未来 24 小时**温度趋势曲线 - **未来 12 小时**逐小时预报、**未来 7 天**预报(带温度区间渐变条,**点击某天查看逐日详情**:当日逐小时温度 / 天气 / 降水概率 / 风速 / 湿度 + 日出日落与降水量) - **天气描述按实测证据、依国内标准分档**:晴 / 少云 / 多云 / 阴按 GB/T 35663-2017 成数;雨雪按 GB/T 28592-2012 与国内逐时雨强口径;雾 / 轻雾 / 霾按 QX/T 113-2010(判识起点 10 km,霾分轻微 / 轻度 / 中度 / 重度四级);沙尘按 GB/T 20480-2017,**以数据源的沙尘浓度 `dust` 为主判、PM10 佐证,而不是能见度** —— 实测该数据源的能见度不随沙尘变化(库尔勒 dust 峰值 997 µg/m³ 时能见度仍报 26.9 km),拿它当门会让沙尘天报成「晴」;高温 / 大风 / 紫外线取中国气象局预警档次。 - **天气图标按强度区分**:毛毛雨 / 小雨 / 中雨 / 大雨、小雪 / 中雪 / 大雪 / 米雪 / 阵雪各有独立图标(云的形态相同,雨点数量与长度、雪花大小与数量递进),冻雨 / 冻毛毛雨另带冰粒标记;标签页 emoji 同样分档(❄️ 小雪 · 🌨️ 中雪 · ⛄ 大雪 · 🧊 米雪/冻雨 · ⛈️ 雷阵雨 · 🌩️ 雷暴伴冰雹),不再出现三档雪共用 ❄️ 的情况。 - **多城市收藏与切换**:弹层里点 ☆ 收藏当前城市,之后在顶部一行城市切换(含「当前位置」)随点随换;设置页可管理(切换 / 删除 / 从搜索结果直接收藏),最多 8 个。 - **即将下雨提示**:预计 1 小时内开始下雨时,详情弹层的降水区会显示「约 X 分钟后开始下雨」;启用浏览器提醒后也会提前通知带伞。 - **浏览器标签页标题**会同步显示当前天气与天气名称(如 `❄️ 中雪 3° 北京 — …`),刷新也保持同步。 - **恶劣天气提醒**:当前或**未来 12 小时预报**出现强降雨 / 雷暴 / 高温 / 大风 / 强降雪时发送浏览器通知(可在设置中开关);1 小时内即将下雨也会提醒带伞。提醒**按实测强度分级**,不靠天气码一刀切:普通雷阵雨只说「雷阵雨」,只有冰雹、短时强降雨(≥20 mm/h)、12 级以上大风(阵风 13 级)或 40 ℃ 高温才升级为红色「强对流 / 雷暴 / 狂风 / 酷热」,0 ℃ 左右只提示「霜冻」而非「低温」。 - **每日天气简报**:可设定早上 / 晚间两个时间点(按**本机时间**,最多补发 2 小时),到点推送「今日天气」(最高/最低温 + 降水概率)与「明日天气」,每天每个时段只推一次。 - **网络漂移自动切换**:自动定位下,若检测到网络已迁移(VPN / 漫游 / IP 变化超过约 50 km),会**自动切换定位并弹出提示**(页面停留期间每小时复查一次),无需手动重新定位。 - **失败降级**:刷新失败时保留上次成功的数据并标注快照时间,不会突然空白。 - **⚙ 设置**:点击天气 chip 展开弹层可切换单位 / 收藏 / 重新定位;完整配置在 **设置(左下角齿轮)→ 天气**: - 显示开关 - 定位方式:`自动`(GPS 优先,失败回退 IP)或 `手动`(中文城市搜索,如「北京」「上海」,或直接填经纬度) - 收藏城市:列表管理 + 「+ 收藏当前位置」 - 单位:摄氏 °C / 华氏 °F(仅显示切换,天气数据始终以公制抓取,无需重新拉取) - 自动刷新间隔(5–120 分钟,默认 15) - 恶劣天气提醒开关 - 每日天气简报开关 + 早上 / 晚间推送时间 ## 常见问题 - **定位不够精确?** 天气 chip → 弹层「📍 重新定位」,或 **设置 → 天气 → 定位方式**改为 `手动`,搜索城市或直接填经纬度。 - **想用华氏度?** ⚙ 设置 → 单位切换为 °F。 - **天气数据准吗?** 数据来自 Open-Meteo(免费公共气象服务),服务端每小时更新;插件默认每 15 分钟刷新一次,可在 ⚙ 设置里调短或调长(5–120 分钟)。 ## 数据来源与隐私 | 用途 | 服务 | 说明 | |---|---|---| | 天气数据 | Open-Meteo(api / air-quality-api / geocoding-api) | 免费公共 API,浏览器直连 | | 自动定位 | 浏览器定位(GPS/WiFi) | 优先使用;失败、拒绝或超时后回退 IP 定位 | | IP 定位 | ipwho.is / api.ipapi.is / free.freeipapi.com | 三供应商取 50 km 内共识,失败自动跳过(页面停留期间每小时复查一次漂移) | | 中文区名 | BigDataCloud | 反向地理编码(Open-Meteo 地理搜索兜底) | **关于"自动定位"要说清楚**:`自动` 模式下,打开页面就会同时发起上面三个 IP 定位请求(与浏览器定位并行,用于在浏览器定位失败时兜底), 因此即使浏览器定位成功、或你拒绝了定位授权,这三个服务仍会收到你的出口 IP。想完全避免,请把 **设置 → 天气 → 定位方式** 改成 `手动` 并填写城市或坐标。 插件**不存储、不转售任何用户数据**;除上表列出的服务外不向任何第三方发送请求。所有配置仅保存在 DSH 本地设置中, 其中定位坐标会按约 100 m 精度取整后保存——天气与地名解析在该精度下没有差别,取整可避免把设备级精确位置长期写入磁盘。 每日简报的去重标记(仅日期与时段,如 `dsh-weather-brief-2026-09-05-morning=1`)会写入浏览器 `localStorage`,不含位置、天气内容或任何可识别信息。 ## 开发者 构建、调试与二次开发说明见 [docs/DEVELOPMENT.md](https://github.com/QianLuo-Ly/dsh-weather/blob/main/docs/DEVELOPMENT.md)。 ## License MIT
Install
dsh plugin --profile web add github:QianLuo-Ly/dsh-weather
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install qianluo-ly-dsh-weather from the hub
- This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.