导入导出的会话日志,校验指纹并续聊
36.7/100
综合分
5
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/12 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查有告警:npm 同名包「dsh-session-import」归属 devmom/dsh-session-import,装到的可能不是本插件。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add kinyokun/dsh-session-import该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · other
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 53 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(dependency_conflict · 2026/10/23) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意npm 同名包「dsh-session-import」归属 devmom/dsh-session-import,装到的可能不是本插件
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-session-import @ 0.1.1
✓Node 引擎要求 ^22.19.0 || >=24.0.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/1 16:40:22
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 14 处,展示前 14 条)
- 发起网络请求client.js:218
return fetch(`/api/session-import/analyze?${params.toString()}`, { - 发起网络请求client.js:236
return fetch(`/api/session-import/import?${params.toString()}`, { - 写入剪贴板client.js:414
if (navigator.clipboard) navigator.clipboard.writeText(verification.sha256).catch(() => {}); - 读取本地文件importer.js:36
const cwd = await realpath(path); - 读取本地文件importer.js:37
if (!(await stat(cwd)).isDirectory()) throw new Error('不是目录'); - 读取本地文件importer.js:130
await stat(recovery.pathFor(header)); - 写入本地文件storage-adapter.js:34
await mkdir(join(this.recovery, 'imports'), { recursive: true, mode: 0o700 }); - 写入本地文件storage-adapter.js:40
await rename(temp, path); - 读取本地文件storage-adapter.js:50
const value = JSON.parse(await readFile(this.journalPath(id), 'utf8')); - 读取本地文件storage-adapter.js:63
try { info = await lstat(source); } catch (error) { if (error.code === 'ENOENT') return null; throw error; } - 读取本地文件storage-adapter.js:65
const canonicalRoot = await realpath(this.root); - 读取本地文件storage-adapter.js:66
if (!inside(canonicalRoot, await realpath(source))) throw errorOf(409, '会话目录超出存储根目录', 'ownership'); - 写入本地文件storage-adapter.js:68
await mkdir(folder, { recursive: true, mode: 0o700 }); - 写入本地文件storage-adapter.js:70
await rename(source, destination);
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-session-persistence-jsonl@deepseek-ai/dsh-attachment-local@deepseek-ai/dsh-llm@deepseek-ai/dsh@deepseek-ai/dsh-session@deepseek-ai/dsh-session-format-catalog给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 解析导出日志文件
- SHA-256指纹校验
- 同步模型与权限状态
DSH 会话日志导入插件:解析 /export 的 zip/jsonl,结构真实性验证 + SHA-256 指纹校验,同步模型/预设/权限等状态,导入/删除实时推送免刷新
README
由 DeepSeek 最新模型翻译生成dsh-session-import
将 DSH 官方 /export 导出的 ZIP 或裸 JSONL 导入为新的、可继续对话的会话。支持整棵子会话树、图片与文件附件;在新会话页面点击「导入对话」完成文件选择、预览和导入。
插件使用 DSH 官方格式迁移目录解析历史日志,通过 SessionHandle 写入、验证和关闭会话,然后关联目标工作区。历史消息、系统提示词、模型和其他状态事件完整保留;来源机器的项目文件需要另行同步。
兼容性
- 目标运行时:@deepseek-ai/dsh 0.1.5-rc.1 / 0.1.5-rc.2。本地运行验证与边界见 验证记录。
- Node.js:^22.19.0 || >=24.0.0。
- 支持 DSH 默认 JSONL 后端的 none、zstd 两种存储编码。
- 日志格式:官方目录可迁移的 v0、v1、v2,以及当前 v3。官方拒绝迁移的历史形态、损坏日志和未知的新格式会在导入前报错,不通过改写版本号绕过校验。
- 2.x 不再支持 DSH 0.1.0 的旧存储接口;需要旧 DSH 时保留原来的 1.x 插件。
DSH 的接口仍在快速变化。升级后访问 /api/session-import/status 检查兼容状态,并运行导入回归检查;不要仅凭插件能加载就认定导入已兼容。
展开完整文档(README 剩余 1 节)
dsh-session-import 将 DSH 官方 /export 导出的 ZIP 或裸 JSONL 导入为新的、可继续对话的会话。支持整棵子会话树、图片与文件附件;在新会话页面点击「导入对话」完成文件选择、预览和导入。 插件使用 DSH 官方格式迁移目录解析历史日志,通过 SessionHandle 写入、验证和关闭会话,然后关联目标工作区。历史消息、系统提示词、模型和其他状态事件完整保留;来源机器的项目文件需要另行同步。 兼容性 - 目标运行时:@deepseek-ai/dsh 0.1.5-rc.1 / 0.1.5-rc.2。本地运行验证与边界见 验证记录。 - Node.js:^22.19.0 || >=24.0.0。 - 支持 DSH 默认 JSONL 后端的 none、zstd 两种存储编码。 - 日志格式:官方目录可迁移的 v0、v1、v2,以及当前 v3。官方拒绝迁移的历史形态、损坏日志和未知的新格式会在导入前报错,不通过改写版本号绕过校验。 - 2.x 不再支持 DSH 0.1.0 的旧存储接口;需要旧 DSH 时保留原来的 1.x 插件。 DSH 的接口仍在快速变化。升级后访问 /api/session-import/status 检查兼容状态,并运行导入回归检查;不要仅凭插件能加载就认定导入已兼容。 安装 dsh plugin --profile web add github:kinyokun/dsh-session-import 安装后重启 dsh web 并刷新浏览器。DSH 的插件命令需要可用的 pnpm;依赖由安装命令处理。安装包会自动挂载插件,无须再手动增加 insert 条目。 从本地源码安装: git clone https://github.com/kinyokun/dsh-session-import.git cd dsh-session-import dsh plugin --profile web add "$PWD" 从旧的手动安装迁移 1. 停止准备升级的 dsh web,备份对应 profile 的 cordis.patch.yml 和旧插件目录。 2. 从 profile patch 中移除以前手动添加的 id: session-import 的 insert 条目,保留其他插件及会话。不要同时保留自动 bundle 和旧 insert,两者会重复挂载。 3. 将手动复制的 node_modules/dsh-session-import/(或者旧别名 node_modules/session-import/)移到 profile 外作为备份,再执行上面的安装命令。 4. 重启 DSH 并刷新页面。已导入会话不需要重新导入。 2.x 的宿主代码由多个模块组成,并依赖官方格式库;不要再只复制 host.js、client.js 和 package.json。 升级、禁用与卸载 GitHub 安装升级时重新执行安装命令,然后重启 DSH 并刷新页面。 临时禁用可在 profile 的 cordis.patch.yml 中添加: - id: session-import disabled: true 通过官方命令安装的版本,应使用官方命令卸载,以同步移除依赖与 bundle 登记: dsh plugin --profile web remove dsh-session-import 然后移除本插件的临时禁用覆盖(如有),重启 DSH 并刷新页面。仅删除 node_modules 目录会留下无效的 bundle 引用。卸载插件保留会话、附件和恢复记录。 使用 新会话页面 → 导入对话 → 选择 ZIP/JSONL → 查看校验结果、子会话和附件数量 → 选择目标工作区 → 开始导入。 - 每次导入生成新的会话 ID,重建包内父子关系,不覆盖原会话。根会话从包外父会话分离,整棵树关联到所选工作目录。 - 模型、Agent 预设等历史事件完整保留;继续运行所需的模型配置、凭据和插件由目标 DSH 提供。不会从归档安装或执行插件代码。 - 新标题作为事件追加;默认把整棵会话树的最后事件移到当前时间,保留相对时间间隔。可取消「置顶显示」保持原始时间。 - ZIP 中引用的图片和文件必须齐全且 SHA-256 匹配。图片经目标 DSH 的附件接口验证、规范化并更新引用;文件按原字节恢复。 - 裸 JSONL 没有附件字节;若它引用附件,目标 DSH 必须已经保存这些附件,否则导入被拒绝。 - 子会话历史与关系会恢复;是否能继续操作某个子代理,由目标 DSH 的代理类型、预设和所需插件决定。 - 导入成功但自动恢复/打开失败时,界面保留提示,用户可从侧栏打开。不会把打开失败显示成「已打开」。 当前限制:上传最多 256 MiB、ZIP 解压总量最多 512 MiB、最多 256 个会话、最多 4096 个 ZIP 条目、总计最多 100 万个逻辑事件;不支持分卷、加密 ZIP、ZIP64 或符号链接。 校验与恢复 结构校验判断官方运行时能否恢复日志;SHA-256 与导出方通过独立渠道提供的指纹比较,可判断文件是否一致。没有独立可信的指纹或签名时,不能证明文件未被修改,也不能证明作者身份。 会话文件、校验预览和附件均由当前 DSH 实例处理。API 通过官方 connection.fetch 注册,沿用 DSH 的登录 Cookie 与 Host / Origin 访问控制;未登录请求返回 401,跨站请求返回 403。 导入先完整解析并校验,写入结束后关闭全部写句柄,再挂载工作区。正常异常路径会撤销已挂载的根会话,并将本次创建的会话目录移到恢复区。DSH 目前没有公开的删除或多会话事务接口,因此该恢复适配仅支持已验证的 JSONL 布局,并在写入前检查布局。 恢复区位于存储根目录的同级:例如 ~/.dsh/sessions 对应 ~/.dsh/sessions-import-recovery/。imports/ 保存导入记录,quarantine/ 保存撤销或失败导入的会话目录。记录包含原位置与隔离位置,可在停止 DSH 后按记录恢复;恢复时避免覆盖现有目录。进程或机器崩溃可能留下 pending 记录,应据此检查,不代表一次原子提交已完成。 POST /api/session-import/delete 仅用于撤销本插件有持久记录、且导入后没有变化的会话树;先用 dryRun=1 预览。仍处于打开状态、已继续或发生变化的会话会被拒绝。成功撤销会保留隔离副本。共享的内容寻址附件不删除;异常保存的附件可能保留未引用对象,避免影响其他会话。 开发与检查 npm install npm run check npm test 测试使用临时目录中的真实 JSONL/附件后端,不连接模型 API,不读取用户会话。完整浏览器验收另见 验证记录。 HTTP API · 安全边界 · 更新记录 · 安全报告 MIT © 2026 kinyokun。感谢 @YuxinZhaozyx 提交 GitHub 安装支持(PR #1)。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
kinyokun/dsh-session-import
导入导出的会话日志,校验指纹并续聊
相关插件 · 其他
模型破甲清洗YuJunZhiXue/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 16,148已汉化DeepSeek 客户端
73
女娲蒸馏alchaincyf/nuwa-skill
输入名人名字,提炼其思维模型与决策方式供你调用
★ 37,308已汉化DSH
72
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 888已汉化DSH
71.6
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,266已汉化DSH
70.7