会话通知提醒 dingyi222666/dsh-session-notification
DeepSeek Harnessv0.2.7为 Deepseek Harness 提供会话完成等四种状态的通知响应,支持浏览器提示和提示词
46.1/100
综合分
30
GitHub 星标
837
npm 周下载
—/5
用户评分
数据截至 2026/10/27 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @dingyi222666/dsh-session-notificationnpm 源 · @dingyi222666/dsh-session-notification 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · other
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 7 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包@dingyi222666/dsh-session-notification @ 0.2.7
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/30 11:47:45
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-api-session-controller@deepseek-ai/dsh-client-connection@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-store@deepseek-ai/dsh-client-ui-conversation@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-client-ui-renderer@deepseek-ai/dsh-client-ui-session@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-client-ui-workspace给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
2 张 · 点击查看大图功能亮点
- 四种状态通知响应
- 浏览器提示
- 提示词通知
最近更新
在 GitHub 查看全部 →v0.2.72026-10-27
· dsh-session-notification v0.2.7
· 修复 & 改进
· 依赖升级至 0.2.1-rc.2: @deepseek-ai/dsh-* 依赖升到 ^0.2.1-rc.2,cordis/schemastery 对齐转为正式版的 peer(^4.0.5 / ^3.18.5);alpha.2→rc.2 的 990 个提交逐项核对后改了 3 处——① ConfigFormSnapshot.mode(memory 模式概念)被移除,本地偏好作用域的快照不再带该字段;② 平台模块表新增 zod 与 @tanstack/react-virtual,tsdown 的外置模块表同步补齐(连同此前遗漏的 dsh-client-ui-dockkit);③ 其余插件消费面全部保持:五个 Regular 图标、turn-error.seq/message、ChatSnapshot.nodes 与 chat target、activate("chat")/target 读取语义、SessionStatus.pendingInteraction/sessionStatus、sessions 的 retain/using 契约、uiWorkspace.openSession(target);桌面端差异(仅更新通道 manifest)不涉及通知权限、preload 与 dshDesktop 桥;typecheck/141 specs/build 全绿
· 完成通知不再在会话自续跑时误响(#9,贡献者 @j62268781-alt): 空闲边沿不再直接判定完成——宿主仍持有会自动开启下一轮的工作时(排队中的后续输入、active 且未到轮次上限的 goal)不触发「完成」,由续跑自身结束后的边沿通知;失败仍然立即通知。信号读自会话列表快照的 inbox / goal projection,用户从未打开过的会话同样覆盖;不延长 settle 窗口,也不暂存通知
· 完成/失败通知标题取本轮最后一条用户消息(#9): 会话标题由首条消息生成后不再变化,长会话的「已完成」会一直报第一句;现在改取本轮最后一条真人用户消息(source.kind === "user",与会话标题的判定口径一致),折叠空白并截断到 60 字符,没有用户消息时回落到会话标题
· What's Changed
· chore: release 0.2.7 with the notification fixes (#10) in
· chore: adapt to dsh 0.2.1-rc.2 in
· fix: stop false completion notices for self-resuming sessions (#10) in
· chore: register v0.2.6 in the backfill release table in
Full Changelog:
v0.2.62026-10-11
· dsh-session-notification v0.2.6
· 新特性
· 当前会话提醒时机三档(#8,贡献者 @RushMove): 原来的「当前会话也提醒」布尔开关升级为三档选择器——「仅后台或最小化」(默认)、「切到其他应用时」、「始终提醒」;新增基于 document.hasFocus() 的失焦检测,解决分屏/多屏场景下窗口仍然可见、但你已经切到别的应用时当前会话完全不提醒的问题;旧偏好自动迁移(notifyCurrent: true → 「始终提醒」),中英文文案与 README 防打扰对照表同步更新
· What's Changed
· chore: release 0.2.6 with the current-session alert modes (#8) in
· feat: current-session alert modes with focus detection (#8) in
· chore: bump @deepseek-ai deps to 0.2.1-alpha.2 in
· chore: adapt to dsh 0.2.1-alpha.1, drop the invariant companion in
· chore: register v0.2.3 in the backfill release table in
Full Changelog:
v0.2.32026-09-30
· dsh-session-notification v0.2.3
· 新特性
· 点击通知跳转到对应会话(#7): 通知点击时除聚焦页面外,还会打开该事件所属会话的对话——桌面端关窗隐藏后,点击通知会恢复窗口并直接进入那个会话;v0.2.2 引入该能力,本版修复了它在实际 GUI(尤其桌面端)中未生效的问题(见下)
· 修复 & 改进
· 点击跳转修复(#7 后续): 上一版的可选注入在实际 GUI 里可能未生效——改为与官方 ui-chat 一致的硬注入 uiWorkspace,打开失败时打印告警;同时把通知对象保持强引用(Chromium/Electron 下点击回调可能因 JS 包装对象被回收而丢失),点击回调抛错也不影响关闭通知卡片
· 通知正文缺少助手回复修复: 0.1.7+ 起读取 chat target 不会激活视图,未选中的会话拿不到对话节点;现在读取前显式 activate("chat"),并在结算前按需用 sessions.using() 打开该会话历史——从未打开过的会话也能拿到最终回复文本(桌面端隐藏窗口、只提醒「完成」的场景同样生效);该加载仅在有提醒可能时执行,失败不影响完成/失败分类
· What's Changed
· fix: notification click navigation and missing assistant text in
· feat: open the event's session when a notification is clicked (#7) in
· chore: bump @deepseek-ai deps to 0.2.0-rc.2 in
· chore: register v0.2.0 in the backfill release table in
Full Changelog:
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。
README
由 DeepSeek 最新模型翻译生成dsh-session-notification
一个给 dsh Web GUI 的通知插件:会话跑完、出错、想问你问题、或需要你授权时,都有提示音提醒;离开当前标签页时,还会弹一条系统通知,让你不用一直盯着。
截图
| 设置面板——侧边栏里的「通知」入口与栏目内容 | 每种类型的音效选择器(官方下拉菜单) |
| 通知设置栏目 | 音效选择器 |
安装
从 npm 安装(需要 dsh >= 0.2.1-rc.2)
dsh plugin --profile web add @dingyi222666/dsh-session-notification
重启 dsh web 后生效
dsh web
一切都在插件自身实现——不依赖 harness(宿主)的任何改动:
- 设置栏目通过客户端 slot 系统(settings.section)注册,与官方栏目做法一致。
- 偏好存在浏览器本地(localStorage)并跨标签页同步;不需要宿主设置命名空间或任何其他宿主包改动。(dsh 0.1.7 的插件配置表单直接由 Loader 条目派生,Node 半区已无命名空间可保留,保持惰性。)
- 设置外壳只给它自己认识的栏目 id 配导航图标,所以「通知」导航行显示的是外壳默认的齿轮。
展开完整文档(README 剩余 1 节)
dsh-session-notification 一个给 dsh Web GUI 的通知插件:会话跑完、出错、想问你问题、或需要你授权时,都有提示音提醒;离开当前标签页时,还会弹一条系统通知,让你不用一直盯着。 截图 | 设置面板——侧边栏里的「通知」入口与栏目内容 | 每种类型的音效选择器(官方下拉菜单) | | 通知设置栏目 | 音效选择器 | 安装 从 npm 安装(需要 dsh >= 0.2.1-rc.2) dsh plugin --profile web add @dingyi222666/dsh-session-notification 重启 dsh web 后生效 dsh web 一切都在插件自身实现——不依赖 harness(宿主)的任何改动: - 设置栏目通过客户端 slot 系统(settings.section)注册,与官方栏目做法一致。 - 偏好存在浏览器本地(localStorage)并跨标签页同步;不需要宿主设置命名空间或任何其他宿主包改动。(dsh 0.1.7 的插件配置表单直接由 Loader 条目派生,Node 半区已无命名空间可保留,保持惰性。) - 设置外壳只给它自己认识的栏目 id 配导航图标,所以「通知」导航行显示的是外壳默认的齿轮。 四种通知类型 | 类型 | 触发时机 | 默认音效 | | 会话完成 | 一轮会话正常结束(turn/end completed) | 叮咚 | | 会话失败 | 一轮会话出错中断,或宿主上报 agent 错误 | 低鸣 | | 问问题 | Agent 正在等你回答(question/requested) | 轻响 | | 权限请求 | Agent 请求执行需要授权的操作(approval/requested) | 警示 | 每种类型都可以单独开关,也可以把提示音换成四种内置音效中的任意一种(或静音)。四种音效全部用 Web Audio 实时合成——不携带任何音频文件——整体音量用官方风格的滑块调节(0–100%)。播放链路带固定响度增益(约 +6 dB)和软限幅器,所有声音都明显更响且不失真;自定义音频走同一条链路。播放结束后共享 AudioContext 会立即挂起、下次响铃再恢复,闲置通知不会一直占着系统音频流(以及 macOS 的防睡眠断言)。 自定义音频 除了四种内置音效,每种类型还可以上传你自己的音频文件(mp3/ogg/wav,最大 1 MB):在对应类型那一行点「自定义音频」上传,之后该类型就用它代替内置音效——支持「更换」和移除,并显示「已使用自定义音频」标签。自定义音频存在浏览器本地(音频属于设备资源,不放进共享偏好)。 浏览器通知与「不打扰」默认 浏览器(系统级)通知默认关闭;打开开关时会先向浏览器申请授权(需要一次点击手势)。授权后,当事件所属的会话不是当前正在读的会话、或标签页在后台时,才会弹系统通知。通知使用网页自身的图标(harness 提供的 favicon)。完成的会话,通知正文会带上它的最终回复文本(最后一条 assistant 消息);点击通知会聚焦页面并打开对应会话(Web 与桌面端一致);「测试通知」按钮可以在授权后立即验证系统通知通道。 当前会话默认不打扰——你确实在看它时不会打断你。通过「当前会话提醒时机」下拉菜单可以放宽这一层级: | 你正在读的会话,而你…… | 仅后台或最小化(默认) | 切到其他应用时 | 始终提醒 | | DSH 在前台、正看着它 | 🔕 静默 | 🔕 静默 | ✅ 提醒 | | 切到了其他 App(DSH 仍露在屏幕上) | 🔕 静默 | ✅ 提醒 | ✅ 提醒 | | 标签页切后台 / 窗口最小化 | ✅ 提醒 | ✅ 提醒 | ✅ 提醒 | 「通知范围」三选一(默认 主会话 + 等子会话):全部会话 连子会话一起提醒;只主会话 主会话一结束就提醒;主会话 + 等子会话 则等它派生的所有子会话都跑完再提醒一次,中间的空档不会提前打断你(失败仍然立即提醒)。 桌面端(Desktop) 插件在 dsh 桌面应用(Electron 外壳)里原样运行——外壳加载的是同一套 Web 客户端与插件图。桌面通知走系统原生通知:外壳默认授予通知权限,因此打开「浏览器通知」开关即可,不会再弹授权框。通知使用应用图标(网页端用页面 favicon;dsh-app:// 下会跳过页面图标,让打包后的应用图标生效),并在系统层标记为静音——插件的 Web Audio 是唯一音源,系统通知音不会和提示音叠加;点击通知会经外壳的应用激活恢复并聚焦窗口、并打开该会话的对话——关闭窗口只是隐藏、不会退出。 desktop profile($DSH_HOME/profiles/desktop)由桌面应用独占,CLI 会拒绝管理,因此请从桌面应用的 设置 → 插件(Plugins) 页面安装本插件,而不是 dsh plugin --profile desktop。偏好存在该渲染进程本地,与 Web profile 相互独立。 通知设置栏 插件在设置面板注册了一个「通知」栏目(设置 ⚙ → 通知): - 浏览器通知总开关(含授权状态与「授权」按钮), - 当前会话提醒时机下拉菜单(仅后台或最小化 / 切到其他应用时 / 始终提醒), - 通知范围选择(全部会话 / 只主会话 / 主会话 + 等子会话), - 提示音总开关, - 音量滑块(0–100%), - 每种通知类型一行:启用开关、自定义音频上传、音效选择(官方下拉菜单)、以及「试听」按钮, - 浏览器通知行上的「测试通知」按钮(授权后一键验证系统通知通道)。 偏好保存在浏览器本地(localStorage)的 dsh-session-notification 键下——无需宿主放行任何设置命名空间——跨会话持久化、跨标签页同步,完全不依赖宿主改动。 工作原理 浏览器端监听会话列表快照和每个会话的对话快照——无需轮询、无需新增链路: - 会话 running 由 true→false 表示一轮运行结束;运行期间若出现了新的 turn-error 节点或宿主 agent-error,判定为失败,否则为完成(被重试挽回的失败按完成处理)。 - 当宿主还持有会自动开启下一轮的工作(排队中的后续输入,或驱动器仍要跑的 goal 轮次)时,「完成」不触发:这个空闲边沿只是暂停,由续跑自身结束后的边沿通知。完成 / 失败通知的标题取本轮最后一条用户消息,没有时才回落到会话标题。 - 待交互边沿出现 question / approval 时,触发问问题 / 权限请求通知,正文带问题文本或工具名+原因。 - 插件加载时已经空闲(或已经在等待交互)的会话不会触发任何通知。 开发 - yarn run build —— 构建浏览器包(lib/client.js)与 Node 半区(lib/index.js)。 - src/client/notification-service.ts —— 引擎(事件判定)与分发器(开关/音效/通知门控);src/client/settings-store.ts —— 设置栏桥接;src/client/NotificationsSection.tsx —— 设置栏 UI;src/client/sounds.ts 与 src/client/custom-audio.ts —— 内置与自定义音效。 - yarn test —— 行为测试;yarn run typecheck —— 类型门禁。 - dsh 0.2.1-rc.2:@deepseek-ai/dsh-* 类型作为 devDependencies(^0.2.1-rc.2;@deepseek-ai/cordis ^4.0.5、@deepseek-ai/schemastery ^3.18.5,已转为正式版,与 dsh 包的 peer 依赖一致)从 npm 安装,不再需要检出路径映射;0.2.1 这一线(自 alpha.1 起)移除了运行时 invariant 插件机制,因此原来的 ./invariant 伴生模块已删除。 - Node 半区改动需要重启 dsh web;浏览器包改动重新 yarn run build 即可(--dev 模式会自动热更新)。 已知限制 - 失败判定读取会话的对话快照,而客户端只为「打开过」的会话维护快照;从未打开过的会话若运行失败,会按「完成」通知。 - 浏览器通知需要授权,声音播放需要页面获得用户激活(浏览器自动播放策略)——浏览器应用的常态,用户与界面交互一次即可解决。 - 自定义音频存在浏览器本地(localStorage),不会跨浏览器或跨 profile 同步。 - 浏览器端是基于会话列表快照的事件驱动,不直接读原始事件流;理论上两次快照之间开始又结束的运行可能漏报(宿主对每个边沿都会下发状态帧,实际不会发生)。 - goal 的激活状态(activation)是进程内的,不上线:active 但未激活的 goal(例如进程重启后)会被当成仍会续跑,它的空闲边沿不会通知,直到 goal 变化或被重新恢复。 - 后台任务的列表只会为你正在查看的会话加载,因此「任务结束后唤醒空闲会话」在那一刻对客户端不可见;这种唤醒仍可能提前产生一次完成通知。 模型体验 无。插件是纯客户端观察者,只读已记录的会话状态,不会进入任何模型请求。 KV Cache 影响 无;本包既不组装也不发送 provider 请求。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
dingyi222666/dsh-session-notification
为 Deepseek Harness 提供会话完成等四种状态的通知响应,支持浏览器提示和提示词
相关插件 · 其他
模型破甲清洗YuJunZhiXue/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 16,148已汉化DeepSeek 客户端
73
女娲蒸馏alchaincyf/nuwa-skill
输入名人名字,提炼其思维模型与决策方式供你调用
★ 37,308已汉化DSH
72
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 888已汉化DSH
71.6
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,266已汉化DSH
70.7