Skip to content

Releases

Better Notice 4.6.5 — factory presets follow the current default

Choose a tag to compare

@MeruSu MeruSu released this 11 Nov 16:05

已发布到 npm — 一行命令装。

dsh plugin --profile <你的 profile> add @merusu/dsh-better-notice

装完重启该 profile 的 GUI。

这一版改了什么

  • 出厂预设跟着新版本走:某个存值如果仍然等于老版本出厂时的默认(闲置图标 💤、动效 blink/none、motionTarget: 'glyph'、频率 1、音效关),就当作"你没选过",自动换成当前默认。老用户升级后,闲置图标会从 💤 变成 🧊。
  • 真选过的不会被覆盖:用户自己动过的字段会记一个 choices 标记,预设规则永远不碰它。设置页里关掉音效、选"不动/闪烁/仅图标"、把频率拉到 100%,改完刷新后都还是你选的值(上一版会被弹回默认)。
  • 文档里的行号全部重对:client.js 的 client.js:N 与测试的 test:N 按新文件逐条重映射并核对;测试组从 63 增到 65。

4.6.4 只在本地存在,没有对外发布;这一版是 4.6.3 → 4.6.5。

装完怎么确认

window.__HOTLIST_VERSION__          // "4.6.5"
window.__HOTLIST__.settings.get().choices   // {} 或你改过的字段

打开设置 → 「热表」,随便关掉一个类别的音效,刷新页面,应该还是关的。

已知限制

  • 顶栏位置还没实现(设置里是灰的)。
  • 浮层探头动画还没接进插件(目前只有 tab 座位、侧栏图标、音效)。
  • 素材是作者自己的角色图占位,可以在设置里换。

文档:README · 中文 · EXTENDING

Better Notice 4.6.3 — on npm

Choose a tag to compare

@MeruSu MeruSu released this 11 Nov 12:22

Better Notice 4.6.3

已发布到 npm — 现在可以一行命令装。

dsh plugin --profile <你的 profile> add @merusu/dsh-better-notice

装完重启该 profile 的 GUI(只改 client.js 的话刷新页面就够)。

这一版改了什么

  • 删掉第 7 类「收藏」:类别从 7 变 6 —— pinned / error / pending / completed / running / idle。旧数据里的 categories.favorite 读时丢弃,不报错。
  • 旧默认顺序自动升级:只把「仍是旧默认值」的那一类换成新默认(pinned 15 / error 10 / pending 10 / completed 20 / running 30 / idle 50),你手动改过的值原样保留。
  • 「最近对话展示时间」补了单位(分钟):设置页范围收窄到 1–36,但通过 API 仍可写 0–120(0 = 不显示闲置)。
  • README 改成中英双版本,并加了 AGENTS.md / llms.txt 给 AI 读。

装完怎么确认

打开 GUI 控制台:

window.__HOTLIST_VERSION__        // "4.6.3"
Object.keys(window.__HOTLIST__)   // ["version","settings","assets"]

设置 → 「热表」,应该看到 6 张类别卡、全局区有「置顶最多显示」和「最近对话展示时间(分钟)」。

已知限制

  • 顶栏那个位置还没实现(设置里是灰的)。
  • 浮层探头动画还没接进插件(目前只有 tab 座位、侧栏图标、音效)。
  • 素材是作者自己的角色图占位,可以在设置里换。

文档:README · 中文 · EXTENDING

Better Notice 4.6.2 — on npm

Choose a tag to compare

@MeruSu MeruSu released this 11 Nov 11:12

Better Notice 4.6.2

已发布到 npm — 现在可以一行命令装。

dsh plugin --profile <你的 profile> add @merusu/dsh-better-notice

装完重启该 profile 的 GUI(只改 client.js 的话刷新页面就够)。

这一版改了什么

  • 删掉第 7 类「收藏」:类别从 7 变 6 —— pinned / error / pending / completed / running / idle。旧数据里的 categories.favorite 读时丢弃,不报错。
  • 旧默认顺序自动升级:只把「仍是旧默认值」的那一类换成新默认(pinned 15 / error 10 / pending 10 / completed 20 / running 30 / idle 50),你手动改过的值原样保留。
  • 「最近对话展示时间」补了单位(分钟):设置页范围收窄到 1–36,但通过 API 仍可写 0–120(0 = 不显示闲置)。
  • README 改成中英双版本,并加了 AGENTS.md / llms.txt 给 AI 读。

装完怎么确认

打开 GUI 控制台:

window.__HOTLIST_VERSION__        // "4.6.2"
Object.keys(window.__HOTLIST__)   // ["version","settings","assets"]

设置 → 「热表」,应该看到 6 张类别卡、全局区有「置顶最多显示」和「最近对话展示时间(分钟)」。

已知限制

  • 顶栏那个位置还没实现(设置里是灰的)。
  • 浮层探头动画还没接进插件(目前只有 tab 座位、侧栏图标、音效)。
  • 素材是作者自己的角色图占位,可以在设置里换。

文档:README · 中文 · EXTENDING

Better Notice v4.6.1

Choose a tag to compare

@MeruSu MeruSu released this 11 Nov 09:45

Better Notice 4.6.1

DeepSeek Harness Web 的插件:把会话状态统一成视觉与听觉提醒。

  • 对话区 tab 行:每个热会话占一个座位,点一下直接切过去
  • 左侧会话栏:每行标题前一枚状态图标(可带动效)
  • 状态变化时:响一声 + 弹一张图(默认只有 error / pending / completed 会弹)

六类状态,一个会话只属于一类,优先级 error > pending > completed > running > pinned > idle。

安装

dsh plugin --profile <你的 profile> add @merusu/dsh-better-notice

装完重启该 profile 的 GUI(只改 client.js 才可以只刷新页面)。确认成功:window.__HOTLIST_VERSION__ 返回 4.6.1,设置里出现「热表」导航。

这一版改了什么

  • 删除第 7 类「收藏」,7 类 → 6 类(旧数据读时丢弃,不迁移、不报错)
  • 老安装的旧默认顺序逐类自动升级,改过的值原样保留
  • 「最近对话展示时间」补单位(分钟),设置 UI 收窄到 1–36,API 仍可写 0–120
  • 内置素材只留会弹图的三个状态:error / pending 用红色 Meru,completed 用蓝色 Lan;pinned / running / idle 回落到自带 SVG 再回落 emoji —— 包体积从 1.6 MB 降到 700 KB
  • 内置音效两个 wav:pending/error → attention.wav,completed → complete.wav

已知限制

文字动效只在左侧会话栏生效(tab 行座位的 label 由宿主渲染);顶栏位置尚未实现;.mp3/.wav 必须走插件自己注册的 /hotlist-sound 路由(宿主素材路由只认图片);静态路由不鉴权,只放公开素材。

完整文档见 README、ARCHITECTURE、EXTENDING。

Better Notice v4.5.0

Choose a tag to compare

@MeruSu MeruSu released this 11 Nov 06:10

Better Notice v4.5.0

首个公开发布版。DSH(DeepSeek Harness)Web UI 的插件:把会话状态统一成视觉与听觉的提醒——对话区 tab 座位、左侧会话栏状态图标、每个状态的提示音、弹出图像。

它做什么

七类状态,三个显示面:

类别 什么时候出现 座位 侧栏图标 弹出图 音效
📌 pinned 你在设置里钉住的会话 ✅ ✅ — —
⛔ error Agent 报了错,10 分钟过期 ✅ ✅ ✅ 🔈
🔐 pending 等你审批 / 回答 / 过方案 ✅ ✅ ✅ 🔈
✅ completed 看到它跑完,7 分钟内 ✅ ✅ ✅ 🔈
⏳ running 正在干活(含子代理在跑) ✅ ✅ — —
💤 idle 空闲,且在「最近对话展示时间」内 ✅ ✅ — —
⭐ favorite 预留 — — — —

判定优先级固定 pinned > pending > error > completed > running > idle,展示顺序由每类的 order 决定。

安装

需要 Node 22+ 与一个跑得起来的 DSH Web profile(本版在 DSH 0.2.2-rc.1 上核对)。

git clone https://github.com/MeruSu/better-notice.git C:\src\better-notice
dsh plugin --profile <profile> add C:/src/better-notice
dsh --profile <profile>          # 必须重启:bundle patch 与 host 路由只在启动时读

装完自检(浏览器控制台):

window.__HOTLIST_VERSION__        // '4.5.0'
typeof window.__HOTLIST__         // 'object'
await fetch('/hotlist-sound/attention.wav').then(r => [r.status, r.headers.get('content-type')])
// [200, 'audio/wav']

页面顶部不应出现 Failed to load plugins。设置入口:账号菜单 →「设置」→ 左导航「热表」。

尚未发布到 npm,所以现在只能用上面的目录方式安装;等发布后 dsh plugin --profile <profile> add @merusu/dsh-better-notice 才成立。

本版变更

  • 包名 @local/dsh-hotlist → @merusu/dsh-better-notice,package.json 的 version 与 VERSION 对齐到 4.5.0。
  • 设置页删掉「浮层尺寸」那一栏;字段与取中值的算法保留,可经 API 改。
  • 内置音效从 21 条 mp3(每类 7 条随机)换成两个 wav 一对一映射:pending / error → attention.wav,completed → complete.wav。
  • 随仓库附 tools/meru-tts/:生成这两条提示音用的 TTS 小工具(不参与插件运行)。
  • 文档重写:README 面向使用者,CONTRIBUTING 说明开发与提交约定(含「宿主会调用的回调必须传函数」这条踩过的坑),ARCHITECTURE / TESTING / EXTENDING 同步。

验证情况

  • node --check client.js / index.js / test/classify.test.mjs → exit 0
  • node test/classify.test.mjs → PASS — 58 groups
  • 静态闸门(未声明常量 / 已删字段 / 模块形状)→ clean
  • 全新 profile 从零安装:dsh plugin --profile meru-clean add <目录> 一次成功;启动后 window.__HOTLIST_VERSION__ = "4.5.0"、无横幅、设置页 7 卡 14 行齐全、/hotlist-sound/attention.wav → 200 audio/wav 53804B、/hotlist-sound/../package.json → 404
  • 真机界面(tab 座位、侧栏图标、设置页、音效播放)在开发期反复验证过;本版改动只涉及删一行 UI、换音效映射与改名

已知限制

完整清单见 README「已知限制」。最值得先知道的三条:

  • Alt+1..9 直跳未实现(网页端裸 Alt+数字被宿主白名单拒,dsh-session-hotkeys 又在 capture 阶段抢键)。提供 Alt+Shift+[ / ] 循环与 Alt+Shift+S 手动弹浮层。
  • 「刚完成」只保留 7 分钟(可调 1–1440),且只覆盖 agent 级错误;工具执行失败不算错误。
  • 设置存在 localStorage,与 GUI 端口绑定;换端口打开会看起来「设置丢了」。