dsh-shared-brain:跨會話共享人設與分層記憶

前言

在 DeepSeek Harness(DSH)裏開多個會話時,常見問題是:人設寫在某一側,記憶只留在當前對話裏,換窗口或換插件開的會話又像「失憶」。單靠一長串平鋪的記憶列表,還會出現「不要刪文件」和「今天天氣不錯」在召回時被同等對待的情況。

下面介紹社區插件 dsh-shared-brain(維護者 youx123,分類:記憶)。它讓人設與記憶在所有 DSH 會話之間共用,並按底線、認知、情感、本能、聲音、網絡、自動互動七個模塊分別設權重與注入策略;表情包目錄支持定時自動掃描加載。插件倉庫:youx123/dsh-shared-brain,目錄頁:SkillHub 插件頁。

這是什麼

dsh-shared-brain 是 DSH 的「共享大腦」插件:統一管理跨 profile、跨會話的人設與記憶庫,在每輪對話開始按加權規則召回,在對話結束自動摘要入庫。人設由插件自持(內置人設 + 自定義,可給單個會話單獨指定),不再依賴獨立的人設插件;提示詞段落全局註冊,task-board、im、ssh 等插件開的會話與子代理也會拿到同一份注入,會話上下文按 agent.session.header.id 分開,避免併發互相污染。

數據默認落在 DSH_HOME(一般爲 ~/.dsh)下的 storages/dsh-shared-brain/,與具體 profile 目錄分離,因而跨 profile 共用同一套記憶與人設配置。

七個模塊與注入方式

插件把記憶按「性質」拆成七個模塊,各自有權重含義和注入策略(摘自官方 README 表格):

模塊 裝什麼 權重含義 注入策略
底線 bottomline 操作限制、禁令、權限邊界 約束強度(≥0.8 = 強約束) 手動釘住的才永遠注入
認知 cognition 事實、結論、決定 置信度(≥0.8 = 已確認) 相關時召回
情感 emotion 關係、偏好、情緒、稱呼 親密度(≥0.6 = 強偏好) 相關時召回
本能 instinct 反覆使用的行爲習慣 使用頻次(≥0.7 = 習慣) 高頻時自動觸發
聲音 voice 說話方式、語氣、口頭禪 風格強度 常駐生效
網絡 network 允許對外獲取信息 — 開關
自動互動 agentive 允許主觀能動性 — 開關

底線不會自動歸類:分類器遇到「不要 / 必須 / 禁止」等信號時,只會記成高權重認知並提示可手動釘爲底線;只有你在設置頁或命令裏釘住的條目纔會每次強制注入。

召回分數公式(官方說明):

召回分數 = 基礎相關性 × 條目權重 × 模塊權重 + 模塊加成

模塊加成約爲:底線 +3.0、本能 +1.8、情感 +1.4、認知 +1.0。權重爲 0 的條目或模塊不參與召回。模塊權重可在設置頁拖動,或用 /shared-memory weight <模塊> <0..1> 調整。

入庫、分類與壽命

入庫:每輪對話結束自動摘要爲「用戶問 → 助手答」,分類器決定模塊與條目權重;無信息量的輪次(如「繼續」「ok」)跳過;含密鑰的內容先脫敏再入庫。

自動分類(按優先級,先命中先定):

  1. 情感 —— 出現「喜歡 / 討厭 / 想念 / 叫我 / 我們」等信號詞
  2. 本能 —— 同一主題在庫裏已出現 2 次以上(頻次判定)
  3. 認知 —— 其餘事實;命中「結論 / 原因 / 已修復 / 版本」等時置信度可提到 0.8

同一主題被提到 3 次以上會歸入本能,權重隨頻次上漲。壽命由 judgeLifetime() 按整句語義判永久或臨時(長期約定、穩定偏好多爲永久;帶「今天 / 本週」等時間窗的爲臨時;未命中信號時默認臨時 14 天)。臨時記憶到期清理,被召回時會滑動續期;新說法明顯推翻舊說法時,舊條目會被標記爲被取代。

條目可設作用域:全局生效,或僅在當前工作區(按 cwd)生效。

設置頁與側邊欄

裝完後 DSH 設置頁會出現 「共享大腦」 一節,主要能力包括:

  • 記憶模塊:底線 / 認知 / 情感 / 本能四卡片——權重滑桿、啓停、清空模塊、條目作用域(全局 / 本工作區)
  • 手動底線:寫入約束並「釘住」;僅釘住項常駐注入
  • 聲音 / 人設 / 語音與唱歌參數:語氣、口頭禪、自稱;人設切換與編輯(切換後全會話即時生效);語音相關字段供後續語音模塊使用
  • 表情包目錄:指定目錄(留空用默認 ~/.dsh/storages/dsh-shared-brain/emoji/),支持 .txt / .md / .emojilist 與常見圖片格式(文件名即情緒名);默認約 5 分鐘自動掃描,可改間隔(30 秒~24 小時)或「立即重掃」
  • 搜索記憶、能力開關(網絡 / 自動互動)、自動互動 · 定時主動(見下節)、最近的記憶與清空全部記憶

輸入框上方有 「大腦 · N」 小條:顯示記憶總數、底線條目數、已開能力圖標,點「打開面板」進入完整浮層。

本地 UI 通過迴環 HTTP 與插件通信:

GET  /api/dsh-shared-brain/status
POST /api/dsh-shared-brain/mutate   {"action":"...", ...}

mutate 的 action 包括 setWeight、pinItem、setEmojiDir、rescanEmoji、runProactive、searchMemory 等(完整列表見倉庫 README)。

自動互動

開啓 自動互動 後,插件會按設定間隔向仍活躍的會話發送「主動檢查一下」類 followup(agent.followup()),會喚醒會話並開啓新一輪,而不是僅在系統提示裏寫一句「可以更主動」。設置頁可配置:

  • 主動間隔(1 分鐘~24 小時),保存後立即重啓定時器
  • 「立刻主動一次」用於驗證
  • 生效範圍:全部會話或指定會話(可按工作區分組勾選)
  • 時間窗:例如 09:00~23:00(可跨午夜),窗外只響應用戶明確交代的事

關閉自動互動時定時器停止。命令行側可用 /shared-memory agentive on|off、agentive interval、agentive now 等(見下文)。

與 Cursor「共享大腦」協同

自 0.9.3+ 起,若本機安裝了 Cursor 擴展 cursor-shared-brain,DSH 插件 lib/cross-sync.js 會監聽 ~/.cursor/storages/cursor-shared-brain/ 下的協調文件與 ~/.cursor/rules/shared-brain/,從 Cursor 側 inbound 拉記憶,入庫時通過 writeStoreSynced 通知 Cursor 合併。修改後需重啓 DSH 宿主生效。

安裝與啓用

裝完後須把 dsh-shared-brain 寫入 profile 的 package.json → dsh.profile.bundles,並重啓 DSH 宿主。插件爲純 JS,裝完無需構建;發佈包需包含 assets/(含內置 assets/emoji/),否則表情功能不可用。要求 Node >= 20,DSH 引擎在 package.json 中聲明爲 >=0.2.0-rc.1。

方式一:設置頁安裝

  1. 打開 設置 → 插件 → 安裝插件
  2. 粘貼下列任一地址並回車:
https://github.com/youx123/dsh-shared-brain
https://github.com/youx123/dsh-shared-brain/releases/download/v0.9.12/dsh-shared-brain-0.9.12.tgz
  1. 在插件列表確認 dsh-shared-brain 已啓用,重啓 DSH

GitHub 地址與 tgz 直鏈需本機可訪問 GitHub(或代理);網絡不通時可先下載 tgz,再用方式二。

方式二:CLI 安裝本地 tgz

從 Releases 下載 dsh-shared-brain-0.9.12.tgz 後執行:

dsh plugin --profile <你的 profile> add ./dsh-shared-brain-0.9.12.tgz

方式三:git 源

dsh plugin --profile <你的 profile> add git+https://github.com/youx123/dsh-shared-brain.git

設置頁出現「共享大腦」一節即表示宿主已加載插件。

典型用法:/shared-memory

除設置頁外,插件註冊 /shared-memory 命令,便於在會話裏快速查看與改配置。示例(摘自 README):

/shared-memory                    總覽:各模塊條目數與權重、人設、能力開關、最近 5 條
/shared-memory modules            各模塊明細
/shared-memory weight 認知 0.8     調整模塊權重(0..1)
/shared-memory voice 說話要帶點傲嬌  往聲音模塊加一條風格
/shared-memory add 底線 不要刪我的文件  手動加一條(底線會自動釘住)
/shared-memory pin 底線 <條目>      釘住 / unpin 取消釘住
/shared-memory permanent 認知 <條目> 改成永久記憶
/shared-memory temporary 認知 <條目> [小時]  改成臨時記憶(默認 24 小時)
/shared-memory network on|off     開關「對外獲取信息」
/shared-memory agentive on|off    開關「主觀能動性」
/shared-memory agentive now      立刻對所有活躍會話主動搭話一次
/shared-memory persona           列出人設
/shared-memory persona use <id>   切換人設

先做日常對話讓插件自動入庫與召回,再用 weight、pin、persona 等命令微調模塊與人設,是較常見的搭配。

數據位置與安全

主要存儲路徑(均在 ~/.dsh/storages/dsh-shared-brain/ 下,跨 profile 共用):

  • memory.json —— 共享記憶庫
  • modules.json —— 模塊配置與能力開關
  • persona.json —— 人設庫(含按會話指定)
  • emoji/ —— 默認表情包目錄
  • sync-token.json —— 跨機同步令牌(權限 0600)

插件還會在 ~/.hindsight/coding-agent.json 中固定 Hindsight bank 配置。記憶庫設計上不存憑據:入庫前對 PAT、API key、密碼等脫敏爲 [已脫敏]。

適用場景與注意

適合:需要多會話、多插件入口統一人設與長期/短期記憶;希望硬約束(底線)與可過期事實分開;需要表情包目錄自動同步、或定時讓 agent 在活躍會話裏真正發起 followup 的場景。

注意:

  • 插件以當前 DSH 進程權限運行,安裝前請自行查看 源碼 與 MIT 許可證,評估是否滿足你的環境策略。
  • 社區目錄 SkillHub 與 DeepSeek / 幻方無官方從屬關係;DSH 生態遵循「一切皆插件」,本插件爲社區維護(SkillHub 頁星標數爲 0,以目錄頁爲準)。
  • 自動互動會喚醒會話並消耗模型調用;網絡開關打開後行爲取決於宿主與其它插件的實際能力,請結合自己的合規要求使用。

結尾

dsh-shared-brain 把「一個大腦、七個模塊」落到 DSH:底線釘住、認知與情感按相關召回、本能由頻次養成、聲音與人設常駐,再配合表情包定時加載與可選的 Cursor 側同步。若你正在給 Harness 配長期運行的 agent,可先按上文任一官方安裝方式啓用,在設置頁或 /shared-memory 裏釘住底線、調模塊權重,再觀察跨會話召回是否符合預期。

  • 目錄頁:https://www.skillhub.cn/plugins/youx123/dsh-shared-brain
  • GitHub:https://github.com/youx123/dsh-shared-brain
羽毛球分组比赛记分
小程序二维码

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

小夜