Session Notes:DSH 會話劃線便籤

前言

在 DeepSeek Harness (DSH) 的開發或使用過程中,經常需要在對話中標記關鍵信息或保存思考過程。手動複製粘貼不僅繁瑣,還容易丟失上下文關聯。下面介紹 dsh-session-notes,它通過在對話中高亮文本並附加便籤,將信息持久化並聚合展示,解決了這一痛點。

插件概覽

dsh-session-notes 是一個非官方項目,由社區成員 iptton-ai 獨立開發與維護,採用 MIT 許可證。它利用 CSS Custom Highlight API 實現零 DOM 修改的高亮,支持三種作用域(會話、工作區、全局)的便籤管理。

核心功能

插件提供了以下核心能力:

  • 高亮與註釋:支持跨加粗、行內代碼及段落邊界的選區。點擊浮動按鈕即可添加便籤,選中文本獲得持久高亮。
  • 三種作用域:便籤可歸屬於“本會話”、“當前目錄”或“全局”。在面板中新建、編輯或刪除,作用域內的便籤在對應會話中可見。
  • 面板過濾:右側面板支持按“全部”、“當前目錄”、“本會話”過濾,並顯示實時計數。
  • 發送到編輯器:將便籤內容與引用原文追加到當前輸入框,方便繼續追問。
  • 自愈高亮:通過 MutationObserver 監聽 DOM 變化,每 5 秒進行一次 reconciliation,確保高亮在重渲染或分頁後依然存在。
  • 任務筆記與定時觸發:支持創建帶有 next(下一步動作)、doneWhen(完成條件)的任務便籤,或設置 dueAt(截止時間)的定時觸發。前者可生成新會話,後者可自動觸發。
  • 起源丟失防禦:插件會每 3 分鐘輪詢 session/list。當任務所屬會話被刪除時,自動降級爲通知模式,並在面板中提供決策卡片,避免靜默失敗。

安裝與啓用

支持常駐模式和動態模式兩種安裝方式。

常駐模式(推薦)

這是推薦的方式,插件在 dsh web 進程重啓後依然存在。

dsh plugin --profile web add github:iptton-ai/dsh-plugin-session-notes

或者使用本地路徑:

git clone https://github.com/iptton-ai/dsh-plugin-session-notes
dsh plugin --profile web add /abs/path/to/dsh-plugin-session-notes

動態模式

無需構建步驟,插件僅在當前 dsh web 進程生命週期內有效。

  1. 打開 DSH,使用“創造模式”或帶有 cordis_define / cordis_run 工具的預設。
  2. 詢問 Agent 安裝:

    幫我安裝這個插件:倉庫 https://github.com/iptton-ai/dsh-plugin-session-notes。用 cordis_define 定義(讀取 src/host.js 作爲 code.host、src/client.js 作爲 code.client,plugin id 前綴 snote),然後 cordis_run 激活並批准。

  3. 刷新頁面後即可使用。

配置注意事項

  • 不要手動將 session-notes 行插入到 dsh.profile.bundles 的 cordis.patch.yml 中,這會導致重複註冊。
  • 插件存儲文件位於 ~/.dsh/storages/session-notes/notes.json。

使用方法

  1. 在 DSH 會話的消息中選中任意句子。
  2. 點擊浮動出現的 📝 記便籤 按鈕。
  3. 在彈出的輸入框中寫下筆記。
  4. 在右側面板中,可以切換過濾視圖(全部/當前目錄/本會話)查看所有便籤。
  5. 點擊便籤可查看詳情,點擊編輯可修改。
  6. 選中已高亮的文本,點擊發送到對話框,即可將筆記內容追加到當前輸入框。

注意事項

  • 非官方項目:此插件由社區成員獨立維護,不隸屬於 DeepSeek 官方。
  • 權限範圍:插件在宿主端僅對自身的存儲文件 ~/.dsh/storages/session-notes/notes.json 擁有 danger-full-access 權限,不會觸碰其他路徑。
  • 數據持久化:常駐模式下數據持久化存儲;動態模式下,若 dsh web 進程重啓,需重新運行安裝命令,但磁盤上的筆記數據通常會被保留。
羽毛球分组比赛记分
小程序二维码

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

小夜