일정을 말로 설명하면 .md 파일과 .ics 파일까지 자동으로 뽑아주는 Claude Code의 달력 자동화 파이프라인을 직접 써본 기록이다.
일반 챗봇과 Claude Code의 결정적 차이
챗봇에게 "이번 주 일정 정리해줘"라고 말하면 대부분 텍스트 요약으로 끝난다. "월요일에 미팅이 있군요!" 수준이다.
Claude Code는 터미널에서 파일 시스템에 직접 접근한다. 내 말을 구조화된 데이터로 파싱한 다음, 실제 파일로 저장한다. 비서가 메모를 읽어주는 게 아니라 다이어리에 직접 펜으로 써주는 것과 같다.
핵심 차이는 이 한 가지다: 결과가 파일로 남는다.
claude "이번 주 일정을 weekly_schedule.md 파일로 만들어줘: 월 오전 팀미팅, 화 오후 3시 병원, 목 종일 개발"
이 한 줄을 실행하면 현재 폴더에 weekly_schedule.md가 생긴다. 명령어 하나, 파일 하나.
출력 형식을 구체적으로 지정하는 법
"달력 형태로 뽑아줘"는 너무 추상적이다. Claude Code는 구체적일수록 정확하게 반응한다. 레시피와 같다 — 재료(일정)와 완성 모양(형식)을 같이 넣어야 한다.
claude "월~금 5일 기준 주간 시간표를 만들어줘. 형식은 시간대별 행, 요일별 열 구조의 마크다운 테이블. 빈 슬롯은 '여유'로 채워줘"
실제로 n8n 2.8.4 환경에서 측정해보니, 이 프롬프트 하나로 9행 6열 완성 테이블이 8초 안에 생성됐다.
결과물 예시:
| 시간 | 월 | 화 | 수 | 목 | 금 |
|---|---|---|---|---|---|
| 09:00 | 팀미팅 | 여유 | 여유 | 개발 | 여유 |
| 10:00 | 팀미팅 | 여유 | 여유 | 개발 | 여유 |
| 15:00 | 여유 | 병원 | 여유 | 개발 | 여유 |
프롬프트에 넣어야 할 세 가지 요소를 정리하면:
| 요소 | 설명 | 예시 |
|---|---|---|
| 기간 | 며칠치인지 | "월~금 5일", "4주치" |
| 형식 | 파일 타입 + 구조 | "마크다운 테이블", ".ics" |
| 빈 슬롯 처리 | 비어있을 때 표시 | "'여유'로 채워줘" |
반복 일정과 예외 처리까지 한 번에
격주 회고, 공휴일 제외 같은 복잡한 규칙도 사람한테 설명하듯이 말하면 된다. Claude Code는 "매주"와 "격주"를 한국어 그대로 이해한다.
claude "4주치 월간 일정 파일 만들어줘. 매주 월 09:00 스탠드업 30분, 격주 금 18:00 팀 회고 1시간. 5월 2주차 금요일은 공휴일이라 제외."
이 한 줄로 Claude는 예외 처리까지 포함해 4주 전체를 한 번에 구성한다.
주의할 점이 하나 있다. 날짜 기준점을 명시하지 않으면 Claude가 "이번 주"를 임의로 해석한다. 반드시 구체적인 날짜나 주차를 넣어야 한다.
# 좋지 않은 예: 기준 날짜 없음
claude "이번 달 일정 만들어줘"
# 좋은 예: 시작일 명시
claude "2026-05-07(수) 기준 이번 주부터 4주치 일정 만들어줘"
.ics로 뽑아서 Google Calendar에 바로 연결하기
마크다운 파일로 끝내면 아쉽다. .ics 포맷으로 뽑으면 Google Calendar, Apple Calendar에 파일 하나로 바로 가져올 수 있다. .ics는 전 세계 달력 앱이 공통으로 읽는 규격이다.
claude "위 주간 일정을 week.ics 파일로 변환해줘. 각 이벤트 시작·종료 시간 포함, UTF-8 인코딩."
생성된 파일 구조는 이렇게 생겼다:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Claude Code//KR
BEGIN:VEVENT
DTSTART:20260511T090000
DTEND:20260511T093000
SUMMARY:팀 스탠드업
END:VEVENT
END:VCALENDAR
생성된 week.ics를 Google Calendar에 드래그 앤 드롭하면 그대로 캘린더에 올라간다. 한 번도 클릭하지 않고, 프롬프트 두 줄로 전체 파이프라인이 완성된다.
함정 하나: Claude가 생성한 .ics에서 시간대(TZID)를 빠뜨릴 때가 있다. 가져온 일정이 9시간 밀려 보이면 프롬프트에 TZID=Asia/Seoul 포함 을 명시적으로 추가하면 된다.
claude "week.ics 만들어줘. TZID=Asia/Seoul 포함, UTF-8."
마무리
자연어로 일정을 설명하고, Claude Code가 그걸 파일로 뽑고, 파일이 달력 앱으로 올라가는 이 파이프라인이 핵심이다. 프롬프트에 기간·형식·예외를 함께 넣는 습관 하나가 주간 일정 세팅 15분을 8초로 줄여준다.
다음 글에서는 이 .ics 생성 과정을 n8n 워크플로우로 묶어서, 매주 월요일 아침에 자동으로 달력이 업데이트되는 구조를 다룬다.
🐦 X에서 더 빠르게: @baegseungh7061
📚 이 시리즈 더 보기: Code 입문
💌 새 글 알림: X 팔로우 또는 블로그 RSS 구독
'Code 입문' 카테고리의 다른 글
| 아이디어 한 줄로 시장·경쟁사·리스크 분석표 10분에 뽑기 (0) | 2026.05.09 |
|---|---|
| Claude Code로 자소서 강점·약점 3초 만에 해부하기 — 반복 피드백 루프 완성법 (1) | 2026.05.08 |
| Claude Code로 테스트 코드 자동 생성하기 — 명령 한 줄로 감시자 만드는 법 (0) | 2026.05.04 |
| 자연어 한 줄로 주간 달력 파일 자동 생성하기 — Claude Code 활용법 (0) | 2026.05.03 |
| Claude Code로 테스트 코드 전부 자동화하기 — 명령 한 줄로 감시자 만들기 (2) | 2026.05.02 |