Integración de Claude Code IDE para Emacs
(github.com/manzaltu)- Claude Code IDE for Emacs integra de forma nativa Claude Code CLI en Emacs para ofrecer un entorno de asistente de programación con IA muy potente
- A través de un puente bidireccional basado en Model Context Protocol (MCP), Claude puede aprovechar diversas funciones de Emacs como LSP, gestión de proyectos y funciones de Elisp
- Proporciona funciones optimizadas para Emacs como detección automática de proyectos, sesiones múltiples, integración de diagnóstico (errores/advertencias), diff avanzado, seguimiento de tab-bar y selección/buffers
- Gracias a los comandos y la extensibilidad de Emacs, es posible exponer comandos directamente mediante un servidor MCP e integrar flujos de trabajo personalizados
- Construye un entorno de desarrollo con soporte de IA en la nube mediante una conexión profunda entre Claude y todo el ecosistema de Emacs
Descripción general
Claude Code IDE for Emacs es un proyecto de código abierto que potencia las capacidades de Claude AI dentro de Emacs mediante su integración con Claude Code CLI. A diferencia de un simple wrapper de terminal, este paquete ofrece un puente basado en MCP (Model Context Protocol) con comunicación bidireccional, diseñado para que Claude pueda utilizar realmente las funciones internas de Emacs. Conecta con el ecosistema sólido de Emacs, incluyendo LSP, gestión de proyectos y funciones de Elisp, para implementar un entorno de soporte al desarrollo con IA productivo e inteligente para usuarios de Emacs.
Características principales
-
Detección automática de proyectos y gestión de sesiones
- Usa
project.elintegrado en Emacs para reconocer proyectos automáticamente y separar sesiones - Proporciona instancias y buffers de Claude Code independientes para cada proyecto
- Usa
-
Integración de terminal y soporte de color
- Soporte de terminal con color mediante vterm o eat
- Permite conversar con Claude dentro de Emacs
-
Integración de IDE a través del protocolo MCP
- Expone diversos comandos de Emacs (exploración de código, consulta de símbolos, análisis AST, entre otros) como servidor MCP
- Claude puede ejecutar comandos de Emacs y funciones definidas por el usuario
-
Servidor de herramientas MCP altamente extensible
- Posibilidad de agregar/definir herramientas MCP personalizadas (p. ej., búsqueda en todo el proyecto, refactorización global, etc.)
-
Diagnóstico de código y diff
- Entrega información de diagnóstico de errores/advertencias del código mediante Flycheck y Flymake
- Soporta vista diff avanzada y acceso a información de diagnóstico usando ediff
-
Gestión de estado/traslado de comandos
- Con tab-bar, seguimiento de selección y buffers, Claude puede comprender el contexto actual del usuario
Integración de herramientas de Emacs
Claude Code IDE expone directamente a Claude, mediante el sistema MCP tool, múltiples comandos e información de Emacs
-
Integración LSP (xref)
- Soporte de navegación inteligente basada en LSP, incluyendo go-to-definition y búsqueda global de símbolos/referencias del proyecto
-
Soporte de Tree-sitter
- Ofrece comprensión de la estructura del código mediante análisis de árbol sintáctico y AST (árbol sintáctico abstracto)
-
Integración de Imenu y Project
- Proporciona automáticamente símbolos, archivos del proyecto e información de estructura
-
Funciones Elisp personalizadas
- Expuestas directamente como MCP tool para aprovechar flujos de trabajo únicos o funciones especializadas por dominio
Con esta integración, Claude puede utilizar la información de contexto del ecosistema de Emacs para ofrecer asistencia de IA precisa a nivel de código
Uso
Comandos básicos
M-x claude-code-ide-menu: Invoca un menú transitorio que muestra visualmente todos los comandos- Activación de Claude Code dentro del proyecto, envío de prompts, reanudación de conversaciones previas y diversa gestión de estados/sesiones
- Posibilidad de administrar varios proyectos simultáneamente y operar sesiones únicas de Claude por cada proyecto
Ventanas y gestión de sesiones
- Si una nueva sesión ya se está ejecutando, solo se alterna/mostrar la ventana
- Aun cerrando la ventana con el comando estándar de Emacs (
C-x 0), Claude en sí no termina
Configuración
- Soporta personalización detallada de Claude Code CLI, backend de terminal, backend de diagnóstico, posición/tamaño de ventanas, opciones de depuración, entre otros
- Ofrece opciones avanzadas como agregar flags, definir prompts del sistema y función de nombre de buffer
- Es posible activar el servidor MCP y definir herramientas/puerto en uso
Configuración del backend de terminal
- El valor predeterminado es vterm, con opción de cambiar a eat si es necesario
- eat es un terminal puro basado en Elisp y es útil cuando hay problemas de compilación de vterm
- Incluye atajos de teclado dedicados (M-RET: salto de línea en el prompt, C-<escape>: salida/cancelación, etc.)
Opciones de diagnóstico/depuración
- Detección/enlace automático o especificación forzada de Flycheck y Flymake
- Incluye opción temporal para evitar el bug de reflujo/reajuste del terminal de Claude (#1422)
- Soporta logs de depuración detallados a nivel de Emacs y CLI para ver mensajes de WebSocket, JSON-RPC, entre otros
Avanzado: múltiples worktree y operación de sesiones
- Uso de
git worktree, con posibilidad de ejecutar varias sesiones independientes por ramas dentro del mismo proyecto - Soporte a flujos de trabajo de desarrollo paralelo mediante buffers y contexto únicos por grupo de trabajo
Detalle de Emacs MCP Tools
Ejemplos de MCP Tools incorporadas
- xref-find-references: búsqueda completa de referencias de un símbolo específico dentro del proyecto
- xref-find-apropos: búsqueda global de símbolos/código basada en patrón
- treesit-info: entrega datos de análisis AST basados en tree-sitter
- imenu-list-symbols: muestra todas las funciones y variables de un archivo
- project-info: provee metadatos y archivos del proyecto actual
Añadir herramientas personalizadas
- Los usuarios pueden agregar sus propias funciones de Emacs siguiendo el formato de herramientas MCP
- Por ejemplo, se puede definir una herramienta de búsqueda de código con ripgrep o comandos propios de un dominio y llamarlos directamente desde Claude
Licencia y proyectos relacionados
- Disponible bajo GNU GPL v3.0 o superior
- Se mencionan proyectos relacionados como integraciones de VS Code y Neovim (claudecode.nvim)
Importancia y ventajas
Claude Code IDE for Emacs ofrece un entorno de IDE con IA más poderoso que las herramientas de integración de LLM/IA existentes, ya que permite aprovechar de forma activa el contexto de trabajo y la información del ecosistema de Emacs. Aun en una fase relativamente temprana, cuenta con múltiples funciones integradas, alto nivel de personalización y soporte multi-proyecto, por lo que es una opción muy sólida para usuarios de Emacs y desarrolladores de código abierto
1 comentarios
Comentario de Hacker News
notebookllmde Google para gestionar localmente investigación y notas.