Emacs için Claude Code IDE Entegrasyonu
(github.com/manzaltu)- 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
- Ç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.
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.
-
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.
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
Hacker News Yorumu
notebookllmgibi araştırmayı ve kayıtları yerelde doğrudan yönetebileceğim bir yaklaşım gerçekten lazım.