ego-jev (jiangkoumo)
ego-decision-layer: measured, pluggable decision layer for ego lite where Jev picks operation and target in one request.
Overview
ego-decision-layer replaces the per-step LLM round trip in ego lite browser automation with Jev. Jev reads one indexed element table and answers, in a single request, both the operation (click, type_text, select, scroll_up, scroll_down, wait, done or blocked) and the target element. Code owns observation, execution, stale-reference checks, verification and exit conditions. The backend is pluggable, so a local or other OpenAI-compatible model can replace Jev, and a small text model is called only when content must be written.
Its distinguishing claim is measurement: a full rerun of 16 test suites and 429 checks, raw data in the repository, and a changelog recording earlier claims later overturned. The README reports Hacker News two-step navigation falling from 4,569 ms to 1,916 ms, and over 100 pre-registered paired rounds against browser-harness plus jev-ultrafast: faster click chains and wiki search, no difference on forms, and slower native selects. Execution fails closed. Documentation is mainly in Chinese.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which operation should be performed next? | click · type_text · select · scroll_up · scroll_down · wait · done · blocked |
| Choice | Which indexed element is the target? | — |
How it works
- Build an indexed element table
- One Jev request picks operation and target
- Code checks freshness, occlusion and danger, then executes
- Repeat until done or blocked
Strengths
- Transparent, reproducible benchmarks
- Single-process loop
- Pluggable backend
- Fail-closed execution
Caveats
- Not faster on every task (e.g. native selects)
- Chinese-first documentation
Getting started
Install the skill from skills.sh/jiangkoumo/ego-decision-layer.At a glance
- Type
- Project
- Status
- beta
- Language
- TypeScript
- Runtime
- ego lite skill
- Has code
- yes
- Has tests
- yes
Use cases and integrations
How curated lists describe it
Drive the ego lite browser with Jev (TypeSafe System One): one indexed element table in, one operation + target out, single process. ~2x faster than a per-step LLM loop in our measurements.
hellogumbo/awesome-jev
Frequently asked questions
What makes it different?
Every claim is backed by rerunnable measurements and raw data.
Does Jev write text?
No, a small text model is called only when a field needs content.
Is it always faster?
No, the README reports native selects were slower than the comparison.
Related projects
Browser-agent benchmark with five timed events from one prompt, plus a ~200-line DevTools agent where Jev picks each action.
ProjectbetaJavaScriptPlugs any CDP browser, including engines that never draw a page, into a Jev loop that picks operations and targets from the DOM.
LibrarybetaPythonBrowser automation where Jev picks every step from a sightmap's named actions and reports whether the goal is met.
ProjectbetaGoBrowser agent that acts on one look at the page with one open-model call per action; Jev is an optional chooser backend.
AppprototypePythonOpen Apache-2.0 browser-agent decision model (Qwen3.5-35B-A3B fine-tune) that doubled Jev 1.13's task success in the same agent.
ServiceresearchPythonBrowser driver where Jev makes every decision and agent-browser performs every action, benchmarked against Claude Code on 10 tasks.
BenchmarkbetaTypeScript