Anthropic meluncurkan fitur eksperimen Cross-session messaging untuk Claude Code, yang memungkinkan sesi yang berbeda saling mengirim pesan secara langsung. Fitur ini tidak mentransmisikan konteks lengkap, tetapi hanya hasil tugas dan informasi dependensi, yang diimplementasikan melalui dua alat internal: ListAgents dan SendMessage. Setiap sesi lokal terdaftar di disk dan terikat pada Inbox Socket; pesan lokal dikirim langsung melalui Socket, sementara pesan lintas mesin dikirim melalui Server Anthropic. Pesan memicu Turn baru saat sesi tidak aktif, dan dibaca selama jeda antar Tool Call dalam Turn aktif. Penerima membedakan pesan lintas sesi dari User Message, tidak dapat menggantikan otorisasi pengguna, dan menyediakan tiga mode kontrol masuk: accept/hold/refuse. Fitur ini berintegrasi dengan kemampuan yang sudah ada seperti Resume Session, Agent Teams, dan Worktree, memberikan lapisan koordinasi antar sesi untuk Claude Code.Penulis artikel, sumber: Leifengwang
Dalam beberapa hari ini, Anthropic menambahkan kemampuan eksperimental baru ke Claude Code: Cross-session messaging, yaitu komunikasi pesan lintas Session.
Secara sederhana, ini memungkinkan beberapa sesi Claude Code yang berjalan secara bersamaan untuk saling mengirim pesan.
Misalnya Anda membuka 3 sesi Claude Code: satu untuk database, satu untuk API backend, dan satu untuk pengujian. Sebelumnya, ketiga sesi ini meskipun dapat bekerja secara paralel, tidak saling mengetahui sejauh mana kemajuan masing-masing. Setelah sesi database mengubah Schema, pengembang biasanya harus beralih ke terminal lain secara manual untuk memberi tahu sesi backend tentang perubahan tersebut.
Setelah pesan lintas sesi ditambahkan, langkah ini dapat langsung diselesaikan oleh Claude. Sesi database dapat memberi tahu sesi backend tentang bidang mana yang berubah, dan sesi pengujian yang menemukan masalah regresi antarmuka juga dapat mengirimkan hasilnya ke sesi yang sedang memodifikasi kode terkait. Claude dapat menentukan sendiri kapan perlu memberi tahu sesi lain, atau dapat menghubungi sesi tertentu sesuai permintaan pengembang.
Untuk memahami apa yang secara spesifik dilakukannya, ikuti jalur lengkap sebuah pesan: apa yang dikirimkan, bagaimana cara menemukan tujuannya, kapan pesan masuk ke Claude, dan mengapa penerima tidak bisa langsung melakukannya.

01
Pesan lintas sesi tidak mengubah isolasi sesi asli Claude Code.
Saat Session A mengirim pesan ke Session B, tidak mengirimkan Riwayat Percakapan, file yang telah dibaca, atau seluruh Context Window secara bersamaan. Kebijakan resmi menyatakan bahwa yang dilewatkan antar Session adalah teks. Jika Anda perlu memindahkan seluruh percakapan dan konteks ke perangkat lain, sebaiknya Resume Session asli, bukan menggunakan pesan lintas Session.
Ini menentukan cara kerja sama antar beberapa Claude.
Misalnya, sesi database membaca puluhan file dan mencoba beberapa solusi untuk menyelesaikan Migration, dan akhirnya memutuskan bahwa satu bidang perlu diubah. Sesi backend tidak perlu mengetahui seluruh proses analisis sebelumnya, cukup menerima perubahan akhir dan bagaimana perubahan tersebut memengaruhi API-nya.
Oleh karena itu, pesan lintas sesi mengirimkan hasil tugas dan informasi ketergantungan, bukan memori kerja lengkap.

Manfaatnya adalah informasi lokal yang dihasilkan dari tugas berbeda tidak akan terus-menerus membanjiri Session lain. Detail yang terkait database dapat tetap berada di Session database, proses pengujian dapat tetap berada di Session pengujian, dan hanya ketika perubahan tertentu mulai memengaruhi tugas lain, informasi terkait akan melewati batas Session.
Ini merupakan pendekatan berbeda dari "semua Agent berbagi Context besar yang sama". Cross-session messaging memilih untuk menjaga Session tetap terpisah, lalu secara eksplisit menyinkronkan status yang diperlukan ketika tugas saling bergantung.
Karena pesan yang dikirimkan adalah pesan yang jelas, pertanyaan berikutnya adalah: Bagaimana Session A menemukan Session B?
02 Harus terlebih dahulu menemukan sesi lain
Claude Code menambahkan saluran komunikasi sendiri untuk sesi yang mendukung pesan lintas-sesi.
Setiap Session lokal akan mendaftarkan informasi terkait ke disk, sekaligus mengikatkan Inbox Socket. Claude dapat mencari Session yang dapat dihubungi saat ini melalui ListAgents, lalu mengirim pesan ke tujuan tertentu melalui SendMessage.
Pengguna tidak perlu mengoperasikan alat-alat internal ini sendiri, cukup beri tahu Claude ingin menghubungi Session mana, atau biarkan Claude secara aktif memberi tahu pihak terkait ketika tugas menghasilkan ketergantungan.

Nama sesi juga mulai terlibat dalam pencarian alamat. Claude dapat mencari target berdasarkan nama; jika nama ganda, sistem akan menambahkan identifikasi singkat untuk membedakannya, sekaligus menampilkan Working Directory, membantu menentukan setiap sesi sedang menangani proyek atau direktori mana.
Setelah target ditemukan, pesan lokal langsung dikirim melalui Socket sesi yang sesuai, tanpa melewati Anthropic Server. Sesi di mesin lain atau di Claude Code Web akan berkomunikasi melalui koneksi Anthropic Server dan Remote Control terkait.

Mekanisme penemuan ini juga menentukan batas komunikasi lokal.
Claude Code perlu membaca informasi pendaftaran yang ditulis ke disk oleh sesi lain, sehingga dua Claude bahkan jika berjalan secara fisik pada komputer yang sama, tetap tidak dapat saling menemukan jika sistem file mereka terisolasi. Kasus khasnya adalah Host dan Container independen; jika dua sesi berjalan di dalam Container yang sama, maka mereka dapat berkomunikasi dengan normal.
Inbox Socket juga dibatasi oleh izin pengguna sistem operasi, sehingga pengguna OS lain di server bersama tidak dapat mengakses sesi Anda secara langsung.
Jadi, apa yang disebut "komunikasi lokal" di sini sebenarnya bergantung pada apakah informasi pendaftaran dapat dilihat, Socket dapat diakses, dan apakah sistem operasi mengizinkan akses.
Pesan sekarang sudah dapat menemukan tujuan dan dimasukkan ke Inbox, selanjutnya giliran Runtime Claude Code untuk memutuskan: kapan harus memberikan pesan ini ke model.

03 Setelah pesan dikirim
Misalkan sesi backend sedang memodifikasi file, pada saat itu sesi pengujian mengirim pesan, memberitahu bahwa baru saja menemukan masalah regresi antarmuka.
Claude Code tidak akan langsung menghentikan Tool yang sedang berjalan.
Jika Session target dalam keadaan Idle, pesan dapat memicu Turn baru; jika Claude sudah berada dalam Active Turn, pesan akan menunggu dan dibaca di antara dua Tool Call.
Alasan penanganan ini terkait dengan cara Coding Agent menjalankan tugasnya. Claude mungkin sedang menulis file, menjalankan pengujian, menjalankan Migration, atau menangani tugas berdurasi panjang lainnya. Jika pesan eksternal dapat secara paksa mengubah tindakan saat ini kapan saja, sangat mudah terjadi situasi di mana alat hanya menyelesaikan sebagian tugas, sementara Agent sudah mulai merencanakan ulang berdasarkan informasi baru.
Jadi pesan tersebut memengaruhi keputusan berikutnya dari Claude, bukan secara langsung mengambil alih operasi yang sedang berlangsung.
Ini juga berarti Cross-session messaging telah terintegrasi ke dalam Agentic Loop Claude Code, menjadi sumber input asinkron. Dan saluran ini tidak hanya tersedia untuk sesi Claude lainnya.
Claude Code akan mengekspos Messaging Socket sesi saat ini ke proses anak yang dijalankan oleh Hook dan Bash. Setelah tugas latar belakang yang berjalan lama selesai, ia dapat secara aktif mengirimkan hasilnya kembali ke sesi saat ini tanpa perlu Claude terus-menerus memeriksa apakah tugas tersebut telah selesai.

Channel ini sendiri bukanlah message queue yang andal. Pesan berulang akan mengalami rate limiting, dan konten yang sama dalam waktu singkat mungkin dibuang; pesan yang telah diterima tetapi belum dibaca oleh Claude, setiap Session paling banyak menyimpan 50 pesan, sedangkan pesan yang masuk ke status Hold menggunakan buffer lain yang paling banyak menyimpan 100 pesan.
Oleh karena itu, lebih cocok untuk mengirim perubahan status, hasil tugas, dan notifikasi kolaborasi. Fakta yang harus disimpan secara jangka panjang tetap harus dicatat di Git, file, database, atau sistem persisten lainnya.
Setelah pesan masuk ke Runtime, belum bisa langsung diubah menjadi tindakan eksekusi, karena penerima harus terlebih dahulu menilai: seberapa besar otoritas yang dimiliki konten yang dikirim oleh Claude lainnya.
04 Bagaimana izin diwariskan
Claude Code membedakan secara jelas Pesan Pengguna dan Pesan Sesi Rekan.
Konten dari sesi lain tidak dianggap sebagai otorisasi pengguna, sehingga tidak dapat menyetujui Permission Prompt atas nama pengguna, maupun meminta penerima melalui pesan untuk mengubah Pengaturan Permission, CLAUDE.md atau konfigurasi lainnya. Bahkan jika pesan berisi Claude Code Command, itu hanya akan diproses sebagai teks biasa.

Misalnya Session A meminta Session B untuk menghapus sebuah file, dan operasi ini memerlukan otorisasi pengguna di Session B, maka Permission Prompt asli tetap akan muncul.
Claude Code juga membatasi cara lain untuk melewati izin: jika suatu operasi telah ditolak oleh Sistem Izin pada Session saat ini, Claude seharusnya tidak meminta Session lain untuk melakukannya atas namanya.
Jika tidak, hanya dengan perbedaan izin beberapa sesi, sesi berizin rendah dapat terus-menerus menyerahkan operasi yang tidak dapat mereka selesaikan ke sesi berizin tinggi, sehingga batas izin asli menjadi tidak berlaku.
Di luar izin eksekusi, pesan itu sendiri memiliki lapisan Inbound Control. Penerima dapat mengatur pesan lintas Session sebagai accept、hold atau refuse: langsung serahkan ke Claude, tahan sementara menunggu konfirmasi lebih lanjut, atau buang langsung.

Jika pengguna tidak mengonfigurasi aturan secara eksplisit, Claude Code juga akan merujuk pada Permission Mode saat ini dari pengirim dan penerima. Sesi yang dapat melewati Permission Prompt biasa tidak dianggap sebagai sumber pesan yang sama persis dengan sesi biasa; ketika izin penerima sendiri lebih tinggi, pesan eksternal tetap bisa masuk ke Hold.

Sebenarnya ada dua penilaian: pertama, menentukan apakah pesan dapat masuk ke Claude, lalu menentukan apakah tindakan yang akan dijalankan Claude berdasarkan pesan tersebut memiliki izin.
Pada tahap ini, jalur lengkap pesan Cross-session telah selesai: dari pembuatan pesan, penemuan tujuan, pengiriman selesai, hingga Runtime membaca pesan, kemudian melalui kontrol izin sendiri pada sisi penerima.

Lapisan koordinasi antar sesi 05
Mengembalikan jalur ini ke dalam kemampuan saat ini Claude Code, posisi Cross-session messaging menjadi lebih jelas.
Resume Session digunakan untuk melanjutkan Conversation dan Context sebelumnya, Agent Teams digunakan untuk membuat dan mengelola sekelompok Agent yang bekerja sama, Worktree bertanggung jawab untuk mengisolasi perubahan kode antar Session, dan Remote Control menyelesaikan masalah melanjutkan kontrol Session dari perangkat lain.
Pesan lintas sesi menangani kasus lain: beberapa sesi yang awalnya berjalan secara independen, setelah saling bergantung selama tugas, bagaimana cara mentransmisikan informasi penting ke pihak lain.
Sebelumnya, membuka beberapa sesi Claude Code utama untuk menyelesaikan masalah paralel, tetapi pengembang masih harus memantau kemajuan masing-masing terminal dan berulang kali menyampaikan status tugas antara manusia dan sesi. Sekarang, informasi seperti perubahan antarmuka, hasil pengujian, dan penyelesaian migrasi dapat langsung dikirim ke sesi yang terpengaruh.
Pesan lintas sesi tidak menggabungkan beberapa Claude menjadi satu Agent, melainkan menambahkan lapisan kemampuan komunikasi di luar Context, direktori kerja, dan batasan izin yang sudah ada.
Dalam konteks proyek yang lebih besar, desain ini menyediakan pendekatan multi-Agent lainnya: Agent yang berbeda tidak perlu berbagi Context yang semakin besar, tetapi tetap dapat berkolaborasi melalui antarmuka komunikasi yang jelas. Setelah tugas, status, dan izin dipisahkan, sistem justru menjadi lebih mudah diperluas.
Saat jumlah Agent terus meningkat, masalahnya akan berubah dari "Berapa banyak yang bisa dilakukan oleh satu Agent" menjadi "Apakah Agent-agent ini dapat secara stabil bertukar status, menangani ketergantungan, dan menyelesaikan serah terima."
Cross-session messaging meskipun baru menyelesaikan satu bagian, namun telah membuat cara kerja multi-session Claude Code mulai memiliki struktur teknis yang lebih lengkap. Mungkin di masa depan, mekanisme lintas sesi dalam jaringan lokal ini akan berkembang menjadi protokol komunikasi Agent-to-Agent antar mesin dan antar ekosistem, maka percakapan singkat antara dua Claude hari ini merupakan langkah kunci dalam pembentukan pabrik perangkat lunak yang sangat otomatis.
