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

MySQL 存储后端 sandersyao/dsh-storage-mysql

DeepSeek Harnessv0.1.2
sandersyao55 天前有提交已提供中文文档扫描:未发现敏感能力

把工作区与会话缓存数据持久化到 MySQL

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

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

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @sandersyao/dsh-storage-mysql
npm 源 · @sandersyao/dsh-storage-mysql 的发布者账号已校验与本仓库一致

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么[目录]—
dsh 原生插件 · other
暂无时间戳·判据 →
装得上吗[实装验证]✓
静态安装检查通过
未做真实安装
L4 · 真实安装等级说明 →
数据截至 2026/10/25·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 55 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

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

验证判据与等级说明 →

可信度证据

安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

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

✓npm 包@sandersyao/dsh-storage-mysql @ 0.1.2
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

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

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

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

扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

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

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery@deepseek-ai/cordis@deepseek-ai/dsh-invariants@deepseek-ai/dsh-storage
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 持久化工作区数据
  • 缓存会话投影数据
  • 存储消息反馈数据

DeepSeek Harness 基于 MySQL 的后端存储插件 可通过 storage-domain 配置用于 workspace、session-projection-cache 和 message-feedback 数据的存储

v0.1.22026-09-10
· 0.1.2 兼容 dsh-storage 0.1.5-rc.1,并补齐配套插件互链文档。 · 变更 · 依赖升级:@deepseek-ai/dsh-storage / @deepseek-ai/dsh-invariants → 0.1.5-rc.1(公共契约自 0.1.2-rc.1 起无变化,typecheck/build/test 41/41/覆盖率门禁全绿)。 · 文档:README(中/英)新增「配套插件」表,互链其余三个分布式 dsh 部署包(workspace-bootstrap / credentials-mysql / session-persistence-mysql)的 GitHub 与 npm 页面。 · 验证 · pnpm typecheck / pnpm lint / pnpm build / pnpm test(41 例)/ pnpm test:coverage(lines 95.63%)均通过。
v0.1.02026-09-04
发布 v0.1.0:为 dsh storage hub 提供 MySQL 存储后端。注册 mysql 后端(kv facet),与 dsh-storage-json 契约等价;保留默认的 storage-json,并把 domain facility 路由到 mysql;35 个测试,覆盖率 ≥ 90。
v0.1.12026-09-04
· 0.1.1 MySQL 存储后端加固发布,兼容 dsh-storage 0.1.2-rc.1。 · 修复 / 变更 · units 表新增独立 revision 乐观锁列(schema v2,自动迁移):setGlobal 写 CAS 不再污染打开校验所用的格式 version,崩溃重开契约不变(version 只在建行时写一次)。 · setGlobal 改为基于 revision 的 CAS,并登记为在途写以便 close() 排空;重试耗尽以明确的 cas-exhausted 错误暴露。 · 测试 · 单测:CAS 正常 / 被抢先重试成功 / 持续冲突耗尽(stub 池确定性驱动)。 · 集成:真实库双实例并发 setGlobal(每次成功恰自增、无静默丢弃、重开版本不受污染)。 · 集成:v1 → v2 schema 自动迁移。 · 依赖 · @deepseek-ai/dsh-storage、@deepseek-ai/dsh-invariants 升到 0.1.2-rc.1。
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。

README

由 DeepSeek 最新模型翻译生成
@sandersyao/dsh-storage-mysql DeepSeek Harness(dsh)存储中心(ctx.storage)的 MySQL 存储后端 —— 内置 @deepseek-ai/dsh-storage-json 后端的契约等价替代。以插件加载后,在 ctx.storage.backend 注册 mysql、暴露 kv facet,把 KV 单元持久化到 MySQL(InnoDB ACID:崩溃安全、跨进程可见)。 配套插件(分布式 dsh 部署) 本后端是分布式 dsh 部署四件套之一:dsh-storage-mysql(本仓库) / dsh-credentials-mysql / dsh-session-persistence-mysql 把默认存储、凭据、会话持久化后端切到共享 MySQL;dsh-workspace-bootstrap 则在空库启动时声明式自举一个默认工作区,让首会话可开始。
展开完整文档(README 剩余 1 节)
@sandersyao/dsh-storage-mysql

DeepSeek Harness(dsh)存储中心(ctx.storage)的 MySQL 存储后端 —— 内置 @deepseek-ai/dsh-storage-json 后端的契约等价替代。以插件加载后,在 ctx.storage.backend 注册 mysql、暴露 kv facet,把 KV 单元持久化到 MySQL(InnoDB ACID:崩溃安全、跨进程可见)。

配套插件(分布式 dsh 部署)

本后端是分布式 dsh 部署四件套之一:dsh-storage-mysql(本仓库) / dsh-credentials-mysql / dsh-session-persistence-mysql 把默认存储、凭据、会话持久化后端切到共享 MySQL;dsh-workspace-bootstrap 则在空库启动时声明式自举一个默认工作区,让首会话可开始。

| 插件 | GitHub 仓库 | npm 包页面 |
| @sandersyao/dsh-workspace-bootstrap | https://github.com/sandersyao/dsh-workspace-bootstrap | https://www.npmjs.com/package/@sandersyao/dsh-workspace-bootstrap |
| @sandersyao/dsh-credentials-mysql | https://github.com/sandersyao/dsh-credentials-mysql | https://www.npmjs.com/package/@sandersyao/dsh-credentials-mysql |
| @sandersyao/dsh-session-persistence-mysql | https://github.com/sandersyao/dsh-session-persistence-mysql | https://www.npmjs.com/package/@sandersyao/dsh-session-persistence-mysql |

安装与使用

import { apply, Config, inject, name } from '@sandersyao/dsh-storage-mysql'
// 把 storage-domain facility 路由到本后端: // ctx.plugin({ apply, Config, inject, name }, { connection: { tablePrefix: 'dsh_storage_' } }) // storage-domain 配置 { backend: 'mysql' } 后,ctx.storage.domain 即由 MySQL 承载。

最简做法是走组合包 patch:dsh plugin add 后 cordis.patch.yml 保留默认 storage-json 后端、把 storage-domain.backend 指向 mysql(json 后端仍可经 routes 按域使用)、并插入本后端。

指引

- 独立 dsh profile 试用,不影响现有 json 存储 —— docs/DSH_PROFILE_TRIAL.md。
- 生产 / npm 安装与 cordis.patch.yml 集成(替换默认后端) —— docs/DEPLOYMENT.md。

配置

连接参数来自环境变量 / .env(见 .env.example)。独立 STORAGE_ 优先,缺省回退共享 MYSQL_ —— 与 dsh-session-persistence-mysql / dsh-credentials-mysql 同库共存或独立配置。插件 Config 可选(仅覆盖非敏感项),凭据绝不进代码/配置。

| 独立 | 回退 | 默认 | 用途 |
| STORAGE_HOST | MYSQL_HOST | 127.0.0.1 | 主机 |
| STORAGE_PORT | MYSQL_PORT | 3306 | 端口 |
| STORAGE_USER | MYSQL_USER | 必需 | 最小权限用户 |
| STORAGE_PASSWORD | MYSQL_PASSWORD | 必需 | 密码 |
| STORAGE_DATABASE | MYSQL_DATABASE | 必需 | 目标库 |
| STORAGE_TABLE_PREFIX | MYSQL_TABLE_PREFIX | 必需 | 前缀(^[A-Za-z0-9_]+$;基名与他包不同) |
| STORAGE_SSL_REQUIRED | MYSQL_SSL_REQUIRED | false | TLS(暂缓) |
| STORAGE_POOL_SIZE | MYSQL_POOL_SIZE | 10 | 池大小 |
| STORAGE_SCHEMA_AUTO_MIGRATE | MYSQL_SCHEMA_AUTO_MIGRATE | true | 启动幂等迁移 |

测试隔离:自动化测试用独立库(STORAGE_TEST_DATABASE,默认 test); MYSQL_ROOT_PASSWORD 仅供测试引导建库授权。

存储布局

前缀派生三张表:
- Pstorage_units —— 单元 → 格式 version + global_json(NULL=never-written)。
- Pstorage_records —— (unit_name, table_name, record_key) → JSON 值。
- Pstorage_meta —— 已应用 schema 版本。

基名与 session-persistence / credentials 不同,同库同前缀也不冲突。
unit_name/table_name/record_key 一律参数化绑定(绝不作 SQL 标识符);仅经校验的前缀拼进反引号表名。

后端契约(与 dsh-storage-json 等价)

- 注册 mysql 后端并 ctx.provide(storageBackendServiceKey('mysql'), backend)。
- kv.open 校验名匹配 UNIT_NAME_RE、建/校验单元版本、同名单句柄。
- KvUnit:loadAll(事务快照;global null 哨兵)、putRecord(upsert)、 deleteRecord(幂等)、setGlobal、close。
- 错误码:version-mismatch / malformed-medium / closed(StorageError)。
- 每次写为单条原子 SQL,解析即 durable;已提交写在崩溃重开/跨进程可见。

Schema 与迁移

启动幂等建表并读写 Pstorage_meta;已应用版本高于期望 fail-closed(不支持降级);
STORAGE_SCHEMA_AUTO_MIGRATE=false 时版本不匹配只报错不迁移。

开发

pnpm install
pnpm typecheck && pnpm lint && pnpm build
docker compose up -d # 或复用已运行的 MySQL
pnpm test # 35 例
pnpm test:coverage # 覆盖率门禁(lines ≥ 90)
pnpm smoke # 手动冒烟(先 build)

License

MIT
预览分享卡片长什么样 ↓sandersyao/dsh-storage-mysql
分享 · DeepSeek Harness Hub
sandersyao/dsh-storage-mysql

把工作区与会话缓存数据持久化到 MySQL

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部