dsh-plugin-obsidian-memory:讓 Harness Agent 讀寫你的 Obsidian 庫

前言

在 DeepSeek Harness(DSH)裏做智能體開發時,常見問題不是「模型不夠強」,而是上下文裏缺少你可覈查的個人知識:筆記在 Obsidian 裏已經積累很多,對話裏卻要一次次口頭重複背景;檢索不到就要靠模型猜,引用也對不上真實文件。社區目錄將 nineberg/dsh-plugin-obsidian-memory 歸爲「記憶」類插件,定位是讓 Agent 能檢索本地 Obsidian 庫、按路徑引用筆記,並把會話產出寫回庫中。倉庫由 nineberg 維護,是 zhaoxuejie/dsh-plugin-vault-memory(v0.4.0,MIT)的改良分支,並針對 DeepSeek Harness 0.2.2-rc.1 做了兼容與 GUI 調整;npm 包名仍爲 dsh-plugin-vault-memory,當前版本 0.4.0,許可證 MIT。

這是什麼

一句話:把本地 Obsidian vault 變成 DSH web 側 Agent 的長期記憶與工作臺——索引與檢索、新會話記憶注入、捕獲存筆記、可拖拽懸浮球/中央面板,以及庫健康巡檢。索引、檢索與巡檢默認在本機完成;語義檢索可選用本地 Ollama(bge-m3)或兼容的雲端端點。

相對上游,nineberg 分支在資料中列出的主要修復包括:進程級單次 HTTP 路由註冊(避免重掛載後舊路由導致 GUI 報 “index missing”)、路由註冊重試(避免掛載早於 webServer 就緒的 404)、配置保存在無舊版 settings API 時回退到 ~/.dsh/vault-memory.settings.json,以及懸浮卡片與 plugin-island 生態的交互與錯誤角標調整。

核心功能

Agent 工具集

在對話裏用自然語言即可觸發能力;規則是引用必須帶筆記路徑,找不到則明確說明,不編造。README 中的對照示例如下(背後實現以插件爲準):

你想做什麼 直接說 背後
翻舊筆記 “庫裏有沒有 Docker 相關筆記?” 全文檢索(中文分詞)
按條件找 “查 tools/ 下近 30 天改過的筆記” 結構化查詢(目錄/標籤/時間)
讀某篇全文 “把《Git 合併》筆記讀給我” 帶行號讀取
意思相近的 “搜跟 Windows 命令行相關的” 語義檢索(本地模型,可選)
關聯推薦 “這篇筆記跟哪些有關聯?” 入鏈/出鏈/同標籤/共引,帶理由
保存成果 “把這段整理成筆記存進庫” 自動 frontmatter + 關聯建議
體檢 “庫裏有孤兒/斷鏈嗎?” 只讀巡檢報告

新會話開頭可自動注入「記憶快照」(庫狀態、活躍項目、近期筆記),減少每次從零介紹背景。

知識庫 GUI(web)

面向 web profile:懸浮球、側欄「知識庫」圖標、以及與 Plugin Island 的靈動島收納/拖出,三種形態數據同源、位置可記憶。懸浮球在庫有異常時可顯示紅色計數徽標;卡片與中央面板共用四個 Tab:

  • 概覽:各庫健康(筆記數、斷鏈、待審、趨勢、語義狀態等)
  • 捕獲:預覽 → 保存 → 在 Obsidian 打開
  • 審查:巡檢建議逐條批准/忽略;批准前自動備份
  • 配置:在線增刪庫與開關,保存即生效

巡檢管家

默認每日 03:00 可配置的定時巡檢,生成帶理由的建議清單(孤兒筆記、斷鏈、缺總覽等)。只建議、批准後才寫盤,寫前自動備份;忽略後同類建議可在配置的天數內(資料示例爲 30 天)不再提醒。可選高級規則(需語義嵌入)包括語義相近未互鏈、疑似重複、過期複審等。

安裝與啓用

插件以當前 DSH 進程權限訪問你配置的 vault 路徑,安裝前建議查看 GitHub 倉庫 源碼與 MIT 許可聲明。

npm 安裝(README 推薦)

# 安裝到 web profile(裝完需完全重啓 dsh,不是僅刷新頁面)
dsh plugin --profile web add dsh-plugin-vault-memory

配置 Obsidian 庫路徑

在插件設置頁添加,或編輯 ~/.dsh/settings.yaml:

dsh-plugin-vault-memory:
  vaults:
    - path: D:\path\to\your-vault   # Obsidian 庫絕對路徑
      label: main                    # 可選:顯示名稱

完全重啓 dsh 後,瀏覽器右下角應出現書本圖標懸浮球,左側欄出現「知識庫」圖標,即表示 web 客戶端側已加載。

可選:語義檢索

ollama pull bge-m3

在浮卡「配置」中開啓語義檢索並保存;新筆記會自動嵌入。不可用時插件會回退到關鍵詞檢索。

典型用法

  1. 問庫內事實:例如「庫裏有沒有 Docker 相關筆記?」——應返回命中列表並帶文件路徑,而非無出處概括。
  2. 結構化篩選:例如限定目錄與時間窗口的查詢,適合按項目文件夾維護筆記的習慣。
  3. 收尾存庫:對話裏要求「把這段整理成筆記存進庫」,會走 frontmatter 與關聯建議;若提示「同名已存在」,README 說明爲不覆蓋設計,需換標題或目錄。
  4. 定期體檢:在「審查」Tab 處理孤兒/斷鏈等建議,僅在你批准後改盤。

上游文檔鏈接(功能演進以 nineberg 分支 README 爲準):使用教程、設計與開發文檔。

適用場景與注意

適合誰:已在 Obsidian 中維護個人/項目知識庫、希望在 DSH web 環境裏讓 Agent 可查、可引、可回寫 同一套 Markdown 的開發者或重度筆記用戶。

環境要求:面向 web profile 客戶端(package.json 中 dsh.client.platform 爲 web)。未看到懸浮球/側欄時,資料建議完全重啓 dsh,或清除瀏覽器 localStorage 後刷新;檢索提示「未配置 vault」時需在浮卡「配置」中添加庫路徑。

權限與隱私:筆記默認不出本機;雲端語義端點爲可選項。插件能讀寫的範圍等於你配置的 vault 路徑及 DSH 進程權限,請勿指向無意共享的目錄。

生態說明:DSH 採用「一切皆插件」的擴展方式;SkillHub 目錄頁 爲社區收錄,與 DeepSeek / 幻方無官方從屬關係。

結尾

nineberg/dsh-plugin-obsidian-memory(npm:dsh-plugin-vault-memory)把 Obsidian vault 接到 Harness Agent 的工具鏈與 web GUI 上:檢索與引用有路徑約束,產出可捕獲回庫,巡檢在批准與備份前提下整理庫結構。進一步瞭解請查看目錄頁 nineberg/dsh-plugin-obsidian-memory 與源碼倉庫 https://github.com/nineberg/dsh-plugin-obsidian-memory。

羽毛球分组比赛记分
小程序二维码

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

小夜