피드로 돌아가기
How I built a CLI tool in Rust that uses AI to brief you on your git state
Dev.toDev.to
AI/ML

Git 컨텍스트 최적화와 Multi-LLM 전략을 통한 고효율 AI 브리핑 CLI 구현

How I built a CLI tool in Rust that uses AI to brief you on your git state

Maithil Patil2026년 5월 5일2intermediate

Context

전체 Git history를 LLM에 주입하는 단순 접근 방식의 토큰 낭비와 노이즈 발생 문제 분석. 불필요한 데이터 유입으로 인한 비용 증가 및 답변 정확도 저하를 해결해야 하는 상황.

Technical Solution

  • Token 소모 최소화를 위해 브랜치명, 최근 10개 커밋, Staged/Unstaged Diff, Untracked 파일로 컨텍스트 범위를 한정한 데이터 필터링 설계
  • .rewindignore 파일 도입을 통한 Lockfile 및 생성 자산 배제로 LLM 입력 컨텍스트의 순도 유지
  • 단순 요약(Summary)이 아닌 현재 시점의 미완료 작업 중심의 브리핑(Briefing)을 유도하는 구조적 Prompt Engineering 적용
  • Groq, Gemini, OpenAI, Ollama 등 Multi-provider 지원 및 비용 최적화를 위한 Provider 우선순위 큐 설계
  • API 호출 전 token count를 미리 계산하는 estimate 명령어를 통한 비용 예측 가능성 확보
  • 동일한 Git 컨텍스트 파이프라인을 재사용하여 Conventional Commit 메시지를 생성하는 확장 구조 설계

1. LLM 입력 데이터 설계 시 전체 데이터 덤프 대신 도메인 특화 필터링 규칙을 먼저 정의했는가

2. 대규모 텍스트 입력 방지를 위해 .gitignore 스타일의 제외 설정 파일을 제공하는가

3. 모델 성능에 의존하기보다 출력 목적(Summary vs Briefing)에 맞는 프롬프트 구조를 설계했는가

4. 특정 LLM 벤더 종속성을 탈피하기 위한 추상화 계층과 우선순위 전략을 갖추었는가

원문 읽기