Paralel kodlama ajanları, aynı projede birden fazla yapay zekâ ajanını aynı anda çalıştırma fikridir. Bir ajan özelliği yazarken diğeri testleri hazırlar, üçüncüsü dokümantasyonu günceller. Doğru kurulduğunda tek ajanla sırayla yaptığın işi bölüp paralel yürütürsün. Yanlış kurulduğunda ise ajanlar aynı dosyaları ezer, bağlam şişer ve hangi ajanın ne yaptığını kaybedersin.
Bu yazıda Claude Code ve Codex’i yan yana çalıştırmanın pratik yolunu anlatıyorum: işi nasıl bölersin, dosya çakışmasını nasıl önlersin, çıktıyı bir ajandan diğerine nasıl taşırsın.
Neden paralel kodlama ajanları?
Tek bir ajanla çalışmanın darboğazı beklemektir. Ajan düşünürken, dosya okurken ve test çalıştırırken sen ya bekler ya da başka bir işe geçersin. Paralel ajanlar bu bekleme süresini kullanır.
En çok fayda sağladığı durumlar:
- Bağımsız işler: Arka uç API’si ile ön yüzdeki bir form gibi birbirine dokunmayan değişiklikler.
- Yazma ve doğrulama: Bir ajan kodu yazar, diğeri aynı değişiklik için test yazar.
- Araştırma ve uygulama: Bir ajan kütüphane seçeneklerini karşılaştırırken diğeri mevcut kodu düzenler.
- Farklı güçlü yanlar: Claude Code ve Codex farklı modeller ve araç setleriyle gelir; aynı problemi iki farklı yaklaşımla denemek bazen hızlı sonuç verir.
İşi bölmenin üç kuralı
Paralel çalışmanın başarısı işi nasıl böldüğüne bağlıdır.
1. Dosya sınırlarını önceden çiz
İki ajanın aynı dosyayı değiştirmesi en sık yaşanan sorundur. Her ajana hangi klasörlerde çalışacağını rol talimatında açıkça yaz. Örneğin bir ajana yalnızca src/api/ altında, diğerine yalnızca tests/ altında çalışmasını söyle.
2. Her ajana tek bir hedef ver
“Auth modülünü iyileştir” yerine “Oturum yönetimini refresh token’a taşı” gibi ölçülebilir bir hedef ver. Hedef netse ajan erken durur ve çıktısını kontrol etmek kolaylaşır.
3. Çıktının nereye gideceğini belirle
Bir ajanın sonucu diğerinin girdisi olacaksa bunu baştan tasarla. Plan dosyası mı yazacak, commit mi atacak, yoksa yanıtını doğrudan diğer ajana mı iletecek?
Dosya çakışmasını git worktree ile önle
Klasör sınırları yetmediğinde en sağlam yöntem her ajana ayrı bir çalışma ağacı vermektir. Git worktree aynı depodan farklı dallarda ayrı klasörler açar:
git worktree add ../acme-web-auth -b auth-refactor
git worktree add ../acme-web-tests -b auth-tests
Her ajan kendi klasöründe çalışır, birbirinin dosyalarına dokunmaz. İş bitince dalları normal bir pull request akışıyla birleştirirsin. Bu konuyu git worktree ile paralel geliştirme yazısında ayrıntılı anlattım.
AgentVera’da worktree yönetimi sağ paneldedir: yeni ya da var olan daldan worktree açabilir, değişiklik sayısını ve ana dala göre ileri/geri durumunu görebilir, ajanı doğrudan o worktree’de başlatabilirsin.
Örnek kurulum: Claude Code yazar, Codex test eder
Basit ve etkili bir başlangıç düzeni:
| Ajan | Araç | Rol | Çalışma yeri |
|---|---|---|---|
| Mimar | Claude Code | Özelliği planlar ve uygular | auth-refactor worktree’si |
| Testçi | Codex | Değişiklik için entegrasyon testi yazar | Aynı worktree, yalnızca tests/ |
| Sunucu | Terminal | pnpm dev çalıştırır | Ana klasör |
Kurulum adımları:
- Proje klasörünü AgentVera’ya ekle.
- Yeni ajan penceresinden Claude Code’u seç, adını “Mimar” koy, rolüne dosya sınırlarını yaz.
- Aynı şekilde Codex için “Testçi” ajanını aç.
- Bir Terminal ajanında geliştirme sunucusunu başlat.
- Mimar’a görevi ver; turunu bitirince çıktısını Testçi’ye aktar.
Son adımı elle yapmak yerine bir akış kurabilirsin. Akışlar bir ajanın son yanıtını {{output}} şablonuyla diğerine iletir; hedef ajan meşgulse turunu bitirmesini bekler.
Paralel ajanları izlemek
Ajan sayısı arttıkça asıl iş onları takip etmek olur. Dikkat etmen gerekenler:
- Durum: Hangi ajan çalışıyor, hangisi yanıtını bekliyor, hangisi hata verdi?
- Bağlam boyutu: Uzayan konuşmalar her turda daha fazla token harcar.
- Onay istekleri: Bir ajan izin bekliyorsa diğerleri çalışmaya devam ederken o durur.
AgentVera’nın çalışma alanı ajanları bir ızgarada yan yana gösterir. Her panelde durum, canlı bağlam boyutu ve mesaj kutusu bulunur. Onay bekleyen ajanlar durum çubuğunda listelenir; ⇧⌘A en uzun bekleyene götürür.
Bağlam ve maliyet
Paralel çalışmak token kullanımını da paralel artırır. Her ajanın ilk isteğinde araç tanımları, sistem talimatı ve eklentiler bağlama eklenir. Uzun konuşmalarda bu taban her turda yeniden okunur.
Maliyeti kontrol altında tutmak için:
- Basit işler için ajanı daha dar bir araç setiyle başlat.
- Konuşma uzayınca
/compactile sıkıştır. - Bir ajanın çıktısını diğerine aktarırken tamamını değil, gereken kısmını gönder.
Ayrıntılı ölçümler için Claude Code token tasarrufu yazısına bakabilirsin.
Sık yapılan hatalar
Aynı dosyada iki ajan. En hızlı çözüm worktree ya da kesin klasör sınırıdır.
Belirsiz görev. “Kodu düzelt” gibi açık uçlu görevler ajanın sınırsız dosya okumasına ve bağlamın şişmesine yol açar.
Doğrulamasız birleştirme. Paralel ajanların ürettiği değişiklikleri birleştirmeden önce testleri çalıştır ve farkları incele. Otomatik kod incelemesi burada zaman kazandırır.
Her şeyi aynı anda başlatmak. Önce iki ajanla başla, iş bölümü oturunca üçüncüyü ekle.
Uçtan uca bir örnek: refresh token geçişi
Kâğıt üzerinde iş bölümü kolay görünür; gerçek bir görevde nasıl işlediğine bakalım. Hedef: bir web uygulamasında oturum yönetimini kısa ömürlü erişim token’ı ve döndürülen refresh token yapısına taşımak.
Görevin bölünmesi
İlk adım işi bağımsız parçalara ayırmak. Bu görevde üç parça var:
- Sunucu tarafı: token üretimi, doğrulama ve döndürme mantığı (
src/auth/). - Testler: yeni akış için entegrasyon testleri (
tests/api/). - Dokümantasyon: API değişikliklerinin README’ye yansıtılması.
Sunucu tarafı ile testler aynı davranışa bakar ama farklı klasörlerde çalışır. Dokümantasyon ise ancak sunucu tarafı netleşince anlamlı olur. Bu yüzden ilk ikisini paralel, üçüncüsünü sıralı yürütmek mantıklı.
Rol talimatları
Her ajanın rolünü kısa ve kesin yaz. Örneğin Mimar için:
Yalnızca src/auth/ altında çalış. Testleri değiştirme.
Her değişiklikten sonra pnpm test auth çalıştır.
İşin bitince yaptığın değişiklikleri madde madde özetle.
Testçi için:
Yalnızca tests/ altında çalış. Uygulama koduna dokunma.
Sana gelen özetteki davranışlar için entegrasyon testi yaz.
Rolün son satırı önemli: Mimar’ın yazdığı özet, akış aracılığıyla Testçi’nin girdisi olur. Özet ne kadar düzenliyse Testçi o kadar az dosya okur.
Teslim ve takip
Mimar turunu bitirdiğinde akış son yanıtını şablonla Testçi’ye iletir. Testçi meşgulse akış onun turunu bitirmesini bekler; bağlantıdaki tur sınırı da iki ajanın sonsuz bir döngüye girmesini engeller. Bu sırada sen terminal ajanında geliştirme sunucusunun loglarını izleyebilir ya da üçüncü bir ajana dokümantasyon için hazırlık yaptırabilirsin.
Ne zaman paralel çalışmamalı?
Her iş paralelleşmez. Şu durumlarda tek ajanla sıralı ilerlemek daha verimlidir:
- Değişiklik tek bir dosyada ya da çok sıkı bağlı birkaç dosyada yoğunlaşıyorsa.
- Görevin ne olduğu henüz belli değilse; önce araştırma ve plan gerekir.
- Bir ajanın çıktısı diğerinin başlayabilmesi için şartsa ve ikinci iş kısa sürüyorsa.
Bu durumlarda paralellik yerine aşamalı bir hat kurmak daha iyi sonuç verir. Yapay zeka ajan iş akışı yazısında bu yaklaşımı anlattım.
Kontrol listesi
Paralel bir oturuma başlamadan önce:
- Her ajanın hedefi tek cümleyle yazılı mı?
- Dosya sınırları rol talimatında var mı?
- Çakışma riski varsa ayrı worktree açıldı mı?
- Bir ajanın çıktısı diğerine gidecekse akış ya da plan dosyası hazır mı?
- Testleri çalıştıracak bir ajan ya da terminal var mı?
Sonuç
Paralel kodlama ajanları doğru bölünmüş işlerde ciddi zaman kazandırır. Anahtar, ajanları birbirinden ayırmak ve aralarındaki teslimi açıkça tanımlamaktır. Worktree’ler dosyaları, akışlar çıktıyı, iyi yazılmış roller de sorumlulukları ayırır.
AgentVera bu düzeni tek pencerede kurmak için tasarlandı: Claude Code, Codex ve diğer CLI’lar kendi girişleriyle yan yana çalışır. Ücretsiz planla hemen başlayabilir, ihtiyaç duyduğunda planlara göz atabilirsin.