SpyBara
Go Premium

sessions.md 2026-11-11 22:59 UTC to 2026-11-12 22:01 UTC

No changes for this document in this history range.

2026
Wed 11 22:59

Kelola sesi

Beri nama, lanjutkan, cabang, dan beralih antar percakapan Claude Code. Mencakup --continue, --resume, --from-pr, pemilih /resume, penamaan sesi, ekspor transkrip, dan tempat penyimpanan transkrip.

Sesi adalah percakapan yang disimpan yang terikat pada direktori proyek. Claude Code menyimpannya secara lokal saat Anda bekerja, sehingga Anda dapat melanjutkan dari tempat Anda berhenti, membuat cabang untuk mencoba pendekatan berbeda, atau beralih antar tugas.

Aplikasi desktop, claude.ai/code, dan ekstensi VS Code masing-masing mempertahankan daftar sesi mereka sendiri, dan aplikasi desktop juga dapat melanjutkan sesi CLI. Halaman ini mencakup CLI.

Melanjutkan sesi

Sesi disimpan secara berkelanjutan ke file transkrip lokal selama Anda bekerja, sehingga Anda dapat kembali ke salah satunya setelah keluar atau menjalankan /clear. Gunakan titik masuk berikut:

Perintah Fungsinya
claude --continue Membuka kembali sesi terbaru di direktori saat ini
claude --resume Membuka pemilih sesi
claude --resume <name> Melanjutkan sesi bernama tersebut secara langsung
claude --resume <transcript-path> Melanjutkan sesi yang tersimpan dalam file transkrip .jsonl pada path absolut tersebut
claude --from-pr <number> Membuka pemilih sesi yang difilter ke sesi yang tertaut ke pull request tersebut
/resume Beralih ke sesi lain dari dalam sesi yang aktif

Melanjutkan sesi latar belakang yang sedang berjalan

Ketika percakapan yang Anda lanjutkan dengan claude --resume atau /resume merupakan milik sesi latar belakang yang masih berjalan, Claude Code membuka sesi yang sedang berjalan itu sendiri. Dengan --bg pada baris perintah, pelanjutan tersebut menjadi dispatch latar belakang. Sebelum v2.1.285, Claude Code menolak dan meminta Anda membuka sesi dengan claude attach <id>, atau menghentikannya terlebih dahulu dengan claude stop <id>.

  • Dari shell Anda: claude --resume <session> menjalankan claude attach pada sesi tersebut di terminal yang sama alih-alih memuat transkrip itu sendiri. Prompt yang Anda berikan pada baris perintah, seperti dalam claude --resume <session> "check the tests too", dikirim terlebih dahulu ke sesi sebagai giliran berikutnya, dan Claude Code mencetak Sent your prompt to the background session (<id>); opening it… sebelum menempel. claude -p --resume <session> "prompt" yang diketik di terminal melakukan hal yang sama, sehingga -p tidak membuat proses tersebut tetap non-interaktif.

    Claude Code tidak membuka sesi ketika baris perintah memiliki salah satu dari hal berikut:

    • Input atau output yang di-pipe atau dialihkan
    • Flag yang mengonfigurasi sesi, seperti --permission-mode, --model, atau --settings
    • Flag yang membaca output, seperti --output-format json atau --json-schema
    • Flag yang membatasi atau memundurkan proses, seperti --max-turns atau --max-budget-usd

    Dengan salah satu dari hal tersebut, atau ketika agent view dimatikan, Claude Code tidak mengirim apa pun dan keluar dengan status 1, mencetak bahwa sesi sedang berjalan di latar belakang beserta perintah claude attach <id> yang membukanya, atau memberi tahu Anda untuk menemukannya di claude agents ketika ID tidak dapat ditentukan. Tambahkan --fork-session untuk melanjutkan salinan percakapan sebagai gantinya. Untuk melanjutkan percakapan itu sendiri dalam sesi milik Anda, dengan flag Anda diterapkan, jalankan claude stop <id> lalu ulangi perintah tersebut.

    Prompt yang diawali dengan / atau ! tidak dikirim, demikian pula prompt apa pun selama sesi menunggu jawaban Anda atas sebuah pertanyaan. Dalam kedua kasus, Claude Code tidak membuka sesi, dan pesannya menyertakan Your prompt was not sent to it beserta alasannya.

  • Dari dalam sesi: /resume memindahkan percakapan Anda saat ini ke latar belakang dan menempelkan terminal ini ke sesi yang sedang berjalan, sambil mencetak Opening "<title>", running in the background (<id>). Tekan ← pada prompt kosong untuk kembali ke agent view, yang juga mencantumkan percakapan yang Anda tinggalkan. Ketika percakapan saat ini tidak dapat dipindahkan ke latar belakang, misalnya karena Anda sudah menempel ke sesi latar belakang atau persistensi sesi dimatikan, /resume mencetak perintah claude attach yang perlu dijalankan sebagai gantinya.

Apa yang dipulihkan oleh sesi yang dilanjutkan

Ketika Claude Code memuat percakapan dari transkripnya, sesi yang dilanjutkan memulihkan percakapan beserta status yang tersimpan di dalamnya:

  • Riwayat percakapan: pesan, panggilan tool, dan hasilnya. Jika sesi telah di-compact, percakapan terbuka pada baris Conversation compacted. Claude melanjutkan dengan ringkasan compaction terakhir, pesan-pesan yang tidak diringkas oleh compaction tersebut, dan setiap pesan sesudahnya. Pesan-pesan yang diringkas oleh compaction terakhir tidak dimuat lagi.
  • Panggilan tool yang terputus: tool yang masih berjalan ketika proses sebelumnya berakhir, misalnya karena crash, tidak dijalankan ulang saat Anda melanjutkan.
  • Model: sesi berlanjut pada model yang digunakannya, kecuali dalam kasus-kasus di Mengatur model Anda.
  • Agent: sesi yang dimulai dengan --agent atau pengaturan agent berlanjut sebagai agent tersebut, mempertahankan pembatasan tool dan modelnya. Berikan --agent saat melanjutkan untuk memilih agent lain; untuk system prompt dalam kedua kasus, lihat Flag system prompt dalam percakapan yang dilanjutkan. Claude Code mencari agent di dua tempat: direktori asli sesi, asalkan Anda telah memercayai workspace tersebut, lalu direktori tempat Anda melanjutkan, sehingga agent yang dicakup proyek tetap dimuat ketika Anda melanjutkan dari direktori lain. Jika Claude Code tidak menemukan agent di kedua tempat tersebut, sesi dilanjutkan dengan tool default dan menampilkan peringatan yang menyebutkan nama agent.
  • Mode izin: jika Anda melanjutkan dari terminal dengan claude --continue, claude --resume <session-id>, atau claude --resume <name> ketika nama tersebut cocok dengan satu sesi, tanpa -p, Claude Code memulihkan mode izin yang digunakan sesi tersebut, kecuali dalam kasus-kasus di mode izin saat melanjutkan, yang juga mencakup pemilih sesi, /resume, dan melanjutkan dengan claude -p. Berikan --permission-mode atau --dangerously-skip-permissions untuk menimpa mode yang dipulihkan.
  • Goal aktif: goal yang masih aktif ketika sesi berakhir akan terbawa; jumlah giliran, timer, dan baseline penggunaan token-nya direset.
  • Tugas terjadwal yang dicakup sesi: tugas yang belum kedaluwarsa dipulihkan. Tugas Bash latar belakang dan tugas monitor tidak dipulihkan.
  • Pekerjaan latar belakang: subagent latar belakang, perintah Bash latar belakang, atau workflow yang berakhir bersama proses sebelumnya muncul dalam transkrip yang dilanjutkan sebagai catatan bahwa pekerjaan tersebut tidak selesai. Claude Code tidak memulai giliran dari catatan tersebut; Claude membacanya bersama prompt Anda berikutnya.

Tidak setiap flag konfigurasi dari peluncuran awal dipulihkan. Jika sesi bergantung pada --mcp-config, --settings, --plugin-dir, --fallback-model, atau direktori yang ditambahkan dengan --add-dir, berikan lagi saat Anda melanjutkan; direktori yang ditambahkan di tengah sesi dengan /add-dir juga tidak dipulihkan, meskipun pemilih sesi tetap menggunakannya untuk menemukan sesi. File pengaturan standar, seperti settings.json dan settings.local.json, dibaca ulang saat peluncuran, sehingga konfigurasi yang berada di dalamnya tidak perlu diberikan lagi. Untuk --system-prompt dan --append-system-prompt, lihat Flag system prompt dalam percakapan yang dilanjutkan.

Mode izin saat melanjutkan

Mode izin yang digunakan Claude Code untuk memulai sesi yang dilanjutkan bergantung pada cara Anda melanjutkan. Kasus-kasus di bawah ini berlaku ketika Claude Code memuat percakapan dari transkripnya; ketika Anda membuka sesi latar belakang yang masih berjalan, sesi tersebut mempertahankan mode izin yang sedang digunakannya.

  • Terminal: claude --continue, claude --resume <session-id>, atau claude --resume <name> ketika nama tersebut cocok dengan satu sesi, tanpa -p. Claude Code memulihkan mode izin yang digunakan sesi tersebut, kecuali dalam kasus-kasus di tabel. Berikan --permission-mode atau --dangerously-skip-permissions untuk menimpa mode yang dipulihkan.
  • Non-interaktif: claude -p --resume atau claude -p --continue. Claude Code memulai proses dalam mode izin yang akan digunakan oleh proses claude -p baru, kecuali bahwa sesi yang berakhir dalam plan mode dilanjutkan dalam plan mode dengan kondisi di bawah ini.
  • VS Code: panel percakapan ekstensi. Tabel hanya mencakup percakapan yang berakhir dalam plan mode; untuk sisanya, lihat melanjutkan percakapan sebelumnya.
  • Pemilih sesi saat peluncuran: sesi yang Anda pilih dari pemilih sesi, baik Anda membukanya dengan claude --resume saja, claude --from-pr, atau nama yang cocok dengan lebih dari satu sesi. Claude Code memulai sesi dalam mode izin yang akan digunakannya untuk memulai sesi baru dari baris perintah yang sama, kecuali bahwa sesi yang berakhir dalam plan mode dilanjutkan dalam plan mode. Jika Anda memberikan --permission-mode, --dangerously-skip-permissions, atau --fork-session, Claude Code tidak memulihkan plan mode. Tidak ada mode izin tersimpan lainnya yang dipulihkan.
  • /resume di dalam sesi, dengan atau tanpa argumen: percakapan yang Anda tuju berlanjut dalam mode izin yang digunakan sesi Anda saat ini, kecuali bahwa percakapan yang berakhir dalam plan mode dilanjutkan dalam plan mode, bahkan jika Anda meluncurkan Claude Code dengan --permission-mode atau --dangerously-skip-permissions. Jika percakapan tersebut sudah dibuka sebelumnya dalam proses Claude Code ini, seperti percakapan tempat Anda memulai atau percakapan yang Anda tinggalkan dengan /clear atau /resume, percakapan tersebut berlanjut dalam mode izin Anda saat ini sebagai gantinya.

Jika aturan deny menghapus tool ExitPlanMode, Claude tidak dapat menyajikan rencana untuk persetujuan, sehingga Claude Code tidak memulihkan plan mode. Sesi dimulai dalam mode izin yang akan digunakan oleh sesi baru dari baris perintah yang sama. Dengan /resume, percakapan berlanjut dalam mode izin Anda saat ini.

Memulihkan plan mode pada jalur non-interaktif dan VS Code memerlukan Claude Code v2.1.246 atau yang lebih baru. Setiap baris menyebutkan mode izin tempat sesi berakhir, jalur mana di antara terminal, non-interaktif, dan VS Code yang Anda gunakan untuk melanjutkannya, serta mode izin yang digunakan Claude Code untuk memulai sesi yang dilanjutkan.

Sesi berakhir dalam Cara Anda melanjutkan Mode izin setelah Anda melanjutkan
bypassPermissions Terminal Mode izin yang akan digunakan oleh sesi baru. Untuk melewati izin lagi, aktifkan saat peluncuran dengan salah satu flag peluncurannya atau permissions.defaultMode: "bypassPermissions" di pengaturan pengguna, --settings, atau pengaturan terkelola
plan Terminal Plan mode. Dengan --fork-session, mode izin yang akan digunakan oleh sesi baru
plan Terminal, ketika aturan deny menghapus ExitPlanMode Mode izin yang akan digunakan oleh sesi baru
auto Terminal auto, hanya ketika akun Anda masih memenuhi persyaratan auto mode
Manual Terminal Manual ketika sesi baru akan dimulai dalam auto mode dari default bawaan. Ketika defaultMode dari file pengaturan berlaku, Claude Code memulai sesi yang dilanjutkan dalam mode tersebut sebagai gantinya
plan Non-interaktif, dengan kondisi di bawah ini Plan mode
Mode apa pun Non-interaktif, dalam kasus lainnya Mode izin yang akan digunakan oleh proses claude -p baru
plan VS Code Plan mode, dengan pengecualian di halaman VS Code
Melanjutkan dalam plan mode dengan -p

Proses claude -p --resume atau claude -p --continue dilanjutkan dalam plan mode hanya ketika semua kondisi berikut terpenuhi:

  • Anda memberikan --permission-prompt-tool dan tidak memberikan --permission-prompts none, sehingga Claude Code dapat menyajikan rencana untuk persetujuan
  • Anda tidak memberikan --permission-mode maupun --dangerously-skip-permissions
  • Anda tidak memberikan --fork-session
  • Proses tidak dimulai melalui channel
  • Tidak ada aturan deny yang menghapus tool ExitPlanMode

Dialog "Resume this conversation?"

Jika Anda melihat dialog "Resume this conversation?" saat melanjutkan sesi, perkiraannya adalah porsi batas penggunaan 5 jam Anda yang akan digunakan oleh percakapan tersimpan itu sendiri. Perkiraan tersebut tidak menghitung apa yang telah Anda gunakan.

Pada paket Pro, Max, dan Ultra, dialog dapat muncul ketika Anda melanjutkan percakapan panjang setelah jeda yang lama atau pada model yang berbeda. Perkiraan penggunaan terjadi ketika Anda mengirim pesan pertama setelah Resume, bukan saat Anda memilihnya. Pilihlah berdasarkan apakah tugas Anda berikutnya masih memerlukan percakapan tersimpan:

  • Resume: terus bekerja dalam percakapan tersimpan.
  • Start a new conversation: beralih ke pekerjaan yang tidak memerlukan percakapan tersimpan. Untuk membukanya kembali nanti, jalankan /resume pada prompt. Perkiraan tersebut tidak berlaku untuk pesan pertama Anda dalam percakapan baru. Jika opsi tersebut menyatakan bahwa Claude dapat mencari percakapan ini, Anda tetap dapat merujuk pekerjaan sebelumnya dalam percakapan baru.

Tempat pemilih sesi mencari

Claude Code menyimpan sesi per direktori proyek. Secara default, pemilih sesi menampilkan:

  • Sesi dari worktree saat ini, termasuk sesi latar belakang, yang ditandai bg dalam daftar
  • Sesi yang dimulai di tempat lain yang menambahkan direktori saat ini dengan /add-dir

Gunakan Ctrl+W untuk memperluas ke semua worktree dari repositori atau Ctrl+A untuk memperluas ke setiap proyek di mesin ini.

/loop, -p, Agent SDK, dan sesi latar belakang

Sesi yang prompt pertamanya adalah perintah /loop tidak muncul di pemilih, dan claude --continue juga melewatinya. Menjalankan /loop di bagian selanjutnya dalam percakapan tidak menyembunyikan sesi tersebut.

Claude Code tidak menyertakan sesi yang dibuat dengan claude -p atau Agent SDK di pemilih sesi maupun di claude --continue. Anda tetap dapat melanjutkannya dengan memberikan ID sesinya ke claude --resume <session-id>. Ketika Anda menjalankan claude -p --continue, Claude Code menyertakan sesi -p, SDK, dan /loop.

claude --continue membuka sesi latar belakang yang telah selesai, tetapi tidak membuka sesi yang masih berjalan; membuka sesi latar belakang yang telah selesai memerlukan Claude Code v2.1.257 atau yang lebih baru. Jika percakapan terbaru Anda adalah percakapan yang Anda pindahkan ke latar belakang dan masih berjalan di sana, Claude Code keluar dengan Your most recent conversation is running in the background beserta ID sesi tersebut. Tempelkan ke sesi tersebut dari claude agents, atau jalankan claude --resume untuk memilih sesi lain.

Sesi di worktree dan proyek lain

Ketika Anda memilih sesi dari worktree lain dalam repositori yang sama, Claude Code melanjutkannya di tempat; ketika worktree milik sesi tersebut sudah tidak ada, Claude Code melanjutkannya di direktori Anda saat ini. Ketika Anda memilih sesi dari proyek yang tidak terkait, Claude Code menyalin perintah cd dan perintah melanjutkan ke clipboard Anda sebagai gantinya. Jika direktori proyek tersebut sudah tidak ada, Claude Code melanjutkan sesi di direktori Anda saat ini alih-alih menyalin perintah cd yang akan gagal.

Memindahkan sesi dengan /cd merelokasinya ke penyimpanan proyek direktori baru, sehingga sesi tersebut muncul di pemilih direktori tersebut sesudahnya.

Melanjutkan berdasarkan ID atau nama sesi

Anda dapat menjalankan claude --resume <session-id> dari direktori mana pun, sehingga Anda dapat melanjutkan sesi yang dimulai di tempat lain atau dipindahkan dengan /cd. Claude Code mencari ID dalam urutan berikut:

  1. Direktori proyek saat ini dan git worktree-nya
  2. Setiap proyek lain di mesin ini

Pencarian lintas proyek me-resolve ID hanya ketika tepat satu proyek lain menyimpan transkrip berisi pesan untuk ID tersebut, sehingga duplikat yang disalin secara manual membuat Claude Code melaporkan tidak ditemukan alih-alih melanjutkan salinan sembarang. Jika tidak ada sesi tersimpan yang cocok dengan ID tersebut, Claude Code melaporkan No conversation found with session ID: <session-id>.

Melanjutkan berdasarkan nama di-resolve di seluruh repositori saat ini dan worktree-nya. Kedua bentuk mencari kecocokan persis dan melanjutkannya secara langsung meskipun berada di worktree yang berbeda:

Perintah Kecocokan persis Nama ambigu
claude --resume <name> Melanjutkan secara langsung Membuka pemilih sesi dengan nama tersebut sudah terisi sebagai istilah pencarian
/resume <name> Melanjutkan secara langsung Melaporkan error; jalankan /resume tanpa argumen untuk membuka pemilih sesi

Beri nama pada sesi Anda

Berikan sesi nama deskriptif sehingga mudah ditemukan di pemilih sesi dan dapat dilanjutkan berdasarkan nama. Hal ini paling penting ketika Anda mengerjakan beberapa tugas secara paralel.

Kapan Cara mengatur nama
Saat startup claude -n auth-refactor
Selama sesi /rename auth-refactor. Nama juga muncul di bilah prompt
Dari pemilih sesi Sorot sesi dan tekan Ctrl+R
Saat menerima plan Menerima plan dalam plan mode memberikan sesi judul yang dihasilkan berdasarkan plan kecuali Anda telah menamainya
Dari claude.ai atau aplikasi Claude Ubah nama sesi Remote Control; Claude Code menerapkan nama yang sama di CLI. Memerlukan Claude Code v2.1.221 atau lebih baru
Dari aplikasi desktop Ubah nama sesi di aplikasi desktop

Setelah Anda memberi nama sesi melalui rute CLI atau dari claude.ai, kembali ke sesi tersebut dengan claude --resume <name> atau /resume <name>; sesi aplikasi desktop dilanjutkan di aplikasi desktop. Lihat Resume a session untuk mengetahui bagaimana perilaku resolusi nama di seluruh worktrees.

Sesi yang tidak Anda beri nama masih mendapatkan dua label yang ditetapkan Claude Code. Hanya judul yang dihasilkan yang berfungsi sebagai handle resume:

  • Nama tampilan default: sesi interaktif yang tidak pernah Anda beri nama masih mendapatkan nama tampilan default saat dimulai. Default menggabungkan nama direktori kerja dengan akhiran dua karakter, misalnya my-app-3f, dan mengidentifikasi sesi dalam daftar sesi yang berjalan, seperti agent view dan output claude agents --json. Default bukan handle resume. Jika Anda meneruskannya ke claude --resume atau /resume, Claude Code tidak menemukan sesi.

  • Judul yang dihasilkan: jika Anda tidak memberi nama sesi, Claude Code menghasilkan judul sesi untuk itu. Judul adalah ringkasan singkat dari prompt pertama Anda, ditulis oleh permintaan latar belakang ke model kecil/cepat, biasanya model kelas Haiku. Jalankan claude -p yang Anda mulai langsung dari shell atau script tidak mendapatkan satu.

    Menerima plan menggantikan judul yang dihasilkan dengan judul berdasarkan plan. Anda dapat meneruskan salah satu judul ke claude --resume atau /resume, dan Claude Code menyelesaikannya dengan cara yang sama seperti nama yang Anda atur.

Gunakan pemilih sesi

Jalankan /resume di dalam sesi, atau claude --resume tanpa argumen, untuk membuka pemilih sesi interaktif. Gunakan pintasan keyboard ini untuk menavigasi, mencari, dan memperluas daftar:

Pintasan Tindakan
↑ / ↓ atau k / j Navigasi antar sesi
→ / ← Perluas atau ciutkan sesi yang dikelompokkan
Enter Lanjutkan sesi yang disorot
1 hingga 9 Lanjutkan sesi pada posisi tersebut dalam daftar
Space Pratinjau konten sesi. Ctrl+V juga berfungsi di terminal yang tidak menangkapnya sebagai tempel
Ctrl+R Ubah nama sesi yang disorot
/ atau karakter yang dapat dicetak lainnya selain Space, j, k, atau angka Masuk mode pencarian dan filter sesi. Tempel URL pull request atau merge request GitHub, GitHub Enterprise, GitLab, atau Bitbucket untuk menemukan sesi yang membuatnya
Ctrl+A Tampilkan sesi dari semua proyek di mesin ini. Tekan lagi untuk kembali ke repositori saat ini
Ctrl+W Tampilkan sesi dari semua worktrees repositori saat ini. Tekan lagi untuk kembali ke worktree saat ini. Hanya ditampilkan di repositori multi-worktree
Ctrl+B Filter ke sesi dari cabang git saat ini. Tekan lagi untuk menampilkan semua cabang
Esc Keluar dari pemilih sesi atau mode pencarian

Setiap baris menampilkan nama sesi jika Anda menetapkan satu, jika tidak judul sesi yang dihasilkan AI, ringkasan percakapan, atau prompt pertama, bersama dengan waktu sejak aktivitas terakhir, branch git, dan ukuran file.

Sesi yang dibuat dengan /branch atau --fork-session mendapatkan ID sesi mereka sendiri dan muncul sebagai baris terpisah. Ketika pemilih menemukan lebih dari satu entri untuk sesi yang sama, sesi tersebut dikelompokkan di bawah satu baris. Tekan → untuk memperluas grup.

Jika Claude Code tidak dapat memuat sesi yang Anda pilih dari pemilih claude --resume, sesi tersebut mencetak Failed to resume the conversation dengan perintah untuk mencoba lagi, kemudian keluar dengan kode 1. Dari pemilih /resume di dalam sesi, Claude Code melaporkan kegagalan dan percakapan saat ini Anda terus berjalan.

Cabang sesi

Pencabangan membuat salinan percakapan sejauh ini dan beralih Anda ke dalamnya, meninggalkan yang asli tetap utuh. Gunakan untuk mencoba pendekatan berbeda tanpa kehilangan jalur yang Anda jalani.

Dari dalam sesi, jalankan /branch dengan nama opsional:

/branch try-streaming-approach

Jika Anda menghilangkan nama, Claude Code memberi nama cabang baru setelah prompt pertama dalam percakapan.

Dari baris perintah, gabungkan --continue atau --resume dengan --fork-session:

claude --continue --fork-session

Konfirmasi /branch mencetak dua ID sesi: cabang baru yang sekarang Anda masuki dan yang asli. Yang asli tidak berubah di disk dan tetap tersedia di pemilih sesi; kembali ke sana dengan /resume <original-name> atau dengan meneruskan ID-nya ke /resume.

/branch menyalin transkrip dan beralih proses Claude Code yang berjalan untuk menulis ke dalamnya. Perbedaan itu menentukan apa yang diwarisi cabang:

Keadaan Setelah /branch
Riwayat percakapan Disalin ke dalam cabang hingga titik Anda menjalankan /branch
Pemberian izin "Izinkan untuk sesi ini" Dibawa; cabang berjalan dalam proses yang sama, jadi hibah yang ada masih berlaku. Jika Anda melakukan fork ke proses terpisah dengan --fork-session, proses baru dimulai tanpa mereka dan Anda menyetujui ulang di sana
Subagen latar belakang dan perintah Bash latar belakang yang sedang berlangsung Terus berjalan. Output mereka muncul di cabang baru yang Anda alihkan, bukan di sesi asli
Koneksi Remote Control Tetap terhubung. Ponsel atau browser yang terhubung ke sesi mengikuti Anda ke dalam cabang dan terus menerima pesan baru di sana

Jika Anda melanjutkan sesi yang sama di dua terminal tanpa melakukan fork, pesan dari keduanya saling bersisipan menjadi satu transkrip. Untuk rewind berbasis checkpoint dalam satu sesi, lihat Checkpointing.

Kelola konteks dalam sesi

Perintah ini mengontrol apa yang ada di jendela konteks tanpa meninggalkan sesi:

  • /clear: mulai segar dengan konteks kosong. Claude Code menyimpan sesi sebelumnya; lanjutkan dengan /resume, atau, dalam proses Claude Code yang sama, dari entri sesi sebelumnya di menu rewind. Tanpa argumen, sesi baru mempertahankan nama yang Anda tetapkan dengan --name atau /rename, tetapi bukan judul sesi yang dihasilkan AI. Untuk memberi nama sesi yang Anda tinggalkan, berikan nama, seperti dalam /clear release-prep; sesi baru kemudian dimulai tanpa nama
  • /compact [instructions]: ganti riwayat dengan ringkasan, secara opsional berfokus pada apa yang Anda tentukan
  • /context: tampilkan apa yang saat ini mengonsumsi konteks

Untuk cara compaction berinteraksi dengan CLAUDE.md, skills, dan aturan, lihat panduan context window. Untuk strategi tentang kapan harus menghapus versus memadatkan, lihat Praktik terbaik.

Mengekspor dan menemukan data sesi

Jalankan /export untuk membuka menu yang memungkinkan Anda menyalin percakapan saat ini ke clipboard atau menyimpannya sebagai file teks biasa, dengan pesan dan output tool ditampilkan sebagai teks yang mudah dibaca. Berikan nama file untuk melewati menu dan menulis langsung ke file tersebut.

Mengakses percakapan dari skrip

/export menghasilkan transkrip yang telah dirender untuk dibaca oleh manusia. Antarmuka di bawah ini menghasilkan data terstruktur untuk diurai oleh skrip: hasil JSON dari sebuah eksekusi, path ke file transkrip sebuah sesi, atau aliran event secara langsung. Pilih berdasarkan apa yang memicu skrip:

  • Menjalankan Claude sekali dan menangkap hasilnya: panggil claude -p dengan --output-format json atau stream-json untuk menangkap hasil, ID sesi, penggunaan, dan biaya dari eksekusi non-interaktif sebagai JSON terstruktur.
  • Mengajukan pertanyaan ke sesi yang sudah ada: berikan ID sesi ke claude -p --resume untuk mengirim prompt lanjutan, seperti permintaan ringkasan, dan menangkap respons terstruktur.
  • Bereaksi terhadap event sesi: baca field transcript_path yang diterima sebagai input oleh hook dan perintah baris status. Hook SessionEnd dapat mengarsipkan transkrip saat sesi berakhir.
  • Menyematkan Claude dalam aplikasi TypeScript atau Python: gunakan Agent SDK untuk menerima setiap pesan secara terprogram.

Contoh di bawah ini menggunakan antarmuka kedua. Contoh ini mengirim prompt lanjutan ke sesi yang sudah ada dan membaca jawabannya dengan jq:

claude -p --resume <session-id> --output-format json "summarize what we changed" | jq -r '.result'

Lokasi penyimpanan transkrip

Secara default, Claude Code menyimpan transkrip sebagai JSONL di ~/.claude/projects/<project>/<session-id>.jsonl, dengan <project> adalah path direktori kerja Anda yang karakter non-alfanumeriknya diganti dengan -. Untuk direktori kerja yang nama hasil konversinya melebihi 200 karakter, Claude Code memotong nama tersebut menjadi 200 karakter dan menambahkan hash dari path lengkap, sehingga nama direktori tetap berada dalam batas sistem file.

Setiap baris adalah objek JSON: sebuah pesan, penggunaan atau hasil tool, catatan permintaan yang dikirim Claude Code ke model, atau entri metadata. Format entri bersifat internal bagi Claude Code dan berubah antarversi, sehingga skrip yang mengurai file ini secara langsung dapat rusak pada rilis mana pun. Untuk membangun di atas data sesi, gunakan /export atau antarmuka skrip sebagai gantinya.

Lokasi, retensi, dan perilaku penulisan dapat dikonfigurasi:

Untuk Atur Tempat
Memindahkan penyimpanan dari ~/.claude CLAUDE_CONFIG_DIR Environment variable
Memberi nama direktori <project> sendiri CLAUDE_CODE_PROJECT_DIR_NAME Environment variable
Mengubah retensi 30 hari cleanupPeriodDays settings.json
Menetapkan batas usia untuk transkrip Claude Desktop dan Cowork desktopSessionCleanupPeriodDays Pengaturan pengguna, pengaturan terkelola, atau --settings
Membatasi seberapa besar file transkrip sesi -p atau Agent SDK dapat bertambah CLAUDE_CODE_TRANSCRIPT_LOCAL_GC Environment variable
Menonaktifkan penulisan transkrip di semua mode CLAUDE_CODE_SKIP_PROMPT_HISTORY Environment variable
Menonaktifkan penulisan untuk satu eksekusi non-interaktif --no-session-persistence Flag CLI dengan claude -p

Menghapus data sesi

Transkrip kedaluwarsa sesuai aturan pembersihan retensi. Untuk menghapus transkrip proyek dan state terkait lebih cepat, jalankan claude purge. Jika Anda menghapus sesi latar belakang dengan claude rm <id>, transkripnya tetap ada di disk dan tetap tersedia melalui claude --resume.

Memberi nama direktori proyek sendiri

Secara default, Claude Code menurunkan nama <project> dari seluruh path direktori kerja. Untuk memilih nama sendiri, atur CLAUDE_CODE_PROJECT_DIR_NAME bersama dengan CLAUDE_CONFIG_DIR. Claude Code kemudian menyimpan transkrip sesi tersebut dan auto memory di bawah nama yang Anda tentukan. Ini cocok untuk host yang menyematkan Claude Code dan memberikan direktori konfigurasi tersendiri untuk setiap sesi. Memerlukan Claude Code v2.1.234 atau yang lebih baru.

Misalnya, peluncuran ini menyimpan data tenant A di bawah /srv/tenant-a dan menamai direktori proyeknya work:

CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude

Claude Code menulis transkrip sesi ke /srv/tenant-a/projects/work/ dan auto memory-nya ke /srv/tenant-a/projects/work/memory/, apa pun direktori kerjanya.

Tiga aturan berlaku saat Anda mengaturnya:

  • Atur juga CLAUDE_CONFIG_DIR: nama tersebut tidak berubah mengikuti direktori kerja, sehingga di bawah ~/.claude default, nama tersebut akan menggabungkan transkrip dan auto memory dari setiap proyek ke dalam satu direktori. Claude Code mengabaikan CLAUDE_CODE_PROJECT_DIR_NAME saat CLAUDE_CONFIG_DIR tidak diatur.
  • Gunakan 1-64 huruf, angka, tanda hubung, atau garis bawah: jangan gunakan nama perangkat Windows seperti con. Claude Code mengabaikan nilai lain selain itu dan menggunakan nama turunan.
  • Atur di lingkungan shell yang menjalankan claude: Claude Code membacanya sekali saat startup dari lingkungan tersebut, sehingga blok env dalam file pengaturan tidak dapat mengaturnya.

Setelah Anda memberi nama direktori proyek dari sebuah direktori konfigurasi, tetap luncurkan dengan nama tersebut. Jika Anda memulai Claude Code dengan CLAUDE_CONFIG_DIR yang sama tetapi tanpa CLAUDE_CODE_PROJECT_DIR_NAME, Claude Code akan kembali membaca dan menulis direktori turunan. Sesi yang disimpan di bawah nama Anda tetap ada di disk: tekan Ctrl+A di pemilih sesi untuk menampilkan daftar sesi dari setiap direktori proyek di bawah direktori konfigurasi tersebut, termasuk yang disematkan, dan dengan cara peluncuran mana pun, claude --resume <session-id> akan menemukan sesi yang disimpan di bawah salah satu nama tersebut.

Lihat juga

Halaman-halaman ini mencakup mekanik sesi dan paralelisme terkait: