dsh-ldf:在 DSH 中掛載 Local Decision Framework

前言

智能體在回答裏常會給出帶有不確定性的論斷。若要在本地做「主張校驗」、留存收據(receipt),並複用 OpenAI 兼容的 chat-completions 端點作評判,通常需要自行拼裝 MCP 服務、配置與提示詞。DeepSeek Harness(DSH)採用「一切皆插件」的擴展方式;社區目錄站點獨立於 DeepSeek / 幻方,用於發現和分發插件,並非官方應用商店。

下面介紹維護者 phillui-37 發佈的 dsh-ldf:將上游 Local Decision Framework(LDF)以 DSH 宿主插件形式接入,在啓用後註冊指引與宿主工具,並通過 DSH 原生 MCP 客戶端維持 Python 服務端可用。

這是什麼

dsh-ldf(GitHub:phillui-37/dsh-ldf)是 Local Decision Framework (LDF) 的 DSH 宿主插件。上游實現以 Git submodule 固定在倉庫 upstream/;所有 DSH 適配代碼在 src/,不復制或改寫上游源文件。

運行要求(見倉庫 README 與 package.json):

  • DSH:>=0.2 <0.3(MVP 在本地 DSH SDK 0.2.2-alpha.2 上驗證)
  • Node.js:>=22
  • Python:>=3.10,且已安裝上游 mcp 依賴

插件版本當前爲 0.1.0,許可證 MIT。

核心功能

工作方式概覽

插件啓用後:

  1. 註冊 guidance(模型指引)與 宿主工具。
  2. DSH 原生 MCP 客戶端保持 Python MCP 服務(stdio)可用。
  3. 主張校驗、模型發現、本地模型配置 僅在對應工具被調用時執行;模型配置須在用戶明確批准 provider、model、format 之後纔會繼續。
  4. 插件 不會 在後臺自動輪詢校驗主張。

評判流量路徑簡述:DSH 宿主 → dsh-ldf(提示與宿主工具)→ 原生 MCP 客戶端 → 固定的 Python MCP 服務 → 配置的 chat-completions 端點;本地收據寫入本機存儲。另有 Node 側的本地模型工具可對接本機 Ollama 或 LM Studio,經批准後可更新 DSH 設置並替換 MCP 子進程連接。

MCP 工具(上游)

默認 MCP 命名空間爲 ldf(可由 serverName 修改),工具對外前綴一般爲 mcp__ldf__,包括:

工具 作用(摘要)
ldf_check_claim 校驗單個主張
ldf_check_claims 批量校驗
ldf_summarize_output 歸納輸出
ldf_fetch_evidence 獲取證據

證據語義、裁決類型等細節以上游 upstream/README.md 爲準。

宿主側擴展工具

除上游 MCP 工具外,插件在啓用時還提供:

  • ldf_discover_models:按需盤點本機運行時/模型與相關 CLI(含對 127.0.0.1:11434 的 Ollama、127.0.0.1:1234 的 LM Studio 等檢查,README 中另有截斷說明)。
  • ldf_setup_local_model:在用戶確認(confirmed: true)後配置本機運行時、下載或加載模型;通過 /v1/models 可見性驗證後更新 baseUrl 與 model,並重啓 MCP 連接。

設置與持久化

各字段可在 DSH Settings 中編輯,保存後會序列化子 fiber 更新、釋放舊 MCP 連接與 prompt 區段並啓動替換;禁用插件會移除工具與指引。正在進行的調用可能被設置變更打斷。

常用字段(默認值見 README 表格):

  • python:解釋器路徑,建議使用虛擬環境的絕對路徑。
  • baseUrl / model:評判 API;默認指向本機 Ollama http://127.0.0.1:11434/v1 與 qwen3:8b(需自行準備模型或使用下方 setup 工具)。
  • apiKeyFile:託管服務商可選,指向 UTF-8 密鑰文件路徑,密鑰不寫入設置表單。
  • outputMode:json_schema、json_object 或 plain。
  • prefix / suffix:可編輯的多行模型指引,默認 prefix 建議代理對重大不確定主張使用穩定 evidence ID 做校驗(不強制自動調工具)。
  • followUpstreamSkill:爲 true 時嘗試在 ~/.agents/skills 等路徑加載匹配的 ldf-check-claim skill 以替換插件內全部 LDF 提示文本。

LDF 上游行爲仍會寫入收據;capture / captureResponse 可保留證據或原始響應,需結合 dataDir 與保留策略使用。

設置界面

src/client.js 在 DSH 插件設置槽位提供 Local Decision Framework (ldf) 配置表單,不依賴可選的宿主 UI primitives 包。

安裝與啓用

官方 README 給出的準備步驟(含 submodule 與 Python 虛擬環境)如下。安裝方式爲 通過 DSH 插件管理器將該本地目錄作爲 bundle 安裝,而非本文臆造的一條式遠程 add 命令。

git clone --recurse-submodules https://github.com/phillui-37/dsh-ldf.git dsh-ldf
cd dsh-ldf
# For an existing checkout:
git submodule update --init --recursive
python3 -m venv .venv
.venv/bin/python -m pip install ./upstream
npm install

隨後:

  1. 在 DSH 中用插件管理器安裝該目錄 bundle;宿主須滿足 package.json 中的 peer 依賴(如 @deepseek-ai/dsh-mcp-client、@deepseek-ai/dsh-tools 等)。
  2. 打開 DSH Settings 中生成的 Local Decision Framework 表單,將 python 設爲 .venv/bin/python 的絕對路徑。插件以 PYTHONPATH 指向上游 submodule 的 src,始終運行固定 checkout,而非任意全局 LDF 版本。
  3. 配置 baseUrl 與 model。LDF 會在 base URL 後追加 /chat/completions;配置路徑建議使用絕對路徑。

典型用法

主張校驗流程(概念)

當代理或用戶觸發 claim 相關 MCP 工具時:

  1. 若未提供證據,上游邏輯 本地棄權(abstain),不調用提供商。
  2. 若提供證據,則請求已配置的 /chat/completions,校驗裁決與引用後 寫入本地 receipt,再返回工具結果。

這與「後臺持續自動校驗」不同:無工具請求時服務處於等待,不做 claim 檢查。

本地評判端點

默認以本機 Ollama 爲評判端點。若尚未部署 qwen3:8b,可先調用 ldf_discover_models 瞭解本機現狀,再在用戶明確批准後使用 ldf_setup_local_model 完成拉取與驗證。

可選上游 Skill 指引

若已在常用 skills 目錄安裝與 ldf-check-claim 匹配的 SKILL.md,可將 followUpstreamSkill 設爲 true,由 skill 替換插件內置的 prefix/suffix 等指引文本;找不到可用文件時保留當前指引並記錄警告。

適用場景與注意

適合:

  • 已在或計劃使用 DSH 0.2.x,並希望在同一宿主內集成 LDF 的 MCP 工具與收據能力。
  • 需要用 OpenAI 兼容 API(本機 Ollama/LM Studio 或帶 apiKeyFile 的託管端點)作爲「評判模型」的團隊或個人開發者。

務必注意:

  1. 插件以 當前 DSH 進程權限 運行;安裝前請閱讀源碼與 MIT 許可證,並理解 MCP 子進程、本機 loopback 與密鑰文件路徑的權限含義。
  2. README 明確:不要 將缺少解釋器或啓動失敗僞裝爲成功的 judge 調用;啓動失敗由 DSH 記錄並可重連。
  3. 社區目錄頁(SkillHub)與 GitHub 倉庫由維護者 phillui-37 發佈;星標與簡介以各站點當時展示爲準,本文不羅列未在抓取資料中出現的運營數據。

結尾

dsh-ldf 把 Local Decision Framework 的 Python MCP 服務與 DSH 的設置、工具、指引槽位綁在一起,並補充本機模型發現與配置工具,便於在可控環境下對主張做證據驅動的校驗與留痕。

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

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

小夜