DSH Plugins
返回列表
dsh-session-persistence-mysql

dsh-session-persistence-mysql

记忆 更新于 2026.09.05

在终端中运行以下命令:

dsh plugin install sandersyao/dsh-session-persistence-mysql

将以下提示词粘贴到 DeepSeek Harness 对话框中:

在 DeepSeek Harness 中运行 dsh plugin install sandersyao/dsh-session-persistence-mysql 即可安装该插件,完整源码见 https://github.com/sandersyao/dsh-session-persistence-mysql。

插件介绍

DeepSeek Harness 默认的 JSONL 文件后端在单机场景下足够轻量,但在多节点部署、高并发读写或需要跨进程共享会话状态时,文件后端的局限很快显现:写入缺乏事务保护,进程崩溃可能留下半截记录,且无法利用数据库的读写副本分担读压力。dsh-session-persistence-mysql 正是为填补这一空白而生——它以 MySQL 为持久层,在行为契约上与 JSONL 后端完全对等,可作为插件无缝替换默认实现。

核心能力围绕写安全、读分离、崩可恢复三个维度展开。每次 appendBatch 都在单个 InnoDB 事务中提交,日志只追加、seq 连续,复合主键天然防止同 ID 双写;写池与读池通过 SESSION_READ_* 环境变量独立配置,未配置时自动退化为同库模式。进程异常退出时,未闭合的最后一轮对话由共享协调器补写合成结束标记,已提交记录绝不被覆写;配合惰性物化(header 与首批事件原子落盘)、死锁自动重试和幂等建表,整体语义对上层完全透明。

适合正在将 DeepSeek Harness 推向生产或分布式架构的团队:当多个 dsh 实例需要共享同一份会话存储、运维希望用数据库原生备份替代文件级快照、或读侧需要独立副本分担负载时,这个插件提供了一条从 JSONL 平滑迁移到 MySQL 的路径,并可搭配 dsh-storage-mysql、dsh-credentials-mysql 和 dsh-workspace-bootstrap 组成完整的分布式部署方案。

截图预览

使用场景

  • 多实例 dsh 集群需要共享同一份会话存储时,替换默认 JSONL 后端
  • 读侧 QPS 较高,希望用独立只读副本分担 loadStored、list 等读钩子压力
  • 生产环境要求事务级写安全与崩溃后自动闭合,避免半截会话记录

适合人员

  • 将 DeepSeek Harness 推向多节点生产环境的工程团队
  • 偏好用数据库原生备份与复制替代文件级快照的运维人员
  • 希望统一 MySQL 技术栈、配合 dsh-storage-mysql 和 dsh-credentials-mysql 部署全链路的后端架构师