DeepSeek Harness (DSH) 永久插件:dsh-light-tool (DLT)

前言

DeepSeek Harness (DSH) 的設計理念是“一切皆插件”。在使用過程中,開發者通常面臨三個具體痛點:無法直觀看到每輪對話的金額消耗、需要手動編寫腳本才能處理文檔或管理複雜的編譯運行環境。dsh-light-tool (DLT) 是一個 DSH 永久插件,由 LLYlab 維護。它通過六個核心模塊解決上述問題:提供人民幣成本追蹤與賬戶餘額顯示、提供 PDF/Word/Excel 直接讀寫與預覽工具、管理編譯運行環境表與直接執行程序。

核心功能

DLT 包含以下六個主要模塊,每個模塊均可獨立開關:

  1. 人民幣成本:在對話結束後的用量膠囊旁邊顯示本輪花費,支持點擊查看 token 明細與會話累計。
  2. 賬戶餘額:右下角常駐顯示 DeepSeek 賬戶餘額,支持拖動與點擊強制刷新。
  3. 文檔工具:讓模型直接讀寫 PDF / Word / Excel / CSV,無需額外腳本;支持 PDF 往返鏈(轉 Word 改後轉回)。
  4. 右欄預覽:點擊工作區文檔可直接在右欄預覽,PDF 由 DSH 產品自帶渲染器負責。
  5. 環境表:管理工具鏈路徑(VS 安裝根 / Python / Office / Edge),支持自動探測與系統提示注入,避免模型自行探測。
  6. 直接執行:提供 dlt_run 與 dlt_build 工具,支持在指定環境直接運行程序或編譯工程。

安裝與啓用

DLT 在 package.json 中聲明瞭 dsh.bundle.patch,安裝後會自動合併到當前 profile 的 bundle 層,無需手動修改配置文件。

推薦使用 npm 安裝:

dsh plugin --profile web add dsh-light-tool

安裝完成後,重啓 DSH,插件將出現在「設置 → 插件清單」中。

運行期開關

DLT 提供了一個運行期開關管理器,位於設置頁面。

  • 即時生效:在設置頁修改總開關或分模塊開關,無需重啓,插件會立即卸載/加載對應的模型工具(如 dlt_run 等)與界面組件。
  • 持久化:開關狀態會寫入 <DSH_HOME>/dlt/switch.json(默認路徑),重啓後保持。若文件損壞,將回退到配置文件的默認值。
  • 配置優先級:cordis.patch.yml 中的 config 僅提供首次運行的默認值;一旦在設置頁修改過開關,後續以 switch.json 爲準。

典型用法

DLT 提供了以下模型工具函數:

  • dlt_run(env, program, args, cwd, timeoutMs, stdin)
    在指定環境執行程序,返回 stdout/stderr 和退出碼。例如 env=msvc-x64 會自動注入 vcvarsall,使 cl 和 link 命令可用。

  • dlt_build(target?, configuration?, platform?, rebuild?)
    調用 MSBuild 編譯工程,支持指定目標、配置、平臺及重建選項。

  • dlt_doc_read(path, mode?, pages?, sheets?, range?, formulas?, maxRows?)
    讀取文檔內容。支持 PDF(逐頁文本)、Word(段落+表格)、Excel(行列數據)及 CSV。

  • dlt_doc_write(path, action?, ops?, spec?, out?, chain?, replacements?)
    寫入或修改文檔。寫操作會自動在同目錄備份爲 .bak-YYYYmmdd-HHMMSS.<ext>。支持 PDF 往返鏈(chain=word)及各種文檔格式轉換。

  • dlt_doc_convert(path, to, ...)
    格式轉換。例如 to=docx|html(從 PDF),to=pdf(從 Word/Excel),to=png(PDF 某頁出圖)。

依賴與系統要求

DLT 依賴本機已安裝的軟件與 Python 環境:

  • Python:必須安裝 Python 3.12。
  • Python 庫:需安裝 pymupdf、pypdf、python-docx、openpyxl、pdf2docx、pywin32。
  • Office 與 Edge:文檔導出與 HTML→PDF 轉換依賴本機已安裝的 Office COM 組件與 Microsoft Edge。

配置項

DLT 的配置通過 cordis.patch.yml 中的 config 字段進行整塊替換(非深合併)。主要配置項包括:

  • 開關:enabled(總開關)、cost、balance、documents、preview、environment、run(各模塊默認值)。
  • 環境:pythonEnv(解釋器路徑)、environments(環境表路徑覆蓋)。
  • 緩存:cacheDir(定價與餘額快照目錄)、balanceCacheMs(餘額緩存時長)。
  • 執行:docTimeoutMs、runTimeoutMs、maxOutputBytes(輸出上限)、defaultSolution、defaultConfiguration、defaultPlatform。

結尾

DLT 是一個功能完備的 DSH 永久插件,覆蓋了成本監控、文檔處理與開發環境管理的核心需求。通過運行期開關與配置覆蓋機制,它能夠靈活適配不同的工作流。更多實現細節與測試用例可參考其 GitHub 倉庫。

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

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

小夜