jevkit
Self-hosted Jev server plus CLIs, agent skills and a Pi tool for typed code questions and per-file diff review triage.
Overview
This jevkit is a small self-hosted HTTP server that holds a TypeSafe key, with standalone CLIs, agent skills and a Pi extension that call it. Its two endpoints are /ask, which evaluates one state or a batch of up to 100 against noul, choice and score questions, and /review, which splits a raw diff by file and applies a fixed triage rubric.
The review rubric asks whether each file needs review, its risk, its category, whether there is a security concern and whether tests are missing; a file is flagged when needs_review or security_concern is at least 0.5 or the risk score is at least 2, and only flagged files come back with full diffs. A private mode answers with the open Kev-0.8B model on local or homelab CPU instead of TypeSafe. It suits developers who want coding agents to ask typed questions about code instead of loading it into context.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Does this file change need human review? / Is there a security concern? | — |
| Score | How risky is this file change? | — |
| Choice | What category of change is this? | — |
| Yes / no | Are tests missing for this change? | — |
How it works
- Run the server with TYPESAFE_API_KEY (Docker or python -m jevkit.server)
- Agent or CLI posts a state or diff to /ask or /review
- Diffs are split per file and each file gets the triage rubric
- Files over the needs_review/security/risk thresholds are returned with full diff; others as one-line verdicts
Strengths
- Key stays on the server; clients need none
- Agents see only flagged diffs, saving context
- Private mode keeps code on local hardware via Kev-0.8B
- Stdlib-only Python with tests
Caveats
- Endpoint is open unless JEV_ACCESS_KEY is set
- Private Kev mode is slow on CPU (seconds per item)
- Personal homelab-oriented project
Getting started
docker build -t jevkit . && docker run -e TYPESAFE_API_KEY=... -p 8787:8787 jevkit, then ./install.sh to install the ask-jev and jev-review clients.At a glance
- Type
- Agent skill
- Status
- beta
- Language
- Python
- Runtime
- HTTP server, CLI, agent skills, Pi extension
- Has code
- yes
- Has tests
- yes
Use cases and integrations
How curated lists describe it
Self-hosted Jev (TypeSafe) tools for coding agents: /ask classification and /review diff triage, with CLIs, agent skills, and a Pi tool
logicrw/awesome-jev-projects
Frequently asked questions
What does /review decide?
Per changed file, whether it needs review, its risk score, category, security concern and missing tests; it then returns only flagged diffs in full.
Can I keep code off TypeSafe's servers?
Yes, the private option routes questions to a self-hosted Kev-0.8B model, at the cost of slower CPU inference.
Do clients need a TypeSafe key?
No, the server holds the key; clients only need its URL and optional access key.
Related projects
CLI and agent commands auditing a git diff against YAML standards packs, scoring each hunk with Jev so agents fix only flags.
Agent skillbetaTypeScriptLocal MCP review engine where each rule becomes a Jev YES/NO/N/A Choice over agent-supplied diff chunks, with located evidence.
MCP serverbetaTypeScriptZero-dependency Python toolkit of nine agent skills whose typed decisions pass a code gate and are sealed in a hash-chained ledger.
ProjectbetaPythonClaude Code skills that wait for AI pull-request reviewers and judge whether their reports actually permit a merge, never inferring a pass.
ProjectbetaClaude Code hook that, when you write an LLM call or classifier, injects a three-way test: plain code, frontier model or Jev.
HookbetaBash- CodeOtter★ 3
Self-hosted PR review platform pairing an LLM narrative with a /v1/systemone decision engine for 6 rubric scores and 8 yes/no merge gates.
Servicebeta