dsh-plugin-magic-context:爲 DeepSeek Harness 提供可逆上下文回收與記憶能力的插件

前言

DeepSeek Harness(DSH)採用「一切皆插件」的架構,但現有的上下文管理往往以被動消費爲主:工具結果一旦進入緩存前綴,就難以在不打斷當前會話的情況下回滾或壓縮。開發者希望在 DSH 的事件與 surface 體系上接入一套更可控的上下文管理能力:舊結果可以打標、回收,需要時恢復;被消化的歷史可以帶外摘要;重要的知識可以沉澱爲項目記憶,跨會話複用。dsh-plugin-magic-context 就是爲此目的設計的適配插件,它把 Magic Context 的核心機制移植到 DSH 的 desktop profile 中,提供可逆回收、帶外 historian、m[0]/m[1] 基線以及基於 SQLite 的項目記憶。

它是什麼

dsh-plugin-magic-context 是一個 DSH 插件,由維護者 wukai(wk544863858)維護,當前版本 0.9.0,基於上游 magic-context v0.46.0(commit 651c105a9)構建。它以 DSH bundle 形態安裝進 desktop profile,在 DSH 的插件頁面可見,並在運行中的應用裏即時生效。插件提供可逆上下文回收、帶外 historian、m[0]/m[1] 基線、本地向量檢索的項目記憶,以及與 DSH UI 的集成(設置卡片、遙測徽標、會話流提示)。數據庫位於插件數據目錄 ~/.local/share/cortexkit/magic-context-dsh-poc/ 下的 memories.db,與上游 MC 數據庫在 2026-10-13 起徹底分家。

核心能力

插件主要包含以下幾項能力:

可逆上下文回收

工具結果可以打標,進入回收隊列後,在 execute 帶內替換爲佔位符,需要時再恢復。具體做法是給工具結果打 §N§ 標籤(admission 刻意不打標);ctx_reduce 只入隊,落地發生在 execute 帶內(content-only 替換爲 [dropped §N§] 佔位符,引用原事件);ctx_expand 恢復原文。這種方式絕不自發打斷緩存前綴。

壓力調度

插件持續記錄 usage(含 cache 讀寫),通過公式計算壓力:壓力 = 未緩存輸入 + cache 讀 + cache 寫 ÷ contextWindow。在 execute/defer 決策時,使用閾值(默認 65%)、緩存 TTL(5 分鐘)和強制帶閾值(85%)進行調度。當觸發 CONTEXT_WINDOW_EXCEEDED 緊急回收時,會執行回收並重試。插件還提供 reduce-guidance 分級引導(60k/25k 地板、20/40/60% 階梯)。

帶外 historian

插件維護一個帶外摘要機制:一次性 LLM 調用重放真實前綴(保 KV cache),然後生成四層摘要(p1–p4)+ importance + facts/events,寫入 store 而不觸碰線纜。在 execute 帶內,以 [compacted §C<n>§] 範圍替換的形式發佈,可恢復。命令 /ctx-recomp 可以原地重做已壓縮歷史。

m[0]/m[1] 基線

插件合成 notice 節點承載凍結基線 + 增量車道(<new-memories> / <memory-updates> / <user-profile>)。每類增量有獨立水位(maxMemoryId、mutation 水位、profile 水位 + digest),新記憶永不重建緩存前綴;內容未變則零變更。

項目記憶與本地向量檢索

插件使用自有 SQLite 語料庫 memories.db,身份自動推導(git:<root-sha> / dir:<hash>,未配置用會話 cwd,域共享從適配器域表解析)。記憶注入 m[0] + ctx_memory 檢索與讀寫維護,historian facts 自動提升,FTS 0.7/0.3 融合向量檢索。向量檢索使用內置 onnxruntime-web WASM 後端(27 MB,MIT,Microsoft),無原生編譯、無額外依賴。首次 embed() 按釘死的 revision+sha256 下載 MiniLM(~90 MB,雙鏡像 huggingface.co → hf-mirror.com),任何哈希不符棄塊換下一鏡像,緩存在插件數據目錄 models/。檢索候選內嵌補分 + 維護 tick 向量回填;任何失敗時 fail-open 降級 FTS,journal 有可讀 warn。

全局域與用戶畫像

機器/組織域:入隊可自動化(維護 tick autoStage、LLM 域分類),發佈永遠是人(ctx_memory review_global 審批卡、/ctx-global approve)。用戶畫像 render / collect / review 三開關分離——讀默認開、寫共享庫的半邊默認關。

維護 tick

插件每 30 分鐘執行一次維護 tick:TTL 歸檔(走 archive 契約動作)→ 批量 LLM verify(keep / update / archive)→ 向量回填 → 全域候選入隊。

壓縮接縫

插件通過 registerCompactionEngine 接管 ctx.compaction 協議(真實 compaction/start|summary|replace|end),管理通道永不寫 checkpoint。首裝保守關閉,不碰宿主 compaction-basic 引擎。要接管壓縮時,需同時禁用 compaction-basic。

界面集成

插件提供設置卡片(volatile 字段保存即生效)、shell.overlay 遙測徽標 + 膠囊面板(實時指標 + 操作記錄)、session-notice 會話流提示,支持中英雙語即時切換。

安裝與啓用

插件以 DSH bundle 形態安裝,需要 Node ≥ 22.19 和 DSH 0.2.x(已驗證 0.2.1-rc.1)。安裝步驟如下:

npm install
npm run build
dsh plugin --profile desktop add https://github.com/wk544863858/dsh-plugin-magic-context

構建會生成 lib/ 目錄下的 ESM 多文件,以及瀏覽器側拷貝爲 lib/client.js。Desktop 帶 HMR,安裝後立即熱生效,無需重啓,運行中的會話即刻開始打標籤。

卸載/停用:在 GUI 插件頁停用該 bundle(寫 profile patch 的 disabled),或使用命令 dsh plugin --profile desktop remove dsh-plugin-magic-context。

配置

插件提供兩種配置途徑:GUI 設置卡片和手寫 profile 覆蓋行。GUI 卡片暴露 policy.*(含 historian 生成上限/上限抬升/超時)、historianEnabled、registerCompactionEngine、journal.* 等 volatile 字段,保存即生效。手寫覆蓋時,config 是整體替換包內 patch 的 config,不是深合併;只寫 memory: 會把 registerCompactionEngine: false 抹掉,必須一併保留。

bundle 自帶配置只有一行:registerCompactionEngine: false(保守首裝——只做回收與 historian,宿主壓縮引擎保持原位)。要接管壓縮時,需要啓用並禁用宿主引擎:

- id: magic-context-dsh
  name: 'dsh-plugin-magic-context'
  config:
    registerCompactionEngine: true
    memory: {}            # 空對象即啓用記憶車道:身份/工作區/共享類別全部自動解析
- id: compaction-basic
  name: '@deepseek-ai/dsh-compaction-basic'
  disabled: true          # 二者互斥,接管時必須同時禁用宿主引擎

適用場景與注意

插件適合需要在 DSH 中進行上下文管理與記憶沉澱的開發者與團隊。它以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。插件與上游 MC 數據庫已分家,無共享無兼容義務;向量檢索使用內置 WASM 後端,不依賴原生編譯模塊。插件默認保守,不接管宿主 compaction 引擎,需要時可手動接管。

結語

dsh-plugin-magic-context 把 Magic Context 的可控上下文管理與記憶能力接入了 DeepSeek Harness,提供了可逆回收、帶外 historian、m[0]/m[1] 基線以及本地向量檢索的項目記憶,並完成了與 DSH UI 的集成。如果你希望在 DSH 中更精細地管理上下文與知識,可以參考官方目錄頁與 GitHub 倉庫瞭解更多細節。

目錄頁

https://www.skillhub.cn/plugins/wk544863858/dsh-plugin-magic-context

GitHub

https://github.com/wk544863858/dsh-plugin-magic-context

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

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

小夜