Menjaga Codex tetap berjalan semalaman di Mac

Menjaga Codex tetap berjalan semalaman di Mac berarti memblokir dua jenis sleep yang berbeda — idle sleep dan clamshell sleep saat lid ditutup — tanpa membiarkan laptop kepanasan di dalam tas saat Anda tidur. Bagian idle sleep gratis: caffeinate sudah tersedia bawaan di macOS. Bagian clamshell butuh pmset disablesleep, sebuah toggle global yang mudah lupa dimatikan. LidRun membungkus keduanya di balik satu toggle plus guardrail baterai dan termal yang melepas hold secara otomatis, jadi janjinya adalah: agent berjalan → tetap awake, agent selesai atau tidak aman → lepas dan tidur — bukan wake lock tanpa syarat.
Mengapa sesi Codex semalaman berhenti di tengah jalan
macOS dirancang untuk men-sleep laptop yang idle. Setelah timer idle habis, atau begitu Anda menutup lid, sistem langsung suspend — dan setiap proses yang berjalan ikut suspend, termasuk Codex.
Tidak ada yang hilang saat itu terjadi. Agent berhenti persis di titik terakhirnya dan menunggu wake berikutnya. Tapi sesi Codex berjam-jam yang Anda harapkan selesai saat pagi jadi baru mulai sedikit, dan malamnya sudah habis.
Ada dua mekanisme berbeda yang jadi penyebabnya, dan masing-masing butuh perbaikan berbeda. Idle sleep aktif sesuai timernya sendiri kapan pun Anda meninggalkan Mac dengan lid terbuka. Sleep saat lid ditutup (clamshell) itu terpisah — ia langsung aktif dalam hitungan detik setelah lid ditutup, terlepas dari timer. Menjaga Codex tetap hidup semalaman berarti menangani keduanya, dan di sinilah satu perintah caffeinate yang dibiarkan berjalan sendirian diam-diam hanya menyelesaikan setengah masalah.
Cara gratis: caffeinate untuk idle sleep, pmset untuk lid
caffeinate sudah tersedia bawaan di macOS, tidak perlu instal apa pun. Tinggal taruh di depan cara Anda biasa menjalankan Codex — caffeinate -i codex — atau, kalau Codex sudah berjalan, arahkan ke proses yang ada dengan caffeinate -i -w $(pgrep -x codex). Kedua cara itu memegang IOKit assertion yang sama, PreventUserIdleSystemSleep (itulah yang diminta flag -i), yang menghentikan idle sleep, dan otomatis terlepas begitu proses codex berakhir. Itu perbaikan yang nyata dan gratis untuk separuh masalah — bagian lid terbuka — dari sesi semalaman.
Separuh masalah lid-tertutup butuh alat yang berbeda, karena caffeinate tidak menyentuh clamshell sleep — menutup lid tetap men-suspend Mac dalam hitungan detik meski caffeinate sedang berjalan. Perbaikan yang terdokumentasi adalah sudo pmset -a disablesleep 1, yang memerintahkan macOS untuk sepenuhnya mengabaikan saklar lid, dan ini primitive yang sama yang diotomatisasi LidRun di baliknya. Kalau Mac terhubung ke listrik AC dengan monitor eksternal terpasang, macOS sudah otomatis melewati clamshell sleep saat lid ditutup, tanpa perlu toggle apa pun — tapi itu hanya membantu saat di meja kerja, bukan untuk laptop yang ditutup dan ditinggal di meja samping tempat tidur.
Digabungkan, resep semalaman yang sepenuhnya gratis adalah: caffeinate -i codex sebelum Anda memulai sesi, sudo pmset -a disablesleep 1 sebelum menutup lid, dan sudo pmset -a disablesleep 0 setelah selesai. Ini berhasil. Yang tidak dilakukannya adalah mengetahui apa pun tentang kondisi Mac itu sendiri.
Panduan terkaitAlur kerja developer dengan lid tertutup untuk MacBookDi mana solusi gratis ini kehabisan batas
pmset disablesleep adalah pengaturan yang berlaku untuk seluruh mesin dan persisten, bukan sesuatu yang terbatas hanya untuk sesi malam ini. Ia tidak tahu kalau Codex sudah selesai jam 2 pagi — pengaturan itu tetap seperti terakhir Anda tinggalkan sampai ada yang mengembalikannya ke 0, termasuk lewat reboot. Lupa menjalankan perintah lanjutannya di pagi hari, dan Mac akan dengan senang hati tetap awake dengan lid tertutup sepanjang hari tanpa alasan.


Batasan yang sama berlaku untuk tool keep-awake berbasis GUI seperti Amphetamine, KeepingYouAwake, Caffeine, atau Lungo — cara yang rapi dan gratis untuk memblokir idle sleep dari menu bar alih-alih perintah terminal, dan pilihan yang bagus untuk sesi dengan lid terbuka. Semuanya berhenti di tembok yang sama dengan caffeinate: tidak menangani clamshell, tidak sadar baterai atau termal.
Yang lebih penting, baik caffeinate, tool GUI, maupun pmset sama sekali tidak tahu soal baterai atau panas. Semuanya menahan Mac tetap awake tanpa syarat. Kalau charger terlepas semalaman, caffeinate tetap mempertahankan assertion-nya sampai baterai benar-benar habis. Kalau disablesleep aktif dan lid yang tertutup itu berakhir di bawah selimut atau di dalam tas, tidak ada yang turun tangan saat suhu naik — itulah trade-off dari wake lock yang buta: dapat diandalkan, tapi tidak punya rasa kapan harus berhenti.
Celah itu — primitive yang nyata, tanpa rasa aman — adalah yang sebenarnya perlu ditutup untuk sesi semalaman.
Bagaimana LidRun menjaga Codex tetap berjalan semalaman
Untuk idle sleep, LidRun memegang assertion PreventUserIdleSystemSleep yang sama seperti caffeinate — tidak ada yang baru di sini, ini mekanisme yang sudah teruji.


Untuk lid, LidRun mengotomatisasi toggle pmset disablesleep yang sama, tapi memintanya sekali lewat prompt admin native macOS dan selalu memasangkannya: aktif saat Anda memulai sesi Closed-Lid, nonaktif lagi saat Anda menghentikannya, saat Anda keluar dari app, dan direkonsiliasi saat peluncuran berikutnya kalau ternyata pernah crash di tengah sesi — jadi tidak bisa tertinggal menggantung seperti perintah terminal yang terlupa.
Khusus untuk Codex, Auto Mode sudah menyertakan codex di watch list default-nya — tidak perlu mengetik apa pun. Ia memeriksa daftar proses setiap 10 detik; begitu codex tidak lagi berjalan, hold-nya dilepas dan Mac bebas tidur lagi sesuai timer normalnya. Itulah versi jujur dari janjinya: agent berjalan, tetap awake; agent selesai, tidur — bukan wake lock yang bertahan lebih lama dari hal yang membuatnya dipasang.
Guardrail ini yang sebenarnya jadi tambahan dibanding jalur gratis. Battery auto-stop default-nya 20% dan bisa Anda ubah, tapi ada juga batas keras — sekitar 4% — yang tetap aktif berapa pun pengaturan Anda, jadi sesi tidak bisa menguras baterai sampai nol. Soal panas, LidRun membaca suhu SMC yang sebenarnya dan CPU throttle, bukan cuma API thermal-state sistem yang kasar, menganggap Mac sedang di bawah tekanan nyata sekitar 98°C atau throttle di bawah 50%, dan mundur sekitar 100°C atau throttle di bawah 30%. Semua ini tidak mengklaim lid yang tertutup tidak bisa jadi panas semalaman — bisa saja, lid yang tertutup memang menjebak panas by design — guardrail ini ada untuk melepas hold sebelum itu berubah jadi thermal shutdown, bukan untuk menjanjikan panasnya tidak akan pernah mendekat.
Menyiapkan sesi Codex semalaman di LidRun
Nyalakan Auto Mode. Codex sudah ada di watch list secara default, jadi tidak ada yang perlu dikonfigurasi sebelum memulai sesi — jalankan Codex dan LidRun akan mendeteksinya pada scan berikutnya.


Kalau Anda akan menutup lid, aktifkan juga Closed-Lid mode bersamanya. Itulah toggle yang membuat pasangan pmset disablesleep berlaku untuk sesi ini, dan melepasnya kembali saat sesi berakhir.
Di Settings, biarkan persentase battery auto-stop dan thermal guard tetap aktif — keduanya default-nya menyala karena suatu alasan. Kalau Anda lebih suka membatasi seluruh sesi pada durasi tetap alih-alih membiarkannya terbuka, Timer mode melakukan itu sesuai jadwalnya sendiri, melepas hold saat waktunya habis, entah Codex masih berjalan atau tidak. Auto Mode dan Closed-Lid adalah bagian dari LidRun Pro; mode dasar Keep Awake, Timer, dan Charging-only — termasuk battery auto-stop — gratis tanpa batas sesi.
Kapan ini sepadan, dan kapan tidak
Kalau task Codex selesai dalam beberapa menit, semua ini tidak perlu — biarkan lid terbuka dan biarkan berjalan.
Keep-running semalaman baru pantas dipakai untuk pekerjaan yang panjang: refactor besar, sekumpulan task agent, apa pun yang mengandalkan model yang lambat atau repo besar — jenis pekerjaan yang Anda ingin selesai saat pagi tanpa harus menunggui.
Paling sepadan dinyalakan ketika alternatifnya adalah mengganjal lid tetap terbuka hanya supaya sesi bertahan sampai Anda bangun, apalagi kalau Mac sedang pakai baterai atau berada di tempat yang menjebak panas semalaman.
Checklist setup semalaman yang aman
Jaga Mac tetap tercolok ke listrik. Sesi semalaman pakai baterai tetap memungkinkan — battery auto-stop untuk baterai rendah tetap berlaku di kedua kasus — tapi listrik dari colokan menghilangkan sepenuhnya masalah baterai terkuras.
Letakkan di permukaan yang keras, rata, dan berventilasi. Lid yang tertutup memang sudah menjebak sebagian panas by design; kasur, bantal sofa, atau tas membuatnya makin buruk, dan tidak ada software yang bisa memperbaiki aliran udara yang memang tidak ada.
Biarkan guardrail tetap aktif dan biarkan sesi berakhir dengan sendirinya — entah karena Codex selesai lebih awal, baterai turun di bawah batas Anda, atau panas naik — daripada mengandalkan diri Anda terjaga untuk menghentikannya sendiri.
LidRun menjaga pekerjaan Anda tetap jalan saat layar tertutup, dengan perlindungan baterai dan suhu bawaan.
Sudah punya LidRun? Baca panduan setup-nya →
Baru kenal LidRun? Lihat harga →
Sering ditanyakan
Ya. codex ada di watch list default Auto Mode, jadi tidak ada yang perlu ditambahkan. Jalankan Codex dan Auto Mode akan menahan Mac tetap awake selama proses itu berjalan, lalu melepas hold-nya begitu proses berakhir.
caffeinate memblokir assertion idle-sleep yang sama dengan yang dipakai LidRun, dan itu benar-benar gratis — untuk sesi dengan lid terbuka, itu pilihan yang bagus. Tapi ia tidak menyentuh clamshell sleep saat lid tertutup, dan baik caffeinate maupun pmset disablesleep sama-sama tidak tahu soal baterai atau panas; keduanya menahan Mac tetap awake tanpa syarat sampai Anda menghentikannya sendiri. LidRun menambahkan penanganan clamshell plus ambang batas baterai dan termal yang melepas hold dengan sendirinya.
Lebih aman kalau guardrail aktif, Mac tercolok listrik, dan berada di permukaan berventilasi — tapi lid yang tertutup memang menjebak panas by design, jadi anggap ini sebagai pengurangan risiko, bukan jaminan. Jauhkan dari dalam tas atau di bawah selimut, dan biarkan thermal guard tetap aktif supaya sesi mundur dengan sendirinya kalau mendekati tekanan termal yang sungguhan.
Battery auto-stop default-nya 20% dan bisa Anda ubah, tapi ada juga batas keras sekitar 4% yang selalu aktif apa pun pengaturan Anda, jadi sesi tidak bisa menguras Mac sampai nol. Soal panas, LidRun menganggap tekanan yang berkelanjutan — kira-kira 98°C atau CPU throttle di bawah 50% — sebagai serius, dan mundur pada tekanan kritis yang sesungguhnya, sekitar 100°C atau throttle di bawah 30%.
LidRun akan auto-stop di bawah ambang baterai yang Anda tetapkan, jadi sesi yang panjang tidak akan sampai nol. Khusus untuk sesi semalaman, tetap tercolok listrik masih pilihan yang lebih tenang — itu menghilangkan masalah pengurasan baterai alih-alih sekadar mengelolanya.
Dengan Auto Mode, LidRun melepas wake lock begitu proses codex berakhir dan membiarkan Mac tidur lagi sesuai timer normalnya. Timer mode memberikan hasil yang sama sesuai jadwal yang Anda tetapkan, entah Codex masih berjalan atau tidak saat waktunya habis.