前言¶
DeepSeek Harness(DSH)把对话放在侧边栏里管理,日常开发够用,但对话一多、文件一杂,几个缺口会反复出现:找不到某次对话对应的本地目录;删对话不可恢复;交付物卡片只能点开,缺少按类型的右键操作;链接只能默认浏览器打开;想让 agent 统一遵守安全基线,却只能在每个工作区各写一份 AGENTS.md。
dsh-steward(对话管家)是社区维护者 John4874314 发布的 DSH 客户端插件,用一个 bundle、一个开关、一个设置页,把对话文件夹、可恢复删除、交接日志、文件与链接右键菜单、可选的全局运行守则等能力收在一起。下面介绍它是什么、能做什么、如何安装与典型用法。
这是什么¶
插件仓库:John4874314/dsh-steward。SkillHub 目录页:dsh-steward。许可证 MIT,当前版本 1.4.0(以仓库 package.json 为准)。要求 DSH 0.2.1-rc.1 或更新,Node ≥ 20;核心功能在 Windows / macOS / Linux 均可使用,部分菜单项为 Windows 专用(见后文)。
官方简介:Conversation steward for DeepSeek Harness — 每个对话一个文件夹、可恢复删除、按文件类型分组的右键菜单,以及需手动开启、写入全局 AGENTS.md 的三条运行守则基线。
尚未发布到 npm,不要用 dsh plugin add dsh-steward 这类仅凭名称的安装方式,应按 README 的 tarball 或 github: 简写安装。
它解决什么问题¶
相对 DSH 原生侧边栏对话管理,插件针对 README 中归纳的五类痛点:
- 没有「每个对话一个目录」,难以在资源管理器里定位某次会话产出的文件。
- 删对话不可逆,误删即丢记录。
- 文件卡片缺少「打开文件夹 / 复制路径 / 另存为」等操作,且未按代码、文档、压缩包等类型分组入口。
- 对话内链接只能点开,不能换浏览器、只复制 URL 或复制为 Markdown 链接。
- 缺少统一入口把同一套 agent 安全基线写进全局
AGENTS.md。
核心功能¶
对话管理¶
每个新对话一个文件夹(默认关闭):设置 → 对话管家 → 对话管理 → 「每个新对话创建一个文件夹」。通常在发出第一条消息时建目录;配置存 $DSH_HOME/chat-manager-config.json。
交接日志.md(在开启文件夹时默认开启):在同一会话文件夹内自动生成,含概览、产出文件清单、按时间顺序的对话与工具调用摘要;剔除 DSH 注入的 <system-reminder>,长消息与条数有截断策略。历史会话可补导:
/chat-session-log --session=<会话 id> [--force] [--folder=<路径>]
删除对话(可恢复):对话行「⋯」→ 「删除对话」;会话记录移入 $DSH_HOME/trash/,设置页「回收站」可恢复或彻底删除。可选同时删除该对话文件夹。批量删除:
/chat-delete-batch --sessions=<id1,id2,...> [--with-folder]
打开该对话的文件夹:仅对已登记文件夹的会话显示菜单项。
文件与链接右键¶
范围包括对话内文件卡片、变更审查行、右侧文件树;1.4.0 起支持消息内图片右键(通过 sha256 在 $DSH_HOME/attachments/v1/ 寻址)以及正文路径(如 @docs/PRD.md、绝对路径)右键打开/定位/另存为/复制路径。
按扩展名分组菜单:代码(复制代码、Markdown 代码块)、文档(复制内容)、压缩包(解压到此处,Windows 用系统 tar.exe)、图片/音视频/可执行/其它等;通用项含打开、复制路径、复制为 @ 引用、另存为、重命名、移到回收站等。
网址右键:默认浏览器打开、复制网址、复制为 Markdown 链接;用其它浏览器打开仅 Windows(读注册表)。
运行守则(可选)¶
三原则安全基线写入全局 AGENTS.md,默认关闭(1.3.0 起);需在设置页显式开启,避免装插件即改全局守则。
其它¶
README 还提到备份管理、设置页内只读「体检」,以及 npm test 的 9 条契约断言;装完后可在设置 → 对话管家 → 体检做只读检查。
平台差异(节选)¶
| 功能 | Windows | macOS / Linux |
|---|---|---|
| 对话文件夹、交接日志、可恢复删除 | ✅ | ✅ |
| 文件右键(打开、复制路径等) | ✅ | ✅ |
| 解压到此处 | ✅ | 隐藏 |
| 用其它浏览器打开 | ✅ | 隐藏 |
| 在终端中打开 | ✅ | 隐藏 |
安装与启用¶
把 <profile> 换成你的 profile(桌面端常见 desktop,Web 端常见 web)。
方式一:tarball(推荐,不依赖 git)
dsh plugin --profile <profile> add https://codeload.github.com/John4874314/dsh-steward/tar.gz/refs/tags/v1.4.0
方式二:github: 简写(需本机有 git 且能连 github.com:443;国内若 ERR_PNPM_GIT_RESOLVE_FAILED 可改方式一)
dsh plugin --profile <profile> add github:John4874314/dsh-steward
装完后重启 DSH;仅刷新页面不会重新扫描客户端 bundle。
不信任第三方插件时,可在克隆仓库后本地执行 npm test(README 说明无需额外依赖),或使用设置页体检。
典型用法¶
- 开启「每个新对话创建一个文件夹」与「交接日志.md」,长任务结束后在资源管理器打开该对话文件夹,把
交接日志.md交给同事或日后自己续作。 - 在文件树或交付物上右键:代码文件复制为 Markdown 块粘贴到 issue;压缩包在 Windows 上「解压到此处」。
- 误删对话时到设置 → 回收站恢复;批量清理旧会话用
/chat-delete-batch。 - 需要全局 agent 守则时,在设置页打开运行守则开关,再确认
AGENTS.md内容是否符合团队规范。
适用场景与注意¶
适合长期在 DSH 里做多轮对话、产出大量本地文件、需要可恢复删除与可读交接摘要的开发者。SkillHub 等社区目录与 DeepSeek / 幻方无官方从属关系,插件来源以 GitHub 仓库与许可证为准。
客户端插件以当前 DSH 进程权限运行,安装前建议阅读源码与 MIT 许可证;带账号密码的链接会弹确认框,密码界面打码显示。
结尾¶
dsh-steward 把 DSH 对话相关的目录化、删除回收、交接日志、右键工作流和可选全局守则集中在一个客户端插件里,安装以 tarball 或 github: 为准并记得重启宿主。
- 目录页:https://www.skillhub.cn/plugins/John4874314/dsh-steward
- 仓库:https://github.com/John4874314/dsh-steward