跳到主内容

dsh-session-manager 使用指南

为 DSH Web 界面补齐完整的会话管理能力:回收站删除、归档恢复、继续/暂停、未读标记、fork、工作区管理与上下文压缩阈值。

本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。

本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。

快速上手

dsh-session-manager

— 源: plugin_wiki.wiki_content

安装与验证

dsh plugin --profile web add dsh-session-manager

复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。

— 源: plugins.install

关键要点

  • 设置页新增独立的「会话管理」分栏(与 Notifications 同级的设置分区)
  • 面板列出全部会话(标题 / 工作目录),底部折叠区单独展示已归档会话,支持一键恢复回到会话列表
  • 回收站:删除的会话移入回收站(保留最近 10 条,超出自动清除最早一条),可恢复或彻底删除
  • 统计:每个会话可在居中弹窗中查看完整近期活动统计(轮次 / 用户消息 / 助手消息 / 全部工具调用 / 活动窗口)
  • 继续会话:一键打开会话并关闭面板;暂停:停止正在运行会话的当前回合

— 源: plugin_wiki.readme_zh (fallback readme_raw)

常见问题

安装后需要做什么?

安装完成后需要重启 dsh web。Host 插件和服务端的 client bundle 都在启动时加载,不重启不会生效。

能不能删除正在运行的会话?

不能。删除按钮在运行中的会话上会被禁用并拒绝请求;只要当前会话处于思考中状态就受保护。当前打开但空闲的会话可以删除。

回收站能保留多少条?满了怎么办?

最多保留 10 条。再删除新会话时,最早进入回收站的那条会被自动彻底清理(文件也会被删除),无法恢复。

子代理(subagent)会话被删了怎么办?

即使主会话已经删除,子代理会话变成"孤儿"也能在会话管理里直接清理。子代理会话非运行中即可删除。

"上下文压缩阈值"配置保存在哪里?

持久化在 DSH 存储域(~/.dsh/storages/dsh_delete_session.json)。如果默认 Agent 预设是用户预设,会同步写入对应 agent.cordis.yml 的 compaction-basic 配置;系统预设只读。运行时每个 agent/pre-step 钩子强制把阈值套用到所有预设的压缩引擎上,所以重启后也立即生效。

未读标记和官方未读有什么区别?

官方未读是琥珀色(等待输入)和绿色(完成提醒)的点,点它们会"就地已读"——不跳转页面,只清除官方提醒。本插件的蓝色未读是手动标记,存在浏览器 localStorage(共享 key dsh.session-unread.v1,可与其他会话管理插件互通);打开会话自动已读。

侧边栏的蓝色未读点会一直准确吗?

官方侧边栏的行元素不带会话 id 属性,本插件按标题文本匹配并用 MutationObserver 注入蓝色点;会话管理抽屉内部按真实会话 id 精确标记,不受影响。重复标题的会话在侧边栏会共享同一个点。

— 源: plugin_wiki.faq_json

兼容性

  • DSH: >=0.1.0-rc.6
  • Node: ^22.19.0 || >=24.0.0

— 源: plugin_wiki.compatibility_json

踩坑提醒

安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。

— 来源:通用规则