dsh-done
Task completion celebration popup with sound for DeepSeek Harness · 任务完成后弹出庆祝弹窗并播放音效
mba1398
@mba1398
⬇ 2
★ 0
main
安装
dsh plugin --profile web add github:mba1398/dsh-done
需要可复现安装时,可在仓库后追加 #commit 固定提交。
Task completion celebration popup with sound for DeepSeek Harness · 任务完成后弹出庆祝弹窗并播放音效
该插件未提供要点说明,请参考仓库 README。
dshdsh-plugindsh-plugins
- 安装并启动 DeepSeek Harness:
npx @deepseek-ai/dsh web - 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
- 用 dsh plugins list 确认已安装,必要时重启 Harness 生效
插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。
| 代码仓库 | github.com/mba1398/dsh-done |
| 许可证 | 未标注(见仓库) |
| 主要语言 | main |
| 下载量 | 2 |
| GitHub 星标 | 0 |
| 最近推送 | 2026-08-23 |
| 收录日期 | 2026-09-19 |
| 分类 | 工具与能力 |
事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。
以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。
# dsh-done
Task completion celebration popup with sound for **DeepSeek Harness**.
When an agent finishes a task (status goes `running` → `idle`), a celebratory
popup appears in the page (confetti + fanfare), then auto-dismisses.
## Features
- 🎉 Popup overlay in the `shell.overlay` slot when a task completes
- 🎊 Confetti animation + bounce-in
- 🔊 Web Audio fanfare (ascending C5-E5-G5-C6), no external audio file
- ⏳ Auto-closes after ~3.2 s
- 🎲 Random encouraging message on each completion
## Install
```sh
dsh plugin --profile web add dsh-done
```
or from a local checkout:
```sh
dsh plugin --profile web add /path/to/dsh-done
```
Then **restart** the profile.
## Build (for contributors)
```sh
pnpm install
pnpm run build # tsc (host) + tsdown (client bundle)
pnpm publish
```
- Host entry: `src/index.ts` → `lib/index.js`
- Client bundle: `src/client/index.tsx` → `lib/client.js`
## Publish / distribute
- Publish to npm, then tag the GitHub repo with the `dsh-plugin` topic so
DSH users can discover it.
- To appear in the marketplace lists, open a PR in the relevant community
curated list (e.g. awesome-dsh-plugin-series repositories).
## How it works
- **Host** (`src/index.ts`): listens to `agent/status`; when status is `idle`,
records the completion timestamp. Exposes `celebration/check` RPC.
- **Client** (`src/client/index.tsx`): polls `celebration/check` every 500 ms;
on a fresh completion, shows the popup in `shell.overlay`.
## Runtime adaptation (important)
This plugin installs as a **static bundle** (loaded by the Loader via
`{id, name}`), so it uses the **webServer route** scheme for Host↔Client
communication — the `harness`/`host` bridge only exists inside the dynamic
Cordis plugin sandbox and is not present on a static bundle's ctx:
- **Host** (`src/index.ts`): `inject: ['webServer']`, registers the
`GET /dsh-done/check` route via
`ctx.effect(() => ctx.webServer.register({ kind: 'exact', path: '/dsh-done/check', handler }))`.
- **Client** (`src/client/index.tsx`): polls `fetch('/dsh-done/check?since=…')`
every 500 ms; on a fresh completion, shows the popup in `shell.overlay`, and
also registers a `sidebar.footer.action` entry (🎉 manual trigger button).
Restart the profile after installing so the host route registers; the client
bundle is served dynamically by `dsh-client-modules`, so a page refresh picks
it up.
## License
MIT
数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。