Oturumlar
Pi konuşmaları oturum olarak kaydeder, böylece çalışmaya devam edebilir, daha önceki dönüşlerden dallara ayrılabilir ve önceki yolları tekrar ziyaret edebilirsiniz.
Oturum Depolama
Oturumlar, çalışma dizinine göre düzenlenerek ~/.pi/agent/sessions/'ye otomatik olarak kaydedilir. Her oturum ağaç yapısına sahip bir JSONL dosyasıdır.
pi -c # Continue most recent session
pi -r # Browse and select from past sessions
pi --no-session # Ephemeral mode; do not save
pi --name "my task" # Set session display name at startup
pi --session <path|id> # Use a specific session file or partial session ID
pi --fork <path|id> # Fork a session file or partial session ID into a new sessionGeçerli oturum dosyasını, oturum kimliğini, mesaj sayısını, belirteçleri ve maliyeti görmek için etkileşimli modda /session tuşunu kullanın.
JSONL dosya formatı ve SessionManager API için bkz. Session Format.
Oturum Komutları
| Emretmek | Tanım |
|---|---|
/resume |
Önceki oturumlara göz atın ve seçin |
/new |
Yeni bir oturum başlat |
/name <name> |
Geçerli oturumun görünen adını ayarlayın |
/session |
Oturum bilgilerini göster |
/tree |
Mevcutta gezinin session tree |
/fork |
Önceki bir kullanıcı mesajından yeni bir oturum oluşturun |
/clone |
Geçerli etkin dalı yeni bir oturuma kopyala |
/compact [prompt] |
Eski bağlamı özetleyin; bkz. Compaction |
/export [file] |
Oturumu HTML'ye aktar |
/share |
Paylaşılabilir HTML bağlantısıyla özel GitHub özet olarak yükleyin |
Oturumları Devam Ettirme ve Silme
/resume mevcut proje için etkileşimli bir oturum seçiciyi açar. pi -r başlangıçta aynı seçiciyi açar.
Seçicide şunları yapabilirsiniz:
- yazarak arama
- Yol görünümünü Ctrl+P ile değiştir
- Ctrl+S ile sıralama moduna geçiş yapın
- Ctrl+N ile adlandırılmış oturumlara filtre uygulayın
- Ctrl+R ile yeniden adlandırın
- Ctrl+D ile silin ve onaylayın
Pi, mümkün olduğunda dosyaları kalıcı olarak kaldırmak yerine silmek için trash CLI'yi kullanır.
Oturumları Adlandırma
İnsanların okuyabileceği bir oturum adı ayarlamak için /name <name> tuşunu kullanın:
/name Refactor auth moduleAdı başlangıçta --name veya -n ile ayarlayın:
pi --name "Refactor auth module"
pi --name "CI audit" -p "Review this build failure"Adlandırılmış oturumları /resume ve pi -r'de bulmak daha kolaydır.
/tree ile dallanma
Oturumlar ağaç olarak depolanır. Her girişte id ve parentId bulunur ve mevcut konum aktif yapraktır. /tree yeni bir dosya oluşturmadan önceki herhangi bir noktaya atlamanızı ve oradan devam etmenizi sağlar.

Örnek şekil:
├─ user: "Hello, can you help..."
│ └─ assistant: "Of course! I can..."
│ ├─ user: "Let's try approach A..."
│ │ └─ assistant: "For approach A..."
│ │ └─ user: "That worked..." ← active
│ └─ user: "Actually, approach B..."
│ └─ assistant: "For approach B..."Ağaç Kontrolleri
| Anahtar | Aksiyon |
|---|---|
| ↑/↓ | Görünür girişlerde gezinin |
| ←/→ | Sayfa yukarı/aşağı |
| Ctrl+←/Ctrl+→ veya Alt+←/Alt+→ | Dal bölümleri arasında katlama/açma veya atlama |
| Üst Karakter+L | Seçilen girişte bir etiket ayarlayın veya temizleyin |
| Üst Karakter+T | Etiket zaman damgalarını değiştir |
| Girmek | Girişi seçin |
| Kaçış/Ctrl+C | İptal etmek |
| Ctrl+O | Döngü filtresi modu |
Filtre modları şunlardır: varsayılan, araçsız, yalnızca kullanıcıya yönelik, yalnızca etiketli ve tümü. Varsayılanı Settings'de treeFilterMode ile yapılandırın.
Seçim Davranışı
Bir kullanıcıyı veya özel mesajı seçme:
- Yaprağı seçilen mesajın üst öğesine taşır.
- Seçilen mesaj metnini düzenleyiciye yerleştirir.
- Yeni bir şube oluşturarak düzenlemenizi ve yeniden göndermenizi sağlar.
Bir asistan, alet, sıkıştırma veya kullanıcı dışı başka bir girişin seçilmesi:
- Yaprağı o girişe taşır.
- Düzenleyiciyi boş bırakır.
- Bu noktadan devam etmenizi sağlar.
Kök kullanıcı mesajını seçmek, yaprağı boş bir konuşmaya sıfırlar ve orijinal istemi düzenleyiciye yerleştirir.
/tree, /fork ve /clone
| Özellik | /tree |
/fork |
/clone |
|---|---|---|---|
| Çıkış | Aynı oturum dosyası | Yeni oturum dosyası | Yeni oturum dosyası |
| Görüş | Tam ağaç | Kullanıcı mesajı seçici | Mevcut aktif şube |
| Tipik kullanım | Alternatifleri yerinde keşfedin | Daha önceki bir istemden yeni bir oturum başlatın | Devam etmeden önce mevcut çalışmayı çoğaltın |
| Özet | İsteğe bağlı dal özeti | Hiçbiri | Hiçbiri |
Alternatifleri bir arada tutmak istediğinizde /tree kullanın. Ayrı bir oturum dosyası istediğinizde /fork veya /clone tuşlarını kullanın.
Şube Özetleri
/tree bir daldan diğerine geçtiğinde, pi terk edilen dalı özetleyebilir ve bu özeti yeni konuma ekleyebilir. Bu, tüm dalı tekrar oynatmadan, bıraktığınız yoldan önemli bağlamı korur.
İstendiğinde aşağıdakilerden birini seçin:
- özet yok
- varsayılan istemle özetle
- özel odaklama talimatlarıyla özetleme
branch summarization iç parçalar ve uzatma kancaları için Compaction'ye bakın.
Oturum Formatı
Oturum dosyaları JSONL boyutundadır ve mesaj girişlerini, model değişikliklerini, düşünme düzeyindeki değişiklikleri, etiketleri, sıkıştırmaları, dal özetlerini ve uzantı girişlerini içerir.
Ayrıştırıcılar, uzantılar, SDK kullanımı ve tam SessionManager API için, bkz. Session Format.