tninja/aider.el

AI assisted programming in Emacs with Aider

개요

aider.el은 인기 있는 터미널 기반 AI 페어 프로그래밍 도구인 Aider의 사용자 인터페이스를 제공하는 Emacs 패키지입니다. AI 지원 코딩(Cursor와 유사)을 Emacs 에디터로 가져옵니다.

핵심 개념

이 패키지는 Aider 명령줄 도구의 경량 래퍼 역할을 합니다. 터미널에서 Aider를 사용하기 위해 Emacs를 나갈 필요 없이, 메뉴, 키 바인딩, 버퍼 관리를 사용하여 Emacs 내에서 직접 Aider 세션을 실행하고 제어할 수 있습니다.

주요 기능

  • 세션 관리: 특정 Git 저장소와 연결된 Aider 세션을 시작하여 여러 프로젝트에 대해 동시에 여러 세션을 실행할 수 있습니다.
  • 컨텍스트 제어: 현재 파일, 파일 관리자(dired)에서 표시된 파일, 또는 전체 모듈/디렉토리 등 AI의 컨텍스트에 파일을 쉽게 추가할 수 있습니다.
  • 코딩 워크플로우:
    • 코드 내의 TODO 주석 구현.
    • Martin Fowler의 저서에 나오는 기법을 사용한 코드 리팩토링.
    • 함수나 파일에 대한 단위 테스트 생성.
    • 선택한 코드나 함수에 대한 질문.
    • 코드 차이점(스테이징된 파일, 브랜치, 커밋에서) 가져오기 및 검토.
  • 프롬프트 정리: 저장소별로 전용 "프롬프트 파일"을 두어 AI 세션에 보낼 여러 줄의 프롬프트를 작성, 정리 및 전송할 수 있습니다.
  • 애자일 지원: TDD(테스트 주도 개발), 리팩토링 및 레거시 코드 처리를 위한 도구가 포함되어 있습니다.
  • 통합: Magit(Git 인터페이스), Flycheck(오류 검사), Helm(퍼지 검색)과 연동됩니다.

작동 방식

  • 별도로 Aider CLI를 설치해야 합니다.
  • 설정은 Aider CLI로 직접 전달되므로 터미널 버전과 동일한 설정 및 모델 옵션(예: Claude, GPT)을 공유합니다.
  • "transient" 메뉴(C-c a와 같은 키 바인딩으로 트리거)를 사용하여 사용 가능한 모든 명령을 표시합니다.
  • LiteLLM을 통한 로컬 모델을 포함하여 다양한 AI 모델을 지원합니다.

요구 사항

  • Emacs 26.1 이상.
  • aider CLI가 설치되어 있어야 함.
  • Emacs 패키지: transient, magit, markdown-mode.
  • AI 모델용 API 키(예: Anthropic 또는 OpenAI).

요약하자면, 이 도구는 AI 페어 프로그래밍을 Emacs 내의 일급 시민으로 만들어 코드 리뷰, 리팩토링 및 구조화된 워크플로우에 집중할 수 있게 해주는 생산성 도구입니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트