dsh-side-chat

DSH PLUGIN记忆与知识

仓库 2031814001yuyue-tech/dsh-side-chat · npm dsh-side-chat

记忆与知识 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

为 DeepSeek Harness 提供并行侧边对话:在主会话外开独立上下文的真实 agent 会话,结论摘要折叠带回主对话,不污染主上下文。

验证等级 L5 L5 · 运行验证通过
GitHub 星标 3 复刻 0 · 未关闭 issue 0
最近更新 2026-08-15 创建于 2026-08-14
README 8.1 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:2031814001yuyue-tech/dsh-side-chat
兼容 DSH 版本0.2.0-rc.2 等 11 个版本版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖react@^18.2.0需要同时安装的同级依赖
npm 包名dsh-side-chat可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-side-chat:DeepSeek Harness 的并行侧边对话面板

  • 独立上下文并行侧会话
  • 摘要折叠带回主对话
  • 面板可调宽可最小化
  • 会话列表零污染
  • /side 命令快速开启

适用场景

记忆通知

上游标签

cordisdeepseek-harnessdshdsh-plugin

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度稳定按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询
— · 其它检查项
  • L4_0_SANDBOX 沙盒安装判定 方式:沙盒安装执行

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

仓库档案

记忆与知识
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方2031814001yuyue-tech仓库 dsh-side-chat · 默认分支 master
分类记忆与知识memory
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue3 / 0 / 0收录时的数值,非实时
创建 / 更新2026-08-14 · 2026-08-15最后推送 2026-08-15
本站收录2026-09-21首次进入本站目录的时间

README 全文

8.1 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-side-chat

DSH 侧边对话插件 —— 并行侧边对话:在主对话之外开一条真实并行 agent 会话(独立上下文、共享工作区),结束后把结论摘要带回主对话,主对话上下文不被污染。

> 纯 JavaScript、MIT 许可。一份源码两种加载方式:既可作为 DSH 动态 Cordis 插件即时加载(免构建),也可作为 npm 包正式安装(跨重启持久)。

特性

  • 真实并行 agent 会话:每条侧对话是一个独立的 DSH Session + Agent,继承主会话的完整组合(同一 preset 组合:同工具注册、同 prompt 段、同模型路由、同工作目录),但不共享对话历史。
  • 上下文隔离:侧对话的提问、工具调用不会进入主对话上下文。
  • 自由切换:侧边面板列出所有侧对话,点击即切换,互不串扰。
  • 摘要带回主对话:一键让侧 agent 总结自己的对话,摘要以折叠提示行注入主会话(主对话只多一行小字,点击展开全文;主 agent 下一轮即可看到完整结论;总结请求不会出现在侧对话消息流里)。
  • 干净的对话流:面板只显示真实对话——系统注入(runtime context、技能目录等)自动过滤。
  • 消息 Markdown 渲染:标题、粗斜体、行内代码、代码块、列表、引用、链接、分隔线(纯 React 元素构建,防 XSS)。
  • 可调宽:面板左边缘拖拽调宽(300–900px),双击复位。
  • 可最小化:面板缩为右下角小胶囊,对话继续后台运行,点击恢复——不挡主界面。
  • 智能自动滚动:新消息到达时跟随到底部,向上翻阅历史不会被拽回。
  • 会话列表零污染:侧对话创建即归档,不出现在会话列表/搜索中;面板是唯一入口,关闭后 agent 停止、会话数据仍在磁盘。
  • /side 命令:/side 你的问题 直接开一条侧对话(Web 面板自动打开)。

设计要点

设计要点 本插件实现
/side 斜杠命令 /side [消息] 命令 + 面板「+ 新建」
独立上下文窗口 独立 Session + Agent(继承主会话组合、同工作区)
线程自由切换 面板会话列表点击切换
summarize & bring back side agent 自总结 → 折叠提示行注入主会话
ephemeral / 丢弃 关闭即停止 agent;创建即归档(列表隐藏),注册表内存态不跨重启

完整设计见 docs/design.md,验收记录见 docs/verification.md。

安装

方式一:动态 Cordis 插件(开发调试,即改即生效)

通过 DSH 动态 Cordis 插件流程加载(免构建、免 npm 依赖):

  1. 在 DSH Web 会话中打开动态插件定义界面(cordis 插件工具)。
  2. 新建插件:
    - Host 半体:粘贴 src/host.js 的完整内容。
    - Client 半体:粘贴 src/client.js 的完整内容。
    - idPrefix 建议 side,名称 DSH Side Chat。
  3. 运行该插件,在浏览器中批准 Client 半体授权。
  4. 刷新页面:会话标题栏右侧出现「⤳」入口。

方式二:npm 包安装(正式,跨重启持久)

  1. 在 DSH profiles 目录安装包(与 web/headless profile 共享的 node_modules):
cd "$DSH_HOME/profiles"        # 例如 C:\Users\Lenovo\.dsh\profiles
npm install dsh-side-chat
  1. 把包注册为 bundle(与官方 client 插件、dsh-vision 同款机制):在目标 profile 的 package.json(如 profiles/web/package.json)的 dsh.profile.bundles 里加一项:
"dsh": {
"profile": {
"bundles": ["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "dsh-side-chat"]
}
}

包内自带的 cordis.patch.yml 会在启动时自动插入加载行——不要再往 profile 的 cordis.patch.yml 里手动加行,否则重复注册会崩溃。

  1. 重启 DSH 即生效。

机制:包内 dsh.client 元数据声明了浏览器半体,DSH 的 client-modules 自动将其编入启动清单(window.__DSH_BOOT__)并从 /plugins/dsh-side-chat/client.js 加载;Host 半体把 RPC 桥接为 /sidechat-api/* HTTP 路由。npm 路径与动态路径共用同一份 src/ 源码,行为一致;lib/ 为构建产物(npm run build 生成,npm run check / npm run smoke 做语法与适配器冒烟验证)。

> 动态方式零依赖、即改即生效,适合开发调试;npm 方式跨重启持久、可分发,适合日常使用。两者可以共存。

使用

  • 点击会话标题栏右侧的「⤳」图标开/关面板(最小化后图标为"恢复"状态);「+ 新建」创建侧对话。
  • 在面板输入框发消息(Enter 发送);状态点:灰 = 空闲,亮 = 运行中,红 = 出错。
  • 「带回主对话」:侧 agent 自动总结,摘要以一行折叠小字注入主会话(主对话空闲时可用;总结期间按钮禁用防重复)。
  • 「—」最小化:面板缩为右下角胶囊,对话继续后台运行;点击胶囊或侧边栏按钮恢复。
  • 面板左边缘拖动可调宽(300–900px),双击左边缘复位 380px。
  • 「关闭」:停止该侧 agent(会话数据保留在磁盘,但已归档不出现在列表中)。
  • 命令行:/side 查一下 xxx 直接创建并发送首条消息。
  • 限制:每个主会话最多 8 条并发侧对话。

架构

Host 半体(src/host.js,DSH Node 进程)

职责 实现
侧对话注册表 内存 Map,每主会话上限 8
创建侧会话 agents.create(注册表 ctx 做 owner;setup 里 composeFrom 继承主 agent 组合)
消息注入 agent.send(message, 'next-turn', true)
状态同步 监听 agent/status、agent/error
摘要带回 agent.send(总结请求) → whenIdle() → sessions.flush → readSession 取末条 assistant 文本 → mainAgent.inject(摘要, notice 形态)(不唤醒主 agent)
关闭 handle.dispose() + workspaceRegistry.archiveSession
列表隐藏 创建即 archiveSession(归档只是列表记账,不影响 agent 生命周期)
命令 commands.register 注册 /side
RPC 动态路径 harness.handle;npm 路径桥接为 webServer 路由 /sidechat-api/sidechat/{open,send,state,events,bring-back,close}

Client 半体(src/client.js,浏览器)

职责 实现
入口按钮 conversation.session.header.actions(id sidechat-toggle,标题栏右侧 ⤳ 图标,支持恢复最小化面板)
侧边面板 shell.overlay(id sidechat-panel,右侧浮层,可拖拽调宽 300–900px,可最小化为胶囊)
数据刷新 面板打开时 1s 轮询 sidechat/state + sidechat/events
消息渲染 轻量 Markdown 渲染(React 元素,防 XSS)+ 角色标签 + 时间戳 + 智能自动滚动
自动开面板 监听 openSignal(/side 命令触发)
样式 styles.insert(npm 路径为 DOM ` shim)+--dsw-alias-*` 主题变量(明暗自适应,尊重 reduced-motion)

数据流

面板输入 → host.call('sidechat/send') → sideAgent.send(…, wake) → 侧 agent 处理 → 面板轮询显示回复
带回主对话 → host.call('sidechat/bring-back') → 侧 agent 自总结 → notice 折叠行注入主会话 → 主 agent 下一轮可见

限制与 FAQ

  • 重启不恢复:侧对话注册表是内存态;DSH 重启后侧对话数据仍在磁盘(会话目录内),但不出现在会话列表(创建即归档),需要时可从面板重新建立。
  • /side 在 Web 输入框的可见性:取决于当前 DSH 版本对自定义命令的暴露程度;面板按钮在所有版本可用。
  • 主对话忙碌时「带回主对话」会提示稍后重试(不会打断进行中的主对话)。
  • 摘要形态:注入主对话的是 notice 折叠行(一行小字),模型可见全文,界面不刷屏。

License

MIT

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-side-chat 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:2031814001yuyue-tech/dsh-side-chat` 即可。对应的 npm 包名是 `dsh-side-chat`。

dsh-side-chat 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-side-chat 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-side-chat 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.2.0-rc.1、0.1.7-rc.2、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2、0.1.3-alpha.2、0.1.3-alpha.1。版本较多,只列出前 8 个。

dsh-side-chat 需要什么运行环境?

需要同时安装 react@^18.2.0。环境不满足时安装会失败,建议先确认本机版本。

dsh-side-chat 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-side-chat 有哪些功能?

独立上下文并行侧会话、摘要折叠带回主对话、面板可调宽可最小化、会话列表零污染、/side 命令快速开启。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

同名或近似条目

7 条
不同作者的仓库分开列,请确认你要装的是哪一个
记忆与知识
按星标排序,可作替代方案

ruflo

ruflo

L3 · 安装规范通过 7.4 万 星

OpenViking

OpenViking

面向 DeepSeek Harness 的 OpenViking 记忆与上下文插件:pre-step 自动召回与画像注入、会话捕获、`vik

L3 · 安装规范通过 3.9 万 星

WeKnora

WeKnora

把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己

L4 · 沙盒安装通过 3.3 万 星

distilly

distilly

Distilly — Distill how they think into reusable Skills for any Agent o

L4 · 沙盒安装通过 2.5 万 星

EverOS

EverOS

L4 · 沙盒安装通过 1.3 万 星

MemOS

MemOS

L4 · 沙盒安装通过 1.2 万 星

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。