前言¶
在 DeepSeek Harness(DSH)里用 Web 界面跑对话时,提问和回答会整屏铺在界面上。工位旁边有人、共享屏幕或录屏时,这些内容很容易被旁人扫到。关掉窗口或换应用能躲一时,但日常开发又需要界面一直开着。
下面介绍的是客户端插件 dsh-chat-privacy-blur(仓库 outmanwt/dsh-chat-privacy-blur):在对话列表里用 CSS 模糊提问与回答行,只有鼠标悬停或键盘聚焦到某一行时才显示该行原文;离开窗口时还会临时「上锁」,避免失焦后某条仍露着。它不改动消息正文在 DOM 里的内容,也不联网。
这是什么¶
DSH Chat Privacy Blur 由维护者 outmanwt 发布,分类为客户端,许可证 MIT。插件通过 DSH 的客户端模块加载器注入 Web GUI,在输入框下方(conversation.composer.dock)增加一个模式切换控件,并用样式表控制哪些对话行被画成模糊。
一句话:给 DSH Web 对话加一层显示层隐私遮挡,适合开放办公、共享屏幕和录屏场景;不是访问控制,文字仍可选中、复制或被辅助技术读取。
核心功能¶
三种模式¶
输入框下方按钮在三种模式间循环,选择写入浏览器 localStorage,键名为 dsh-chat-privacy-blur:mode;删除该键后恢复默认「悬停显示」。
| 模式 | 行为 |
|---|---|
| 关闭 · Off | 不遮罩,与未装插件时一致 |
| 悬停显示 · Hover to reveal(默认) | 全部行模糊;悬停或 Tab 聚焦到某行才显示该行;窗口失焦时见下文「失焦上锁」 |
| 始终模糊 · Always blurred | 全部行保持模糊,指针停在上面也不显示 |
失焦上锁¶
悬停和键盘聚焦在窗口失去焦点后仍可能让某行保持可读。因此在窗口失焦、页面被隐藏(例如 Alt+Tab、切应用、标签页不可见)时,遮罩会临时按「始终模糊」绘制,控件 tooltip 会说明已上锁;回到窗口后恢复你选的模式。若当前模式是「关闭」,不会被强行打开遮罩。
模糊范围¶
插件根据宿主已发布的对话行属性选择要遮罩的行:
| 行属性 | 内容 |
|---|---|
data-chat-flow-kind="user" |
用户提问 |
data-chat-flow-kind="assistant-step" |
助手回答(含折叠成小卡的最终回答) |
data-chat-flow-kind="steering" |
回合进行中插入的补充输入 |
不遮挡:工具调用卡片、思考过程外层、侧边栏会话列表、输入框、/goal 输入条与轮次预览。
若宿主日后改了这些属性名,插件会退化为不模糊任何行,而不是破坏页面。
其它行为¶
- 只改变「画出来」的像素;样式表随控件挂载与卸载,不留全局残留。
- 跟随宿主主题令牌(
--dsw-alias-*)与界面语言,支持浅色/深色。 - 模糊半径默认
6px;可通过 CSS 自定义属性--dsh-chat-blur调整,例如主题层写入:
:root { --dsh-chat-blur: 10px; }
- 数据与隐私:不发起网络请求、无分析、不访问凭据、不写宿主会话状态;模式仅存页面
localStorage。
安装与启用¶
插件以 GitHub Release 上的固定包名 dsh-chat-privacy-blur.tgz 分发,未发布到 npm。安装后按宿主提示刷新或重启,输入框下方才会出现模式按钮。
在 DSH 里对 AI 说:
安装插件 https://github.com/outmanwt/dsh-chat-privacy-blur/releases/latest/download/dsh-chat-privacy-blur.tgz
或调用插件管理工具:
{
"action": "install_bundle",
"target": "https://github.com/outmanwt/dsh-chat-privacy-blur/releases/latest/download/dsh-chat-privacy-blur.tgz"
}
CLI 自行管理的 profile:
dsh plugin --profile YOUR_PROFILE add https://github.com/outmanwt/dsh-chat-privacy-blur/releases/latest/download/dsh-chat-privacy-blur.tgz
桌面版应通过正在使用的应用的插件管理器安装到当前 profile,不要另建无关的 web profile。
兼容说明:在 DSH 0.2.1-rc.4(桌面版 Web GUI)上开发;依赖客户端模块加载器、conversation.composer.dock、locale 词条注册及上述对话行属性。其它版本未验证;最坏情况是遮罩失效,不影响页面功能。
典型用法¶
- 按上一节任一方式安装 bundle,刷新或重启 DSH Web 界面。
- 在输入框下方找到模式按钮,在「关闭 / 悬停显示 / 始终模糊」间切换;默认「悬停显示」。
- 日常录屏或共享屏幕时保持「悬停显示」或「始终模糊」;需要长时间阅读某条时,将指针停在该行或 Tab 聚焦到该行。
- 临时切到其它应用前无需手动关遮罩:失焦后会自动全屏模糊,回到窗口再继续用你保存的模式。
- 需要更强模糊时,在主题或自定义 CSS 中设置
--dsh-chat-blur(默认6px)。
适用场景与注意¶
适合:开放工位、演示/录屏时降低对话内容被旁观的概率;希望快速切换「全显 / 悬停才显 / 全糊」且按浏览器记住偏好。
务必了解:
- 插件在当前 DSH 进程与 Web 前端里运行;安装前建议阅读仓库源码与 MIT 许可证,确认符合你的安全与合规要求。
- 遮挡仅是视觉层;DOM 中的文本仍在,复制、选中、屏幕阅读器等不受此插件限制,不能替代真正的保密或权限控制。
- DSH 生态强调「一切皆插件」;社区目录站点(如 SkillHub 上的插件页)与 DeepSeek / 幻方无官方从属关系,本文安装方式以 GitHub README 为准。
结尾¶
dsh-chat-privacy-blur 用纯前端样式在 DSH Web 对话里默认模糊提问与回答,悬停或聚焦单行才显示原文,并在失焦时自动收紧遮罩,改动面小、可随浏览器记住模式。需要详情、Issue 与 Release 包时,见插件目录页与仓库:
- 目录页:https://www.skillhub.cn/plugins/outmanwt/dsh-chat-privacy-blur
- GitHub:https://github.com/outmanwt/dsh-chat-privacy-blur