본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 05. 20. 13:30

editor-code-assistant/eca

요약

ECA(Editor-agnostic Code Assistant)는 LSP(Language Server Protocol)에서 영감을 받아 설계된 오픈 소스 AI 페어 프로그래밍 도구입니다. 에디터에 구애받지 않는 프로토콜을 통해 다양한 에디터(Emacs, VSCode, IntelliJ 등)에서 동일한 설정과 UX로 OpenAI, Anthropic, Ollama 등 다양한 LLM을 통합하여 사용할 수 있습니다.

핵심 포인트

  • 에디터 불가지론적(Editor-agnostic) 설계로 어떤 에디터와도 통합 가능한 프로토콜 제공
  • 채팅, 다시 쓰기, 코드 완성 및 에이전트/서브에이전트 기능 지원
  • MCP(Model Context Protocol)를 통한 풍부한 코드 컨텍스트 제공
  • OpenTelemetry를 활용한 도구 및 서버 사용량 메트릭 내보내기 지원
  • 단일 설정을 통해 여러 에디터에서 일관된 AI 경험 유지

| eca-emacs |
| eca-vscode |
| eca-intellij |
| eca-desktop |

설치 (installation)
기능 (features)
설정 (configuration)
모델 (models)
프로토콜 (protocol)
문제 해결 (troubleshooting)

  • 📄
    에디터 불가지론적 (Editor-agnostic): 어떤 에디터라도 통합할 수 있는 프로토콜을 제공합니다. - ⚙️
    단일 설정 (Single configuration): 글로벌 또는 로컬 설정을 통해 eca를 설정하면 어떤 에디터에서도 동일하게 작동하도록 만들 수 있습니다. - ➿
    다양한 기능 (Multiple features): 채팅 (chat), 다시 쓰기 (rewrite), 완성 (completion) — 이 모든 기능은 사용자의 LLM (Large Language Model)에 의해 구동됩니다. - ☕
    에이전트 / 서브에이전트 (Agents / Subagents): 서로 다른 모델, 도구(tools), 동작을 가진 여러 에이전트를 설정할 수 있습니다. - 💉
    컨텍스트 (Context): MCP (Model Context Protocol) 리소스 및 프롬프트(prompts)를 포함하여, LLM에 코드에 대한 더 자세한 정보를 제공하는 기능을 지원합니다. - 🚀
    멀티 모델 (Multi models): OpenAI, Anthropic, Copilot, Ollama 로컬 모델 및 기타 다양한 모델에 로그인할 수 있습니다. - 📈
    OpenTelemetry: 도구, 프롬프트, 서버 사용량에 대한 메트릭 (metrics)을 내보냅니다.

잘 정의된 프로토콜을 사용하여 LLM <-> 에디터를 쉽게 연결하고, AI 페어 프로그래밍 (AI pair programming)을 위해 가능한 최상의 UX (User Experience)를 제공하는 것을 목표로 하는 무료 오픈 소스 (OpenSource) 에디터 불가지론적 도구입니다. 서버는 Clojure로 작성되었으며, 이러한 유형의 통합에서 성공 사례인 LSP (Language Server Protocol) 프로토콜에서 큰 영감을 받았습니다.

이 프로토콜은 다른 에디터들이 통합하는 것을 더 쉽게 만들며, 중간에 서버를 두는 것은 다음과 같은 예시처럼 더 많은 기능을 빠르게 추가하는 데 도움이 됩니다:

  • 도구 호출 관리 (Tool call management)
  • 다중 LLM 상호작용 (Multiple LLM interaction)
  • 기능 사용에 대한 텔레메트리 (Telemetry of feature usage)
  • 모든 에디터에 대한 단일 설정 방식
  • 동일한 UX를 통한 개인 및 팀의 쉬운 온보딩 (onboard)

LLM 모델 경쟁이 치열해짐에 따라 모델 간의 차이는 미래에 무의미해지는 경향이 있겠지만, 코드를 편집하거나 변경 사항을 계획하는 방식에 대한 UX는 계속 존재할 것입니다. ECA는 에디터가 그 부분에 집중할 수 있도록 돕습니다.

작동 방식: 에디터는 eca server를 통해 서버를 실행하며,

LSP와 유사하게 stdin/stdout을 통해 통신합니다. 지원되는 에디터는 시작 시 이미 최신 서버를 다운로드하며 추가 설정이 필요하지 않습니다.

사용 중인 에디터의 플러그인을 설치하면 ECA 서버가 자동으로 다운로드되고 시작됩니다:

ECA를 사용하려면 최소 하나 이상의 모델 / 프로바이더 (provider)를 설정해야 합니다 (팁: Github Copilot은 무료 모델을 제공합니다!).

자세한 지침은 모델 (Models) 문서를 참조하세요:

  • 채팅창에 /login을 입력합니다.
  • 프로바이더 (provider)를 선택합니다.
  • 해당 프로바이더의 키 (key) 또는 인증 (auth)을 설정하는 단계를 따릅니다.
  • 이렇게 하면 해당 프로바이더를 위한 설정이 전역 config.json에 추가됩니다.

참고: 다른 프로바이더 또는 커스텀 모델 (custom models)의 경우, 커스텀 프로바이더 (custom providers) 문서를 참조하세요.

모델이 설정되면, 에디터의 ECA 기능 인터페이스를 사용하여 질문을 하고, 코드를 리뷰하며, 프로젝트에서 함께 협업할 수 있습니다.

ECA를 가장 잘 사용하는 방법은 권장 워크플로우 (Suggested Workflow)를 확인하세요.

계획된 작업은 여기에서 확인할 수 있습니다.

프로젝트가 더 빠르게 성장할 수 있도록 후원을 고려해 주세요. 후원은 프로젝트가 지속되고, 업데이트되며, 유지 관리되는 데 큰 도움이 됩니다!

기여 (Contributions)는 언제나 환영합니다. 논의를 위해 이슈 (issue)를 생성하거나 풀 리퀘스트 (pull request)를 보내주세요. 개발자 상세 정보는 개발 문서 (development docs)를 확인하세요.

이들은 모두 ECA를 더 좋게 만드는 데 도움을 준 놀라운 사람들입니다!

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub AI Coding Assistants의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0