Satu permintaan seperti "rapikan halaman login dan tambahkan fitur lupa kata sandi" bisa membuat agen coding menyentuh dua puluh berkas dalam beberapa menit. Kalau hasilnya jalan, bagus. Kalau aplikasinya malah tidak bisa dibuka, pertanyaannya tinggal satu: bagaimana kembali ke versi terakhir yang masih sehat?
Ada tiga lapis pengaman. Masing-masing menambal lubang yang berbeda.
Checkpoint di Claude Code: cepat, tapi terbatas
Claude Code menyimpan keadaan berkas sebelum setiap prompt yang Anda kirim. Ketik /rewind, atau tekan Esc dua kali saat kolom input kosong, lalu pilih titik tujuan. Anda bisa memulihkan kode saja, percakapan saja, atau keduanya.
Batasnya sering terlewat. Menurut dokumentasi resminya:
- Berkas yang hanya diubah lewat perintah Bash tidak terlacak dan dibiarkan apa adanya.
- Perubahan yang Anda buat sendiri di luar Claude Code, atau dari sesi lain yang berjalan bersamaan, biasanya tidak tertangkap.
- Suntingan subagen umumnya tidak ikut dipulihkan.
- Tindakan ke sistem jarak jauh, seperti database, API, dan deployment, tidak bisa di-checkpoint.
Anthropic sendiri menyebut checkpoint sebagai pemulihan cepat di tingkat sesi, bukan pengganti version control seperti Git.
Ingin mendalaminya lebih terstruktur? Taalenta punya kelas Buat Website dan Aplikasi Sendiri Tanpa Coding dengan Claude Code dan Codex.
Codex: sandbox, persetujuan, dan panel review
Codex dari OpenAI menaruh rem di depan. Lewat mode sandbox (read-only, workspace-write, danger-full-access) dan kebijakan persetujuan, Anda membatasi gerak agen sebelum ia mulai bekerja. Untuk folder yang sudah memakai Git, dokumentasinya menyarankan preset Auto: agen boleh menyunting di folder kerja, tapi bertanya dulu sebelum menyentuh berkas di luar folder itu atau memakai jaringan. Untuk folder tanpa version control, sarannya read-only.
Di aplikasi Codex, panel review menampilkan diff dari repositori Git Anda, termasuk perubahan yang bukan buatan Codex. Anda bisa menerima sebagian lewat stage, atau membuang per berkas, bahkan per potongan kode, lewat revert. Panel ini hanya bekerja kalau proyek Anda sudah berupa repositori Git.
Dokumentasi Codex juga terang-terangan: Codex paling cocok dengan alur kerja version control, dan Anda disarankan sering commit agar bisa mundur sedikit demi sedikit.
Git: pengaman yang sebenarnya
Dua alat di atas sama-sama bersandar pada Git. Kebiasaan dasarnya tidak rumit:
- Commit sebelum permintaan besar. Jalankan
git statusuntuk memastikan tidak ada perubahan menggantung, lalugit add .dangit commit -m "sebelum fitur lupa kata sandi". - Lihat apa saja yang berubah.
git diffmenunjukkan perubahan yang belum di-stage, sedangkangit diff HEADmenunjukkan semua perubahan sejak commit terakhir. Kalau Anda belum terbiasa membacanya, minta agen menjelaskan diff itu dengan bahasa sederhana. - Mundur dengan aman.
git revertmembatalkan efek commit lama dengan membuat commit baru, jadi riwayat Anda tetap utuh. Untuk membuang semua perubahan yang belum di-commit, dokumentasi Git menunjukgit reset --hard. Hati-hati, perintah ini menghapus perubahan tersebut tanpa sisa.
Kode bisa mundur, data tidak
Memulihkan berkas tidak memulihkan isi database. Kalau agen sudah menjalankan migrasi yang menghapus kolom, data di kolom itu ikut hilang. Rewind maupun git revert tidak akan mengembalikannya.
Untuk database yang sudah di-deploy, Supabase menyarankan jalan maju: kembalikan berkas skema, lalu buat migrasi baru berisi kebalikannya. Supabase juga mengingatkan bahwa SQL pembalik semacam ini biasanya destruktif, jadi wajib diperiksa teliti, dan versi yang sudah di produksi jangan di-reset. Dokumentasi Prisma memberi pesan serupa: kolom yang di-drop kehilangan isinya untuk selamanya, jadi salin datanya dulu kalau masih diperlukan.
Daftar cek sebelum menekan Enter
- Proyek sudah berupa repositori Git dan
git statusbersih. - Ada commit berpesan jelas tepat sebelum permintaan besar.
- Permintaan dipecah kecil, satu fitur satu commit.
- Anda tahu kapan agen memakai Bash, subagen, atau menyentuh database. Bagian itu tidak tertutup checkpoint.
- Berkas migrasi dibaca dulu sebelum dijalankan, dan data penting sudah disalin.
- Diff sudah ditinjau sebelum commit berikutnya.
Checkpoint dan panel review mempercepat langkah mundur. Git yang memastikan Anda selalu punya tempat untuk kembali.
Sumber
- Checkpointing, Claude Code Docs (Anthropic): https://code.claude.com/docs/en/checkpointing
- How Claude Code works, Claude Code Docs (Anthropic): https://code.claude.com/docs/en/how-claude-code-works
- Agent approvals & security, OpenAI Codex Docs: https://developers.openai.com/codex/agent-approvals-security
- Review, OpenAI Codex Docs: https://developers.openai.com/codex/app/review
- git-diff Documentation, Git: https://git-scm.com/docs/git-diff
- git-revert Documentation, Git: https://git-scm.com/docs/git-revert
- Declarative database schemas, Supabase Docs: https://supabase.com/docs/guides/local-development/declarative-database-schemas
- Rollbacks and recovery in Prisma ORM, Prisma Docs: https://www.prisma.io/docs/orm/migrations/rollbacks-and-recovery