Repository navigation
Releases: PolinniZhong/dsh-session-workbench
Release list
v1.0.3 — DSH 0.1.7-rc.2 compatibility fix
DSH 0.1.7-rc.2 compatibility fix. No feature changes — the feature baseline is unchanged from 1.0.2 (session search → snippet → locate → recall + conversation-view tab bar show/hide + drag reorder).
Compatibility
- Plugin settings API re-model —
@deepseek-ai/dsh-settings0.1.7 removed thesettingsNamespacenamed export andSettingsService.register/get. This release addsConfig(schemastery, field group keeps the legacysession-kbnamespace, markedvolatile) and an adapter oversettings.describe/update, so the existing routes and settings readers keep working unchanged. - Self-drawn settings page —
settings.configure({ auto: false }, ctx.fiber), so the host no longer generates a duplicate automatic form. - Archive
storagespath fix — since 0.1.7,settings.documentPathpoints at the profile patch (<dshHome>/profiles/<name>/cordis.patch.yml) instead of<dshHome>/settings.yaml;storages/workspace.jsonis now probed across candidates, so archive filtering no longer reads the wrong path. - client inject cleanup — removed
@deepseek-ai/dsh-client-runtime, which no longer exists in 0.1.7; dropped the now-unused@deepseek-ai/dsh-settingsdependency. - Session open / locate — uses
ctx.uiWorkspace.openSession(falls back toctx.sessions.openon ≤0.1.6), fixing open/locate, which called a method that no longer exists. - Recall insert — 0.1.7's
conversationis a session-scoped service (official form:actx.get("conversation")); the input-reference span still goes through the officialslash/input-insert-referenceevent. - Older hosts —
≤0.1.6keeps using the legacy namespace-registration path.
Install
dsh plugin add dsh-session-workbenchv1.0.2 — 会话视图装饰不再误伤设置弹层内同数量 tab 条
Fixed
- 作用域限定会话视图标签条 —
applyViewConfig原遍历全文档所有[role="tablist"],凡 tab 数量等于会话视图数即按位置映射绑定data-view-id并应用「隐藏/排序」;设置弹层内其它插件页面若有同数量 tab 条(如 dsh-personal-center 的 4 个 tab 对 4 个会话视图),会被当作会话视图条、按位置绑到已隐藏视图的 tab 被display:none隐藏。现新增isConversationViewTablist守卫:跳过位于覆盖层/对话框内的 tablist;右键菜单取标签条同样改为取「会话工作区内第一个合格 tablist」,不再取全文档第一个。 - 守卫改为类名无关的祖先判定 — 覆盖层根类随 dsh 壳改版更名(
.dsh-tu-settingsRoot→.dshp-settings-sidebar),固定类名名单会失效导致误伤复发;现改为「任一祖先类名含settings即视为设置弹层内容」的判定,配合[role=dialog]/[aria-modal=true],不依赖具体类名。
v1.0.1 — DSH 0.1.1-rc.2 compatibility fix
Compatibility fix — DSH 0.1.1-rc.2 client module re-organization. No new features, behaviour unchanged.
Fixed
- DSH 0.1.1-rc.2 compatibility — removed
@deepseek-ai/dsh-client-ui-slotsfromdsh.client.inject: the module no longer ships separately in rc.2 (its API merged intodsh-client-ui-conversation, andctx.slotsis now provided bydsh-client-runtime). The stale inject made the client bundle fail to ready (HARNESS_NOT_READY: ... (0/2 ready)) and blocked the app from starting; inject is now[dsh-client-runtime, dsh-client-locale, dsh-client-ui-conversation].
Install
dsh plugin add dsh-session-workbenchv1.0.0 — 更名合并首发:会话库 + 会话视图(一个插件三入口)
Rename + merged first release. dsh-session-kb became dsh-session-workbench — one plugin, three entry points (sidebar Session KB / Settings Session KB / Settings Conversation views). The version jumps 0.3.0 → 1.0.0 to mark the shape change (merge), not a feature increment.
Added
- Conversation views (Settings) — a new Settings → Conversation views section: it enumerates the mounted
conversation.viewentries, each with a show/hide toggle and a⋮⋮handle for drag-to-reorder (HTML5 DnD; hidden views cannot be dragged and sort after the visible ones, in the order they were hidden). - Conversation views (tab-bar panel) — right-click / double-click the session tab bar to open the same panel: toggles + drag reorder, same interaction as Settings. The dragged row becomes a translucent ghost and the drop target gets a dashed brand-colour outline (pointer + transform, no jitter).
- Package name / display name / description unified to "Session Workbench / 会话工作台", carrying both the session library and conversation views keyword sets.
Changed
- Package
dsh-session-kb→dsh-session-workbench; cordis plugin rowsession-kb→session-workbench. - View hide/reorder happens at the DOM layer (no changes to the other view plugins' source): enumerate via
ctx.slots.entries('conversation.view'), visual ordering viastyle.order, hiding viadisplay:none, replayed by aMutationObserver. - All existing Session-KB features (search / snippet hits / locate / recall / archives) unchanged; regression passed.
Fixed
- Direct tab-bar dragging is unreliable (React owns the
tablist, so DOM reordering gets reverted) — dropped in favour of the panel + Settings.
Install
dsh plugin add dsh-session-workbenchVideos
Drag-to-reorder in Settings and from the tab-bar panel — see the two attached .mp4 files.
v0.3.0 — v1.2 same-session hits + composite locate anchors
v1.2 — same-session hits + more reliable locate
What's new
- Same-session multi-hits — expanding a fragment card now shows a "More hits in this session" fold with the other matches (first 5 by default, "Load more" via pagination), each with keyword highlighting — no more hunting for the rest of a session's matches;
- Composite locate anchors — Locate now matches the hit sentence plus the preceding event text (within the previous 1–3 DOM rows), so repeated wording lands on the right occurrence instead of the earliest one;
- Index-building notice — when a search exceeds ~2.5s (first index build), the loading state explains that the history index is being built, instead of an open-ended "Loading…".
Fixed
- Keyword highlighting was silently broken in expandable context / same-session hits / titles (
<mark>escaped as text) — now rendered safely viadangerouslySetInnerHTML; - Same-session cache was keyed by session only (switching search terms could show stale hits) — now bound to
sessionId:query; searchEventsendpoint now uses a 30s TTL cache like search;- README install example now uses an absolute index path — the platform does not expand
~(writing~/.dsh/...silently puts the index in the dependency tree and makes searches take minutes).
npm: dsh-session-kb@0.3.0 · GitHub: PolinniZhong/dsh-session-kb
v0.2.0 — v1.1 snippet-level retrieval
v1.1 — snippet-level retrieval
Search results are now fragment cards: the matched sentence highlighted with its surrounding context. Click Locate to open the old session, page the window back, and scroll to the exact message with a flash highlight.
What's new
- Fragment cards — per-session best-hit snippet + lazy-loaded context window (so you see the sentence, not just which session)
- Locate —
open+loadOlderpage-back + best-effort text match scroll & highlight; degrades to a non-blocking toast when the hit is out of range or unmatched - Sort — relevance (default) or latest-first
- Performance — persistent FTS index (built once on startup), host 30s search cache, client-local recent list & titles (the 27s / 34s stalls are gone)
- Removed dead host endpoints (
/session-kb/sessions,/session-kb/session/:id)
Screenshots
Install
dsh plugin --profile web add dsh-session-kbnpm: dsh-session-kb@0.2.0 · GitHub: PolinniZhong/dsh-session-kb

