
Security News
Deno Goes the Way of the Dinosaur
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.
dsh-archived-chats
Advanced tools
A local-first archived-chat center for DeepSeek Harness
dsh-archived-chats
English · 简体中文
Plugin market · npm · Releases · Discussions · Private security report
Archive Management gives DeepSeek Harness a place to find chats hidden from the main chat area after archiving. It keeps DSH's single-chat archive workflow and adds workspace bulk archiving, search, preview, backup, and a workspace-based Recycle Bin workflow.
The English name is Archive Management, and the Chinese name is 归档管理. The installation package remains
dsh-archived-chats.This document follows the
mainbranch and targets 1.5.2. This release fixes imported-title cache compatibility with newer Hosts while retaining support for the older interface. See the changelog for release history.
Search for dsh-archived-chats in DSH's plugin market, verify the author is Ultronen, and choose Install. After installation, follow the host's restart instructions. The settings entry is 归档管理 in Chinese; in English it is Archive Management.
Alternatively, run this command on the computer running DSH:
dsh plugin --profile web add dsh-archived-chats@latest
Restart DSH, then open Settings → Archive Management (Chinese: 设置 → 归档管理).
Before updating an older installation, read “Upgrading from older releases” below. To update:
dsh plugin --profile web update dsh-archived-chats
| Area | Current behavior |
|---|---|
| Browse and search | Workspace-grouped archived chats, full-text search, filters, sorting, tags, and notes. |
| Workspace archiving | Unarchived offers individual, workspace-wide, and global archiving with aggregate confirmation; blank, active, or unreadable chats are skipped. |
| Read-only preview | Conversations, reasoning, tool activity, Markdown, JSON, code, and readable stored images without unarchiving. |
| Backup | Export one workspace or the entire archive as JSON + Markdown ZIP; preview imports and skip conflicting IDs. |
| Recycle Bin | Move archived chats by workspace or selection; restore one chat, a workspace, or the entire Recycle Bin back to Archived. |
| Permanent deletion | Delete one archived chat, a workspace's archive, or all archived chats after confirmation. Recycle Bin deletion is separate. |
| Residual chat check | Entering Storage & Retention automatically checks for subagents whose parent no longer exists; search, select, preview, back up and confirm permanent deletion of selected records only. Empty chats are excluded. |
| Storage and relationships | Storage accounting, optional automatic Recycle Bin cleanup, and read-only Origins & Branches. |
The six views are Archived, Unarchived, Recycle Bin, Storage & Retention, Origins & Branches, and About. Unarchived shares Archived’s search, filters, and workspace-group layout, offering read-only chat previews and individual, workspace-wide, and global archiving. Archiving does not create historical versions; Recycle Bin protection snapshots support recovery, not a browsable version-history library.
These screenshots show the current interface with synthetic example chats; they contain no private conversations. The marketplace screenshot list uses the same files in the same order.
The Archived header has Select and More. More contains Import backup, Export all, Unarchive all, Move all to Recycle Bin, then Delete all after a separator. The Recycle Bin header directly shows Restore all and Empty Recycle Bin without a More menu. Recycle rows retain the preview icon and use compact Restore and Delete text buttons. Workspace and global restoration separately confirm scope, counts, and the Archived destination, skipping pending deletions. Empty Recycle Bin still requires irreversible-action confirmation. The header keeps consistent dimensions across tabs. Workspace actions and global export, unarchive, and deletion ask you to confirm the complete archive scope and chat count.
About shows the running version, author, license, guides, project and feedback links, and Check for updates. Opening the page checks public npm version metadata in the background, at most once every 12 hours during a running backend session; failures never block archive management. A newer version adds a Get update link beside the title, opening the plugin market without installing or restarting anything. Follow the host's restart guidance when convenient; a browser refresh alone may not load an updated backend. No chat or backup content is sent during update checks.
Preview keeps real user messages on the right and the assistant's work on the left. Fully loaded, completed turns group intermediate work into a collapsed process disclosure, with the final response outside it. Partial turns remain in event order. After updating, reload the DSH backend to use the new preview projection; refreshing the browser alone is insufficient.
Choose Select to check one or more chats, then Unarchive or Delete permanently. More contains Export selected and Move to Recycle Bin. Select all checks only current search/filter results; hidden selections remain selected with a visible count. Cancel exits and clears the selection. Ordinary rows have no export or recycle buttons. Workspace and global actions include chats hidden by filters. Workspace actions do not delete workspace/project directories. See the action scope table before bulk operations.
Empty Recycle Bin acts only on the exact recycle-record incarnations shown at confirmation. Records added afterward are excluded; a changed target fails instead of widening the confirmed scope. A chat without a working directory remains in Archived because this Host cannot make it reachable from the main chat list; a missing workspace alone can still restore as ungrouped.
$DSH_HOME/plugin-data/archived-chats/; the plugin does not upload or cloud-sync chats. Update checks request only public npm version metadata, without chat or backup content.Successful exports are validated against the same format and budgets as import before the download starts. The browser buffers a validated ZIP with a five-minute timeout and 320 MiB response cap; this limits response bytes, not peak browser memory. “Backup download started” does not mean the browser has saved the file to disk.
Names and versions: Version 1.4.2 changes the export writer only; the menu names below are unchanged. Version 1.4.1 uses Archive Management; 1.4.0 labels its English menu Session Archive. Both correspond to 归档管理 in Chinese and are the same plugin. The Chinese entry, package name, install command, and data location are unchanged. Update to 1.4.1 or later and restart DSH to load the renamed English entry.
The standalone History and cleanup-preview interfaces have been removed; do not use older screenshots to locate them.
Startup recovery removes old snapshots that are not referenced by current recycle records, including plugin-owned attachment copies. They are not placed in the Recycle Bin. This cleanup is independent of the optional Recycle Bin retention setting.
Referenced protection snapshots are kept. Removing an unreferenced snapshot does not delete its source chat; already-confirmed deletion retries and enabled retention cleanup are separate operations.
If old snapshot content is still needed, recover/export it using a supporting older version before updating, preserve required attachments separately, or make an offline backup of the full plugin-data directory. Before downgrading, finish pending deletion tasks and back up data; older releases may not understand snapshotless pending-deletion records.
The package declares DSH >=0.1.0-rc.7; individual features depend on public Host capabilities.
| Host capability | Dependency or limitation |
|---|---|
| Public archive API | Required for workspace bulk archiving; unsupported requests make no changes. |
| Session and attachment reads | Used by preview/search; unavailable attachment reads degrade images only. |
| Session-scoped physical location | Required for session-directory accounting and permanent deletion; shared directories are never used as purge targets. |
| Public writer | Required for ZIP import and snapshot fallback; restoring an intact original does not rewrite its log. Plain legacy create/append is not enough for safe ZIP restore unless the provider explicitly guarantees exclusive creation. |
| Modern handles | Fork titles, preview/search, and Recycle Bin moves are supported. ZIP v2 preserves inherited boundaries; import uses create/append/flush/close and a safe session-scoped rollback location. Ordinary v1 ZIPs remain readable, but ambiguous seeded v1 sources are refused rather than flattened. |
| Host module resolution | DSH 0.1.6-alpha.2 added a resolution layer that fails on any dependency requesting a builtin name with a trailing slash. Before 1.4.2 this package reached readable-stream@4 through zip-stream, so the plugin aborted Host startup as soon as it loaded. 1.4.2 uses fflate for export and no longer carries that chain; update before running on those Host versions. |
Recycle Bin preview still depends on the original session; a missing original may prevent preview even when a protection snapshot can restore it. See compatibility and limits.
The declared range remains capability-based. Release automation tests Node.js 18 on Ubuntu and Node.js 24 on Ubuntu, macOS, and Windows; the Node.js 24 matrix requires the official @deepseek-ai/dsh-session@0.1.7-rc.2 Host backend integration (8/8) and package checks, including the v4 session format.
| Resource | English | 简体中文 |
|---|---|---|
| User guide | Read the guide | 查看指南 |
| Architecture | Maintainer architecture | 维护者架构 |
| Release history | GitHub Releases | GitHub Releases |
See also Support, Security, Contributing, Code of Conduct, and Discussions. Before claiming work or opening a pull request, contributors must read the Contributing Guide in full.
Archive Management is actively maintained. The latest stable npm release receives fixes and security updates; older releases should be upgraded before reporting a problem. Reproducible bug reports and focused pull requests are welcome. Accepted community tasks are marked help wanted; read the claim workflow before starting substantial work. Maintenance is performed as availability permits, so no fixed response or release schedule is promised.
npm test
npm ci --prefix test/fixtures/native-host --ignore-scripts --include=optional
node scripts/run-native-integration.mjs
npm pack --dry-run --json
The suite covers Host and browser behavior, export/import, snapshot fallback recovery, Recycle Bin, retention, search, responsive layout, public types, package contents, and repository hygiene. The native commands install the locked @deepseek-ai/dsh-session@0.1.7-rc.2 fixture and require all eight native integration cases to run without skips. All checks use isolated temporary data and never read real sessions.
dsh plugin --profile web remove dsh-archived-chats
Uninstalling removes only the plugin package and preserves $DSH_HOME/plugin-data/archived-chats/; it does not run a permanent purge. Reinstallation follows the installed version's startup recovery and cleanup rules, including unreferenced-snapshot cleanup. Back up needed data before uninstalling or manually removing plugin state. See local data and uninstall.
FAQs
We found that dsh-archived-chats demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.

Security News
Anthropic’s free OSS Scanner uses Mythos and other Claude models to find open source vulnerabilities and send maintainers reports with proposed fixes.

Security News
On Front Lines’ Early Adopters: CISO podcast, Andrew Becherer shares lessons from Datadog, weighs the long-term costs of AI-built tools, and explains how founders can actually gain a CISO’s trust.