把散落各处的告警统一收口,待办超时反复提醒直到确认完成
30.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/28 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查未通过:仓库根目录及浅层子目录均无 dsh 插件清单,无法用 dsh 插件安装命令安装。以下命令仍可尝试,但可能失败。
无法用 dsh 插件命令安装(仓库内无 dsh 插件清单)
git clone https://github.com/SJTUMalPan/notify-hub.git按该仓库 README 的原生方式安装;若作者另行发布了 DSH 插件包,请以其文档为准
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · market
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 37 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/11/2) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装仓库根目录及浅层子目录均无 dsh 插件清单,无法用 dsh 插件安装命令安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包notify-hub(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/11 22:21:32
安全扫描自动 · 静态分析源码v2.7.0⚪ 扫描:无法判定尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。
- · 包内无可扫 JS
- · TS 源码(可能为非 JS 实现或未发布源码),无法判定
扫描于 2026/11/2(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 统一收口告警
- 待办超时反复提醒
- 多渠道适配
消息汇聚与待办跟踪通知服务:多进程投递、分类处理、超时提醒、多渠道适配
README
由 DeepSeek 最新模型翻译生成notify-hub
统一的消息汇聚、分类、待办跟踪与多渠道路由通知服务。
把散落在各处的脚本、CI、监控告警统一投递到一个 HTTP 接口,服务按规则给消息打上分类、标签与「是否需要确认」,把需要跟进的消息落成待办,并按渠道(webhook / email / feishu)路由投递;超时未完成的待办会被反复提醒,直到有人在 Web 页面点「完成」。
安装
需要 Python 3.10+。在仓库根目录创建虚拟环境并安装:
python3 -m venv .venv
.venv/bin/pip install --no-build-isolation -e ".[dev]"
(--no-build-isolation 使用 venv 内已有的 setuptools/wheel,避免隔离构建挂起;常规环境也可用 .venv/bin/pip install -e ".[dev]"。)
配置
从示例复制出实际配置与规则文件:
cp config.example.yaml config.yaml
cp rules.example.yaml rules.yaml
- 配置文件默认 ./config.yaml,也可用环境变量 NOTIFY_HUB_CONFIG 指向别处。
展开完整文档(README 剩余 1 节)
notify-hub
统一的消息汇聚、分类、待办跟踪与多渠道路由通知服务。
把散落在各处的脚本、CI、监控告警统一投递到一个 HTTP 接口,服务按规则给消息打上分类、标签与「是否需要确认」,把需要跟进的消息落成待办,并按渠道(webhook / email / feishu)路由投递;超时未完成的待办会被反复提醒,直到有人在 Web 页面点「完成」。
安装
需要 Python 3.10+。在仓库根目录创建虚拟环境并安装:
python3 -m venv .venv
.venv/bin/pip install --no-build-isolation -e ".[dev]"
(--no-build-isolation 使用 venv 内已有的 setuptools/wheel,避免隔离构建挂起;常规环境也可用 .venv/bin/pip install -e ".[dev]"。)
配置
从示例复制出实际配置与规则文件:
cp config.example.yaml config.yaml
cp rules.example.yaml rules.yaml
- 配置文件默认 ./config.yaml,也可用环境变量 NOTIFY_HUB_CONFIG 指向别处。
- channels[].credentials 里写的只是环境变量名,凭据本身放在运行环境里,例如 NOTIFY_WEBHOOK_URL、NOTIFY_SMTP_PASSWORD、NOTIFY_FEISHU_WEBHOOK_URL;变量为空则该渠道不可用,服务照常启动。
- 内置渠道类型为 webhook、email 与 feishu(飞书自定义机器人;启用加签时再声明 secret,不用加签时不要声明该键)。每个配置键的含义见 docs/configuration.md。
启动
.venv/bin/python -m notify_hub
服务默认只绑定回环地址 127.0.0.1:8000。健康检查:
curl -sS http://127.0.0.1:8000/healthz
投递一条消息
HTTP 示例(POST /api/v1/messages,成功返回 202 与 message_id):
curl -sS -X POST http://127.0.0.1:8000/api/v1/messages \
-H 'Content-Type: application/json' \
-d '{"source":"db-backup","title":"备份失败","body":"exit code 1","level":"error","need_ack":true}'
CLI 示例(默认连接 http://127.0.0.1:8000,可用 --endpoint 覆盖):
notify --source db-backup --title "备份失败" --body "exit code 1" --level error --need-ack --dedup-key backup-2024 --endpoint http://127.0.0.1:8000
CLI 的 --body-stdin 可从标准输入读正文;退出码约定为 0 成功、1 服务端拒绝、 2 用法错误、3 无法连接服务端。
完成流程
消息命中需要确认的规则后会生成待办。列表与详情在 Web 页面:
- /:跳转到待办列表。
- /todos:待办列表,支持 ?status=pending|done|all。
- /todos/{id}:待办详情(含消息与投递记录)。
- /todos/{id}/done:POST 标记完成(页面上的「完成」按钮)。
也可以直接用 HTTP 完成一条待办:
curl -sS -X POST http://127.0.0.1:8000/api/v1/todos/1/done
未在提醒间隔内完成的待办会按 reminders 配置重复提醒;消息历史可浏览 /messages 与
/messages/{id}。
DSH 插件(已独立成仓库)
配套的 DSH 宿主插件已拆成独立仓库: dsh-ask-timeout-notify。
模型用 ask_user_question 提问后,若超过阈值(默认 60 分钟)无人回答,就往本服务的 POST /api/v1/messages 投一条 need_ack 消息,落成待办并推送。它只是本服务的一个普通消息生产者,不改本服务任何代码、不需要额外规则。
插件市场里可直接装,或:
dsh plugin --profile web add github:SJTUMalPan/dsh-ask-timeout-notify
本仓库的 dsh-plugin/ 是一个 git submodule 指向那个仓库,方便本地开发时两边的路径关系不变(git clone --recursive 即可拿到)。
配置只需两个环境变量:DSH_NOTIFY_HUB_ENDPOINT(默认 http://127.0.0.1:8000)与 DSH_NOTIFY_HUB_TOKEN(本服务 server.auth_token 的值)。完整说明见 dsh-plugin/README.md。
文档索引
- 配置说明:每个配置键、环境变量与凭据引用方式、提醒参数关系。
- 分类规则编写指南:匹配语义、case_sensitive、 first-match-wins 与可直接加载的规则示例。
- 适配器开发指南:Notifier 契约、DeliveryResult 失败语义、能力声明、平台专属嵌套载荷(范例 notify_hub.notifiers.feishu)与完整的 dummy 适配器示例。
- 部署说明:systemd 单元、数据文件位置与回环地址安全边界。
- 代码走读:目录结构与逐文件职责、启动链、一条消息从接入到送达的完整数据流(每步标注确切的文件与函数)、四条跨模块不变量与建议的阅读顺序。
- 架构可视化:纯前端单文件,双击即可打开——数据流步进器、可过滤的模块地图、不变量与后台线程。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
SJTUMalPan/notify-hub
把散落各处的告警统一收口,待办超时反复提醒直到确认完成
相关插件 · 市场 / 管理
插件精选列表awesome-dsh-plugin/awesome-dsh-plugin
DeepSeek Harness(dsh)插件精选列表
★ 22,025未汉化DSH
73.6
新词雷达zhuyansen/new-term-radar
new-term-radar新词雷达
★ 2,049已汉化MCP
72.8
插件生态导航0xsline/awesome-deepseek-harness
安装 贡献指南 DeepSeek Docs 公开插件目录 Issues
★ 1,188已汉化DSH
72.6
技能注册中心iflytek/skillhub
企业级开源智能体技能注册中心——发布、发现并管理组织内可复用的技能包。
★ 5,358已汉化DSH
71.9
插件市场目录imsai-sh/awesome-deepseek-harness-plugins
面向 DeepSeek Harnessdsh生态的社区插件目录,共收录 13938 个插件含 PR 收录与…
★ 350已汉化DSH
71.8
插件精选清单Anil-matcha/awesome-dsh-plugin
DeepSeek Harnessdsh精选指南——DeepSeek…
★ 1,013已汉化DSH
71.7
这是你的仓库?认领条目