dshbase

插件目录 / Developer / easy-archive

easy-archive

已验证 · 实测可装 bainianlaoyao

✓ 持续维护

查看 GitHub ↗ ← 返回插件目录

0Stars
0Forks
0未关闭 issue
—语言
2026-08-17最近推送
跨平台平台

功能简介

DSH web plugin: two-step inline archive on workspace sidebar rows — one click arms a red confirm, the second archives; archive is no longer buried in the ⋮ menu. · 工作区侧边栏行内两击归档

✅
我们的评价
可用 — 实测通过,早期项目

DSH web plugin: two-step inline archive on workspace sidebar rows — one click arms a red confirm, the second archives; archive is no longer buried in the ⋮ menu. · 工作区侧边栏行内两击归档 实测能干净安装、正常启动。早期项目,但功能可用。

「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

README

easy-archive

A DSH (DeepSeek Harness) web plugin that moves session archiving out of the
kebab (⋮) menu and onto the workspace sidebar row itself, as a two-step
inline button:

  1. Hover a session row — an archive icon appears right before the ⋮ button.
  2. Click once — the button switches to a red 「确认归档 / Confirm archive」 pill.
  3. Click again — the session is archived.

The archive item is removed from the ⋮ menu — archiving lives only on the
row, never buried in a submenu.

Features

  • Hover-revealed inline archive button on every session row (next to the ⋮ menu);
    one click arms the red confirm, the second commits.
  • Archive entry automatically hidden from the ⋮ menu whenever it opens
    (rename / fork stay where they are).
  • No slot takeover: the stock workspace browser keeps rendering; rename,
    fork, search, drag-reorder and everything else stay intact.
  • Archive runs through the same wire call the built-in menu used
    (ctx.workspaces.archiveSession), so behavior and permissions are identical.
  • Safety nets: the armed confirm auto-disarms after 4s, on mouse-leave, or on
    any click elsewhere; rows with ambiguous identities never get a button
    rather than risk archiving the wrong session.
  • Locale-aware (zh / en), no build step, no React dependency.

Install

From the DSH plugin market (recommended):

dsh plugin --profile web add github:bainianlaoyao/easy-archive

…or add it manually to the web profile's package.json:

{
  "dependencies": { "easy-archive": "github:bainianlaoyao/easy-archive" },
  "dsh": { "profile": { "bundles": [ "...", "easy-archive" ] } }
}

then pnpm install in the profile directory and restart dsh web
(new plugins enter the window.__DSH_BOOT__ graph at boot; later edits to
lib/client.js hot-apply on refresh).

How it works

The host half (lib/index.js) is an inert plugin row that carries the
dsh.client declaration into the profile's loader graph; the browser half
(lib/client.js) observes the sidebar DOM and, for every rendered session
row:

  • resolves the session id exactly from the ctx.sessions.list snapshot by
    display title (disambiguated by the rendered relative-time bucket when
    titles repeat),
  • stamps the row with the id and inserts a 16px archive button into the row's
    action cell, before the kebab,
  • removes the archive item from any ⋮ menu it sees open.

Clicking the button never bubbles to the row's "open session" handler.

Development

node scripts/smoke.mjs   # validate the browser bundle shape
node scripts/check.mjs  # (alias) syntax + smoke

Notes

  • Blank "New Session" rows and search-result rows never get the button.
  • Sessions whose display title and time bucket collide are skipped
    (conservative: no wrong-session archives).
  • Uninstall: remove the dependency and bundles entry, pnpm install,
    restart dsh web.

License

MIT

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 easy-archive」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:bainianlaoyao/easy-archive

Headless(CLI)profile:

dsh plugin --profile headless add github:bainianlaoyao/easy-archive

实测报告

验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。

安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Developer 里更多

浏览全部 7819 个插件 →