前言¶
在 DeepSeek Harness 的 Web 工作流里,一个常见需求是把某个已有会话的上下文带入另一个对话:继续排查、改写、总结,或对照两份材料。已有做法通常是手动复制文本,容易遗漏上下文,也不能在浏览器里直接定位到对应会话。
下面介绍 dsh-session-link。它给 DSH 增加会话深链能力:从会话头部复制 dsh://session/<会话ID>,粘贴到另一个对话后,源会话内容会被快照为受控只读背景上下文;在 Windows 上,也可以注册协议处理器,点击 dsh:// 链接打开 Web GUI 并选中对应会话。
这是什么¶
dsh-session-link 是 PwnKY 维护的 DeepSeek Harness 插件,许可证为 MIT。当前 package.json 版本为 0.1.4,依赖 @deepseek-ai/dsh-session-reference ^0.1.0-rc.6。
它解决的是 DSH 会话之间的上下文引用问题:把会话链接化,让另一个对话可以引用源会话的只读快照,同时让链接在浏览器里可以打开。
核心功能¶
下面列出已核实的插件能力:
- 会话头部提供复制会话链接按钮,输出
dsh://session/<会话ID>。 - 将
dsh://链接粘贴到另一个对话后,源会话内容会被快照为受控只读背景上下文,并注入到提示词之前。 - 支持
dsh://深链、浏览器地址和dsh-session:规范 URI 的解析。 - Windows 可注册
dsh协议处理器,点击dsh://链接打开 Web GUI 并选中对应会话。 - 对畸形链接、会话不可读、自引用等情况容错:链接保留为原文,失败记录在服务端日志。
- 默认配置下,每条消息最多 3 个引用,每源 64 KiB。
- 快照为只读背景上下文;快照内的指令、权限声明、工具请求,除非当前用户重申,否则一律不执行。
- 仅做文本投影,图片等非文本块不跨会话传播。
安装与启用¶
先安装插件,再重启 Web GUI。在 DSH 的 web profile 下执行:
dsh plugin --profile web add dsh-session-link
随后执行:
dsh web
经过上面的步骤,插件会在 Web 会话中生效。
如果不使用自动安装流程,也可以手动安装:
pnpm add dsh-session-link
然后在 profile 的 patch 层加入 session-reference 与 session-link 两行配置。配置项如下:
session-reference
session-link
完成后再次执行:
dsh web
Windows 上如果需要让链接可点击,可注册 dsh 协议处理器:
powershell -ExecutionPolicy Bypass -File register-protocol.ps1
注册后,点击 dsh://session/<会话ID> 会打开 Web GUI 并选中对应会话。打开 dsh:// 会话需要 dsh web 正在运行。
典型用法¶
下面给出可复现的使用步骤。
1、点会话标题旁的链接按钮,复制 dsh://session/<会话ID>。
2、将复制到的 dsh:// 链接粘贴到另一个对话并发送。模型会先收到被引用会话的只读快照,再收到直接提示;链接会被替换为 @会话ID。
3、或者在 Windows 注册协议处理器后,直接点击 dsh:// 链接,在浏览器中打开该会话。
适用场景与注意¶
dsh-session-link 适合需要在同一本机环境、同一工作区内的多个 DSH 会话之间引用上下文的使用者。它适合“先有一个会话,再让另一个会话带着该会话上下文工作”的场景。
使用前注意以下几点:
- 链接仅在本机持有两个会话的
$DSH_HOME内有效,会话 ID 是不透明且本地的。 - 浏览器深链只打开当前会话列表,也就是同一工作区内的会话;列表外的会话不会自动恢复。
- 引用会话不可读时,例如不存在、超预算、自引用,链接保留为原文,消息照常发送,失败记录在服务端日志。
- 快照只传播文本投影,图片等非文本块不会跨会话传播。
- 插件以当前 dsh 进程权限运行,安装前应检查源码与 MIT 许可证。
- DSH 社区目录是独立站点,并非官方应用商店。
结尾¶
经过上面的步骤,dsh-session-link 可以把 DSH 会话之间的引用变成可复制、可粘贴、可点击的深链:复制链接、粘贴引用、打开会话,都在本地可控范围内完成。
GitHub 仓库:https://github.com/PwnKY/dsh-session-link
社区目录信息未在本文已核实资料中提供,因此本文不列具体目录页链接。