dsh-codex-session-deletetool

DSH PLUGIN会话与消息

仓库 memoryovo/dsh-codex-session-deletetool

会话与消息 未标注验证等级 安全审查:未标注 可信度:未标注 可安装插件

一个插件,两件事:把 Codex UI 1.1.49 的侧边栏冻结进来,并补上真正能用的「删除会话」。

一句话选型结论

按资料字段整理

dsh-codex-session-deletetool 是会话与消息类的 DSH 可安装插件,未做沙盒验证,暂无安全审查结论,没有现成安装命令,需要按仓库 README 接入。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类会话与消息 收录类型可安装插件 验证等级未标注验证等级 安全审查未标注
验证等级 UNKNOWN 未标注验证等级
GitHub 星标 未标注 复刻 未标注 · 未关闭 issue 未标注
最近更新 未标注 创建于 未标注
README 10.2 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
  1. 1
    确认版本与运行环境

    仓库没有标注兼容版本与 Node.js 要求,先确认你的 DSH 版本能装,再继续。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本未标注版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

验证等级与安全审查

未标注验证等级
自动化流程结论,不是人工审核
验证等级未标注验证等级上游未给出验证结论,安装前请自行确认
安全审查未标注静态分析结论,未标注不代表已通过审查
仓库健康度未标注按仓库活跃度与最近更新时间给出
可信度未标注综合仓库活跃度与验证结果

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 基础信息齐全,可以先按仓库说明试装。

先想清楚的地方

  • 安全审查还没结论,装之前先看仓库改了什么、要什么权限。
  • 没有现成安装命令,要按仓库 README 手动接入。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在会话与消息场景里给 DSH 补能力的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-codex-session-deletetool当前 未做沙盒验证 未标注 未标注 未标注 无
dsh-desktop L3 · 安装规范通过 低风险 3.0 万 未标注 无
openpets L4 · 沙盒安装通过 低风险 1,274 未标注 有
deeptide L4 · 沙盒安装通过 低风险 1,104 0.1.1-rc.2 有
jingyun-dsh L3 · 安装规范通过 低风险 1,004 未标注 有
study-mate 未做沙盒验证 未标注 856 未标注 无

仓库档案

会话与消息
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方memoryovo仓库 dsh-codex-session-deletetool · 默认分支 未标注
分类会话与消息session
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言未标注仓库主语言
许可证未标注商用或二次分发前请确认条款原文
星标 / 复刻 / issue未标注 / 未标注 / 未标注收录时的数值,非实时
创建 / 更新未标注 · 未标注最后推送 未标注
本站收录2026-10-30首次进入本站目录的时间

README 全文

10.2 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-codex-ui-classic

一个插件,两件事:把 Codex UI 1.1.49 的侧边栏冻结进来,并补上真正能用的「删除会话」。

界面代码就在这个包里,装好之后不再依赖 @michengai/dsh-codex-ui;上游发什么新版都换不掉你现在的样子。
删除也不是归档隐藏——删掉的是会话日志、工程记录与投影缓存。

名字里的 classic 指的就是这一版界面:它冻在 1.1.49,不会再跟着上游变。



界面截图

会话菜单里多出「删除会话」 有未结束工作时的确认框 带家族时按层级勾选

三张图都来自真实运行:菜单里多出的红色「删除会话」是侧边栏自己渲染的,本插件只负责让守卫通过;中间那张展示「还有未结束的工作」的提示与「停止并删除」按钮;右边那张是一个带 3 个后代会话的家族树,子智能体(👤 图标)与派生对话(🔗 图标)按层级缩进、逐项勾选。


为什么要把界面搬进来

@michengai/dsh-codex-ui 用自己的一套侧边栏替换了 DSH 官方侧边栏,会话行上的菜单也是它自己渲染的。这带来两个连锁问题:

一、删除入口被守卫挡住。 Codex UI 的菜单里其实有删除项,但被一个守卫挡着:

// @michengai/dsh-codex-ui
function hasArchiveSessionDelete(value) {
return value !== null && typeof value === "object"
&& typeof value.deleteSession === "function"
}
canDeleteSession: () => hasArchiveSessionDelete(ctx.get("remote.workspaceRegistry"))

源码注释写得很清楚:「永久删除会话由归档管理插件通过 remote.workspaceRegistry.deleteSession 提供」。而默认安装里没有任何插件提供这个命名空间,所以那一行永远不出现。

二、上游一升级,界面就换了。 Codex UI 2.0.x 是一次重写:dcu-wb-actions、dcu-wb-more、dcu-wb-context-anchor、remote.workspaceRegistry、canDeleteSession 这些钩子在新版里一个都不剩(在 2.0.3 的 lib/client.js 里逐个搜索,命中数都是 0)。也就是说,任何依赖这些接缝的插件都会被一次更新打成废纸。

所以这个包干脆把 1.1.49 的客户端整份内置,自己就是那套界面:上游再怎么改,你看到的还是这一版。

这个插件做什么

1. 内置 1.1.49 的侧边栏(Apache-2.0,见 vendor/codex-ui/NOTICE.md)。

vendor/codex-ui/ 里是原封不动拷过来的 lib/client.js、lib/index.mjs、LICENSE 与 package.json。DSH 一个包只加载一个 Client bundle,所以 scripts/build-client.mjs 把内置的 bundle 拼在自有模块前面:前者仍然以 @michengai/dsh-codex-ui 注册自己,后者用一句 require('@michengai/dsh-codex-ui') 把它取出来,在 apply 里交给同一个 Client context。结果是一个包同时跑起 1.1.49 的界面和本插件的删除功能。

2. 提供 Codex UI 在等的那个服务。

在 Client 端 provide('remote.workspaceRegistry', { deleteSession }),hasArchiveSessionDelete 守卫随之通过,会话菜单重新长出「删除会话」。如果这个命名空间已经被别的插件(例如归档管理插件)以可用的 deleteSession 占用,本插件不会覆盖它——别人那套更完整,不该被遮蔽。

3. 把被藏掉的「⋯」按钮放出来。

会话行本来就有 ⋯ 按钮,但上游自己用样式把它藏了:

.dcu-wb-actions{display:none}                          /* 只在项目标题悬停、或该行菜单已打开时显示 */
.dcu-wb-context-anchor{opacity:0;pointer-events:none}  /* 有盒子,但看不见也点不到 */

原状下只能靠右键唤出菜单。本插件注入一条优先级更高的规则,悬停会话行时 ⋯ 正常显示、可点击,于是右键和三个小点两条路都能调出同一个菜单。

4. 顺手减掉用不到的导航。

内置界面里,专家 / 技能 / 连接器 / 定时任务 / IM 助理 这几项是写死的按钮(不走插槽),本包在构建时把它们删掉——扩展管理面板、折叠栏、搜索面板三处都删;「最近」分组只在有游离会话时才有内容,空着时连标题一起隐藏(有会话时会照常出现,不会把会话藏起来)。内置界面自带的那一页设置(标题就叫 Codex UI,正文是简介加一份「配套管理插件」安装清单)也整页删掉了,设置里不再有这一栏。改动点写在 scripts/build-client.mjs 里,带行号与锚点校验,内置文件本身没被改过。

删除时会发生什么

确认之后,Host 端真的把会话删掉:会话日志目录、工程记录与投影缓存一起移除,并通知前端从列表消失。不是加一个 archived: true 标记。

确认流程:不多弹一个窗

会话状态 流程
普通对话 菜单 →「删除会话」→ 侧边栏自己的确认框 → 删除完成
带着子智能体 / 派生对话 确认框先关掉,再弹出家族树:按层级列出全部后代会话,逐项勾选,确认按钮上写着「删除 N 个会话」
还有未结束的工作 弹窗顶部标出正在运行的会话,按钮变成「停止并删除」;Host 拒绝时会把最新活动状态回填到弹窗里

家族树里每个节点都有图标区分来源:session(本对话)、subagent(子智能体)、member(成员)、chat(派生对话)、linked(关联)。默认全选,可以只留一部分。

安装

从插件市场安装(推荐)

在 DSH 的插件市场里搜 dsh-codex-ui-classic。

从 GitHub 安装

plugin_manager action=install_bundle target=https://github.com/memoryovo/dsh-codex-ui-classic

或者直接用发布包:

plugin_manager action=install_bundle target=https://github.com/memoryovo/dsh-codex-ui-classic/releases/download/v0.3.0/dsh-codex-ui-classic-0.3.0.tgz

本地目录安装

plugin_manager action=install_bundle target=<本仓库的绝对路径>

装好后重开页面即可。

> 先把 @michengai/dsh-codex-ui 停用。 两个插件都会占据 sidebar 插槽(都以 priority -1 注册),同时启用会互相抢位置。本包自带界面,不再需要它:
>
> text > plugin_manager action=set_bundle target=@michengai/dsh-codex-ui enabled=false >

依赖

  • 运行时不依赖 @michengai/dsh-codex-ui。 界面代码在 vendor/ 里,安装时不会去拉上游包。
  • 不依赖 better-dsh-session-deletetool。 删除引擎已内置在 host.js 里(改编自该项目,MIT)。
  • 需要 DSH >=0.2.0-rc.1 <0.3.0-0,Node ^22.19.0 || >=24.0.0。

已知限制

  • 被 Harness 占用的会话,删掉之后可能回来。 如果会话此刻还开着(Host 内存里仍有它的 Session/Agent),删除只会清掉磁盘记录;下一次刷新列表时 Host 会把这个仍在内存里的会话重新列出来,之后的任何一次写入还会把它重新落盘。DSH 目前没有向插件开放「释放一个活动会话」的接口,本插件也不打算去拆 Agent 的生命周期。实际表现:关掉该会话所在的窗口/标签,或重启 DSH 之后再删,就是彻底的。
  • 内置界面固定在 1.1.49。 这是刻意的:新版的界面与钩子都变了。想要新版请直接装官方 codex-ui,并停用本插件。
  • session-title 子路径插件没有内置。 DSH 一个包只加载一个 Client bundle,同一包再挂一行指不到第二个 bundle;会话标题改用官方提供方,侧边栏本身不受影响。

工作原理

浏览器                                    Host
─────────────────────────────────────     ────────────────────────────────
client.js(一个 bundle,两个模块)
├─ @michengai/dsh-codex-ui   ← 内置 1.1.49 侧边栏
│    └─ 会话菜单:canDeleteSession 为真时出现「删除会话」
└─ dsh-codex-ui-classic
├─ provide('remote.workspaceRegistry', { deleteSession })
├─ 家族树弹窗(shell.overlay,order 62)
└─ 样式:放出「⋯」、隐藏空的「最近」

deleteSession(sessionId)  ── POST ──▶  /dsh-codex-ui-classic/delete
└─ host.js:会话日志 / 工程记录 / 投影缓存
然后 emit('api-session/removed')

Host 端只暴露四条同源 HTTP 路由(inspect、delete、catalog、delete-batch),都做同源校验;Client 端不直接碰文件系统。

目录结构

dsh-codex-ui-classic/
├─ client.js              # 构建产物:内置 bundle + 自有模块(勿手改)
├─ src/client.js          # 自有 Client 模块:服务、家族树弹窗、样式
├─ host.js                # Host 删除引擎与四条路由
├─ index.js               # Host 入口:自有 apply + 内置 apply
├─ scripts/build-client.mjs   # 拼装 client.js,并应用导航裁剪
├─ vendor/codex-ui/       # Codex UI 1.1.49 原样拷贝 + NOTICE
├─ locale/                # zh / en 插件元数据
├─ docs/screenshots/      # 截图
└─ cordis.patch.yml

改完 src/client.js 或 scripts/ 之后跑一次:

node scripts/build-client.mjs

致谢

  • 界面来自 @michengai/dsh-codex-ui 1.1.49,Apache-2.0。
  • 删除引擎改编自 better-dsh-session-deletetool(作者 Lzcdebear,MIT)。
  • 家族树、确认框与 Host 路由的取舍沿用该项目的设计。

License

本仓库自有代码为 MIT,见 LICENSE;vendor/codex-ui/ 为 Apache-2.0,见 vendor/codex-ui/LICENSE。

常见问题

4 问
答案由本站依据条目字段整理,不引用上游原文
dsh-codex-session-deletetool 怎么安装?

本站没有抓到该条目的安装命令,请到仓库主页确认安装方式;这类条目多数是生态应用或尚未发布安装包的项目。

dsh-codex-session-deletetool 的验证等级是什么意思?

未标注验证等级。上游未给出验证结论,安装前请自行确认

dsh-codex-session-deletetool 安全吗?

未标注。

dsh-codex-session-deletetool 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

会话与消息
按星标排序,可作替代方案

dsh-desktop

dsh-desktop

为 DeepSeek Harness (DSH) 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。

L3 · 安装规范通过 3.0 万 星

openpets

openpets

L4 · 沙盒安装通过 1,274 星

deeptide

deeptide

L4 · 沙盒安装通过 1,104 星

jingyun-dsh

jingyun-dsh

井云 DSH 客户端插件,为 DeepSeek Harness 注入会员登录、订阅支付、算力管控与应用市场,让智能体和技能快速变成可交易商品

L3 · 安装规范通过 1,004 星

study-mate

study-mate

StudyMate 是 DSH 的「学习模式」预设与技能包,为数学、计算机科目定制学习路线、讲解课件与练习评估,跨科目共享记忆。

未标注验证等级 856 星

memoryovo 的其它插件

1 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 —。