Repository navigation
Releases
Releases · EarthPretender/dsh-session-delete
dsh-session-delete v0.2.0
dsh-session-delete v0.2.0
当次启动使用过的会话可直接删除;有任务在跑的会话提醒一次、再点一次即停止任务并强删。
新增 / Added
- live 会话可删:删除前先停用内存实例——
flush落盘 → detach 会话条目 → 注销 agent(顺序固定:先会话后 agent,否则 DSH 会把刚删的行重新公告),写句柄随之关闭;日志删除带文件锁重试(15×100ms),不再出现"删除无效"或需要重启。 - 强删忙碌会话:直接确认时宿主返回"正在执行任务"(409),行会变为"再次点击:停止任务并强行删除"(6 秒自动还原);再点一次先调官方
workspace/session-stop(最多等 4 秒,SESSION_DELETE_STOP_WAIT_MS可调),任务拒绝停止也照样删。 - 回退保护:若 DSH 内部结构变化导致无法停用会话,明确 409 提示重启,绝不半删。
- 自检 12 → 16 项(停用顺序、强删路径、有界等待、回退拒绝、强删行客户端流程);tarball 现在包含
scripts/,安装后npm test可用。
安装 / Install
pnpm install 后重启 DeepSeek Harness。MIT。
dsh-session-delete v0.1.1
dsh-session-delete v0.1.1
修复删除后侧栏行不消失的问题,并加固 live 会话保护。
修复 / Fixed
- 删除后行立即从列表消失,无需重启:宿主补发官方的
api-session/removed事件(dsh-api-remotes转发到每个浏览器)——此前 DSH 只在 live 会话 dispose 时才发它,冷会话的行会留在浏览器启动快照里、掉进"未分组"直到重启。幂等的重复删除也会再广播一次,用来清掉残留旧行。 - registry header 索引重建:删除后立刻从磁盘重建,
sessionKnown不再声称该会话存在。 - 本启动中使用过的会话拒绝删除(409):它的写句柄仍开着,jsonl 后端会在下次写入时重建被删目录(删除会"复活");提示重启后再删。仅浏览历史不算"使用过"。
- 客户端成功文案改为"已删除"(不再需要重启提示);自检扩充到 12 项(live 409、移除广播、header 重建、旧 registry 优雅跳过)。
安装 / Install
{ "dependencies": { "dsh-session-delete": "github:EarthPretender/dsh-session-delete" },
"dsh": { "profile": { "bundles": ["dsh-session-delete"] } } }pnpm install 后重启 DeepSeek Harness。MIT。
dsh-session-delete v0.1.0
dsh-session-delete v0.1.0 — 首次发布 / first release
在 DSH 会话「…」菜单的**“归档会话”下方新增一行红色“删除会话”**:真正删掉该会话的数据,而不是只把它归档。
功能 / What it does
- 菜单行:垃圾桶图标 + 分隔线,位于官方“归档会话”下方(槽
sidebar.workspaces.session.menu.item)。 - 二次确认:第一次点击变为“再次点击确认删除”(6 秒无操作自动还原),第二次才执行;菜单保持打开并在行内显示结果。
- 失败可重试:会话正在跑任务(409)或宿主不可达时,行内显示原因、保持红色,再点一次即重试。
- 真删除:删除
sessions/<工作区>/<会话id>/日志数据,并通过 workspace registry 的官方持久化写清理登记(unpin→unarchive→detachSession),workspace.json由 registry 自己写,内存与磁盘始终一致。 - 安全:删除接口挂在 DSH 共享的
/api通道(connection.registerFetchRoute),继承官方admit()鉴权;与官方归档共用workspace/session-activity活动闸门,运行中的会话拒绝删除。幂等;不可逆。
安装 / Install
// ~/.dsh/profiles/desktop/package.json
{
"dependencies": { "dsh-session-delete": "github:EarthPretender/dsh-session-delete" },
"dsh": { "profile": { "bundles": ["dsh-session-delete"] } }
}然后 pnpm install 并重启 DeepSeek Harness。安装后出现在 设置 → 插件,可随时开关。
下方附预构建 tarball(dsh-session-delete.tgz,免构建直接装)。
自检 / Self-test
零依赖自检覆盖身份一致性、两半契约、路由契约、拒绝分支、真实删除与幂等:
npm test兼容 / Compatibility
DSH 0.2.0-rc 系列(Web / Desktop profile),宿主 Node ≥ 22。MIT。
{ "dependencies": { "dsh-session-delete": "github:EarthPretender/dsh-session-delete" }, "dsh": { "profile": { "bundles": ["dsh-session-delete"] } } }