dsh-workspace-archive
IdentifiedBatch-archive or restore all conversations of a workspace from a sidebar panel or its row menu, hide a workspace from the sidebar once every conversation in it is archived, and pin workspaces to the t
Workspace Archive
@local/dsh-workspace-archive 0.2.1, a plain-JavaScript DSH Web / Desktop plugin with no build step.
Archive or restore a workspace's conversations in one action. Once all real conversations are archived, the entire workspace disappears from the sidebar, including its blank New Session entry. It remains available in the Workspace Archive management panel. Restoring any real conversation shows it again. Workspace pinning is also supported.
Usage
Open the archive icon in the sidebar. The panel shows each workspace's path, session counts, Archive all, Restore all, pin controls, and an expandable conversation list. A hidden workspace carries a Hidden from sidebar tag. Session row menus also offer workspace archive and pin actions.
Archive requests ask for confirmation. Running sessions are skipped by default; work stops only when the operator explicitly selects Also stop running sessions or the corresponding retry action. A floating progress card permits panel navigation and cancellation of remaining work. Results report failures and offer an undo action.
Visibility and restoration
- A workspace with real conversation history is hidden when all that history is archived. Blank placeholders and subagents do not prevent hiding.
- Unarchived conversations, including skipped running sessions, failed archive calls, or unfinished cancelled batches, keep the workspace visible.
- Empty and blank-only workspaces remain available for starting work.
- Visibility derives from the Host's durable archive set, so it survives reloads and applies to workspaces archived by older plugin versions without another archive action.
- Hidden sessions do not reappear under Ungrouped, flat browsing, or sidebar search. Sidebar archive filters do not show the hidden workspace; use this plugin's panel to restore it.
- Restore any real conversation to show the workspace again, or Restore all to restore its group. Individually archived blanks remain restorable too.
- Workspace registrations, logs, directories, membership, and saved workspace expansion/manual order are retained. Hiding a parent does not archive separately registered child workspaces.
Pinning
Pins use the Host's workspaces.insertBefore reorder and keep the pinned block ahead of new workspaces and manual moves. The most recent pin leads; unpinning places a workspace below the remaining pinned block. Order is Host-durable, while pin membership is browser-local under dsh.workspace-archive.pinned-workspaces. Controls are hidden when the reorder API is unavailable.
Installation and updates
Install this directory through the DSH plugin manager. The manifest's dsh.bundle.patch points to cordis.patch.yml, inserting the workspace-archive row. The Host entry has no business behavior; archive operations still use uiWorkspace.archiveSession/unarchiveSession.
Use the manager's application and nextStep results to determine whether an update is live. Source edits alone do not imply an existing browser has reloaded the code. Refresh the current DSH page after updating; restart Desktop first when the manager requires it.
Compatibility and rollback
The 0.2.1 sidebar contract was checked against DSH 0.2.1-rc.3. That version exposes neither a workspace visibility filter nor an official occupant-wrapper API. The isolated installSidebarFilter compatibility adapter wraps the live sidebar.workspaces entry's component and filters only its workspace/session props. The entry's existing children, store, inject face, locale, and actions remain in place. It does not redeclare children, import Harness Client packages, or read/write other plugins' DOM.
This depends on the mutable entry representation, not a Host-guaranteed stable filter extension point; Host upgrades need regression verification. The adapter follows the declaration lifetime through slots.inject, observes entry replacement, and restores the original component when unloaded. The management panel keeps the full snapshots. Disabling the plugin removes workspace hiding but leaves session archive records intact.
Checks
node scripts/check.mjs
node --test 'test/**/*.test.mjs'
Coverage includes archive button wiring, running-work refusal, pins, completed workspace hiding, blank placeholders, partial archives, missing summaries, loading baselines, Ungrouped/search leakage, restoration, saved account keys, entry replacement, and unload restoration. See VERIFICATION.md for installation and browser validation limits; stubbed component tests do not establish the actual rendered result.
Comments
Loading…
Similar plugins
by SUZUNAMI
Hide selected workspaces from the DSH sidebar without deleting anything: local-only, reversible, with a Settings management page.
★ 0
MIT
JavaScript
Sep 22, 2026
dsh plugin --profile web add dsh-workspace-hideby d0ublecl1ck
DSH Web 插件:最后一个未归档会话被归档的瞬间自动隐藏该工作区行,另在工作区行「…」菜单里追加「隐藏工作区」并配官方 Modal 恢复入口;只切 display,不归档、不删除、不改写任何工作区注册与会话数据。
★ 0
MIT
JavaScript
Oct 7, 2026
dsh plugin --profile web add dsh-hide-empty-workspaceby SZMY-haruhi
Sidebar archive directory for DSH Web: restore a session to its original workspace slot, delete the session log, or edit-and-branch a user message into a new conversation.
★ 2
↓ 140/wk
MIT
TypeScript
Oct 12, 2026
dsh plugin --profile web add dsh-session-plusby chou109
DSH Web 侧边栏底部的归档会话抽屉:按工作区分组折叠,一键恢复并打开、复制为新会话或移回侧边栏。 Archived-session drawer at the bottom of the DSH web sidebar: grouped by workspace; restore & open, fork, or unarchive with one click.
★ 0
MIT
JavaScript
Oct 24, 2026
dsh plugin --profile web add dsh-archivesSession management for DSH: archive or delete one session, archive/delete all sessions in a workspace, and restore archived sessions from the settings page — archiving backs up workspace metadata and
★ 0
↓ 283/wk
dsh plugin --profile web add dsh-session-deleteby LumiDesk
Archived-conversation workspace for DeepSeek Harness: browse with previews, restore, recycle, and permanently delete — batch actions, crash-safe transactions, and an Agent-callable tool. 归档会话工作台:预览、恢复、回收站、彻底删除,支持批量与 Agent 调用。
★ 0
MIT
TypeScript
Oct 21, 2026
dsh plugin --profile web add dsh-archive-desk