dsh-turn-reminder
Manifest validUser-attention notifications for DeepSeek Harness (dsh) web: turn end, approval requests, and model questions — in-page toast + OS-level browser notification
dsh-turn-reminder
User-attention notifications for DeepSeek Harness (dsh) web. Whenever a session blocks waiting for you, this plugin reminds you: an in-page toast while the page is visible, an OS-level browser notification while the page is hidden (click it to jump back; falls back to the toast when the system channel is unavailable).
What it watches
| Channel | Trigger | Notes |
| --- | --- | --- |
| turnEnd | agent/status event, running → idle | A turn finished and the session waits for input. Blocked goals and errored turns end the turn, so they are covered transitively. |
| approval | approval/request waterfall (pass-through listener) | Tool approvals, sandbox escalations, etc. These block mid-turn — the agent never goes idle, so a turn-end watcher alone misses them. |
| question | tools/pre-execute waterfall, filtered on ask_user_question (pass-through listener) | The model asks you a question; also blocks mid-turn. |
| plan | tools/pre-execute waterfall, filtered on exit_plan_mode (pass-through listener) | The model presents a plan for review. The review panel opens inside the tool call, so this also blocks mid-turn — earlier versions wrongly assumed turnEnd covered it. |
Notification bodies carry detail: approvals show the tool name plus the asker's reason, questions show the first question's text, plan reviews show the plan's first markdown heading (all clipped at 60 chars). Counters are per session, so multiple tabs each remind only about their own session.
Usage
A 🔔 control sits at the right end of the composer tool row. Click it once to grant the browser Notification permission (browsers require a user gesture; the permission persists per origin). The in-page toast dismisses itself after 8 seconds, or on click.
Build & install
npm install
npm run build # tsc (host half) + tsdown (client closure-factory bundle)
npm pack # produces dsh-turn-reminder-0.1.0.tgz
dsh plugin --profile web add dsh-turn-reminder-0.1.0.tgz
Then restart dsh web — bundle plugin rows load at boot. After that it serves every session automatically.
How it works
- Host half (bundle layer): listens to
agent/status/approval/request/tools/pre-execute(ask_user_questionandexit_plan_mode) across all agents, keeps per-session counters per channel, and exposes them through a Typert Remote serviceturnReminder/poll(agent-scoped; the wire argumentagentIdis the session id). - Client half: registered into the session-scoped
conversation.input.rightslot, whose standard props carrysessionId— that is how the page knows which session to poll. Polls every 1.5 s; on a counter increment, fires the toast or a systemNotification(per-channel tags so different kinds don't replace each other). - Both waterfall listeners are pass-through (
return next()); they observe, never decide.
Notes
- Counters only cover events after the plugin loaded; they reset on process restart, and the first poll only records a baseline (no catch-up reminders for history).
- Tested against dsh
0.1.0-rc.6. Reinstalling from a local tarball needs a version bump (pnpm dedupes same name+version and keeps the old build).
License
MIT
Similar plugins
by omdsh-dev
Desktop notifications for DeepSeek Harness turn completions, with per-outcome controls and include/exclude keyword rules.
★ 83
MIT
JavaScript
Sep 1, 2026
dsh plugin --profile web add dsh-notificationBrowser notification plugin for DeepSeek Harness - system toasts when a task finishes, a run errors, or your input is needed (question / approval / plan review), click to open the session, per-type to
★ 0
↓ 161/wk
dsh plugin --profile web add dsh-notify-xcby Aisland-SJL
🔔 Cross-window completion & approval notifications for DeepSeek Harness — popup reminders that bring you back to DSH, Codex/WorkBuddy style.
★ 18
MIT
TypeScript
Aug 16, 2026
dsh plugin --profile web add dsh-reminderby c-ling
DeepSeek Harness 消息提醒插件:回合结束或等待确认时向浏览器、系统、飞书/钉钉/企业微信/通用 Webhook 发送通知
★ 7
↓ 107/wk
MIT
JavaScript
Aug 21, 2026
dsh plugin --profile web add dsh-plugin-notifyby MaRi23333
Unofficial host-side ServerChan alerts for DeepSeek Harness: sends a mobile reminder when an approval, plan review, or question stays unanswered past a configurable threshold, even with the browser cl
★ 0
↓ 193/wk
MIT
TypeScript
Sep 9, 2026
dsh plugin --profile web add dsh-serverchan-watchdogby YiMlT
DeepSeek Harness 通知插件:在 **任务完成 / 任务出错 / 运行中 / 等待审批 / 等待回答** 时提醒用户。 通知标题为对话标题;系统通知与自定义通知均支持**点击跳转到对应会话**。
★ 3
MIT
JavaScript
Sep 3, 2026
dsh plugin --profile web add dsh-notify-yimit