Google Workspace 사용자를 위한 Gemini CLI 설정 방법 (feat. CLAUDE.md 재사용)

Google의 새로운 무기, Gemini CLI를 Google Workspace 사용자가 설정하는 방법과, CLAUDE.md를 재사용하는 방법을 담았습니다.

최근 Claude Code의 코딩 기능이 굉장히 놀라운데, 토큰 사용량이 부담되어서 $100, $200짜리 플랜으로 업그레이드했다는 간증이 개발자 사이에서 많이 나오고 있는데요. 이걸 두고 볼 수 없었는지 구글에서 Gemini CLI를 전격 발표하며 오픈소스로 풀었습니다.

현재 분당 60회, 하루 1천회 요청을 무료로 쓸 수 있고, 벌써부터 많은 사람들이 써보며 기능을 체험하고 있어요. 클로드 해지한다는 사람도 속출하는 중. 오픈소스다 보니 컨트리뷰션도 많이 일어나고 있습니다.

벌써 100개 이상 브랜치가 생겼습니다.

아직 좀 불안정할 것 같긴 하지만 써보고 싶어서 설치했는데, Google Workspace 이용 중인 회사 계정으로 쓰려니 첫 로그인할 때 작업할 게 좀 있더군요. 과정을 한번 공유드리려고 합니다.

설치와 첫 실행

아래 커맨드로 설치하고, 실행합니다.

npm install -g @google/gemini-cli
gemini

인증을 하라고 나올 것이고, Login With Google을 해보면 브라우저로 갑니다. 거기서 회사 계정을 선택하신 분은 로그인이 안 될 거예요. 이미 지나가버려서 스샷을 못 찍었는데 아마 이렇게 뜰 겁니다.

Failed to login. Message: Request contains an invalid argument

이런 분은 Auth Method에서 More 를 누르시면 Login With Google (for Workspace or licensed Code Assist users) 가 보입니다.

GOOGLE_CLOUDE_PROJECT 를 환경변수로 세팅하면 쓸 수 있다는 뜻인데요. 설정하는 법은 이 문서에 잘 나와있습니다.

간단히 요약하면:

  1. Google Cloud Project 만들기
  2. Google Cloud Project에서 Gemini API 사용 설정
  3. Google Cloud Project에서 IAM 역할 부여
  4. Google Cloud Project의 ID 복사해서 환경변수에 넣기
  5. 터미널 재실행, gemini 재실행

Google Cloud 프로젝트에서 Google Cloud를 위한 Gemini API 사용 설정

위 링크로 가셔서 설명을 그대로 따라하면 됩니다. Google Cloud 프로젝트가 없는 분은 새로 하나 만드셔야 될 거예요.

Google Cloud 프로젝트에서 IAM 역할 부여

이것도 위 링크로 가셔서 설명대로 따라하면 됩니다. (사실 Gemini API 사용 설정과 같은 문서입니다)

관리자 페이지에서 구성원을 찾은 뒤 '수정'을 눌러 위 설명대로 두 가지 권한을 부여합니다. 완료하면 대략 이렇게 될 거예요.

Project ID 복사해서 환경변수에 넣고 재시작

좌상단의 '프로젝트 선택 도구 열기'를 클릭하면 프로젝트 목록이 나옵니다.

여기서 ID 를 복사하셔서 환경변수에 넣으면 됩니다. 두 가지 옵션이 있습니다.

  1. 개별 코드베이스의 .env 에 넣기
export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"
  1. 글로벌 환경변수로 설정하기
echo 'export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"' >> ~/.bashrc

저는 2번을 선택했어요. 터미널을 깔끔하게 재시작하고, gemini 를 재실행하면 로그인이 잘 되는 걸 확인하실 수 있습니다.

번외: Gemini CLI에서 CLAUDE.md 재사용하기

Claude Code와 마찬가지로, Gemini CLI를 제대로 쓰려면 GEMINI.md를 만들어야 합니다. 저는 이미 제 프로젝트에 Claude Code의 /init 명령어를 이용해 만들어둔 CLAUDE.md 파일이 있었는데요. 이걸 Gemini에서도 쓰고 싶은데, 내용을 중복으로 작성하고 싶진 않았어요. 그래서 이렇게 했습니다.

See @AGENTS.md for guidelines.

CLAUDE.md

## Development Commands

### Package Manager
- Always use `yarn` instead of `npm`
- `yarn dev` - Start development server
- `yarn build` - Build for production (includes TypeScript check)

... (기존 CLAUDE.md 내용)

AGENTS.md

{
  "theme": "Default",
  "selectedAuthType": "oauth-personal",
  "contextFileName": "AGENTS.md"
}

~/.gemini/settings.json

이건 Claude Code가 @ 을 통해 다른 파일을 레퍼런스할 수 있고, Gemini는 룰 설정을 위한 파일명을 바꿀 수 있기 때문에 가능했어요. (Gemini 설정에서 contextFileNameCLAUDE.md 로 했으면 더 편했겠지만 그렇게 이름짓고 싶진 않았습니다)

실제로 Claude Code든 Gemini든 내용 잘 읽고 실행하는 걸 확인했습니다.

참고로 Claude Code와 마찬가지로 Gemini CLI도 하위 디렉토리의 컨텍스트 파일을 읽습니다. (참고 링크) 즉 모듈별로 AGENTS.md 를 쓰는 것도 가능합니다.

마무리

조금 써보니까 속도도 빠르고 답변도 괜찮아 보입니다. 저는 당분간 Claude Code, Gemini CLI, Cursor 3도류를 돌릴 것 같아요.