Aider (Aider: Terminal Tabanlı Yapay Zeka Kod Asistanı)

Büyük dil modelleri kullanarak terminal üzerinden mevcut kod tabanını düzenleyen, Git entegreli açık kaynaklı AI kod asistanı.

Aider, büyük dil modellerini (LLM) kullanarak geliştiricilerin terminal ortamından çıkmadan kod tabanlarını düzenlemesine olanak tanıyan açık kaynaklı bir yapay zeka kod asistanıdır. Paul Gauthier tarafından 2023 yılında geliştirilen Aider, doğrudan mevcut projelerle etkileşime girerek GPT-4o, Claude Sonnet, Gemini veya Ollama üzerinden çalışan yerel modeller dahil yüzden fazla LLM'i destekler. Aider'ın temel çalışma prensibi, yerel Git deposuyla derin bir entegrasyon kurmak üzerine inşa edilmiştir. Araç, yapılan her değişikliği otomatik olarak Git commit'ine çevirir; bu sayede geliştiriciler AI tarafından üretilen değişiklikleri kolayca geri alabilir ya da inceleyebilir. Terminale yazdığınız doğal dil talimatı Aider tarafından alınır, seçilen LLM'e iletilir ve geri dönen kod değişikliği doğrudan ilgili dosyalara uygulanır. Aider'ın en güçlü özelliklerinden biri Architect/Editor ikili modudur. Bu yaklaşımda iki farklı model iş bölümü yapar: güçlü ve pahalı bir Architect modeli (örneğin Claude Opus veya o3) büyük mimari kararları verir; daha hızlı ve ekonomik bir Editor modeli (Claude Haiku, GPT-4o Mini) bu planı gerçek kod düzenlemelerine çevirir. Aynı görevi tek modelle yapmaya kıyasla hem maliyet hem de hız açısından belirgin avantaj sağlar. Performans açısından Aider, yazılım mühendisliği benchmark testi SWE-Bench Verified'da dikkat çekici sonuçlar elde etmiştir. Claude Sonnet ve Haiku kombinasyonuyla yüzde ellinin üzerinde sorun çözüm oranına ulaşan Aider, pek çok ticari rakibinin önünde konumlanmıştır. Bu başarı, araçın yalnızca kod üretmekle kalmayıp mevcut karmaşık kodu anlayabildiğini ortaya koyar. Yapılandırma esnekliği Aider'ın bir diğer güçlü yanıdır. Proje köküne konulan ".aider.conf.yml" dosyasıyla model tercihi, API anahtarı ve varsayılan davranışlar proje bazında belirlenir. ".aiderignore" dosyasıyla hassas dizinler ve dosyalar LLM bağlamına dahil edilmez; bu özellik kurumsal ortamlarda veri güvenliği açısından önem taşır. Türkiye'deki yazılım geliştiriciler arasında "aider nedir" ve "aider nasıl kullanılır" aramaları hızla artmaktadır. Açık kaynak lisansı (Apache 2.0), yerel model desteği ve "pip install aider-chat" komutuyla dakikalar içinde kurulabilmesi bu ilgiyi beslemektedir. Backend geliştiriciler, MLOps mühendisleri ve açık kaynak katkıcıları Aider'ı özellikle tercih etmektedir çünkü araç herhangi bir IDE eklentisi gerektirmeden doğrudan sunucu veya CI/CD pipeline ortamında çalışabilir.

Aider Nasıl Çalışır?

Aider, çalışma dizininizdeki dosyaları analiz eder ve seçilen LLM'e bağlam olarak iletir. Terminal üzerinden yazdığınız doğal dil komutu modele gönderilir; geri dönen kod değişikliği ise doğrudan dosyalara uygulanır. Araç Git ile tam entegre çalıştığından her değişiklik otomatik olarak commit edilir; böylece git diff veya git log ile tam denetim sağlanır. Aider'ı başlatmak için aider komutu yeterliyken, hangi dosyaların bağlama dahil edileceği /add ve /drop komutlarıyla yönetilir.

Desteklenen LLM'ler ve Yapılandırma

  • check_circle Bulut Modeller: GPT-4o, Claude Opus/Sonnet/Haiku (Anthropic), Gemini 2.5 Pro (Google), Grok (xAI) ve daha pek çok API tabanlı model
  • check_circle Yerel Modeller: Ollama, LM Studio ve llama.cpp üzerinden açık ağırlıklı modeller; internet bağlantısı olmadan çalışma imkânı
  • check_circle Yapılandırma Dosyası: .aider.conf.yml ile API anahtarı, model tercihi ve repo ayarları proje bazında kalıcı olarak saklanır
  • check_circle Gizlilik Kontrolü: .aiderignore ile hassas dosyalar ve dizinler LLM bağlamının dışında tutulur — kurumsal ortamlar için kritik

Architect/Editor İkili Modu

Aider'ın en güçlü senaryosu, mimari karar verme ve kod düzenleme görevlerini farklı modellere dağıtmaktır. Güçlü (ve pahalı) bir Architect modeli büyük resmi görür ve hangi değişikliklerin yapılacağına karar verir; daha hızlı ve ekonomik bir Editor modeli bu planı gerçek kod düzenlemelerine çevirir. Örneğin Claude Opus mimari tasarım için kullanılırken Claude Haiku dosyaları düzenler. Aynı görevi tek bir güçlü modele yaptırmaya kıyasla bu yöntem hem maliyet hem de yanıt süresi açısından belirgin iyileşme sağlar.

Cursor ve GitHub Copilot ile Karşılaştırma

  • check_circle Terminal Bağımsızlığı: Aider herhangi bir IDE gerektirmez; uzak sunucu, CI/CD pipeline veya SSH oturumunda doğrudan çalışır
  • check_circle SWE-Bench Skoru: Claude Sonnet + Haiku kombinasyonuyla %50+ sorun çözüm oranı — çok sayıda ticari rakibin önünde
  • check_circle Tam Git Kontrolü: Her AI değişikliği ayrı commit olarak kaydedildiğinden kod geçmişi temiz ve denetlenebilir kalır; Cursor bu özelliği sunmaz
  • check_circle Açık Kaynak Avantajı: Apache 2.0 lisansıyla kurumsal ortamlarda vendor lock-in olmadan kullanılabilir; kaynak kod incelenebilir

Kurulum ve Türkiye'de Kullanım

Aider'ı kurmak için pip install aider-chat komutu yeterlidir. API anahtarı ortam değişkeni olarak tanımlandıktan sonra proje dizininde aider komutuyla başlatılır. Türkiye'deki yazılım geliştiriciler arasında aider nedir ve aider kurulum aramaları hızla artmaktadır. Açık kaynak lisansı ve yerel model desteği ile API maliyeti ödemeden Ollama üzerinden Llama veya Qwen modelleriyle tamamen ücretsiz kullanım mümkündür. Backend geliştiriciler, MLOps mühendisleri ve açık kaynak katkıcıları Aider'ı özellikle tercih etmektedir.

terminal Kurulum ve ilk oturum: komut komut

  • check_circle Kurulum: python -m pip install aider-install yazın, ardından aider-install komutunu çalıştırın. Bu yol aracı izole bir Python ortamına kurar ve PATH'e ekler. Tek satır tercih edenler için pip install aider-chat da çalışır; uv kullananlar uv tool install --force --python python3.12 aider-chat@latest ile kurabilir.
  • check_circle API anahtarı tanımlama: Anahtarı ortam değişkeni olarak verin: export ANTHROPIC_API_KEY=sk-... veya export OPENAI_API_KEY=sk-... Proje kökündeki .env dosyası da otomatik okunur. Tek seferlik deneme için aider --api-key anthropic=sk-... kalıbı yeterlidir.
  • check_circle İlk oturumu başlatma: Git deposunun kökünde aider komutunu çalıştırın. Aider repo haritasını çıkarır ve sizi komut isteminde bekletir. Düzenlenmesini istediğiniz dosyaları /add app/views.py biçiminde tek tek ekleyin, bağlamdan çıkarmak için /drop kullanın.
  • check_circle En çok işe yarayan slash komutları: /ask soru sorar ama dosyaya dokunmaz, /code doğrudan düzenler, /architect önce plan çıkarıp sonra uygulatır. /run pytest -q komutunun çıktısını sohbete aktarır, /test başarısız testleri modele iletir, /undo son yapay zeka commit'ini geri alır, /diff son değişikliği gösterir.
  • check_circle Bağlam ve maliyet takibi: /tokens mevcut bağlamın token ve dolar karşılığını satır satır listeler. /clear sohbet geçmişini siler, /reset hem geçmişi hem eklenmiş dosyaları temizler. Repo haritasının boyutunu --map-tokens 1024 ile sınırlayabilirsiniz.
  • check_circle Otomatik commit davranışı: Aider varsayılan olarak her düzenlemeyi ayrı bir commit'e çevirir. Bu davranışı --no-auto-commits ile kapatabilirsiniz. Etkileşimsiz çalıştırma için aider --message "testleri düzelt" --yes-always kalıbı CI adımlarında kullanılır.

payments Ollama ile sıfır API maliyetli kurulum

Aider'ın kendisi ücretsizdir, masraf tamamen kullandığınız modelin API faturasından gelir. Bunu sıfırlamak için modeli kendi makinenizde çalıştırabilirsiniz. Önce ollama pull qwen2.5-coder:32b ile modeli indirin, sonra export OLLAMA_API_BASE=http://127.0.0.1:11434 tanımlayıp aider --model ollama_chat/qwen2.5-coder:32b ile başlatın. ollama/ yerine ollama_chat/ öneki önerilir, çünkü sohbet şablonunu Ollama tarafına bırakır.

Yerel modelde en sık yapılan hata bağlam penceresini varsayılanda bırakmaktır. Ollama isteği 2048 token'a kırpar ve Aider'ın gönderdiği dosyalar sessizce kesilir; model de olmayan kodu uydurur. Proje kökünde .aider.model.settings.yml dosyası açıp ilgili model için extra_params altında num_ctx: 8192 (bellek yetiyorsa 32768) tanımlayın.

Donanım tarafında 32B sınıfı bir kodlama modeli 4 bit kuantizasyonda yaklaşık 20 GB VRAM ister. 16 GB kartlar için 14B, 8 GB kartlar için 7B sürümler daha gerçekçidir. Bulut modelde kalacaksanız maliyeti düşürmenin en pratik iki yolu, --cache-prompts ile prompt önbelleğini açmak ve pahalı modeli yalnızca planlama adımında kullanmaktır: aider --model <planlayıcı> --editor-model <ucuz düzenleyici>.

bug_report Sık karşılaşılan hatalar ve çözümleri

  • check_circle SEARCH/REPLACE block failed to match: Model, dosyanın gerçek içeriğiyle birebir eşleşmeyen bir yama üretmiştir. Küçük modellerde sık görülür. Dosyayı /drop edip yeniden /add ile ekleyin ya da --edit-format whole ile modele dosyanın tamamını yazdırın.
  • check_circle Context window exceeded / token limiti aşıldı: Bağlama gereğinden fazla dosya eklenmiştir. /tokens ile yeri kimin kapladığını görün, gereksizleri /drop edin, yalnızca referans olarak lazım olanları /read-only ile ekleyin. Tek alt dizinde çalışıyorsanız aider --subtree-only repo haritasını daraltır.
  • check_circle Model not found veya litellm.BadRequestError: Model adı LiteLLM biçiminde, yani sağlayıcı/model kalıbında yazılmalıdır. Doğru adı tahmin etmek yerine aider --list-models <arama kelimesi> komutuyla listeleyin ve çıktıdaki adı birebir kopyalayın.
  • check_circle Repo has uncommitted changes uyarısı: Aider başlarken commit edilmemiş değişiklik bulursa uyarır, çünkü /undo işlevi bozulur. Ya değişiklikleri kendiniz commit edin ya da --dirty-commits ile Aider'ın önce mevcut durumu kaydetmesine izin verin.
  • check_circle Windows terminalinde bozuk çıktı: Renkler ve kutu karakterleri PowerShell'de bozuluyorsa aider --no-pretty ile sade çıktıya geçin. Kalıcı çözüm WSL2 üzerinde çalıştırmaktır; sesli giriş ve bazı bağımlılıklar da orada daha sorunsuz kurulur.
  • check_circle Beklenmedik API faturası: Her istekte bağlamın tamamı yeniden gönderilir, uzun oturumlar bu yüzden pahalıdır. Konu değiştirdiğinizde /clear ile geçmişi temizleyin, --cache-prompts ile önbelleği açın ve planlama ile düzenleme adımlarını farklı modellere bölün.

Sık Sorulan Sorular

  • check_circle Aider ücretli mi? Aider'ın kendisi tamamen ücretsiz ve açık kaynak (Apache 2.0). GPT-4o veya Claude gibi bulut modeller için API ücreti ödenir; ancak Ollama ile yerel modeller kullanıldığında herhangi bir ücret alınmaz.
  • check_circle Cursor ile farkı nedir? Cursor bir IDE (VSCode tabanlı) iken Aider terminal tabanlı çalışır. Aider IDE gerektirmez; uzak sunucu veya SSH ortamında doğrudan kullanılabilir. Her değişikliği Git commit'e çevirmesi de Aider'ı ayırt eden özelliklerden biridir.
  • check_circle Git olmadan çalışır mı? Aider Git olmadan da çalışabilir; ancak otomatik commit özelliği devre dışı kalır. Mevcut bir Git deposu yoksa başlatma sırasında oluşturulması teklif edilir.
  • check_circle Windows'ta kullanılabilir mi? Evet, pip ile Windows'a kurulabilir. PowerShell veya WSL2 ortamında sorunsuz çalışmaktadır.
  • check_circle Büyük kod tabanlarında performans nasıl? Büyük projeler token maliyetini artırır. /add komutuyla yalnızca ilgili dosyalar bağlama dahil edilir; bu yöntem hem hız hem de maliyet açısından optimize edilmiş sonuç verir.
  • check_circle Aider nasıl kurulur? python -m pip install aider-install komutunu çalıştırıp ardından aider-install yazmanız yeterlidir; pip install aider-chat da aynı işi görür. Kurulumdan sonra API anahtarınızı ortam değişkeni olarak tanımlayın ve Git deposunun kökünde aider komutuyla oturumu başlatın. Windows'ta PowerShell çalışır, ancak WSL2 daha az sürprizle sonuçlanır.
  • check_circle Aider'ı Ollama ile ücretsiz nasıl çalıştırırım? ollama pull qwen2.5-coder:32b ile modeli indirin, export OLLAMA_API_BASE=http://127.0.0.1:11434 tanımlayın ve aider --model ollama_chat/qwen2.5-coder:32b ile başlatın. Bağlam penceresini mutlaka büyütün: .aider.model.settings.yml içinde extra_params altında num_ctx: 8192 yazmazsanız Ollama isteği 2048 token'a kırpar ve dosyalarınız kesilir.
  • check_circle Aider'da dosya hangi komutla eklenir? /add dosya/yolu.py komutu dosyayı düzenlenebilir bağlama alır. Yalnızca okunmasını istediğiniz referans dosyalar için /read-only, bağlamdan çıkarmak için /drop kullanılır. Bağlamdaki dosyaları /ls ile listeleyebilir, maliyetini /tokens ile görebilirsiniz.
  • check_circle Aider maliyetini nasıl düşürürüm? Önce bağlamı küçültün: /tokens ile boyutu izleyin ve işi bitmiş dosyaları /drop edin. --cache-prompts prompt önbelleğini açar ve tekrar eden bağlamın ücretini düşürür. Üçüncü adım, planlamayı güçlü bir modele, düzenlemeyi ucuz bir modele bırakan aider --model <planlayıcı> --editor-model <düzenleyici> kalıbıdır.