AIDive

Jev di Claude Code Cuma Hint, Buktinya Sendiri Lambat

Oleh AIDive · Terbit

Coding agentModel AI

Intro: hint, bukan penghematan

Jev tidak akan membuat Claude Code lebih murah, dan benchmark milik gateway itu sendiri yang mengatakannya. Artikel ini membaca kode jev-gateway dan repositori benchmarknya, lalu memasang logging proxy di depan sesi Claude Code yang nyata untuk melihat apa yang akan diterima router.

Jev adalah model keputusan TypeSafe: sebuah probabilitas yang dikembalikan dalam milidetik, dipasang ke Claude Code oleh enam video dalam satu minggu. Klaimnya adalah "loop coding agentic termurah". Angka milik gateway itu sendiri menunjukkan Opus 5 membuat 47% lebih banyak request dan menghabiskan 83% lebih banyak waktu pada tugas fitur dengan routing aktif.

Bagaimana router yang menjawab dalam milidetik bisa membuat Claude Code lebih lambat? Semuanya bermuara pada satu baris kode. Di dalam Claude Code, Jev hanya mendapat dua kalimat, dan sesi normal menyerahkan 40 tool ke Jev pada setiap panggilan.

Apa itu Jev, dan apa yang dijual gelombang ini

Jev adalah model keputusan dari TypeSafe. Ia tidak menghasilkan teks: Anda mengajukan pertanyaan bertipe dan ia menjawab dengan sebuah pilihan, skor, atau probabilitas ya/tidak. Angka-angka dari vendor:

Angka Nilai
Harga input $0.04 per juta token
Harga output gratis ("terlalu murah untuk diukur")
Latensi 70 hingga 500 ms
Headline halaman utama 194× lebih cepat, 445× lebih murah

Postingan blog di bawah headline itu mengatakan kedua pengali tersebut adalah ujung atas dari gain dunia nyata, diukur terhadap rata-rata dua model frontier, sebuah perbandingan yang menurut penulisnya sendiri bias ke arah kedua model itu.

Enam video dalam lima hari memasang Jev ke Claude Code. Video terbesar berada di 139.000 tayangan dan menyebutnya sebagai loop coding agentic termurah sejauh ini. Dua repositori membawa gelombang ini: jev-gateway, sebuah proxy lokal untuk Claude Code dan Codex yang dibuat lima hari sebelumnya dengan 181 star, dan fast-jev-compaction, sebuah plugin compaction yang dibuat sehari sebelum itu, dengan 6.400 star. Gateway adalah tempat Claude Code terhubung, jadi di situlah pembacaan ini dimulai.

Satu env var, satu baris: mode hint

jev-gateway duduk di antara Claude Code dan Anthropic API. Ia menjalankan Claude Code dengan satu environment variable, ANTHROPIC_BASE_URL, yang diarahkan ke port lokal. Tidak ada yang lain berubah; sebuah komentar dalam source code mengatakan tidak ada kredensial gateway, jadi login Pro atau Max tetap berfungsi apa adanya.

Di dalam adapter (src/adapters/messages.ts, baris 99), satu baris menentukan apa yang boleh dilakukan Jev:

steer: thinking || cached ? "hint" : "tool_choice"

Dengan extended thinking aktif, atau percakapan yang di-cache, gateway hanya bisa memberi hint. Selain itu ia memaksa tool. Komentar di atas baris itu menjelaskan alasannya: API menolak tool yang dipaksa selagi extended thinking aktif, dan mengubah tool_choice membatalkan percakapan cache yang dibaca ulang Claude Code pada setiap giliran.

Untuk memeriksa seperti apa request nyata itu, sebuah logging proxy sepanjang 60 baris mengambil alih posisi gateway pada jenis port yang sama, dengan Claude Code dijalankan melaluinya dan satu request dikirim pada repositori nyata. Request itu membawa thinking: adaptive dan tiga cache marker; tool_choice tidak ada; 24 tool ikut serta pada instalasi bersih. Jalankan baris milik gateway terhadap request itu dan jalur paksa tidak pernah aktif. Setiap panggilan Claude Code jatuh ke mode hint. README mengatakan hal yang sama: harapkan pilihan tool yang lebih baik pada daftar tool yang besar, bukan biaya atau latensi yang lebih rendah.

Hint-nya: dua kalimat, dan di mana ia tak bisa mendarat

Yang boleh dilakukan Jev di dalam Claude Code adalah dua kalimat yang ditambahkan ke pesan terakhir: sebuah pesan yang mengatakan "sebuah routing model menyarankan tool ini adalah langkah paling relevan sekarang. Abaikan ini jika tidak sesuai." Itulah seluruh intervensinya. Model bebas mengabaikannya, dan tool_choice tetap pada auto.

Memaksa tool bukan pilihan, menurut dokumentasi Anthropic: tool yang dipaksa mengembalikan error 400 pada Opus 5.5 dan Fable 5.1, dan error dengan manual thinking pada model lainnya. Mengubah tool_choice juga tidak bisa: dokumentasi prompt caching mengatakan itu membatalkan messages cache, bagian terbesar dari sesi yang panjang. Mengedit deskripsi tool membatalkan seluruh cache: tools, system, dan messages.

Perubahan pada request Efek pada prompt cache
Menambahkan hint ke pesan user terakhir cached prefix tidak berubah
Mengubah tool_choice messages cache dibatalkan
Mengedit definisi tool tools, system, dan messages dibatalkan

Komentar gateway menjelaskan mengapa hint diletakkan di akhir: cached prefix tetap identik byte demi byte dengan apa yang dikirim ulang Claude Code pada giliran berikutnya. Ada guard di depannya: ketika pesan terakhir bukan milik user, request lewat tanpa diubah. Kedua request yang ditangkap berakhir pada blok system yang ditambahkan Claude Code sendiri, sebuah environment reminder pada satu dan output hook pada yang lain. Pada bentuk seperti itu, hint tidak punya tempat untuk mendarat. Ia memang mendarat pada giliran lain, karena hasil tool kembali sebagai pesan user, dan benchmark mencatat Jev mengarahkan sepertiga hingga setengah dari request Claude Code.

Benchmark yang tak pernah dikutip

Benchmark milik gateway sendiri, jev-gateway-bench, menjawab pertanyaan pembuka ini. Ia menjalankan 120 sesi, lima run per cell, pada Claude Code dan subscription yang sama dengan yang dipakai semua orang, tanpa MCP server, plugin, atau skill. Dua tugas pada chess engine kecil: bug hunt dengan lima bug yang disisipkan, dan sebuah fitur, menambahkan notasi aljabar.

Model, tugas Routing on vs off
Opus 5, feature +61% input token, +47% request, +83% waktu (tetap menyelesaikan 5/5)
Sonnet 5, feature +16% input token, +37% waktu
Sonnet 5, bug hunt −48% input token, −25% waktu

Debugging adalah tempat routing membayar, menurut kata-kata penulisnya sendiri. Penjelasan mereka adalah jawaban atas pertanyaan ini: gateway hanya memberi hint dengan model Claude, jadi hint yang tidak sesuai berbiaya detour, bukannya diabaikan secara gratis.

Codex mendapat versi yang dipaksa. Jev memutuskan 76 hingga 100% dari request Codex, dibandingkan sepertiga hingga setengah pada Claude Code. Satu model pada harness lain menjadi lebih murah dan salah, tiga solve dari lima alih-alih lima. Lebih murah dan salah bukanlah penghematan.

Batasannya nyata: lima run per cell adalah sampel kecil, ini satu toy engine, dan belum ada yang menjalankan ulang. Input juga sebagian besar sudah di-cache, jadi penghematan input bernilai lebih rendah daripada penghematan output.

Yang diberikan sesi saya: 24 tool bersih, 40 penuh

Apa yang diserahkan sesi Claude Code normal ke router pada setiap panggilan? Log proxy menjawab: 40 tool. Repositori yang sama, prompt satu kata yang sama, dua setup: instalasi bersih dengan config kosong dan tanpa MCP server, dan setup normal dengan server dan plugin-nya.

Instalasi bersih Setup normal
Tool dalam request 24 40 (16 dari MCP server dan plugin)
Prefix token yang ditagih 47,411 57,277
Output token 4 4
Biaya setara API untuk satu "ok" $0.07 $1.15

Roster itu adalah tagihannya. Definisi yang paling berat sudah tertanam: tool shell saja 12,000 karakter, tool agent hampir 9,000.

Catatan kaki pada benchmark mencatat enam tool dan 7,000 token pada instalasi bersih, dan 285 tool pada satu setup yang penuh muatan. Claude Code bersih hari ini mengirim jauh lebih banyak tool bawaan, dan kasus yang penuh muatan lebih jarang: sebagian besar tool MCP berada di balik search tool, deferred, sehingga roster yang dilihat router tetap kecil. Berapa pun ukurannya, gateway mengirim roster itu ke Jev pada setiap request; sebuah issue terbuka pada repositori mengatakan biaya penuh dibayar sebelum sebagian besar jawaban dibuang. Tidak ada satupun dari itu yang menjadi kesalahan Jev, dan tidak ada satupun yang menjadi tanggung jawab Jev untuk diperbaiki.

Vonis per penggunaan

Routing di dalam Claude Code: tidak. Ini adalah hint yang boleh diabaikan model, ia membuat pekerjaan fitur lebih lambat pada kedua model Claude, dan satu-satunya kemenangan ada pada debugging. Pengecualiannya adalah hari yang dipenuhi bug hunt pada roster tool yang sangat besar, yang disebutkan sendiri oleh README sebagai kasusnya.

Plugin compaction, fast-jev-compaction: belum. Ia membutuhkan flag hook early-access, isu terbukanya mengatakan hook tidak teregistrasi pada beberapa build, dan setelah satu compaction model menulis sembilan laporan yang mengatakan pekerjaan sudah selesai, semuanya fabrikasi. Praktisi lebih dulu sampai di sana: thread teratas pada plugin ini memiliki 491 poin, dan keberatan utamanya bukan kecepatan, melainkan terms of service soal mengirim transcript ke pihak ketiga.

Codex: itulah target sebenarnya. Di sana gateway memaksa tool, Jev mengarahkan hingga setiap request, dan bug hunt berjalan dengan 57% lebih sedikit output token.

Penggunaan Vonis
Routing di Claude Code Tidak, kecuali bug hunt pada roster tool yang sangat besar
fast-jev-compaction Belum
Codex Ya

Satu hal yang benar dari gelombang ini: login subscription tidak pernah berubah, gateway hanya mengubah sebuah URL. Batasan dari pembacaan ini: lima run per cell, satu chess engine, sebuah repositori benchmark yang tidak pernah dijalankan ulang oleh siapa pun, dan tidak ada sesi routing milik saya sendiri. Saya mengukur roster dan request, bukan Jev. Jev sendiri murah. Detour-nya yang tidak.

Sumber

Pertanyaan yang sering diajukan

Apakah Jev membuat Claude Code lebih murah?
Tidak. jev-gateway hanya bisa memberi hint di dalam Claude Code, dan benchmark miliknya sendiri menunjukkan Opus 5 memakai 61% lebih banyak input token, 47% lebih banyak request, dan 83% lebih banyak waktu pada tugas fitur dengan routing aktif. Sonnet 5 mengalami hal yang sama; satu-satunya kemenangan adalah bug hunt dengan 48% lebih sedikit input token.
Apa itu Jev?
Jev adalah model keputusan dari TypeSafe. Ia tidak menghasilkan teks: Anda mengajukan pertanyaan bertipe dan ia mengembalikan sebuah pilihan, skor, atau probabilitas ya/tidak dalam 70 hingga 500 ms, dengan harga $0.04 per juta input token dan output gratis.
Apa yang diubah jev-gateway di Claude Code?
Satu environment variable, ANTHROPIC_BASE_URL, diarahkan ke proxy lokal; login Pro atau Max tetap tidak tersentuh. Di dalam adapter-nya, satu baris mengatur mode steering menjadi hint kapan pun thinking aktif atau percakapan di-cache, yang berarti setiap request Claude Code.
Apa itu Claude Code hint mode?
Dua kalimat yang ditambahkan ke pesan user terakhir: sebuah routing model menyarankan tool ini adalah langkah paling relevan sekarang, abaikan ini jika tidak sesuai. Model bebas mengabaikannya dan tool_choice tetap pada auto, karena memaksa tool menghasilkan error dengan extended thinking dan mengubah tool_choice membatalkan prompt cache.
Berapa banyak tool yang dikirim satu request Claude Code?
Diukur dengan logging proxy pada Claude Code 2.1.280: 24 tool dan 47,411 prefix token pada instalasi bersih, 40 tool dan 57,277 prefix token pada setup normal dengan MCP server dan plugin, untuk jawaban empat token.
Apakah fast-jev-compaction layak diinstal?
Belum. Ia membutuhkan flag hook early-access, isu terbukanya melaporkan hook yang tidak teregistrasi pada beberapa build, dan satu laporan sembilan ringkasan pekerjaan-selesai yang fabrikasi setelah sebuah compaction. Keberatan utama pada thread komunitas teratas bukan kecepatan, melainkan terms of service soal mengirim transcript ke pihak ketiga.

Video terkait