xenodium/agent-shell
A native Emacs buffer to interact with LLM agents powered by ACP
해결하는 문제
agent-shell은 다양한 LLM 기반 코딩 에이전트와 상호 작용하기 위한 네이티브 Emacs 인터페이스를 제공합니다. 이러한 에이전트들을 셸로서 에디터에 직접 통합함으로써 독립형 터미널과 Emacs 사이를 전환할 필요를 없애며, 사용자가 Agent Client Protocol (ACP)를 활용하여 광범위한 AI 에이전트와 통신할 수 있도록 합니다.
작동 방식
이 프로젝트는 Emacs의 comint-shell을 기반으로 구축되었으며 shell-maker 패키지를 사용합니다. 또한 Agent Client Protocol (ACP)를 통해 에이전트와의 통신을 처리하기 위해 acp.el에 의존합니다. Claude Agent, Codex, Gemini CLI, Goose, Grok Build, Cursor, Kimi Code 등을 포함한 방대한 범위의 에이전트를 프로세스로 실행하고 환경 변수 및 인증(API 키, OAuth 또는 로그인 흐름을 통해)을 관리함으로써 지원합니다.
대상 사용자
에디터를 떠나지 않고 AI 코딩 에이전트를 개발 워크플로우에 통합하고자 하는 Emacs 사용자.
주요 특징
- 폭넓은 에이전트 지원: Anthropic, OpenAI, Google, xAI, Mistral과 같은 제공업체의 수많은 ACP 기반 에이전트와 호환됩니다.
- 네이티브 Emacs 통합:
comint-shell을 사용하여 Emacs 내에서 원활한 셸 경험을 제공합니다. - 멀티모달 기능: 필요한 플랫폼별 유틸리티가 설치되어 있는 경우, 클립보드에서 이미지를 붙여넣거나 스크린샷을 캡처하여 에이전트에 보낼 수 있습니다.
- 확장 가능한 생태계: 사이드바 통합, Docker 샌드박싱, Org-mode 트랜스크립트와 같은 기능을 위한 수많은 커뮤니티 개발 애드온이 존재합니다.