🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

侧边对话 burakaitechnologies/dsh-sidechat

DeepSeek Harness
burakaitechnologies14 天前有提交已提供中文文档扫描:未发现敏感能力

在浮动面板中开启只读侧聊,随时追问不打断主会话

30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/21 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add burakaitechnologies/dsh-sidechat
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · chat
装得上吗
实装验证未通过(unknown),装前请到仓库确认最近更新与 issue
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 14 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
⚠︎ 实装验证未通过(unknown · 2026/10/22) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/3(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
DeepSeek Harness 的 Side Chat 插件 这是 @ahggg/dsh-side-chat(MIT)的分支/改写版,重新适配到 DeepSeek Harness 0.2.1-rc.2,并做了这些扩展:新增 /side 命令、最新已提交上下文快照、可拖拽可缩放的浮动面板、标题栏 Refresh 按钮,以及按会话隔离的侧边聊天——会话绑定有权威来源,宿主侧上下文也做了加固。 本仓库自包含:运行时源码覆盖层(src-overlays/)、构建产物(dsh-side-chat/)、持久化测试(tests/)、发布用 tarball(dist/),以及可复现的构建/审计工具。作者机器上的 desktop 配置档已安装当前 tarball;下面的公开安装步骤适用于其他机器。 安装(DSH 0.2.1-rc.2) 包内声明了 engines.dsh: "0.2.1-rc.2",在其他 DSH 版本上会故意拒绝安装(宿主/客户端 API 的用法只针对该运行时做过审计)。 1. 把 DeepSeek Harness Desktop 安装或更新到 0.2.1-rc.2。 2. 从 GitHub Release 下载 dist/ahggg-dsh-side-chat-1.0.2-dsh0.2.1rc2.11.tgz(也可以在本地自行构建,见下文)。
展开完整文档(README 剩余 1 节)
DeepSeek Harness 的 Side Chat 插件

这是 @ahggg/dsh-side-chat(MIT)的分支/改写版,重新适配到 DeepSeek Harness 0.2.1-rc.2,并做了这些扩展:新增 /side 命令、最新已提交上下文快照、可拖拽可缩放的浮动面板、标题栏 Refresh 按钮,以及按会话隔离的侧边聊天——会话绑定有权威来源,宿主侧上下文也做了加固。

本仓库自包含:运行时源码覆盖层(src-overlays/)、构建产物(dsh-side-chat/)、持久化测试(tests/)、发布用 tarball(dist/),以及可复现的构建/审计工具。作者机器上的 desktop 配置档已安装当前 tarball;下面的公开安装步骤适用于其他机器。

安装(DSH 0.2.1-rc.2)

包内声明了 engines.dsh: "0.2.1-rc.2",在其他 DSH 版本上会故意拒绝安装(宿主/客户端 API 的用法只针对该运行时做过审计)。

1. 把 DeepSeek Harness Desktop 安装或更新到 0.2.1-rc.2。
2. 从 GitHub Release 下载 dist/ahggg-dsh-side-chat-1.0.2-dsh0.2.1rc2.11.tgz(也可以在本地自行构建,见下文)。
3. 打开 DSH → Plugins:如果已安装旧版 @ahggg/dsh-side-chat,先卸载,再把 tarball 作为本地 bundle 安装。
4. 重载 DSH 窗口一次,确认 Plugins 页面显示 1.0.2-dsh0.2.1rc2.11。
5. 打开一个至少有一轮已完成对话的会话,输入 /side(或选中文本后使用 Ask in side chat)。

发布说明:CHANGELOG.md。维护者发布步骤与已知限制:RELEASE.md。本 README 其余部分介绍仓库本身和本地开发流程。

Side Chat 做什么

在浮动面板里开一段专注的只读侧边讨论,不碰主会话。它直接调用模型——不新建会话、不启动智能体、不调用工具、不访问文件——「Add to conversation」会把讨论内容作为参考复制到主输入框。

两种打开方式:

- 选中文本——在某条已完成消息里选中文本,使用 Ask in side chat / More details。面板会拿到父会话截至该轮已完成对话的快照。
- /side 命令——在输入框输入 /side 并按 Enter(或从 / 菜单里选 Side chat)。面板打开时带的是最新已提交父上下文的快照,包含最新一条用户消息,以及智能体在此之后执行的工具活动。不会向主会话发送任何消息。

面板可从标题栏任意位置拖动(包括标题文字;刷新、添加到会话、关闭按钮保持原有点击行为),四条边都能缩放(上、右、下、左),两个角上的手柄(左上、右下)也能缩放。面板位置和大小按会话记在浏览器里(localStorage);双击标题栏可重置。没有记住几何信息的会话打开面板时,面板是紧凑形态,就在输入框正上方,与输入框右对齐(宽度是之前的一半,高度是之前的三分之二);输入框或窗口缩放时,位置会重新测量。

标题栏的 Refresh 按钮会丢弃当前侧边讨论,为同一会话重新打开一份新草稿——下一个问题会拿到最新已提交上下文的新快照(等同于关掉面板再跑一次 /side,但保留面板几何信息)。Refresh 始终续订面板绑定的那个会话,绝不会回退到别的会话。

侧边聊天按会话隔离,绑定关系是权威的。 在会话 A 里打开一个,聊几句,再切到会话 B 打开另一个——每个会话各自保留自己的记录、宿主讨论、面板位置/尺寸和模型偏好。面板只为当前主视图实际显示的会话渲染(由 DSH 的会话作用域上报,不靠保留计数器猜测),绑定到其他会话的侧边聊天会被拒绝。切回会话 A,看到的正是你离开时的那个侧边聊天,如果当时回复还在流式输出,它仍在运行。没有侧边聊天的会话不显示面板;/side 会启动一个。

目录结构

| 路径 | 内容 |
| AGENTS.md | 面向 AI 智能体会话的定位与工作规则,这些会话把本目录当作工作区。 |
| dsh-side-chat/ | 适配后的插件包(DSH 安装的就是它)。lib/ 是构建产物运行时;package.json 已重新指向 DSH 0.2.1-rc.2,并带 engines.dsh;locale/ + icon.svg 补充插件页的展示元数据。见 dsh-side-chat/ADAPTED.md。 |
| dist/ahggg-dsh-side-chat-1.0.2-dsh0.2.1rc2.11.tgz | dsh-side-chat/ 的打包 tarball。DSH 配置档引用的就是这个文件;请让它与 dsh-side-chat/ 保持同步(用下面的脚本重新构建)。 |
| upstream/ | 未改动的上游产物:已发布的 npm tarball 1.0.2、解包后的包、GitHub 源码树和源码归档。切勿编辑。 |
| src-overlays/ | 在上游 TypeScript 快照之上的持久源码级改动(/side 命令、最新上下文截取、可拖拽/缩放面板、按会话的身份标识与宿主加固)。整文件替换,外加可复现的构建步骤。 |
| patches/ | 作用于 upstream/package 生成包的构建产物覆盖层(最后应用,因此优先生效)。见 patches/README.md。 |
| tests/ | 持久回归测试套件:8 个本地 spec 文件,外加对发布 bundle 的 jsdom 探测。见 tests/README.md。 |
| tools/adapt-package.mjs | 重建脚本:复制 upstream/package,重新指向兼容性/展示元数据,覆盖 patches/,再重新打包 dist/(npm pack --ignore-scripts)。 |
| tools/test.mjs | 一条命令跑完发布门禁:从 src-overlays/ 暂存并构建,跑完整 vitest 套件(内置 + 本地),探测构建产物与发布包,对比构建输出与已发布包。 |
| tools/asar-reader/ | 只读辅助工具,用来检查已安装的 DSH app.asar(Electron 归档):node tools/asar-reader/asar.mjs list\|read\|grep\|save ...。 |
| analysis/compat-report.md | 静态审计:插件用到的每个 DSH API 对照 DSH 0.2.1-rc.2,附 file:line 证据与风险说明。 |
| analysis/hardening-plan.md | 发布加固审计:工作流、发现与处置、已验证的不变量、发布门禁。 |
| CHANGELOG.md / RELEASE.md | 发布历史,以及发布/验证/回滚清单。 |
| analysis/npm/extracted/ | 已发布的 DSH 0.2.1-rc.2 类型声明,用作审计证据。 |

插件为什么需要适配

已发布的 1.0.2 包把每个 DSH peer 都钉在 0.2.0-rc.2。DSH 的兼容性门禁会拒绝声明 DSH 要求与运行时不匹配的插件,所以在 DSH 0.2.1-rc.2 上直接安装会被拒。审计(analysis/compat-report.md)显示,插件用到的每个宿主与客户端 API 在 0.2.1-rc.2 中仍然存在。因此这份副本改动了:

- 元数据 —— version → 1.0.2-dsh0.2.1rc2.11,engines.dsh → 0.2.1-rc.2,DSH peer/dev 版本,dsh.compatibility / dshCompatibility,新增 locale/.json + icon.svg,并把 @deepseek-ai/dsh-client-ui-commands 加入 dsh.client.inject(/side 命令界面的启动顺序);
- 运行时 —— 上述功能,用上游构建配置从 upstream/source 构建,再从 patches/lib/ 覆盖。

其余每个运行时文件都与已发布的 1.0.2 逐字节一致(重新构建会钉住上游锁定的 rolldown@1.2.11 版本)。见 dsh-side-chat/ADAPTED.md。

重新构建与重新安装

仅元数据重建(快,使用 upstream/package + patches/):

node tools/adapt-package.mjs

源码级重建(改动 src-overlays/ 之后):按 src-overlays/README.md 操作 —— 它会安装内置工具链、重建 lib/、刷新 patches/lib/。

打包发布前,跑持久门禁:

node tools/test.mjs

它会暂存 upstream/source + src-overlays/,用锁定的 rolldown@1.2.11 构建,跑完整 vitest 套件(内置上游测试 + tests/specs/ 里的本地回归用例),在 jsdom 中探测构建出的 lib/client.js,并把构建输出与 dsh-side-chat/ 对比。发布要求 RESULT: PASS(写作时:28 个测试文件 / 192 个测试,20/20 探测检查)。

然后通过 DSH 的 Plugin Manager 重新安装包(Web:侧边栏 Plugins → 移除/重装,或让智能体用新的 dist/.tgz 路径运行 plugin_manager)。在已安装包上覆盖安装会被拒,所以先移除,再安装新 tarball。

已安装配置档的依赖是:

@ahggg/dsh-side-chat -> file:C:/Users/ahmet/Desktop/deepseek/plugins/sidechat/dist/ahggg-dsh-side-chat-1.0.2-dsh0.2.1rc2.11.tgz

移动或重命名这个文件夹会让该路径失效;要么把它留在这里,要么从新位置重新安装。

使用方法

1. 在会话中至少完成一轮对话(两条路径都需要)。
2. 选中一条已完成用户消息或助手消息中的文本,然后使用 Add to chat、More details 或 Ask in side chat;或者在输入框中输入 /side 并按 Enter。如果该会话已经打开 Side Chat,/side 会把现有面板切到前台,不会重复打开,也不会留下提示。
3. 输入追问内容并按 Enter(Shift+Enter = 换行)。
4. 用发送按钮旁的模型控件选择模型和推理强度;改动只影响这个侧边聊天后续的回复。
5. 在标题栏任意位置拖动(标题也算,但刷新/添加/关闭按钮不算)可移动面板;拖动任意边缘或左上/右下角可调整大小(调整区域不可见,光标移到上面会变化);双击标题栏可重置。面板位置和尺寸按会话分别记住。
6. 可以随意切换主会话:每个会话都保留自己的侧边聊天和面板位置,隐藏时也不丢。
7. Refresh(标题栏,Add to conversation 左侧)会关闭当前侧边讨论,并为同一会话打开一份新的草稿,这样之后的问题能看到最新的父级上下文。未保存的内容会丢弃,和关闭再打开一样。
8. Add to conversation 会把侧边讨论复制到主输入框;× 或 Esc 关闭面板。

限制:仅支持文本、只读、每次选中只能发一条消息、请求超时 2 分钟、面板关闭后讨论即丢弃(除非已添加到会话)。Host 为每个浏览器客户端最多保留 8 个并发侧边讨论(总共 16 个),空闲超过 30 分钟即过期。打开新会话的侧边聊天时,会回收该客户端最旧的空闲讨论,而不是报错;如果隐藏面板的讨论已过期,下次发送会自动续上一份新草稿(并给出提示),Refresh 也会续期。/side 的上下文截止到最新的已提交父级事件:仍在流式输出的助手文本,要等该轮结束后才可见。

DSH Web GUI 本身需要 dsh web 打印的已认证 URL(新开浏览器会显示 dsh web authentication required);那个页面是 DSH 自己的防护,不属于本插件。交互测试请用应用窗口或已认证 URL。

之后升级 DSH

engines.dsh 固定为 0.2.1-rc.2。升级 DSH 后,插件会被跳过,直到重新指定目标版本:更新 tools/adapt-package.mjs 里的 DSH_VERSION,重新审查 analysis/compat-report.md 中 ctx.commandUi / sessionQuery 的用法,重新构建(元数据层面;如果源码覆盖层仍能编译,也做源码层面),然后安装新的 tarball。
预览分享卡片长什么样 ↓burakaitechnologies/dsh-sidechat
分享 · DeepSeek Harness Hub
burakaitechnologies/dsh-sidechat

在浮动面板中开启只读侧聊,随时追问不打断主会话

这是你的仓库?认领条目

回到顶部