Anthropic, Claude Code için Cross-session mesajlaşma deneyimini başlatıyor ve farklı oturumlar arasında doğrudan mesaj göndermeyi sağlıyor. Bu özellik, tam bağlamı iletmek yerine yalnızca görev sonuçlarını ve bağımlılık bilgilerini ileterek, ListAgents ve SendMessage adlı iki dahili araçla çalışır. Her yerel oturum, disk üzerinde kaydedilir ve bir Inbox Socket ile bağlanır; yerel mesajlar doğrudan Socket üzerinden iletilirken, makineler arası mesajlar Anthropic Sunucusu üzerinden aktarılır. Mesajlar, oturum boşta olduğunda yeni bir Turn'u tetikler; aktif bir Turn içinde ise Araç Çağrısı arasında okunur. Alıcı taraf, Cross-session mesajlarını Kullanıcı Mesajlarından ayırır, kullanıcı yetkisini değiştiremez ve accept/hold/refuse olmak üzere üç adet Gelen Kontrol modu ayarlanmıştır. Bu özellik, Resume Session, Agent Teams ve Worktree gibi mevcut yeteneklerle entegre çalışarak Claude Code'a oturumlar arası bir koordinasyon katmanı sağlar.Makale yazarı, kaynak: Leifengwang
Bu günlerde Anthropic, Claude Code'a Cross-session messaging, yani oturumlar arası mesajlaşma adlı yeni bir deneysel özellik ekledi.
Kısaca, aynı anda çalıştırabileceğiniz birden fazla Claude Code oturumunun birbirine doğrudan mesaj göndermesini sağlar.
Örneğin, 3 tane Claude Code Oturumu açtınız: biri veritabanı, biri arka uç API'si, biri de test için. Bu 3 oturum daha önce paralel olarak çalışabiliyordu, ancak birbirlerinin nerede olduklarını bilmiyordu. Veritabanı oturumu şemasını değiştirdikten sonra, geliştiricinin genellikle başka bir terminalde oturum açıp değişiklikleri arka uç oturumuna yeniden bildirmesi gerekiyordu.
Cross-session messaging eklendikten sonra bu adım doğrudan Claude tarafından tamamlanabilir. Veritabanı Session, arka uç Session'a hangi alanların değiştiğini bildirebilir; test Session, arayüz geri dönüşüm sorunlarını tespit ettiğinde, ilgili kodu düzenleyen Session'a sonuçları gönderebilir. Claude, diğer Session'lara ne zaman bildirim göndermesi gerektiğini kendi başına karar verebilir veya geliştiricilerin talepleri doğrultusunda belirli Session'lara bağlanabilir.
Bunun tam olarak ne yaptığını anlamak için bir mesajın tam yolunu izleyebilirsiniz: ne iletiliyor, hedef nasıl bulunuyor, mesajın Claude'ye ne zaman girdiği ve alıcının neden doğrudan yapamadığı.

01 Context değil, bir mesaj
Cross-session messaging, Claude Code'un orijinal oturum izolasyonunu değiştirmeden bırakır.
Session A, Session B'ye mesaj gönderirken kendi Konuşma Geçmişi'ni, okuduğu dosyaları veya tam Bağlam Penceresini birlikte göndermez. Resmi kurallara göre, Sessionlar arası iletilen içerik metindir. Tam diyalog ve bağlamı başka bir cihaza aktarmak istiyorsanız, Cross-session mesajlaşma yerine orijinal Session'u Devam ettirin.
Bu, birden fazla Claude arasındaki iş birliğini belirler.
Veritabanı oturumu, geçiş tamamlanmak üzere onlarca dosya okudu ve birkaç çözüm denendi; sonunda bir alanın değiştirilmesi gerektiği belirlendi. Arka uç oturumu, önceki tüm analiz süreçlerini bilmek zorunda değil; yalnızca nihai değişiklikleri ve bu değişikliklerin API'sine nasıl etki edeceğini almalıdır.
Bu nedenle, Cross-session messaging, tam çalışma belleği yerine görev sonuçlarını ve bağımlılık bilgilerini iletir.

Bu sayede, farklı görevlerden kaynaklanan yerel bilgiler diğer Oturumlar arasında sürekli akış yapmaz. Veritabanıyla ilgili ayrıntılar veritabanı Oturumu içinde kalır, test süreçleri test Oturumu içinde kalır ve yalnızca bir değişiklik diğer görevleri etkilemeye başladığında ilgili bilgiler Oturum sınırını aşar.
Bu, "tüm Agent'ların ortak bir büyük bağlamı paylaşması" ile farklı iki yaklaşımındandır. Cross-session messaging, oturumların bağımsız kalmasını ve görevler arasında bağımlılık oluştuğunda gerekli durumların açıkça senkronize edilmesini seçer.
İletilen bir mesaj olduğuna göre, şu soru ortaya çıkar: Session A, Session B'yi nasıl bulur?
02 Başka bir oturum bulmanız gerekir
Claude Code, çapraz oturum mesajlaşmasını destekleyen oturumlara kendi iletişim girişini ekledi.
Her yerel oturum, ilgili bilgileri diske kaydeder ve bir Inbox Socket ile bağlanır. Claude, mevcut bağlantı kurulabilen oturumları ListAgents ile bulabilir ve ardından SendMessage ile mesajı belirli bir hedefe gönderir.
Kullanıcıların bu iç araçları kendilerinin işlem yapmalarına gerek yoktur; sadece Claude'a hangi Oturumla bağlantı kurmak istediğini söylemeleri yeterlidir veya görevler bağımlılık oluşturduğunda otomatik olarak diğer tarafa bildirim göndermesini istemeleri yeterlidir.

Oturumun adı nedeniyle adreslemeye de dahil olmaya başlandı. Claude, adı ile hedefi bulabilir; adlar tekrarlanırsa, sistem her oturumun hangi proje veya dizini işlediğini belirlemeye yardımcı olmak için kısa bir tanımlayıcı ekler ve Çalışma Dizini'ni görüntüler.
Hedef bulunduktan sonra, yerel mesajlar ilgili Session'un Socket üzerinden doğrudan iletilir, Anthropic Sunucusu üzerinden geçmez. Diğer bir makine veya Claude Code Web üzerindeki Session, Anthropic Sunucusu ve Uzaktan Denetim ile ilgili bağlantılar aracılığıyla iletişim kurar.

Bu keşif mekanizması, yerel iletişim sınırlarını da belirler.
Claude Code, diğer bir oturumun disk üzerine yazdığı kayıt bilgilerini okumak zorunda olduğundan, iki Claude aynı fiziksel bilgisayarda çalışsa bile dosya sistemi birbirinden izole edilmişse birbirini keşfedemeyebilir. Tipik durum, Ana Bilgisayar ve bağımsız Konteyner; eğer iki oturum aynı konteyner içinde çalışıyorsa, normal şekilde iletişim kurabilir.
Inbox Socket, işletim sistemi kullanıcı izinleriyle sınırlıdır; ortak sunucudaki diğer OS kullanıcıları oturumunuza doğrudan erişemez.
Bu nedenle buradaki “yerel iletişim” kavramı, kayıt bilgilerinin erişilebilir olup olmadığına, Socket'in erişilebilir olup olmadığına ve işletim sisteminin erişime izin verip vermediğine dayanır.
Mesaj artık hedefe ulaştırılabiliyor ve Inbox'a gönderilebiliyor; şimdi sıradaki, Claude Code'un Runtime'ının bu mesajı modele ne zaman vereceğine karar vermesi.

03 Bilgi iletilir iletilir
Arka plan oturumu dosya değiştiriyorken, test oturumu bir arayüz geri dönüş sorunu keşfettiğini bildirdi.
Claude Code, çalışan Araç'ı hemen kesmez.
Hedef Oturum Durgun durumdaysa, mesaj yeni bir Tur başlatır; Claude zaten Aktif Tur'daysa, mesaj iki Araç Çağrısı arasında bekler ve okunur.
Bu işlemin nedeni, Coding Agent'in çalışma şekliyle ilgilidir. Claude dosya yazıyor, testleri çalıştırıyor, Migration'u gerçekleştiriyor veya diğer zaman alıcı görevleri işliyor olabilir. Dış mesajlar herhangi bir zamanda mevcut eylemi zorla değiştirebilirse, aracın yalnızca bir kısmını çalıştırdıktan sonra Agent'in yeni bilgilere göre yeniden planlamaya başlaması kolaylaşır.
Bu mesaj, Claude'un sonraki kararlarını etkiler, ancak devam eden işlemleri doğrudan ele geçirmez.
Bu, Cross-session messaging'in Claude Code'un Agentic Döngüsüne entegre edildiğini ve bir asenkron giriş kaynağı haline geldiğini anlamına gelir. Bu giriş noktası yalnızca diğer Claude Oturumları için değil, daha genel olarak kullanılabilir.
Claude Code, mevcut oturumun mesajlaşma soketini Hook ve Bash ile başlatılan alt süreçlere açar. Uzun süre çalışan bir arka plan görevi tamamlandıktan sonra, tamamlanıp tamamlanmadığını sürekli kontrol etmek zorunda kalmadan doğrudan sonucu mevcut oturuma gönderebilir.

Bu kanal kendisi güvenilir bir mesaj kuyruğu değildir. Yinelemeli mesajlar hız sınırlamasına tabidir; kısa sürede aynı içerik atılabilir; kabul edilmiş ancak Claude henüz okumamış mesajlar, her oturumda en fazla 50 adet tutulur, Hold durumuna geçen mesajlar ise ayrı bir tampon kullanır ve en fazla 100 adet tutulur.
Bu nedenle, durum değişiklikleri, görev sonuçları ve iş birliği bildirimleri göndermek için daha uygundur. Uzun vadeli olarak saklanması gereken bilgiler hâlâ Git, dosyalar, veritabanları veya diğer kalıcı sistemlerde kaydedilmelidir.
Mesaj Runtime'a girdikten sonra hemen yürütme eylemine dönüşmez, çünkü alıcı önce diğer Claude'nin gönderdiği içeriğin hangi izne sahip olduğunu belirlemelidir.
04 İzinler nasıl miras alınır
Claude Code, Kullanıcı Mesajı ile Eş Oturumu Mesajı arasında net bir ayrım yapar.
Başka bir oturumdan gelen içerik kullanıcı yetkilendirmesi olarak kabul edilmeyeceğinden, kullanıcı adına İzin İstekleri onaylanamaz ve mesajlar aracılığıyla alıcıların İzin Ayarlarını değiştirmesi istenemez,CLAUDE.md veya diğer yapılandırmalar. Mesajda Claude Kod Komutu bulunsa bile sadece normal metin olarak işlenecektir.

Session A, Session B'de bir dosyayı silme isteğinde bulunursa ve bu işlem Session B'de kullanıcı onayı gerektirirse, orijinal İzin İstemi hâlâ görüntülenecektir.
Claude Code, başka bir yetki atlatma yöntemini de kısıtlar: Bir işlem, mevcut Oturumda İzin Sistemi tarafından reddedildiyse, Claude başka bir Oturumdan kendisi için işlem yapmasını istememelidir.
Aksi takdirde, birkaç oturumun izinleri farklıysa, düşük izinli oturumlar, kendileri tamamlayamadıkları işlemleri sürekli olarak yüksek izinli oturumlara devredebilir ve orijinal izin sınırları geçersiz hale gelir.
Yetki dışındayken, mesajın kendisi bir Inbound Control katmanına da sahiptir. Alıcı, oturumlar arası mesajları accept、hold veya refuse olarak ayarlayabilir: doğrudan Claude'a iletmek, ek doğrulama için geçici olarak saklamak veya doğrudan atmak.

Kullanıcı açıkça kural yapılandırmazsa, Claude Code, gönderen ve alıcının geçerli İzin Modunu da dikkate alır. Normal İzin İstemi'ni atlamayı sağlayan bir Oturum, normal Oturumla tamamen aynı bir mesaj kaynağı olarak kabul edilmez; alıcı tarafın kendi izinleri daha yüksekse, dışarıdan gelen mesajlar yine de Bekletme'ye girebilir.

Aslında iki değerlendirme var: önce mesajın Claude'a girmesine karar verilir, ardından Claude'un bu mesaja göre gerçekleştirmeyi planladığı eylemin izni olup olmadığına karar verilir.
Bu adıma kadar, bir Cross-session mesajının tam yolu tamamlanmıştır: mesajın oluşturulması, hedefin belirlenmesi, teslimin tamamlanması, Runtime tarafından mesajın okunması ve ardından alıcı tarafın kendi yetki kontrolü.

05 Oturumlar arasındaki koordinasyon katmanı
Bu bağlantıyı Claude Code'un mevcut yeteneklerine geri yerleştirin, cross-session messaging konumu daha net hale gelir.
Oturumu yeniden başlatmak, önceki sohbeti ve bağlamı sürdürmek için kullanılır, Agent Takımları birlikte çalışan bir grup Agent oluşturmak ve yönetmek için kullanılır, Worktree farklı oturumların kod değişikliklerini izole etmekten sorumludur, Uzaktan Kontrol ise diğer cihazlardan oturumu kontrol etme sorununu çözer.
Cross-session messaging, diğer bir durumu ele alır: Zaten bağımsız olarak çalışan birkaç Session, görev sırasında birbirine bağımlı hale geldikten sonra gerekli bilgileri birbirine nasıl iletir.
Daha önce birden fazla Claude Code oturumu açmak, paralel sorunları çözmek için yapıldı, ancak geliştiriciler hâlâ her bir terminalin ilerlemesini izlemek ve görev durumlarını insan ile oturumlar arasında tekrar tekrar iletmek zorunda kaldı. Şimdi, arayüz değişiklikleri, test sonuçları, Migasyon tamamlandı gibi bilgiler doğrudan etkilenen oturumlara iletiliyor.
Cross-session messaging, birden fazla Claude'u tek bir Agent olarak birleştirmiyor, mevcut Context, çalışma dizini ve izin sınırları dışında bir iletişim katmanı ekliyor.
Daha büyük bir mühendislik senaryosunda bakıldığında, bu tasarım farklı Ajanların giderek büyüyen Bağlamı paylaşmadan da açık iletişim arayüzleriyle işbirliği yapmasını sağlayan başka bir çok Ajan yaklaşımı sunar. Görevler, durumlar ve yetkiler ayrıldığında sistem daha kolay ölçeklenebilir hale gelir.
Agent sayısı arttıkça soru, "tek bir Agent ne kadar şey yapabilir?" yerine, "bu Agent'ler arasında durumlar kararlı bir şekilde paylaşılabilir mi, bağımlılıklar işlenebilir mi ve devirler tamamlanabilir mi?" haline gelecektir.
Cross-session messaging, yalnızca bir parçasını çözmese de, Claude Code'un çok oturumlu çalışma şeklini daha tam bir mühendislik yapısına kavuşturmuştur. Belki de gelecekte, bu yerel ağ içindeki oturumlar arası mekanizma, makine ve ekosistemler arası Agent-to-Agent iletişim protokolüne dönüşürse, bugün bu iki Claude arasında gerçekleşen kısa diyalog, yüksek düzeyde otomatikleştirilmiş bir yazılım fabrikasının oluşumunda kritik bir adım olacaktır.
