Skip to content

opencode-jev-pre-llm

OpenCode V2 plugin that asks Jev if a prompt is deterministic and, if so, skips chain-of-thought with temperature 0 and a short answer.

PluginprototypeMIT

Overview

opencode-jev-pre-llm classifies each user prompt with TypeSafe Jev before the language model starts reasoning. It captures the prompt once per turn and, at the first step of the agent loop, asks Jev whether the request is deterministic. If the noul probability and confidence clear configurable thresholds (defaults 0.8 and 1.0), it injects a JEV PRE-ANALYSIS note into the system prompt, sets temperature to 0 and limits output to 400 tokens so the model answers directly without chain-of-thought.

Otherwise, or on any Jev error, it fails open and the model reasons normally. Verdicts are cached for a configurable TTL so subsequent steps of the same turn reuse them. Jev never generates the response; it only classifies. The README reports 51 of 53 tests passing and a clean typecheck. It is MIT licensed and requires Node 18+.

What the decision model decides

TypeQuestionAnswers
Yes / noIs this prompt deterministic enough to answer without reasoning?yes · no

How it works

  1. Capture the user's prompt.
  2. Ask Jev if it is deterministic.
  3. If above thresholds, inject pre-analysis, set temperature 0 and cap tokens.
  4. Otherwise let the model reason normally.

Strengths

  • Cuts reasoning tokens on simple prompts.
  • Fails open on any error.
  • One classification per turn, cached.

Caveats

  • Suppressing reasoning could hurt quality if misclassified.
  • Two tests not passing per the README.

Getting started

opencode plugin add github:murilogteixeira/opencode-jev-pre-llm and set JEV_API_KEY.

At a glance

Type
Plugin
Status
prototype
Language
TypeScript
Runtime
OpenCode V2 plugin, Node
Has code
yes
Has tests
yes
License
MIT

Use cases and integrations

How curated lists describe it

  • Coding agents: an OpenCode V2 plugin that classifies a prompt with Jev before the LLM starts reasoning, so the expensive model only sees requests that need it.

    yibie/awesome-jev

Frequently asked questions

What does Jev decide?

Whether a prompt is deterministic enough for a direct answer without chain-of-thought.

What happens if Jev fails?

The model reasons normally; the plugin fails open.

Can I tune it?

Yes, with JEV_THRESHOLD and JEV_MIN_CONFIDENCE.

Related projects

  • OpenCode plugin where Jev picks the best free Zen or Go model for each new message from the live catalogue.

    ProjectbetaJavaScript
  • OpenCode plugin adding an Auto (Jev) virtual model that routes each turn to one of your configured real models.

    PluginbetaTypeScript
  • OpenCode orchestrator that keeps a cheap sticky parent model and escalates to strong child subagents only when Jev flags a hard turn.

    ProjectbetaTypeScript
  • OpenCode plugin and proxy where Jev picks reasoning effort per step; superseded by reasoning-router.

    ProxybetaTypeScript
  • Host-agnostic routing layer that picks model, effort and provider per round for coding harnesses from trajectory evidence.

    ProxybetaTypeScript
  • Cost-, cache- and quota-aware LLM router that classifies each turn with a Jev-class model, prices every route, and checks cheap answers.

    ProjectprototypePython