appleboy/CodeGPT

A CLI written in Go language that writes git commit messages or do a code review brief for you using ChatGPT AI (gpt-4.1, gpt-4o model) and automatically installs a git prepare-commit-msg hook.

CodeGPT란 무엇인가요?

CodeGPT는 Go로 작성된 명령줄 도구로, 대규모 언어 모델 API(OpenAI, Azure OpenAI, Gemini, Anthropic, Ollama, Groq, OpenRouter)와 통신하여 개발자가 일상적으로 수행하는 Git의 두 가지 작업을 도와줍니다.

  1. 커밋 메시지 생성 – 스테이징된 변경 사항의 git diff를 읽어 선택한 LLM에 전송하고, Conventional Commits 형식에 맞는 커밋 메시지를 반환합니다. 이 도구는 prepare-commit-msg Git 훅을 설치할 수 있어 git commit을 실행할 때 AI로 생성된 메시지가 자동으로 삽입됩니다.
  2. 코드 리뷰 요약 – 풀리퀘스트 형식의 변경 사항 요약을 생성할 수 있습니다.

이 두 기능은 스트리밍 출력(토큰이 생성되면서 표시됨), 언어 번역(영어, 번체 중국어, 간체 중국어, 일본어), 사용자 정의 프롬프트 템플릿을 지원합니다.


어떻게 설치하나요?

  • macOSbrew tap appleboy/tap && brew install codegpt
  • Windowschoco install codegpt
  • 모든 OS – 제공된 설치 스크립트를 실행하거나 GitHub 릴리스 페이지에서 사전 컴파일된 바이너리를 다운로드.
  • 소스에서go install github.com/appleboy/CodeGPT/cmd/codegpt@latest
  • VS Code devcontainerdevcontainer.jsonghcr.io/kvokka/features/codegpt 기능을 추가.

어떻게 작동하나요?

  1. 설정 – 환경 변수, .codegpt.yaml 파일, 또는 내장된 API 키 도우미 기능을 통해 API 키(또는 동적으로 가져오는 명령어)를 제공합니다. 설정 파일은 $HOME/.config/codegpt/에 위치하며 다음을 설정할 수 있습니다:
    • 프로바이더 (openai, azure, gemini, anthropic, ollama, groq, openrouter)
    • 기본 URL, 모델 이름, 온도, 최대 토큰 수, 프록시 설정 등.
    • Git 관련 옵션으로, 차이점에 포함할 컨텍스트 줄 수와 제외할 파일 등을 설정할 수 있습니다.
  2. CLI 실행codegpt commit (또는 codegpt review)는 차이점을 읽고 선택한 템플릿에서 프롬프트를 구성한 후 LLM 엔드포인트를 호출하고 결과를 출력합니다. --stream 플래그를 사용하면 토큰 단위로 응답을 볼 수 있습니다.
  3. Git 훅codegpt hook install은 CLI를 자동으로 호출하는 prepare-commit-msg 스크립트를 작성하여, 모든 git commit이 AI로 생성된 메시지로 자동 채워집니다.

누가 도움이 될까요?

  • 수동으로 작성하지 않고도 일관성 있고 전통적인 커밋 메시지를 원하는 개발자.
  • 풀리퀘스트 설명이나 내부 리뷰용으로 빠르고 읽기 쉬운 코드 변경 사항 요약이 필요한 팀.
  • 여러 LLM 프로바이더를 사용하는 사람(예: 준수를 위해 Azure OpenAI를 선호하거나 Ollama로 로컬에서 실행하고 싶은 경우) – CodeGPT는 단일 CLI를 통해 프로바이더를 추상화합니다.

한계는 무엇인가요?

  • 이 도구는 클라이언트에 불과하며, 생성된 텍스트의 품질은 사용하는 하위 모델에 완전히 의존합니다.
  • 인터넷 연결(또는 로컬 Ollama 서버)과 선택한 프로바이더용 유효한 API 키가 필요합니다.
  • 정적 분석이나 린팅을 수행하지 않습니다. 단순히 차이점을 모델에 전달할 뿐입니다.
  • Git 훅은 AI 생성 텍스트를 그대로 삽입합니다. 커밋을 최종화하기 전에 메시지를 검토해야 합니다.

빠른 시작 예제

# 설치 (macOS 예시)
brew tap appleboy/tap && brew install codegpt

# OpenAI 키를 내보내기 (또는 `codegpt config set`으로 설정)
export OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxx

# 스테이징된 변경 사항에 대한 커밋 메시지 생성
codegpt commit

# 또는 훅을 설치하여 `git commit`이 자동으로 실행되게 하기
codegpt hook install

더 자세히 알아보기


위 정보는 프로젝트의 README에서 직접 가져왔으며, 추가 기능은 추측되지 않았습니다.

관련

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