TL;DR
- Claude Code에서 자연어로 Google 캘린더를 관리하는 스킬을 개발
- “오늘 일정 알려줘”, “내일 오후 2시에 미팅 잡아줘” 같은 자연어 명령으로 일정 CRUD
- 여러 캘린더 통합 조회 – 업무용, 개인용 캘린더를 한 번에 확인
- MCP 서버, gcalcli, Python API 등 다양한 접근 방식 지원
- GitHub 오픈소스로 공개: https://github.com/greeun/google-calendar
왜 이 스킬이 필요한가?
개발자의 하루는 일정 관리와의 싸움입니다. 코딩에 집중하다가도 미팅 시간을 확인하려면
- 브라우저 탭 전환
- Google 캘린더 접속
- 일정 확인
- 다시 코드로 복귀
이 컨텍스트 스위칭은 생각보다 큰 비용입니다. 연구에 따르면 집중 상태로 돌아오는 데 평균 23분이 걸린다고 합니다.
Claude Code google-calendar 스킬은 이 문제를 해결합니다. 터미널에서 벗어나지 않고, 자연어로 일정을 관리할 수 있습니다.
스킬의 핵심 가치
1. 컨텍스트 유지 – 개발 흐름을 끊지 않는다
코딩 중에 갑자기 “오늘 회의가 몇 시지?” 궁금해질 때:
# 기존 방식: 브라우저 열기 → 캘린더 접속 → 확인 → 복귀
# 새로운 방식: 터미널에서 바로
"오늘 일정 알려줘"
결과:
📅 2026-01-19 (오늘)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
종일 xx가입서류 수령 [personal]
종일 tip&tech [working]
개발 환경을 벗어나지 않고 즉시 확인. 흐름이 끊기지 않습니다.
2. 자연어 인터페이스 – 학습 비용 제로
복잡한 CLI 옵션을 외울 필요가 없습니다:
# 기존 CLI 방식
gcalcli add --title "팀 미팅" --when "2026-01-20 14:00" --duration 60 --calendar "work"
# 자연어 방식
"내일 오후 2시에 1시간짜리 팀 미팅 잡아줘"
Claude가 의도를 파악하고 알아서 처리합니다. 사람에게 말하듯이 요청하면 됩니다.
3. 멀티 캘린더 통합 – 분산된 일정을 한눈에
현대인은 여러 캘린더를 사용합니다:
- 개인 캘린더
- 업무 프로젝트 캘린더
- 팀 공유 캘린더
- 가족 캘린더
이 스킬은 config.yaml에 등록된 모든 캘린더를 통합 조회합니다. 물론 자연어 xxx 캘린더 추가해줘~ 도 됩니다.
# ~/.config/google-calendar/config.yaml
calendars:
- id: "primary"
name: "personal"
- id: "wo**************@*******************le.com"
name: "p:working"
- id: "te**************@*******************le.com"
name: "c:working"
“이번 주 일정” 한 마디면 모든 캘린더의 일정이 시간순으로 정렬되어 표시됩니다.
4. 스마트 기능 – AI가 도와주는 일정 관리
- 충돌 감지: 일정 생성 시 겹치는 일정이 있으면 미리 알림
- 빈 시간 제안: “1시간짜리 미팅 잡아줘”라고 하면 가능한 시간대 제안
- 자연어 시간 파싱: “다음 주 월요일”, “금요일 오후 3시”, “내일” 등 자유롭게 표현
기술적 구현
API 접근 우선순위
스킬은 환경에 따라 최적의 방법을 자동 선택합니다:
- MCP 서버: 가장 안정적, 권장
- gcalcli: 널리 사용되는 CLI 도구
- Python API: OAuth 직접 연동
인증 플로우
# 1. Google Cloud Console에서 OAuth 인증 정보 생성
# 2. credentials.json 배치
mkdir -p ~/.config/google-calendar
mv ~/Downloads/client_secret_*.json ~/.config/google-calendar/credentials.json
# 3. 첫 실행 시 브라우저에서 인증
# 4. token.pickle 자동 생성 → 이후 자동 갱신
파일 구조
~/.claude/skills/google-calendar/
├── SKILL.md # 스킬 정의 (Claude가 읽는 문서)
├── README.md # 사용자 가이드 (영어)
├── README.ko.md # 사용자 가이드 (한글)
├── scripts/
│ └── calendar_api.py # Python API CLI
└── references/
└── api_reference.md # gcalcli 명령어 레퍼런스
~/.config/google-calendar/
├── credentials.json # OAuth 인증 정보
├── token.pickle # 인증 토큰 (자동 생성)
└── config.yaml # 캘린더 및 설정
실제 사용 예시
일정 조회
"오늘 일정 알려줘"
"이번 주 일정"
"다음 주 월요일 뭐 있어?"
일정 생성
"내일 오후 2시에 팀 미팅 잡아줘"
"금요일 10시에 1시간짜리 코드 리뷰 추가"
일정 수정/삭제
"내일 팀 미팅 3시로 변경해줘"
"금요일 회의 취소해줘"
설치 및 시작
# 1. 저장소 클론
git clone https://github.com/greeun/google-calendar.git ~/.claude/skills/google-calendar
# 2. Python 라이브러리 설치
pip3 install google-auth google-auth-oauthlib google-api-python-client python-dateutil pyyaml
# 3. Google Cloud Console에서 OAuth 설정 후 credentials.json 배치
# 4. Claude Code에서 "오늘 일정 알려줘" 실행
자세한 설치 가이드는 GitHub 저장소를 참고하세요.
마치며
이 스킬의 본질적 가치는 “개발자의 시간을 아껴주는 것”입니다.
하루에 캘린더를 10번 확인한다면, 매번 30초씩 컨텍스트 스위칭 비용이 발생합니다. 연간으로 계산하면 수십 시간입니다.
Claude Code와 함께라면, 터미널에서 한 마디로 일정을 관리할 수 있습니다. 개발 흐름을 유지하면서요.
개발에만 집중하세요. 일정 관리는 AI에게 맡기세요~
*스킬만들기 재밌습니다.