🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

会话历史缓存 KagurazakaNyaa/dsh-history-cache

DeepSeek Harness
KagurazakaNyaa11 天前有提交已提供中文文档扫描:未发现敏感能力

切换会话时复用已加载历史,免去重复拉取

29.8/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/22 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add KagurazakaNyaa/dsh-history-cache
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · other
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 11 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

在浏览器缓存会话历史,避免每次重新加载

README

由 DeepSeek 最新模型翻译生成
dsh-history-cache 一个 DSH Web 前端插件:切换会话时不再重新从后端拉取会话历史。 它解决什么 DSH Web 的主视图在切换会话时会释放上一个会话的引用。引用数归零后,客户端会销毁该会话实例、关闭它的事件流并丢掉已经加载的历史窗口;再切回去时只能重新向后端请求一次历史页(session.follow 的 opening snapshot)。会话越多、来回切换越频繁,重复拉取就越多。 本插件在浏览器里为最近打开过的会话额外持有一个 historyCache 引用,并限制在 6 个(LRU): - 切走时上一个会话不会因引用归零而被销毁,历史窗口留在内存里; - 切回来时直接复用已经打开的窗口,不再发起历史拉取; - 超出上限时按最久未使用淘汰,淘汰后恢复原生行为; - 正在运行 Agent 的会话不驻留(后台 token 流本身就在产生流量,驻留反而更费网络)。 纯前端实现,不改后端、不写会话日志。 安装 包名:@kagurazakanyaa/dsh-history-cache 这是一个 DSH bundle:在 DSH 的插件管理器里安装该 bundle 即可(安装后由 profile 的 bundle 列表启用)。安装会插入一条 Host 插件行;行为全部在 client.js,随页面加载生效。
展开完整文档(README 剩余 1 节)
dsh-history-cache

一个 DSH Web 前端插件:切换会话时不再重新从后端拉取会话历史。

它解决什么

DSH Web 的主视图在切换会话时会释放上一个会话的引用。引用数归零后,客户端会销毁该会话实例、关闭它的事件流并丢掉已经加载的历史窗口;再切回去时只能重新向后端请求一次历史页(session.follow 的 opening snapshot)。会话越多、来回切换越频繁,重复拉取就越多。

本插件在浏览器里为最近打开过的会话额外持有一个 historyCache 引用,并限制在 6 个(LRU):

- 切走时上一个会话不会因引用归零而被销毁,历史窗口留在内存里;
- 切回来时直接复用已经打开的窗口,不再发起历史拉取;
- 超出上限时按最久未使用淘汰,淘汰后恢复原生行为;
- 正在运行 Agent 的会话不驻留(后台 token 流本身就在产生流量,驻留反而更费网络)。

纯前端实现,不改后端、不写会话日志。

安装

包名:@kagurazakanyaa/dsh-history-cache

这是一个 DSH bundle:在 DSH 的插件管理器里安装该 bundle 即可(安装后由 profile 的 bundle 列表启用)。安装会插入一条 Host 插件行;行为全部在 client.js,随页面加载生效。

可调项

插件通过 localStorage 暴露两个无需重启的设置:

| 键 | 默认 | 含义 |
| dsh-history-cache:max | 6 | 最多保留多少个会话窗口;0 等于关闭缓存 |
| dsh-history-cache:disabled | false | 设为 true 可临时完全禁用 |

修改后刷新页面生效。

发布

版本标签驱动,推 tag 即发布(GitHub Actions → npm Trusted Publishing / OIDC,无需 NPM_TOKEN):

npm version patch # 或 minor / major:改 package.json 并打 tag
git push --follow-tags

publish.yml 会校验 tag 与 package.json 版本一致、跑测试,再执行 npm publish --access public;test.yml 在 main 和 PR 上跑 Node 20/22 × 三平台。npm 侧只需配置一次 trusted publisher:

| 字段 | 值 |
| Organization or user | KagurazakaNyaa |
| Repository | dsh-history-cache |
| Workflow filename | publish.yml |
| Allowed actions | 勾选 npm publish(不要只开 stage publish) |

OIDC 只对已存在的包生效,所以第一次发布需要手动完成。

限制

- 缓存只在当前页面生命周期内有效;刷新页面后首次打开会话仍会拉取(这是客户端内存缓存,不是持久化缓存)。
- 被淘汰的会话、正在运行的会话以及宿主重启/重连后的会话仍按原生行为重新拉取。
- 只影响 Web 前端的会话切换;其他客户端不受影响。

结构

| 文件 | 作用 |
| package.json | bundle 清单(dsh.bundle + dsh.client) |
| cordis.patch.yml | 插入 Host 插件行 |
| index.js | Host 半边(空实现,仅让浏览器扫描发现 dsh.client) |
| client.js | 浏览器半边:LRU 驻留与释放会话引用 |
| locale/*.json | 插件管理器里显示的名称与描述 |
| icon.svg | 插件图标 |

License

AGPL-3.0-or-later,见 LICENSE。
预览分享卡片长什么样 ↓KagurazakaNyaa/dsh-history-cache
分享 · DeepSeek Harness Hub
KagurazakaNyaa/dsh-history-cache

切换会话时复用已加载历史,免去重复拉取

回到顶部