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

会话管家 xchannel1987/dsh-session-xc

DeepSeek Harnessv0.11.4
xchannel198740 天前有提交已提供中文文档扫描:含敏感能力

统计会话数并支持归档、删除与跨区移动

31.5/100
综合分
2
GitHub 星标
199
npm 周下载
—/5
用户评分

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

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

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · other
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 40 天前
档位由哪些信号合成

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

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

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

✓npm 包dsh-session-xc @ 0.11.4
✓Node 引擎要求 >=18 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/12 21:20:41

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

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 24 处,展示前 18 条)
  • 读取本地文件
    lib/index.js:176
    names = await readdir(dir);
  • 读取本地文件
    lib/index.js:325
    await stat(path);
  • 写入本地文件
    lib/index.js:384
    await mkdir(newDir, { recursive: true });
  • 读取本地文件
    lib/index.js:391
    const buf = await readFile(oldLog);
  • 写入本地文件
    lib/index.js:399
    await writeFile(tmpPath, Buffer.concat([newFirstFrame, buf.subarray(first.end)]));
  • 读取本地文件
    lib/index.js:403
    const content = await readFile(oldLog, "utf8");
  • 写入本地文件
    lib/index.js:408
    await writeFile(tmpPath, JSON.stringify(header) + content.slice(nl), "utf8");
  • 写入本地文件
    lib/index.js:412
    await rename(tmpPath, finalPath);
  • 删除本地文件
    lib/index.js:414
    await rm(tmpPath, { force: true }).catch(() => {});
  • 删除本地文件递归
    lib/index.js:428
    await rm(oldDir, { recursive: true, force: true });
  • 删除本地文件递归
    lib/index.js:430
    await rm(newDir, { recursive: true, force: true }).catch(() => {});
  • 读取本地文件
    lib/index.js:591
    doc = JSON.parse(await readFile(file, "utf8"));
  • 写入本地文件
    lib/index.js:629
    await writeFile(tmp, JSON.stringify(next), "utf8");
  • 写入本地文件
    lib/index.js:630
    await rename(tmp, file);
  • 读取本地文件
    lib/index.js:660
    const raw = await readFile(getPendingMovesFile(), "utf8");
  • 删除本地文件递归
    lib/index.js:1075
    await rm(sessionDir, { recursive: true, force: true });
  • 删除本地文件递归
    lib/index.js:1094
    await rm(sessionDir, { recursive: true, force: true });
  • 删除本地文件递归
    lib/index.js:1166
    await rm(sessionDir, { recursive: true, force: true });
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

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

依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery@deepseek-ai/dsh-settings
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 统计会话数量
  • 归档管理会话
  • 跨工作区移动

DSH 会话增强插件,带会话计数显示、归档管理和跨工作区移动

README

由 DeepSeek 最新模型翻译生成
dsh-session-xc npm version license downloads DSH | English DSH 会话管理增强插件 —— 为侧边栏工作区提供更强大的会话管理功能,包括统计展示、归档恢复、删除、跨工作区移动和新会话首轮自动起名。 DSH 0.1.7 兼容(>=0.1.7-rc.1):设置入口位于新版「插件页」(Plugins 页)的 dsh-session-xc 包内(plugins.bundle.config,与 modsearch / 官方 subagent 同款机制);旧版「设置 → 插件」入口已随 0.1.7 设置系统重构移除。 ✨ 核心特性 📊 会话数统计展示在工作区名称旁显示会话数量统计: | 格式 | 含义 | | (3) | 3 个活跃会话 | | (2/3) | 2 个未读完成会话 / 3 个活跃会话 | - 活跃会话:非归档、非子代理的可见会话 - 未读完成:已完成运行但未查看的会话(绿色数字) - 抽屉汇总:工作区抽屉标题也显示汇总统计 📁 归档会话管理 - 归档入口:工作区操作区显示归档按钮 - 归档面板:点击查看所有已归档会话 - 一键恢复:PC 端点击「恢复」按钮,移动端点击整行 🗑️ 永久删除安全删除已归档会话,释放存储空间: - PC 端:红色「删除」按钮 + 确认对话框
展开完整文档(README 剩余 1 节)
dsh-session-xc

npm version
license
downloads
DSH

| English

DSH 会话管理增强插件 —— 为侧边栏工作区提供更强大的会话管理功能,包括统计展示、归档恢复、删除、跨工作区移动和新会话首轮自动起名。

DSH 0.1.7 兼容(>=0.1.7-rc.1):设置入口位于新版「插件页」(Plugins 页)的 dsh-session-xc 包内(plugins.bundle.config,与 modsearch / 官方 subagent 同款机制);旧版「设置 → 插件」入口已随 0.1.7 设置系统重构移除。

✨ 核心特性

📊 会话数统计展示在工作区名称旁显示会话数量统计:

| 格式 | 含义 |
| (3) | 3 个活跃会话 |
| (2/3) | 2 个未读完成会话 / 3 个活跃会话 |

- 活跃会话:非归档、非子代理的可见会话
- 未读完成:已完成运行但未查看的会话(绿色数字)
- 抽屉汇总:工作区抽屉标题也显示汇总统计

📁 归档会话管理
- 归档入口:工作区操作区显示归档按钮
- 归档面板:点击查看所有已归档会话
- 一键恢复:PC 端点击「恢复」按钮,移动端点击整行

🗑️ 永久删除安全删除已归档会话,释放存储空间:

- PC 端:红色「删除」按钮 + 确认对话框
- 移动端:左滑显示删除按钮 + 确认对话框
- 安全清理:删除后会话文件被永久移除

🔀 跨工作区移动拖拽会话到目标工作区实现移动:

- 拖拽指示:进入有效目标时高亮显示
- 二次确认:释放前弹出确认对话框
- 自动归类:移动后自动更新工作区归属
- 常驻排队(v0.8.0):DSH 0.1.2+ 中会话一旦被 GUI 打开,Host 即常驻激活该会话(关闭标签页不会释放,重启 DSH 才释放)。拖拽这类会话时移动会自动排队并持久化,下次重启 DSH 后自动完成,无需额外操作;从未打开过的会话仍然即时移动
- 标题保留(v0.11.1):移动时同步修复官方投影缓存 record 的 identity.cwd,移动/重启后列表标题不再丢失(0.11.0 及以前会回退显示成工作区名,打开会话一次才恢复)

🔍 只看活跃会话(v0.10.0)抽屉头部搜索按钮左侧的「只看活跃会话」开关:

- 活跃定义:会话最后操作时间(updatedAt)落在本地日历“今天”;归档/subagent 会话不计入
- 一键筛选:开启后只显示今天有操作的会话及其所在工作区,再次点击恢复完整列表
- 状态持久化:开关状态存 localStorage,刷新后保持;按压态有主题蓝底色高亮
- 与搜索共存:搜索词非空时筛选自动暂停并恢复完整列表,清空后继续筛选
- 空态提示:没有任何当天活跃会话时列表区显示“今天没有活跃会话”小字提示

🤖 新会话首轮自动起名(v0.11.0)每个新会话第一轮结束(turn/end)后,延迟约 1.5 秒自动调用大模型,用会话自身的模型(request header 里的 provider/model,无需配置)把标题改成一个有意义的名字:

- 上下文完整:取第一轮的用户提问 + 助手回答(思维链丢弃),起名质量远高于只取首条消息
- 生效范围(重要):仅在非官方 DeepSeek 模型路由(provider ≠ deepseek-official)下生效——官方路由的内置 LLM 起名本身可用(官方适配器对 session-title 强制关闭思维链),本插件让位不重复调用
- 为什么需要它:内置 LLM 起名在"推理模型 + liteLLM/pi-ai 路由"下必挂(起名额度 64 token 被思维链吃光、正文为空),只剩"第一轮前几个字"的兜底名;本插件用 2048 token 额度 + 完整回合上下文补上
- 落库方式:经官方 sessionTitle.rename 追加 session/title 事件(seq 最新者胜出),并把标题钉住——不会被之后的自动生成覆盖;你在第一轮里手动改过的名字也不会被覆盖
- 一次性:每个会话只触发一次;仅处理新顶级会话(subagent 会话不处理)
- 可开关:设置卡「新会话首轮自动起名」开关(默认开),关闭后回退官方默认行为

📦 安装

使用 DSH CLI
dsh plugin --profile web add dsh-session-xc

或使用 npm
npm install dsh-session-xc

安装后重启 DSH,侧边栏工作区列表将显示增强功能。

⚙️ 配置

| 选项 | 默认值 | 说明 |
| showSessionCount | true | 显示会话数统计 |
| showArchiveEntry | true | 工作区操作区显示归档入口 |
| enableSessionMove | true | 启用拖拽移动功能 |
| showActiveFilterEntry | true | 搜索按钮左侧显示“只看活跃会话”开关按钮 |
| autoTitleFirstRound | true | 新会话第一轮自动起名(仅非官方模型路由生效;官方路由已有内置 LLM 起名) |

🎮 使用指南

查看会话统计
- 查看工作区名称旁的数字
- 展开工作区查看详细信息
- 绿色数字表示未读完成的会话

恢复归档会话
1. 点击工作区旁的归档按钮(文件夹图标)
2. 在归档面板中找到目标会话
3. 点击「恢复」按钮

删除归档会话
1. 在归档面板中找到目标会话
2. PC 端点击红色「删除」按钮
3. 移动端左滑后点击「删除」
4. 确认删除

只看活跃会话
1. 点击抽屉头部搜索按钮左侧的漏斗图标按钮(开启后呈主题蓝按压态)
2. 列表只显示今天有操作记录的会话及其工作区;组折叠时含活跃会话的工作区仍保留,点开即可见
3. 再次点击按钮恢复完整列表;开关状态刷新页面后保持

新会话首轮自动起名
1. 新开一个会话并完成第一轮对话(提问 + 回复结束)
2. 约 1.5 秒后,插件用该会话自身模型生成一个有意义的标题并写入会话
3. 侧边栏/标签页显示的名字自动更新;之后不会再变(除非你手动改名)

仅非官方模型路由生效:官方 DeepSeek 模型(deepseek-official)下内置起名已可用,本插件不重复调用。

移动会话到其他工作区
1. 长按会话行开始拖拽
2. 拖到目标工作区或该工作区下的会话
3. 目标高亮时释放
4. 确认移动(若提示"已排队",说明该会话在本 DSH 进程内常驻,重启 DSH 后自动完成移动)

🔧 数据来源

- 工作区数据:RPC workspace.list
- 会话数据:RPC sessions.list
- 轮询刷新:store 订阅 + 页面可见时即时刷新 + 60 秒心跳(v0.10.0 起跨天筛选态自动收敛)
- 活跃判定(v0.10.0):sessions store 的 updatedAt(官方行相对时间同源字段);行↔会话映射优先读官方组件 React fiber(props.node / props.group.sessions 全集),失败回退标题匹配并 fail-open
- 移动安全(v0.9.0+):兼容 DSH 0.1.5 会话格式代际(session.jsonl.zstd / session.vN.jsonl.zstd 多代并存):移动只重写编号最高代文件的 header 帧,低代历史文件逐字节原样随行
- 标题提示保留(v0.11.1):官方列表标题走 sessionProjectionCache 零 I/O 提示,record identity 与 header 严格匹配(含 cwd);移动后同步改写 record 的 identity.cwd(官方 put() 写链优先、磁盘原子改写兜底),标题跨移动/重启不丢
- RPC 通道(v0.9.0+):DSH 0.1.5+ 走 /api/dsh-session-xc/ 精确路由(复用官方认证围栏), transport 失败自动回退旧 /dsh-session-xc 通道(0.1.5 的 connection.rpc.handle 存在第三方插件注册回归,旧通道在 0.1.5 需宿主侧补丁才可用)

📱 移动端适配

- 触摸友好:44px 最小触控区域
- 滑动手势:左滑显示删除按钮
- 响应式布局:自动适配不同屏幕尺寸

📄 许可证

MIT

🔗 链接

- GitHub
- npm
- 问题反馈
预览分享卡片长什么样 ↓xchannel1987/dsh-session-xc
分享 · DeepSeek Harness Hub
xchannel1987/dsh-session-xc

统计会话数并支持归档、删除与跨区移动

这是你的仓库?认领条目

回到顶部