中文EN

dsh-session-menu

ui已测通过npmMIT

给 DSH 侧边栏的会话右键菜单补上标记未读、复制会话信息、在访达中显示或换 IDE 打开、永久删除(连子会话一起删),并给会话行加上报错与未读状态点、悬浮卡信息、归档行的一键删除,以及一个可逐项开关菜单的设置面板;界面提供中英文两套文案。

下载量 / Downloads
1,749
依赖体积 / node_modules
6.68 MB
测试时间 / Tested
2026-11-06
DSH 版本 / Version
0.2.2-rc.1

安装

dsh plugin --profile web add dsh-session-menu

沙箱测试结果

阶段结果
1 安装✓
2 列装✓
3 挂载✓
4 启动—

四阶段在隔离沙箱里跑:安装(有网)→ 列装 → 挂载 → 启动(后三步断网)。

README

<div align="center">

<img src="https://raw.githubusercontent.com/big-head-pigeon/dsh-session-menu/main/icon.svg" width="96" alt="dsh-session-menu">

dsh-session-menu

给 DSH(DeepSeek Harness)侧边栏的会话右键菜单补上标记未读、复制会话信息、在文件管理器中显示或换 IDE 打开、

永久删除会话;每行会话还加了状态点、悬浮卡信息和归档后的一键删除。

![npm](https://www.npmjs.com/package/dsh-session-menu)

![license](LICENSE)

![DSH](https://github.com/deepseek-ai/deepseek-harness)

[English](README.md) | 简体中文 | [繁體中文](README.zh-TW.md)

[界面](#界面) · [安装](#安装) · [卸载](#卸载) · [设置](#设置) · [平台支持](#平台支持) · [配置](#配置)

</div>

界面

会话右键菜单 · 行首状态点

!菜单 · !状态点

悬浮卡 · 归档行一键删除 + 批量入口

!悬浮卡 · !批量

永久删除的二次确认 · 归档行的右键菜单

!删除 · !归档行

装好之后,在 设置 → 插件 → 已安装 里长这样:

安装

三种方式都是从这个插件在 npm 上的包(dsh-session-menu)安装。

方式一:在 DSH 界面里装(推荐)

1. 打开 DSH,点左侧栏的 插件

2. 点右上角的 添加插件

3. 输入框里填 dsh-session-menu,点 安装

4. 重启 DSH 应用

方式二:让 Agent 装

把下面这句发给 DSH 里的 Agent:

用插件管理器安装 dsh-session-menu,装完提醒我重启 DSH 应用。

方式三:用终端装

会用命令行的话:打开 macOS 的「终端」应用(⌘ + 空格 搜「终端」),粘贴这行回车。

dsh plugin --profile desktop add dsh-session-menu

把 desktop 换成你自己的 profile 名(ls ~/.dsh/profiles 能看到,常见的是 desktop 或 web)。

装完同样要重启 DSH 应用。

卸载

设置 → 插件 → 已安装,点 dsh-session-menu 那一行右侧的垃圾桶图标,确认即可。

设置

装好之后,插件在设置里多一块 会话菜单(Settings → 会话菜单),里面是 8 个开关:

标记未读 · 复制 · 在文件管理器中显示 · 打开方式 · 永久删除会话 · 删除所有已归档会话 · 状态点 · 悬浮卡

关掉哪一项,它就立刻从右键菜单和会话行上消失(不用重启)。开关存在浏览器本地。

其中「复制」和「打开方式」左边的三角可以展开,单独开关二级菜单里的每一项;一级关掉时二级跟着变灰。

「复制会话 ID」是内核后来才有的:内核已经有了这条时,我们那条同名子项默认是关的,「复制」也跟着

只剩一条;想两条都要,在设置里把它打开即可。

如果你的 DSH 是自带同名功能的社区版,在这里把重复的几项关掉就行。

平台支持

平台 · 状态 · 「打开方式 ›」里有什么

macOS · 已实测,行为不变 · 按已知安装位置探测 /Applications 与 ~/Applications,再并入系统声明「能打开文件夹」的应用

Windows 10/11 · 0.1.3 起已实测 · 按已知安装位置探测(%LOCALAPPDATA%、%PROGRAMFILES%、%SYSTEMROOT%):文件资源管理器、VS Code、Cursor、Trae、Windows 终端、PowerShell、cmd 等 —— 只列真正装了的

Linux · 未实测 · 没有内置清单:只有内核自己报的应用

  • 各平台的打开语义:编辑器和 IDE 收到会话目录作为参数;文件资源管理器直接打开它;

Windows 终端用 -d;PowerShell、cmd、Git Bash 起一个可见的新控制台,工作目录就是会话目录。

macOS 上所有条目仍走 open -a。

  • 图标:macOS 用一次 JXA 批处理;Windows 用一次 PowerShell 批处理抽每个 exe 的 32×32 图标,

两边都缓存 10 分钟。PowerShell 不在或被策略拦住时 Windows 清单照常可用,只是没有图标。

  • 在文件管理器中显示:macOS 走 open -R,Windows 走 explorer /select,;菜单文字跟宿主平台走。
  • Windows 上故意不合并内核那份列表:内核在 Windows 上按文件扩展名枚举 Shell 关联,目录没有扩展名,

所以由插件自己的宿主清单撑起这个子菜单。

配置

「打开方式」二级菜单里的应用可以自己配。在 profile 的 cordis.patch.yml 里加一段:

config:
  applications:
    - kind: editor
      paths:
        - /Applications/Visual Studio Code.app
    - kind: terminal
      paths:
        - /System/Applications/Utilities/Terminal.app

Windows 上同一段换成 .exe 绝对路径或 %VAR% 模板(探测时才展开):

config:
  applications:
    - kind: fileManager
      paths:
        - '%SYSTEMROOT%\explorer.exe'
    - kind: editor
      paths:
        - '%LOCALAPPDATA%\Programs\Microsoft VS Code\Code.exe'
    - kind: terminal
      paths:
        - '%LOCALAPPDATA%\Microsoft\WindowsApps\wt.exe'

每项按顺序取第一个存在的路径,命中的那个才会出现在菜单里。config 是整段替换,不是追加 ——

两个平台都一样。macOS 的 /Applications/... 在 Windows 上匹配不到,反之亦然。改完重启 DSH。

许可

[MIT](LICENSE)

以上内容来自 npm 上的 README,我们只做格式化,不改内容。

版本

npm 上共发布:5,最后更新 2026-10-27

链接

GitHub · Homepage · npm

同类插件