simonmysun/ell

A command-line interface for LLMs written in Bash.

해결하는 문제

ell은 명령줄에서 대규모 언어 모델(LLM)과 직접 상호작용할 수 있는 가볍고 의존성이 없는 방법을 제공합니다. 거의 순수 Bash로 작성되어 복잡한 설치나 무거운 런타임이 필요 없으므로, 터미널 기반 워크플로우 및 셸 파이프라인에 LLM을 쉽게 통합할 수 있습니다.

작동 방식

이 도구는 LLM API(OpenAI 및 Google Gemini 등)의 래퍼 역할을 합니다. curl을 통해 이러한 서비스에 프롬프트를 보내고 응답을 처리합니다. 다음과 같은 여러 상호작용 모드를 지원합니다:

  • Standard Query: 명령줄을 통해 직접 프롬프트를 전송합니다.
  • Pipe-friendly: stdin을 통해 다른 터미널 명령의 입력을 수락합니다.
  • Interactive Mode: 터미널 내의 채팅 방식 인터페이스.
  • Record Mode: 터미널 입출력을 캡처하여 후속 LLM 쿼리의 컨텍스트로 사용합니다.

대상 사용자

터미널에서 대부분의 시간을 보내며, 셸 환경을 벗어나지 않고 LLM에 쿼리를 보낼 수 있는 빠르고 최소한의 방법을 원하는 개발자, 시스템 관리자 및 파워 유저.

주요 특징

  • Pure Bash: 매우 가볍고 Unix 계열 시스템에 설치하기 쉽습니다.
  • 컨텍스트 인식: 터미널 세션을 기록하여 LLM에 실시간 기술 컨텍스트를 제공할 수 있습니다.
  • 파이프 통합: 파이프를 사용하여 다른 CLI 도구와 원활하게 작동하도록 설계되었습니다.
  • 확장성: 함수 호출 및 사용자 정의 동작을 구현하기 위한 템플릿과 플러그인을 지원합니다.
  • 개인정보 보호: 민감한 정보 편집(redaction) 기능을 포함합니다.