Gemini CLI Plan 모드, 안전하다는 말이 맞는 조건이 있습니다

Published on

in

Gemini CLI Plan 모드, 안전하다는 말이 맞는 조건이 있습니다

2026.03.11 출시
Gemini CLI v최신 기준
⚠️ 3월 25일 정책 변경

Gemini CLI Plan 모드, 안전하다는 말이 맞는 조건이 있습니다

2026년 3월 11일, Google이 Gemini CLI에 Plan 모드를 추가했습니다. 코드베이스를 건드리지 않고 먼저 분석·계획한 뒤 실행하는 구조라 “사고를 막아준다”는 평가가 많습니다. 맞는 말이긴 한데, 직접 뜯어보면 그 안전함이 생각보다 조건부입니다.

읽기 전용
Plan 중 파일 수정 차단
Pro 모델
계획 단계 자동 라우팅
3/25 변경
무료 티어 Pro 모델 제한

Plan 모드가 뭔지, 왜 나왔는지

기존 Gemini CLI는 요청을 받으면 곧바로 파일을 수정하거나 코드를 실행하는 방식으로 동작했습니다. 빠르다는 장점이 있었지만, AI가 의도를 잘못 파악했을 때 돌이키기 어려운 변경이 생기는 문제가 반복됐습니다. Google이 공식 블로그(2026.03.11)에서 밝힌 것도 이 맥락입니다 — “에이전트들이 너무 빨리 움직이다가 실제 저장소에서 문제를 만들었다(agents often started editing before fully understanding the problem)”고 적었습니다.

Plan 모드는 이 문제를 구조적으로 막는 방식입니다. 모드가 활성화되면 Gemini CLI는 파일 읽기·검색·문서 조회만 할 수 있고, 파일 수정은 자체 계획 파일(~/.gemini/tmp/<project>/plans/ 아래 .md 파일)을 작성하는 것만 허용됩니다. (출처: Gemini CLI 공식 문서, geminicli.com/docs/cli/plan-mode/)

Plan 모드가 기본값으로 켜진다는 점도 눈에 띕니다. 별도 설정 없이 Gemini CLI를 실행하면 Plan 모드가 회전 목록에 포함돼 있어서, Shift+Tab으로 모드를 바꾸다 보면 Plan 모드로 진입하게 됩니다. 켜져 있는지 모르고 쓰는 사람도 생길 수 있습니다.

실제로 어떻게 켜고 끄는지

Plan 모드에 진입하는 방법은 세 가지입니다. 첫 번째는 터미널에서 /plan을 입력하는 것, 두 번째는 Shift+Tab으로 모드를 순환하는 것, 세 번째는 자연어로 “이 기능 구현 계획부터 짜줘”라고 말하면 CLI가 자동으로 enter_plan_mode 도구를 호출합니다. 세션 시작부터 Plan 모드로 열고 싶다면 gemini --approval-mode=plan 플래그를 쓰면 됩니다.

반대로 Plan 모드를 회전 목록에서 아예 빼고 싶다면 /settings에서 “Plan”을 검색해 토글을 끄면 됩니다. 이렇게 하면 enter_plan_mode·exit_plan_mode 도구가 아예 등록 해제됩니다. (출처: Gemini CLI 공식 문서, geminicli.com/docs/cli/plan-mode/)

💡 공식 문서와 실제 진입 흐름을 같이 놓고 보니 이런 차이가 보였습니다

YOLO 모드에서는 자연어로 Plan 모드를 요청해도 enter_plan_mode 도구가 비활성화돼 있어 전환이 되지 않습니다. 자동화 스크립트에서 실수로 YOLO 플래그를 쓰면 계획 없이 바로 실행 모드로 넘어갑니다.

계획이 완성되면 CLI가 Markdown 파일로 저장하고 승인을 요청합니다. 이때 Ctrl+X를 누르면 외부 편집기(VS Code, Vim 등)에서 계획 파일을 직접 수정할 수 있습니다. 수정 후 저장하면 CLI가 변경 사항을 읽어들여 계획을 다시 다듬습니다.

계획 승인 후 벌어지는 일 — 안전의 경계

⚠️ 많은 소개 글이 빠뜨린 부분

Plan 모드 자체는 읽기 전용입니다. 하지만 계획을 승인하는 순간 CLI는 Plan 모드를 빠져나와 Auto-Edit 모드 또는 Default 모드로 자동 전환됩니다. 그때부터는 파일 수정·실행이 모두 가능해집니다.

공식 문서에는 이렇게 나와 있습니다 — 계획을 “Yes, automatically accept edits”로 승인하면 구현이 즉시 시작되고, 이때 CLI는 Auto-Edit 모드로 동작합니다. (출처: geminicli.com/docs/cli/plan-mode/) 비대화형 환경(CI/CD 파이프라인 등)에서는 더 극단적입니다. Plan 모드 실행 후 승인이 이뤄지면 자동으로 YOLO 모드로 전환돼 이후 모든 도구 실행이 사람 확인 없이 진행됩니다.

즉, Plan 모드가 보장하는 안전함은 계획을 세우는 단계에 한정됩니다. 계획 내용이 잘못 짜여 있어도 승인 버튼 하나로 전부 실행됩니다. 계획서를 꼼꼼히 읽지 않고 “일단 승인” 하는 습관이 있다면 Plan 모드의 안전 장치가 거의 작동하지 않는 것과 같습니다.

💡 Plan 모드와 Auto-Edit 모드의 흐름을 나란히 보면 보이는 것

Plan → 승인 → Auto-Edit 전환이라는 흐름은, 결국 “빠른 실수”를 “계획된 실수”로 바꿔줄 뿐입니다. 계획 파일을 실제로 검토하는 습관이 없다면 이전과 위험 수준이 같습니다. “Yes, manually accept edits”를 선택하면 각 수정 단계마다 사람이 확인할 수 있어 이 문제를 상당 부분 줄일 수 있습니다.

승인 방식 이후 모드 사람 개입
Yes, automatically accept edits Auto-Edit 없음
Yes, manually accept edits Default 각 단계 확인
CI/CD (비대화형) YOLO 전혀 없음

Pro 모델 자동 라우팅, 무료 티어엔 내일부터 안 됩니다

Plan 모드의 핵심 기능 중 하나는 자동 모델 라우팅입니다. 공식 문서에 직접 나와 있습니다 — “계획 단계에서는 CLI가 Gemini 3.1 Pro처럼 고추론 Pro 모델로 라우팅하고, 계획 승인 후 구현 단계에서는 속도가 빠른 Flash 모델로 자동 전환된다.” (출처: geminicli.com/docs/cli/plan-mode/ — Automatic Model Routing 항목) 계획의 품질을 높이기 위해 의도적으로 Pro 모델을 쓰는 구조입니다.

🚨 2026년 3월 25일(내일) 적용 — 공식 공지

Google이 Gemini CLI GitHub 공식 토론(Discussion #22970, 2026.03.22)에서 밝혔습니다 — “2026년 3월 25일부터 Gemini Pro 모델은 유료 구독자만 사용 가능하며, 무료 티어 사용자는 Gemini Flash 모델로 제한된다.” 무료 계정으로 Plan 모드를 쓰던 사용자는 내일부터 Plan 단계에서 Flash 모델이 사용됩니다.

Plan 모드의 강점 자체가 “복잡한 아키텍처 결정을 Pro 모델이 처리”하는 것이었는데, 무료 티어에서는 이 전제가 빠지는 셈입니다. Flash 모델로도 계획을 짤 수 있지만, 복잡한 의존성 분석이나 아키텍처 제안의 깊이가 달라질 수 있습니다.

유료 플랜 옵션은 Google AI Pro(약 월 19.99달러)와 Ultra 플랜이 있으며, AI Studio API 키를 직접 발급해 사용하는 방법도 있습니다. API 키 방식은 사용량 기반 과금이 적용됩니다. (출처: Gemini CLI GitHub Discussion #22970)

파일 덮어쓰기 함정 — write_file의 미공개 한계

Plan 모드를 벗어나 실행 단계로 넘어간 뒤 발생하는 문제인데, Plan 모드를 쓴다고 피해갈 수 있는 건 아닙니다. Gemini CLI의 write_file 도구는 파일 추가(append)를 지원하지 않고 전체 덮어쓰기만 가능합니다. GitHub 공식 토론(#7432)에 실제 사례가 기록돼 있습니다 — AI 에이전트가 “파일에 추가하겠다”고 말한 뒤 write_file을 호출해 기존 내용 전체가 삭제된 케이스입니다. 모델이 “Phase 23을 추가하겠다”고 선언했지만 실제로는 Phase 1~22가 전부 사라졌습니다.

💡 Plan 모드의 계획 파일 저장 방식도 같은 구조입니다

Plan 모드에서 CLI가 작성하는 계획 .md 파일도 write_file 기반입니다. 계획을 수정·반복하면 이전 계획 내용이 교체됩니다. 계획 히스토리가 필요하다면 외부 편집기로 수동 백업하거나 커스텀 plan 디렉터리를 Git 하에 두는 것이 낫습니다.

이 문제는 Plan 모드 자체의 결함이 아니라 Gemini CLI 전반의 설계 방식에서 비롯됩니다. 하지만 Plan 모드를 쓰면 AI가 더 신중하게 동작할 거라는 기대를 갖고 중요한 파일을 다루다가 같은 문제를 만날 수 있습니다. 중요한 파일에 무언가를 “추가”하는 작업을 시킬 때는, 계획서에 정확히 어떤 방식으로 파일을 수정하는지 확인하고 승인하는 것이 필요합니다.

실 사용자들의 GitHub 피드백에는 이 외에도 대형 파일 편집 시 regex 스택 오버플로 문제, shell 명령 파싱 실패 등이 언급돼 있습니다. Google 팀은 이 이슈들이 공개된 상황입니다.

ask_user 도구와 Conductor 확장의 실제 가치

Plan 모드에서 새로 도입된 ask_user 도구는 단순히 “질문하는 기능”이 아닙니다. AI가 가정하는 대신 실제 목표를 명확히 하기 위해 계획 진행을 멈추고 선택지를 제시하는 구조입니다. 예를 들어 DB 마이그레이션을 계획할 때 어떤 ORM을 쓸지, 롤백 전략이 필요한지 등을 물어볼 수 있습니다. 이 양방향 소통이 계획의 품질을 실질적으로 높이는 부분입니다.

Conductor 확장은 Plan 모드와 ask_user를 기반으로 만들어진 외부 확장입니다. 복잡한 마이그레이션이나 다단계 구현 작업을 트랙으로 나눠 관리하고, 각 마일스톤마다 결정 사항을 확인하는 방식으로 동작합니다. GitHub 저장소(gemini-cli-extensions/conductor)에서 설치할 수 있으며, Google이 Conductor를 향후 Gemini CLI 내장 모드로 통합할 계획이라고 밝혔습니다. (출처: Google Developers Blog, 2026.03.11)

💡 MCP 도구와 Plan 모드를 같이 쓸 때 나오는 조합

Plan 모드는 읽기 전용 MCP 도구도 허용합니다. GitHub 이슈 읽기, Postgres 스키마 확인, Google Docs 내용 조회 등이 계획 단계에서 가능합니다. 단, 기본 설정에서 읽기 전용 MCP 도구도 사용자 확인이 필요합니다. 자동 승인을 원하면 ~/.gemini/policies/에 별도 정책 파일을 만들어야 합니다.

Plan 모드 쓸 때 알아두면 좋은 것들

실사용에서 놓치기 쉬운 포인트를 정리했습니다.

01

계획 파일 경로를 프로젝트 안으로 옮기세요

기본 저장 위치는 ~/.gemini/tmp/로 프로젝트 밖입니다. settings.json에서 "directory": ".gemini/plans"로 바꾸면 Git으로 계획 이력을 관리할 수 있습니다. 단, 이 경우 policy 파일도 함께 수정해야 write 권한이 부여됩니다.

02

승인은 “manually accept edits”로 시작하는 게 낫습니다

자동 승인은 계획 품질을 믿을 수 있게 된 뒤에 켜는 것이 안전합니다. 처음 쓸 때는 각 수정 단계를 직접 확인하는 manual 방식으로 실제로 무슨 일이 일어나는지 파악하는 시간이 필요합니다.

03

자동 모델 라우팅을 끄면 Flash 모델만 씁니다

settings.json에서 "modelRouting": false로 설정하면 Plan 단계에서도 Flash 모델만 사용됩니다. 비용을 줄이려는 목적이라면 유효하지만, 복잡한 아키텍처 작업에서는 계획 품질이 낮아질 수 있습니다.

04

Agent Skills로 도메인 특화 계획을 만들 수 있습니다

DB 마이그레이션, 보안 감사, 프론트엔드 디자인 등 특정 도메인에 맞는 절차를 담은 Agent Skill을 활성화하면 Plan 모드가 그 절차에 맞춰 조사하고 설계합니다. 팀 공통 작업이라면 Skill로 표준화하는 것이 효율적입니다.

자주 묻는 질문 (Q&A)

Q1. Plan 모드는 기본으로 켜져 있나요, 아니면 직접 켜야 하나요?
기본값으로 활성화돼 있습니다. Shift+Tab으로 모드를 순환할 때 Plan 모드가 포함돼 있으며, 자연어로 “계획 짜줘”라고 해도 자동으로 진입합니다. 사용하고 싶지 않다면 /settings에서 토글로 끌 수 있습니다.
Q2. 무료 계정으로 Plan 모드를 쓰면 Pro 모델이 사용되나요?
2026년 3월 25일 이전까지는 사용됩니다. 그 이후에는 무료 티어 사용자는 Flash 모델만 쓸 수 있습니다. Pro 모델이 필요하다면 Google AI Pro·Ultra 유료 플랜이나 AI Studio API 키가 필요합니다.
Q3. Plan 모드 중에는 정말 파일이 수정되지 않나요?
Plan 모드 활성화 중에는 계획 .md 파일 외에 어떤 파일도 수정되지 않습니다. 단, 계획을 승인하는 순간 모드가 전환되고 그때부터 수정이 시작됩니다. 승인 전에 계획 파일 내용을 꼼꼼히 검토하는 것이 중요합니다.
Q4. 계획 파일은 어디에 저장되고 얼마나 보관되나요?
기본 경로는 ~/.gemini/tmp/<project>/<session-id>/plans/이며, 세션 데이터는 기본 30일 보관 후 자동 삭제됩니다. 커스텀 디렉터리로 경로를 바꾸면 자동 삭제 대상에서 빠지므로 직접 관리해야 합니다.
Q5. Conductor 확장을 쓰려면 유료 플랜이 필요한가요?
Conductor 자체는 무료 오픈소스 확장입니다. 하지만 Conductor가 Plan 모드에서 고품질 계획을 생성하기 위해 Pro 모델을 활용하기 때문에, 3월 25일 이후 무료 티어에서는 Flash 모델 기반으로 동작합니다. 복잡한 작업에서 성능 차이가 날 수 있습니다.

마치며

Gemini CLI Plan 모드는 분명히 좋은 방향의 업데이트입니다. 코드베이스를 먼저 파악하고 계획을 세운 뒤 구현으로 넘어가는 흐름은 AI 코딩 도구의 고질적인 “빠른 실수” 문제를 줄이는 데 실질적으로 기여합니다.

다만 “읽기 전용이라 안전하다”는 말이 그대로 믿어지는 수준은 아닙니다. 계획 승인 즉시 Auto-Edit 모드로 전환되는 구조, 무료 티어에서의 Pro 모델 제한(내일부터 적용), 실행 단계의 파일 덮어쓰기 위험 — 이 세 가지를 알고 쓰는 것과 모르고 쓰는 것은 체감 경험이 꽤 다릅니다.

솔직히 말하면, 지금 Gemini CLI는 아직 안정성 측면에서 Claude Code나 다른 CLI 도구와 비교해 부족한 부분이 있습니다. Plan 모드 자체는 괜찮은 기능이지만, 도구 전반의 신뢰성이 올라와야 이 기능의 가치가 온전히 느껴질 것 같습니다. 지금은 가볍게 시도해 보되, 중요한 작업엔 수동 확인을 유지하는 게 현실적입니다.

📎 본 포스팅 참고 자료
  1. Google Developers Blog — Plan mode is now available in Gemini CLI (2026.03.11) · developers.googleblog.com
  2. Gemini CLI 공식 문서 — Plan Mode · geminicli.com/docs/cli/plan-mode/
  3. Google Gemini CLI GitHub Discussion #22970 — Service update: mitigating abuse and prioritizing traffic (2026.03.22) · github.com/google-gemini/gemini-cli
  4. Google for Developers Korea Blog — 3월 둘째 주 위클리 업데이트 (2026.03.13) · developers-kr.googleblog.com

본 포스팅 작성 이후 서비스 정책·UI·기능이 변경될 수 있습니다. Gemini CLI는 지속적으로 업데이트되고 있으며, 특히 요금 정책 및 모델 접근 권한은 Google 공식 공지를 통해 수시로 변경될 수 있습니다. 최신 정보는 Gemini CLI 공식 문서에서 확인하시기 바랍니다. 본 포스팅은 2026년 3월 24일 기준으로 작성되었습니다.

댓글 남기기


최신 글


아이테크 어른경제에서 더 알아보기

지금 구독하여 계속 읽고 전체 아카이브에 액세스하세요.

계속 읽기