Integração do Claude Code IDE para Emacs
(github.com/manzaltu)- Claude Code IDE for Emacs integra nativamente o Claude Code CLI ao Emacs, fornecendo um ambiente robusto de assistente de codificação com IA.
- Através de uma ponte bidirecional baseada no Model Context Protocol (MCP), o Claude consegue utilizar diversos recursos do Emacs, como LSP, gerenciamento de projetos e funções Elisp.
- Oferece recursos otimizados para o ambiente Emacs, como detecção automática de projetos, múltiplas sessões, integração de diagnóstico (erro/aviso), diff avançado, rastreamento de tab-bar e de seleção/buffer.
- Com os comandos e a extensibilidade do Emacs, é possível expor comandos diretamente e integrar fluxos de trabalho personalizados por meio de um servidor MCP.
- Por meio de uma conexão profunda entre o Claude e todo o ecossistema do Emacs, constrói-se um ambiente de desenvolvimento com suporte de IA em nuvem.
Visão geral
Claude Code IDE for Emacs é um projeto de código aberto que maximiza as capacidades da IA Claude dentro do Emacs por meio da integração com o Claude Code CLI. Diferente de wrappers de terminal simples, este pacote oferece uma ponte baseada em MCP (Model Context Protocol) com comunicação bidirecional, permitindo que o Claude realmente aproveite recursos internos do Emacs. Ao conectar com o ecossistema poderoso do Emacs, como LSP, gerenciamento de projetos e funções Elisp, ele implementa um ambiente de suporte ao desenvolvimento por IA produtivo e inteligente para usuários de Emacs.
Principais recursos
-
Detecção automática de projeto e gerenciamento de sessão
- Usa o
project.elembutido no Emacs para reconhecer projetos automaticamente e separar sessões - Fornece instância e buffer individuais do Claude Code por projeto
- Usa o
-
Integração de terminal e suporte a cores
- Suporte a terminal colorido via vterm ou eat
- Conversa com o Claude dentro do Emacs
-
Integração de IDE via protocolo MCP
- Exposição de vários comandos do Emacs (navegação de código, consulta de símbolos, análise AST etc.) em um servidor MCP
- Permite ao Claude executar comandos do Emacs e funções personalizadas
-
Servidor de Tools MCP de alta extensibilidade
- Possível adicionar/definir ferramentas MCP personalizadas (por exemplo: busca em projeto inteiro, refatoração global etc.)
-
Diagnóstico de código e diff
- Fornece informações de diagnóstico de erros/avisos de código por meio de integração com Flycheck e Flymake
- Suporte para view de diff avançado usando ediff e acesso a dados de diagnóstico
-
Gerenciamento de mudança de estado/comandos
- Com
tab-bar, rastreamento de seleção e buffer, o Claude pode entender o contexto atual do usuário
- Com
Integração de ferramentas do Emacs
Claude Code IDE expõe diretamente diversos comandos e informações do Emacs ao Claude via sistema de ferramentas MCP.
-
Integração com LSP (xref)
- Suporte a navegação inteligente baseada em LSP, incluindo go-to-definition e busca de símbolos/consultas em nível global do projeto
-
Suporte a Tree-sitter
- Fornece compreensão da estrutura do código por meio de análise de árvore de sintaxe e AST (Árvore de Sintaxe Abstrata)
-
Integração com Imenu e Project
- Disponibiliza automaticamente listas de símbolos, arquivos do projeto e informações de estrutura
-
Funções Elisp personalizadas
- Exposta diretamente como MCP tool para aproveitar fluxos de trabalho e funcionalidades de domínio específico
Essa integração permite que o Claude utilize informações de contexto do ecossistema Emacs para oferecer suporte de IA preciso em nível de código.
Uso
Comandos principais
M-x claude-code-ide-menu: abre o menu transitório com todos os comandos disponíveis- Ativa o Claude Code no projeto, envia prompts, retoma conversas anteriores e oferece diversos recursos de estado/gerenciamento de sessão
- É possível gerenciar vários projetos simultaneamente, com sessão Claude dedicada por projeto
Gerenciamento de janela e sessão
- Se uma nova sessão já estiver em execução, apenas alterna/mostra a janela
- Mesmo ao fechar a janela com o comando padrão do Emacs (
C-x 0), o próprio Claude não é encerrado
Configurações
- Suporte a personalização detalhada de Claude Code CLI, backend de terminal, backend de diagnóstico, posição/tamanho da janela e opções de depuração
- Opções avançadas como adição de flags, definição de system prompt, função de nomeação de buffer, entre outras
- Possível ativar servidor MCP e definir ferramentas/porta usadas
Configuração do backend de terminal
- O padrão é vterm, com opção de alternar para o backend eat quando necessário
- O eat é um terminal baseado em Elisp puro, útil quando houver problemas de build do vterm
- Atalhos dedicados disponíveis (
M-RET: quebra de linha no prompt,C-<escape>: sair/cancelar, entre outros)
Opções de diagnóstico/depuração
- Flycheck e Flymake podem ser detectados e integrados automaticamente ou definidos manualmente
- Opção temporária para evitar o bug de reflow do terminal do Claude (#1422)
- Suporte a logs detalhados de depuração no nível do Emacs e do CLI (visualização de mensagens WebSocket, JSON-RPC etc.)
Avançado: vários worktrees, operação de sessão
- Utiliza git worktree para executar várias sessões independentes de branches dentro do mesmo projeto
- Mantém buffer e contexto exclusivos por grupo de tarefas, suportando fluxos de trabalho paralelos
Detalhes das MCP Tools do Emacs
Exemplos de MCP Tools integradas
- xref-find-references: busca total de referências de um símbolo específico dentro do projeto
- xref-find-apropos: busca global de código/símbolos baseada em padrão
- treesit-info: fornece dados de análise AST com base em tree-sitter
- imenu-list-symbols: exibe todas as funções e variáveis do arquivo
- project-info: fornece metadados e arquivos do projeto atual
Adição de ferramentas personalizadas
- Usuários podem adicionar suas próprias funções do Emacs conforme o formato de ferramentas MCP
- Como exemplo, é possível definir uma ferramenta de busca de código com ripgrep ou comandos específicos de domínio e chamá-los diretamente pelo Claude
Licença e projetos relacionados
- Disponível sob GNU GPL v3.0 ou superior
- Cita projetos relacionados, como integrações para VS Code, Neovim (
claudecode.nvim) e outros plugins
Importância e vantagens
O Claude Code IDE for Emacs oferece um ambiente de IDE de IA poderoso que, ao contrário das ferramentas de integração de LLM/IA existentes, consegue aproveitar ativamente o contexto de trabalho e as informações do ecossistema exclusivos do Emacs. Mesmo em uma fase relativamente inicial, já traz vários recursos integrados, alto potencial de personalização e suporte a múltiplos projetos, sendo uma escolha muito forte para usuários de Emacs e desenvolvedores de código aberto.
1 comentários
Opinião no Hacker News
notebookllmdo Google.