02_Gemini CLI
코드 블록의 Try it Yourself 버튼으로 직접 실행할 수 있다.
구문
1. Gemini CLI
📝NOTE
Gemini CLI는 터미널에서 직접 Gemini를 사용할 수 있는 오픈 소스 AI 에이전트이다. Apache 2.0 라이선스.
1.1. 특징
- 무료 요금제: Google 계정 로그인 시 분당 60건, 하루 1,000건 요청 가능
- Gemini 3 모델: 100만 토큰 컨텍스트 윈도우
- 멀티모달: PDF, 이미지, 스케치 등 다양한 입력 지원
- 내장 도구: Google 검색, 파일 작업, 셸 명령, 웹 가져오기
- MCP 지원: 확장 프로그램을 통한 커스텀 통합 (Figma, GitHub, Slack 등)
- 대화 체크포인트: 세션 저장/복원 가능
1.2. 설치
요구사항: Node.js 20 이상 / macOS, Linux, Windows
1.2.1. Windows / Linux
npm install -g @google/gemini-cli
설치 없이 바로 실행:
npx @google/gemini-cli
1.2.2. macOS
brew install gemini-cli
또는 MacPorts:
sudo port install gemini-cli
1.3. 인증 (3가지 방식)
1.3.1. Google 로그인 (권장)
-
터미널에
gemini입력 후 엔터 -
"How would you like to authenticate?" 질문에서 Login with Google 선택
-
브라우저에서 Google 계정 로그인 및 권한 허용
-
터미널에 "Authenticated successfully!" 메시지 확인
| 항목 | 제한 |
|---|---|
| 요청 | 분당 60건, 하루 1,000건 |
| 모델 | Gemini 모델 전체 |
| 컨텍스트 | 100만 토큰 |
1.3.2. Gemini API 키
API 키 발급 후 환경변수 설정:
export GEMINI_API_KEY="발급받은_키"
| 항목 | 제한 |
|---|---|
| 요청 | 분당 10건, 하루 250건 |
| 모델 | Flash 모델만 |
1.3.3. Vertex AI (기업용)
export GOOGLE_API_KEY="키"
export GOOGLE_GENAI_USE_VERTEXAI=true
90일 무료 체험 후 토큰 기반 과금. 높은 요청 한도 제공.
1.4. 실행
gemini
특정 모델 지정:
gemini -m gemini-2.5-flash
비대화형 모드 (스크립트용):
gemini -p "이 프로젝트 구조를 설명해줘"
1.5. 슬래시 명령어
대화 중 / 로 시작하는 명령어이다.
1.5.1. 기본
| 명령어 | 설명 |
|---|---|
/help, /? | 도움말 표시 |
/clear | 화면 지우기 (Ctrl+L) |
/quit, /exit | 종료 |
/about | 버전 정보 표시 |
/copy | 마지막 응답을 클립보드에 복사 |
/bug | 버그 신고 및 피드백 전송 |
1.5.2. 대화 관리
| 명령어 | 설명 |
|---|---|
/chat | 대화 저장, 복원, 관리 |
/save | 현재 대화 내용을 파일로 저장 |
/resume | 이전 세션 이어서 하기 |
/rewind | 대화를 이전 상태로 되돌리기 (Esc x2) |
/compress | 대화 컨텍스트 요약하여 토큰 절약 |
/restore | 도구 실행 전 상태로 파일 복원 |
1.5.3. 설정
| 명령어 | 설명 |
|---|---|
/model | AI 모델 확인/변경 |
/auth | 인증 방식 변경 |
/settings | 설정 파일 열기 |
/init | 프로젝트 컨텍스트 파일(GEMINI.md) 생성 |
/theme | 테마 변경 |
/permissions | 폴더 신뢰 설정 관리 |
/editor | 에디터 선택 |
/vim | Vim 모드 토글 |
1.5.4. 도구 및 확장
| 명령어 | 설명 |
|---|---|
/tools | 사용 가능한 도구 목록 |
/extensions | 확장 프로그램 설치/관리 |
/mcp | MCP 서버 관리 |
/commands | 커스텀 슬래시 명령어 관리 |
/skills | Agent Skills 관리 |
/hooks | 라이프사이클 이벤트 후크 관리 |
/stats | 세션/모델/도구 통계 표시 |
1.6. 특수 입력
| 입력 | 설명 |
|---|---|
@file | 특정 파일의 내용을 읽어 프롬프트에 추가 (예: @src/App.js) |
@dir | 폴더 구조와 파일 목록을 컨텍스트에 추가 |
@git | Git 변경사항(diff)이나 커밋 로그 등을 참조 |
@url | 웹페이지의 내용을 텍스트로 변환하여 참조 |
!명령어 | 셸 명령어 직접 실행 (예: !ls -la) |
! | 셸 모드 진입/해제 (연속 실행) |
1.7. 예약된 파일명
Gemini CLI가 특별한 목적으로 인식하는 파일들이다. 프로젝트 루트나 .gemini/ 폴더에 위치한다.
| 파일명 | 설명 | 저장경로 |
|---|---|---|
GEMINI.md | 프로젝트 컨텍스트 (규칙, 배경지식) | 프로젝트 루트 (/) |
settings.json | CLI 환경 설정 (모델, 테마 등) | .gemini/ |
*.toml | 커스텀 슬래시 명령어 정의 | .gemini/commands/ |
SYSTEM.md | 시스템 프롬프트 전체 교체 | 프로젝트 루트 (/) |
system.md | SYSTEM.md와 동일 역할 | .gemini/ |
1.8. 활용 예시
📝NOTE
1.8.1. 파일명 일괄 변경
photos/photo1.png
photos/photo2.png
photos/photo3.png
gemini -p 'Rename the photos in my "photos" directory based on their contents.'
1.8.2. 코드 분석
gemini -p "이 프로젝트의 아키텍처를 분석하고 개선점을 알려줘"
1.8.3. 사용량 확인
대화 중 아래 명령어로 현재 토큰 사용량과 쿼터를 확인할 수 있다:
/stats model
1.9. 확장 프로그램 (Extensions)
📝NOTE
확장 프로그램 갤러리 - 441개 이상의 확장 제공
확장 프로그램 설치 명령어:
gemini extensions install [GitHub URL]
1.9.1. Figma 연결
gemini extensions install https://github.com/figma/figma-gemini-cli-extension
인증키 설정 (Figma에서 Personal Access Token 발급 후):
gemini extensions config figma FIGMA_PERSONAL_ACCESS_TOKEN
발급받은 토큰을 붙여넣는다.
1.9.2. GitHub 연결
gemini extensions install https://github.com/github/github-mcp-server
1.9.3. 주요 확장 목록
| 확장 프로그램 | 기능 |
|---|---|
| Figma | 디자인 분석 및 코드 생성 |
| GitHub | PR, 이슈 관리 |
| Cloud Run | Google Cloud Run 배포 |
| Chrome DevTools | 브라우저 개발 도구 연동 |
| Stripe | 결제 시스템 구축 |
| Terraform | 인프라 코드 개발 |
| Redis | Redis 데이터 관리 |
| Grafana | 모니터링 통합 |