Jev Use

io.github.shitianfang由 GitHub 帳號 shitianfang 發布v0.8.0更新於 Oct 24, 2026

Typed yes/no, pick-one and score judgments from Jev in one batched call; typed escalation back.

已驗證STDIO僅桌面開發者工具AI 與機器學習

概覽

AI 產生的概覽

本機 MCP 伺服器,把批次的是/否、單選與評分判斷交給 Jev,回傳帶信心度與升級標記的結構化答案。

可以做什麼
  • 批次提出結構化問題(check、pick、rate),取得帶信心度與升級標記的答案
  • 把不需文字輸出的快速決策交給 Jev 判斷,而非讓模型逐條生成
  • 對 Jev 無法或不應決定的事項回傳帶類型的升級原因
  • 透過 PreToolUse 鉤子攔截 shell 指令,拒絕危險指令並附上理由
  • 在送出被攔截的動作前移除其中的憑證
  • 透過命令列完成安裝、啟動服務與連線診斷
適用情境
適合代理需要大量不需文字輸出的小決策時,例如路由選擇、通過/失敗檢查、風險評級、指令把關,希望比每次詢問模型更快、更省 token。也可作為函式庫在自有腳本中使用。
執行需求
透過 npx 從 npm 套件 jev-use 在本機執行(需要 Node.js)。需在代理執行環境設定一個供應商金鑰:TYPESAFE_API_KEY、OPENROUTER_API_KEY 或 AI_GATEWAY_API_KEY;JEV_BACKEND=mock 可無金鑰在本機試跑。安裝指令會接入 Claude Code、Codex 與 pi。
安裝前請注意
除非使用 mock 後端,判斷狀態會傳送給所設定的第三方供應商。指令把關會檢查 shell 指令,送出前會移除憑證,但仍需留意傳入的狀態內容。安裝指令會修改代理的設定檔。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Jev Use,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

jev-use

English | 简体中文

The best way for Claude Code, Codex, and pi to work with Jev: hand the tasks that need no text output to Jev — faster steps, fewer tokens, tasks done sooner and better.

It makes the LLM and Jev true collaborators: when content needs to be written, the LLM takes over; when a step just needs a fast decision, Jev executes it.

Demos — real runs, 1× speed

Directions task: Jev clicks, the LLM types — 10 decisions (p50 274 ms) · 4 writes; Jev rejects a wrong route, the LLM rewrites
[OpenStreetMap directions: Jev picks controls in green, the LLM types the locations in blue; a wrong 1809km geocode is rejected by Jev and repaired by the LLM, ending on the real 3.7km walking route]
Context compaction — 200 messages judged in 7 calls, one LLM paragraph replaces the dropped pile; recall 3/3
[A real transcript fills the context window to 94%; Jev tints each message keep or drop, the LLM's summary paragraph replaces the dropped block, the window falls to 44% and three recall checks pass]
Pong: ball speed = decision latency — 86 Jev decisions in 20 s vs 6 (haiku) and 3 (gemini) called the usual way; enum-constrain both and the gap is 3×
[Three Pong lanes replaying a live run at 1x: the Jev ball sweeps the field at ~224ms per decision while the LLM balls crawl]
Gate every shell command — dangerous ones denied in ~230 ms with a reason, zero LLM tokens
[A 24-command dev session gated at 1x: dangerous commands denied at confidence 1.00, benign ones allowed]

Every demo is a rerunnable script in bench/examples/; all numbers, methodology, variance and caveats: bench/RESULTS.md · third-party measurements: docs/evidence.md.

Install

bash
npx -y jev-use install    # wires Claude Code, Codex, and pi — whichever it finds

Set one key in the environment your agent runs in (JEV_BACKEND=mock for a keyless dry run):

ProviderEnv var
TypeSafe directTYPESAFE_API_KEY
OpenRouterOPENROUTER_API_KEY
Vercel AI GatewayAI_GATEWAY_API_KEY

npx -y jev-use doctor checks the wiring. Judged state goes to the provider you configure; JEV_BACKEND=mock stays local. Plugin form with the routing skill and the PreToolUse gate: harness/claude-code · harness/codex.

Use as a library

npm i jev-use — zero runtime dependencies on the judgment path:

js
import { Jev, check, pick, rate } from "jev-use";
const jev = new Jev();
const { answers } = await jev.judge(state, {  next: pick("Next action?", { merge: "all green", rerun: "looks flaky", hold: "needs attention" }),  risk: rate("How risky?", ["routine", "worth a look", "incident"]),  passed: check("Did the run fully succeed?"),});// answers.next → { answer: "merge", confidence: 0.93, confidenceFrom: "reported", escalate: false }

Anything Jev can't or shouldn't decide comes back with escalate: true and a typed reason. Tools, verdict shape, escalation contract, CLI: docs/reference.md.

Small enough to read

FileJob
src/protocol.tsQuestions (check/pick/rate), verdicts, escalation reasons
src/dispatch.tsPre-call routing: what never reaches Jev
src/judge.tsscreen → backend → hand back what is unsure; gate
src/jev.tsThe Jev client over that engine
src/redact.tsCredentials stripped from a gated action before it is sent
src/backends/TypeSafe, OpenRouter, Vercel, mock adapters
src/server.tsThe two MCP tools
src/cli.tsinstall, serve, hook gate, doctor
skills/jev-use/SKILL.mdThe routing rules the agent follows

Development

console
$ npm run typecheck && npm test    # unit tests incl. per-provider wire fixtures$ npm run smoke                    # real MCP client ↔ built CLI over stdio$ node bench/run.mjs               # micro-benchmarks, your key and region

Substantially written with Claude Code (AI-assisted).

MIT © shitianfang

來源:README.md,提交 541c86c

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v0.8.0最新Sep 22, 2026
  2. v0.7.1Sep 20, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分