Blog

Cara Menjalankan Claude Code dan Codex Semalaman melalui /goal pada 2026: Mode Otonom 14 Jam

Markdown

Perintah /goal di Claude Code 2.1.139 dan Codex CLI menjalankan agen AI secara otonom selama berjam-jam. Saya menjelaskan penyiapan, contoh nyata, dan berapa banyak token yang dibutuhkan.

Baca artikel lengkap

Poin utama

Perintah /goal muncul di Claude Code 2.1.139 (11 Mei 2026) dan Codex CLI 0.128.0 (30 April 2026, stabil sejak 21 Mei). Anda menetapkan kriteria “selesai” sekali, lalu agen menjalani siklus perencanaan, tindakan, dan verifikasi sendiri sampai kriteria terpenuhi atau tokennya habis. OpenAI secara terbuka menunjukkan proses selama 25 jam yang menggunakan 13 juta token. Mode ini cocok untuk migrasi, benchmark, dan refaktor dengan kriteria yang terukur. Mode ini tidak cocok untuk tugas UI, basis data produksi, atau permintaan samar seperti “buat lebih baik.”

Informasi tentang penggunaan Ailoot tersedia dalam dokumentasi.

Apa Itu /goal dan Mengapa Muncul pada 2026?

Poin utama

Sebelum /goal, setiap giliran agen memerlukan tindakan manual “lanjutkan.” Agen membuka file, membacanya, menulis sesuatu, berhenti, lalu menunggu. Perintah /goal menetapkan kriteria penyelesaian sekali—agen memutuskan sendiri kapan tugas selesai dan tidak mengembalikan kendali sampai tugas itu tuntas.

Situasi yang kita semua alami sebelum April 2026: saya memberi Claude tugas, “migrasikan proyek dari Pydantic v1 ke v2.” Agen mulai bekerja, berhenti setelah 30 detik, saya melihat hasilnya, menulis “lanjutkan,” agen mengambil langkah berikutnya, berhenti, lalu saya menulis “lanjutkan” lagi. Untuk migrasi besar, itu berarti 200–300 kali menulis “lanjutkan” secara manual, dan saya pada dasarnya mengawasi agen alih-alih menulis kode lain secara paralel.

Analisis OpenAI menyimpulkan bahwa masalahnya bukan “kebodohan” model, melainkan arsitektur loop-nya. Model tidak tahu kapan harus berhenti, jadi model mengerem di setiap giliran. Berikan kriteria “selesai”, dan model akan memutuskan sendiri.

Begitulah /goal muncul—mekanisme yang dibangun ke dalam harness, bukan model.

Pernyataan itu disampaikan di konferensi Code with Claude di London pada 19–20 Mei 2026. Pernyataan tersebut menggambarkan apa yang benar-benar terjadi pada bulan setelah /goal diluncurkan di kedua alat itu.

Bagaimana Cara Menyiapkan Mode Goal di Claude Code?

Poin utama

Claude Code 2.1.139 dirilis pada 11 Mei 2026 dengan perintah /goal. Model kecil (Haiku secara default) memeriksa kriteria setelah setiap giliran. Jika kriteria belum terpenuhi, Claude mengambil giliran lagi. Kriteria dapat memiliki panjang hingga 4.000 karakter, dan hanya ada satu goal per sesi.

Contoh minimal dari dokumentasi resmi Anthropic:

claude -p "/goal CHANGELOG.md has an entry for every PR merged this week"

Perintah ini meluncurkan agen di latar belakang dengan satu goal. Claude menemukan PR, memeriksanya terhadap CHANGELOG.md, menambahkan baris yang belum ada, lalu berhenti ketika kriteria terpenuhi.

Dalam mode interaktif, cukup ketik /goal diikuti kondisinya:

/goal all pytest tests pass and mypy strict reports zero errors

Langkah Claude berikutnya:

  • Setelah setiap giliran, model cepat yang terpisah (Haiku secara default) menerima kondisi saat ini dan riwayat percakapan
  • Model ini menjawab “ya” atau “tidak” dengan alasan singkat
  • Jika jawabannya “tidak”, Claude otomatis mengambil giliran berikutnya tanpa mengembalikan kendali kepada Anda
  • Jika jawabannya “ya”, goal dihapus dan kendali dikembalikan kepada Anda

Setelah setiap giliran, model kecil dan cepat memeriksa apakah kondisi telah terpenuhi. Jika belum, Claude memulai giliran berikutnya tanpa mengembalikan kendali kepada Anda.

— Dokumentasi resmi Claude Code, https://code.claude.com/docs/en/goal

Batasan ketat yang biasanya baru diketahui setelah Anda mengalaminya:

  • /goal hanya berfungsi di direktori kerja yang dialog kepercayaannya telah disetujui. Jika Anda menggunakan mesin baru dan Claude belum mengingat direktori itu, perintah akan gagal
  • Dalam pengaturan perusahaan dengan disableAllHooks atau allowManagedHooksOnly, perintah ini tidak tersedia
  • Kriteria dapat memiliki panjang hingga 4.000 karakter
  • Hanya satu goal yang dapat aktif per sesi. /goal baru akan mereset goal lama
  • Dengan --resume, kondisi dipertahankan, tetapi penghitung giliran, waktu, dan token direset

Perintah kontrol:

  • /goal tanpa argumen—menampilkan status saat ini
  • /goal clear (atau stop, off, reset, none, cancel)—menghapus goal

Menurut Anthropic, biaya evaluator “biasanya dapat diabaikan dibandingkan biaya giliran utama.” Haiku mengevaluasi kriteria dan teks percakapan tanpa memanggil alat, sehingga pemeriksaannya murah; bagian yang mahal adalah giliran model utama.

Bagaimana Cara Menyiapkan /goal di Codex CLI?

Poin utama

Codex CLI 0.128.0 menambahkan /goal pada 30 April 2026 sebagai fitur eksperimental. Pada 21 Mei, mode ini menjadi stabil dalam rilis 26.519 / npm 0.133.0. Mode ini bekerja melalui dua templat prompt—continuation.md (“lanjutkan”) dan budget_limit.md (“berhenti”). Goal terikat pada thread dan bertahan setelah dimulai ulang.

Perintahnya sama seperti di Claude:

codex
> /goal all vitest tests pass and there are no eslint errors

Codex menawarkan lebih banyak kontrol goal:

PerintahFungsinya
/goal conditionmenetapkan goal
/goalmelihat status
/goal pausemenjeda
/goal resumemelanjutkan
/goal editmengubah kondisi (dengan GA)
/goal clearmenghapus goal

Perbedaan utamanya dari Claude adalah Codex sendiri yang memeriksa apakah tugas sudah “selesai”, bukan model terpisah. Setelah setiap giliran, Codex otomatis menyisipkan templat continuation.md dari repositori openai/codex ke dalam konteks. Terjemahan harfiah:

“Terus bekerja menuju goal thread yang aktif. Jangan mengulangi pekerjaan yang sudah selesai. Pilih tindakan konkret berikutnya menuju goal. Tandai goal tercapai hanya ketika audit menunjukkan bahwa goal benar-benar telah terpenuhi dan tidak ada pekerjaan wajib yang tersisa.”

Saat token mendekati batas, templat kedua—budget_limit.md—disisipkan:

“Goal telah mencapai batas tokennya. Jangan memulai pekerjaan substansial baru. Selesaikan giliran ini sesegera mungkin: rangkum kemajuan yang berguna, identifikasi pekerjaan dan hambatan yang tersisa, lalu berikan langkah berikutnya yang jelas kepada pengguna.”

Logikanya sama: “jangan berbohong tentang apa yang sudah Anda lakukan.” Continuation mengharuskan pekerjaan diteruskan hanya jika goal benar-benar belum tercapai. Budget_limit mengharuskan berhenti, tetapi menjelaskan dengan jujur apa yang masih tersisa.

Berbeda dari Claude, Codex mengikat goal ke thread, bukan sesi. Misalnya, Anda dapat menutup terminal lalu membukanya kembali pada pagi hari, dan /goal resume melanjutkan goal yang sama dengan fakta yang sama di memori. Ini berguna untuk proses yang Anda bagi menjadi beberapa bagian sesuai jadwal sendiri.

Apa Perbedaan /goal di Claude Code dan /goal di Codex?

Poin utama

Claude memisahkan penulis dan penilai: model utama menulis kode, lalu model kecil yang terpisah menilai. Codex adalah satu agen yang memeriksa pekerjaannya sendiri—agen mengingatkan dirinya, “jangan berbohong tentang apa yang sudah Anda lakukan.” Arsitekturnya berbeda, tetapi risiko terjebak dalam loop tetap sama.

Ini adalah celah yang paling sering muncul dalam perbandingan, jadi mari kita lihat secara terperinci.

AspekClaude Code /goalCodex /goal
Rilisv2.1.139, 11 Mei 2026v0.128.0, 30 April 2026 (eksperimental) → v0.133.0 / 26.519, 21 Mei 2026 (stabil)
Cakupan goalSesiThread (bertahan setelah dimulai ulang)
Kontrolset, clear (+ alias)set, view, pause, resume, edit, clear
Siapa yang memeriksa apakah tugas sudah “selesai”Model terpisah (Haiku secara default)Agen yang sama, melalui prompt yang disisipkan
Akses evaluator ke fileTidak; evaluator hanya menilai berdasarkan teks percakapanYa; evaluator dapat memeriksa file, tes, dan log
BatasDalam teks kondisi: “atau berhenti setelah 20 giliran”Batas token bawaan + penyisipan budget_limit.md otomatis
Batas pengeluaran kerasTidak ada; hanya batas langgananTidak ada; hanya batas langganan
Panjang kondisiHingga 4.000 karakterTidak ditentukan
Tempat fitur berfungsiMode interaktif, -p, aplikasi desktop, Remote ControlAplikasi, ekstensi IDE, CLI, klien ACP

Perbedaan konseptualnya adalah Claude memperlakukan loop sebagai kontrak kualitas (evaluator eksternal), sedangkan Codex memperlakukannya sebagai mekanisme eksekusi (agen mengelola dirinya sendiri).

Dalam praktiknya, ini berarti: jika Anda ingin kriteria “selesai” dinilai secara netral, pilih Claude. Jika Anda ingin agen dapat memeriksa file dan log saat mengevaluasi, pilih Codex.

Pelajari lebih lanjut tentang alat tersebut dalam panduan Codex vs Claude Code.

Contoh Nyata: Migrasi dari Pydantic v1 ke v2 dalam 31 Jam

Poin utama

Codex /goal menyelesaikan migrasi 14.000 baris layanan internal dari Pydantic v1 ke v2 dalam 31 jam waktu nyata, yang dibagi ke dalam empat sesi. Biayanya sekitar $44 menggunakan gpt-5.3-codex.

Tugasnya ditetapkan sebagai berikut: “migrasikan dari Pydantic v1 ke v2, semua tes pytest harus lulus, dan mypy strict harus melaporkan nol kesalahan.”

Yang terjadi:

  • Sesi 1 (8 jam)—Codex menganalisis impor, menulis ulang deklarasi BaseModel, dan menyiapkan mypy
  • Sesi 2 (10 jam)—menulis ulang validator dan merusak sekitar 200 tes
  • Sesi 3 (7 jam)—memperbaiki tes dan menemukan dependensi sirkular
  • Sesi 4 (6 jam)—menangani kesalahan mypy dan regresi yang tersisa

Biaya token:

“Total waktu di jam: sekitar 31 jam dalam empat sesi. Total biaya token Codex dengan tarif gpt-5.3-codex: sekitar $44.”

Biayanya didominasi token keluaran gpt-5.3-codex dengan tarif $14 per juta. Artinya, 31 jam kerja otonom biayanya kira-kira setara dengan langganan ChatGPT Plus selama berminggu-minggu.

Yang tidak dilakukan agen dengan sendirinya:

  • Agen tidak menulis dokumentasi migrasi untuk tim (Codex tidak memahami bahwa hal itu termasuk bagian dari “migrasi”)
  • Agen tidak memperbarui file konfigurasi untuk penerbitan dengan versi Pydantic yang baru
  • Agen melewatkan satu regresi produksi, yang baru ditemukan sehari kemudian

Dengan kata lain, /goal mengerjakan 95% pekerjaan; 5% sisanya tetap harus dilakukan secara manual. Itu normal untuk generasi saat ini, dan bukan alasan untuk tidak menggunakannya.

14 Jam Menjalankan Driver macOS Semalaman

Tugas yang Cocok untuk Proses Malam Panjang

Poin utama

Driver sebagai kategori tugas tidak cocok untuk pekerjaan interaktif, tetapi sangat sesuai untuk loop jangka panjang.

Jenis tugas yang memberikan peningkatan terbesar dengan pendekatan ini:

  • Pekerjaan tingkat rendah ketika iterasi dan pemeriksaan memakan waktu beberapa menit (kompilasi, menjalankan tes)
  • Migrasi dengan kriteria formal yang jelas (tipe, tes, lint)
  • Benchmark dan optimasi dengan hasil yang dapat diukur
  • Dokumentasi dan changelog dengan struktur yang jelas

Claude /goal dapat melakukan hal yang sama dengan baik, tetapi Codex lebih sering dipilih untuk driver karena dapat memeriksa file dan log sendiri, alih-alih mengandalkan penilai eksternal.

Berapa Biayanya, dan Bagaimana Cara Menghindari Kehabisan Token Semalaman?

Poin utama

/goal tidak memiliki batas atas pengeluaran keras—hanya batas paket Anda. Satu jam nyata Codex berbiaya sekitar $1.50–$3 dengan gpt-5.3-codex. Claude lebih mahal untuk dijalankan dan lebih murah untuk dievaluasi. Satu-satunya perlindungan adalah menulis “atau berhenti setelah N giliran” langsung dalam kondisinya.

Angka dari laporan publik:

ProsesDurasiTokenBiaya
Demo alat desain OpenAI25 jam13M(proses internal)
Pydantic v1→v231 jam, 4 sesi~3.1M keluaran~$44
Sistem wawancara suaratotal 6 jam 44 menit (41 menit komputasi)6.8 juta input, 94% dalam cache-
Uji asap font5 menit188,832kurang dari 5% kuota mingguan

Hal utama yang perlu dipahami: baik Claude Code maupun Codex tidak menyediakan batas keras “hentikan pengeluaran pada $N”. Ada tiga perlindungan:

  1. Batas langganan—Pro, Max, atau Enterprise. Pada paket Max Anthropic ($100/bulan), proses semalaman selama 14 jam masih muat dalam kuota mingguan dan menyisakan ruang
  2. Batas teks dalam kondisi—tulis “atau berhenti setelah 20 giliran” langsung di /goal. Penilai Claude akan membacanya dan menutup goal
  3. Batas token di Codex—mekanisme bawaan yang menyisipkan budget_limit.md ketika token habis

Yang menaikkan tagihan semalaman:

  • Kriteria samar seperti “buat lebih praktis”—agen tidak akan pernah berhenti, karena evaluator tidak tahu arti “lebih baik”
  • Akses ke API eksternal tanpa stub—setiap percobaan ulang memerlukan token
  • Konteks panjang—setelah 6.7M token, pemadatan konteks dimulai dan sebagian memori hilang

Pelajari lebih lanjut tentang penghematan biaya dalam panduan ke mana perginya token Claude Code dan cara agar tidak menghabiskan batas Anda.

Kapan TIDAK Menjalankan /goal: 5 Situasi

Poin utama

Kriteria samar seperti “buat terlihat bagus”, penyuntingan satu baris, basis data produksi dengan data pengguna, perubahan yang kritis bagi keamanan, dan tugas dengan dependensi eksternal yang tidak jelas. Dalam kelima situasi tersebut, agen akan terjebak dalam loop atau menghabiskan token tanpa hasil.

Dokumentasi OpenAI secara eksplisit menyebutkan apa yang TIDAK boleh dilakukan:

  1. Penyuntingan satu baris—menjalankan /goal untuk mengganti nama variabel lebih mahal daripada melakukannya secara manual
  2. Goal samar—“tingkatkan performa,” “buat kode lebih bersih,” “buat lebih praktis.” Evaluator tidak memiliki kriteria, sehingga agen akan berputar tanpa henti
  3. Basis data produksi dengan data pengguna—agen dapat merusak migrasi, dan memulihkan dari cadangan biayanya lebih besar daripada penghematan apa pun
  4. Perubahan keamanan—autentikasi, enkripsi, pemrosesan pembayaran. Seseorang perlu meninjau setiap commit di sini
  5. API eksternal tanpa stub—setiap kegagalan jaringan menghabiskan token dan berada di luar kendali Anda

Apa yang Harus Dilakukan Jika Agen Terjebak?

Poin utama

Tanda loop adalah ketika agen mengedit bagian yang sama selama 3–4 giliran lalu mengembalikannya seperti semula. Hentikan dengan Ctrl+C, periksa log, lalu perketat kriteria atau persempit tugas menjadi satu bagian. Di Claude, /goal clear membantu; di Codex, gunakan /goal pause lalu edit kondisinya.

Cara cepat mengenali loop:

  • Agen menyentuh file yang sama selama 3+ giliran dan mengembalikannya ke kondisi semula
  • Kesalahan yang sama muncul berulang kali di log, meskipun agen sudah menanggapinya
  • Menurut Anda kondisinya sudah terpenuhi, tetapi agen mengatakan “belum terpenuhi”
  • Penggunaan token per giliran meningkat, tetapi kode tidak mengalami kemajuan

Langkah berikutnya:

  • Di Claude Code: /goal clear, lalu buat kondisinya lebih spesifik
  • Di Codex: /goal pause, periksa thread saat ini, edit kondisinya dengan /goal edit, lalu /goal resume
  • Di keduanya: pastikan kriterianya memang dapat diverifikasi (sebuah perintah mengembalikan kode keluar 0 atau menghasilkan keluaran tertentu)

Sering kali penyebab loop adalah tugasnya sendiri, bukan agen. Kondisi “semua tes lulus” mengasumsikan bahwa tes memang dapat lulus sejak awal. Jika ada masalah arsitektur mendalam dalam kode, agen akan terus berputar di sekitar gejalanya.

Kriteria “Selesai”: Disiplin Tugas untuk /goal

Poin utama

Kriteria yang baik adalah perintah yang mengembalikan kode keluar 0 atau keluaran tertentu. “Semua tes lulus” bisa digunakan. “Kodenya lebih bersih” tidak bisa. Sebaiknya gabungkan pemeriksaan formal dengan metrik terukur—misalnya, tes ditambah cakupan minimum.

OpenAI menyatakan aturan ini dengan jelas dalam Codex Cookbook resminya:

Sebuah goal tidak dianggap selesai hanya karena model menganggapnya demikian. Goal selesai hanya jika hasilnya telah diperiksa terhadap file, tes, log, benchmark, atau artefak konkret lainnya.

— OpenAI Codex Cookbook, Menggunakan Goals di Codex, https://developers.openai.com/cookbook/examples/codex/using_goals_in_codex

Templat kriteria yang benar-benar berfungsi:

Jenis kriteriaCara merumuskannya
Tes“pytest tests/ mengembalikan kode keluar 0 dan cakupan setidaknya 80%”
Tipe“mypy strict melaporkan nol kesalahan pada src/”
Lint“eslint . mengembalikan kode keluar 0 pada semua file yang berubah”
Build“npm run build berhasil diselesaikan tanpa kesalahan TypeScript”
Benchmark“k6 run perf test menunjukkan p95 di bawah 200 ms”
Diff“git diff hanya menunjukkan perubahan pada file X, Y, Z”
Gabungan“pytest lulus DAN mypy strict melaporkan nol kesalahan DAN ruff check lulus”

Baris Combo menggunakan gabungan: tes ditambah mypy ditambah lint. Jika bahkan satu pemeriksaan masih gagal, goal belum ditutup. Evaluator tidak memiliki kesempatan untuk mengakali hasilnya.

Pola anti:

  • “Kodenya lebih baik”
  • “Kegunaan telah meningkat”
  • “Performa telah meningkat”
  • “Dokumentasi sudah lengkap”

Perbedaan antara “berfungsi” dan “tidak berfungsi” adalah keterverifikasian. Jika sebuah kriteria tidak dapat diperiksa dengan perintah, kriteria itu sama sekali tidak dapat diperiksa. Inilah juga maksud OpenAI dengan “koherensi jangka panjang”: agen dapat berpikir lama, tetapi agen tidak dapat memutuskan sendiri apa yang dianggap “cukup baik.”

Anda dapat menguji gagasan “satu prompt—satu hasil” pada proyek nyata: tetapkan /goal, rumuskan kriteria, jalankan, lalu analisis apa yang salah.

Kenali Ailoot.

Rincian selengkapnya

Pertanyaan tentang Cara Menjalankan Claude Code dan Codex Semalaman melalui /goal pada 2026: Mode Otonom 14 Jam

Apa yang membuat kriteria penyelesaian /goal berguna?

Gunakan hasil yang dapat diperiksa: sebutkan pengujian, pemeriksaan tipe, build, atau benchmark beserta hasil yang diwajibkan. Gabungkan pemeriksaan wajib secara eksplisit dan sertakan cakupan file yang diizinkan; “buat lebih baik” tidak memberi titik berhenti terukur kepada agen.

Apa yang dilakukan ketika agen mengulang edit gagal yang sama?

Interupsi proses dan periksa log. Jika agen terus mengubah dan mengembalikan file yang sama, persempit tugas atau buat kriterianya lebih spesifik; pastikan pemeriksaan yang diwajibkan benar-benar dapat lolos sebelum melanjutkan.

Semua artikel