DeepseekHarnessPlugins/Notification ↗★ 0
dsh-task-notify
Task-completion system notifications for DeepSeek Harness — macOS Notification Center, Windows Toast, and mobile push via Bark / ntfy / ServerChan / webhook
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:DeepseekHarnessPlugins/Notification说明文档
阅读完整 README ↗配置
编辑 ~/.dsh/settings.yaml,添加 task-notify: 段:
task-notify:
enabled: true
notifyOn: [idle, error, blocked] # 可选事件:idle error blocked goal-completed
agents: root # root=只通知顶层代理 | all
coalesceWindowMs: 2000 # 同会话窗口内合并重复通知
desktop:
enabled: auto # auto | on | off(auto 按平台探测)
sound: true # macOS 播放 Glass 提示音;Windows 静音开关
format:
time: short # hidden | short | full —— 正文尾部时间样式
showDuration: true # 负载携带 durationMs 时追加「用时 X」
icons:
enabled: true # 图形图标总开关
urlTemplate: "" # 远程图标模板,如 https://host/icons/{event}.svg
bark: # iOS:App Store 安装 Bark 后复制 deviceKey
enabled: false
server: https://api.day.app
deviceKey: "你的deviceKey"
sound: "" # 可选铃声名
ntfy: # Android/iOS:ntfy App 订阅 topic
enabled: false
server: https://ntfy.sh
topic: "只有你知道的随机topic"
token: "" # 私有服务器时可选
serverchan: # 微信推送:sct.ftqq.com 获取 SendKey
enabled: false
sendKey: ""
webhook: # 通用 JSON POST
enabled: false
url: ""
headers: {}
优先级:patch 显式配置 > settings.yaml > 环境变量(如
DSH_TASK_NOTIFY_BARK_DEVICE_KEY、DSH_TASK_NOTIFY_ICONS_URL_TEMPLATE)>
内置默认值。
通知排版
通知正文由 composeBody 统一组装为:内容摘要 · 时间 · 用时 X。
format.time控制时间样式:short=HH:mm(默认)、full=YYYY-MM-DD HH:mm:ss、hidden=不显示;对应环境变量DSH_TASK_NOTIFY_FORMAT_TIMEformat.showDuration:负载带durationMs时追加「用时 X」(42秒 / 3分05秒 / 1小时02分)- 时间与用时后缀不参与截断——
maxBodyLength只作用于内容摘要, 任何配置下时间都完整可见;对应环境变量DSH_TASK_NOTIFY_FORMAT_SHOW_DURATION
文案与图标
| 事件 | 标题 | 内置图标 |
|---|---|---|
| idle | 任务完成 | 绿底白对勾 |
| error | 任务出错 | 红底白叉 |
| blocked | 需要确认 | 琥珀底白色暂停 |
| goal-completed | 目标达成 | 蓝底白靶心 |
| 其他回退 | 任务通知 | 灰底白点 |
标题一律纯文本(无 emoji)。图标资产在包内 assets/icons/
(SVG 矢量源 + 64×64 PNG,node scripts/build-icons.mjs 可再生成)。
各通道使用方式:
- Windows Toast:PNG 以
appLogoOverride嵌入通知 - Bark / ntfy:配置
icons.urlTemplate后自动附加icon参数 /X-Icon头(需公网可访问的图片地址) - 通用 Webhook:JSON 载荷附带
icon与内联iconSvg字段 - macOS:系统不提供自定义通知图(平台限制),仅纯文本 + 提示音