DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Tree Chat — DSH Plugin for DeepSeek Harness
← Plugins
T

tree-chat

Tree Chat

DSH conversation branches and context editing

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:DevourerM/tree-chat#1219dbd637e4efd72d37a3e34e98e21489fd817f
READMECompatibilityVersions

Compatibility and provenance

Tree Chat is published as tree-chat and currently resolves to version 0.2.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
10/16/2026

Versions

0.2.1stable
10/16/2026

Related plugins

Loading related plugins…

Latest
0.2.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
10/16/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in

Related plugins

More verified plugins in memory-context.

Hindsight Coding Agents@vectorize-io/hindsight-coding-agentsReflect-only Hindsight long-term memory for coding agents (harness-pluggable: opencode, …), with automatic background ingestion (no setup CLI).Ab Memorydsh-ab-memory--- description: "The dsh-ab-memory package: a cross-session, file-backed agent memory with five tools (remember / recall / forget / load_skill / distill) and an always-on light injection." kind: "package-reference" ---Contextdsh-contextA DeepSeek Harness plugin for context insight and management, with context dashboard and context command, for understanding how the context is made of, and how it evolves.Memsearch Dsh@zilliz/memsearch-dshMemSearch plugin for DeepSeek Harness: shared markdown memory across agents, with capture, pre-step context injection, memory-recall skill, and a skill-candidate review panel.

README

tree-chat

在 DeepSeek Harness 中用一棵纵向对话树管理深入讨论:从历史节点开新枝,在分支间切换,移除不需要的轮次,让后续回复使用调整后的上下文。

tree-chat 是采用 DSH 标准插件格式的第三方插件,使用原生右侧栏、字体和深浅色主题,无需修改宿主安装文件。

安装 · 使用 · 数据 · 常见问题 · 开发

兼容性

项目当前状态
插件版本0.2.1
已验证宿主DeepSeek Harness 0.2.0-rc.2
已验证系统Windows
插件格式标准 dsh.bundle + dsh.client
其他系统及宿主版本尚未完成验证,不保证可用

通过 DSH 界面安装不需要手动运行 Node、npm 或构建命令。发行包已包含运行文件;开发源码需要 Node.js 22 或更新版本。

安装

在 DSH 界面直接安装

  1. 打开 DSH 左侧 插件 → 添加插件。

  2. 在 包名或地址 中粘贴完整地址:

    https://github.com/DevourerM/tree-chat/releases/download/v0.2.1/tree-chat-0.2.1.tgz
    
  3. 确认插件为 tree-chat,点击 安装。

  4. 安装完成后点击 立即启用;宿主提示重启时,按提示操作。

  5. 打开普通聊天,点击页头树形 tree-chat 按钮,显示右侧对话树。

固定版本地址不会随仓库提交而改变内容。无需下载源码或额外执行安装脚本。

也可在同一输入框使用固定标签的 Git 地址:

git+https://github.com/DevourerM/tree-chat.git#v0.2.1

推荐 .tgz 地址,它不要求安装 Git。插件尚未发布到 npm,请不要只填写 tree-chat,以免解析到其他来源的同名包。

网络受限时离线安装

从 Releases 下载 tree-chat-0.2.1.tgz,在 DSH 的同一输入框填写其本机绝对路径,例如:

C:\Downloads\tree-chat-0.2.1.tgz

选择发行附件 .tgz,不要选 GitHub 自动生成的 “Source code” ZIP。远程 Web Host 的本地路径指向 Host 电脑,而不是浏览器所在电脑。

更新与卸载

更新前查看新 Release 的宿主兼容性说明,再通过 DSH 的更新或重新安装流程填写新版本地址,避免同时启用多个副本。禁用或卸载从 DSH 插件界面操作。

卸载不删除原生聊天与树数据。自动归档的会话仍可从 DSH 的归档列表恢复。

功能

  • 纵向对话树,默认展示真实用户输入,折叠权限提示、自动续跑等内部轮次,保留完整模型上下文。
  • 从任意历史节点创建分支,立即显示待输入节点,使用 DSH 原生聊天输入框。
  • 单击选中、双击定位,拖动节点调整布局;支持缩放、平移、搜索和自动排列。
  • 删除中间轮次后自动接好后续路径,支持撤销、重做。
  • 同一棵树在 DSH 左侧默认仅保留当前会话可见,其他枝通过原生归档收纳;用户置顶会话例外。
  • 继承 DSH 原生侧栏和主题,切换分支时保留树的视野与布局。

连线只展示关系和当前路径;创建分支、裁剪上下文都通过按钮完成,无需手工拉线。

使用

基本操作

操作效果
单击节点正文仅选中,作为新建分支、重命名或删除的目标
双击节点正文跳转原生聊天的对应消息,自动加载较早记录
拖动节点正文移动位置,不跳转、不改变上下文
拖动空白处平移画布
滚轮、左下角 − / +缩放
左下角“适合画布”调整视野容纳整棵树
卡片 … 或右键打开节点菜单

选中边框表示操作对象;蓝色路径及节点左侧色条表示当前聊天使用的分枝。选中历史节点本身不会把下一条输入插入历史中间。

新建节点与分支

  1. 选中要继续深入讨论的节点。
  2. 点击卡片 +、顶部 新建分支,或节点菜单中的同名操作。
  3. 树上立即出现虚线 输入新消息… 节点,原生输入框切换到这条新分支。
  4. 在原生输入框发送消息,该轮结束后,待输入节点转为真实消息节点,后续聊天沿此枝生长。

每个正式节点代表完整轮次,包括输入、回复和工具交互;不会在工具调用尚未配对时截取半轮上下文。

每棵树最多保留一个待输入分支。重复从同一节点创建会复用它;其 × 可取消并返回创建前的会话。浏览历史不会自动清除待输入分支。

从 起点 创建不继承先前用户轮次,但保留宿主必需的系统及工具配置。其他分枝末端节点的菜单提供 继续这条分支,优先复用已有原生会话。

删除轮次,自动接好上下文

原路径:

起点 → 1 → 2 → 3 → 4

选择节点 2,打开 … → 删除节点… → 保留后续,得到:

起点 → 1 → 3 → 4

后续聊天基于新路径。插件会生成合适的原生上下文会话,不改写原始聊天文件。删除整枝 则移除所选节点及其后代在树中的位置。

默认折叠视图中,删除用户节点也会移除归属该输入的内部续跑轮次,避免工具结果或自动续跑单独残留。旧数据里未连接的分支,可使用节点菜单 接回起点。

更多工具与快捷键

顶部 … 菜单包含撤销、重做、自动排列、显示完整轮次和导出树结构;搜索框高亮匹配标题。

快捷键效果
画布聚焦后方向键选择父、子或同层节点
Enter定位选中节点
Shift + Enter从选中节点创建分支
Ctrl / ⌘ + Z撤销树编辑
Ctrl / ⌘ + Shift + Z重做树编辑
Esc取消拖动或关闭当前菜单、对话框

快捷键作用于插件获得焦点时。完成新一轮聊天后,旧的树编辑撤销历史清空,避免覆盖后来生长的节点。

数据与上下文

  • 原始 DSH 消息不被修改或物理删除。分支使用标准原生 Session,保留消息、步骤及完整工具调用配对。
  • 删除节点修改树及后续上下文,不是从磁盘销毁原始记录。
  • 插件自身不新增外部服务请求;聊天仍使用 DSH 配置的模型与工具。
  • 为收纳分枝,同树非当前会话会归档,包括切离后的初始根会话;置顶会话保持可见,切换时恢复对应会话。
  • 树元数据保存于 $DSH_HOME/plugins/conversation-tree/graphs,Windows 默认 %USERPROFILE%\.dsh\plugins\conversation-tree\graphs。历史目录名用于兼容,插件包名仍是 tree-chat。
  • 写入使用临时文件与原子替换,结构修改以版本号检测并发冲突。
  • 导出 JSON 不是完整消息备份。 迁移时需要同时保留 DSH 原生会话存储与树元数据。

常见问题

安装或下载超时? 确认可以访问 GitHub Release 附件,或改用离线 .tgz;更换 npm 镜像不一定能解决 GitHub 网络问题。

单击为什么不跳聊天? 单击只选中。双击或画布聚焦后按 Enter 才定位。

新建后为什么显示虚线? 它正在等待第一条真实消息,该轮完成后自动转正。

旧分支从左侧消失? 它被原生归档收纳,仍在树中,可通过树切回或从归档列表恢复。

生成时不能改上下文? 等待同树正在生成的会话结束后操作。移动和排列不改变模型上下文。

已有 fork 没有合并? 插件不扫描和合并历史 fork;首次打开的普通会话各自形成树,之后由 tree-chat 创建的新枝统一管理。

压缩或工具配对提示? 宿主已压缩替代的历史可能不再有可独立重组的有效消息;未完成工具记录也不能安全重建。插件会拒绝应用,原会话保留。

DSH 升级后能用吗? 当前仅验证 0.2.0-rc.2,宿主 API 或界面语义标记变化可能需要适配。先查看 Release 兼容性记录。

开发

git clone https://github.com/DevourerM/tree-chat.git
cd tree-chat
npm run build
npm test
npm run pack:plugin

构建与核心测试只使用 Node.js 内置模块。打包会检查 DSH 元数据、完整资源和运行文件,在 dist/ 生成 .tgz 与校验记录。安装时使用宿主服务及 React 单例。

目录用途
src/client侧栏、画布、消息定位适配
src/core图模型、校验和视图投影
src/host上下文组装、会话映射和存储
lib预构建的运行文件,随发行包分发
test、scripts核心测试、原生验证、打包和辅助安装
docs设计、验证、发布审核记录

真实宿主验证需自行准备合法取得的 DSH 开发运行时,设置 DSH_DEV_RUNTIME 到其 node_modules 后执行 npm run check:host。GUI 验证需要 Playwright、Chromium、隔离 Host,详见 验证记录。宿主运行时、浏览器、用户会话及测试产物不随仓库分发。

环境变量用途
DSH_DEV_RUNTIMEDSH 开发运行时的 node_modules 绝对路径,用于原生重放和宿主服务测试
TREE_PLAYWRIGHT已安装 Playwright 的 index.mjs 入口绝对路径
TREE_CHROMIUMGUI 测试使用的 Chromium 可执行文件;未设置则使用 Playwright 默认浏览器
TREE_ARTIFACTS测试截图、模型请求记录等产物目录
TREE_TEST_HOME合成聊天 GUI 测试的独立 DSH 数据目录
TREE_GUI_TEST_HOME从空白配置验证插件安装的独立 DSH 数据目录
TREE_PLUGIN_SPECGUI 安装测试的包地址;可填 Release URL,未设置时使用本地发行包
DSH_APP_DIR开发者辅助安装器验证用的 DSH Desktop 安装目录,也可传 --app

缺少宿主运行时时,核心测试仍可执行,宿主服务集成测试会明确跳过;提供运行时后才会实际执行这些集成测试。普通用户安装插件无需设置这些开发变量。

scripts/install.mjs 是开发者本机辅助安装器,可用 --home 和 --app 指定 DSH 数据及安装目录,并在覆盖前备份。普通用户使用 DSH 插件界面,无需运行它。

运行代码使用公开 Slot、Sidebar 和 Session 能力。最终消息定位依赖的宿主语义标记集中在 src/client/navigation.js;升级宿主时需验证这一适配器。插件释放时清理注册、样式、导航等待和计时任务。

反馈与许可

请通过 GitHub Issues 提交 DSH 版本、复现步骤及必要截图;公开前去掉私密聊天内容与密钥。

MIT License。本项目不隶属于 DeepSeek;DeepSeek Harness 名称用于说明兼容目标。