前言¶
在 DSH 中處理多輪任務、項目協作或長週期工作時,常見的問題是會話結束後上下文容易丟失:用戶偏好、項目約定、已確認決策、踩坑經驗沒有穩定的跨會話入口。dsh-biomemory 提供一套跨會話記憶能力,把記憶從單條日誌擴展爲分層存儲、審批門控、語義檢索、記憶代謝和審計快照的組合流程。
DSH 社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係。下面介紹 dsh-biomemory 的定位、核心能力、安裝方式和典型用法。
這是什麼¶
dsh-biomemory 是 DeepSeek Harness(DSH)的跨會話生物仿生記憶插件。它提供分層記憶、審批門控、記憶代謝、透明快照注入,以及基於 SQLite 與本地嵌入模型的記憶檢索。
已覈實的基本信息如下:
- 插件名:
dsh-biomemory - 許可證:
MIT - 運行環境:
engines.node: >=22.19.0 - 倉庫地址:
https://github.com/KLRSL/dsh-biomemory - 社區目錄頁:
https://www.skillhub.cn/plugins/KLRSL/dsh-biomemory - 當前版本信息:
0.5.2
插件依賴與 DSH 相關包的兼容關係如下:
{
"engines": {
"node": ">=22.19.0"
},
"peerDependencies": {
"@deepseek-ai/cordis": "^4.0.1",
"@deepseek-ai/dsh-session": ">=0.1.0-rc.5",
"@deepseek-ai/dsh-tools": ">=0.1.0-rc.5"
},
"dependencies": {
"@huggingface/transformers": "^4.2.0"
}
}
在 web 平臺啓用時,DSH client 會注入以下包:
@deepseek-ai/dsh-client-runtime
@deepseek-ai/dsh-client-ui-settings
@deepseek-ai/dsh-client-ui-slots
核心能力¶
分層記憶佈局¶
dsh-biomemory 使用 ~/.dsh/memory/ 下的分層結構保存不同優先級的記憶。已覈實的佈局包括:
~/.dsh/memory/
├── preferences.md
├── hot/
├── projects/<name>/
├── longterm/
├── archive/
├── backups/
├── audit.log
└── audit.jsonl
對應能力包括:
- 用戶與項目偏好:
preferences.md - 熱點知識與行爲:
hot/ - 項目上下文:
projects/<name>/ - 長期記憶:
longterm/ - 代謝歸檔:
archive/ - 備份目錄:
backups/ - 審計日誌:
audit.log與audit.jsonl
在 SQLite 數據層中,數據庫文件位於:
~/.dsh/biomemory/biomemory.db
本地嵌入模型位於:
~/.dsh/models/
凍結快照注入¶
會話啓動時,dsh-biomemory 會注入凍結快照。已覈實的優先級邏輯是:
1、置頂記憶(pinned memories)和用戶偏好優先。
2、隨後注入近期知識或行爲記憶。
這樣可以減少模型在每次會話中反覆猜測用戶偏好的成本。
審批門控¶
重要記憶會經過審批門控。已覈實的策略包括:
- 重要記憶通常需要人工審批。
- 普通事實可以自動保存。
- 審批通道不可用時,行爲由
approvalFallback控制。 approvalFallback默認爲auto。- 可切換爲
deny,以保持 fail-closed 行爲。
如果審批不可用時使用默認 auto,重要記憶可能按降級策略自動保存,並記錄降級審計。
記憶工具與命令¶
插件提供 memory 工具,支持以下動作:
add / query / update / remove / list / pin / unpin / dream / audit
也提供 /memory 命令,支持:
list / query / add / edit / remove / pin / unpin / dream / audit
跨會話回憶可以使用 memory_recall 工具,適合“你記得之前怎麼約定的嗎”這類場景。
去重使用內容指紋(content fingerprint),避免重複條目。
SQLite 數據層與檢索¶
dsh-biomemory 的 SQLite 數據層使用 Node 內置 node:sqlite,並啓用 WAL 模式。已覈實的信息是:該 SQLite 數據層不引入外部運行時依賴。
本地嵌入模型爲:
bge-small-zh-v1.5
該模型爲 512 維量化 ONNX 模型,通過 transformers.js 調用。
已覈實的檢索模式包括:
exact keyword
semantic vector
hybrid RRF fusion
如果嵌入模型不可用,檢索會退化爲 keyword-only;記憶功能本身不受影響。
Markdown 自動遷移¶
插件支持從既有 Markdown 記憶自動遷移到 SQLite。已覈實的遷移行爲是:
- 首次啓動時一次性導入既有
~/.dsh/memory條目。 - Markdown 保留爲只讀備份。
記憶代謝(Dream)¶
記憶代謝通過 /memory dream 或 memory action=dream 觸發。已覈實的代謝能力包括:
- 半衰期衰減
- 引用鞏固
- 衝突浮出
- 冷歸檔
代謝過程支持斷點續跑(checkpointing),可在中斷後從最後檢查點繼續。
實際運行前,插件會自動備份整個記憶存儲到 backups/<timestamp>/。啓動自檢如果發現主記憶文件損壞,會從最新備份自動恢復。回滾事件會記錄爲 ROLLBACK 審計事件。
審計與回滾¶
審計日誌使用結構化 JSON Lines。已覈實的審計能力包括:
- 按動作聚合
- 按日期聚合
- 按條目聚合
- 記錄回滾事件
- 記錄恢復事件
單條回滾支持以下方式:
memory action=restore fp="..."
/memory undo <fp>
POST /entries/restore
衝突浮出與深度反思¶
當行爲記憶與用戶偏好衝突時,插件會把衝突條目置頂展示,而不是靜默處理。已覈實的展示位置包括:
memory action=list- Knowledge tab
- 凍結會話快照
在 Reflect 視圖中,衝突條目支持:
- Edit
- Delete
- Undo
深度反思通過以下入口觸發:
/memory reflect
memory action=reflect
已覈實的本地反思能力包括:
- 本地主題聚類
- 趨勢統計
- 衝突提醒
- 遺忘候選項
Knowledge tab¶
設置頁提供 Knowledge tab。已覈實的操作包括:
- 搜索
- 層級過濾
- 按條目查看權重、命中次數、時間、pin 狀態
- 一鍵 pin / unpin
- 內聯編輯
- 安全刪除
安裝與啓用¶
先確認 DSH 環境滿足以下要求:
engines.node: >=22.19.0
peerDependencies:
@deepseek-ai/cordis: ^4.0.1
@deepseek-ai/dsh-session: >=0.1.0-rc.5
@deepseek-ai/dsh-tools: >=0.1.0-rc.5
然後安裝插件。已覈實的安裝命令如下:
dsh plugin add dsh-biomemory
如果使用本地鏈接方式:
pnpm add link:./dsh-biomemory
安裝後,需要把 dsh-biomemory 添加到 profile 的 dsh.profile.bundles 中。
典型用法¶
編輯記憶條目¶
工具方式:
memory action=update fp="..." text="..."
命令方式:
/memory edit <fp> <new text>
這兩種方式都用於修改已有記憶條目的文本。已覈實的行爲是:metadata(pin / weight / layer)會被保留,舊向量會被清除,並記錄 UPDATE 審計事件;重複內容會被拒絕。
回滾單條記憶¶
如果刪除後需要恢復單條記憶,可以使用:
memory action=restore fp="..."
或:
/memory undo <fp>
API 方式爲:
POST /entries/restore
恢復來源是最新的備份數據庫,並會記錄 RESTORE 審計事件。
觸發記憶代謝¶
直接運行:
/memory dream
僅預覽、不修改:
/memory dream --dry-run
通過 memory 工具執行 dry-run:
memory action=dream dryRun=true
觸發深度反思¶
命令方式:
/memory reflect
工具方式:
memory action=reflect
適用場景與注意¶
dsh-biomemory 適合以下 DSH 使用場景:
- 需要跨會話保留用戶偏好和項目上下文
- 需要對重要記憶設置審批或降級策略
- 需要結構化審計、備份與回滾
- 需要本地語義檢索與關鍵詞檢索結合
- 需要對記憶進行衰減、鞏固、歸檔和衝突處理
使用前需要注意:
1、插件以當前 DSH 進程權限運行。安裝前應檢查源碼、許可證和依賴關係。
2、審批降級策略默認 auto。如果要求審批通道不可用時保持 fail-closed,可把 approvalFallback 切換爲 deny。
3、嵌入模型不可用時,檢索會退化爲 keyword-only;記憶功能仍可繼續使用。
4、桌面寵物橋接(DSH↔desktop-pet bridge)已被抽離到 dsh-whale-pet-bridge;dsh-biomemory 僅保留 memory save notifications。
5、本文依據已覈實的 README 與 package.json 信息整理;原始 README 在 Knowledge page 後續內容處被截斷,因此部分頁面細節未展開。
相關地址¶
社區目錄:
https://www.skillhub.cn/plugins/KLRSL/dsh-biomemory
GitHub:
https://github.com/KLRSL/dsh-biomemory
dsh-biomemory 的價值在於把跨會話記憶做成可審批、可檢索、可代謝、可審計的插件能力,而不是隻追加一段文本。對於需要在 DSH 中長期保留上下文的開發者來說,它提供了一套相對完整的記憶管理入口。