dsh-deterministic-tools:確定性、離線、有界的本地工具箱

前言

在 DeepSeek Harness (DSH) 生態中,智能體常需要處理格式校驗、文本統計、編碼轉換等任務。目前通用的做法是讓模型調用 shell(如 PowerShell 或 Bash)來執行 pwsh 或 jq,但這在 Windows 環境下容易受編碼、引號和版本差異影響,且不可復現。

下面介紹 dsh-deterministic-tools。這是一個本地工具箱插件,向模型註冊了 29 個可復現的格式與數據處理工具。它不依賴網絡,不消耗憑據,每次調用都返回結構化的回執,解決了 Agent 在處理結構化數據時的不確定性和邊界問題。

安裝與啓用

安裝插件需要使用官方 CLI 命令。請確保 DeepSeek Harness 進程已安裝且配置了 web profile。

dsh plugin --profile web add dsh-deterministic-tools

安裝完成後,需要重啓應用。因爲插件列表是在啓動時加載的。

注意:不要將此插件與單獨安裝的組件混用,否則會重複註冊同名工具。

核心功能

該插件提供了以下幾類工具,均以 _ 開頭,便於識別:

  • 格式與校驗:_format(格式化)、_minify(壓縮)、_validate(校驗)、_query(查詢)、_diff(差異)。
  • 文本處理:text_stats(文本統計)、lines_process(行處理)、case_convert(大小寫轉換)、text_diff、regex_find、regex_replace。
  • 數據轉換:yaml_to_、_to_yaml、csv_to_、_to_csv。
  • 編碼與檢查:base64_encode、base64_decode、hex_encode、hex_decode、url_encode、url_decode、url_inspect、hash_text、unicode_inspect、number_base、color_convert、cidr_inspect、jwt_inspect、timestamp_convert。

使用示例

模型在對話中可以通過自然語言或工具調用指令來使用這些功能。

校驗 JSON 語法
當指令要求校驗 JSON 並精確到行列時,模型會調用 _validate。例如,輸入 {"a":1,},工具會返回驗證結果和精確的錯誤位置:

{
  "valid": false,
  "error": {
    "message": "expected a double-quoted property name but found '}'",
    "line": 1,
    "column": 9,
    "position": 8
  },
  "top_level_type": "unknown"
}

格式化輸出
使用 _format 時,可以指定縮進和排序方式。例如設置 indent: 2 和 sort_keys: true,模型可以獲取格式化後的 JSON。

統一回執格式
每個工具的返回值都遵循統一規範,包含載荷和元數據:

{
  "result": "...",
  "meta": {
    "bytesIn": 15,
    "bytesOut": 45,
    "truncated": false,
    "notes": []
  }
}

設計與約束

  • 純本地運行:插件在本地執行,零網絡請求,零憑據消耗。
  • 有界性:結構化輸入有硬上限,超出直接拒絕(非截斷);文本輸出有軟上限,超出會標記截斷。
  • 確定性:不依賴隨機數,不依賴系統時鐘。明確聲明不驗籤。
  • 驗證狀態:通過 tsc --noEmit 檢查,無類型錯誤;包含 35 個測試用例。

總結

dsh-deterministic-tools 通過將常用的格式化、編碼和檢查操作轉化爲確定性工具,降低了 Agent 處理結構化數據的門檻。它適合需要在本地安全、快速地處理數據,且對結果的可復現性有較高要求的場景。

更多細節和源碼可參考:GitHub

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

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

小夜