Ajan dosyaları gerçekten değiştirir ve bazen yanlış olanı değiştirir. Bozulduğu için değil - görevi sizin düşündüğünüzden farklı anladığı için. İyi haber: kod anlık görüntülerini Claude Code sizin katılımınız olmadan kendisi alır ve başarısız bir denemeyi birkaç tıklamayla geri sarabilirsiniz.

Daha kötü haber: bu anlık görüntülerin bir sınırı var. Ajanın dosyalara yazdığı her şey korunan bir çevre içinde olur ve oradan geri getirilebilir. Bunun dışında kalan her şey - çitin arkasında kalır: anlık görüntüler onu görmedi ve geri getiremez. Çitin nereden geçtiğini önceden bilmek daha iyidir, bir şey kaybolduğu anda değil.

Aşağıda - geri almanın nasıl işlediği, çitinin nereden geçtiği, ne kadar süre yaşadığı ve çitin arkasında kalanı neyin karşıladığı.

Checkpoint nedir

Checkpoint, ajanın düzenlemek üzere olduğu dosyaların, onlara el atmadan önce alınmış bir anlık görüntüsüdür. Projenin yedeği ya da sürüm geçmişine bir kayıt değil, mevcut oturum içindeki - yani ajanla aranızdaki sohbet içindeki - çalışan bir geri dönüş noktası.

Bu bölümü okumaya değer kılan en önemli şey: anlık görüntü, her mesajınızdan önce otomatik olarak alınır. Onu siz oluşturmazsınız, ayarlamazsınız ve basmayı unutamazsınız. Mesajı gönderdiniz - nokta zaten oradadır.

  • Mesajınız
  • Kod anlık görüntüsü
  • Ajanın düzenlemesi
  • Yeni mesaj
  • Yeni anlık görüntü

Sıraya dikkat edin: önce anlık görüntü, sonra düzenlemeler. Bir noktaya dönmenin "kodu bu mesajdan önceki haline getir" anlamına gelmesinin sebebi tam olarak bu. Bir zaman anı değil, kendi mesajlarınızdan birini seçiyorsunuz ve ondan sonraki her şeyin geri alınması gerekiyor.

Devamının daha kolay olması için bir açıklama daha. Checkpoint kodla ilgilidir. Claude Code sohbeti de geri sarabilir, ama bu menüde ayrı bir seçenektir: kod ve sohbet, siz nasıl karar verirseniz öyle - birlikte ya da ayrı ayrı geri döner.

Geri alma menüsü nasıl açılır

İki giriş yolu var ve ikisi de aynı şeyi yapıyor:

  • giriş satırındaki /rewind komutu. Bilindik takma adları da var: /undo ve /checkpoint;
  • giriş satırı boşsa Esc Esc tuşları.
Menü açılmadıysa

Muhtemelen giriş satırında metin vardı. O zaman ilk Esc Esc sadece yazdığınızı siler, menü görünmez. Bu sırada metin kaybolmaz: giriş geçmişine gider ve yukarı ok tuşu onu geri getirir. Artık boş olan satırda Esc Esc tuşlarına bir daha basın ve menü açılır.

Bu oturumdaki mesajlarınızın listesi açılır. Dosya listesi ya da zaman çizelgesi değil - gönderdiğiniz her mesaj için bir satır olmak üzere, tam olarak mesajlar. İşlerin ters gitmeye başladığı mesajı seçersiniz.

Ayrı bir durum: daha önce aynı çalışan ajanda /clear kullandıysanız, güncel sürümlerde listenin en üstünde ek bir satır belirir. Bu satır, temizlikten önce süren sohbete döner. Gördüğünüz gibi, temizlik hiçbir şeyi yok etmiyor.

Menü ne sunuyor

Noktayı seçtiniz - ajan onunla tam olarak ne yapacağını soruyor. Altı seçenek var:

Menü öğesiNe yapar
Restore code and conversationhem kodu hem sohbeti seçilen noktaya geri getirir
Restore conversationyalnızca sohbeti geri getirir, dosyaları olduğu gibi bırakır
Restore codeyalnızca dosyaları geri getirir, sohbeti olduğu gibi bırakır
Summarize from heresohbeti bu noktadan itibaren kısa bir özete katlar
Summarize up to heresohbeti bu noktaya kadar özetler, devamını olduğu gibi bırakır
Never mindhiçbir şey yapmadan menüyü kapatır

Bu tablo hakkında bilmeniz gereken ilk şey: menünün içeriği değişir. Kodla ilgili iki öğe, yalnızca seçilen noktadan sonra ajan gerçekten dosya değiştirdiyse görünür. Değiştirmediyse geri getirilecek bir şey yoktur ve bu satırlar hiç görünmez. Yani menüde altı yerine dört öğe çıkması, farklı bir program kullandığınız anlamına gelmez.

İki Summarize satırı ayrı duruyor. Bunlar kodla değil, sohbetin uzunluğuyla çalışır: bir bölümünü kısa bir özete katlar. Diskteki dosyalara hiç dokunmazlar. Bunun ne zaman işe yaradığı ayrı ve geniş bir konu; burada bunun bir geri alma olmadığını ve kodun bu yolla geri gelmediğini bilmek yeterli.

Ve sinirinizi koruyan küçük bir detay. Sohbet geri getirildikten sonra, o mesajın metni giriş satırına geri döner. Ne yazdığınızı hatırlayıp yeniden yazmanıza gerek yok - ifadeyi düzeltip tekrar gönderirsiniz.

Geri alma neyi geri getirir, neyi getirmez

Kendi bölgesinde geri alma güvenilirdir. İki şeyi geri getirir: ajanın düzenleme araçlarıyla yaptığı dosya değişikliklerini ve bu oturumdaki sohbet geçmişini.

İşte çitin arkasında kalanlar.

  • Terminal komutlarıyla yapılan değişiklikler. Ajan yalnızca dosya düzenlemekle kalmaz, komut da çalıştırabilir. Bir dosya rm komutuyla silindiyse, taşındıysa ya da kopyalanarak üzerine yazıldıysa, anlık görüntü bunu görmedi ve geri getiremez.
  • Ajanın dışında yapılan değişiklikler. Ajanın bu oturumda dokunmadığı dosyalara geri alma hiç el sürmez: siz onları düzenleyicide kendiniz düzelttiniz, başka bir program üzerine yazdı, yanda ikinci bir oturum çalıştı - bunların hepsi olduğu gibi kalır, menüden geri getirilemez ya da geri alınamaz. Ama ajanın da düzenlediği bir dosyayı elle düzenlediyseniz, kodu geri getirmek o dosyayı anlık görüntüye tamamen döndürür - sizin düzenlemenizle birlikte.
  • Subagent'ların düzenlemeleri. Ajan işin bir kısmını yardımcı bir subagent'a devrettiyse, onun düzenlemeleri genellikle anlık görüntülere girmez ve geri alma onları geri getirmez. Bunlar git ile geri alınır.
  • Sembolik bağlantı dosyalarındaki nadir durum. Geri alma bu tür dosyaları atlar ve bunu ayrı bir satırda açıkça belirtir. Karşınıza çıkarsa halledersiniz, özel olarak hazırlanmanıza gerek yok.
Dosya düzenlemek ile terminalde komut çalıştırmak farklı şeyler

Dışarıdan bakınca fark neredeyse görünmez. Ajan, bir dosyayı düzenlediğinde de bir dosyayı silen komutu çalıştırdığında da aynı sakinlikle rapor verir. Sizin için ekranda birbirine benzeyen iki mesaj, geri alma için ise kökten farklı iki olay: birincisini geri alır, ikincisini almaz.

Bu yüzden bir şeyi silen, taşıyan ya da üzerine yazan bir komutu çalıştırma isteği, sıradan bir düzenleme isteğinden daha dikkatli okunmayı hak eder. Arkanızda artık bir güvenlik ağı olmayan durum tam da budur.

Kısacası: geri alma, ajanın dosyalara ne yazdığını takip eder, bilgisayarınızda olan her şeyi değil.

Geri alma ne kadar süre yaşar

Anlık görüntüler sonsuza kadar birikmez. Menüdeki noktaların hepsi listelenir, ama dosya anlık görüntüleri yalnızca son yüz tanesi için saklanır: tek bir sohbet için bu çok, ama sınırsız değil ve eskiler yavaş yavaş silinir.

Buna karşılık noktalar açık bir terminal penceresine bağlı değildir. Oturumla birlikte saklanır, yani terminali kapatıp yarın geri dönebilir, aynı sohbete devam edebilirsiniz - ve geri alma menüsü hiçbir şey olmamış gibi çalışmaya devam eder.

Bu da sonsuza kadar sürmez. Oturumlar ve onlara ait anlık görüntüler yaklaşık bir ay sonra otomatik olarak temizlenir, süre isteğe göre ayarlanabilir.

Buradan basit bir sonuç çıkıyor: geri alma tek bir görev ufkunda iyi çalışır - dakikalar, saatler, ajanla tek bir sohbet. Proje geçmişini saklayan bir depo olarak tasarlanmadı ve bu bir eksiklik değil - sadece farklı bir iş. Daha uzun süreleri kim karşılıyor, şimdi ona bakalım.

Dört güvenlik ağı ve her birinin kendi işi var

Geri alma, anlık görüntü, klasör kopyası ve sürüm geçmişi - aynı şeyin dört farklı adı değil. Farklı süreleri ve farklı kayıp türlerini karşılıyorlar.

Güvenlik ağıKim oluştururNeyi saklarNe kadar süre yaşarNerede işe yaramaz
Düzenleyicide geri almasiz, bir tuşlaaçık dosyadaki son düzenlemelerinizuzun değil, düzenleyiciye bağlıbirden çok dosyadaki düzenlemeler, genelde düzenleyicinin dışında diske yazılan her şey
CheckpointClaude Code, kendisiher mesajınızdan önceki kodoturumla birlikte, yüz noktaterminal komutları, ajanın dışında yapılan değişiklikler
Klasör kopyasısiz, ellekopyalama anındaki projenin tamamısiz silene kadarneyin değiştiğini göstermez, diski doldurur
Sürüm geçmişi, gitsiz, bilinçli bir eylemleproje durumlarını birbiri ardınaproje sürdüğü kadarzamanında kaydetmediğiniz her şey

Güvenlik ağı önce kapsama alanına, sonra süreye göre seçilir. Claude sıradan dosyaları kendi düzenleme araçlarıyla değiştiriyor ve oturumun dışında hiçbir şeye dokunmuyorsa, beş dakikalık bir deneyi checkpoint iyi karşılar. Terminal komutları ya da dış değişiklikler varsa, süre ne kadar kısa olursa olsun tek başına checkpoint yetmez. Ve yalnızca kapsama alanı uygun olan güvenlik ağları arasından süreye bakın: birkaç günlük çalışma ya da önemli bir kilometre taşı, ajanla sohbete bağlı olmayan bir mekanizma ister.

Klasör kopyası hakkında açık konuşmak gerekir. Ürkütücü bir şeyden önce tek seferlik bir önlem olarak işe yarar: kopyaladınız, bozmaya giriştiniz, olmadıysa geri getirdiniz. Bir sistem olarak yaşamaz. Bir hafta sonra elinizde birbirine neredeyse aynı birkaç klasör olur ve hangisinin güncel olduğunu artık kimse hatırlamaz.

Son satır, hem durumları uzun süre saklayan hem de aralarında tam olarak neyin değiştiğini gösteren tek satır. Bu git ve kendi başına büyük bir konu: kendi aracı, kendi komut kümesi var, burada onu açmıyoruz. Tablodaki yerini bilmek şimdilik yeterli: en uzun ufuk ve geri almanın karşılamadığı şeye karşı tek koruma.

Bu, çalışma tarzını nasıl değiştiriyor

Mesele düğme takımından ibaret değil. İşte geri almadan pratikte çıkan sonuçlar:

  • anlık görüntü kendi kendine alınır, ama neredeyse hiçbir şeye mal olmaz - yalnızca Claude'un düzenleme araçlarıyla sıradan dosyalar üzerinde yapılan bir deney için. Terminal komutları ya da oturumun dışındaki değişiklikler gerekiyorsa, önce başka bir güvenlik ağı seçin;
  • ajan sizin yerinize geri almaz. Yanlış yola girdiğini söyleyebilir, ama menüyü açıp seçmek size kalmıştır;
  • terminalde komut çalıştırma isteği, dosya düzenleme isteğinden farklı bir eylem sınıfıdır. Geri alma birincisini karşılamaz, ikincisini karşılar. Fark yalnızca isteğin metninde görünür, ki tam da bu yüzden onu okumaya değer;
  • adım ne kadar büyükse, geri almanın faydası o kadar azalır. Geri getirmek mümkün, ama tek bir menüden tam olarak neyin geri geldiğini anlamak, ajan ne kadar çok şey yaptıysa o kadar zorlaşır. Küçük adımlar burada da kazanır;
  • geri alma ile sürüm geçmişi birbiriyle yarışmaz. Birincisi tek bir sohbet içindeki dakikaları ve saatleri karşılar, ikincisi projenin günlerini, haftalarını ve kilometre taşlarını.
Büyük bir düzenlemeden önce bir dakika

Gerçekten riskli bir denemeden önce, oturumdan daha uzun yaşayan bir şeyle durumu sabitlemek için bir dakika harcamaya değer. Şu anda elinizde bir klasör kopyası var - riskten önce tek seferlik bir önlem olarak dürüstçe işe yarar.

Ama bunun için gerçek araç git. İstediğiniz kadar uzun süre durum saklar, aralarında tam olarak neyin değiştiğini gösterir ve diski birbirine neredeyse aynı klasörlerle doldurmaz. Onu nasıl kullanacağımızı ayrıca ele alacağız: konu büyük ve kendi sohbetini hak ediyor. Riskten önce bir dakika durma alışkanlığı ise, hem onunla hem de şimdilik onsuz işinize yarayacak.

Geri alma menüsü hızlı deneyler için kalsın: son çare rolünde, günlük araç rolünden belirgin biçimde daha kötü çalışır.


Geri alma menüsünün içeriği ve saklama süreleri, Claude Code sürümünüze ve ayarlarınıza bağlıdır, bu yüzden sizde burada anlatılanlardan farklı olabilir. Sürümünüzün ne sunduğunu her zaman menünün kendisi gösterir.