1 puan yazan GN⁺ 2025-08-07 | 1 yorum | WhatsApp'ta paylaş
  • Claude Code IDE for Emacs, Emacs içinde Claude Code CLI'yi yerel olarak entegre ederek güçlü bir yapay zeka kodlama asistanı ortamı sağlar.
  • Model Context Protocol (MCP) tabanlı çift yönlü bir köprü sayesinde Claude, Emacs'in LSP'si, proje yönetimi, Elisp fonksiyonları gibi çeşitli işlevleri kullanabilir.
  • Otomatik proje algılama, çoklu oturum, tanılama (hata/uyarı) entegrasyonu, gelişmiş diff, tab-bar ve seçim/buffer takibi gibi Emacs'e özel iyileştirmeler sunar.
  • Emacs komutları ve genişletilebilirliği üzerine kurulu olarak, MCP sunucusu aracılığıyla doğrudan komut sunma ve özelleştirilmiş iş akışı entegrasyonu mümkün olur.
  • Claude ve Emacs ekosistemi arasında derin bir bağ kurarak bulut tabanlı yapay zeka destekli geliştirme ortamı oluşturur.

Genel Bakış

Claude Code IDE for Emacs, Claude Code CLI ile entegrasyonu sayesinde Emacs ortamında Claude AI'nin yeteneklerini en üst düzeyde kullandırmak için geliştirilmiş bir açık kaynak proje. Basit bir terminal sarmalayıcısından farklı olarak, bu paket Claude'un Emacs iç işlevlerini gerçekten kullanabilmesi için çift yönlü iletişim sunan MCP (Model Context Protocol) tabanlı bir köprü sağlıyor. LSP, proje yönetimi, Elisp fonksiyonları gibi Emacs'in güçlü ekosistemiyle entegrasyon kurarak Emacs kullanıcılarına üretken ve akıllı bir AI geliştirme destek ortamı getiriyor.

Ana Özellikler

  • Otomatik proje algılama ve oturum yönetimi

    • Emacs yerleşik project.el'i kullanarak projeleri otomatik algılar ve oturumları ayırır.
    • Her proje için ayrı Claude Code örneği ve buffer sağlar.
  • Terminal entegrasyonu ve renk desteği

    • vterm veya eat üzerinden renkli terminal desteği
    • Emacs içinde doğrudan Claude ile konuşabilirsiniz.
  • MCP protokolüyle IDE entegrasyonu

    Reklam
    • Çeşitli Emacs komutlarını (kod gezinme, sembol sorgulama, AST analizi vb.) MCP sunucusu olarak açar.
    • Claude, Emacs komutlarını ve kullanıcı tanımlı fonksiyonları çalıştırabilir.
  • Yüksek genişletilebilirliğe sahip MCP Tools sunucusu

    • Özelleştirilmiş MCP tool ekleme/ tanımlama mümkündür (ör. tüm proje genelinde arama, global refactoring vb.)
  • Kod tanılama ve diff

    • Flycheck, Flymake entegrasyonu ile kod hata/uyarı tanılama bilgisi sağlar.
    • ediff ile gelişmiş diff görünümü ve tanılama bilgisine erişim.
  • Durum/komut geçişi yönetimi

    • tab-bar ve seçim/buffer takibi sayesinde Claude kullanıcının mevcut bağlamını anlayabilir.
    Reklam

Emacs Araç Entegrasyonu

Claude Code IDE, MCP tool sistemiyle Emacs'in çeşitli komut ve bilgilerini doğrudan Claude'a açar.

  • LSP entegrasyonu (xref)

    • Tanıma (go to definition), proje genelinde sembol/başvuru arama gibi LSP tabanlı akıllı gezinme destekleri.
  • Tree-sitter desteği

    • Söz dizimi ağacı analizi ve AST (soyut sözdizimi ağacı) üzerinden kod yapısı anlayışı sağlar.
  • Imenu, Project entegrasyonu

    • Sembol listeleri, proje dosya ve yapı bilgilerini otomatik sunar.
    Reklam
  • Kişisel Elisp fonksiyonları

    • MCP tool olarak doğrudan açılarak özelleştirilmiş iş akışı ve alana özel işlevler kullanılabilir.

Bu entegrasyonla Claude, Emacs ekosisteminin bağlam bilgisini kullanarak kod düzeyinde hassas yapay zeka desteği sağlayabiliyor.

Kullanım

Temel Komutlar

  • M-x claude-code-ide-menu: Tüm komutları görsel şekilde sunan bir geçici menü çağırır.
  • Proje içinde Claude Code etkinleştirme, istem gönderme, önceki konuşmayı devam ettirme ve çeşitli durum/oturum yönetimi seçenekleri.
  • Birden çok projeyi aynı anda yönetme ve her biri için ayrı bir Claude oturumu çalıştırma imkânı.

Pencere ve Oturum Yönetimi

  • Yeni oturum zaten çalışıyorsa, yalnızca pencere açma/gizleme işlevi yapılır.
  • Standart Emacs komutuyla (C-x 0) pencere kapatılsa bile Claude kapanmaz.

Ayarlar

  • Claude Code CLI, terminal backend'i, tanılama backend'i, pencere konumu/ölçüsü, hata ayıklama seçenekleri gibi detaylı özelleştirme desteklenir.
  • Bayrak ekleme, sistem istemi tanımlama, buffer adlandırma işlevi gibi gelişmiş seçenekler sunulur.
  • MCP sunucusunu etkinleştirme ve kullanılacak araçları/portları belirtme desteği vardır.
Reklam

Terminal Backend Ayarları

  • Varsayılan olarak vterm kullanılır, gerekirse eat backend'ine geçilebilir.
  • eat, saf Elisp tabanlı bir terminaldir ve vterm derleme sorunlarında kullanışlıdır.
  • Özel tuş atamaları sunar (M-RET: istem içinde satır sonu, C-<escape>: çıkış/iptal vb.).

Tanılama / Debug Seçenekleri

  • Flycheck, Flymake otomatik algılanıp entegre edilebilir veya zorunlu olarak ayarlanabilir.
  • Claude terminal reflow (yeniden akış) hatası (#1422) için geçici bir kaçınma seçeneği içerir.
  • Emacs ve CLI seviyesinde ayrıntılı hata ayıklama günlüğü sağlar (WebSocket, JSON-RPC mesajları gibi).

İleri Düzey: Çoklu Worktree, Oturum Operasyonları

  • git worktree kullanımıyla aynı proje içinde dallara göre birden fazla bağımsız oturum çalıştırılabilir.
  • Her iş grubu için benzersiz buffer ve bağlam korunarak paralel geliştirme iş akışı desteklenir.

Emacs MCP Tools Detayı

Yerleşik MCP Tools Örnekleri

  • xref-find-references: projedeki belirli bir sembolün tüm referanslarını bulma.
  • xref-find-apropos: desen tabanlı sembol/kod genel araması.
  • treesit-info: tree-sitter tabanlı AST analiz verisi sağlar.
  • imenu-list-symbols: dosya içindeki tüm fonksiyon ve değişken listesini döker.
  • project-info: güncel projenin meta/veri ve dosya bilgilerini sağlar.

Özelleştirilmiş Tool Ekleme

  • Kullanıcılar kendi Emacs fonksiyonlarını MCP tool formatına göre ekleyebilir.
  • Örneğin, ripgrep ile kod arama aracı ya da belirli alana özgü komut tanımlayıp bunları Claude'dan doğrudan çağırmak mümkün.

Lisans ve İlgili Projeler

  • GNU GPL v3.0 veya üstü lisansla sunulur.
  • İlgili projeler olarak VS Code, Neovim (claudecode.nvim) entegrasyon eklentileri gibi araçlar belirtilmiştir.

Önemi ve Avantajları

Claude Code IDE for Emacs, diğer LLM/AI entegrasyon araçlarının aksine Emacs içindeki yerel çalışma bağlamını ve ekosistem bilgilerini aktif olarak kullanan güçlü bir yapay zeka IDE ortamı sunar. Görece erken aşamada olmasına rağmen, çok sayıda yerleşik özellik, yüksek özelleştirme yeteneği ve çoklu proje desteğiyle Emacs kullanıcıları ve açık kaynak geliştiriciler için çok güçlü bir seçenek sağlar.

1 yorum

 
GN⁺ 2025-08-07
Hacker News Yorumu
  • LSP ve tree-sitter gibi Claude Code veya Aider gibi yapay zeka kodlama araçları, Emacs veya Vim gibi niş pazar editörleri için gerçekten iyi bir haber gibi. Artık eskisi gibi gelişmiş IDE özelliklerini tek tek üretmeye çalışmadan, bu araçlarla kolayca entegre olup kendi düzenleme farklılığınıza odaklanabiliyorlar; bu tür özelleştirme ve esnek entegrasyonun bu editörlerin rekabet gücünü ciddi biçimde yükselttiğini düşünüyorum.
    • LSP gibi ajan tabanlı kodlama araçlarını editöre kolayca entegre edebilecek bir standart olup olmadığını merak ediyorum.
    • Hep böyle hissettim: Emacs ve Vim zaten eskiden güçlü IDE özelliklerine sahipti; LSP ve tree-sitter sayesinde şimdi editör ve dil düzeyinde standardizasyon çok daha kolay.
    • Emacs ve Vim'in niş pazar editörü olduğuna katılmıyorum, zaten temsili editörler bunlar.
  • Emacs'in AI ajanı için en iyi editör olduğu düşüncesini hep benimsedim; ajan, editör durumunu kolayca görüp Elisp ile davranışını bile değiştirebiliyor. Vim ya da Emacs düzeyinde özelleştirmeye izin veren editörlerin gelecekte de büyük avantajı olacağını düşünüyorum.
    • Vim ya da Emacs'in her zaman büyük bir avantajı olduğunu hissediyorum. İnsanlar güçlü yanları farklı değerlendirir ama bence VSCode ve IntelliJ'in kapalı genişletilebilirliği en büyük handikap. Kapalı olmak, kısıtlı eklenti API'si, sandbox çalışma ortamı, kurumsal onay modeli, iç mantığın opaklığı anlamına gelir. Eskiden yeni özellikler için yeni IDE'lere geçmeye çalışırdım; şimdi Emacs öğrenmek benim işimi daha iyi karşılıyor. Emacs ile sorun çözme tarzım, IDE ile çalışmaktan çok daha tatmin edici.
    • Emacs'in gücü Lisp yorumlayıcı çekirdeğinde; AI ajanı runtime'da kullanıcının kullandığıyla aynı değerlendirme mekanizmasıyla tüm editör durumunu doğrudan inceleyip değiştirebiliyor. Çoğu editörde eklenti API'si zaten oldukça katı biçimde sabit.
  • claude-code.el eklentisini memnuniyetle kullanıyorum. Saf bir terminal wrapper olmasına rağmen güçlü bir Transient menüsü de var. Sadece Emacs içinde çalışması bile iş akışında ciddi verim artışı sağladı; eski iTerm ortamına göre çok daha özelleştirilmiş bir akış kurmayı çok kolaylaştırdı. İleride çıkan yeni paketleri de yakından takip etmeyi planlıyorum; eca-emacs de beklentim yüksek. Verimli çalışma hedefli araçları alırken ilk aşamada temkinliyim; genelde büyük projelerde önemli bir “büyük patlama” dönemi gerekiyor.
    • Kısa süre kullandıktan sonra sonunda tekrar terminalde sadece Claude Code kullanır oldum; Emacs'te biraz takılma hissi vardı ve ayrıca terminal penceresini ayrı açmanın anlamı yoktu. mcp.el ile entegre olmaması da eksik kaldı. Claude Code'u işte kullandığımda istediğim kod kalitesine henüz geçemedim. mcp.el de bakılmaya değer.
  • Emacs'in LSP, tree-sitter ve Claude Code gibi son araçları entegre etmesi iyi ama aynı zamanda kurulum zorluğunu gerçekten yükseltmiş gibi. 20 yıllık Emacs kullanıcısıyım ama bugünlerde ortam kurmak kolay değil. Claude Code, IDE entegrasyonundan önce en kolay olan gibiydi (sadece çalışıyor ve otomatik buffer senkronizasyonu nedeniyle neredeyse hiç uğraş gerekmiyordu). Yeni MacOS'ta typescript-ls'i zorlukla çalıştırabildim ama gopls hâlâ indirilmiyor; bir iki saat ayırırsam düzeltebilirim ama nerede takıldığını bulmak zahmetli. Günümüzde emacs kullanıcılarının nasıl ilerlediğini merak edip paylaşayım dedim; şu an Zed ile keyifli kodlama yapıyorum. 20 yıllık Emacs adaptasyonunu bırakmak kolay değil; Emacs'in küçük bir konfigürasyon dosyası düzenlemesinden büyük proje desteğine ve aşırı özelleştirilebilirliğe kadar her şeyi hala ciddiye değer kılıyor. Neovim'in bu tarafta daha iyi olup olmadığını merak ediyorum. Kullandığım komutların ortamda nasıl işlediğini daha iyi anlamak için elisp hata ayıklamayı daha iyi öğrenmeli miyim diye düşünüyorum; ayrıca Emacs tuş bağlamalarına (Dvorak'a kadar!) alışmışken Neovim deneyimi yine farklı olur mu kaygım var.
    • Elisp hata ayıklamayı şiddetle öneririm; onlarca yıl Emacs kullansak da built-in profiler, edebug, apropos, makro genişletme, advising system, indirect buffer gibi şeyleri bilmeyen çok insan var. Emacs'i bir araç olarak düşünürseniz, yol alırken bile parçaları ekleyip sualtı aracına dönüştürebileceğiniz bir şeydir; bu yüzden temel sorun çözümü ve beklenmeyene açık olma zihniyeti gerekiyor. Sorun noktasını hızla bulup gptel buffer içinde hook veya advise fonksiyonuna uygun elisp'i yazıp hemen test edebilirsin; o özgürlük hissini deneyimlemek gerekir. Son dönemde “temiz” bir konfigürasyon sürdürmüyorum, modülerliği iyi tutup gerektiğinde elisp ekliyorum. Çoğu dış paket güncellemesi gibi dışsal nedenlerle bozulmalar olsa da sorunu bulup alternatif bulmak genelde birkaç dakikada biter, bu da nadir oluyor.
    • Ortam sorunlarını yönetmek için Emacs'i Docker ortamında çalıştırıyorum; emacs-native-dockerfiles bakılabilir.
    • Emacs'e yeni bir dil ekosistemi entegre etmek, paket ve dış araç (LSP sunucusu vb.) seçimini oldukça zahmetli kılıyor; “deneme” düzeyinde bile çok proje var, her seferinde buna karar vermek gerekiyor. Harici araç indirme/kurulumda Nix (devenv.sh), direnv vb. kullanarak Emacs'in doğrudan indirme yapmasını engelliyor, sadece yolları belirliyorum. İlgili konfigürasyon dosyalarını da devenv ile saklayıp ekipteki herkesin aynı ortamı kullanabilmesini sağlıyorum.
    • 8 yıllık Emacs kullanıcısı olmama rağmen iki aydır tamamen nvim'e geçtim ve bir aydır Emacs'i hiç açmadım. lazy.vim kurup AI eklentilerini dönüşümlü kullanıyorum. nvim ekosistemi ve topluluğu son dönemde daha canlı; ThePrimeagen'ı takip etmek lazım.
    • Neovim deneyimi de çok gelişti; temel bir kurulumdan tam IDE özelliklerine kadar her şey kurulabiliyor. Hazır dağıtımlar da çok fazla, örneğin LazyVim da bakın. AI eklentileri için awesome-neovim #ai da iyi bir liste.
  • Org mode ve daha güçlü bütünleşme ya da genel not tutma AI özellikleri çok daha acil; github/copilot 30 gün geçince konuşmaları silerek AI ile bilgi tabanı kurmaya ciddi engel olduğunu bizzat gördüm. Google'ın notebookllm gibi araştırmayı ve kayıtları yerelde doğrudan yönetebileceğim bir yaklaşım gerçekten lazım.
    • gptel-mode'u denemenizi öneririm; konuşmalar org buffer'da saklanır, oturumları kolayca kaydedip geri yükleyebilirsiniz; mcp.el ile de iyi entegre olur.
    • ob-aider da bakılmaya değer, ob-aider
  • mcp sunucusuna araç eklemeyi serbest yapabilme özelliği çok tatmin edici; Emacs'e göre beklediğim gibi. Yıllardır kullanıyorum ama son zamanlarda elisp'i daha sık kendim yazıyorum; Claude'nun elisp yazma desteği de oldukça iyi olduğu için daha sık kullanıyorum (bazen parantez hizalamasını kendim düzeltiyorum ama genel olarak iyi). Steve Yegge'in efrit'ini de mutlaka deneyeceğim; ajanın rastgele bir Elisp ifadesi yazıp çalıştırabilmesi Emacs'in sınırlarını bir adım öteye taşıyor. efrit
    • Uzun süredir Yegge hayranı ve takipçisiyim; hâlâ bunun bir vibe code balayı olduğunu düşünüyorum ama Emacs yeteneğinde kimseye göre daha iyi olduğuna inanıyorum. 1-2 yıl önce büyük LLM'lerin Elisp'te tuhaf şekilde güçlü olduğunu keşfettim; bu da hipermodern bir projenin başlangıcıydı. efrit de oldukça umut verici (tam kurulumunu tamamlayamadım).
  • Aynı anda 5'ten fazla Emacs/Claude Code entegrasyon paketi var ve iki-üç tanesi Reddit gibi yerlerde sert rekabet ediyor, bu ilginç. Ama gerçekten iyi plugin'ler sessizce var ve kimsenin pek bahsetmediği gibi görünüyor. yuya373/claude-code-emacs paketi rakiplerin neredeyse tüm işlevlerini zaten implement etmiş.
    • Ne kadar popüler olduğunu bilmiyorum ama kurulumu en kolay olan gibi görünüyor; melpa claude-code
    • Bu pakette Claude-code-ide'nin /ide bütünleşmesi yok gibi duruyor.
  • eca da kesinlikle denemenizi öneririm; Emacs'ta en iyi AI pair programming aracını yaratmaya odaklanıyor.
  • Son zamanlarda Emacs topluluğunda bu AI entegrasyon tartışmalarının kendisi bile eleştiriliyor gibi bir hava olduğunu hissettim; ama bu tepkinin kazançtan daha çok zarar verdiğini düşünüyorum. AI bugünlerden farklı bir şekilde gelişse bile Emacs'in kökleri MIT AI Lab'dedir; bu AI çalışma grubunun çıkışlı araçlarına entegrasyondan kaçınma yaklaşımı garip.
    • Emacs'in büyüsü kullanıcı merkezli kontrolde: Elisp katmanından istediğiniz her şeyi değiştirebildiğiniz için bu tür paketler hep çıkıyor. VS Code ise yapısal olarak parçalanmayı teşvik ediyor; Microsoft kendi kapalı araçları için özel API kullanırken dışarıya çok daha kısıtlı genişletilebilir API sunuyor; bu yüzden sayısız vscode fork oluşuyor. Emacs'ta gerçekten tutkulu ve yetenekli tek bir Elisp geliştiricisi çoğu şeyi değiştirebilir ve yeni AI/LLM entegrasyon modülleri de bolca gelebilir. Emacs topluluğunun eleştirisi biraz abartılı da olabilir; pratikte AI/LLM eklentileri düzenli şekilde çıkıyor ve iyi tepki alıyor, örneğin gptel
    • Bu havanın nedeni Richard Stallman; o, özgür yazılım projeleri hazır değilken “özgür olmayan yazılım” alternatiflerin entegrasyonunun riskli olduğunu düşünüyordu. Bu tavır GCC genişletmeleri, LLVM debugger, tree-sitter, git/bzr, CI build farm gibi birçok kararda kabulü geciktirdi; bu sırada Emacs gibi çekirdek projelerin alternatiflerine geçişin hızı düştü ve sonunda her zaman geç alındı. Bazen de FSF'nin konumunu koruma tavrı gibi görünüyor.
    • Emacs topluluğu çok çeşitli; her yerde eleştiri var ama bunu umursamayın. 3. taraf modüllerle her istediğinizi ekleyebilirsiniz, çekirdek ana geliştiricilerinin engel koyma şansı yok.
    • MIT AI Lab'in günümüz AI patlamasıyla bağlantılı olduğunu yeni öğrendim, ilginç.
  • Bu araçları gerçekten çok bekliyorum; Emacs ile AI'ı kod akışına entegre etmeyi seviyorum. Ama asıl istediğim, bunların $2000'in altındaki bir donanımda tamamen yerel çalışması. Şu anda veya yakın gelecekte bunun mümkün olup olmadığını ve yerel modelle kodlama ajanını doğrudan kullanan biri var mı merak ediyorum.
    • Bellek verimli çıkarım ve açık kaynak kod odaklı modellere dair muazzam ilerleme var; son zamanlarda Qwen3-Coder modeli ailesi yoğun ilgiyi çekiyor. Yerel çalıştırma için Ollama, LM Studio gibi araçlar var; model boyutu/kuantizasyona göre değişir ama $2000 bütçeyle oldukça çok modeli çalıştırabilirsiniz. M serisi Mac'ler de ekonomik açıdan iyi. Yerel LLM kullanımıyla ilgili bilgiyi LocalLlamas alt dizisinde bolca bulabilirsiniz. Büyük AI araştırma ekipleri seviyesine denk gelmeyebilir ama tamamen yerel kurulum istiyorsanız yine de oldukça ilginç ve denemeye değer bir proje.
    • gptel, yerel dahil çoklu modeli destekliyor.
    • MacMini veya frame.work desktop, ya da Nvidia DGX Spark da bir seçenek (minimum 3k)