# Yapay zeka ile eşli programlama: ajanla çalışmak

Adres: https://agentvera.dev/blog/yapay-zeka-ile-esli-programlama/ · Yayın: 2026-10-27

Yapay zeka ile eşli programlama için pratik rehber: ajanla sürücü ve yön gösterici rolleri, onay modları, küçük adımlar, diff incelemek ve iki ajanı eşleştirmek.

**Kısaca:**

- Bir ajanla eşli çalışmak klasik pair programming gibidir: bir taraf sürer ve yazar, diğeri yön gösterir ve inceler. Hangi rolü alacağına işin ortasında değil, her işten önce karar ver.
- Onay modunu riske göre seç: tanımadığın ya da riskli kodda her adımı incele; iyi test edilmiş, iyi bildiğin işte dosya düzenlemelerini otomatik kabul ederek ajanın sürmesine izin ver.
- Adımları küçük tut, her birinden sonra commit ya da checkpoint al, her diff’i oku; ikinci bir görüş için ilk ajanın yazdığını ikinci bir ajana incelet.

Yapay zeka ile eşli programlama, geliştiricilerin onlarca yıldır kullandığı pratiğin, koltuklardan biri bir kodlama ajanına verilmiş hâlidir. Bir taraf sürer: kodu yazar. Diğeri yön gösterir: planı tutar, hataları izler ve sıradakine karar verir. Fark şu: ajan senin okuduğundan çok daha hızlı yazar; bu yüzden zor kısım artık kod yazmak değil, yazılan şeyin kontrolünü elde tutmak.

Bu rehber rolleri bir ajanla nasıl paylaşacağını, ajanın ne zaman kendi başına sürmesine izin verip ne zaman her adımı inceleyeceğini, Claude Code, Codex ve Gemini CLI’daki onay modlarının bu seçime nasıl oturduğunu, adımları küçük ve diff’leri okunur nasıl tutacağını, yalnızca iş devretmek yerine öğrenmek için nasıl eşli çalışacağını ve sen yön gösterirken iki ajanı birbiriyle nasıl eşleştireceğini anlatıyor. Komut adları ve modlar Ekim 2026 itibarıyla resmi belgelere göredir.

## Sürücü ve yön gösterici, bir koltukta ajan

Klasik eşli programlamada roller sık değişir. Bir ajanla iki kullanışlı düzen vardır.

**Sen yön gösterirsin, ajan sürer.** İşlerin çoğu için varsayılan budur. Hedefi, kısıtları ve sonraki adımı anlatırsın; ajan dosyaları düzenler ve komutları çalıştırır; sen ne yaptığını okur ve yönlendirirsin. Senin işin iyi bir yön göstericinin işidir: büyük resmi tutmak, kodun yanlış yöne gittiğini fark etmek ve erkenden durdurmak.

**Sen sürersin, ajan yön gösterir.** Kodu kendin yazarsın ve ajanı ikinci göz olarak kullanırsın. Yeni yazdığın fonksiyonu incelemesini, uç durumlar önermesini, bir değerin nereden geldiğini bulmasını ya da sen kodu yazmadan önce testi yazmasını iste. Bu daha yavaştır ama her satırı anlaman gerektiğinde doğru düzendir; örneğin tek başına bakım yapacağın kodda ya da yeni bir dil öğrenirken.

Düzene işe başlamadan önce karar ver ve bunu promptta söyle: “Parser’ı ben yazacağım, yapıştırdığım her fonksiyonu incele ve uç durumları listele” ile “Parser’ı yaz; inceleyebilmem için her fonksiyondan sonra dur” çok farklı oturumlardır. Rolleri söylemeden yarı yolda değiştirmek, kimsenin tam olarak anlamadığı bir kodla sonuçlanmanın yoludur.

## Ne zaman ajan sürsün, ne zaman her adımı incelemeli

Soru ajana güvenip güvenmediğin değil. Bir hatanın ne kadar pahalı olduğu ve onu ne kadar çabuk fark edeceğin. Basit bir kural:

| Durum | Yaklaşım |
| --- | --- |
| İyi test edilmiş kod, net görev, temiz git durumu | Ajan sürsün; son diff’i incele |
| Bildiğin kodda yeni özellik | Önce plan, sonra küçük adımlarla ajan sürsün |
| Tanımadığın kod tabanı ya da kütüphane | Her adımı incele |
| Veritabanı geçişleri, kimlik doğrulama, ödemeler, silmeler | Her adımı ve her komutu incele |
| Üretime ya da ortak uzak depolara dokunan her şey | Kendin çalıştır |

Ajanın sürmesini güvenli yapan iki şey var: davranış bozulduğunda kırılan testler ve bir geri alma yolu. İkisi de varsa yanlış bir dönüş birkaç dakikaya mal olur. İkisi de yoksa her adımı incele ya da önce test ekle ([yapay zeka ile test yazmak](/blog/yapay-zeka-ile-test-yazmak/ "Yapay zeka ile test yazmak") nasıl yapılacağını gösteriyor).

Büyük işler için iyi bir orta yol, önce plan yapmaktır. Claude Code’da plan modu, ajanın hiçbir şeyi düzenlemeden okumasını ve bir plan önermesini sağlar; planı incelersin, düzeltirsin, sonra modu değiştirip uygulamasına izin verirsin. [Claude Code plan modu](/blog/claude-code-plan-modu/ "Claude Code plan modu") bunu adım adım anlatıyor. Bir planı incelemek bir dakika sürer; yanlış bir uygulamayı incelemek çok daha uzun.

## Onay modları: ajan sormadan ne kadarını yapabilir

Her büyük kodlama ajanı CLI’ının, ne sıklıkla durup sana soracağını belirleyen bir ayarı vardır. O ayar, eşli çalışma tarzının yapılandırma olarak yazılmış hâlidir.

**Claude Code**’un Ekim 2026 itibarıyla izin modları:

- `default`: dosya düzenlemelerinden ve henüz izin verilmemiş komutlardan önce sorar. Bu, her adımı incelemektir.
- `acceptEdits`: çalışma dizinindeki dosya düzenlemeleri ve `mkdir`, `mv` gibi basit dosya komutları sormadan kabul edilir; diğer komutlar yine sorar.
- `plan`: okur ve önerir, düzenlemez.
- `auto`: arka plandaki bir sınıflandırıcı her eylemi denetler ve riskli olanları engeller; ajan daha az sorar. Kullanılabilirliği planına ve modele bağlıdır, yöneticiler kapatabilir.
- `bypassPermissions`: hiç denetim yok. Belgeler bunu yalnızca konteyner ya da sanal makine gibi yalıtılmış ortamlarda öneriyor.

Oturum sırasında modlar arasında Shift+Tab ile geçiş yap, `claude --permission-mode acceptEdits` ile başlat ya da ayarlarda `permissions.defaultMode` değerini belirle. Bir soruyu “Yes, and don’t ask again” ile yanıtladığında kural kaydedilir ve aynı komut bir daha sormaz. Ölçeğin riskli ucunu [Claude Code izinlerini atlamak](/blog/claude-code-izinleri-atlamak/ "Claude Code izinlerini atlamak") anlatıyor.

**Codex CLI** bir sandbox’ı bir onay politikasıyla birleştirir. Varsayılan Auto ön ayarı, çalışma alanı içinde düzenleme yapmasına ve komut çalıştırmasına izin verir, dışına çıkmadan önce sorar (`--sandbox workspace-write --ask-for-approval on-request`). Oturum sırasında geçiş yapmak için, örneğin Read Only’ye, `/permissions` kullan; yalnızca bakmasını istiyorsan `--sandbox read-only` ile başlat.

**Gemini CLI**’da `--approval-mode` vardır: `default` (sorar), `auto_edit` (düzenlemeleri kabul eder, diğer araçlar için sorar), `plan` (salt okunur) ve `yolo` (her şeyi kabul eder).

Pratik bir eşleştirme: her adımı incelemek, her yerde varsayılan mod demektir. Rutin işte ajanın sürmesine izin vermek, düzenlemeleri kabul edip shell komutlarını yine onaylamak demektir, çünkü geri döndürülemez şeyler komutlarda olur. Tam otomatik mod bir konteynerde ya da atılabilir bir worktree’de olur; üretim kimlik bilgileri olan bir makinede asla.

## Küçük adımlar

Eşli çalışma, her adım üzerinde konuşulabilecek kadar küçük olduğu için işler. Ajanla bu daha da önemli, çünkü sen ilk yüz satırı okumayı bitirmeden bin satır üretebilir.

- **Her seferinde tek adım iste.** “Doğrulama fonksiyonunu ve testlerini ekle, sonra dur”, “kayıt akışını kur”dan iyidir.
- **Ne zaman duracağını söyle.** Ajanlar bir sonraki bariz işe geçme eğilimindedir. “Bundan sonra dur ve neyi değiştirdiğini özetle” temponun sende kalmasını sağlar.
- **Her yeşil adımdan sonra commit’le.** Adım başına bir commit sana temiz bir geri alma noktası ve okunur bir geçmiş verir. `git add -p` her parçayı eklerken kontrol etmeni sağlar.
- **Aradakiler için checkpoint kullan.** Claude Code’da `/rewind` (ya da iki kez Esc) kodu ve konuşmayı daha önceki bir prompta geri götürür. Shell komutlarıyla yapılan değişiklikleri izlemez; gerçek güvenlik ağın yine git’tir. İkisini de [Claude Code değişikliklerini geri alma](/blog/claude-code-degisiklikleri-geri-alma/ "Claude Code değişikliklerini geri alma") anlatıyor.

Bir adım ters giderse geri al ve öğrendiklerinle yeniden prompt yaz. Ajandan yanlış dönüşünü yanlış kodun üzerine düzeltmesini istemek, genelde adımı baştan başlatmaktan daha büyük bir karmaşa çıkarır.

## Diff incelemek

Yön gösterici olarak ana aracın diff’tir. Adımı kabul etmeden önce oku, sonraki üç adımdan sonra değil.

```bash
git status
git diff --stat
git diff
```

Codex’te `/diff` oturum içinde mevcut değişiklikleri gösterir. Herhangi bir ajandan şunu isteyebilirsin: “Değiştirdiklerinin diff’ini göster ve her parçayı bir satırda açıkla.”

Kodun çalışıp çalışmadığının ötesinde neye bakmalı:

- **Kapsam.** Görevle ilgisi olmayan değişmiş dosyalar. Yeniden adlandırmalar, biçimlendirme ve “küçük temizlikler” gerçek değişiklikleri gizler.
- **Silinmiş ya da zayıflatılmış testler.** Yeni çıktıya uysun diye değiştirilmiş bir beklenti ya da atlanmış olarak işaretlenmiş bir test kırmızı bayraktır.
- **Susturulmuş hatalar.** Boş `catch` blokları, `any` dönüşümleri, kapatılmış lint kuralları, `--force` bayrakları.
- **Yeni bağımlılıklar.** Her biri artık senin bakımını yaptığın koddur.
- **Açıklayamadığın şeyler.** Bir satırın neden orada olduğunu söyleyemiyorsan kabul etmeden önce sor.

Ajan çıktısını pull request aşamasında incelemeyi [yapay zeka kod incelemesi](/blog/yapay-zeka-kod-incelemesi/ "Yapay zeka kod incelemesi") daha derinlemesine anlatıyor.

## Öğrenmek mi, devretmek mi

Bir ajanla eşli çalışmak seni zaten bildiğin işlerde hızlandırabilir ya da bilmediğin şeyleri öğretebilir. Bunlar farklı oturumlar ister.

**Devrettiğinde** sonuç önemlidir. Net kabul ölçütleri ver, ajan sürsün, diff’i ve testleri incele. Bu, şablon kod, geçişler ve zaten anladığın alanlardaki kod için uygundur.

**Öğrenmek istediğinde** bilerek yavaşla:

- Herhangi bir koddan önce plan ve açıklama iste: “Buna nasıl yaklaşacağını ve nedenini açıkla, henüz kod yazma.”
- Ana mantığı kendin yaz ve ajandan incelemesini iste.
- Seçimleri hakkında “neden bu da şu değil?” diye sor ve alternatifi göstermesini iste.
- Önce başarısız bir test yazmasını iste, sonra onu kendin geçir.

Faydalı bir alışkanlık: bir kod parçasını ajan olmadan yeniden yazamıyorsan onu henüz öğrenmedin, yalnızca kabul ettin. Bazı kodlar için bu kabul edilebilir, ama bir karar olmalı, kaza değil.

## İki ajanı eşleştirmek: biri yazar, biri inceler

Yön gösterici rolü ikinci bir ajana da verilebilir. Bir ajan yazar; bir diğeri, kör noktaları farklı olsun diye tercihen farklı bir model, inceler; neye göre davranılacağına sen karar verirsin.

Aynı depoda iki CLI ile basit bir sürüm:

```bash
# Terminal 1: Claude Code implements the step
claude "Add rate limiting to the /login route. Stop when tests pass."

# Terminal 2: Codex reviews the uncommitted changes
codex review --uncommitted
```

`codex review` bir taban dala (`--base main`) ya da tek bir commit’e (`--commit <sha>`) göre de inceleme yapabilir; oturum içinde `/review` aynı işi görür. Katıldığın bulguları yazan ajana geri yapıştır, katılmadıklarını yok say: inceleyenin çıktısı senin için bir tavsiyedir, diğer ajan için emir değil.

Ajandan ajana eşli çalışmayı işler kılan birkaç kural:

- **Farklı model ya da en azından yeni bir oturum.** Yazanla aynı bağlamı paylaşan bir inceleyen ona katılma eğilimindedir.
- **İnceleyen düzenleme yapmaz.** Salt okunur çalıştır. Aynı dosyaları aynı anda düzenleyen iki ajan bir inceleme değil, birleştirme çakışmasıdır.
- **Yön gösterici sen kalırsın.** İnceleme çıktısını sonsuz bir döngüde doğrudan yazana aktarma. Oku, gerçek sorunları seç, onları gönder.
- **Ölçütleri yaz.** “Eksik girdi doğrulamasını, yakalanmayan hataları ve değişen davranışı kontrol et”, “bunu incele”den çok daha faydalı bir inceleme verir.

Büyük işler için aynı düzen, ayrı worktree’lerde birkaç yazan ve tek bir inceleyene kadar büyür; bunu [yapay zeka ajan ekibi](/blog/yapay-zeka-ajan-ekibi/ "Yapay zeka ajan ekibi") anlatıyor.

## AgentVera ile yapmak

AgentVera; Claude Code, Codex, Gemini CLI ve diğer CLI ajanlarını tek pencerede yan yana çalıştırır; böylece iki eşli çalışma düzeni de tek görünüme sığar.

- **[Çalışma alanı](/ozellikler/calisma-alani/ "Çalışma alanı").** Yazan ve inceleyen ajanı aynı projede yan yana panellere koy. Her ajanın kendi izin ayarı vardır (Sor, Otomatik ya da Tam erişim); yazan düzenlemeleri kabul ederken inceleyen yalnızca okur.
- **[Otomatik onay](/ozellikler/otomatik-onay/ "Otomatik onay") (Pro ve Team, Claude Code).** Okumalar, salt okunur git ve test, lint ve build komutları senin yerine onaylanır; `git push`, `rm` ya da `git reset --hard` gibi riskli komutlar ise her zaman sana gelir. Bu, her soruya tıklamadan “ajan sürsün ama tehlikeli kısımlar benim” düzenidir.
- **[Bildirimler ve onaylar](/ozellikler/bildirimler-ve-onaylar/ "Bildirimler ve onaylar").** Bir ajan seni beklediğinde bir kısayol seni doğrudan en uzun süredir bekleyene götürür.
- **[Turlar](/ozellikler/turlar-ve-oturum-tekrari/ "Turlar ve oturum tekrarı").** Her tur kaydedilir; git geçmişine dokunmadan oturumun tek bir adımını geri alabilirsin.
- **[Kod incelemesi](/ozellikler/kod-incelemesi/ "Kod incelemesi").** Tur sonunda seçtiğin bir Claude modeli değişiklikleri inceler ve bulguları önem derecesi ve dosya:satır ile listeler; bunları ajana geri gönderebilirsin. Yön gösterici koltuğunda yerleşik bir ikinci ajan.
- **[İnceleme kutusu](/ozellikler/inceleme-kutusu/ "İnceleme kutusu").** Biten işler değişen dosyalar, risk notları ve diff’lerle kartlar hâlinde bekler; orada onaylar ya da bir notla geri gönderirsin.
- **[Ajanlar arası mesajlaşma](/ozellikler/ajanlar-arasi-mesajlasma/ "Ajanlar arası mesajlaşma").** Aynı projedeki ajanlar farklı CLI’lar arasında bile birbirine mesaj atabilir ve ortak bir görev listesi paylaşabilir; yazan, inceleyene doğrudan sorabilir.

## Toparlarken

Yapay zeka ile eşli programlama, roller net olduğunda işler. Her işten önce kimin süreceğine karar ver. Onay modunu ruh hâline değil riske göre ayarla. Adımları küçük tut ve her yeşil adımdan sonra commit’le. Kabul etmeden önce her diff’i oku. Devretmekle öğrenmek arasında bilerek seçim yap. İkinci bir görüş istediğinde, sen yön göstericide kalırken ikinci bir ajan incelesin.

Pratik yapmak için uzun, adım adım bir iş istiyorsan [yapay zeka ile JavaScript’ten TypeScript’e geçiş](/blog/yapay-zeka-ile-javascriptten-typescripte-gecis/ "Yapay zeka ile JavaScript’ten TypeScript’e geçiş") iyi bir aday: her adım küçük ve ne zaman bittiğini derleyici söyler.

## Sık sorulanlar

**Yapay zeka ile eşli programlama nedir?** Kod üzerinde bir yapay zeka kodlama ajanıyla, iki geliştiricinin eşli çalıştığı gibi çalışmaktır: biri sürer ve kodu yazar, diğeri yön gösterir, yönü belirler ve her adımı inceler. Ajanla iki rolü de alabilirsin.

**Ajanın onaysız çalışmasına izin vermeli miyim?** Yalnızca sonradan ucuza kontrol edebileceğin işlerde: iyi test edilmiş kod, temiz bir git durumu ve anladığın bir görev. Tanımadığın kodda, geçişlerde, güvenlik açısından hassas kısımlarda ya da üretime dokunan her şeyde onayları açık tut ve her adımı incele.

**Bir adım ne kadar büyük olmalı?** Diff’in tamamını birkaç dakikada okuyup başka birine anlatabileceğin kadar küçük. Bir fonksiyon, bir hata düzeltmesi ya da bir dosya iyi bir boyuttur. Bir adım uzun bir açıklama gerektiriyorsa böl.

**Yapay zeka ajanıyla eşli çalışırken öğrenebilir miyim?** Evet, bunu seçersen. Ajandan kod yazmadan önce planını açıklamasını iste, kilit kısımları kendin yaz ve bir yaklaşımı neden diğerine tercih ettiğini sor. Yalnızca diff kabul edersen işi devretmiş olursun ama az şey öğrenirsin.

**İki yapay zeka ajanı birbiriyle eşli çalışabilir mi?** Evet. Yaygın bir düzen, bir ajanın kodu yazması ve ikinci bir ajanın, çoğu zaman farklı bir modelin, commit edilmemiş değişiklikleri incelemesidir. Hangi bulgulara göre davranılacağına karar veren yön gösterici sen olarak kalırsın.

---

**AgentVera hakkında.** AgentVera, Solviera Teknoloji tarafından geliştirilen macOS, Windows ve Linux masaüstü uygulamasıdır. 18 yapay zeka kodlama ajanını (Claude Code, Codex, Gemini CLI, Copilot, Cursor, Antigravity, opencode, Hermes, Qwen Code, Kimi Code, Kiro, Amp, Droid, Goose, Vibe, Crush, Aider, Cline) proje bazında, gerçek terminallerde ve kullanıcının kendi CLI kurulum ve girişleriyle yan yana çalıştırır. Ücretsiz planda sınırsız ajan vardır. İndir: https://agentvera.dev/indir/ · Fiyatlar: https://agentvera.dev/fiyatlar/
