Integrasi Claude Code IDE untuk Emacs
(github.com/manzaltu)- Claude Code IDE for Emacs mengintegrasikan Claude Code CLI secara native di dalam Emacs untuk menyediakan lingkungan asisten coding AI yang kuat
- Melalui jembatan dua arah berbasis Model Context Protocol (MCP), Claude dapat memanfaatkan berbagai fitur Emacs seperti LSP, manajemen proyek, fungsi Elisp, dan lainnya
- Menyediakan fitur-fitur yang dioptimalkan untuk lingkungan Emacs seperti deteksi proyek otomatis, sesi ganda, integrasi diagnosis (error/peringatan), diff tingkat lanjut, serta pelacakan tab-bar/seleksi-buffer
- Berbasis pada perintah dan extensibilitas Emacs, memungkinkan pemaparan perintah secara langsung melalui MCP server dan integrasi alur kerja yang disesuaikan
- Membangun lingkungan pengembangan berbasis AI di cloud melalui koneksi mendalam antara Claude dan seluruh ekosistem Emacs
Ringkasan
Claude Code IDE for Emacs adalah proyek open source yang memaksimalkan kemampuan Claude AI di dalam lingkungan Emacs melalui integrasi dengan Claude Code CLI. Berbeda dari wrapper terminal sederhana, paket ini didesain untuk menyediakan jembatan berbasis MCP (Model Context Protocol) yang mendukung komunikasi dua arah, sehingga Claude dapat benar-benar memanfaatkan fitur internal Emacs. Paket ini terhubung dengan ekosistem Emacs yang kuat seperti LSP, manajemen proyek, dan fungsi Elisp, sehingga menghadirkan lingkungan dukungan pengembangan AI yang produktif dan cerdas yang khas untuk pengguna Emacs.
Fitur Utama
-
Deteksi proyek otomatis dan manajemen sesi
- Memanfaatkan project.el bawaan Emacs untuk mengenali proyek secara otomatis dan memisahkan sesi
- Menyediakan instans Claude Code dan buffer yang terpisah per proyek
-
Integrasi terminal dan dukungan warna
- Dukungan terminal berwarna melalui vterm atau eat
- Percakapan dengan Claude langsung di dalam Emacs
-
Integrasi IDE melalui protokol MCP
- Mengekspos berbagai perintah Emacs (navigasi kode, pencarian simbol, analisis AST, dan lain-lain) ke MCP server
- Claude dapat mengeksekusi perintah Emacs dan fungsi kustom
-
Server MCP Tools yang sangat dapat diperluas
- Dapat menambahkan/menentukan MCP tool yang dipersonalisasi (contoh: pencarian di seluruh proyek, refactoring global, dan lain-lain)
-
Diagnostik kode dan diff
- Menyediakan informasi diagnosis error/peringatan kode lewat integrasi Flycheck dan Flymake
- Mendukung tampilan diff canggih dan akses informasi diagnosis menggunakan ediff
-
Manajemen status dan transisi perintah
- Melalui tab-bar, pelacakan seleksi/buffer, dan lainnya, Claude dapat memahami konteks saat ini dari pengguna
Integrasi Alat Emacs
Claude Code IDE mengekspos langsung berbagai perintah dan informasi Emacs ke Claude via sistem MCP tool
-
Integrasi LSP (xref)
- Mendukung navigasi cerdas berbasis LSP seperti go-to-definition dan pencarian simbol/referensi global di seluruh proyek
-
Dukungan Tree-sitter
- Menyediakan pemahaman struktur kode berbasis analisis pohon sintaksis (AST/Abstract Syntax Tree)
-
Integrasi Imenu, Project
- Menyediakan daftar simbol, informasi file, dan struktur proyek secara otomatis
-
Fungsi Elisp kustom
- Dapat diekspos langsung sebagai MCP tool, sehingga memungkinkan penggunaan alur kerja/fitur spesifik domain secara fleksibel
Dengan integrasi ini, Claude dapat memanfaatkan konteks informasi dari ekosistem Emacs untuk memberikan dukungan AI yang presisi pada level kode.
Cara Penggunaan
Perintah Dasar
M-x claude-code-ide-menu: Memanggil menu transien yang menampilkan semua perintah secara visual- Memfasilitasi aktivasi Claude Code di dalam proyek, pengiriman prompt, melanjutkan percakapan sebelumnya, serta berbagai manajemen status/sesi
- Dapat mengelola beberapa proyek sekaligus dengan mengoperasikan sesi Claude unik per proyek
Pengelolaan Jendela dan Sesi
- Jika sesi baru sudah berjalan, hanya akan melakukan toggle/menampilkan jendela
- Meskipun menutup jendela dengan perintah Emacs standar (C-x 0), Claude itu sendiri tidak akan berhenti
Pengaturan
- Mendukung kustomisasi detail untuk Claude Code CLI, backend terminal, backend diagnosis, posisi/ukuran jendela, opsi debug, dan lain-lain
- Menyediakan opsi tingkat lanjut seperti menambahkan flag, menentukan system prompt, dan fungsi penamaan buffer
- Dapat mengaktifkan server MCP dan menentukan tool/port yang digunakan
Pengaturan Backend Terminal
- Secara default adalah vterm, dan dapat beralih ke backend eat bila diperlukan
- eat adalah terminal murni berbasis Elisp yang berguna jika ada masalah pada proses build vterm
- Menyediakan keybinding khusus (M-RET: baris baru di prompt, C-<escape>: keluar/batal, dll.)
Opsi Diagnostik dan Debugging
- Dapat mendeteksi/menautkan Flycheck dan Flymake secara otomatis, atau menentukan secara paksa
- Menyediakan opsi sementara untuk menghindari bug relayout terminal Claude (#1422)
- Mendukung log debugging detail di tingkat Emacs dan CLI (untuk memeriksa pesan WebSocket, JSON-RPC, dan lain-lain)
Lanjutan: Worktree dan Pengoperasian Sesi
- Memanfaatkan git worktree untuk menjalankan beberapa sesi independen per cabang pada proyek yang sama
- Mendukung alur kerja pengembangan paralel dengan mempertahankan buffer dan konteks unik per kelompok kerja
Rincian Emacs MCP Tools
Contoh MCP Tools Bawaan
- xref-find-references: Menelusuri seluruh referensi simbol tertentu di seluruh proyek
- xref-find-apropos: Pencarian menyeluruh simbol/kode berdasarkan pola
- treesit-info: Menyediakan data analisis AST berbasis tree-sitter
- imenu-list-symbols: Menampilkan daftar semua fungsi dan variabel dalam file
- project-info: Menyediakan metadata dan informasi file proyek saat ini
Menambahkan Tool Kustom
- Pengguna dapat menambahkan fungsi Emacs sendiri sebagai MCP tool sesuai format MCP
- Sebagai contoh, alat pencarian kode berbasis ripgrep atau perintah khusus domain dapat didefinisikan dan dipanggil langsung dari Claude
Lisensi dan Proyek Terkait
- Tersedia di bawah lisensi GNU GPL v3.0 atau yang lebih baru
- Memperkenalkan proyek terkait seperti plugin integrasi VS Code, Neovim (claudecode.nvim), dan lainnya
Signifikansi dan Kelebihan
Claude Code IDE for Emacs menyediakan lingkungan AI IDE yang kuat karena dapat memanfaatkan konteks kerja dan informasi ekosistem Emacs secara mendalam, berbeda dari berbagai alat integrasi LLM/AI lain. Walau masih berada pada tahap awal, dengan beragam fitur bawaan, kemampuan kustomisasi yang tinggi, dan dukungan multi-proyek, ini menjadi pilihan yang sangat kuat bagi pengguna Emacs dan pengembang open source
1 komentar
Pendapat Hacker News
notebookllmyang memungkinkan riset dan catatan dikelola langsung secara lokal terasa kuat.