CommandAI

CommandAI

Jason Jacobs (open source, MIT license) · 글쓰기 · 코딩

CommandAI는 일상어로 쓴 요청을 셸 스크립트, 채팅 응답, 데이터베이스 조회로 바꾸는 오픈소스 AI 명령줄 도구다. ChatGPT, OpenAI 호환 서버, 로컬 Ollama 모델 어디에 붙여도 동작한다.

CommandAI 미리보기

CommandAI 소개

What Is CommandAI

CommandAI는 npm에 command-ai라는 이름으로 올라간 터미널 도구 모음이다. 하고 싶은 일을 평범한 말로 적으면 모델이 스크립트를 쓰고 실행 계획을 설명하며, 사용자가 승인한 뒤에야 움직인다.

패키지에는 프로그램 세 개가 들어 있다. ai는 시스템 작업, aic는 대화, aiq는 데이터베이스 질문을 맡는다. 각각 느낌표가 붙은 버전이 있어 확인 절차를 건너뛴다. 다른 스크립트가 이 도구를 호출할 때 쓸 만하다.

프로젝트 스스로 알파 단계라고 밝힌다. README는 프롬프트를 모델별로 조정한다고 경고한다. GPT 계열에서 매끄럽게 돌던 요청이 로컬 Ollama 모델에서는 문장을 고쳐야 할 수 있다. 샌드박스도 되돌리기도 없으므로 실행 전 계획 확인이 실질적인 안전장치다.

Getting Started

  1. Node.js 18 이상을 설치하고 npm install -g command-ai를 실행한다.
  2. ai config를 실행해 Ollama, ChatGPT, OpenAI 호환 엔드포인트 중 하나를 고른다. 설정은 ~/.commandai/config.json에 저장된다.
  3. 요청을 따옴표로 감싸 넘긴다. 예시는 ai "create a cron job that checks my IP and pings a URL when it changes"다.
  4. 표시된 계획과 설명을 읽고 확인한 뒤 실행하게 한다.
  5. 데이터를 다룰 때는 aiq config로 Postgres, MySQL, SQLite, MSSQL 연결을 등록한다.

제품 정보

CommandAI의 요금, 지원 플랫폼, 성능을 한눈에 확인해 보세요.

무료 플랜예
유료 플랜Free software, no tiers; model usage billed by your provider
플랫폼Windows, macOS, Linux (Node.js 18+)
개발사Jason Jacobs (open source, MIT license)
카테고리글쓰기 · 코딩
출시일May 2024
최근 업데이트Oct 2024
웹사이트 방문 수N/A
웹사이트 글로벌 순위N/A
API 제공 여부아니요

추천 대상

이 도구가 가장 잘 맞는 사용자, 작업, 상황입니다.

사용자

  • 터미널에서 대부분의 작업을 하는 개발자. cron 등록, 프로젝트 뼈대 생성, 파일 정리 같은 잡일을 터미널 어시스턴트에 맡기고 싶은 사람. 단, 계획을 읽고 승인하는 습관이 전제다.
  • 질문은 분명하지만 SQL은 못 쓰는 데이터 분석 담당자. 이미 쓰는 Postgres나 MySQL 연결에 데이터베이스 조회를 돌릴 수 있다.
  • 자체 하드웨어에서 Ollama를 돌리는 프라이버시 중시 팀. 요청이 로컬 네트워크 밖으로 나가지 않는다.

작업

  • 한 번짜리 자동화. 스크립트를 쓰게 하고 계획을 확인한 뒤 실행한다. 검색엔진까지 갈 필요가 없다.
  • 1년에 두어 번만 만지고 옵션은 늘 잊어버리는 도구에 대한 자연어 명령.
  • 임계값을 넘는 행 추출이나 주별 가입자 집계처럼 탐색적인 데이터베이스 조회.
  • 설정 파일, 서버, 첫 라우트까지 한 번에 갖춘 시작 프로젝트 만들기.

활용 상황

  • 늦은 밤 당직. 포트를 확인하거나 로그를 돌리는 짧은 스크립트가 급할 때.
  • 낯선 코드베이스에 들어가 디스크에 있는 것을 CLI에 설명시키거나 정리시키는 상황.
  • 외부와 분리됐거나 규제가 센 장비. 호스팅 채팅 도구는 못 쓰지만 Node.js는 깔려 있다.

주요 기능

일상어로 작업 실행

핵심 흐름은 문장 하나를 받아 실행 가능한 스크립트와 설명을 돌려준다. 설명이 더 쓸모 있을 때가 많다. 승인하기 전에 건드릴 파일, 서비스, 부작용을 이름으로 짚어 주기 때문이다.

도구 세 개를 패키지 하나에

ai, aic, aiq가 시스템 작업, 대화, 데이터 질문을 나눠 맡는다. npm 패키지 하나를 설치하면 셋이 다 들어온다. 채팅이나 데이터베이스 쪽을 따로 설정할 필요가 없다.

모델 선택: ChatGPT, OpenAI 호환, Ollama

설정 항목 하나로 백엔드가 정해진다. OpenAI, 같은 API를 쓰는 자체 서버, 모델 이름을 지정한 Ollama 중 어디로든 향할 수 있다. 전환은 한 줄 수정으로 끝나고 재설치가 필요 없다.

실행 전 계획 표시

모든 명령은 계획을 먼저 보여 주고 기본값으로 승인을 기다린다. 추가로 읽는 게 거슬리면 계획 표시를 끌 수 있고, 확인에 응답할 수 없는 파이프라인을 위해 느낌표 버전이 따로 있다.

네 가지 엔진에 대한 데이터베이스 조회

aiq는 MySQL, Postgres, SQLite, MSSQL을 다룬다. 연결은 ~/.commandai/db.json에 두고, SQLite 파일은 설정 없이 첫 번째 인자로 넘길 수 있다.

읽히는 설정 파일

설정은 ~/.commandai 아래의 순수 JSON이다. 바이너리 저장소에 숨지 않으므로 파일을 비교하고, 다른 장비로 복사하고, dotfiles 저장소에 넣을 수 있다.

장단점

장점

  • MIT 라이선스에 설치가 무료다. 좌석 수도 구독도 없다.
  • 실행 전 계획 확인 덕분에 생성된 명령을 무턱대고 자동완성하는 것보다 믿기 쉽다.
  • 로컬 Ollama 모델로 돌아가므로 프롬프트와 파일 경로가 자기 하드웨어 안에 머문다.
  • 설정이 읽히는 JSON으로 남아 팀이 한 파일을 여러 장비에 맞춰 쓸 수 있다.
  • 데이터베이스 지원이 네 엔진에 이르고, 작은 CLI 도우미가 자주 빼먹는 MSSQL도 포함한다.

단점

  • 알파 단계이고 마지막 npm 릴리스가 2024년 10월이라 최신 터미널 에이전트보다 모델 지원이 뒤진다.
  • 생성된 스크립트가 사용자 권한으로 돌고 샌드박스가 없다. 계획이 틀려도 승인하면 실제 파일이 지워질 수 있다.
  • 프롬프트 품질이 모델마다 흔들린다. 로컬 모델은 호스팅 모델보다 문장을 더 고쳐야 한다.
  • API도 팀 대시보드도 웹 버전도 없다. CLI 바깥은 README에 기대야 한다.

자주 묻는 질문

일상어로 쓴 요청을 셸 스크립트로 바꾸고 계획을 보여 준 뒤 확인을 받아 실행한다. 같은 패키지에 대화 모드와 데이터베이스 질문 모드도 있다.