dsh-codex-context:DeepSeek Harness 的無損檢索上下文管理器

前言

在 DeepSeek Harness (DSH) 的長會話中,默認的 LLM 總結後端會導致窗口耗盡、注意力稀釋,並且有損總結會永久丟失精確的錯誤字符串、命令輸出和代碼簽名。dsh-codex-context 是一個針對這一問題的解決方案,它將默認的後端替換爲一個基於 token 預算的滑動窗口,同時保留持久化工作筆記和冷歷史搜索能力。

核心功能

dsh-codex-context 提供以下能力:

  • 分詞預算滑動窗口:當活動窗口超過配置的 targetActiveTokens 時,引擎向後回溯並遮擋舊節點,直到尾部符合預算。切割會盡量對齊到安全邊界。
  • 零孤兒邊界:利用 Codex 的 normalize 不變量,確保工具調用與其結果不被分離。
  • 模型無關檢查點:在常規窗口操作中寫入模板檢查點而非調用 LLM,節省成本。
  • 緊急降落傘:當壓力超過閾值(默認 0.85)時,通過 LLM 生成結構化摘要;若失敗則降級爲模板檢查點。
  • 工具:
    • update_notes:更新持久化工作筆記,固定在模型請求頂部,不受窗口滑動影響。
    • search_history:在完整會話日誌上進行正則/關鍵詞搜索,支持冷歷史檢索。

安裝與啓用

該插件是一個 dsh bundle,通過 cordis.patch.yml 禁用默認的 compaction-basic 行,並掛載 codex-context 行。

本地安裝:

dsh plugin --profile demo add /path/to/dsh-codex-context
dsh --profile demo --dump-config   # 檢查 base compaction-basic 行是否被禁用,codex-context 行是否已掛載
dsh --profile demo

Git 安裝(推薦):

dsh plugin --profile demo add github:dvaJi/dsh-codex-context#<sha>

需在 pnpm-workspace.yaml 中添加 allowBuilds: dsh-codex-context: true。

打包安裝:

pnpm pack
dsh plugin --profile demo add ./dsh-codex-context-0.1.2.tgz

僅添加工具層:
若需保留原有總結後端並僅添加筆記和搜索工具:

- insert:
    - id: codex-context-tools
      name: dsh-codex-context/tools

注意事項

  1. 工具名稱衝突:不要在同一個上下文中掛載完整的 bundle 條目和 codex-context-tools,兩者的工具名稱會衝突。
  2. 查詢限制:search_history 拒絕空或僅包含空白字符的查詢;拒絕包含嵌套無界量詞(如 (a+)+)的正則模式,以防止災難性回溯。
  3. 權限與來源:插件以當前 DSH 進程權限運行。安裝前應檢查源碼與許可證(MIT)。
  4. 持久化機制:筆記持久化不需要自定義會話事件類型,它依賴於現有的 user/message 源快照和摺疊邏輯。

總結

dsh-codex-context 通過引入 Codex 風格的無損檢索架構,解決了 DSH 在長會話中信息丟失和窗口管理困難的問題。它提供了可靠的冷歷史搜索和固定工作筆記,適合需要處理大量上下文和保留精確歷史記錄的開發場景。

資源:
* GitHub 倉庫:https://github.com/dvaJi/dsh-codex-context
* 生態目錄:https://www.skillhub.cn/plugins/dvaJi/dsh-codex-context

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

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

小夜