aichat
무엇인가
aichat는 터미널에서 LLM을 호출하는 CLI 클라이언트다. 제공자별 SDK와 별도 채팅 앱을 각각 설치하는 대신, 하나의 실행 파일이 대화·셸 명령 생성·문서 검색·도구 호출을 담당한다. 셸 파이프라인에 끼워 넣을 수 있는 자리에 놓인다.
어떻게 동작하나
동작 모드는 두 갈래다. CMD 모드는 한 번의 호출로 결과를 stdout에 내보내고, REPL 모드는 탭 자동완성·다중 행 입력·히스토리 검색·키바인딩을 갖춘 대화 루프를 연다. 역할(role)은 프롬프트와 모델 설정의 묶음이고, 세션은 대화 컨텍스트를 유지하며, 매크로는 여러 REPL 명령을 하나로 합친다. 입력은 stdin, 로컬 파일·디렉터리, 원격 URL에서 받는다. 함수 호출은 llm-functions 저장소의 도구 정의와 MCP를 통해 외부 도구·데이터에 연결되고, 에이전트는 지시문·도구·문서(RAG)의 조합으로 만들어진다. 내장 HTTP 서버는 LLM API 프록시, 브라우저용 플레이그라운드, 모델 비교용 아레나로 쓰인다.
무엇과 다른가
제공자별 공식 CLI와 SDK는 인증 방식과 요청 형식이 제각각이다. aichat는 OpenAI, Claude, Gemini, Ollama, Groq, Azure-OpenAI, VertexAI, Bedrock, Github Models, Mistral, Deepseek, OpenRouter 등 20여 개 제공자를 하나의 인터페이스 뒤에 둔다. 셸 어시스턴트는 자연어를 현재 OS와 셸 환경에 맞는 명령으로 변환한다. GUI 채팅 앱과 달리 stdin/stdout으로 파이프에 연결된다.
어떻게 쓰나
설치 경로는 cargo, Homebrew/Linuxbrew, Pacman, Windows Scoop, Android Termux다. macOS·Linux·Windows용 사전 빌드 바이너리를 GitHub Releases에서 받아 $PATH에 넣는 방법도 있다. 설치 후 aichat를 실행하면 REPL에 들어가고, CMD 모드로 한 줄 호출도 한다. 제공자·모델·역할은 설정 파일과 환경 변수로 정의한다. 다크·라이트 테마와 REPL 프롬프트는 사용자가 바꿀 수 있다.
전제와 한계
클라우드 제공자를 쓰려면 해당 API 키가 필요하고, 로컬 실행은 Ollama 같은 런타임을 따로 띄워야 한다. cargo 설치에는 Rust 툴체인이 필요하다. 함수 호출과 에이전트는 모델이 도구 호출을 지원해야 동작한다. RAG는 외부 문서를 별도로 준비해야 한다.
관련 논문 3
유사 도구
- DEEIX-Chat여러 모델 제공자를 하나의 진입점으로 묶어 멀티모달 채팅, 파일 RAG, MCP 도구, 과금, 감사를 한 제품에 담은 Go 기반 자체 호스팅 AI 플랫폼이다.
- bifrost23개 이상 LLM 제공자를 하나의 OpenAI 호환 API로 중계하는 Go 기반 AI 게이트웨이다. 5천 RPS에서 요청당 11µs 오버헤드를 추가한다.
- onyxLLM 애플리케이션 계층으로, RAG·웹 검색·코드 실행·에이전트를 갖춘 셀프호스팅 AI 채팅 플랫폼이다. 50개 이상 커넥터로 사내 데이터를 색인한다.
- OmniRoute여러 LLM 제공자를 하나의 엔드포인트로 중계하는 MIT 라이선스 AI 게이트웨이다. 무료 티어 할당량을 계산해 소진 시 자동으로 다른 제공자로 폴백한다.
- Fuxi터미널에서 코드를 읽고 고치고 명령을 실행하는 AI 코딩 에이전트다. 단일 정적 바이너리로 배포되고 LLM 제공자를 가리지 않는다.
- WeKnora원시 문서를 수집해 검색 가능한 RAG 지식베이스와 자율 추론 에이전트, 자체 유지 위키로 바꾸는 Go 기반 자체 호스팅 LLM 지식 플랫폼이다.