前言¶
在 DSH(DeepSeek Harness)里和模型对话时,输入区往往是纯文本:贴一个 GitHub 地址不会自动变成可读的链接文案,历史气泡里 [文字](url) 也多半仍是原始 Markdown。若你习惯在 composer 里写 Markdown、或经常从剪贴板贴仓库地址,会反复手动改格式。下面介绍社区客户端插件 dsh-link-plugin(维护者 maximdx):在指定 DSH 版本上接管输入框为 CodeMirror Markdown 编辑器,并支持「选中文字 + 粘贴 URL」生成链接,以及在已发送的用户消息里按站点渲染品牌图标与下划线标签。
这是什么¶
dsh-link-plugin 是面向 DSH Desktop / Web 的浏览器侧插件,分类为客户端。它将 composer 替换为基于 dsh-markdown-input 的 CodeMirror 6 方案,并在此基础上合并「粘贴 URL 成链接」与「发送后链接可视化」能力;README 说明 fork 细节见仓库内 patches/README.md。
目标宿主为 DSH 0.2.1-rc.2(README 写明在 macOS 桌面版上做过测试);package.json 中 engines.dsh 同为 0.2.1-rc.2,插件版本 0.2.0,许可证 MIT。
核心功能¶
Markdown 接管 composer¶
原生纯文本输入框被 CodeMirror 6 编辑器替代,具备实时 Markdown 渲染、Enter 发送、Shift+Enter 换行、渲染/源码切换、附件栏,以及模型/权限/命令/队列等界面能力(继承自 dsh-markdown-input)。
选中文字后粘贴 URL¶
选中一段文字(例如 repo),在剪贴板为 https://github.com/... 时按 Cmd/Ctrl+V:选区变为 [repo](https://github.com/...),并立即以带下划线的 repo 显示,编辑区内不展示裸 Markdown;光标进入链接内部时才回到源码视图。一次 Cmd/Ctrl+Z 可撤销。
已发送用户消息中的链接渲染¶
聊天历史中,用户消息里的 [repo](url) 会渲染为品牌图标(GitHub、npm 等,依赖宿主 LinkIconMedium)加下划线标签,与宿主原有的用户文本投影交替呈现。发给模型的内容与复制到剪贴板的内容仍保留 Markdown 源码。
降级与原生粘贴兜底¶
若接管卡片无法挂载(宿主结构变化、服务缺失等),会退回原生 composer 并保留草稿;合并进原生 composer 的粘贴拦截器仍可将「选区 + URL 粘贴」转为 Markdown 链接。
安装与启用¶
插件以当前 DSH 进程权限运行,安装前请自行阅读仓库源码与 LICENSE、THIRD_PARTY_NOTICES.md。官方 README 给出的 profile 安装方式如下。
1、将插件目录复制到 desktop profile 的 plugins 下:
cp -R <this-dir> ~/.dsh/profiles/desktop/plugins/dsh-link-plugin
2、编辑 ~/.dsh/profiles/desktop/package.json,增加本地依赖并在 profile bundles 中注册(README 示例注释):
# ~/.dsh/profiles/desktop/package.json:
# "dependencies": { "dsh-link-plugin": "file:./plugins/dsh-link-plugin" }
# "dsh": { "profile": { "bundles": [ ..., "dsh-link-plugin" ] } }
3、在 profile 目录安装依赖:
cd ~/.dsh/profiles/desktop && pnpm install
profile 宿主支持 HMR 时会热更新;若侧栏未出现插件行,可重启 DSH。在侧栏 Plugins 页面禁用插件即可恢复原生 composer。
维护者重建客户端包与无浏览器冒烟测试(摘自 README):
python3 patches/apply-patches.py /path/to/unpacked/dsh-markdown-input
node patches/smoke.mjs
典型用法¶
1、在 Markdown composer 中正常输入;需要引用仓库时选中简称或标题,复制浏览器中的 https://github.com/...,在选区上 Cmd/Ctrl+V,确认显示为带下划线的链接文案而非 [...](...) 字面量。
2、发送消息后,在气泡里查看同一链接是否出现对应站点图标与下划线;需要给模型或外部工具用时,从复制/模型输入路径应仍为 Markdown 源码。
3、若升级宿主后接管失败,确认是否仍落在 README 声明的支持版本上,并依赖原生 composer 下的粘贴兜底行为。
适用场景与注意¶
适合谁:已在 0.2.1-rc.2 上使用 DSH Desktop/Web、希望在输入区写 Markdown、并减少「贴 URL + 手打链接语法」操作的开发者。
已知限制(README):
- 0.2.1-rc.2 上宿主自带的「用户消息 Markdown」能力已不可用(
projectUserText原语移除),用户气泡除本插件提供的链接渲染外仍为纯文本。 - Composer 内链接仅显示下划线标签(无 favicon),编辑中不可点击;发送后的气泡链接在新窗口打开。
- 底座来自 alpha 上游;若未来 dsh-markdown-input 发布原生支持 0.2.1 的版本,README 建议优先使用该上游而非重复打补丁。
DSH 生态强调「一切皆插件」;SkillHub 目录页 为社区收录站点,与 DeepSeek / 幻方无官方从属关系。仓库:github.com/maximdx/dsh-link-plugin。
结尾¶
dsh-link-plugin 把 Markdown composer、粘贴成链与发送后的品牌图标链接显示收进一个客户端 bundle,面向 0.2.1-rc.2 做了再验证。安装与 bundle 配置以 README 为准;使用前核对版本与源码。目录:https://www.skillhub.cn/plugins/maximdx/dsh-link-plugin;源码:https://github.com/maximdx/dsh-link-plugin。