缩小首屏窗口并合并重复请求,加快会话切换
30.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/23 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add guofug/dsh-fastswitch该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DeepSeek Harness 会话切换更快:缩小首屏绘制窗口,客户端请求去重。
README
由 DeepSeek 最新模型翻译生成dsh-fastswitch
让 DeepSeek Harness 的会话切换变快,只做两件事,都可单独关闭。
English: README.md
它解决什么
切换会话时,DSH 会重新向 Host 要一份「首屏历史」。这段历史有一个写死的窗口——至少 50 条消息——在长对话里这一帧能达到 2 MB,而这正是切换时那几秒的等待来源。
同时,页面初次构建时,几个组件会各自去拉同一批只读目录接口:session/modelCatalog 6 次、credentials/describe 7 次、agentPresets/list 6 次、cotTranslation/limits 3 次。它们没有去重,也没有缓存。
dsh-fastswitch 在浏览器里对这两件事各做一处改动:
1. 首屏窗口可配置 —— 把外发的 session/follow 请求里的 turnWindow.minMessages 从 50 改小(默认 20)。Host 只校验 0 < minMessages <= maxMessages,所以这是协议允许的请求,不是打补丁。凡是要「加载更早」的分页请求(200 条)一律不动。
2. 只读 RPC 去重 + 缓存 —— 包装 window.fetch,对只读目录接口做 5 分钟结果缓存,并发调用合并为一次实际请求。
展开完整文档(README 剩余 1 节)
dsh-fastswitch
让 DeepSeek Harness 的会话切换变快,只做两件事,都可单独关闭。
English: README.md
它解决什么
切换会话时,DSH 会重新向 Host 要一份「首屏历史」。这段历史有一个写死的窗口——至少 50 条消息——在长对话里这一帧能达到 2 MB,而这正是切换时那几秒的等待来源。
同时,页面初次构建时,几个组件会各自去拉同一批只读目录接口:session/modelCatalog 6 次、credentials/describe 7 次、agentPresets/list 6 次、cotTranslation/limits 3 次。它们没有去重,也没有缓存。
dsh-fastswitch 在浏览器里对这两件事各做一处改动:
1. 首屏窗口可配置 —— 把外发的 session/follow 请求里的 turnWindow.minMessages 从 50 改小(默认 20)。Host 只校验 0 < minMessages <= maxMessages,所以这是协议允许的请求,不是打补丁。凡是要「加载更早」的分页请求(200 条)一律不动。
2. 只读 RPC 去重 + 缓存 —— 包装 window.fetch,对只读目录接口做 5 分钟结果缓存,并发调用合并为一次实际请求。
实测
同一台机器、同一个页面、同一段会话:
| 指标 | 默认 | 装上之后 |
| 首屏快照(一次长会话) | 2,040,432 B | 1,054,070 B |
| session/modelCatalog | 6 次 | 1 次 |
| credentials/describe | 7 次 | 1 次 |
| agentPresets/list | 6 次 | 1 次 |
| 首屏请求总数 | 52 | 33 |
数字来自一次真实测量,取决于会话长度与浏览器缓存状态,不是常量。
安装
在插件市场里搜索 fastswitch,或直接:
dsh plugin --profile web add github:guofug/dsh-fastswitch
装完重启或等 HMR 重载一次生效。
配置
全部通过 localStorage,无需改配置文件:
| 键 | 默认 | 说明 |
| dsh-fastswitch | — | 设为 off 关闭全部功能 |
| dsh-fastswitch-window | 20 | 首屏窗口条数;0 表示不改写 |
| dsh-fastswitch-ttl | 300000 | 结果缓存时长(毫秒);0 表示不缓存 |
| dsh-fastswitch-merge | 800 | 并发合并窗口(毫秒) |
例:
localStorage.setItem('dsh-fastswitch-window', '10') // 更激进
localStorage.setItem('dsh-fastswitch', 'off') // 临时全关
怎么确认它在工作
window.__dshFastswitch
// { installed: true,
// ws: { rewritten: 3, untouched: 40 },
// fetch: { calls: 51, hits: 10, dedup: 8, bypass: 33 } }
- ws.rewritten 每切换一次会话应 +1;
- fetch.hits + fetch.dedup 就是省掉的请求数。
边界
- 只影响浏览器。终端、SDK、ACP、其他客户端不受影响。
- 不改 DeepSeek Harness 的任何文件,也不改 Host。窗口是通过改写外发请求实现的,缓存是浏览器侧的 fetch 包装;卸载插件即恢复原行为。
- 不含「会话停泊缓存」(把已打开的会话留在内存里以便瞬间切回)。那需要改动 Session 生命周期内部实现,跨版本容易碎,本项目有意不做。
- 缓存只覆盖只读目录接口。任何写操作、流式响应、鉴权接口都不在缓存范围内。
兼容性
- 面向 dsh ^0.2.1-rc.2(见 engines.dsh)。
- 两处包装都做了幂等保护,HMR 重载不会重复叠加。
- 任何一处包装失败都不会破坏页面:失败即跳过,功能降级为原生行为。
许可
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
guofug/dsh-fastswitch
缩小首屏窗口并合并重复请求,加快会话切换
相关插件 · 其他
模型破甲清洗HunYiSage/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 16,993已汉化DeepSeek 客户端
73
女娲蒸馏alchaincyf/nuwa-skill
输入名人名字,提炼其思维模型与决策方式供你调用
★ 37,308已汉化DSH
72
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 888已汉化DSH
71.6
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,269已汉化DSH
70.8
这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。