前言¶
在 DSH 会话里输入 @ 会弹出引用菜单,文件、子智能体、历史对话和各类插件注册的源往往混在同一长列表里。候选一多就要靠滚动在不同分组之间找,键盘高亮也容易在视野外。内置 ui-reference 已经提供完整的数据与插入逻辑,但外观仍是「一条长列表」。
dsh-at-menu 是社区维护的客户端插件,不改变引用怎么插入,只在菜单顶部加一排类别标签;点某个标签就只显示该类候选。下面介绍它做什么、怎么装、和内置菜单如何共存,以及使用时需要注意的限制。
这是什么¶
- 名称:
dsh-at-menu(仓库 taoziliyouchong/dsh-at-menu) - 维护者:taoziliyouchong
- 分类:客户端(
package.json中dsh.client.platform为web) - 当前版本:0.1.4(以仓库
package.json为准) - 许可证:MIT
插件挂在 DSH 的 conversation.input.overlay 槽位,在 @ 菜单打开期间接管面板外观;候选数据、键盘导航和插入动作仍由内置 controller 负责。
核心功能¶
类别标签与数据来源¶
菜单顶部的标签由当前候选里出现的类别动态生成,没数据的类别不会出现。README 中列出的内置分组如下:
| 类别 | 数据来源 |
|---|---|
| 文件与文件夹 | 内置 ui-reference 的 @ 候选;文件夹行可用尾部箭头或 Tab 进入目录,面包屑可点上级 |
| 子智能体 | 内置 ui-reference(当前会话的子代理) |
| 对话 | 内置 ui-reference(其余历史会话) |
| 插件 | 本插件读取常用提示词插件 dsh-prompt-shelf 的清单路由 /dsh-prompt-shelf/api/plugins;未安装该插件时这一类不出现 |
其它插件注册的 @ 源会并列显示为类别标签,标签文字即源的 name;装得越多,标签越多。
与内置逻辑的分工¶
- 引用仍以纯文本写入草稿(例如
@路径、@[标题](dsh-session:…)),宿主现有解析链不变。 - 不联网、不上传任何内容。
- 只改
@菜单的外观与分组;插入格式仍由各源自己决定。
安装与启用¶
环境要求(摘自 README):
- DSH 0.2.1 及以上的桌面端,或
dsh web(需要会话输入框的 @ 菜单;文档写明在 0.2.2-rc.1 上验证过)。 package.json中engines.dsh为>=0.2.1-alpha.1;README 注明实测 0.2.1-alpha.3、0.2.2-rc.1,更高版本未验证。
从 GitHub 安装:
dsh plugin --profile desktop add github:taoziliyouchong/dsh-at-menu
发布到 npm 后也可:
dsh plugin --profile desktop add dsh-at-menu
安装完成后重启 DSH。若使用其它 profile,将命令中的 desktop 换成你的 profile 名。
插件以当前 DSH 进程的权限运行;安装前建议在 GitHub 仓库 查看源码与 MIT 许可证。DeepSeek Harness 社区插件目录在 skillhub.cn,与 DeepSeek / 幻方无官方从属关系,并非官方应用商店。
典型用法¶
- 在支持 @ 菜单的 DSH 会话输入框中输入
@,打开引用菜单。 - 看菜单顶部一排类别标签,点击「文件与文件夹」「子智能体」「对话」或某个插件源名称,列表只显示该类候选。
- 继续用键盘上下、回车选择,Esc 关闭;行为与内置菜单一致,只是列表按标签过滤。
若已安装 dsh-prompt-shelf,「插件」类会出现在标签中,数据与窗口里「插件」项同源。
与内置 @ 菜单共存¶
内置 ui-reference 不必关闭,可与本插件同时启用。它仍负责:
- 拖文件或点「添加文件」时,把文件引用卡片转成文字;若关闭,发送可能报错
slash: no serializer for reference source "reference"; - 历史消息里
@路径的装饰样式与点击打开。
本插件只在 @ 打开时用注入样式隐藏内置菜单 DOM(body[data-dsh-at-open] [data-trigger-menu]),/ 斜杠菜单仍用内置外观。内置那一组候选不进面板;键盘高亮落到内置组时会被推回可见类别。两边同时启用不会出现重复候选。
适用场景与注意¶
适合:经常在长 @ 列表里跨组找引用、希望用标签快速收窄范围的桌面或 Web 会话用户。
已知限制(README):
- 内置 reference 某次查询失败时,整组会被丢弃,面板底部有提示;Esc 后重开菜单会重试。
- 类别完全由当次候选决定,空类不显示标签。
反馈:优先在 GitHub Issues 留痕;需即时沟通可联系维护者 QQ 2171960697(请注明所装插件)。请附带 DSH 版本、插件版本、报错原文与截图。
结尾¶
dsh-at-menu 在不动引用序列化与插入的前提下,给 @ 菜单加了可点击的类别筛选,并与内置 ui-reference 分工明确。需要安装命令与类别说明时,以仓库 README 为准。