npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dsh-quake-alert

v1.0.1

Published

Real-time earthquake, EEW, tsunami and weather alerts: Japan (P2PQuake + JMA telegrams), global earthquakes (EMSC/USGS) and tsunamis (NOAA), mainland China (CENC earthquakes via Wolfx, plus nmc.cn rainstorm / geological-hazard warnings), and US / Canadian

Downloads

402

Readme

dsh-quake-alert · 灾害预警 QuakeAlert

English · 中文 · 日本語

Awesome DSH Plugin License: MIT npm version

这是给 DeepSeek Harness(DSH)用的灾害预警插件。你使用 DSH 期间,它会实时推送日本和全球的 地震、海啸与气象灾害预警;一旦命中你设置的关注地区与阈值,就会响一声、在页面上弹条提示 (页面切到后台时改发系统通知)。

⚠️ 免责声明(请先阅读):预警数据由 P2PQuake、日本气象厅公开 XML 电文、 EMSC、USGS 与 NOAA 提供或转播,都不是官方直接推送;紧急地震速报(EEW)的内容与配信品质 不作保证。本插件的提醒仅供参考,避险请以当地官方机构的发布为准。插件只在 DSH 页面开着时工作。

功能特性

  • 实时推送(日本):与 P2PQuake 建立 WebSocket 长连接,接收地震情报(551)、紧急地震速报 EEW(556)与海啸预报(552);从气象厅发布到 P2PQuake 转播,EEW 通常只要数百毫秒。
  • 实时推送(全球):与 EMSC 建立 WebSocket 长连接,接收全球地震。
  • 日本气象灾害:接收气象厅公开 XML 电文里的泥石流、洪水、大雨与高潮,只在警戒レベル4 以上播报。
  • 中国大陆:接收 Wolfx 转播的中国地震台网地震预警与速报,以及中央气象台的暴雨 / 地质灾害预警信号(橙色及以上)。
  • 美国与加拿大:由浏览器直接查询 NWS 的洪水类预警,以及 ECCC 的降雨 / 洪水 / 风暴潮预警。
  • 全球地震与海啸:USGS 的全球地震目录与 NOAA 的海啸 CAP 电文,由插件在后台轮询。
  • 关注地区:只有一个入口,先选国家 / 地区,再展开它自己的下级控件。日本 → 都道府县(可选到市区町村);中国大陆 → 省 → 地级市 + 半径;其他国家 / 地区 → 城市列表或坐标 + 半径。
  • 半径分几档预设:仅本地(约 30 km)/ 本市及周边(约 100 km,新建时的默认)/ 较大范围(约 300 km),也可以直接填公里数。
  • 阈值都在同一张表里:一行一个灾种,左边的开关决定要不要提醒,右边的阈值决定多强才提醒。气象灾害的边界是固定的,所以只给开关。
  • 通知方式:提示音用 Web Audio 合成,音量可调;页面在前台就弹页内提示,切到后台就发系统通知。地震与 EEW 的提醒标题会带震度。
  • 取消 / 解除提醒:此前提醒过的 EEW 被取消、或海啸预报被解除时,补一条下行音提醒。NWS 的取消消息靠 VTEC 追踪号匹配。
  • 静默时段:每天固定时段内不打扰非关键预警。红色等级默认不受静默限制,也可以关掉这个例外。
  • 断线自动重连:重连间隔逐次延长(1s → 60s 封顶)。P2PQuake 每约 10 分钟强制断线属常态,重连是正常的;连不上和连上后长时间没数据这两种情况,插件都能发现并恢复。
  • 同一场地震只提醒一次:同一次地震的多次发布,只在震度升级时才再提醒一次;多个机构报同一场地震时,只让先到的源播报。
  • 历史记录:只留最近 5 天里的 30 条处理记录,真的响过的和根本没法判定的都收,其余不收。
  • 界面语言:简体中文 / 繁體中文 / 日本語 / English,在设置里切换、立即生效。来自数据源的文本一律按原文显示。
  • 配置导出与导入:可以把配置导出成 JSON 文件,换机器或换浏览器时再导入。导入是整体替换,导入前会自动备份当前配置。
  • 保存在本机:配置存在 DSH 的机器级存储里,换浏览器、换机器都还在;浏览器本地存储再留一份副本,前者用不了时拿它顶上。
  • 源状态:侧边栏底部有一个状态圆点,显示当前状态,悬停还能看到未达播报级别的气象警报;逐源明细(收到多少增量、失败几次、有没有缺口、最近一次拉取时间、上游是否停更)在 设置 → 灾害预警 → 测试与诊断里。
  • 数据源切换:正式源(实时),或沙箱源(回放 2023 年的历史数据,约 30 秒一条)。
  • 本地诊断:两个测试按钮在本地构造数据源格式的电文,走真实的解析与匹配,不发任何网络请求。

安装

# 从 npm 安装
dsh plugin --profile web add dsh-quake-alert

# 重启 dsh web 使插件生效

想跟仓库最新提交的话,也可以直接从 GitHub 装: dsh plugin --profile web add github:MurasakiIzumi/dsh-quake-alert。

升级:重跑一次上面的命令,再重启 dsh web。改动只落在 client/(浏览器端)时,刷新页面就生效; 动了 lib/(后台端)就得重启。

使用

  1. 打开 设置 → 灾害预警。

  2. 关注地区,先选国家 / 地区,再展开该国的下级控件:

    • 日本,点选你关注的都道府县(不选 = 提醒全日本);选了县之后可以再细化到市区町村。
    • 中国大陆,选省 → 选市 → 选半径 →「添加这个城市」,也可以点「用我的位置」。表里的坐标是行政区中心点,面积特别大的省 / 市请把半径调大。
    • 其他国家 / 地区,选国家、找到城市后点一下就能添加,也可以手填坐标表单。城市表只收人口 10 万以上的城镇。

    已关注的地区在这个区块下方统一列出,随时可以移除。

  3. 灾害类型与阈值,一行一个灾种:开关决定要不要提醒,阈值决定多强才提醒。

  4. 通知与声音,开启提示音 / 系统通知,调节音量,用试听按钮验证。

  5. 数据源,日常保持「正式」;想验证链路时切「沙箱」。

  6. 测试与诊断,两个测试按钮在本地构造源格式电文,走真实的解析与匹配,不发任何网络请求,可以反复点击。下面是逐源状态与诊断快照,可以直接贴给 AI 帮你排查。

命中预警后会有提示音,前台弹页内提示、后台发系统通知,同时记入「最近预警记录」。

连不上某个源?(大陆网络)

在中国大陆网络下,本插件可能连不上某个数据源,或者数据不更新,结果就是提醒不响。这类毛病只在大陆 网络下出现,所以处理办法是让故障变成看得见的状态(设置 → 灾害预警 → 测试与诊断 → 源状态), 再配一份给 AI 读的排查文档:

把 TROUBLESHOOTING.zh.md 交给你的 AI 助手,让它照着里面的步骤做。

更多文档

  • GUIDE.zh.md,讲工作原理、覆盖范围与数据来源、已知限制,以及怎么开发。
  • CHANGELOG.md,记各版本新增、修改、修复与删除的内容。

License

MIT © XuZhichao