--- description: Claude Code session geçmişini, aliasları ve session metadata'sını yönet. --- # Sessions Komutu Claude Code session geçmişini yönet - `~/.claude/session-data/` dizininde saklanan session'ları listele, yükle, alias ata ve düzenle; eski `~/.claude/sessions/` dosyalarını da geriye dönük uyumluluk için okuyun. ## Kullanım `/sessions [list|load|alias|info|help] [options]` ## Aksiyonlar ### List Sessions Tüm session'ları metadata, filtreleme ve sayfalama ile göster. Bir swarm için operatör-yüzey context'e ihtiyacınız olduğunda `/sessions info` kullanın: branch, worktree yolu ve session güncelliği. ```bash /sessions # Tüm session'ları listele (varsayılan) /sessions list # Yukarıdakiyle aynı /sessions list --limit 10 # 10 session göster /sessions list --date 2026-02-01 # Tarihe göre filtrele /sessions list --search abc # Session ID'ye göre ara ``` **Script:** ```bash node -e " const sm = require((function(){var p=require('path'),f=require('fs'),o=require('os');var e=process.env.CLAUDE_PLUGIN_ROOT;if(e&&e.trim())return e.trim();var d=p.join(o.homedir(),'.claude');function L(x){try{return require(p.join(x,'scripts','lib','resolve-ecc-root')).resolveEccRoot()}catch(_){return null}}var r=L(d);if(r)return r;var s=['ecc','ecc@ecc','marketplaces/ecc','everything-claude-code','everything-claude-code@everything-claude-code','marketplaces/everything-claude-code'];for(var i=0;i # Session yükle /sessions load 2026-02-01 # Tarihe göre (no-id session'lar için) /sessions load a1b2c3d4 # Short ID ile /sessions load my-alias # Alias adıyla ``` **Script:** ```bash node -e " const sm = require((function(){var p=require('path'),f=require('fs'),o=require('os');var e=process.env.CLAUDE_PLUGIN_ROOT;if(e&&e.trim())return e.trim();var d=p.join(o.homedir(),'.claude');function L(x){try{return require(p.join(x,'scripts','lib','resolve-ecc-root')).resolveEccRoot()}catch(_){return null}}var r=L(d);if(r)return r;var s=['ecc','ecc@ecc','marketplaces/ecc','everything-claude-code','everything-claude-code@everything-claude-code','marketplaces/everything-claude-code'];for(var i=0;i 0) { console.log('Aliases: ' + aliases.map(a => a.name).join(', ')); console.log(''); } if (session.metadata.title) { console.log('Title: ' + session.metadata.title); console.log(''); } if (session.metadata.started) { console.log('Started: ' + session.metadata.started); } if (session.metadata.lastUpdated) { console.log('Last Updated: ' + session.metadata.lastUpdated); } if (session.metadata.project) { console.log('Project: ' + session.metadata.project); } if (session.metadata.branch) { console.log('Branch: ' + session.metadata.branch); } if (session.metadata.worktree) { console.log('Worktree: ' + session.metadata.worktree); } " "$ARGUMENTS" ``` ### Create Alias Session için akılda kalıcı bir alias oluştur. ```bash /sessions alias # Alias oluştur /sessions alias 2026-02-01 today-work # "today-work" adlı alias oluştur ``` **Script:** ```bash node -e " const sm = require((function(){var p=require('path'),f=require('fs'),o=require('os');var e=process.env.CLAUDE_PLUGIN_ROOT;if(e&&e.trim())return e.trim();var d=p.join(o.homedir(),'.claude');function L(x){try{return require(p.join(x,'scripts','lib','resolve-ecc-root')).resolveEccRoot()}catch(_){return null}}var r=L(d);if(r)return r;var s=['ecc','ecc@ecc','marketplaces/ecc','everything-claude-code','everything-claude-code@everything-claude-code','marketplaces/everything-claude-code'];for(var i=0;i '); process.exit(1); } // Session dosya adını al const session = sm.getSessionById(sessionId); if (!session) { console.log('Session not found: ' + sessionId); process.exit(1); } const result = aa.setAlias(aliasName, session.filename); if (result.success) { console.log('✓ Alias created: ' + aliasName + ' → ' + session.filename); } else { console.log('✗ Error: ' + result.error); process.exit(1); } " "$ARGUMENTS" ``` ### Remove Alias Mevcut bir alias'ı sil. ```bash /sessions alias --remove # Alias'ı kaldır /sessions unalias # Yukarıdakiyle aynı ``` **Script:** ```bash node -e " const aa = require((function(){var p=require('path'),f=require('fs'),o=require('os');var e=process.env.CLAUDE_PLUGIN_ROOT;if(e&&e.trim())return e.trim();var d=p.join(o.homedir(),'.claude');function L(x){try{return require(p.join(x,'scripts','lib','resolve-ecc-root')).resolveEccRoot()}catch(_){return null}}var r=L(d);if(r)return r;var s=['ecc','ecc@ecc','marketplaces/ecc','everything-claude-code','everything-claude-code@everything-claude-code','marketplaces/everything-claude-code'];for(var i=0;i'); process.exit(1); } const result = aa.deleteAlias(aliasName); if (result.success) { console.log('✓ Alias removed: ' + aliasName); } else { console.log('✗ Error: ' + result.error); process.exit(1); } " "$ARGUMENTS" ``` ### Session Info Session hakkında detaylı bilgi göster. ```bash /sessions info # Session detaylarını göster ``` **Script:** (yukarıdaki Load Session script'i ile aynı yapı) ### List Aliases Tüm session aliaslarını göster. ```bash /sessions aliases # Tüm aliasları listele ``` **Script:** ```bash node -e " const aa = require((function(){var p=require('path'),f=require('fs'),o=require('os');var e=process.env.CLAUDE_PLUGIN_ROOT;if(e&&e.trim())return e.trim();var d=p.join(o.homedir(),'.claude');function L(x){try{return require(p.join(x,'scripts','lib','resolve-ecc-root')).resolveEccRoot()}catch(_){return null}}var r=L(d);if(r)return r;var s=['ecc','ecc@ecc','marketplaces/ecc','everything-claude-code','everything-claude-code@everything-claude-code','marketplaces/everything-claude-code'];for(var i=0;i 30 ? a.sessionPath.slice(0, 27) + '...' : a.sessionPath).padEnd(30); const title = a.title || ''; console.log(name + ' ' + file + ' ' + title); } } " ``` ## Operatör Notları - Session dosyaları header'da `Project`, `Branch` ve `Worktree`'yi sürdürür, böylece `/sessions info` parallel tmux/worktree çalıştırmalarını ayırt edebilir. - Command-center tarzı izleme için, `/sessions info`, `git diff --stat` ve `scripts/hooks/cost-tracker.js` tarafından yayılan cost metriklerini birleştirin. ## Argümanlar $ARGUMENTS: - `list [options]` - Session'ları listele - `--limit ` - Gösterilecek max session (varsayılan: 50) - `--date ` - Tarihe göre filtrele - `--search ` - Session ID'de ara - `load ` - Session içeriğini yükle - `alias ` - Session için alias oluştur - `alias --remove ` - Alias'ı kaldır - `unalias ` - `--remove` ile aynı - `info ` - Session istatistiklerini göster - `aliases` - Tüm aliasları listele - `help` - Bu yardımı göster ## Örnekler ```bash # Tüm session'ları listele /sessions list # Bugünkü session için alias oluştur /sessions alias 2026-02-01 today # Session'ı alias ile yükle /sessions load today # Session bilgisini göster /sessions info today # Alias'ı kaldır /sessions alias --remove today # Tüm aliasları listele /sessions aliases ``` ## Notlar - Session'lar `~/.claude/session-data/` dizininde markdown dosyaları olarak saklanır; eski `~/.claude/sessions/` dosyaları da okunmaya devam eder - Aliaslar `~/.claude/session-aliases.json` dosyasında saklanır - Session ID'leri kısaltılabilir (ilk 4-8 karakter genellikle yeterince benzersizdir) - Sık referans verilen session'lar için aliasları kullanın