Skip to content

Releases

v0.7.2

Choose a tag to compare

@Lzcdebear Lzcdebear released this 03 Nov 19:53

Bulk double-click.

  • Double-clicking any row in the bulk dialog toggles only that row; its descendants keep their state. The row reads green (only itself), yellow (some descendants) or red (all descendants) from the actual selection.
  • Single click still selects or clears the whole subtree of a row.

v0.7.1

Choose a tag to compare

@Lzcdebear Lzcdebear released this 03 Nov 19:27

Selection fixes.

  • Single dialog: a click toggles only the clicked node; the main conversation and its children no longer select or clear each other. The top Select all box still takes the whole family.
  • Bulk dialog: a parent is blank unless it is selected, then green/yellow/red by its descendants. Double-clicking a root unticks only the root when it is ticked, and selects the whole family when it is unticked; other rows keep double-click-to-select-self.

v0.7.0

Choose a tag to compare

@Lzcdebear Lzcdebear released this 03 Nov 19:08

Single-conversation tree selection.

  • A parent checkbox is blank unless the parent itself is selected; once selected it is green (only itself), yellow (some descendants) or red (the whole family). Applies to the main conversation and to any child with children.
  • The top Select all box is red only when every node in the family is selected; anything else is blank.
  • The bulk dialog keeps its click-to-select-family / double-click-to-select-self rule.
  • The bulk dialog drops its long paragraph; the stop note joins the usage switch, and the action buttons stay right-aligned.

v0.6.4

Choose a tag to compare

@Lzcdebear Lzcdebear released this 03 Nov 12:03

An orphan fork no longer joins every family in its workspace.

  • Single-conversation delete: a fork whose parentSession is gone is no longer
    collected as a descendant of every conversation that shares its cwd; the
    family walk follows recorded lineage only.
  • Bulk management: such a fork keeps its tree under a placeholder row titled
    “已删除” plus the last six characters of the missing parent id. The row sits
    first in its workspace group, cannot be selected, and disappears once no child
    names it.
  • The placeholder is derived at read time from the children's headers; no session
    file is written.
  • Tests: catalog placeholder coverage, and a regression test that a missing-parent
    fork stays out of a live Session's family.

v0.6.3 — 用量开关、幽灵会话与桌面版语言修复

Choose a tag to compare

@Lzcdebear Lzcdebear released this 01 Nov 12:45

0.6.3 — 界面收敛与用量开关

0.6.1 与 0.6.2 未单独发布,改动合并进这一版。

新增

  • 用量开关:两个对话框共享一个「显示用量」勾选框,状态存在 localStorage。关闭后客户端请求带 usage=0,Host 完全不读会话日志,/catalog 与 /inspect 返回 usage: { disabled: true },所有本该显示 Token 或命中率的位置显示「已关闭」。
  • 批量面板底部新增一行说明,讲清楚会话缓存是什么、放在哪、删除时会不会动它。

调整

  • 批量面板:开关移到左下角「打开会话缓存目录」旁边;取消「刷新缓存」按钮。
  • 单会话对话框:取消底部的「打开主会话目录」,与概览卡头部重复。

修复(0.6.1 / 0.6.2)

  • 桌面版整段中文:inject 加入 locale,等桌面壳的语言服务就绪再运行;备用字典改为英文。
  • 幽灵会话:批次失败不再显示成「读取失败:HTTP 200」,改为读 failed[].message;catalog 标记无持久化记录的会话为 stale 并禁用勾选;部分成功时重新读取列表。
  • 批量对话框点不开:全选框引用了已重命名的变量。

English

  • Usage switch: one shared toggle, persisted in localStorage. Off sends usage=0; the Host never folds a log and every figure reads “Off”.
  • Bulk surface: the switch sits next to “open session cache folder”; the refresh-cache button is gone; a note explains the session cache.
  • Single dialog: the duplicate folder button at the bottom is gone.
  • Fixed: desktop locale race (inject now includes locale, English fallback); ghost sessions (failed[].message, stale rows, partial-batch refresh); a renamed variable that kept the bulk dialog from rendering.

Thanks

Issues and reports from @rowan-firm and @Wolf-Keys.

Full changelog: CHANGELOG.md

v0.6.0 — 会话管理:用量统计、家族树与批量管理

Choose a tag to compare

@Lzcdebear Lzcdebear released this 01 Nov 12:11

0.6.0 — 会话管理

从「删除会话」扩成完整的会话管理:单会话对话框加上用量统计与家族树,批量入口变成一个独立的管理界面。

新增

  • 用量统计:每个会话只统计自己发起的请求;父会话显示「自身/家族」。三色条 = 缓存命中输入(绿)/ 未命中输入(蓝)/ 输出(黄),命中率 = 命中 ÷(命中 + 未命中 + 写缓存)。
  • Fork 去重:跳过继承的日志前缀,请求按消息 id 去重,不会把父会话过去的消耗重复计到子会话。
  • 家族树:按 parentSession 逐层嵌套,跨工作区分组保留父子关系;子智能体的子智能体自然更深一层。
  • 本地目录:每行都有文件夹按钮,路径由 Host 通过 sessionPersistence.locate 解析,不按会话名拼路径。
  • 批量管理:每个家族一张卡片,支持搜索、按最后活跃 / Token / 命中率排序、按类型与工作区筛选、分页、删除选中、删除全部(二次确认)。
  • 缓存控制:打开 DSH 的投影缓存目录,或刷新插件自己的用量缓存;删除时是否清理投影缓存由用户单独选择。
  • 新路由:open-directory、open-cache、refresh-stats;delete-batch 支持 cleanCache。

English

  • Per-conversation usage: a node counts only its own requests; a parent also shows own/family. Three-way bar: cache-hit input (green), cache-miss input (blue), output (yellow). Hit rate = hit / (hit + miss + write).
  • Fork-aware: the inherited log prefix is skipped and requests are de-duplicated by message id.
  • The family tree nests by parentSession alone, across Workspace groups.
  • A folder button on every row; the Host resolves the path through sessionPersistence.locate.
  • Bulk management: one card per family, search, sort by last activity / tokens / hit rate, filters by kind and Workspace, paging, delete selected, delete all behind a second confirmation.
  • Cache controls: open DSH's projection-cache folder, refresh the plugin's usage cache.
  • New routes: open-directory, open-cache, refresh-stats; delete-batch takes cleanCache.

Full changelog: CHANGELOG.md

npm: npm install better-dsh-session-deletetool@0.6.0

v0.5.3

Choose a tag to compare

@Lzcdebear Lzcdebear released this 14 Oct 12:34

Both delete glyphs match the row they sit in, and stay crisp on scaled screens

  • The bulk control beside the workspace search now inherits the section header's colour, so the trash and the “工作区” label always resolve to the same computed colour; hover only adds the shared hover background, the way the shipped icon buttons behave.
  • Both glyphs are drawn as single stroked contours with shape-rendering: geometricPrecision instead of closed filled bands, whose hairline double edges went soft — and read as washed-out colour — on fractional-DPI (4K-scaled) screens.
  • The menu row's trash gained a centre bar, a wider lower half and two pixels of size (14px → 17px); the bulk glyph is 18px.

兼容 dsh-claude-style(Nwflower)主题:删除图标颜色与“工作区”三字同源,4K 缩放下更清晰;菜单桶新增中竖线并加宽桶底。

npm: npm install better-dsh-session-deletetool@0.5.3

v0.5.2

Choose a tag to compare

@Lzcdebear Lzcdebear released this 14 Oct 05:55

The bulk entry survives themed search styles

  • The bulk-delete control now mounts as the workspace search slot's previous sibling instead of inside it, so it stays visible under all three dsh-claude-style (Nwflower) search styles: 覆盖品牌 / 独立 / 图标.
  • It takes over the slot's margin-left:auto and pins the collapsed slot back to its 28px cell, so the header row reads as one evenly spaced icon cluster at the row's own 4px gaps; the expanded search input is untouched.
  • The icon's rest colour moved to --dsw-alias-label-tertiary, matching the icons it sits beside in themed builds.

兼容 dsh-claude-style(Nwflower)主题:删除图标在“搜索框样式”三档下都常驻,自动与相邻图标对齐、同色;工作区标题行四个图标等距排列。

npm: npm install better-dsh-session-deletetool@0.5.2

v0.4.1

Choose a tag to compare

@Lzcdebear Lzcdebear released this 04 Oct 16:31

Install from npm: npm install better-dsh-session-deletetool. That route is now the first section of both READMEs, ahead of the GitHub, local-copy and tarball routes (each moved down one number), and DSH's own plugin manager takes the same registry name for its install entry.

Nothing about the plugin's behaviour changed in 0.4.1. It is 0.4.0's code with the npm install route written down.


中文摘要:多了一条也是最省事的装法,npm install better-dsh-session-deletetool,或者把这个包名直接粘到 DSH 的插件安装入口。两个 README 的安装章节现在把 npm 排在第一条,GitHub、本地副本、tarball 依次顺延。0.4.1 没有改插件行为,就是 0.4.0 的代码加上 npm 安装说明。

v0.4.0

Choose a tag to compare

@Lzcdebear Lzcdebear released this 04 Oct 16:10

The npm package and the GitHub repository are better-dsh-session-deletetool now. The old spelling dsh-session-delete was already taken on npm by another author, so the name moved before the first publish. Every identifier that pointed at it moved in one pass:

  • the four Host routes: /better-dsh-session-deletetool/inspect, /delete, /catalog and /delete-batch;
  • the client module id, the locale namespace, the sidebar menu row, both shell.overlay seats and the bulk anchor's registration ids, the data-dsh-plugin marker, and the React display name;
  • the Host loader row in cordis.patch.yml — both the row id and the module name the profile imports;
  • the [better-dsh-session-deletetool] log prefix and the effect labels;
  • the repository / homepage / bugs URLs and every install target in the READMEs.

A profile that had the old name linked has to link the new one: the bundle key in dsh.profile.bundles and the dependency key in the profile's own package.json both change.

The family view is written down now. The dialog has drawn a conversation's subagents and derived conversations as one tree for several releases, but neither README said so out loud. Both now open that section by saying that the sidebar cannot show the relation and the dialog is the one place it is drawn, and the npm description says it too.

Everything else is 0.3.9: both dialogs drawing the same tree, per-subtree checkboxes, bulk delete, and the running-work gate. The changelog carries that history.


中文摘要:包名和仓库名都换成了 better-dsh-session-deletetool(旧的 dsh-session-delete 在 npm 上已经被别人占用,所以在首次发布前先改名)。四条宿主路由、客户端模块 id、locale 命名空间、侧边栏菜单项与两个 overlay 槽位、批量锚点、data-dsh-plugin 标记、cordis.patch.yml 里的加载行、日志前缀,以及 README 里所有安装地址,都一起改了。装过旧名字的 profile 需要把 dsh.profile.bundles 和依赖键换成新名。

README 和 npm 描述这次也明确写出了那个一直存在的能力:删除确认框是 DSH 里唯一能把一个会话的整个家族(子智能体、派生对话以及它们带出的下一层)按层级画出来的地方,删之前先看得见。