Laya dan Ekosistem Jev: 10 Proyek Mesin Keputusan System One Paling Populer
Laya membawa model keputusan non-autoregresif ke Python (33 ms, 100+ bahasa), TypeSafe Jev membawanya ke agent. Ini 10 proyek Jev paling populer, dari browser agent 7 detik sampai ekstensi Postgres.
Masalahnya
Agent hari ini menghabiskan token model besar untuk pekerjaan yang bukan menulis: memilih model mana yang cukup untuk turn ini, memilih 1 dari 377 skill, memilih tombol mana yang harus diklik, memilih bagian transkrip mana yang dibuang saat konteks penuh, memilih hasil pencarian mana yang layak dibuka.
Semua itu keputusan, bukan prosa. Meminta model frontier menjawabnya itu seperti menyewa konsultan untuk mencentang kotak.
Jawaban yang muncul sepanjang September 2026: model kecil khusus keputusan — satu forward pass, output probabilitas terkalibrasi, tidak pernah menulis teks. Dua nama yang sedang naik bersamaan adalah Laya (open-source, bisa Anda jalankan sendiri) dan Jev (model System One milik TypeSafe yang dipakai oleh puluhan proyek agent).
Keputusan bertipe: choice, score, noul
Keduanya memakai bentuk pertanyaan yang sama. Anda memberi state (teks apa pun, dari tiket support sampai halaman web) dan satu set pertanyaan bertipe:
| Tipe | Pertanyaannya | Jawabannya |
|---|---|---|
choice |
“Departemen mana yang harus menangani ini?” | salah satu kategori |
score |
“Seberapa urgent ini?” | nilai pada rubrik (mis. 0–2) |
noul |
“Apakah user mengancam berhenti?” | probabilitas jawabannya “ya” |
Output-nya bukan kalimat, tapi keputusan plus confidence. Itu yang membuatnya bisa dipakai sebagai kontrol alur di kode biasa: ambang batas, routing, eskalasi ke manusia.
state ──► model keputusan ──► { choice: "billing", prob: 0.94 }
│
└─► kode memutuskan: route / eskalasi
Laya: mesin keputusan yang bisa dijalankan sendiri
Laya — 26.030 bintang per 27 September 2026, Apache-2.0, Python 3.10+ — adalah non-autoregressive System 1 decision engine. Non-autoregresif artinya tidak menghasilkan token satu per satu: seluruh keputusan keluar dalam satu forward pass, yang di repo-nya disebut sekitar 33 ms.
Ia dilatih dengan reinforcement learning terhadap strictly proper scoring rules (RLCD), yang menjelaskan kenapa output-nya probabilitas terkalibrasi, bukan sekadar label.
python -m pip install laya
Ekstra opsional: laya[serve] (HTTP server), laya[mcp] (MCP server), laya[langchain], laya[onnx], laya[fast] (jalur GPU TileLang).
Quickstart
from laya import Router
router = Router() # unduh checkpoint saat pemakaian pertama
state = "Hi, we were billed twice for March. Please refund the duplicate today or we will cancel our plan."
questions = {
"department": {"type": "choice", "instructions": "Which department should handle this?",
"criteria": {"billing": "invoices, payments, refunds",
"technical": "bugs, outages, system errors",
"other": "everything else"}},
"urgency": {"type": "score", "instructions": "How urgent is this?",
"criteria": ["not urgent", "soon", "blocking"]},
"churn_risk": {"type": "noul", "instructions": "Does the user threaten to cancel or leave?"},
}
result = router.predict(state, questions)
print(result["answers"]["department"]["choice"]) # billing
print(result["answers"]["churn_risk"]["noul"]) # probabilitas jawabannya "ya"
print(result["routing"]["model"]) # english
Ada Router yang mendeteksi skrip dan bahasa, lalu mengarahkan teks non-Inggris ke checkpoint laya-multilingual — klaim repo-nya: jalan di 100+ bahasa. Dari CLI ada preset siap pakai: laya "My payment failed twice" --preset triage.
Angka yang dipublikasikan repo
| Klaim | Angka | Catatan |
|---|---|---|
| Latensi satu keputusan | ~33 ms | satu forward pass |
| Benchmark typed decisions (2.000 keputusan, 4 workflow) | 0.766 akurasi (checkpoint fine-tuned) vs 0.362 (base English) | selisih terbesar muncul setelah fine-tune di domain sendiri |
Panjang dokumen (laya-multilingual, max_len=8192) |
16–18 dari 20 benar sampai ~4.000 token; di atas itu 8–17 dari 20 | repo sendiri menyebut hasil di atas 4.000 token “more variable” |
| Kecepatan dokumen panjang | ~1,7 s untuk input ~4.000 token di Apple GPU | kecepatan ikut panjang input nyata, bukan limit |
| Ukuran checkpoint | ~843 MB (English), ~644 MB (multilingual) | dari daftar file Hugging Face convaiinnovations/laya |
Dua catatan penting dari dokumentasinya sendiri, karena ini yang sering bikin kecewa:
- Limit default 1.024 token memotong dokumen panjang. Untuk dokumen panjang, panggil eksplisit dengan
model="multilingual", max_len=8192. - Akurasi dan waktu di atas ~4.000 token tidak stabil. Uji dulu di data Anda sebelum menjadikannya gate produksi.
Model di Hugging Face: convaiinnovations/laya (3.932 likes) dan convaiinnovations/laya-multilingual (296 likes). Versi PyPI per hari ini: 0.3.20.
Jev: versi hosted yang dipakai ekosistem
Jev adalah System One model pertama dari TypeSafe AI, sebuah lab yang menyebut dirinya membangun “machine-native intelligence infrastructure” untuk pengambilan keputusan di dalam software. Menurut deskripsi resminya, Jev masih early access.
Kontraknya sama seperti Laya: diberi state dan pertanyaan bertipe, ia menjawab dengan probabilitas terkalibrasi dan tidak pernah menulis teks. Yang membedakan: Jev diakses lewat API, jadi tidak ada checkpoint 600 MB yang harus diunduh dan tidak ada GPU yang harus disiapkan. Aksesnya lewat TYPESAFE_API_KEY, dengan dua SDK resmi:
pip install typesafe-sdk # Python, v0.7.2
npm install @typesafe-ai/sdk # TypeScript/JavaScript, v0.6.0
Ada juga repo system-one-adapter-python — drop-in replacement system_one yang dijalankan oleh LLM API biasa (OpenAI, Anthropic, Gemini). Gunanya bukan produksi, tapi pembanding: berapa selisih biaya, kecepatan, dan kualitas dibanding model besar.
Inti artikel ini adalah sepuluh proyek yang dibangun di atas Jev. Semua angka bintang di bawah saya verifikasi langsung dari GitHub API pada 27 September 2026 — beberapa daftar yang beredar masih memakai angka yang lebih rendah karena snapshot-nya lebih lama.
10 proyek Jev paling populer
| # | Proyek | Bintang | Lisensi | Bahasa |
|---|---|---|---|---|
| 1 | browser-use/jev-ultrafast | 20.621 | MIT | Python |
| 2 | tamaratran/fast-jev-compaction | 6.979 | MIT | TypeScript |
| 3 | jarrodwatts/jev-trader | 2.521 | MIT | TypeScript |
| 4 | typesafe-ai/skills | 2.217 | MIT | skills |
| 5 | lahfir/agent-desktop | 1.679 | Apache-2.0 | Rust |
| 6 | awlevin/typesafe-computer-use | 1.012 | MIT | Python |
| 7 | kerpopule/hermes-jev-skills | 853 | MIT | Python |
| 8 | devagrawal09/jev-review | 625 | MIT | TypeScript |
| 9 | thruwire/foreman | 579 | MIT | Python |
| 10 | realZachi/pg-jev | 368 | PostgreSQL | SQL + Python |
1. jev-ultrafast — browser agent dengan action space terindeks
Dibuat oleh tim browser-use. Setiap observasi menghasilkan tabel elemen bernomor, dan Jev memilih operasi dan elemen tujuan sekaligus:
[1] button Change ticket type · Round trip
[2] combobox Where from? · San Francisco
[3] combobox Where to? · empty
[4] textbox Departure · empty
Operasinya CLICK, TYPE_TEXT, SELECT, SCROLL_UP, SCROLL_DOWN, WAIT, DONE, BLOCKED. Teks hanya dihasilkan LLM kecil ketika operasinya TYPE_TEXT — jadi tidak ada token yang dibakar untuk memutuskan klik.
Klaim di repo: Zürich → London di Google Flights dalam 7,1 detik, termasuk generasi teks dan menunggu loading.
git clone https://github.com/browser-use/jev-ultrafast.git
cd jev-ultrafast
uv sync
cp .env.example .env # TYPESAFE_API_KEY + TEXT_MODEL_API_KEY
uv run jev # inspektur di http://127.0.0.1:8766
Inspektornya menampilkan elemen bernomor, probabilitas operasi, probabilitas target, dan aksi yang dieksekusi — berguna untuk melihat di mana keputusannya salah.
2. fast-jev-compaction — kompaksi tanpa kehilangan detail
Kompaksi konteks biasanya meminta LLM meringkas percakapan lama, dan ringkasan itu lossy: path file, pesan error persis, atau constraint bisa hilang padahal nanti penting.
Pendekatan repo ini berlawanan: tidak ada yang ditulis ulang. Setiap tool_use dan hasilnya dinilai Jev dalam satu request cepat; yang dianggap tidak perlu lagi dihapus, sisanya dipertahankan verbatim. Teks user dan assistant tetap utuh dan berurutan.
npm install fast-jev-compaction
export TYPESAFE_API_KEY=...
import { compactMessages, reductionRatio, type Message } from 'fast-jev-compaction';
const result = await compactMessages(transcript, { preserveRecentMessages: 4 });
console.log(result.messages, result.decisions, result.stats);
if (reductionRatio(result) < 0.25) {
// tidak sepadan: pakai transkrip asli atau ringkas seperti biasa
}
Repo ini sekaligus npm library (v0.4.1) dan plugin Claude Code yang menggantikan compaction bawaan. Default maxStateTokens 25k, dan preserveRecentMessages menahan pesan terbaru agar tidak pernah disentuh.
3. jev-trader — satu keputusan per blok Monad
Market maker on-chain di Kuru MON-USDC. Setiap ~300 milidetik (satu blok Monad) Jev menjawab buy atau sell, lalu bot memasang post-only limit order satu tick di dalam touch, menggantikan order sebelumnya. Karena selalu jadi maker, botnya mendapat spread, bukan membayarnya.
cp .env.example .env
bun install
bun run start
Tanpa PRIVATE_KEY ia berjalan dry-run: order book nyata, keputusan nyata, fill disimulasikan. Set MODEL=jev dan TYPESAFE_AI_API_KEY untuk memakai Jev; default mock adalah heuristik momentum sebagai pembanding.
Endpoint publiknya masih hidup saat saya cek, dan isinya konsisten dengan klaim repo:
{"model":"jev-latest","dryRun":true,
"latest":{"block":108390480,"spreadBps":6.43,
"decision":{"action":"sell","probabilities":{"buy":0.12,"sell":0.88,"hold":0},
"upIn10":0.12,"latencyMs":140,"late":false},
"fill":{"side":"sell","size":200,"simulated":true}}}
Latensi keputusan di event terakhir: 140 ms (contoh di README: 81 ms). Perhatikan upIn10 — probabilitas harga naik dalam 10 langkah, dipakai sebagai sinyal tambahan.
4. typesafe-ai/skills — skill resmi untuk membangun dengan System One
Paket skill resmi TypeSafe: berisi panduan cara mendesain workflow bertipe (choice/score/noul), menemukan dokumentasi terkini, dan menyusun keputusan bertingkat di dalam kode.
claude plugin marketplace add typesafe-ai/skills
claude plugin install typesafe@typesafe-ai
# atau untuk agent lain lewat skills.sh
npx skills add typesafe-ai/skills --skill typesafe-ai
Ini titik masuk paling murah kalau Anda ingin agent Anda sendiri yang menulis kode integrasinya, bukan Anda membaca docs lebih dulu.
5. agent-desktop — computer use lewat accessibility tree
Berbeda dari agent yang menebak dari piksel, agent-desktop membaca struktur UI asli aplikasi lewat accessibility tree OS. Konsekuensinya penting: referensi elemen stabil antar langkah, dan aksi aman diulang kalau gagal — dua hal yang paling rapuh di agent berbasis screenshot.
npm install -g agent-desktop # binary prebuilt (v0.9.4)
npx agent-desktop snapshot --app Finder -i
Rust 1.89+ dan macOS 13.0+. Di macOS butuh izin Accessibility (dan Screen Recording untuk screenshot); agent-desktop permissions --request meminta izin yang belum ada.
6. typesafe-computer-use — operasi macOS dengan biaya per langkah ~$0.0002
Prinsipnya diringkas repo itu sendiri: the classifier picks, code decides. Layar dibaca secara deterministik (OCR), classifier kecil memilih aksi berikutnya, dan model penulis teks hanya dipanggil kalau memang ada field yang butuh teks bebas atau classifier bingung.
git clone https://github.com/awlevin/typesafe-computer-use
cd typesafe-computer-use
uv sync
cp .env.example .env # TYPESAFE_API_KEY wajib; ANTHROPIC_API_KEY opsional
macOS 14+, Python 3.12+, plus izin Screen Recording dan Accessibility. Yang menarik: hanya satu key yang wajib, dan model penulis bisa diganti ke endpoint OpenAI-compatible apa pun (LM Studio, Ollama).
7. hermes-jev-skills — keputusan kecil di sepanjang hari agent
Repo ini yang paling relevan kalau Anda memakai Hermes: ia memasang lapisan Jev untuk model routing, memori, kompaksi, pemilihan skill, dan computer/browser use — juga untuk Claude Code dan Codex.
git clone https://github.com/kerpopule/hermes-jev-skills ~/hermes-jev-skills && python3 ~/hermes-jev-skills/install.py
jev setup-key # lalu: jev doctor
Python 3.9+, tanpa dependency. Angka terukurnya di repo:
| Yang diputuskan Jev | Hasil terukur |
|---|---|
| Model mana yang cukup untuk turn ini | ~0,4 s per turn |
| Hasil mana yang layak dibuka | ~1,9 s per ronde (median 5 run) |
| 377 skill: mana yang dibutuhkan turn ini | ~2,8 s |
| Screen instruksi jahat di hasil web | 70 dari 79 serangan tertangkap, vs 11 oleh pattern scan bawaan Hermes; 0 dari 1.520 chunk bersih ditahan; ~0,2 s per hasil |
| Memilih turn saat transkrip harus dipotong | 71 turn dalam 0,95 s |
Installer-nya menemukan Hermes, Claude Code, dan Codex yang terpasang, lalu memasang untuk masing-masing. python3 install.py --check menunjukkan rencananya tanpa mengubah apa pun. Ada juga shadow mode (/jev routing shadow) yang mencatat keputusan tanpa mengalihkan apa pun — cara aman menakar manfaatnya sebelum dipakai harian.
8. jev-review — review kode bertahap dengan dashboard lokal
Orchestrasi tetap di kode, Jev dipakai untuk penilaian yang terbatas dan bertingkat:
Noul risk matrix
-> Choice + Score file profiles
-> Choice evidence selection
-> Choice mechanism classification
-> Score severity
-> conditional Choice reviewer routing
npm install && cp .env.example .env # TYPESAFE_API_KEY
npm run review:changes:save -- /path/to/repo
npm run review:codebase:save -- /path/to/repo
npm run dashboard # http://127.0.0.1:4317
Node.js 24+. Dashboard-nya hanya listen di 127.0.0.1 dan tidak pernah menyajikan file environment — pilihan desain yang tepat untuk tool yang membaca seluruh isi repo.
9. foreman — mandor untuk pabrik software
Foreman menaruh model keputusan cepat di atas agent pengkoding yang lambat. Anda memberi satu tiket atau laporan bug; worker Codex/OpenCode mengerjakan kodenya, sementara Foreman menilai secara independen: apakah implementasinya lengkap, requirement terpenuhi, tesnya cukup, perlu verifikasi, atau butuh manusia.
Codex/OpenCode worker ──► bukti ──► FOREMAN (Jev)
completion
implementation_complete .91
requirements_satisfied .79
ready_to_finish .21
python3.12 -m venv .venv && source .venv/bin/activate
python -m pip install '.[dev]'
foreman run --repo ./my-project --job "Add rate limiting to the API and make sure it is properly tested."
Ia juga menyediakan demo deterministik (foreman demo) yang memakai runtime, state, dan event stream yang sama tanpa model nyata — berguna untuk melihat alurnya tanpa biaya API.
10. pg-jev — WHERE jev(…) di Postgres
Ekstensi PostgreSQL yang menilai setiap baris tabel dengan kondisi bahasa natural. Tidak ada index, tidak ada embedding, tidak ada kolom vector — yang ada satu model keputusan per baris.
CREATE EXTENSION jev CASCADE;
SELECT * FROM people WHERE jev(people, 'the name is European');
SELECT subject, jev_prob(tickets, 'the customer is angry') AS p
FROM tickets ORDER BY p DESC LIMIT 20;
SELECT jev_choice(tickets, 'which team should handle this?',
ARRAY['billing', 'technical', 'security', 'sales']) AS team, count(*)
FROM tickets GROUP BY 1;
Tiga fungsi yang perlu diingat: jev (boolean), jev_prob (probabilitas), jev_choice/jev_score (kelas dan skor rubrik). Ada di PGXN, butuh PostgreSQL 14–17, plpython3u, superuser, dan API key TypeSafe.
Batasan praktisnya penting: host terkelola yang tidak memberi superuser atau plpython3u — Supabase, Neon, RDS — tidak bisa menjalankannya. Ini tool untuk Postgres milik sendiri.
Pola yang muncul
Melihat kesepuluhnya sekaligus, ada satu pola desain yang konsisten: model memilih, kode memutuskan.
| Lapisan | Isinya | Contoh |
|---|---|---|
| Keputusan | Jev: pilih satu / skor / ya-tidak, dengan confidence | department: billing (0.94) |
| Kebijakan | Ambang batas, routing, eskalasi, izin | if p < 0.7 → human review |
| Prosa | Model mahal, hanya saat perlu | menulis jawaban, mengisi teks bebas |
| Aksi | Kode yang sudah deterministic | klik, query SQL, pasang order |
Yang menguntungkan dari pola ini bukan hanya biaya per langkah (contoh paling ekstrem: ~$0.0002 per langkah di typesafe-computer-use), tapi komposisi: keputusan bisa dirantai seperti fungsi biasa, diuji, dan diberi ambang batas — sesuatu yang tidak bisa dilakukan pada output bahasa natural.
Catatan dan risiko
- Jev masih early access dan hosted. Kalau API-nya berubah atau turun, semua proyek di atas terdampak. Untuk keputusan yang tidak boleh bergantung pihak ketiga, Laya (Apache-2.0, jalan lokal) adalah jalur alternatifnya — dengan konsekuensi Anda sendiri yang menyiapkan checkpoint dan mengukur akurasinya.
- Probabilitas hanya berguna kalau terkalibrasi. Angka 0.94 layak dijadikan gate hanya jika perilakunya sudah Anda ukur di data sendiri. Laya menyediakan fit calibration temperature saat fine-tuning untuk alasan ini.
- Fine-tuning sering lebih menentukan daripada pilihan model. Di benchmark repo Laya, selisih 0.766 vs 0.362 datang dari fine-tune, bukan dari model yang lebih besar.
- Bukan pengganti model besar. Semua proyek di atas memakai keduanya: model kecil untuk memutuskan, model besar untuk menulis dan bernalar.
- Yang perlu key & uang. Hampir semuanya butuh
TYPESAFE_API_KEY. jev-trader bisa dijalankan tanpaPRIVATE_KEY, dan sebaiknya begitu dulu.
Cara mulai
Butuh keputusan bertipe di dalam agent ──► Jev (API key, ~0,4 s per keputusan)
Mau self-host / tanpa API ─────────────► Laya (pip install laya, ~33 ms per keputusan)
Sudah pakai Hermes ────────────────────► hermes-jev-skills, mulai dari shadow mode
Sudah pakai Postgres ──────────────────► pg-jev (butuh superuser + plpython3u)
Butuh membedakan model keputusan vs LLM ─► system-one-adapter-python
Penutup
Selama bertahun-tahun arsitektur agent dibangun dengan asumsi “model besar untuk semua”. Ekosistem ini menguji asumsi sebaliknya: keputusan kecil diserahkan ke model kecil yang cepat, murah, dan mengembalikan angka — bukan kalimat — sementara model besar dipakai untuk hal yang benar-benar perlu menulis.
Sepuluh proyek di atas menunjukkan bahwa pola itu bukan satu demo, tapi sudah menyebar: browser agent, kompaksi konteks, trading, review kode, computer use, sampai query SQL.
Catat tanggalnya — 27 September 2026 — karena sebagian besar proyek ini dibuat dalam dua minggu terakhir. Simpan daftarnya; beberapa akan hilang, beberapa akan jadi infrastruktur.
Sumber: github.com/NandhaKishorM/laya · typesafe.ai · docs.typesafe.ai · pypi.org/project/laya (0.3.20) · huggingface.co/convaiinnovations/laya · angka bintang & metadata dari GitHub API pada 27 September 2026; endpoint jev-trader diuji langsung pada tanggal yang sama