About Eca
ECA, short for Editor Code Assistant, is a free and open source AI pair programming tool that works across editors instead of being tied to one. It follows a protocol first design inspired by the Language Server Protocol: a single ECA server connects any large language model to any editor client, so developers configure it once and get the same assistant in Emacs, VS Code, IntelliJ, Neovim or the ECA desktop app.
It is aimed at developers who want to stay in the loop inside their own editor and choose their own model provider, including OpenAI, Anthropic, GitHub Copilot and Ollama. The three core interactions are chat, where an agent reads, writes and refactors code with rollback of messages and changes; rewrite, where a user selects code, describes a change and accepts or rejects the diff; and inline completion, currently in alpha. Built in code and plan agents are joined by subagents for isolated parallel tasks and custom agents. Native file, shell and editor tools work alongside MCP servers, with approval required for any tool that changes things unless configured otherwise. Rules, skills that follow the agentskills.io specification, slash commands, hooks and switchable configuration variants customize behavior, and OpenTelemetry integration exports metrics on tools, prompts and server performance.
ECA is free to use and open source, with no paid plans published. Users pay only their chosen model provider for API usage, or nothing when running local models.
The project is written in Clojure and developed in the open on GitHub, with a documented protocol that lets other editors build their own clients.