前言¶
在 DeepSeek Harness(DSH)的 Web 会话正文中,文件引用通常以 Markdown 链接、@文件 引用或工具行的文件卡片形式出现。手动复制路径、在资源管理器中定位或用默认程序打开这些文件,需要多次点击和切换窗口。dsh-better-right-click 为这三类文件引用增加了右键菜单,提供「复制绝对路径」「在资源管理器中显示」「用默认应用打开」三项操作。
插件定位¶
dsh-better-right-click 是一个针对 Windows 平台的 DSH 插件,由维护者 xmmtr 开发。它通过在文件引用节点上拦截右键事件,扩展系统原生菜单,让用户可以直接在对话正文中完成文件路径操作。插件以组合包 patch 的方式声明依赖(dsh.bundle.patch = ./cordis.patch.yml),由 DSH 插件管理器统一安装与卸载。
核心功能¶
右键菜单三项操作¶
对文件引用点右键,会弹出三项菜单:
- 复制绝对路径:将规范化后的绝对路径写入剪贴板。
- 在资源管理器中显示:Windows 使用
explorer.exe /select,<path>打开并选中文件;macOS 使用open -R;Linux 使用xdg-open打开父目录。 - 用默认应用打开:Windows 通过 PowerShell
Start-Process -FilePath打开文件;macOS 使用open;Linux 使用xdg-open。
命中的节点类型¶
- 正文 Markdown 链接(蓝色文件名)
@文件引用- 工具行里的文件卡片
对正文空白、输入框、代码块、按钮点右键,插件不拦截,保持系统原生菜单。
菜单可配置¶
右键菜单底部提供「菜单设置…」入口,可勾选要显示的项:
- 复制绝对路径
- 复制相对路径
- 用默认应用打开
- 打开方式列表
- 在资源管理器中显示
默认全开。配置保存在 ~/.dsh/better-right-click/config.json,修改后立即生效,无需重启。
文件管理器模式¶
在菜单设置中可设置文件管理器行为:
auto:自动检测当前系统默认文件夹打开程序(如 Directory Opus、XYplorer、Total Commander、Files 等),在菜单中添加「用 XXX 打开所在位置」。explorer:始终使用 Windows 资源管理器。custom:使用自定义命令,%1代表文件路径。
打开方式锁定¶
右键菜单顶部可显示「用 X 打开(已锁定)」的固定项。锁定按扩展名生效,只影响本插件菜单,不会修改 Windows 的双击默认程序。锁定规则保存在配置文件的 pins 字段中,可直接编辑。
其他程序选择¶
右键菜单末尾提供「其他程序…」入口,弹起 Windows 原生文件选择框,可指定任意 .exe 程序(包括便携版或免安装软件)。选中后 Windows 会记住该程序,下次自动出现在列表中。
安装与启用¶
插件声明了 dsh.bundle.patch,因此是标准的组合包 patch 型插件,由 DSH 插件管理器安装与卸载。
从 npm 安装:
& 'D:\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd' plugin --profile <profile> add dsh-better-right-click
从本地 tgz 安装:
& 'D:\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd' plugin --profile <profile> add "C:\path\to\dsh-better-right-click-0.6.6.tgz"
在 DSH Web「插件」页中搜索或粘贴插件信息也可完成安装。
卸载:
dsh plugin --profile <profile> remove dsh-better-right-click
卸载后需重启 DSH,file-menu 配置行会随包一起移除。
配置文件预置¶
团队可预先配置 cordis.patch.yml,在插件安装时自动应用设置:
# cordis.patch.yml
- id: file-menu
name: dsh-better-right-click
config:
items: [copy-absolute, copy-relative, reveal, open-default, open-with]
fileManager:
mode: auto # auto | explorer | custom
command: '' # mode=custom 时生效,%1 代表文件路径
items 可选值为:copy-absolute、copy-relative、reveal、open-default、open-with。非法项会被忽略,items 为空时回落全开。
典型用法¶
- 在 DSH 会话正文中找到文件引用(例如 Markdown 链接、
@README.md、工具行的文件卡片)。 - 在该引用上点击右键,弹出扩展菜单。
- 点击「复制绝对路径」,路径自动写入剪贴板,可直接粘贴到其他应用。
- 点击「在资源管理器中显示」,Windows 资源管理器打开并选中该文件。
- 点击「用默认应用打开」,用系统关联的应用启动文件。
如需固定某个扩展名的打开方式,可在「菜单设置…」中点击「锁定打开方式」,选择程序后保存。以后该类型的文件都会优先显示固定项。
适用场景与注意¶
适用场景¶
- 需要在对话正文中快速复制文件路径并粘贴到编辑器或命令行。
- 需要在不离开 DSH 界面的情况下定位或打开文件。
- 团队协作中,需要统一文件引用的右键菜单行为。
注意事项¶
- 平台限制:插件仅支持 Windows 10 / 11,依赖系统自带的 PowerShell 5.1。macOS 和 Linux 不支持资源管理器定位、已注册程序列表、文件管理器检测等功能,只有「复制绝对路径 / 复制相对路径」可用。
- 版本要求:适配 DSH 版本
>=0.2.1-rc.2 <0.3.0。插件声明了"dsh": ">=0.2.1-rc.2 <0.3.0",安装前需确认宿主版本。 - 权限与安全:插件以当前 DSH 进程权限运行,安装前建议检查源码与许可证。
- 路径识别:相对路径依赖活动会话工作区,客户端从 DSH
sessions服务读取cwd,拿不到时退回进程工作目录。只对真正的文件引用生效,正文中的普通文本路径必须为单个 token(不含空白)、含路径分隔符、末段带扩展名。 - 代码块与输入区:插件不拦截代码块(
pre)、输入区和contenteditable内部的右键事件,保持系统原生行为。
短结尾¶
dsh-better-right-click 通过在 DSH 会话正文的文件引用上提供右键菜单,减少了在多个窗口间切换的操作成本。它支持复制路径、资源管理器定位、默认应用打开等基础功能,并提供菜单配置、打开方式锁定、自定义文件管理器等高级选项。插件以组合包 patch 的形式声明依赖,由 DSH 插件管理器统一管理安装与卸载,适合需要在对话正文中频繁操作文件的用户。
目录页:https://www.skillhub.cn/plugins/xmmtr/dsh-better-right-click
GitHub:https://github.com/xmmtr/dsh-better-right-click