dsh-turn-clock:在 DSH 右側欄按日期瀏覽並跳轉會話輪次

前言

在 DeepSeek Harness(DSH)裏跑長會話時,輪次一多,很難快速回到「某天某刻」的那一輪。DSH 自帶對話區右緣的 turn rail 能列出輪次、預覽並跳轉,但投影裏沒有時間字段,窄屏(可用寬度 ≤ 900 px)時 rail 還會整塊不渲染——例如你打開右側 Sidebar 時,正好就是這類佈局。

dsh-turn-clock 是社區維護的客戶端插件,在官方右側 Sidebar 裏增加一個「時間目錄」頁:按日曆日分組,每行顯示該輪開始的 HH:mm 與 prompt 開頭,點擊即可加載並滾動到對應輪次。下面介紹它的定位、安裝方式與使用時的邊界。

這是什麼

  • 名稱:dsh-turn-clock(npm 包名同)
  • 維護者:saltedfish-T
  • 分類:客戶端(web profile)
  • 版本(package.json):0.1.0,許可證 MIT
  • 一句話:Right-sidebar tab that lists every turn of a session with its date and start time, and jumps the conversation to the turn you pick.

與內置 turn rail、dsh-conversation-timeline、dsh-turn-outline、dsh-timeline 等同屬「輪次導航」方向;本插件的差異可以概括爲:在官方 right Sidebar 裏提供帶日期的輪次大綱,不依賴 dsh-better-sidebar 等 peer 插件。

核心功能

資料中明確列出的能力如下。

能力 說明
帶日期的目錄 每輪一行,按類似「11月2日 週日」的日標題分組,列表內較新的輪次在下方
點擊跳轉 通過 turn/start 的 seq 用 loadThrough 加載歷史,再將 transcript 行滾入視口
全日誌覆蓋 時間來自 Host 側對整段 session log 的 fold,瀏覽器未加載過的輪次仍會出現在列表中
鍵盤 行可聚焦,Enter / Space 觸發跳轉
文案 中英文隨應用 locale
無額外 peer 使用官方右側 Sidebar 插槽,無需 dsh-better-sidebar

Host 側註冊 turnClock 投影:turn/start 記錄 turn、時間與 seq;該輪第一條人類 user/message(排除 injected context 等)填入約 120 字符預覽。Client 側註冊 Sidebar 標籤頁與指南卡片,用 useProjection('turnClock') 讀狀態並完成跳轉。

安裝與啓用

插件以當前 DSH 進程的權限運行;安裝前建議瀏覽 GitHub 源碼與 LICENSE,確認可接受第三方代碼接入 web 客戶端。

官方 README 給出的安裝命令爲:

dsh plugin --profile web add github:saltedfish-T/dsh-turn-clock

安裝後需重啓 DSH 或刷新頁面。若從本地目錄開發安裝:

dsh plugin --profile web add file:/path/to/dsh-turn-clock

README 寫明在 DSH 0.2.1-rc.5 上構建與測試;實現使用文檔化的擴展點,並依賴兩項內部約定(見下文「依賴與風險」),後續 DSH 版本可能影響跳轉行爲。

卸載:

dsh plugin --profile web remove dsh-turn-clock

典型用法

  1. 打開 DSH 右側 Sidebar。
  2. 進入 Start(指南 / Guide),找到 Turn timeline(時間目錄) 卡片並打開對應標籤頁。
  3. 會話中第一輪在列表上方;打開時列表會滾到最新一輪。點擊某行跳轉到該輪;可用鍵盤在行間移動並確認跳轉。

時間戳對應的是 turn/start 事件(循環在你提交 prompt 之後開始該輪的時刻),不是消息首次渲染到屏幕的時刻。

適用場景與注意

適合:需要在 Sidebar 可見、且希望按「日期 + 時刻」瀏覽長會話、快速定位某一 turn 的 web 端用戶;尤其在 transcript 變窄、內置 turn rail 不顯示時,作爲第二塊導航面。

已知限制(來自 README):

  • 被 compaction 移除的 turn 無法在 DOM 中找到,列表仍可能保留該行,點擊會提示找不到;內置 rail 同樣如此。
  • 跳轉會將目標輪次居中顯示,與 Chat 自帶 rail 距頂 24 px 的對齊方式不同。
  • 當前若在 Trajectory 視圖而非 Chat,沒有 transcript 行可滾動,面板會說明而不會自動切視圖。
  • 日標題通過瀏覽器 Intl.DateTimeFormat,未必總與應用 locale 一致。
  • 跳轉依賴 data-chat-turn 與 binding.session.loadThrough(seq);若上游變更,列表與時間仍可用,跳轉可能降級並在面板底部顯示一行原因。

生態說明:DSH 採用「一切皆插件」的擴展方式;社區目錄頁(如 skillhub.cn)爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。本倉庫 GitHub 星標爲 0(以目錄頁線索爲準),不代表功能完備度,僅作公開指標。

結尾

dsh-turn-clock 把「整段會話、每輪何時開始、點哪一行就去哪一輪」收進官方右側 Sidebar,補上了內置 turn rail 無時間與窄屏隱藏的兩處缺口。需要對比同類插件時,README 中的對照表可直接參考。

  • 目錄頁:https://www.skillhub.cn/plugins/saltedfish-T/dsh-turn-clock
  • 源碼與文檔:https://github.com/saltedfish-T/dsh-turn-clock
羽毛球分组比赛记分
小程序二维码

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

小夜