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

侧栏辅助会话 Vincent-chk/dsh-plugin-auxiliary-chat

DeepSeek 客户端
Vincent-chk16 天前有提交已提供中文文档扫描:含敏感能力兼容 / 相关生态

DeepSeek Harness(DSH)的侧边栏辅助聊天插件:右侧栏面板承载临时辅助会话,单向镜像主会话的上下文,关闭即删除。

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

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

相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/Vincent-chk/dsh-plugin-auxiliary-chat.git

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
生态应用
桌面端 / Web 外壳,不以 dsh plugin add 安装
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 16 天前
档位由哪些信号合成

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

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装

仓库 package.json 标记 private,未发布到 npm,需从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包@dsh-ext/dsh-plugin-auxiliary-chat(未发布到 npm,仅可源码安装)
✓Node 引擎要求 ^22.19.0 || >=24.0.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/16 04:09:30

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 24 处,展示前 22 条)
  • 写入本地文件
    src/host/create.ts:221
    await mkdir(archiveLedgerDir(deps.home), { recursive: true })
  • 写入本地文件
    src/host/create.ts:222
    await writeFile(join(archiveLedgerDir(deps.home), sessionId), '', { flag: 'w' })
  • 删除本地文件
    src/host/create.ts:464
    await rm(projectionCachePath(sessionId, deps.home), { force: true })
  • 读取本地文件
    src/host/create.ts:471
    for (const project of await readdir(root)) {
  • 删除本地文件递归
    src/host/create.ts:474
    if ((await stat(candidate)).isDirectory()) await rm(candidate, { recursive: true, force: true })
  • 读取本地文件
    src/host/create.ts:474
    if ((await stat(candidate)).isDirectory()) await rm(candidate, { recursive: true, force: true })
  • 读取本地文件
    src/host/dispose.ts:31
    return (await stat(path)).isDirectory()
  • 读取本地文件
    src/host/dispose.ts:40
    return (await stat(path)).isFile()
  • 读取本地文件
    src/host/dispose.ts:75
    for (const project of await readdir(root)) candidates.push(join(root, project, segment))
  • 删除本地文件递归
    src/host/dispose.ts:86
    await rm(candidate, { recursive: true, force: true })
  • 删除本地文件
    src/host/dispose.ts:102
    await rm(path, { force: true })
  • 读取本地文件
    src/host/dispose.ts:361
    entries = (await readdir(dir)).filter((name) => name.startsWith('session-'))
  • 删除本地文件
    src/host/dispose.ts:382
    await rm(join(dir, sessionId), { force: true })
  • 读取本地文件
    src/host/dispose.ts:415
    projects = await readdir(root)
  • 读取本地文件
    src/host/dispose.ts:422
    entries = await readdir(join(root, project))
  • 写入本地文件
    src/host/registry.ts:96
    await mkdir(markerDir(home), { recursive: true })
  • 写入本地文件
    src/host/registry.ts:97
    await writeFile(path, `${JSON.stringify(marker, null, 2)}\n`, 'utf8')
  • 读取本地文件
    src/host/registry.ts:111
    await readFile(path, 'utf8')
  • 删除本地文件
    src/host/registry.ts:116
    await rm(path, { force: true })
  • 读取本地文件
    src/host/registry.ts:134
    await readFile(markerPath(sessionId, home), 'utf8')
  • 读取本地文件
    src/host/registry.ts:156
    names = await readdir(dir)
  • 读取本地文件
    src/host/registry.ts:164
    const parsed: unknown = JSON.parse(await readFile(`${dir}/${name}`, 'utf8'))
扫描于 2026/10/31(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库

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

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
DSH 辅助会话 · Auxiliary Chat DeepSeek Harness 插件:在主对话旁边开一列「草稿会话」。随手问、随手关,主对话分毫不动。 它解决什么问题 有些问题值得问模型,但不值得写进主对话的历史:这段代码为什么这么写、帮我把这版文案润色一下、这个报错到底什么意思……问完就过去了,不需要在主对话里留下痕迹。 开一个辅助会话就行。它带着主会话的上下文开工,回答只留在自己那一列;用完了关掉,它连同会话记录一起消失——主对话从头到尾干干净净。 怎么用 打开 四种方式,任选一种: | 方式 | 操作 | | 右侧栏入口 | 打开右侧边栏,点「辅助会话」 | | 标签栏 | 右侧栏标签行的 +,选择「辅助会话」 | | 快捷键 | ⌘⌥S(Windows / Linux 为 Ctrl+Alt+S) | | 命令 | 在主输入框输入 /side | 提问 辅助会话有自己的输入框,直接问就好。它已经继承了主会话的内容、工作目录、模型与权限预设;你还可以在面板里单独给它换模型、换权限,怎么改都不会影响主会话。 把结论带回主对话 点顶部的「复制结论到主会话」,内容会作为草稿填进主输入框,由你确认之后再发送。插件不会替你在主会话里发任何消息。 拖文件 拖进辅助面板,文件只进辅助会话;拖到主对话,只进主会话。按你放手的位置决定,不会两头都进。
展开完整文档(README 剩余 1 节)
DSH 辅助会话 · Auxiliary Chat

DeepSeek Harness 插件:在主对话旁边开一列「草稿会话」。随手问、随手关,主对话分毫不动。

它解决什么问题

有些问题值得问模型,但不值得写进主对话的历史:这段代码为什么这么写、帮我把这版文案润色一下、这个报错到底什么意思……问完就过去了,不需要在主对话里留下痕迹。

开一个辅助会话就行。它带着主会话的上下文开工,回答只留在自己那一列;用完了关掉,它连同会话记录一起消失——主对话从头到尾干干净净。

怎么用

打开

四种方式,任选一种:

| 方式 | 操作 |
| 右侧栏入口 | 打开右侧边栏,点「辅助会话」 |
| 标签栏 | 右侧栏标签行的 +,选择「辅助会话」 |
| 快捷键 | ⌘⌥S(Windows / Linux 为 Ctrl+Alt+S) |
| 命令 | 在主输入框输入 /side |

提问

辅助会话有自己的输入框,直接问就好。它已经继承了主会话的内容、工作目录、模型与权限预设;你还可以在面板里单独给它换模型、换权限,怎么改都不会影响主会话。

把结论带回主对话

点顶部的「复制结论到主会话」,内容会作为草稿填进主输入框,由你确认之后再发送。插件不会替你在主会话里发任何消息。

拖文件

拖进辅助面板,文件只进辅助会话;拖到主对话,只进主会话。按你放手的位置决定,不会两头都进。

开多条

每条辅助会话是独立标签,自动编号区分。收起右栏、切换标签都只是隐藏,不会误删。

关闭

点标签上的关闭,它立刻消失:不弹确认框,也不问风险提示。会话日志、缓存与登记信息一并清除,不留痕迹。

特性

- 并排分栏——主对话在左、辅助会话在右,同时可见,不用来回切页面。
- 继承上下文,页面保持干净——创建那一刻,把主会话已提交的内容一次性交给辅助会话的模型;辅助会话自己的聊天页从空白开始,没有重复的历史气泡。内容过长时自动取最近的部分(默认 10 万字符预算)。顶栏保持简洁,只有真出现镜像异常或主会话已归档时才提示。
- 能力完整——与主会话相同的工具能力,共享同一工作目录,产出的文件留在工作区。
- 状态一眼可见——后台回复时标签显示运行指示;回复完成而你没在看时标记未读,看到即清除。
- 严格单向,绝不串门——不会主动往主会话发消息,也不会把辅助会话的内容混进主对话。
- 关闭即清除——辅助会话自身的痕迹(日志、缓存、登记)全部删除;工作区里由它产出的文件保留。
- 刷新不丢——页面刷新后自动重连原来的会话;如果宿主已经回收了它,面板会明确告诉你,并提供一键新建。

安装

需要 Node ≥ 22,以及已安装的 DeepSeek Harness。

git clone https://github.com/Vincent-chk/dsh-plugin-auxiliary-chat.git
cd dsh-plugin-auxiliary-chat
npm install --no-audit --no-fund

node scripts/build.mjs # 构建 host + client 两侧
node scripts/smoke.mjs # 契约自检
node scripts/install-profile.mjs # 干跑:只打印将要做的改动
node scripts/install-profile.mjs --apply --no-pnpm # 写入 desktop profile(先备份)

装好后重启 DeepSeek Harness 并刷新页面。

卸载:node scripts/install-profile.mjs --uninstall --apply --no-pnpm

desktop profile 由 Electron 载体专属管理,dsh plugin --profile desktop add 会被 CLI 拒绝;安装脚本做的是同一件事(写 dependencies 与 dsh.profile.bundles),并会先备份、使用目录链接、不改动 lockfile。

配置

| 配置 | 默认 | 说明 |
| hideFromSidebar | true | 辅助会话创建后不出现在左侧会话列表与搜索中 |
| mirrorHistory | true | 是否把主会话内容交给辅助会话(对话记录、系统提示词、动态上下文);关掉则只继承工作目录、模型路由、权限预设 |
| mirrorMaxChars | 100000 | 继承内容的字符预算;超出时取最近的记录,连最新一条都放不下时回退为摘要 |
| hideChannel | auto | 隐藏方式:优先使用宿主提供的原生可见性接口,没有则回退到归档方式;也可强制 archive / native |

已知限制

- 回合运行期间,辅助会话可能短暂出现在左侧会话列表里;在「仅看归档」过滤器下也能看到——这是平台目前还没有"隐藏但可运行"接口所致。
- /aux-init、/aux-end 是插件内部命令,可能出现在 / 命令菜单中,误触无害。
- 上下文继承是创建那一刻的快照:主会话之后新增的内容不会自动补进来,关掉重开即可带上。
- 删除依赖当前 DSH 的磁盘布局;若未来版本改动布局,关闭会退化为"停止会话但不删文件",并在日志中记录。

开发者

代码分两半:src/host/(会话登记、上下文镜像、创建与销毁、命令通道)与 src/client/(分栏面板、多标签、拖放路由、界面状态);两侧共享的冻结契约在 src/contract.ts。

- DSH API 实证记录:docs/VERIFIED-API.md
- 浏览器 ↔ Host 命令契约:docs/REMOTE-CONTRACT.md
- 平台约束、设计取舍与验证记录:docs/DESIGN-NOTES.md
- 希望上游补齐的平台能力:docs/SEAM-REQUEST.md 构建与自检脚本都在 scripts/:npm run verify、npm run race-check、npm run drop-check、npm run mirror-check、node scripts/e2e-isolated.mjs。

许可证

MIT
预览分享卡片长什么样 ↓Vincent-chk/dsh-plugin-auxiliary-chat
分享 · DeepSeek Harness Hub
Vincent-chk/dsh-plugin-auxiliary-chat

DeepSeek Harness(DSH)的侧边栏辅助聊天插件:右侧栏面板承载临时辅助会话,单向镜像主会话的上下文,关闭即删除。

回到顶部