October 13, 2026
Updated:
7 min read

Kenapa Codex CLI Nyalakan Daemon Siluman Tanpa Izinmu?

Codex CLI 0.157.0 diam-diam menyalakan daemon yang self-update tiap jam di luar package manager. Komunitas protes, OpenAI belum menjawab. Ini bedah lengkapnya.

Kamu membuka satu sesi Codex, menutup semua jendelanya, lalu mengecek proses yang berjalan di laptop. Di sana ia masih hidup. Sebuah daemon bernama codex app-server, berjalan tanpa terminal, terus menyala meski kamu sudah selesai bekerja. Kamu tidak pernah memintanya.

Sejak Codex CLI versi 0.157.0, setiap kali kamu membuka sesi interaktif, sebuah daemon latar belakang dinyalakan otomatis. Ia tetap berjalan setelah semua jendela Codex ditutup, dan satu-satunya cara resmi menghentikannya adalah perintah khusus atau reboot. Kabar ini meledak di Hacker News dengan ratusan poin dan ratusan komentar, sebagian besar bernada protes keras.

GIF ilustrasi

Isu ini dilaporkan di repositori resmi openai/codex dengan nomor 48195 pada 26 September 2026, dan hingga pertengahan Oktober masih berstatus terbuka tanpa jawaban resmi dari OpenAI. Jadi mari bedah satu per satu: apa yang sebenarnya dipasang di mesinmu, dan kenapa komunitas bereaksi sekeras itu.

Apa yang Sebenarnya Dipasang di Mesinmu

Daemon itu berjalan dengan perintah codex app-server --managed-daemon di sesinya sendiri, tanpa TTY. Artinya ia tidak terhubung ke terminal mana pun, sehingga kamu tidak akan melihatnya kecuali sengaja memeriksa daftar proses.

Begitu aktif, daemon menyalin seluruh paket platform, sekitar 374 MB, ke folder ~/.codex/packages/app-server-daemon/releases/<version>/. Isinya identik dengan yang dipasang npm: host codex-code-mode-host plus biner bundel seperti bwrap, zsh, dan rg. Daemon kemudian berjalan dari salinan itu, bukan dari instalasi npm-mu.

Ini berarti ada dua kopi biner yang sama di disk, dan daemon dijalankan dari kopi yang dikelola sendiri, bukan dari package manager. Pola ini membuat banyak developer bertanya: kalau sudah lewat npm, kenapa masih butuh salinan terpisah yang jalan sendiri.

Updater yang Jalan di Luar Package Manager

Yang paling diprotes bukan daemon-nya, melainkan updater yang melekat padanya. Sebuah proses terpisah bernama codex app-server daemon pid-update-loop mulai memeriksa pembaruan lima menit setelah daemon menyala, lalu mengulanginya setiap jam.

Kalau ada rilis baru, ia mengunduh dan me-restart daemon secara otomatis. Dengan kata lain, biner di mesinmu bisa berganti versi sendiri tanpa kamu tahu, di luar kendali npm, apt, atau package manager lain yang kamu pakai.

Masalahnya bertambah karena issue terkait bernomor 40969, yang juga masih terbuka, mencatat bahwa pembaruan otomatis ini bisa mematikan sesi aktif secara paksa setelah masa tenggang 60 detik. Dan perilaku itu tidak bisa dimatikan.

Efek Samping yang Lebih Serius dari Sekadar Boros RAM

Daemon mengunci environment dari sesi yang kebetulan menyalakannya. Contoh nyata dari laporan: sebuah wrapper yang mengatur HTTPS_PROXY membuat proxy basi itu terus dipakai semua sesi berikutnya, karena daemon tidak pernah membaca ulang environment.

Efek serupa terjadi pada hooks. Mereka menerima working directory milik daemon, bukan milik sesi tempat kamu bekerja. Untuk alat yang seharusnya sadar konteks proyek, ini kesalahan yang sulit didiagnosis.

GIF ilustrasi

Komentar dengan reaksi terbanyak menyebut perilaku ini sebagai ciri malware, dan sebagian warganet mengaku tidak percaya ini terjadi tanpa sengaja. Yang lain menyebut Codex sudah tidak bisa dipakai sampai masalah ini diperbaiki, dengan konfirmasi dari pengguna Windows dan Linux.

Cara Mematikannya, dan Bug di Balik Saklarnya

Ada jalan keluar. Kamu bisa menjalankan codex features disable daemon_auto_start, atau menulis daemon_auto_start = false di config.toml. Setelah itu, hentikan daemon dengan codex app-server daemon stop.

Namun pelapor menemukan bug saat mencoba mematikan: perintah stop memang menghentikan app-server, tetapi proses updater-nya tetap hidup. Tujuh puluh detik kemudian ia masih berjalan, dan harus dibunuh manual dengan pkill.

Distribusi Linux sampai harus menambal sendiri. Maintainer nixpkgs menonaktifkan auto-start daemon secara default lewat patch, karena daemon memasang dirinya dari layout paket rilis yang tidak ada di build Nix. Pengguna Home Manager melakukan hal yang sama. Menurut satu komentator yang menulis 13 Oktober, saklar opt-out ini bahkan masih tidak terlihat di referensi konfigurasi resmi. Artinya sebagian besar pengguna tidak akan pernah tahu ada opsi untuk mematikannya.

Yang membuat isu ini makin panas adalah usulan dari komunitas agar ada semacam tanda terima eksekusi: versi client, hash biner daemon, status updater, dan environment yang diwariskan, sehingga client bisa mendeteksi kalau biner daemon berubah sendiri di luar package manager. Sampai usulan itu diadopsi, kamu pada dasarnya diminta percaya pada proses yang memperbarui dirinya sendiri secara diam-diam.

Apa Artinya Buat Kamu

Kalau kamu memakai Codex CLI, pelajaran terbesarnya sederhana: alat developer modern makin berani menanam proses persisten di mesinmu tanpa izin eksplisit. Kebiasaan yang dulu dianggap wajar untuk antivirus atau sinkronisasi cloud kini muncul di CLI yang kamu panggil dari terminal.

Yang bisa kamu lakukan sekarang: cek proses latar dengan ps atau task manager setelah menutup sesi coding agent apa pun, matikan auto-start daemon kalau tidak butuh, dan pertimbangkan paket dari distro yang sudah menambal perilaku ini. Untuk eksperimen tooling dan proyek AI lain yang saya kerjakan, mampir ke /projects untuk melihat daftarnya.

Dimas Febriyanto - Fullstack Developer

Dimas Febriyanto

Fullstack & Mobile Developer specializing in Golang & Flutter. Aktif sebagai Junior Mobile Developer di Sagara Technology & asisten lab di Universitas Gunadarma. Passionate about building scalable algorithms & high-impact applications.

Lihat Portofolio

Liked this article?

Feel free to share it with your network or reach out if you have any questions!