Di mana Claude Code menyimpan scratchpad-nya, dan mengapa ia menghilang
Setiap sesi Claude Code mengumumkan sebuah direktori scratchpad lalu tidak pernah menyebutnya lagi. Inilah path persisnya di macOS, Linux dan Windows, apa yang ada di sebelahnya, mengapa reboot atau pembersihan file sementara menghapusnya, apa yang bisa dan tidak bisa Anda konfigurasi, dan satu aturan yang kami berikan kepada tujuh agen yang menulis ke dalamnya setiap malam.
Setiap sesi Claude Code dimulai dengan satu baris yang mungkin Anda lewati begitu saja. Baris kami, malam ini, berbunyi seperti ini:
Scratchpad directory: /private/tmp/claude-501/-Users-jbchauvin-Projets-AgentsRoom/5a506305-…/scratchpad
Setelah itu CLI tidak pernah menyebutnya lagi. Tidak ada perintah yang menampilkannya, tidak ada panel yang membukanya, dan pada hari Anda mencari file CSV yang kata agen sudah ditulis di sana, foldernya mungkin sudah lenyap.
Kami menjalankan tujuh agen terjadwal di sebuah Mac mini setiap malam, dan masing-masing menulis ke folder itu. Jadi kami pergi melihat apa sebenarnya folder ini, di mana letaknya di tiap sistem, apa yang menghapusnya, dan apa yang kami perintahkan kepada agen tentangnya. Semua di bawah ini diperiksa pada Claude Code 2.1.278 tanggal 19 September 2026, dan pada issue GitHub yang dibuka orang-orang ketika mereka kehilangan pekerjaan di dalamnya. Apa yang bisa Anda konfigurasi sudah berubah sejak itu, jadi bagian tersebut diperiksa ulang pada Claude Code 2.1.314 tanggal 3 November 2026.
Apa yang Claude Code katakan kepada agen
Baris itu adalah bagian dari prompt sistem. Instruksi yang mengikutinya, di versi saat ini, mengatakan agen harus selalu memakai direktori itu untuk file sementara, yaitu hasil perantara, skrip dan keluaran yang tidak termasuk dalam proyek, alih-alih /tmp atau direktori sementara sistem lainnya, bahwa direktori itu khusus per sesi dan terisolasi dari proyek, bahwa umumnya bisa dipakai tanpa permintaan izin, dan bahwa /tmp hanya boleh dipakai kalau Anda memintanya secara eksplisit.
Bagian terakhir itulah yang berguna bagi Anda. File yang ditulis di dalam scratchpad tidak memicu dialog izin tulis, itulah sebabnya agen menaruh skrip pembantu dan ekspornya di sana alih-alih bertanya kepada Anda setiap kali. Itu juga sebabnya Anda tidak pernah ditanya, dan tidak pernah diberi tahu, ke mana file-file itu pergi.
Kalau Anda ingin path-nya di sesi yang sedang berjalan, tanyakan kepada agen. « Cetak direktori scratchpad-mu » dijawab dari prompt sistem, tanpa menjalankan apa pun.
Path-nya, sistem demi sistem
Folder ini berada di bawah direktori sementara sistem operasi, dan namanya mengodekan siapa Anda, proyek mana yang sedang Anda buka, dan sesi yang mana.
Di macOS dan Linux:
/tmp/claude-<uid>/<path proyek, garis miring diganti tanda hubung>/<id sesi>/scratchpad
Di Mac, /tmp adalah tautan ke /private/tmp, jadi folder yang sama ditampilkan sebagai /private/tmp/claude-501/…. Angkanya adalah id pengguna Anda, apa yang dicetak id -u: 501 untuk akun pertama di Mac, 1000 di sebagian besar distribusi Linux, 0 untuk root. Laporan Linux yang kami kutip di bawah menunjukkan /tmp/claude-0/, karena pipeline-nya berjalan sebagai root di dalam kontainer. Issue yang dibuka lebih awal pada 2026 menunjukkan /tmp/claude/<slug proyek>/… tanpa uid sama sekali, jadi akhiran itu ditambahkan di tengah jalan. Kalau Anda memakai build yang lebih lama, buang saja akhirannya.
Di Windows, seperti dilaporkan di Windows 11 pada Juli 2026:
%TEMP%\claude\<slug proyek>\<id sesi>\scratchpad
yang biasanya berarti C:\Users\<Anda>\AppData\Local\Temp\claude\…. Path ini diturunkan dari variabel TEMP, jadi kalau Anda mengarahkan TEMP ke tempat lain, scratchpad ikut pindah, kecuali CLAUDE_CODE_TMPDIR disetel, yang akan menang.
Slug proyek adalah direktori kerja Anda dengan setiap garis miring diganti tanda hubung. Repositori kami ada di /Users/jbchauvin/Projets/AgentsRoom, jadi slug-nya adalah -Users-jbchauvin-Projets-AgentsRoom. Satu folder per proyek, lalu satu folder per sesi di dalamnya.
Untuk menampilkan semua folder sesi yang masih Anda miliki untuk pengguna saat ini di mesin Mac atau Linux:
ls /tmp/claude-$(id -u)/
Apa yang ada di sebelahnya
Folder sesi bukan hanya scratchpad. Di mesin yang menjalankan agen malam kami, tujuh dari sembilan folder sesi hari itu berisi dua entri: scratchpad dan tasks. Folder tasks adalah tempat keluaran tugas latar belakang mendarat, perintah-perintah yang dijalankan agen secara terpisah lalu dibaca kemudian.
Ada tempat ketiga yang perlu Anda ketahui, dan letaknya sama sekali bukan di bawah direktori sementara: ~/.claude/projects/<slug proyek>/<id sesi>/tool-results/. Ketika sebuah alat mengembalikan lebih dari yang bisa ditampung konteks, Claude Code menyimpan keluaran lengkapnya di sana dan memberikan path-nya kepada agen. Malam ini, sebuah ekspor Search Console 68 KB pergi ke sana alih-alih ke scratchpad. Lokasi itu permanen, di sebelah transkrip sesi. Jadi pembagiannya: transkrip dan keluaran alat yang terlalu besar di bawah ~/.claude, yang tetap ada; skrip, file perantara dan keluaran tugas latar belakang di bawah direktori sementara, yang tidak.
Mengapa ia menghilang
Karena direktori sementara berarti « aman untuk dihapus » bagi setiap sistem operasi, dan tidak ada apa pun di Claude Code yang membantah itu.
Di Linux, systemd-tmpfiles menerapkan apa pun yang dikatakan /usr/lib/tmpfiles.d/tmp.conf. Seorang pelapor kehilangan seluruh keluaran pipeline pembuatan data selama 24 jam, termasuk vonis review, skrip dan sebuah virtualenv Python, ketika host-nya reboot: aturan di kontainer Debian itu adalah D /tmp 1777 root root 30d, yang membuat ulang /tmp dalam keadaan kosong pada setiap boot. Itu Claude Code 2.1.260, dan prompt sistem tidak mengatakan apa pun soal sifat mudah hilangnya. Periksa aturan Anda sendiri dengan cat /usr/lib/tmpfiles.d/tmp.conf: baris D mengosongkan saat boot, umur seperti 10d menghapus berdasarkan pewaktu.
Di Windows, foldernya berada di bawah %TEMP%, yang disapu Storage Sense dan Disk Cleanup. Pada Juli 2026 seseorang menjalankan pembersihan disk saat dua sesi sedang aktif dan kehilangan worktree git tempat kedua agen sedang bekerja, termasuk suntingan yang belum di-commit. Suntingan itu hanya bisa dipulihkan karena masih ada di dalam konteks percakapan.
Di macOS, /private/tmp dikosongkan saat reboot dan file lama dihapus oleh sistem. Di Mac mini kami malam ini, /private/tmp/claude-501 menyimpan sembilan folder sesi untuk proyek ini, 452 file dan 25 MB, dan tidak ada yang lebih tua dari hari ini. Apa pun yang ditinggalkan agen malam-malam sebelumnya di sana sudah hilang.
Tidak satu pun dari ini adalah bug dalam arti ada yang berperilaku salah. Foldernya persis di tempat yang dikatakan CLI, dan sistem operasi melakukan persis apa yang selalu dilakukannya pada folder sementara. Celahnya adalah prompt menyebutnya scratchpad, dan scratchpad terdengar seperti sesuatu yang Anda simpan.
Apa yang bisa Anda konfigurasi, dan apa yang tidak
Sejak Claude Code 2.1.314, diperiksa pada 3 November 2026, ada satu variabel yang memindahkan scratchpad: CLAUDE_CODE_TMPDIR. Claude Code menyusun foldernya sebagai <CLAUDE_CODE_TMPDIR>/claude-<uid>/<slug proyek>/<id sesi>/scratchpad, dengan claude sebagai ganti claude-<uid> di Windows. Tanpa variabel ini, akarnya adalah /tmp di macOS apa pun isi TMPDIR, dan direktori sementara sistem di Linux dan Windows, jadi TMPDIR di Linux dan TEMP di Windows masih memindahkannya. Setel variabel ini di shell Anda atau di blok env pada ~/.claude/settings.json: Claude Code mengabaikannya di pengaturan proyek dan pengaturan lokal. Arahkan ke folder milik Anda di luar direktori sementara, maka scratchpad akan bertahan melewati reboot dan pembersihan.
Saat kami pertama kali menulis artikel ini, pada 2.1.278, keadaannya berbeda: variabel ini ada untuk file sementara lainnya dan dilaporkan tidak memindahkan scratchpad, sedangkan permintaan untuk variabel CLAUDE_CODE_SCRATCHPAD_DIR dan untuk lokasi bawaan di bawah ~/.claude/scratchpad/ ditutup sebagai tidak direncanakan.
Claude Code juga memeriksa siapa pemilik folder itu. Jika /tmp/claude-<uid> dibuat oleh akun lain, Claude Code menolak memakainya dengan pesan Temp directory /tmp/claude-1000 is owned by uid 0, expected 1000, diikuti Set CLAUDE_CODE_TMPDIR to a directory you control, or ask an administrator to remove it. Hapus folder itu sebagai pemiliknya setelah tidak ada sesi yang memakainya, atau setel variabel tersebut.
Dua hal lagi berfungsi tanpa pengaturan apa pun. Sesi yang dilanjutkan (claude --resume) mempertahankan id sesinya, jadi ia mencari folder yang sama, dan menemukannya kalau tidak ada yang menghapusnya di antara waktu itu. Dan Anda bisa meminta agen, dengan kata-kata biasa, untuk menulis file tertentu ke tempat yang permanen. Itulah seluruh solusi kami.
Aturan yang kami berikan kepada agen malam kami
Tujuh agen mulai pukul 20:00 di mesin yang sama: SEO, produk, media sosial, seorang fixer, seorang documentalist, sebuah laporan CEO dan seorang rapporteur yang mengirimkan ringkasan malam itu lewat email pukul 22:00. Masing-masing menghasilkan banyak sekali bahan perantara: ekspor Search Console, JSON yang sudah difilter, skrip yang menghitung string di dua puluh bahasa. Semuanya masuk ke scratchpad, dengan sengaja, karena tidak satu pun termasuk dalam repositori dan tidak satu pun boleh memicu permintaan izin pada pukul dua pagi.
Aturan di setiap prompt hanya satu kalimat: scratchpad menyimpan apa yang dibutuhkan perintah berikutnya, repositori menyimpan apa yang dibutuhkan malam berikutnya. Apa pun yang ingin dibaca agen besok, laporannya, penanda run-nya, file yang sedang disuntingnya, ditulis di bawah reports/nuit/<tanggal>/ dan di-commit begitu selesai, bukan di akhir run. Agen yang terputus di tengah tugas meninggalkan laporan parsial di git dan 25 MB file kerja yang tidak akan dirindukan siapa pun.
Cermin dari aturan itu adalah pelajaran yang didapat pelapor Linux dengan cara yang pahit: jangan pernah biarkan pekerjaan panjang menumpuk satu-satunya salinannya di scratchpad. Kalau sebuah pipeline berjalan seharian, keluarannya masuk ke path yang Anda pilih, dan scratchpad menyimpan alat bantunya.
Membuka folder tanpa keluar dari aplikasi
Kalau Anda menjalankan Claude Code di dalam AgentsRoom, File > Open File (Cmd/Ctrl+O) membuka file apa pun dari folder itu di pratinjau, ditandai sebagai di luar proyek agar Anda tidak mengiranya sebagai sesuatu yang dilacak. Ini cara tercepat yang kami temukan untuk membaca ekspor yang baru saja dihasilkan agen, tanpa menempelkan path /private/tmp ke terminal.
Dan untuk menutup soal nama: Scratchpad AgentsRoom adalah hal lain. Itu editor prompt yang terintegrasi di composer agen, tempat prompt panjang ditulis dan disimpan sebagai draf per agen di antara sesi. Kata yang sama, dipilih sebelum Claude Code memakainya untuk sebuah folder. Yang satu adalah tempat Anda menulis kepada agen; yang lain adalah tempat agen menulis untuk dirinya sendiri.
Pertanyaan yang sering diajukan
Di mana scratchpad Claude Code di macOS dan Linux?
Di bawah direktori sementara sistem: /tmp/claude-<uid Anda>/<path proyek dengan garis miring diganti tanda hubung>/<id sesi>/scratchpad. Di macOS folder yang sama muncul sebagai /private/tmp/claude-501/… karena /tmp adalah tautan ke /private/tmp. Uid Anda adalah apa yang dicetak id -u: 501 untuk pengguna pertama di Mac, 1000 di sebagian besar distribusi Linux, 0 untuk root. Versi lama memakai /tmp/claude/ tanpa akhiran uid.
Di mana scratchpad Claude Code di Windows?
Di bawah folder TEMP: %TEMP%\claude\<slug proyek>\<id sesi>\scratchpad, yang biasanya berarti C:\Users\<Anda>\AppData\Local\Temp\claude\…. Mengubah variabel lingkungan TEMP memindahkannya, begitu pula CLAUDE_CODE_TMPDIR, yang lebih diutamakan daripada TEMP.
Mengapa scratchpad Claude Code saya hilang?
Karena ia berada di bawah direktori sementara, dan setiap sistem operasi menganggap direktori sementara aman untuk dihapus. Di Linux, systemd-tmpfiles menerapkan aturan yang tertulis di /usr/lib/tmpfiles.d/tmp.conf, sering kali pengosongan saat boot atau setelah sejumlah hari. macOS mengosongkan /private/tmp saat reboot dan menghapus file lama. Di Windows, Storage Sense dan Disk Cleanup menyapu %TEMP%. Tidak ada apa pun di Claude Code yang melindungi folder ini dari semua itu.
Bisakah saya mengubah tempat Claude Code menaruh scratchpad-nya?
Bisa, dengan variabel lingkungan CLAUDE_CODE_TMPDIR. Claude Code menambahkan claude-<uid Anda> di belakangnya (claude di Windows), dan scratchpad ikut pindah: diperiksa pada Claude Code 2.1.314 tanggal 3 November 2026, sedangkan di 2.1.278 variabel ini belum memindahkannya. Setel variabel ini di shell Anda atau di blok env pada ~/.claude/settings.json, karena Claude Code mengabaikannya di pengaturan proyek dan pengaturan lokal. Tanpa variabel ini, akarnya adalah /tmp di macOS apa pun isi TMPDIR, dan direktori sementara sistem di Linux (TMPDIR) dan Windows (TEMP). Arahkan ke folder milik Anda di luar direktori sementara, maka scratchpad akan bertahan melewati reboot dan pembersihan.
Mengapa Claude Code mengatakan direktori sementaranya dimiliki uid lain?
Claude Code menolak memakai folder sementara milik akun lain. Pesannya berbunyi: Temp directory /tmp/claude-1000 is owned by uid 0, expected 1000, lalu Set CLAUDE_CODE_TMPDIR to a directory you control, or ask an administrator to remove it. Folder /tmp/claude-<uid Anda> memang ada, tetapi sebuah proses yang berjalan sebagai pengguna lain membuatnya lebih dulu, di sini root, yang ber-uid 0. Ada dua perbaikan: setelah tidak ada sesi Claude Code yang memakainya, hapus folder itu sebagai pemiliknya (sudo rm -rf /tmp/claude-1000), atau setel CLAUDE_CODE_TMPDIR ke folder milik Anda. Diperiksa pada Claude Code 2.1.314.
Apakah scratchpad sama dengan ~/.claude/projects?
Tidak. ~/.claude/projects/<slug proyek>/ menyimpan transkrip sesi dan, per sesi, folder tool-results tempat keluaran alat yang terlalu besar disimpan. Lokasi itu permanen. Scratchpad di bawah direktori sementara adalah ruang kerja yang dipakai agen untuk skrip dan file perantara, dan yang itu mudah hilang.
Apakah ini Scratchpad AgentsRoom?
Kata yang sama, hal yang berbeda. Scratchpad AgentsRoom adalah editor prompt yang terintegrasi di composer agen, tempat Anda menulis dan menyimpan satu draf per agen. Scratchpad Claude Code adalah folder yang dibuat CLI untuk setiap sesi. AgentsRoom bisa membuka file apa pun dari folder itu dengan File > Open File, dan ditandai « Di luar proyek ».
Unduh AgentsRoom
Jalankan semua agen AI Anda, di semua proyek Anda, dari satu jendela.
Aplikasi pendamping: pantau agen Anda saat bepergian
Gunakan Claude, Codex, Antigravity CLI, atau penyedia AI lainnya.
Kirim bug dan permintaan langsung ke backlog publik Anda.
Lanjutkan membaca
Agen Review Seharusnya Tidak Bisa Menulis. Begini Cara Kami Memberlakukannya, CLI demi CLI.
Dalam sebuah run 17 node, agen release mengedit sebuah tes untuk mengubah suite merah menjadi hijau, lalu dua agen review menulis perbaikan yang sama dan bertabrakan. Prompt-nya bilang: review saja. Tidak bertahan. Inilah insidennya, mengapa instruksi tertulis tidak bisa memikul aturan itu, dan flag persis yang membuat Claude Code, Codex, Grok, Antigravity, dan OpenCode menolak menulis.
Baca artikelMengurangi Penggunaan Token MCP: Cara Kami Memangkas Definisi Alat Sebesar 60%
Setiap alat MCP yang bisa dipanggil agen Anda adalah blok JSON yang mungkin dibaca model di setiap permintaan. Milik kami berbobot sekitar 95.000 token. Inilah cara mengukur milik Anda dalam dua menit, apa yang kami pangkas tanpa menghapus satu alat pun, dan pemeriksaan anggaran yang mencegahnya membengkak lagi.
Baca artikelApakah Remote Control Claude Code Memakai Lebih Banyak Token? Dan Apakah Codex Punya Fitur Serupa?
Dua pertanyaan yang diketik orang di Google sejak Anthropic merilis Remote Control: apakah mengendalikan sesi Claude Code dari ponsel memakai lebih banyak token, dan apakah ada padanannya untuk Codex. Jawaban singkat: tidak, satu giliran tetap satu giliran di mana pun Anda mengetiknya, dan ya tapi baru separuhnya yang ada. Berikut apa itu Remote Control sebenarnya, cara mengukur sendiri soal token dalam empat perintah, apa yang bisa dilakukan codex remote-control hari ini, dan bagaimana remote mobile yang tidak pernah berbicara dengan penyedia mengubah hitungannya.
Baca artikel