dsh-jev-judge:用小型 Jev 裁判分擔編碼智能體的例行判斷

前言

在 DeepSeek Harness(DSH)或其它編碼智能體宿主裏,一次任務往往伴隨大量「小判斷」:工具輸出要不要進上下文、抓取頁裏有沒有面向模型的指令、回合結束聲稱「已完成」時是否真有驗證、用戶是否真的要求執行某條命令。若全部交給主模型,既慢又佔 token;若全部寫成硬規則,又容易在真實輸入上失效。

dsh-jev-judge(倉庫名 jev-judge,npm 包名 dsh-jev-judge)是維護者 HunterXing 提供的判斷內核(judgment kernel):在固定決策點上,用 bounded question 和較小狀態調用小型 Jev 裁判,主模型保留上下文與 token 做需要推理的工作;每次裁決寫入 ledger,便於從真實會話裏評估是否啓用某決策點。插件在 SkillHub 目錄中歸類爲模型推理。

安裝前建議閱讀 README 中的 scope 說明:該層針對的是上下文預算,不參與編譯、緩存或性能優化,只改變模型所見內容;作者在自用機器上 55 天實測後曾卸載(見倉庫 docs/verification.md 的 R10),更適合宿主上下文確實緊張、或輸出以「掃描」爲主(shell 日誌、自省 dump、瀏覽器快照)的場景。

這是什麼

一句話:A judgment kernel for coding agents: routine judgments go to a small Jev judge, and every verdict is recorded in a ledger.

設計思路參考 mu 在 pi 編碼智能體中加載判斷內核的做法;本項目把同一類決策點做成與宿主無關的實現,可在 DSH 插件 bundle、Claude Code / Codex 的 command hooks、OpenCode / Cursor 等通過 MCP 接入的環境運行。當前 npm 版本爲 0.1.4,許可證 MIT,運行需 Node.js >= 20,DSH 版本要求 >=0.2.1-alpha.1 且 <0.3.0-0。

核心功能:決策點與模式

內核在若干命名決策點上提問,每個點都有與「未安裝本包時」等價的確定性 fallback;無裁決或裁判超時、不可達、不確定時 fail open,不阻塞智能體循環。

決策點 問題含義 默認模式
judge.items 對大量條目(日誌行、文件、發現)問一個 yes/no,而不必讀完全部 被調用時開啓
tool.admission 長工具結果裏哪些塊對本任務必要,其餘不進上下文 active
tool.injection 抓取內容裏哪些段落像「給模型的指令」而非讀者材料 active
turn.completion 「已完成」聲稱是否有任何驗證支撐 active
turn.continue 回合是否在已宣佈的下一步前停下,或重複索要已有授權 active
memory.capture 消息是 worth keeping 的糾正,還是下一個任務 active
tool.risk 規則已標記的命令:用戶是否真的要它 shadow

tool.risk 故意從 shadow 起步:其裁決只能放寬策略,需憑你自己 ledger 裏的記錄再改爲 active。

設計約束(摘自 README):裁決不會替智能體決定「是否該問用戶」;只改變模型所見或是否繼續工作;裁判讀摘要與元數據而非大塊正文;API 密鑰只存在於你的私有配置,不會進入日誌、ledger 或錯誤信息。

在 DeepSeek Harness 中安裝與啓用

DSH 側以插件 bundle 形式加載 cordis.patch.yml。

1、按 profile 添加插件(命令來自官方 README):

dsh plugin --profile <profile> add dsh-jev-judge
dsh --profile <profile> --dump-config   # 查看該層是否出現在配置中

2、也可在 Web GUI 的 Settings → Plugins 中,通過 registry 名稱、git 地址或本地路徑安裝。

3、配置 Jev 提供方(私有記錄,格式與 typesafe-ai-jev-skill 一致):

環境變量 JEV_SKILL_CONFIG 默認指向 ~/.config/typesafe-ai-jev-skill.json,示例:

{
  "providerName": "your-provider",
  "baseUrl": "https://api.your-provider.example",
  "model": "jev",
  "apiKeyEnv": "JEV_API_KEY",
  "protocol": "systemone",
  "endpointPath": "v1/systemone",
  "authHeader": "Authorization",
  "authScheme": "Bearer",
  "timeoutSeconds": 30
}

4、內核可選配置位於 ~/.config/jev-judge/kernel.json,例如模式、路由、ledger 路徑:

{
  "modes": { "default": "shadow", "tool.admission": "active" },
  "routes": { "turn.continue": ["jev"] },
  "tiers": ["jev"],
  "ledger": { "path": "~/.config/jev-judge/ledger.ndjson", "recordState": false },
  "options": { "judge.items": { "maxItems": 20 } },
  "timeoutMs": 8000
}

5、安裝後可用 CLI 自檢(不聯網的 verify 只報告契約,不輸出密鑰):

jev-judge verify    # offline; reports the contract, never the key
jev-judge doctor    # what will happen: judges, modes, ledger
jev-judge ledger    # 閱讀 ledger;加 --json 按存儲格式打印

在 DSH 中調整 tool.admission 等選項時,寫入插件行的 config.options,即 profile 的 cordis.patch.yml。例如限定只對部分工具名、超過一定字符才裁剪:

{ "options": { "admission": { "toolNames": ["bash", "mcp__*"], "minChars": 4000 } } }

默認只對「體積非用戶精確指定形狀」的工具輸出做 admission,工具名列表包括 bash、web_fetch、mcp__* 等;read、grep、write 等按智能體請求形狀返回的工具默認整段通過。

其它宿主與 MCP

Claude Code / Codex 可用 settings.json / hooks.json 中的 command hooks;OpenCode、Cursor、Cline 等可掛 MCP 服務器:

claude mcp add jev-judge -- npx -y dsh-jev-judge mcp

各宿主的具體配置與「裁決能做什麼」見倉庫 docs/agents.md。

實測與 ledger

README 引用 docs/verification.md:在 81 行、含兩處失敗的測試日誌上,live provider 每次判 20 條時,81 行壓縮爲 5 行選中,3047 字節中約 191 字節(6.3%) 需要閱讀,耗時約 7.9 s;同一日誌若問題指向修復而非 triage,選中的是斷言與錯誤文本而非摘要行。

ledger 是決策點從 shadow 升到 active 的依據,而非樂觀配置。

適用場景與注意事項

更適合:上下文窗口緊張、工具輸出以日誌/列表/頁面快照爲主、希望用小型模型做高頻二元或選擇類判斷並留痕的團隊或個人。

使用前請知悉:

  • 插件以當前 DSH 進程權限運行;安裝前請自行審閱 GitHub 源碼 與 MIT 許可證。
  • 社區目錄 SkillHub 插件頁 爲獨立生態站點,與 DeepSeek / 幻方無官方從屬關係;DSH 理念是「一切皆插件」,本文介紹的是社區插件而非官方應用商店條目。
  • 無運行時依賴、無構建步驟;本地路徑 dsh plugin add <path> 可直接加載 checkout。開發自測:node --test(README 稱 217 個測試、無網絡)。

結尾

dsh-jev-judge 把編碼智能體循環裏大量例行判斷從主模型拆到小型 Jev 裁判,並用 ledger 記錄每次裁決,在 bounded state 與 fail open 之間取得可測量的折中。若你的痛點主要是上下文被 shell、抓取和 MCP 輸出撐滿,可先 doctor / verify 配好 provider,再以 shadow 觀察 ledger,再按需打開各決策點的 active。

  • 目錄頁:https://www.skillhub.cn/plugins/HunterXing/jev-judge
  • 源碼與文檔:https://github.com/HunterXing/jev-judge
羽毛球分组比赛记分
小程序二维码

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

小夜