Hooks로 Gemini CLI를 워크플로에 맞게 맞춤 설정하기
Source: Google Developers Blog
위에 제공된 소스 링크 외에 번역할 텍스트가 포함되어 있지 않습니다. 번역이 필요한 본문을 제공해 주시면 한국어로 번역해 드리겠습니다.
소개
JAN. 28, 2026
에이전트 시대의 효율성은 단순히 코드를 더 빨리 작성하는 것이 아니라, 특정 환경에 맞게 조정되는 맞춤형 도구를 구축하는 것입니다. 다음과 같은 경우가 있을 때:
- 맞춤형 프로젝트 컨텍스트 주입
- 엄격한 보안 정책 적용
- 테스트 워크플로 자동화
모두에게 맞는 단일 에이전트는 종종 부족합니다.
그래서 우리는 Gemini CLI hooks를 소개합니다. 이는 제어하고 맞춤화할 수 있는 강력한 새로운 방법으로, 소스 코드를 전혀 건드리지 않고도 Gemini CLI의 동작을 여러분의 필요에 맞게 조정할 수 있게 해줍니다.
Note: 원본 내용에 표시되지 않은 비디오가 언급되었습니다. 삽입할 비디오가 있다면 다음 Markdown 구문을 사용하세요:
[](https://www.youtube.com/watch?v=VIDEO_ID)
VIDEO_ID를 해당 YouTube 식별자로 교체하십시오.
훅(Hooks)이란?
Hooks는 Gemini CLI가 라이프사이클의 특정 사전 정의된 시점에 실행하는 스크립트 또는 프로그램입니다. 이를 AI 어시스턴서를 위한 “미들웨어”라고 생각하면 됩니다. Hooks를 사용하면 에이전트 루프 내에서 동기적으로 실행되는 사용자 정의 로직을 삽입할 수 있으며, 이를 통해 다음과 같은 작업을 수행할 수 있습니다:
- 컨텍스트 추가 – 모델이 요청을 처리하기 전에 관련 정보를 삽입합니다(예: 최신 Git 커밋, Jira 티켓, 로컬 문서 등).
- 동작 검증 – 실행되기 전에 잠재적으로 위험한 작업을 검토하고 차단하며, 요구 사항이 충족될 때까지 반복하여 모델 성능을 향상시킵니다.
- 정책 적용 – 조직 전체의 보안 및 컴플라이언스 규칙을 자동으로 적용합니다.
- 로그 및 최적화 – 도구 사용을 추적하고 도구 선택을 동적으로 조정하여 정확도를 높이고 토큰 비용을 감소시킵니다.
- 알림 전송 – Gemini CLI가 유휴 상태이거나 입력을 기다리거나 도구 확인이 필요할 때 알림을 받습니다.
Hooks를 구성하면 Gemini CLI를 어떤 프로젝트의 요구에도 맞출 수 있습니다. 이벤트가 발생하면 CLI는 훅이 완료될 때까지 일시 중지되며, 이를 통해 사용자 정의 로직이 항상 적용됩니다. 이는 Gemini CLI 위에 원하는 방식으로 기능을 구축할 수 있는 길을 열어줍니다.
Source: …
설득력 있는 예시: 자동 비밀 스캔
후크의 가장 실용적인 활용 중 하나는 보안 안전망을 만드는 것입니다. BeforeTool 후크를 사용하면 AI가 실수로 API 키나 비밀번호와 같은 민감한 데이터를 코드베이스에 기록하는 것을 방지할 수 있습니다.
팁: Gemini CLI에서 사용 가능한 모든 후크 이벤트 유형을 확인하려면 공식 문서를 참고하세요.
후크 스크립트 (.gemini/hooks/block-secrets.sh)
#!/usr/bin/env bash
# Read hook input from stdin
input=$(cat)
# Extract content being written using jq
content=$(echo "$input" | jq -r '.tool_input.content // .tool_input.new_string // ""')
# Check for common secret patterns
if echo "$content" | grep -qE 'api[_-]?key|password|secret|AKIA[0-9A-Z]{16}'; then
# Return structured denial to the agent
cat
fi
- 후크 참조 –
훅이 가능하게 하는 것
훅은 Gemini CLI 확장에 새로운 가능성의 물결을 열어줍니다. 라이프사이클 이벤트(예: AfterAgent)에 연결함으로써, 확장은 Gemini의 동작을 자동으로 수정하거나 확장할 수 있습니다.
예시: Ralph 확장
- Repo:
- Technique: “Ralph loop”를
AfterAgent훅을 사용해 구현합니다. - How it works:
- 훅이 에이전트의 완료 신호를 가로챕니다.
- 에이전트를 지속적인 반복 루프로 다시 강제합니다.
- Gemini CLI가 시도 사이마다 컨텍스트를 새로 고쳐, 장시간 세션 동안 “컨텍스트 부패”를 방지합니다.
Result: Gemini CLI가 지칠 줄 모르는, 자율적인 작업자가 되어 작업이 진정으로 완료될 때까지 계속 작업합니다.
예시: Galz10pickle‑Rick 확장
- Link:
- Technique: Ralph 루프에 캐릭터와 유머를 가미한, 보다 경직되고 반복적인 소프트웨어‑개발‑라이프사이클 버전입니다.
Takeaway: 훅을 확장 내부에 패키징함으로써 개발자는 Gemini CLI를 반응형 어시스턴트에서 능동적이고 장기 실행 자동화 엔진으로 변환하는 정교하고 자가 유지 가능한 워크플로를 제공할 수 있습니다. 문서를 살펴보고 오늘 바로 훅이 지원되는 확장을 직접 만들어 보세요.
시작하기
Hooks은 Gemini CLI에서 **v0.26.0+**부터 기본적으로 활성화됩니다. 최신 버전으로 업데이트하려면 다음을 실행하세요:
npm install -g @google/gemini-cli@latest
더 깊이 파고들어 첫 번째 훅을 만들려면 공식 문서를 확인하세요:
- hooks 소개 – 핵심 개념 및 이벤트에 대한 개요.
- 첫 번째 훅 작성하기 – 포괄적인 예시.
- Hooks 기술 레퍼런스 – 모든 이벤트 유형에 대한 상세 입력 및 출력 스키마.
- 모범 사례 및 보안 – 성능 최적화 및 위협 완화 전략.
오늘 바로 사용해보고 Gemini CLI를 워크플로에 어떻게 맞추고 있는지 GitHub 저장소 또는 소셜에서 알려주세요!
최신 뉴스와 공지를 놓치지 않으려면 X의 Gemini CLI 를 팔로우하세요.