dsh-token-saver:DeepSeek Harness 插件

前言

DeepSeek 類 agent 在長任務中,80% 以上的 prompt tokens 消耗在兩類內容上:一是被一次性讀取的大文件(如 1MB 的遷移 SQL),二是被反覆搜索並回填的 grep 結果。這導致上下文窗口很快被填滿,影響推理質量。

dsh-token-saver 是一個爲 DeepSeek Harness (dsh) 設計的 Cordis 插件。由開發者 Shaw529 維護,採用 MIT 許可證。它的核心目標是在不破壞任務效果的前提下,通過掛載擴展點實現激進且無損的 token 節省。

核心功能

插件通過三個擴展點實現 token 優化:

  • tools/post-execute:進行無損頭尾裁剪和 grep 摺疊。默認保留頭尾部分,中間用 metadata 替換,模型仍能感知內容被截斷。
  • agent/pre-step:委託 dsh 官方的 ctx.compaction 機制,在壓力閾值觸發時自動進行上下文壓縮。
  • 可選功能:支持 prompt-cache 段穩定排序,提升緩存命中率。

安裝

確保已安裝 DeepSeek Harness。在 harness home 目錄下執行以下命令安裝:

dsh plugin --profile web install dsh-token-saver

鎖定版本安裝:

dsh plugin --profile web install dsh-token-saver@0.1.0

前置條件:需要 Node.js 版本 >= 22.19.0。

配置

在 cordis.yml 中添加插件配置。以下是默認配置示例:

- name: 'dsh-token-saver'
  config:
    mode: balanced
    headBytes: 16384
    tailBytes: 8192
    grepMaxMatches: 30
    grepContextLines: 2
    grepHeadBytes: 8192
    grepTailBytes: 4096
    pressureThreshold: 0.5
    compactPressureThreshold: 0.5
    llmSummaryEnabled: false
    llmSummaryMaxInputTokens: 16000
    replaceBasicCompaction: false
    includeToolNames: []
    excludeToolNames: ['interaction.ask_user', 'interaction.confirm']
    cacheStableSections: ['agent-identity', 'user-instructions', 'tool-list']
    telemetry:
      onFold: |
        (event) => logger.info({ kind: 'fold', ...event })
      onCompact: |
        (event) => metrics.histogram('tokens.saved', event.savedTokens, ['engine', event.engine])

關鍵配置項說明

  • mode:模式選擇器,默認爲 conservative。
  • headBytes / tailBytes:工具結果保留的頭尾字節數。
  • llmSummaryEnabled:啓用 LLM 摘要引擎(推薦在 balanced 或 aggressive 模式下開啓)。
  • excludeToolNames:黑名單,防止對某些交互類工具進行截斷。

模式與效果

插件提供四種模式,通過 mode 字段配置:

模式 頭尾裁剪 grep 摺疊 觸發 ctx.compaction 替換 dsh-compaction-basic LLM-summary
off ❌ ❌ ❌ ❌ ❌
conservative (默認) ✅ ✅ ❌ ❌ 可選
balanced ✅ ✅ ✅ ❌ 推薦
aggressive ✅ ✅ ✅ ✅ 推薦

保守模式:完全不替換 dsh 原生鏈路,僅對工具結果做無損頭尾摺疊,確保任務效果零損失。

在覆蓋 8 個真實場景的基準測試中(基於 4 chars/token 規則估算),插件表現如下:

  • 保守模式:平均節省約 97.6% 的 tokens。
  • 平衡模式:平均節省約 98.5% 的 tokens。

節省率最高的場景是混合會話(12 個工具),原始 tokens 約 200 萬,經平衡模式壓縮後降至約 3.5 萬。

注意事項

  • 兼容性:保守模式不會修改 dsh 原生鏈路,適合對穩定性要求極高的場景。
  • 運行環境:必須在 Node.js >= 22.19.0 環境下運行。
  • 生態背景:DSH 理念是“一切皆插件”,本插件爲社區項目,與 DeepSeek 官方無官方從屬關係。

結語

dsh-token-saver 通過在工具執行後和執行前介入,對工具輸出結果進行智能壓縮和摺疊,能夠顯著降低長任務的 token 消耗。對於需要處理大文件或大量檢索結果的 agent 任務,這是一個值得嘗試的優化方案。

項目地址:GitHub

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

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

小夜