@michengai/dsh-archive-manager 1.2.6 → 1.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,110 +1,114 @@
1
1
  <p align="center">
2
- <img src="assets/branding/dsh-banner-en.webp" alt="DSH Archive Manager" width="100%">
2
+ <img src="assets/branding/dsh-banner.webp" alt="DSH Archive Manager" width="100%">
3
3
  </p>
4
4
 
5
5
  <div align="center">
6
6
 
7
- # DSH Archive Manager
7
+ # DSH Archive Manager
8
8
 
9
- **Safely manage archived sessions in DeepSeek Harness**
9
+ **在 DeepSeek Harness 中安全管理已归档会话**
10
10
 
11
- [Русский](README.ru.md) · [简体中文](README.zh-CN.md) · [Changelog](CHANGELOG.md) · [Apache-2.0](LICENSE)
11
+ [English](README.en.md) · [Русский](README.ru.md) · [更新日志](CHANGELOG.zh-CN.md) · [Apache-2.0](LICENSE)
12
12
 
13
- [![License: Apache-2.0](https://img.shields.io/badge/License-Apache--2.0-blue.svg)](LICENSE)
13
+ [![许可证:Apache-2.0](https://img.shields.io/badge/许可证-Apache--2.0-blue.svg)](LICENSE)
14
14
  [![npm package](https://img.shields.io/npm/v/%40michengai%2Fdsh-archive-manager.svg?label=npm%20package)](https://www.npmjs.com/package/@michengai/dsh-archive-manager)
15
- [![npm downloads](https://img.shields.io/npm/dt/%40michengai%2Fdsh-archive-manager.svg?label=npm%20downloads)](https://www.npmjs.com/package/@michengai/dsh-archive-manager)
15
+ [![npm 下载量](https://img.shields.io/npm/dt/%40michengai%2Fdsh-archive-manager.svg?label=npm%20%E4%B8%8B%E8%BD%BD%E9%87%8F)](https://www.npmjs.com/package/@michengai/dsh-archive-manager)
16
16
  [![DSH Web Plugin](https://img.shields.io/badge/DSH%20Web-Plugin-0f766e.svg)](https://github.com/MichengAI/dsh-archive-manager)
17
- [![DSH supported through 0.2.2-alpha.3](https://img.shields.io/badge/DSH-up%20to%200.2.2--alpha.3-2563eb.svg)](#prerequisites)
17
+ [![DSH 支持至 0.2.2-rc.1](https://img.shields.io/badge/DSH-%E6%94%AF%E6%8C%81%E8%87%B3%200.2.2--rc.1-2563eb.svg)](#前置条件)
18
18
  </div>
19
19
 
20
- > DSH Archive Manager is a community-maintained DeepSeek Harness (DSH) plugin, not an official DeepSeek AI product.
20
+ > DSH Archive Manager 是社区维护的 DeepSeek Harness(DSH)插件,并非 DeepSeek AI 官方产品。
21
21
 
22
- This document describes **1.1.17**. See [Changelog](CHANGELOG.md) for published releases.
22
+ 本文描述 **1.1.17**。已发布变更见[更新日志](CHANGELOG.zh-CN.md)。
23
23
 
24
- ## Overview
24
+ ## 功能概览
25
25
 
26
- Put inactive conversations away and find them again when needed, keeping everyday task lists tidy.
26
+ 把暂时不用的会话收起来,需要时再找回,让日常任务列表更清爽。
27
27
 
28
- - **Dual views & primary sidebar entry**: Toggleable persistent icon on the host's primary sidebar opens a **960px centered workspace view** for both Archived and Unarchived sessions, eliminating narrow dialog scrolling constraints.
29
- - **Full lifecycle session management**: Archive individual chats, all chats in a workspace, cross-project batches, and restore or open sessions seamlessly.
30
- - **Full-row sidebar right-click actions**: Right-click directly anywhere on sidebar workspace or session rows to trigger dedicated actions menus; passes through native system context menus on ungrouped or blank rows without accidental clicks.
31
- - **Zero-jitter star alignment & status dot coexistence (#90, #92)**: Standardizes favorite stars to 16×16px size and overlays the host leading slot via absolute positioning, eliminating horizontal title jitter; during active states (running or waiting approval), host status dots remain 100% visible while the star badge adapts into a 10px bottom-right badge for seamless coexistence, preserving custom skin compatibility.
32
- - **Workspace quick action menu**: Provides fast "Copy folder path", "Open folder" (directly opens in Windows Explorer or macOS Finder), and one-click "Archive sessions" in the sidebar workspace menu.
33
- - **Move session across workspaces**: Move conversations across project workspaces via a cascading hover submenu with process quiescence, atomic rewriting, instant projection pre-warming, and NTFS colon-safety for IM sessions.
34
- - **Unified accordion cards & 40px ultra-compact rows**: Unifies workspace groups with Skills Manager-style integrated drawer cards (38px header); compacts session row height to 40px for doubled information density.
35
- - **Host-native dark mode checkboxes**: Reverts checkbox styling strictly to host primitive Checkbox specifications using native `accent-color`, perfectly blending with dark backgrounds and brand blue checked states.
36
- - **Anti-bleedthrough modals & localized accessibility**: Mounts wide preview dialogs directly to body (`portalToBody`) with solid backing and frosted blur to prevent text bleedthrough; adds comprehensive trilingual close button accessibility labels (`common.close`).
37
- - **Standardized section ID & coexistence compatibility (#91)**: Section ID updated to `archive-manager` with runtime fail-soft `try/catch` protection, ensuring smooth coexistence with third-party archive plugins.
38
- - **Clean single-line adaptive toolbar**: Uses the host's native `Input` primitive with an official search icon and glowing green focus border, flexibly expanding to fill remaining width; arranged as search input, view filter/sort menu, project filter, and date range in a clean single line with strict box-model boundaries.
39
- - **Unified full-text search & Codex composite menu**: Search automatically covers both conversation titles and body history (including user and assistant messages) by default; consolidates session filtering (all / favorites only) and sorting into a two-section Codex-style menu with native checkmarks.
40
- - **Lightweight DateRange capsule & calendar popover**: Completely replaces the native date input to eliminate dark-mode inversion and focus loss (#74); displays the selected range in a single line with a dedicated clear button; supports quick presets, localized English/Chinese/Russian typography, and full WAI-ARIA keyboard navigation (arrows, Home/End, PageUp/Down with month-end clamping) with real-time range stretch preview.
41
- - **Automated idle session cleanup**: Specify an idle threshold in days to discover inactive chats, automatically protecting running tasks, interactive prompts, and starred items, with instant undo support.
42
- - **Permanent deletion**: Thoroughly purge unwanted transcripts, cache rows, and indexes with per-item retry reporting.
43
- - **Orphan subagent detection & cleanup**: Automatically detect residue subagents whose parent sessions were externally deleted, displaying disk usage and enabling safe one-click reclamation.
44
- - **Controlled online updates & reverse proxy ready**: Features a toggleable online update switch, enterprise host-level configuration locking, and native baseURI dynamic endpoint resolution for prefix-stripping reverse proxies.
28
+ - **多视图与侧栏直达**:支持开启主侧边栏直接导航入口,在主工作区以 **960px 居中版心** 展开「已归档」与「未归档」完整大面板,告别狭窄弹窗。
29
+ - **全生命周期管理**:支持单条会话归档、全工作区一键归档、跨项目批量归档、单条/批量恢复并打开会话。
30
+ - **侧栏全行右键操作**:支持直接右键点击侧栏工作区行或会话行空白处唤起专属操作菜单;未分组工作区行与空白未落盘会话行优雅放行系统原生右键菜单,杜绝误触新建或星标。
31
+ - **侧栏星标对齐与状态点共存(#90, #92)**:收藏星标对齐 16×16px 宿主标准尺寸,通过绝对定位精确复用前导插槽位置,消除侧栏会话标题左右微小抖动;当会话处于运行中或等待交互时,原生状态指示点保持 100% 可见,星标自适应转为右下角 10px 金色角标,实现状态与收藏完美共存,保护原生选择器与第三方皮肤插件兼容性。
32
+ - **工作区快捷操作菜单**:侧栏工作区提供快速「复制目录」、「打开目录」(在系统文件管理器 Windows Explorer / macOS Finder 中直接打开)及一键「归档会话」。
33
+ - **会话跨工作区移动**:会话操作菜单支持级联悬停子菜单直接跨工作区迁移会话,采用进程锁静默停靠与原子级改写校验,投影缓存即时预热彻底消除临时“未命名”,安全兼容含冒号的 IM 会话。
34
+ - **一体化抽屉与 40px 超紧凑列表**:工作区分组采用与技能管理同款的一体化卡片抽屉设计,折叠顶栏(高 38px)与下方列表融为一体;会话列表项行高超紧凑化至 40px,信息密度显著提升。
35
+ - **暗黑模式原生复选框规范**:复选框严格回归宿主原生原语 Checkbox 规范,使用原生 `accent-color` 完美适配深色模式(深暗底色与品牌蓝选中态),根除白底白勾刺眼方块 bug。
36
+ - **模态弹窗防穿透与本地化无障碍**:宽版预览弹窗直挂 body 根节点消除局部包含块限制,配合实色底与毛玻璃高斯模糊彻底杜绝文字穿透重叠;全量弹窗右上角 X 关闭按钮完整支持三语本地化无障碍标签(`common.close`)。
37
+ - **纯净自适应单行工具栏**:采用宿主原生 `Input` 原语,内置官方放大镜图标与绿色呼吸聚焦边框,自适应弹性撑满;控件按「输入框、查询条件、所有项目、时间选择」极简单行排列,锁死盒模型杜绝溢出重叠。
38
+ - **全文联合检索与 Codex 复合菜单**:默认自动联合搜索标题与正文历史(用户与助手消息);将会话筛选(全部/只看收藏)与排序收归为 Codex 风格两段式复合菜单,完全采用宿主原生对勾原语。
39
+ - **轻量单字段日期胶囊与日历浮层**:彻底告别原生日期选择器的暗黑模式反白与失焦缺陷(#74),单行展示时间范围;浮层支持快捷预设、中英俄三语原生排版,以及完备的 WAI-ARIA 键盘无障碍漫游(上下左右键、Home/End、PageUp/Down 及月末夹紧)与高亮区间实时拉伸预览。
40
+ - **智能闲置会话整理**:自定义闲置天数,自动分析并排除正在运行、等待交互及已收藏的关键会话,支持预览候选后确认归档,并提供误操作撤回机制。
41
+ - **永久彻底清理**:确认后永久删除不再需要的会话,彻底清除物理日志、索引与缓存,支持错误项独立重试。
42
+ - **无主孤儿子代理检测与物理清理**:自动探测母会话已被外部物理删除的残留子代理,在会话整理中直观展示空间占用并支持一键物理释放。
43
+ - **设置页 ID 规范与第三方插件共存(#91)**:设置页注册 ID 调整为团队统一规范的 `archive-manager` 并带 fail-soft 运行时保护,支持与社区第三方归档插件和平共存。
44
+ - **可控在线更新与反向代理适配**:提供独立在线更新开关与企业级宿主配置硬锁定;原生适配反代子路径前缀部署。
45
45
 
46
- ## Manual list-cache rebuild (#88)
46
+ ## 手动重建列表缓存(#88)
47
47
 
48
- Opening Archive Manager checks only headers and official cached projections for ordinary cold sessions in registered workspaces, ungrouped lists, and archives, while excluding special IM channel sessions (`im:`). A repair card appears only for missing/incompatible caches or an unavailable title projection. Click to read complete logs one at a time through read-only handles and rebuild registered projections with official `coldSnapshot`, saving to official `session_projcache`.
48
+ 打开归档管理后,仅从头部及官方缓存轻量检测登记工作区、未分组及归档中的普通冷会话(前置排除 IM 渠道特殊会话)。官方缓存缺失、生命周期或格式不兼容、或标题投影不可用时,整理区域显示「重建列表缓存」卡片;没有候选就不显示。
49
49
 
50
- No old plugin domains are scanned, no JSON is copied, no Session/Agent is activated, no model is called, and archives/schedules remain unchanged. Active sessions are skipped; failed items can be retried individually; feedback provides a "Done" dismiss button and auto-dismisses when clear. The official session list is refreshed and candidates checked again afterward. A persistence-confirmation timeout means unknown, not cancelled: deletion remains ordered after pending native writes. Closing the page stops later requests, not the one already sent.
50
+ 点击后逐条只读完整日志,调用官方 `coldSnapshot` 重建全部已注册投影,并保存至官方 `session_projcache`。不扫描旧插件域、不搬运 JSON、不激活会话/Agent、不调用模型,也不改变归档和定时任务。活动会话跳过,失败项可单独重试;操作反馈提供「完成」按钮并支持自动收起;完成后刷新官方列表并重新检测。保存确认超时表示结果未知,不代表已取消;删除操作仍与迟到写入安全排队。关闭页面只停止后续请求,已发送的那一条会在服务端完成。
51
51
 
52
- ## Orphan subagent cleanup
52
+ ## 孤儿子代理清理
53
53
 
54
- When parent sessions are deleted externally or via the host, orphaned subagents may remain on disk. The Archive Manager detects these orphan sessions in the Organizer panel, calculates disk space usage, and provides one-click physical deletion.
54
+ 当母会话在外部或通过系统被物理删除后,其衍生生成的子代理可能残留于磁盘中。归档管理器在「会话整理」面板中会自动检测是否存在此类无主残留,精准识别并展示占用空间,支持一键安全释放磁盘。
55
55
 
56
- ## Search and preview
56
+ ## 检索与预览
57
57
 
58
- - Archived and Unarchived share title/content search, project, favorites, updated-date filters, and creation-time sorting. Star or unstar conversations on either tab.
59
- - Search automatically covers both conversation titles and body history (including user and assistant messages) by default. Date filters include the entire local end date and combine with project and favorites.
60
- - Matches show snippets and highlights. On Archived, click a snippet or **More → Quick preview** to inspect context without restoring. On Unarchived, a snippet opens the full conversation.
61
- - Preview renders Markdown tables, quotes, and code blocks with role labels; switch to source text for highlights. It shows up to eight recent messages, or context around the first match. Each message is limited to 2,000 UTF-16 code units without splitting Unicode characters.
62
- - Search accepts up to 200 query characters and reads batches of at most 20 sessions, sequentially within each batch. Tools, attachments, reasoning, system messages, and plugin injections are excluded. Read failures remain visible and can be retried. Stored text is not the model's current context.
63
- - There is no persistent full-text index. Large or long conversations can be slow; narrow project, dates, or favorites first. No session-count or latency guarantee has been established. Changing filters prevents later batches and stale results, but cannot interrupt the batch already reading.
58
+ - 已归档与未归档统一支持标题/正文搜索、日期、项目、收藏及创建时间排序;两边均可通过星标收藏和取消收藏。未归档的正文命中点击打开完整会话。
64
59
 
65
- ## Screenshots
60
+ - 快速预览默认以 Markdown 排版展示,支持表格、引用与代码块,区分用户和助手;可切换为原文与关键词高亮。
66
61
 
67
- ### 1. Archive Settings Management (Accordion Cards & Dark Mode Checkboxes)
62
+ - 搜索框默认直接联合搜索当前页签会话中的标题与正文历史(包含用户和助手文本),无需手动切换范围。
63
+ - 搜索框右侧「日期」可选择或清除更新时间范围;项目、收藏和更新时间范围可组合使用;结束日期包含本地当天。已归档和未归档页均支持正文搜索与这些筛选条件。
64
+ - 正文命中显示片段和关键词高亮;已归档页点击片段或「更多 → 快速预览」查看上下文,不恢复会话;未归档页点击片段打开完整会话。没有关键词时预览最近八条消息,有关键词时定位首个命中附近。
65
+ - 检索逐批读取,每批最多 20 条会话,批内逐条读取;关键词最多 200 字符。预览每条最多 2000 个 UTF-16 码元,截断保留完整 Unicode 字符,较长内容请打开完整会话。
66
+ - 搜索与预览不包含工具输出、附件、推理、系统或插件注入消息;读取失败会显示详情并支持重试。检索的是持久化原始文本,不等同于模型当前上下文。
67
+ - 未建立持久化全文索引,大量或超长会话可能需要较久,建议先缩小项目、日期或收藏范围;尚无可承诺的会话数量上限或响应时延;更改条件会停止后续批次,正在读取的单批仍会完成,但旧结果不会覆盖新筛选。
68
68
 
69
- Search, favorite, preview, restore, and clean up in **Settings → Archived sessions → Archived** with integrated drawer cards, 40px ultra-compact rows, and native dark mode checkboxes:
69
+ ## 界面预览
70
70
 
71
- ![Archived: shared search filters, favorites, and compact rows](assets/screenshots/archived-sessions.webp)
71
+ ### 1. 归档设置管理面板(一体化抽屉与暗黑模式适配)
72
72
 
73
- Switch to **Unarchived** for smart idle cleanup suggestions, one-click archiving, and project-wide operations:
73
+ 在「设置 → 归档会话 → 已归档」体验一体化抽屉卡片、40px 超紧凑行高、原生暗黑 Checkbox 及统一检索筛选:
74
74
 
75
- ![Unarchived: smart idle cleanup and project archiving](assets/screenshots/unarchived-sessions.webp)
75
+ ![已归档会话:统一检索筛选、收藏与超紧凑列表](assets/screenshots/archived-sessions.webp)
76
76
 
77
- ### 2. Centered Full-Screen Workspace Panel (Direct Sidebar Entry)
77
+ 切换到「未归档」,智能分析并预选闲置会话,支持一键安全归档与项目批量操作:
78
78
 
79
- With the sidebar entry enabled, open a full-featured 960px centered workspace panel directly from the main sidebar:
79
+ ![未归档会话:智能闲置整理与项目批量归档](assets/screenshots/unarchived-sessions.webp)
80
80
 
81
- ![Main Workspace Panel: dedicated sidebar entry expanding 960px centered view](assets/screenshots/main-view-panel.webp)
81
+ ### 2. 主工作区大面板(侧边栏直达)
82
82
 
83
- ### 3. Native Sidebar Full-Row Right-Click & Cascading Menus
83
+ 开启侧边栏入口后,点击左侧主导航即可在主工作区以 960px 居中版心展开完整大面板:
84
84
 
85
- Right-click directly on any workspace or session row in the primary sidebar to open context menus and cascading workspace migration submenus:
85
+ ![主工作区大面板:侧边栏独立入口展开 960px 居中视图](assets/screenshots/main-view-panel.webp)
86
86
 
87
- | Workspace Actions (Copy/Open Folder) | Move Session Across Workspaces (Cascading Submenu) |
87
+ ### 3. 原生侧边栏全行右键与级联菜单
88
+
89
+ 在侧边栏任意工作区行或会话行上直接右键,即可唤起快捷操作菜单与跨工作区移动级联子菜单:
90
+
91
+ | 工作区快捷菜单(复制/打开目录) | 会话跨工作区移动(悬停级联) |
88
92
  | :---: | :---: |
89
- | <img src="assets/screenshots/workspace-context-menu.webp" alt="Workspace Actions Menu" width="100%"> | <img src="assets/screenshots/session-move-menu.webp" alt="Move Session Menu" width="100%"> |
93
+ | <img src="assets/screenshots/workspace-context-menu.webp" alt="工作区操作菜单" width="100%"> | <img src="assets/screenshots/session-move-menu.webp" alt="会话移动菜单" width="100%"> |
90
94
 
91
- *Screenshots showcase the core management panels, centered workspace view, and native sidebar context menu enhancements in lossless WebP format.*
95
+ *截图展示核心功能面板、主工作区大视图与侧边栏原生右键增强,采用高保真无损 WebP 格式。*
92
96
 
93
- ## Installation
97
+ ## 安装
94
98
 
95
- A working DeepSeek Harness environment is required. Examples use the `web` profile; adjust to your environment.
99
+ 需要已安装并能正常运行 DeepSeek Harness。以下命令使用 `web` profile,请按实际环境替换。
96
100
 
97
- Plugin installation supports npm registry, locally built `.tgz` packages, and GitHub. Both GitHub and npm contain runnable `lib` artifacts.
101
+ 插件安装支持 npm registry、本地构建的 `.tgz` 包和 GitHub。GitHub 与 npm 都包含可直接运行的 `lib`。改动源码后,提交前请先运行构建。
98
102
 
99
- ### Ask an agent to install it
103
+ ### 让 Agent 帮你安装
100
104
 
101
- Send this prompt to an agent that can run terminal commands on your computer:
105
+ 把这段话发给能够操作本机终端的 Agent:
102
106
 
103
107
  ```text
104
- Please install the latest @michengai/dsh-archive-manager into my DSH web profile using the official npm registry, verify activation, and explain how to reload.
108
+ 请把 @michengai/dsh-archive-manager 最新版安装到我的 DSH web profile,使用官方 npm 源,安装后确认生效并告诉我如何重新加载。
105
109
  ```
106
110
 
107
- ### Install manually
111
+ ### 手动安装
108
112
 
109
113
  ```powershell
110
114
  [Console]::OutputEncoding = [System.Text.Encoding]::UTF8
@@ -112,99 +116,99 @@ $OutputEncoding = [System.Text.Encoding]::UTF8
112
116
  dsh plugin --profile web add @michengai/dsh-archive-manager@latest --registry=https://registry.npmjs.org/
113
117
  ```
114
118
 
115
- Restart DSH Web, then refresh the page (or hard-refresh with `Ctrl+Shift+R`). Open **Settings → Archived sessions** to get started. To update, click **Check for updates** or re-run the installation command.
116
-
117
- - Host compatibility: Full DeepSeek Harness `0.2.x` line (`>=0.2.0-rc.1 <0.3.0-0`), verified with every `0.2.x` release candidate (`0.2.0-rc.1`, `0.2.0-rc.2`, `0.2.1-rc.1` through `0.2.1-rc.5`) and the latest alpha (`0.2.2-alpha.3`). Intermediate alphas of a release candidate line are outside the supported range, so install a release candidate or the newest alpha.
118
- - Legacy hosts prior to `0.2.0-rc.1` are no longer supported. The version gate cleanly intercepts breaking changes in the `0.3.0` generation. Users on `0.1.x` hosts should install `1.0.20`.
119
- - **Reverse proxy deployment**: Supports hosting DSH behind prefix-stripping reverse proxies (e.g. `/app/dsh/`). API and update endpoints automatically resolve against the page base URI (`document.baseURI`), preventing 404 errors caused by lost prefix segments.
120
-
121
- ## Plugin Configuration & Toggles
122
-
123
- The plugin follows standard DSH bundle configuration conventions. Options are located at:
124
- > **Sidebar → Plugins → Click `Archive Manager`** (the host's `plugins.bundle.config` slot).
125
-
126
- Native configuration options are available:
127
-
128
- ### 1. Entry Location (`entryLocation`)
129
- - **Options**:
130
- - **All locations (`both`)**: Displays the Archive navigation icon in the left sidebar and keeps the menu entry under **Settings → Archived sessions**.
131
- - **Sidebar only (`sidebar`)**: Displays the Archive navigation icon in the left sidebar and unregisters the settings section for a streamlined settings dialog.
132
- - **Settings only (`settings`)** (Default): Keeps the entry under **Settings → Archived sessions** while maintaining a minimal sidebar.
133
- - **Fail-safe Guarantee**: A mutually-exclusive 3-state segmented control ensures at least one entry point is always accessible, preventing accidental orphan states.
134
- - **Effect**:
135
- - When the sidebar is enabled, clicking the icon opens Archive Manager directly in the primary workspace with a **960px centered container** (matching host plugin manager conventions). This eliminates vertical scrolling constraints in narrow settings dialogs;
136
- - When switching to **Settings only**, safely unregisters the sidebar entry (and resets the active panel gracefully if currently viewing the panel, preventing blank views);
137
- - Backward compatible with legacy `sidebarEntry` boolean settings (`true` maps to `both`, `false` maps to `settings`).
138
-
139
- ### 2. Online Updates (`onlineUpdate` / `updater`)
140
- - **Default**: Enabled (`true`)
141
- - **Description**: Controls whether the plugin checks for and installs updates from npm.
142
- - **Effect**:
143
- - **Dynamic UI Sync**: Disabling the toggle hides the **Check for updates** button and version badge in the header immediately without requiring a full page reload;
144
- - **Endpoint Guard**: When disabled, the update API route returns `HTTP 403` for all check and install requests, preventing unreviewed updates;
145
- - **Host / Platform Lock**: For curated plugin indexes (such as VibeDev) or restricted enterprise environments, this can be locked directly via Cordis configuration (bundle patch) without needing UI interaction:
119
+ 安装后重启 DSH Web,并刷新页面(或按 `Ctrl+Shift+R` 硬刷新浏览器),打开「设置 → 归档会话」即可使用。更新时可点击「检查更新」,或重新执行安装命令。
120
+
121
+ - 宿主支持范围:DeepSeek Harness `0.2.x` 全系列(`>=0.2.0-rc.1 <0.3.0-0`),已在 `0.2.x` 的全部 RC(`0.2.0-rc.1`、`0.2.0-rc.2`、`0.2.1-rc.1`~`0.2.1-rc.5`、`0.2.2-rc.1`)上验证。同一 RC 线中间的 alpha 不在支持范围内,请使用 RC 或最新 alpha。
122
+ - 不再支持 `0.2.0-rc.1` 之前的早期宿主,遇到 `0.3.0` 代际破坏性更新时将被版本门安全拦截。仍在使用 `0.1.x` 的用户请安装插件 `1.0.20`。
123
+ - **反向代理部署**:支持将 DSH 部署在带路径前缀的反向代理后面(如 `/app/dsh/`),插件 API 与更新检查端点统一自动按页面基址(`document.baseURI`)相对解析,避免丢失代理路径前缀导致 404。
124
+
125
+ ## 插件配置与可选开关
126
+
127
+ 插件遵循 DSH 官方扩展配置规范,配置项位于:
128
+ > **主界面侧边栏「插件」→ 点击 `Archive Manager` 详情页**(对应宿主 `plugins.bundle.config` 槽位)。
129
+
130
+ 此处提供原生配置项:
131
+
132
+ ### 1. 入口展示位置 (`entryLocation`)
133
+ - **选项范围**:
134
+ - **全部显示 (`both`)**:在左侧主导航栏显示「归档」图标,同时在「设置 → 归档会话」中保留菜单。
135
+ - **仅侧边栏 (`sidebar`)**:仅在左侧主导航栏显示「归档」图标,设置菜单中自动卸载隐藏,界面更精炼。
136
+ - **仅设置 (`settings`)**(默认):仅在「设置 → 归档会话」中显示,侧边栏保持极简。
137
+ - **防止失联保障**:采用互斥的三选一分段选择器,杜绝两处入口同时关闭导致面板失联的痛点。
138
+ - **生效效果**:
139
+ - 侧边栏开启时,点击即可直达归档中心,并在主工作区以 **960px 居中版心**(对齐官方插件管理与市场规范)展开完整大面板,彻底告别在设置弹窗狭窄视口内滚动的局限;
140
+ - 切换为「仅设置」关闭侧栏时安全注销侧栏槽位(若当前正停留在归档大面板,会自动安全切回默认视图,防止悬空和白屏);
141
+ - 向后完全兼容旧版 `sidebarEntry` 配置(`true` 自动映射为 `both`,`false` 自动映射为 `settings`)。
142
+
143
+ ### 2. 在线更新 (`onlineUpdate` / `updater`)
144
+ - **默认状态**:开启(`true`)
145
+ - **功能说明**:控制是否允许在线检查并安装归档管理器的新版本。
146
+ - **生效效果**:
147
+ - **界面联动**:关闭开关后,归档管理面板标题旁的「检查更新」按钮与版本提示徽标将即时隐藏,无需刷新页面;开启后自动恢复展示;
148
+ - **接口安全拦截**:关闭后,服务端的更新路由对任何版本检查和安装请求均返回 `HTTP 403` 禁用状态,彻底杜绝在插件内安装未审核版本;
149
+ - **宿主/平台级锁定**:面向精选插件索引(如 VibeDev)或企业安全合规环境,支持直接在 Cordis 配置文件(bundle patch)中声明,无需进入界面手动配置:
146
150
  ```yaml
147
- updater: false # or onlineUpdate: false
151
+ updater: false # 或 onlineUpdate: false
148
152
  ```
149
- Once configured, the updater is disabled at startup, the update action stays hidden, and the online-update switch is disabled. The host lock takes precedence over the user's choice in settings.json and cannot be lifted through the UI. Removing the host lock restores the saved user preference.
153
+ 配置生效后,更新器在启动时即被完全禁用,更新入口隐藏,详情页在线更新开关置灰。宿主锁定优先于本地配置中的用户选择,界面不能解除锁定;宿主移除锁定后,重新按已保存的用户选择生效。
150
154
 
151
- ## Usage Guide
155
+ ## 使用指南
152
156
 
153
- | Action | How to do it |
157
+ | 核心操作 | 操作方式 |
154
158
  | --- | --- |
155
- | **Archive one chat** | Open the session context menu in the sidebar and choose **Archive session** |
156
- | **Archive a workspace** | Open the workspace menu and choose **Archive session** (opens an in-place confirmation overlay) |
157
- | **Search & filter** | Open **Settings → Archived sessions** or click **Archive** in the sidebar; search bar automatically covers titles and body messages; use the Codex-style view menu to filter (all / favorites only) and sort; select projects from dropdown; pick dates with the single-field capsule |
158
- | **Custom calendar & keyboard nav** | Click the date capsule to open the lightweight calendar popover; supports all time and quick presets; provides complete WAI-ARIA keyboard navigation (arrows, Home/End, PageUp/Down, Enter/Space) and real-time range stretch preview |
159
- | **Quick preview** | Click a match snippet or **More → Quick preview** to inspect context with highlights without restoring |
160
- | **Adjust ordering** | Sort by recently archived, update time, creation time, or title in the view menu |
161
- | **Restore a chat** | Click the restore icon on any row; use **More → Restore and open** to resume the chat directly |
162
- | **Archive entire group** | On **Unarchived**, click the **…** menu next to a group and confirm archiving all chats in that project |
163
- | **Favorite chats** | Click the star icon on any row; use the view menu to filter starred chats |
164
- | **Clean up idle chats** | On **Unarchived**, set an idle day threshold, automatically protecting running and starred chats, preview candidates, and confirm |
165
- | **Copy session ID** | Select **Copy session ID** from the **More** menu |
166
- | **Clean up orphan subagents** | Detect and physically delete orphan subagents in the Organizer panel |
167
- | **Archive across projects** | Switch to **Unarchived**, select sessions across projects, then click **Archive** and confirm |
168
- | **Restore or delete in bulk** | Select chats and use the bulk actions, or use the project menu; there are no separate Restore all / Delete all buttons |
159
+ | **归档一条会话** | 打开侧栏会话菜单,选择「归档会话」 |
160
+ | **归档整个工作区** | 打开工作区菜单,选择归档该工作区的会话(弹出就地确认卡片) |
161
+ | **检索与筛选** | 打开「设置 → 归档会话」或点击侧边栏「归档」,搜索框自动联合检索标题与正文;使用 Codex 风格视图菜单切换「全部会话 / 只看收藏」与排序;按「所有项目」下拉过滤特定项目;使用单字段日期胶囊选择时间范围 |
162
+ | **自研日历与键盘漫游** | 点击日期胶囊展开轻量日历浮层,提供全部时间与常用预设;支持完整键盘无障碍漫游(上下左右键移动、Home/End 周首周末跳转、PageUp/Down 跨月切换、Enter/Space 选定),并提供区间高亮实时拉伸预览 |
163
+ | **快速预览** | 点击命中片段或「更多 → 快速预览」,无需恢复即可查看上下文与原文高亮 |
164
+ | **调整排序** | 统一在视图菜单中按最近归档、更新时间、创建时间、按字母顺序排序 |
165
+ | **恢复会话** | 点击会话右侧恢复图标;「更多」菜单可「恢复打开」直接进入原会话继续对话 |
166
+ | **项目整体归档** | 在「未归档」页点击分组右侧“…”菜单,确认归档该组全部聊天(不受搜索影响) |
167
+ | **收藏会话** | 点击行右侧星标,使用视图菜单「只看收藏」快速过滤重要会话 |
168
+ | **整理闲置会话** | 在未归档页设置闲置天数,自动排除运行中、等待交互与收藏的会话,预览并确认归档 |
169
+ | **撤回归档** | 批量归档后可在关闭页面前点击「撤回本次归档」,安全恢复误归档会话 |
170
+ | **永久彻底删除** | 勾选单条或多条会话后点击「删除」,二次确认后彻底清除日志与缓存,支持错误项重试 |
171
+ | **清理孤儿子代理** | 在「会话整理」面板中检测外部删除残留的无主子代理并一键物理释放 |
172
+ | **复制会话标识** | 在更多菜单选择「复制会话 ID」快捷复制 |
169
173
 
170
- The page opens on **Archived**, with **Unarchived** on the right. Switching tabs clears selections; changing search or project filters preserves them. Check the hidden selection count before applying bulk actions, or clear your selection first.
174
+ 页面默认打开「已归档」,右侧「未归档」用于批量归档。切换 TAB 会清空选择;切换搜索或项目筛选会保留已选会话。批量操作前留意隐藏的已选数量,或先清空选择。
171
175
 
172
- **Select all filtered results** selects matching sessions, including collapsed groups. Project-wide actions still apply to the whole project regardless of search filters. Unarchived excludes subagents and blank placeholders.
176
+ ### 收藏与闲置整理
173
177
 
174
- Settings and sidebar batch archive/restore call the official single-session APIs `ctx.workspaces.archiveSession` and `ctx.workspaces.unarchiveSession` serially.
178
+ 会话使用紧凑分组列表,点击项目标题可以折叠;右侧提供星标和恢复/归档图标,已归档会话的「更多」菜单提供恢复打开和删除。折叠只影响展示,「全选当前筛选结果」仍包含折叠组内符合筛选的会话。
175
179
 
176
- ### Favorites and idle cleanup
180
+ - 在已归档或未归档会话行右侧点击星标,通过收藏下拉菜单中的「只看收藏」找回重要会话。收藏保存在宿主数据中,归档、恢复或更换浏览器不会清除;其他页面修改的收藏可在重新打开管理页后读取。
181
+ - 在「未归档」设置 1~36500 的整数闲置天数,结合当前项目、搜索、日期和收藏筛选,点击「预览闲置归档」。确认清单允许逐条取消,默认排除收藏、当前打开、正在执行(含子代理)以及等待交互的会话;缺少有效最后活动时间的会话不参与。
182
+ - 归档前再次检查收藏和活动状态。批量归档、恢复、删除显示进度与成功、跳过、失败数量;某一条失败后继续处理后续,只重试失败项。删除重试仍需确认。
183
+ - 「撤回本次归档」只恢复最近一批实际归档成功的会话,包括该批重试成功的部分。仅在本次打开管理页期间有效,关闭页面或刷新会清除记录;不会撤回原有归档,也不能恢复永久删除的会话。
184
+ - 收藏会话仍可手动归档;收藏保护只针对闲置整理。没有定时自动归档,不会在后台自行整理。
177
185
 
178
- Compact project groups can be collapsed. Stars and restore/archive icons appear on the right; archived session menus include restore-and-open and deletion.
186
+ 「全选当前筛选结果」只选择符合当前条件的会话。项目菜单的整体操作仍作用于该项目全部会话,不受搜索筛选影响。未归档页排除子代理和空白占位会话。
179
187
 
180
- - Use the star on either tab and the **Favorites only** dropdown to find important chats. Favorites persist on the host across archive, restore, and browser changes. Reopen management to see changes made in other pages. Unknown or unreadable sessions retain their stored favorite IDs; cleanup requires confirmed artifact absence.
181
- - On Unarchived, enter 1–36,500 whole idle days and preview candidates under the current filters. Deselect individual candidates before confirmation. Favorites, the current chat, running sessions (including subagents), and pending interactions are protected; sessions without a valid activity time are excluded.
182
- - Archive rechecks favorites and activity. Batch archive, restore, and delete report progress plus successful, skipped, and failed counts. A failure does not stop the rest; retry only the failed items. Delete retries still require confirmation.
183
- - **Undo this archive** restores sessions archived by the current batch, including successful retries. It is available only while the current management page remains open; refreshing or closing clears it. Permanent deletion cannot be undone.
184
- - Favorites can still be archived manually. Protection applies to idle cleanup only. There is no scheduled or automatic background cleanup.
188
+ 设置页与侧栏的批量归档、批量恢复均串行调用官方单条接口 `ctx.workspaces.archiveSession` 和 `ctx.workspaces.unarchiveSession`。
185
189
 
186
- ### View and continue archived conversations
190
+ ### 查看并继续归档对话
187
191
 
188
- Native conversation navigation has been available since `0.1.40`; 1.0.0 uses these entry points:
192
+ 原生会话导航自 `0.1.40` 起提供,1.0.0 的操作入口如下:
189
193
 
190
- - **Click the session title**: open the native DSH session to view messages, attachments, and tool details. Continue chatting while keeping the session archived.
191
- - **More → Restore and open**: unarchive the session and open it to resume work.
194
+ - **点击会话标题**:打开 DSH 原生会话页,查看消息、附件和工具详情;可直接继续聊天,保持归档状态。
195
+ - **更多菜单 → 恢复打开**:取消归档后进入原会话,继续工作。
192
196
 
193
- ## Search API compatibility (integrators)
197
+ ## 检索接口兼容约定(集成开发者)
194
198
 
195
- The canonical API is `workspaceRegistry.searchSessionContent({ sessionIds, query })`, covering archived and unarchived sessions. Supply 1–20 session IDs and a nonempty query of 1–200 characters; IDs are deduplicated. Results have the shape `{ items: [{ sessionId, seq, snippet }], failures: [{ sessionId, message }] }`. Individual read failures appear in `failures`; invalid input rejects the call.
199
+ 正式入口为 `workspaceRegistry.searchSessionContent({ sessionIds, query })`,支持已归档与未归档会话。输入为 1~20 个会话 ID 和 1~200 字符非空关键词,ID 去重后处理。成功返回 `{ items: [{ sessionId, seq, snippet }], failures: [{ sessionId, message }] }`;单条读取失败进入 `failures`,参数不合法则拒绝整个调用。
196
200
 
197
- `searchArchivedContent` remains the legacy, archived-only entry point. Both use the existing host Typert connection and authorization boundary; no HTTP endpoint or authentication setting is added. Keep the legacy descriptor throughout the currently supported host range, including patch releases. Removal requires an explicit compatibility-range change, client migration, and deprecation notice. New clients prefer the canonical API and use the old one only as a version fallback, never dispatching the same search to both.
201
+ `searchArchivedContent` 是旧客户端兼容入口,仅接受归档范围,保持原有语义。两者通过宿主 Typert 的既有连接与权限边界调用,无新增 HTTP 端点或鉴权配置。当前受支持版本范围内保留旧描述符,不在补丁版本移除;只有未来明确收窄兼容范围、完成客户端迁移并发布弃用说明后才删除。新客户端优先使用正式入口,旧入口仅用于旧版本回退;不应向两个入口重复发送同一检索。
198
202
 
199
- ## Updates
203
+ ## 更新
200
204
 
201
- Click **Check for updates** in the archive management page header. DSH CLI or Desktop environments with automatic update support can update directly; other environments provide a manual command for the current profile. You can also rerun the installation command above.
205
+ 在归档管理页标题处点击「检查更新」。支持自动更新的 DSH CLI 或 Desktop 环境可直接更新;其他环境会提供适用于当前 profile 的手动命令。也可重新执行上面的安装命令。
202
206
 
203
- ## FAQ
207
+ ## 常见问题
204
208
 
205
- ### Why is the entry missing after installation?
209
+ ### 安装后找不到入口?
206
210
 
207
- Restart DSH Web and hard-refresh your browser. Make sure you installed into the profile you are using. If the entry is still missing, run:
211
+ 先重启 DSH Web 并硬刷新浏览器,确认安装到了当前使用的 profile。仍未显示时,执行:
208
212
 
209
213
  ```powershell
210
214
  [Console]::OutputEncoding = [System.Text.Encoding]::UTF8
@@ -213,34 +217,34 @@ $OutputEncoding = [System.Text.Encoding]::UTF8
213
217
  dsh --profile web --dump-config
214
218
  ```
215
219
 
216
- The configuration should include `ui-workspace-archive-manager` and must not disable official `workspace` or `session-projection-cache`. A leftover `archive-manager-host` override can be removed. On current DSH hosts the official `ui-settings-unarchive-sessions` entry is gone, so this plugin no longer disables it (doing so only warned that the patch entry was missing). If your profile's `cordis.patch.yml` still disables `workspace`, `session-projection-cache`, or `ui-workspace`, remove those overrides and restart.
220
+ 配置中应包含 `ui-workspace-archive-manager`,且不应再禁用官方 `workspace` 或 `session-projection-cache`。若还留着 `archive-manager-host` 的禁用覆盖,可以删掉。当前 DSH 宿主已无官方 `ui-settings-unarchive-sessions` 入口,本插件不再对其 disable(否则 dump-config 会告警条目不存在)。若 profile 的 `cordis.patch.yml` 仍禁用 `workspace`、`session-projection-cache` 或 `ui-workspace`,请移除这些覆盖,再重启。
217
221
 
218
- ### What happens to historical plugin caches after upgrading?
222
+ ### 从旧版升级后,历史缓存如何处理?
219
223
 
220
- The plugin neither replaces the official projection-cache table nor scans, validates, or migrates historical plugin caches. Opening the archive list does not read complete logs or write back official projections to fill missing cache entries. Session logs remain host-owned, and the host rebuilds derived projections such as titles on demand. Enabling or disabling the plugin does not switch cache tables; there is no need to enable it once just to import old caches.
224
+ 插件不再接管官方投影缓存表,也不再扫描、核验或迁移旧插件缓存;打开归档列表不会为了补缓存而读取完整日志或写回官方投影。会话日志仍由宿主保存,标题等投影由官方按需重建;启用或停用插件不会切换缓存表,也不需要为导入旧缓存而额外启用一次。
221
225
 
222
- **A cold session without an official cache entry may initially have no title in the list; refreshing the list alone does not guarantee a rebuild.** Reading the log can recover the title, and restoring the session as live lets the native write path persist its cache. Historical plugin cache files are left untouched: they are neither read nor deleted automatically. See the [changelog](CHANGELOG.md) for details.
226
+ **官方缓存缺失的冷会话,列表可能暂时不显示已有标题;仅刷新列表不保证重建。** 官方读取日志可恢复标题,恢复为活动会话后由原生写入路径持久化缓存。旧插件缓存文件保留原样,不自动读取或删除。完整变更见[更新日志](CHANGELOG.zh-CN.md)。
223
227
 
224
- ### How is archiving different from deletion?
228
+ ### 归档和删除有什么区别?
225
229
 
226
- Archiving puts a conversation away so you can restore it later. **Permanent deletion cannot be undone** and may also remove that session's attachments. It does not delete your project working directory. Deletion requires confirmation.
230
+ 归档只是收起会话,可以恢复。**永久删除无法撤销**,并可能一并清理该会话的附件;不会删除你的项目工作目录。删除前会要求确认。
227
231
 
228
- ### Can I use it with Codex UI?
232
+ ### 可以和 Codex UI 一起使用吗?
229
233
 
230
- Yes. [Codex UI](https://github.com/MichengAI/dsh-codex-ui) keeps its sidebar appearance and interactions. Archive management remains available in **Settings → Archived sessions**.
234
+ 可以。保留 [Codex UI](https://github.com/MichengAI/dsh-codex-ui) 的侧栏样式和交互,归档管理仍在「设置 → 归档会话」中。
231
235
 
232
- ### Coexisting with other archive plugins
236
+ ### 与其他归档插件共存说明
233
237
 
234
- This plugin registers its Settings entry under the section ID `archive-manager`. If other session archive plugins (such as `@linxin666/dsh-session-archive`) are installed at the same time, two distinct "Archived sessions" entries will appear in the settings sidebar. Both can be accessed independently as expected.
238
+ 本插件设置页入口注册 ID 为 `archive-manager`。若当前环境同时安装了其他归档管理插件(例如 `@linxin666/dsh-session-archive`),设置侧边栏中会出现两个各自独立的「已归档会话」入口,均可在设置中正常访问,这属于正常预期表现。
235
239
 
236
- For other problems, open an [issue](https://github.com/MichengAI/dsh-archive-manager/issues) with your DSH and plugin versions, reproduction steps, and error details.
240
+ 遇到其他问题,请提交 [Issue](https://github.com/MichengAI/dsh-archive-manager/issues),附上 DSH 与插件版本、复现步骤和错误信息。
237
241
 
238
- ## Install from source
242
+ ## 从源码安装
239
243
 
240
244
  <details>
241
- <summary>Expand for development or testing unreleased changes</summary>
245
+ <summary>开发或测试未发布改动时展开</summary>
242
246
 
243
- Run these commands in a directory of your choice. For local changes that have not been pushed, use the existing working copy.
247
+ 在你选择的源码目录中执行以下命令。未推送的本地改动需使用已有工作副本。
244
248
 
245
249
  ```powershell
246
250
  [Console]::OutputEncoding = [System.Text.Encoding]::UTF8
@@ -253,29 +257,29 @@ pnpm build
253
257
  dsh plugin --profile web add .
254
258
  ```
255
259
 
256
- Restart DSH Web and hard-refresh your browser afterward. Source code in [src](src) uses strict TypeScript. Both GitHub and npm include a ready-to-run `lib`. After changing source, run `pnpm build` before committing, or a source install keeps the previous runtime. Published JavaScript entry points and runtime modules remain unchanged; installing the npm package does not require TypeScript. Run `pnpm typecheck` for type checking, `pnpm test` to validate changes, or `pnpm verify` for the full checks.
260
+ 完成后重启 DSH Web 并硬刷新浏览器。业务源码统一在 [src](src) 中使用 TypeScript 严格模式;共享协议在 `contracts.ts`,宿主版本适配在 `host-compat.ts`、`client-compat.ts`,客户端组件与状态类型在 `client-types.ts`。GitHub 与 npm 都包含可直接运行的 `lib`。改了源码后,提交前运行 `pnpm build`,否则源码安装仍是旧的运行文件。`pnpm typecheck` 检查业务源码和类型负例,`pnpm test` 先检查类型、构建再执行回归,`pnpm verify` 还执行兼容矩阵和打包检查。测试与构建脚本继续使用 `.mjs`;对外发布仍为 JavaScript,不要求宿主加载 TypeScript。
257
261
 
258
262
  </details>
259
263
 
260
- ## DSH product ecosystem
264
+ ## DSH 产品生态
261
265
 
262
- For a desktop workbench, download [DSH Codex Desktop](https://github.com/MichengAI/dsh-codex-desktop/releases). Existing [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) installations can add plugins as needed by following each project's README. Below are 11 first-party plugins; consult the corresponding desktop release notes and bundled catalog for what that version includes.
266
+ 想使用桌面工作台,可下载 [DSH Codex Desktop](https://github.com/MichengAI/dsh-codex-desktop/releases);已有 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 环境,可按各项目 README 按需安装。以下列出 11 个自研插件;桌面端实际随附范围以对应版本的发行说明和内置清单为准。
263
267
 
264
- | Plugin | What you can do |
268
+ | 插件 | 你可以用它做什么 |
265
269
  | --- | --- |
266
- | [Codex UI](https://github.com/MichengAI/dsh-codex-ui) | Organize projects and conversations, search tasks, and navigate chat turns |
267
- | [Agency Agents](https://github.com/MichengAI/dsh-agency-agents) | Choose and summon specialists for your task |
268
- | [Skills Manager](https://github.com/MichengAI/dsh-skills-manager) | Find, enable, create, and import local skills |
269
- | [Archive Manager](https://github.com/MichengAI/dsh-archive-manager) | Search, restore, or clean up archived conversations |
270
- | [IM Connect](https://github.com/MichengAI/dsh-im-connect) | Send tasks and receive replies through messaging platforms |
271
- | [Automation](https://github.com/MichengAI/dsh-automation) | Schedule tasks and review each run |
272
- | [BTW](https://github.com/MichengAI/dsh-btw) | Ask side questions without interrupting the main task |
273
- | [Simplify](https://github.com/MichengAI/dsh-simplify) | Use `/simplify` to improve code within your Git changes |
274
- | [PUA](https://github.com/MichengAI/dsh-pua) | Guide the Agent to try new approaches after failures, investigate causes, and verify results before completion |
275
- | [Code Review](https://github.com/MichengAI/dsh-code-review) | Use `/review` to request an independent Agent code review and receive the report in the current conversation |
276
- | [Codex Pet](https://github.com/MichengAI/dsh-codex-pet) | View conversation notifications and respond to tool approvals and questions through a desktop pet |
277
-
278
-
279
- ## License
280
-
281
- Licensed under [Apache License 2.0](LICENSE).
270
+ | [Codex UI](https://github.com/MichengAI/dsh-codex-ui) | 整理项目与会话、搜索任务、跳转对话轮次 |
271
+ | [Agency Agents](https://github.com/MichengAI/dsh-agency-agents) | 按任务选择并召唤专业角色 |
272
+ | [Skills Manager](https://github.com/MichengAI/dsh-skills-manager) | 统一查找、启停、创建和导入本机技能 |
273
+ | [Archive Manager](https://github.com/MichengAI/dsh-archive-manager) | 搜索、恢复或清理已归档会话 |
274
+ | [IM Connect](https://github.com/MichengAI/dsh-im-connect) | 从消息平台下任务、收回复 |
275
+ | [Automation](https://github.com/MichengAI/dsh-automation) | 按计划执行任务,查看每次运行的结果 |
276
+ | [BTW](https://github.com/MichengAI/dsh-btw) | 在当前上下文中临时旁问,不打断主任务 |
277
+ | [Simplify](https://github.com/MichengAI/dsh-simplify) | 用 `/simplify` 整理 Git 改动范围内的代码 |
278
+ | [PUA](https://github.com/MichengAI/dsh-pua) | 引导 Agent 在失败时换方法、查原因,并在完成前验证结果 |
279
+ | [Code Review](https://github.com/MichengAI/dsh-code-review) | 用 `/review` 发起独立 Agent 代码审查,在当前会话接收报告 |
280
+ | [Codex Pet](https://github.com/MichengAI/dsh-codex-pet) | 通过桌面宠物查看会话提醒、处理工具审批和问题回答 |
281
+
282
+
283
+ ## 许可证
284
+
285
+ 本项目采用 [Apache License 2.0](LICENSE)。
package/README.ru.md CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  **Безопасное управление архивированными сессиями в DeepSeek Harness**
10
10
 
11
- [English](README.md) · [简体中文](README.zh-CN.md) · [История изменений](CHANGELOG.md) · [Apache-2.0](LICENSE)
11
+ [English](README.en.md) · [简体中文](README.md) · [История изменений](CHANGELOG.md) · [Apache-2.0](LICENSE)
12
12
 
13
13
  [![Лицензия: Apache-2.0](https://img.shields.io/badge/License-Apache--2.0-blue.svg)](LICENSE)
14
14
  [![npm package](https://img.shields.io/npm/v/%40michengai%2Fdsh-archive-manager.svg?label=npm%20package)](https://www.npmjs.com/package/@michengai/dsh-archive-manager)
package/README.zh-CN.md CHANGED
@@ -8,13 +8,13 @@
8
8
 
9
9
  **在 DeepSeek Harness 中安全管理已归档会话**
10
10
 
11
- [English](README.md) · [Русский](README.ru.md) · [更新日志](CHANGELOG.zh-CN.md) · [Apache-2.0](LICENSE)
11
+ [English](README.en.md) · [Русский](README.ru.md) · [更新日志](CHANGELOG.zh-CN.md) · [Apache-2.0](LICENSE)
12
12
 
13
13
  [![许可证:Apache-2.0](https://img.shields.io/badge/许可证-Apache--2.0-blue.svg)](LICENSE)
14
14
  [![npm package](https://img.shields.io/npm/v/%40michengai%2Fdsh-archive-manager.svg?label=npm%20package)](https://www.npmjs.com/package/@michengai/dsh-archive-manager)
15
15
  [![npm 下载量](https://img.shields.io/npm/dt/%40michengai%2Fdsh-archive-manager.svg?label=npm%20%E4%B8%8B%E8%BD%BD%E9%87%8F)](https://www.npmjs.com/package/@michengai/dsh-archive-manager)
16
16
  [![DSH Web Plugin](https://img.shields.io/badge/DSH%20Web-Plugin-0f766e.svg)](https://github.com/MichengAI/dsh-archive-manager)
17
- [![DSH 支持至 0.2.2-alpha.3](https://img.shields.io/badge/DSH-%E6%94%AF%E6%8C%81%E8%87%B3%200.2.2--alpha.3-2563eb.svg)](#前置条件)
17
+ [![DSH 支持至 0.2.2-rc.1](https://img.shields.io/badge/DSH-%E6%94%AF%E6%8C%81%E8%87%B3%200.2.2--rc.1-2563eb.svg)](#前置条件)
18
18
  </div>
19
19
 
20
20
  > DSH Archive Manager 是社区维护的 DeepSeek Harness(DSH)插件,并非 DeepSeek AI 官方产品。
@@ -118,7 +118,7 @@ dsh plugin --profile web add @michengai/dsh-archive-manager@latest --registry=ht
118
118
 
119
119
  安装后重启 DSH Web,并刷新页面(或按 `Ctrl+Shift+R` 硬刷新浏览器),打开「设置 → 归档会话」即可使用。更新时可点击「检查更新」,或重新执行安装命令。
120
120
 
121
- - 宿主支持范围:DeepSeek Harness `0.2.x` 全系列(`>=0.2.0-rc.1 <0.3.0-0`),已在 `0.2.x` 的全部 RC(`0.2.0-rc.1`、`0.2.0-rc.2`、`0.2.1-rc.1`~`0.2.1-rc.5`)与最新 alpha(`0.2.2-alpha.3`)上验证。同一 RC 线中间的 alpha 不在支持范围内,请使用 RC 或最新 alpha。
121
+ - 宿主支持范围:DeepSeek Harness `0.2.x` 全系列(`>=0.2.0-rc.1 <0.3.0-0`),已在 `0.2.x` 的全部 RC(`0.2.0-rc.1`、`0.2.0-rc.2`、`0.2.1-rc.1`~`0.2.1-rc.5`、`0.2.2-rc.1`)上验证。同一 RC 线中间的 alpha 不在支持范围内,请使用 RC 或最新 alpha。
122
122
  - 不再支持 `0.2.0-rc.1` 之前的早期宿主,遇到 `0.3.0` 代际破坏性更新时将被版本门安全拦截。仍在使用 `0.1.x` 的用户请安装插件 `1.0.20`。
123
123
  - **反向代理部署**:支持将 DSH 部署在带路径前缀的反向代理后面(如 `/app/dsh/`),插件 API 与更新检查端点统一自动按页面基址(`document.baseURI`)相对解析,避免丢失代理路径前缀导致 404。
124
124