이런 분께
출근길에 "오늘 회의가 몇 시였더라" 하고 캘린더 앱을 몇 번씩 여는 분께 맞아요. 유료 비서 앱 없이, 매일 아침 오늘 일정이 메일 한 통으로 정리돼 오면 좋겠다는 분도요.
답부터 말하면, 구글 캘린더를 쓴다면 구글 앱스 스크립트(구글 계정에 딸린 무료 자동화 도구)로 직접 만들 수 있어요. 코드는 아래에 그대로 있고, 내 상황에 맞게 고칠 때 제미나이에 물어보면 돼요.
끝나면 이렇게 됩니다
매일 정한 시간에 이런 메일이 와요. 아래는 이 코드를 예시 일정 3개로 시험 실행한 결과예요.
제목: [오늘 일정] 10월 29일 3건
- 10:00~11:00 주간 팀 회의 (3층 회의실)
- 14:30~15:00 거래처 통화
- 종일 분기 보고서 마감
일정이 없는 날은 "오늘은 캘린더에 잡힌 일정이 없어요."라는 한 줄이 와요.
준비물
- 구글 계정과 구글 캘린더(기본 캘린더에 일정이 들어 있어야 해요)
- 컴퓨터 브라우저. 앱스 스크립트는 script.google.com에서 열어요.
- 무료로 돼요. 다만 구글이 정한 하루 실행·메일 한도가 있어요(2026년 10월 기준, 공식 할당량 페이지 참고). 하루 한 통이면 넉넉해요.
- 회사 구글 계정이면 관리자가 앱스 스크립트를 막아 뒀을 수 있어요.
따라 하기
- script.google.com에 들어가 「새 프로젝트」를 눌러요.
- 편집기에 있던 글을 모두 지우고, 아래 「복사해서 쓰는 프롬프트」의 코드를 붙여 넣은 뒤 저장(Ctrl+S)해요.
- 위쪽 함수 고르는 칸에서 sendTodayAgenda를 고르고 「실행」을 눌러요.
- 처음 실행하면 권한 확인 창이 떠요. 내 계정을 고르고, 캘린더 읽기와 메일 보내기를 허락해요. 내가 만든 스크립트라 "확인되지 않은 앱" 안내가 나올 수 있어요. 고급 설정을 열어 내 프로젝트로 이동하면 돼요.
- 메일함에 [오늘 일정] 메일이 왔는지 봐요.
- 왼쪽 알람시계 모양 「트리거」를 누르고 오른쪽 아래 「트리거 추가」를 눌러요(영어 화면 Triggers, Add Trigger).
- 실행할 함수는 sendTodayAgenda, 이벤트 소스는 시간 기반(Time-driven), 유형은 일 단위 타이머(Day timer), 시간은 원하는 아침 시간대로 고르고 「저장」해요.
복사해서 쓰는 프롬프트
코드는 그대로 붙여 넣으면 돼요.
function sendTodayAgenda() {
var tz = Session.getScriptTimeZone();
var today = new Date();
var events = CalendarApp.getDefaultCalendar().getEventsForDay(today);
var lines = [];
events.forEach(function (e) {
var time = e.isAllDayEvent()
? '종일'
: Utilities.formatDate(e.getStartTime(), tz, 'HH:mm') + '~' + Utilities.formatDate(e.getEndTime(), tz, 'HH:mm');
var place = e.getLocation() ? ' (' + e.getLocation() + ')' : '';
lines.push('- ' + time + ' ' + e.getTitle() + place);
});
var body = lines.length ? lines.join('\n') : '오늘은 캘린더에 잡힌 일정이 없어요.';
var subject = '[오늘 일정] ' + Utilities.formatDate(today, tz, 'M월 d일') + ' ' + events.length + '건';
MailApp.sendEmail(Session.getActiveUser().getEmail(), subject, body);
}
