
Sign in to rate this tool.
Overview

ECA (Editor Code Assistant) is a free, open‑source tool that connects large language models (LLMs) to any code editor through a single server. It works with VS Code, Emacs, Neovim, IntelliJ, and a desktop build, and it supports providers such as OpenAI, Anthropic, Copilot, Ollama, Gemini, and any OpenAI‑compatible API. The system builds on an LSP‑style protocol, meaning you install the same binary once and then add editor clients for the editors you use.
You configure ECA with one JSON file, usually located at `~/.config/eca/config.json`. In that file you declare the LLM providers, their URLs and keys, the models per provider, and any additional settings. When a request comes from an editor client, the server dispatches it to the chosen model and returns the answer back to the editor. This single‑config, multi‑editor approach lets you keep a consistent experience across projects or switch globally as needed.
ECA offers three core LLM‑powered interactions: it can chat with you, pair‑program by reading, writing, and refactoring code, and provide inline completions as you type. All three can work with lightweight models because the tool can inject context from files, directories, shell commands, or even an AGENTS.md file. For example, the chat mode can include a rollback option, context injection, and multi‑turn conversations. The completion feature gives multi‑line, context‑aware suggestions similar to Copilot. Pair‑programming can also use built‑in code‑and‑plan agents, subagents, or custom tool definitions, with fine‑grained approval for every tool call.
Customization is extensive. Rules let you set coding standards or constraints globally or per project. Skills, following the agentskills.io spec, teach the LLM how to perform specific tasks and load on demand. Slash commands (/init, /compact, /resume) and custom commands can be added. Hooks allow you to run scripts or send notifications before or after events. Variants let you switch presets on the fly to use different models or reasoning effort. OpenTelemetry integration exposes metrics on tool usage and prompt performance. A web interface at web.eca.dev can be used to observe or control a chat session from a browser.
Key features
- Protocol‑first LLM integration via a single server
- Works with VS Code, Emacs, Neovim, IntelliJ, Desktop, or any compatible editor
- Supports OpenAI, Anthropic, Copilot, Gemini, Ollama, and any OpenAI‑compatible endpoint
- Three core interactions: chat, pair‑programming, inline completions
Details
- Pricing
- Free
- Category
- Code
Suggest an edit
Sign in to suggest an edit.
Pros and cons
Pros
- Free and open‑source, built with Clojure
- One configuration file powers all editors and providers
- Fully extensible through skills, plugins, and custom commands
- OpenTelemetry support for performance monitoring
- Supports remote control via web.eca.dev
Cons
- Requires manual installation of the server binary
- No published pricing details for external providers
- Some features depend on external LLM availability
- Limited documentation on advanced setup for obscure editors

