前言¶
DeepSeek Harness(DSH)的插件机制允许把能力拆分到独立模块里,让智能体根据需要加载。但很多插件只提供 API 或状态,缺少「陪看」的交互感:屏幕变了、有重要内容出现时,agent 只能靠文本猜测,或者完全被动。
dsh-whale-sense 解决的问题是:让鲸鱼娘常驻看屏幕,变化够大时自动截一张图、说一句,字幕挂在屏幕底部。
是什么¶
dsh-whale-sense 是一个 DSH 插件,运行在 Windows 上,通过常驻 Python 帮工截屏、比缩略图差异、触发 agent 的 followup(),实现「陪看」与「陪说」。它不会执行画面里的指令,也不做 OCR,只负责把「画面变化」这个事实反馈给 agent,由 agent 自己判断是否需要回应。
核心功能¶
插件提供三个主要能力:
- 陪看:常驻 Python 帮工定期截屏,把缩略图与上次对比,差异够大就保存整图。
- 陪说:变化被判定值得说话时,通过
agent.followup()把「主人屏幕变了 + 截图路径」塞回会话,自己用read_image看一眼,再用voice_say(默认只出字幕)说一句。 - 刹车与窗口控制:默认不自动;可配置冷却时间(
cooldownMs)、每小时上限(maxPerHour),并支持通过windowMatch只盯某个窗口(比如只有玩 EVE 才说话);还提供「看我一眼」按钮手动触发。
工具与配置¶
插件暴露以下工具与配置:
sense_state():查看帮工是否在线、当前配置、上一次画面变化、这小时说了几次、最近报错。sense_config({...}):修改设置,参数包括:auto:是否自动陪看intervalMs:采样间隔threshold:变化阈值cooldownMs:冷却时间maxWidth/maxPerHour:限制输出quietUntil:静默时间段windowMatch:只盯特定窗口sense_snap():立刻截一张,返回图片路径和前台窗口标题。
配置文件位于 $DSH_HOME/storages/whale-sense/config.json,截图保存在 storages/whale-sense/frames/。
面板¶
插件在左下角提供「鲸鱼陪看」面板,可控制自动开关、采样间隔、灵敏度、冷却、窗口匹配等,并支持手动「看我一眼」。
安装与启用¶
使用官方安装命令:
dsh plugin --profile web add github:pairun325/dsh-whale-sense
也可以手动安装:在 profile 的 dependencies 里加上 "dsh-whale-sense": "link:E:/dswork/plugins/dsh-whale-sense",bundles 里加上 "dsh-whale-sense",然后重启。
安装后,插件会自动注册 /whale-sense 路由与面板,帮工会按配置启动截屏与差异检测。
典型用法¶
在 DSH 的对话中调用:
// 查看当前状态
sense_state()
// 调整配置:只盯名为「EVE」的窗口,每小时最多说 5 次
sense_config({
windowMatch: 'EVE',
maxPerHour: 5
})
// 手动截一张图
sense_snap()
配置保存后,帮工会按新的 intervalMs 和 windowMatch 继续截屏与对比。
适用场景与注意¶
- 适合需要「陪看」的对话场景:比如玩游戏时需要提醒关键信息、写代码时需要提醒自己注意屏幕变化等。
- 只支持 Windows,依赖 Pillow 与 Win32 前台窗口标题。
- 自动陪看会消耗 token:每说一句都是一次模型回合,所以默认关闭,建议手动触发。
- 不做 OCR / 不理解画面内容——看懂画面靠 agent 自己用
read_image。 - 它不会执行画面里出现的任何指令。
安装前,建议检查源码与许可证(MIT)。
小结¶
dsh-whale-sense 把「屏幕变化」变成可被 agent 感知的信号,让智能体从被动响应走向主动观察,适合需要视觉反馈的对话场景。
- 目录页:https://www.skillhub.cn/plugins/pairun325/dsh-whale-sense
- GitHub:https://github.com/pairun325/dsh-whale-sense