Automatically loads the full conversation history when a session opens, so older messages are ready without clicking "Load earlier".
Install
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:magicOF2/dsh-autoload-history
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
This plugin publishes its README in Chinese only.
打开会话自动加载全部历史消息,免去反复点击「加载更早」。 Automatically load the full conversation history when a session opens — no more clicking “Load earlier”.
DeepSeek Harness(DSH)Web 打开会话时只加载最近 50 条消息,更早的内容要一页页手动点「加载更早」。本插件让打开会话即自动翻页,直到整个会话完整加载——长会话一进来就全部就绪,翻旧消息不再需要任何点击。
When DSH Web opens a session it only loads the latest 50 messages; everything older requires clicking “Load earlier” page by page. This plugin pages through the rest automatically the moment a session opens, until the whole conversation is loaded — no more clicking to reach old messages.
安装 / Install
从 GitHub 源码安装(推荐)/ From source (recommended)
dsh plugin --profile web add github:magicOF2/dsh-autoload-history
首次安装会请求 allowBuilds 构建授权(GitHub 源需要从源码构建),按提示允许后重试一次即可。 / First install asks for the allowBuilds build approval (GitHub sources build from source) — follow the hint and retry once.
从 npm 安装 / From npm
发布后可用: / Once published:
dsh plugin --profile web add dsh-autoload-history
npm 预构建安装会跳过 allowBuilds 步骤。 / Prebuilt npm installs skip the allowBuilds step.
使用 / Usage
零配置。安装后打开任意会话即自动生效: / No configuration. Open any session and it just works:
- 自动逐页加载(每页 50 条)直到整个会话全部就绪; / Pages automatically (50 messages per page) until the entire history is loaded;
- 切换会话自动跟随,互不干扰; / Follows session switches automatically;
- 加载不打断正常聊天(翻页与实时追加互不冲突); / Loading never interrupts an active conversation;
- 全程无 UI 痕迹(隐形挂载在会话底部官方槽位)。 / Fully invisible — mounted in an additive session slot.
可选设置 / Optional settings(localStorage)
| 键 Key | 值 Value | 效果 Effect |
|---|---|---|
dsh-autoload-history.disabled |
'1' |
整体停用自动加载(逃生开关)/ disable the plugin without uninstalling |
dsh-autoload-history.maxPages |
正整数 | 单次打开会话最多自动翻的页数;缺省/'0' = 不限 / cap pages per session open; default unlimited |
// 在 DSH Web 控制台执行 / run in the browser console
localStorage.setItem('dsh-autoload-history.disabled', '1') // 停用
localStorage.removeItem('dsh-autoload-history.disabled') // 恢复
localStorage.setItem('dsh-autoload-history.maxPages', '20') // 只翻 20 页(约 1000 条)
非法值一律回落默认(启用、不限页)。 / Invalid values always fall back to enabled + unlimited.
工作原理 / How it works
- 挂载到官方会话级槽位
conversation.composer.dock(列表槽、零侵入,渲染null); / Mounts in the official session-scopedconversation.composer.docklist slot (additive, renders nothing); - 通过槽位标准 props 拿到会话快照(
useSession选择器)与sessionId; / Reads the conversation snapshot (useSession) andsessionIdfrom the slot's standard props; - 快照
openState === 'open'且hasMore === true且未在翻页时,调用session.loadOlder()翻一页; / Whenever the snapshot is open withhasMoreand no page in flight, callssession.loadOlder(); - 每翻一页快照更新 → 自动触发下一页,直到
hasMore === false; / Each page updates the snapshot, which cascades the next page, untilhasMore === false; - 防呆:连续 3 页无进展自动放弃(故障时绝不死循环)。 / Guard: gives up after 3 consecutive no-progress pages (never hot-loops on a failing host).
详见 docs/DESIGN.md。 / See docs/DESIGN.md.
兼容性 / Compatibility
- DeepSeek Harness
>= 0.1.0-rc.5(Web profile)/ DeepSeek Harness>= 0.1.0-rc.5(Web profile) - 纯浏览器端插件:无宿主行为、无数据上报、无网络请求 / Pure client plugin: no host behavior, no telemetry, no network requests
- 不修改任何官方文件,卸载即完全还原 / Does not modify any official files; uninstalling restores everything
开发 / Development
npm ci
npm run build # 产出 lib/index.mjs(Node half)+ lib/client.js(浏览器 bundle)
npm test # node --test:纯决策核心(翻页判定/守卫/设置解析)
许可证 / License
MIT © magicOF2
相关 / Related
- DeepSeek Harness
- awesome-dsh-plugin — DSH 插件精选列表 / curated DSH plugin list
Links
More in this category
zhu1090093659/dsh-web#packages/dsh-task-board★ 8296
Task board for the dsh web GUI: a sidebar multi-column kanban whose cards run in real DSH agent sessions and can also be scheduled with cron expressions, executed host-side even with the browser closed.
zhu1090093659/dsh-web#packages/dsh-web-all★ 8296
Plugin and skin collection for the DSH Web UI: task board, Git graph, right-side panel, remote mobile UI, pet, live token stats, and a skin center.
omdsh-dev/DSH-better-sidebar★ 3968
Full sidebar workbench with file rendering and editing, terminal, Git, and subagents; third-party plugins can register new tabs.
ccch1mneyyy/dsh-TUI★ 3948
Claude Code-style full-screen terminal UI: pixel-whale header, live status line, and streaming thought expansion.
MeteorNOX/DeepSeek-Balance-Whale-Widget★ 3877
A fixed-corner whale widget for the DSH web GUI — balance, today's usage and per-turn cost with peak/off-peak pricing, editable balance-alert and daily-budget bubbles, a module-based custom bubble queue with A/B weighted choices and random lines or images, 30+ vendor templates (OpenAI, OpenRouter, Kimi, SiliconFlow, Ark, Zhipu, MiniMax and more) with per-model balance and subscription quota, plus task-end sound, imported audio, custom roles and a resource manager. Local-only, no telemetry.
Devin-AXIS/deepseek-design#deepseek-idesign★ 1413
Visual design studio for websites, app prototypes, posters, cards, reports, and magazines, with templates, direct element editing, selection-aware AI draft handoff, and export.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.