dsh-nav-history:全局后退 / 前进导航历史

前言

DeepSeek Harness(DSH)本身没有 URL 路由,也没有浏览历史:切换会话或整页面板只是替换当前视图,旧位置直接丢弃。在开发或使用过程中,频繁在会话、插件市场、任务页等不同“页面”之间切换时,很容易迷失当前在哪个位置,需要手动点击多次才能回到上一个状态。

dsh-nav-history 通过维护一个全局访问栈,补上这一块缺失的能力。它记录访问过的会话与整页面板,并提供类似浏览器的后退 / 前进操作,以及一个常驻底栏和快捷键。

是什么

dsh-nav-history 是 DSH Web GUI 的一个客户端插件,由 AhaCrazy 维护。它提供全局后退 / 前进导航历史,支持会话(主会话、成员会话、历史会话)和整页面板(插件市场、任务页、自定义插件页等),并带有可配置的底部导航条和浏览器风格的快捷键。

核心功能

  • 全局后退 / 前进:覆盖两类“页面”
  • 会话:主会话、成员会话(origin: 'subagent' 的子会话)、任意历史会话
  • 整页面板:插件注册到 main + sidebar.panellist 的页面(插件市场、任务页等),以及从面板跳回会话、会话再进面板的任意交错
  • 常驻底栏:挂在 shell.bottom 根位置,跨面板常驻、不随面板切换消失,也不占用会话头部
  • 前后文可见:底栏一次性显示当前页面及其前后的历史位置(默认 3 个,可在 1–7 之间配置),点击任意条目可直接跳转;当前页面高亮
  • 浏览器式快捷键:Alt+← / Alt+→(Windows),⌘[ / ⌘](macOS),已注册进 DSH 的快捷键系统,可在“设置 → 通用 → 快捷键”中查看和改键;支持鼠标侧键(后退键 3 / 前进键 4)
  • 历史持久化:按浏览器存 localStorage(键 dsh.nav-history.v1,上限 100 条,7 天过期),刷新页面后历史仍在
  • 纯客户端:Host 为空实现,不注册工具、不写提示词、不碰会话数据;只读取公开的布局 / 会话状态并调用公开的导航 API

安装与启用

从 GitHub 安装(DSH 桌面版 profile desktop):

dsh plugin --profile desktop add github:AhaCrazy/dsh-nav-history

本地开发时可以用 link: 方式挂载当前目录:

dsh plugin --profile desktop add ./dsh-nav-history

或手动在 ~/.dsh/profiles/desktop/package.json 中:
1. dependencies 增加 "dsh-nav-history": "link:C:/Users/happyelements/Documents/dsh-plugins/dsh-nav-history";
2. dsh.profile.bundles 追加 "dsh-nav-history";
3. 在 profile 目录执行 pnpm install;
4. 重启 DSH 桌面端(Host 需要重新组合插件行),刷新 Web 页面。

安装后页面底部会出现导航条,默认显示当前页面前后各 2 条记录。

配置

进入“设置 → 插件 → dsh-nav-history → 导航栏”:

  • 最多显示条目数:1–7(硬限制,越界值会被夹紧);默认 3。
  • 每个页面的最大宽度:64–320 px(滑块,按 8 px 步进;越界值会被夹紧,默认 160 px)。标题超出部分省略显示。

配置即时生效,并按浏览器保存在 localStorage(键 dsh.nav-history.settings.v1)。

典型用法

页面底部出现一条细导航条:

[←] [→] │ [上一页] [当前页] [下一页]        3/7
  • 左键点击箭头、按快捷键、或用鼠标侧键即可后退 / 前进;
  • 点击中间的页面条目可直接跳到该历史位置;
  • 右侧 3/7 是历史栈位置(进入过的页面总数);
  • 标题为当前会话标题或面板名称;面板页面的标题取侧栏面板注册的 label。

适用场景与注意

  • 适合需要频繁在会话与整页面板之间切换的使用场景
  • 插件以当前 DSH 进程权限运行,安装前建议检查源码与许可证
  • 只跟踪主视图的切换:右侧栏、侧边对话、设置弹窗等不进入历史(它们不改变主页面)
  • 返回面板时先恢复面板下的会话再选中面板(顺序由 DSH 公开 API 决定)
  • 面板或会话已被删除 / 归档时,该条历史在恢复失败后自动丢弃
  • 无历史或到栈顶 / 栈底时按钮置灰
  • 未跟踪会话内的 view 页签(对话 / 轨迹)切换,也不跟踪滚动位置

结尾

dsh-nav-history 为 DSH 提供了全局后退 / 前进导航能力,减少在会话与页面间切换时的迷失感。通过底栏和快捷键,可以快速回到上一个位置,提升操作效率。

  • 插件目录页:https://www.skillhub.cn/plugins/AhaCrazy/dsh-nav-history
  • GitHub:https://github.com/AhaCrazy/dsh-nav-history
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜