Skip to content

Jev Skillbench

Measures whether Jev can catch malicious agent skills on MalSkillBench, with a cascade arm that sends only the uncertain band to an LLM. Per-sample records, thresholds and calibration are all kept.

Stars
1
Language
Python
License
MIT
Published by
Community
Author
MohibShaikh
Last verified
Oct 2026

Benchmark of TypeSafe's Jev as a malicious agent-skill detector on MalSkillBench, with a verify-and-escalate cascade

Forks
0
Last pushed
Updated Sep 2026

Repo stats from the GitHub API, cached Oct 2026.

About this project

Measure whether Jev can catch malicious agent skills, on MalSkillBench. Jev is TypeSafe's System One model. It returns typed judgments and calibrated probabilities instead of prose. This repo asks one question with numbers: does a semantic judgment model close the instruction-level gap where static and LLM skill scanners fail, and what does that cost per skill?

Quoted from the project's README. Read the full README.

Highlights

  • Four typed questions per skill: maliciousness as Noul, attack vector and behaviour as Choice, harm severity as a four-level Score.
  • The state is the whole package as JSON — skill.name plus every file's path and content — so instructions and scripts are judged together.
  • On a 1,000-skill stratified sample, Jev plus Claude on the band reaches 0.944 recall at 0.008 false positives.
  • Nothing in the repo executes the downloaded skills. fetch sparse-clones only Dataset/Skills and treats them as inert text.

Watch out

The corpus is about 1.5 GB and is academic-research-only, and a second benchmark with a nearly identical name exists but is explicitly a candidate second protocol rather than the current target. Read the cost column carefully: the Jev figure is what the API reported, the Claude figure is the subscription-equivalent cost that claude -p prints rather than money billed, and the Gemini figure is estimated from measured tokens because that gateway returns no cost. Recall has a hard ceiling in the cascade — malicious skills scoring below the 0.05 cutoff never reach the LLM, 22 of them in the sample, which is why the README puts cascade recall near 0.96 — and Jev's scores vary slightly between identical requests, so single passes are noisy. The llm arm is described as the weakest fair baseline, and the strongest published skill detector is cited rather than rerun, so the comparison is against reported numbers there. Thresholds are tuned on one split and scored on another by evaluate, but the 0.05 cutoff was read off a reliability curve that includes the 1,000 sample, which the README discloses and then argues is not sample-specific. The SDK backend is the fast path at roughly 9 to 25 requests per second, but the Vercel gateway sits around 0.6 per second and its free tier is rate limited per model, so expect heavy 429s above concurrency one. Copy reviewed against the repository README on 2026-10-04, not from running it.

Questions about this entry

Short answers drawn from the linked project or page.

More Jev resources like this

11GitHub stars
Python browser agent that reads one lean page view per state and answers with a single JSON action, using any OpenAI-compatible model with no decision API or browser daemon.
Jev Practices & Patterns#community#jevbest#catalog-import
7GitHub stars
Python client and decision toolkit for the Jev System One endpoint with noul, choice, and score primitives, batched asks, composition helpers, concurrent evaluation, and an MCP server.
Jev Practices & Patterns#community#jevbest#catalog-import
A fork of the SHADE-Arena public split that evaluates TypeSafe Jev as a monitor for covert agent sabotage, against Gemini 2.5 Flash and Pro. Thirteen hand-built transcripts across three tasks, 353 tool calls, and a full LaTeX report.
Jev Practices & Patterns#community#jevbest#catalog-import
24GitHub stars
Unofficial laptop study of parallel constrained decoding: prefill once, share the KV cache across fields, and decide all schema fields in one batched forward pass without writing JSON.
Jev Practices & Patterns#community#jevbest#catalog-import
16GitHub stars
Vendor-neutral harness that tests whether Jev reranking improves a small RAG stack, using frozen hybrid BM25 plus BGE-M3 candidates and isolating retrieval, rerank, and generation stages.
Jev Practices & Patterns#community#jevbest#catalog-import
39GitHub stars
Reproduction kit that rebuilds a frozen typed-decision benchmark suite from public sources and runs any engine through it with resume, scoring, and index computation.
Jev Practices & Patterns#community#jevbest#catalog-import

From the Jev guides

Original write-ups on what this entry is for.

Most Jev accuracy problems are state problems. What belongs in a state, what is a pre-made judgment to leave out, and why naming the slice you ask about matters more than the wording.
Jev Practices & Patterns#state#design#primitives
Read article
A Noul returns one number and no separate confidence. How to read the value, pin its boundary with criteria, split compound questions, and set a per-action threshold that matches the cost of being wrong.
Jev Practices & Patterns#noul#primitives#confidence
Read article
A Score is a weighted position, not a ruler. Why the number can land between levels, why levels are judged separately, and how to combine several atomic scores in code instead of one crowded rubric.
Jev Practices & Patterns#score#primitives#scoring
Read article
Back to all resources

From the Jev community

Posts from builders shipping with Jev right now.

Follow @typesafeai