매주 자동으로 돌게 만들기 — 스케줄 등록부터 결과 받아보기까지
Codex의 자동화 기능으로 Gmail 정리·CSV 리포트 같은 작업을 스케줄에 등록해요. 결과는 자동화 메뉴 안에 채팅 스레드 형태로 쌓이고, 나는 출근해서 요약만 확인.
이 챕터를 끝내면 ch11에서 만든 Gmail 정리 스크립트가 내가 안 시켜도 매주 월요일 9시에 자동으로 돌고, 결과는 Codex 앱 자동화 메뉴 안에 채팅 스레드 형태로 쌓인 상태가 돼요. Codex가 "시키면 하는 도구"에서 "알아서 일해두는 도구"로 한 단계 올라서요.
Gmail·캘린더·CSV 정리 같은 아침 루틴 10~15분이, 출근 시점엔 이미 "지난밤 정리 완료, 답장 필요 3건" 요약만 자동화 메뉴 옆 안 읽음 배지로 와 있는 상태로 바뀌어요. Part 3 전체가 이 한 스텝을 위해 달려왔다고 봐도 돼요.
Codex의 자동화 — 두 가지 핵심 개념
Codex 앱 좌측 사이드바에는 자동화 메뉴가 있어요. 여기서 자동화를 만들고, 실행 이력을 보고, 결과를 읽어요. 알아둘 개념 두 가지.

- 자동화(Automation) — "언제 뭘 할지" 스케줄 + 프롬프트. 등록해두면 Codex가 때 맞춰 스스로 실행.
- 자동화 결과 — 실행이 끝나면 사이드바 자동화 메뉴에 안 읽음 배지 숫자로 알려줘요. 클릭해 들어가면 등록된 자동화별로 결과가 일반 채팅 스레드와 같은 모습으로 펼쳐져요. 별도 받은편지함 앱이 따로 있는 게 아니라, 평소 쓰던 채팅 UI 그대로 결과를 읽고 후속 질문도 이어갈 수 있어요. (OpenAI 영문 docs는 이 자리를 "Triage"라고 부르지만 한글 UI엔 그 라벨이 따로 노출되지 않아요.)
자동화의 두 갈래 — 프로젝트 종속 여부
자동화 만들 때 큰 결정은 하나예요. 특정 프로젝트(Git 레포)에 묶을지 안 묶을지.
1. 프로젝트 안 묶음 (입문 권장)
Gmail 정리·CSV 리포트·캘린더 아젠다처럼 특정 코드 프로젝트와 무관한 일은 프로젝트를 안 묶어요. 매번 새 세션으로 스케줄 따라 독립 실행. P1 입문용은 거의 다 이쪽.
영문 docs에서 부르는 이름은 Standalone이에요. 한글 UI엔 별도 라벨이 따로 안 떠요 — 양식에서 "프로젝트에서 작업하기" 같은 옵션을 켜지 않은 채로 등록하면 자동으로 이 모드가 돼요.
2. 프로젝트 묶음 (Git 레포 자동화)
특정 Git 레포에 자동화를 붙이고 싶으면(예: "매일 main 브랜치 빌드 상태 점검", "내 프로젝트의 dependency 자동 업데이트") 프로젝트를 지정해야 해요. 프로젝트를 지정하면 실행 환경이라는 드롭다운이 추가로 떠요.
| 실행 환경 | 어디서 돌아요 | 언제 |
|---|---|---|
| 로컬 | 내가 평소 쓰는 그 프로젝트 폴더 | 자동화가 내 작업 중인 파일을 그대로 만져도 OK일 때 |
| 워크트리 | 같은 레포의 격리된 git worktree | 자동화가 내 작업 중인 파일과 안 섞이게 분리하고 싶을 때 (대부분 이게 안전) |
| 채팅 | 특정 기존 채팅 스레드에 붙여 follow-up | 같은 맥락을 유지하면서 주기적으로 깨우기 (긴 작업 모니터링) |
P1 입문용은 여기까지 안 들어와요. Part 3에서 만든 Gmail·CSV·캘린더 자동화는 모두 1번(프로젝트 안 묶음)으로 처리돼요. 위 표는 "이런 옵션이 있다"는 정도로만 알아두고, 실제로 Git 프로젝트 자동화가 필요해질 때 다시 펼치면 돼요.
자동화 만들기 — 두 가지 방법
방법 1. 자동화 메뉴에서 양식으로
- 좌측 사이드바 → 자동화
Codex 앱 좌측 사이드바에서 자동화 메뉴를 클릭. 상단에 '자동화' 제목과 '+ 자동화 만들기' 버튼, 아래 '현재' 섹션에 등록된 자동화 행 목록(이름·프로젝트·다음 실행 시각)만 단순하게 보이는 화면이 떠요. 처음이면 등록된 게 없어서 빈 화면.
- 우상단 '+ 자동화 만들기' 클릭
우상단 + 자동화 만들기 버튼을 누르면 새 자동화 양식 모달이 열려요. 빈 양식이 기본이지만, 모달 우상단의 **'템플릿 사용'**을 누르면 Status reports·Incidents & triage 같은 카테고리별 추천 템플릿이 펼쳐져서 골라 시작할 수도 있어요. 본인 시나리오로 직접 짤 거면 빈 양식 그대로.
- 제목·프롬프트 입력
모달 안에 자동화 제목과 프롬프트를 적어요. 프롬프트는 평소 Codex한테 부탁하던 대로 자연어. 예: "지난 7일 동안 받은 읽지 않은 Gmail 메일을 광고는 라벨링·보관, 나머지는 발신자별 한 줄 요약."
- 실행 환경·프로젝트·스케줄 지정
모달 하단에 옵션 줄이 있어요.
- 실행 환경(드롭다운: 로컬/워크트리/채팅) — Gmail·CSV처럼 프로젝트 안 묶을 거면 그대로 둬도 OK. Git 자동화면 워크트리 권장(앞 절 참고).
- 프로젝트 선택 — 프로젝트 종속 켤 때만.
- 스케줄 — 프리셋(매일 오전 9:00 같은) 또는 커스텀 cron 문법(예:
0 9 * * 1은 "매주 월요일 오전 9시"). - + (추가 옵션) — 모델·추론 수준(reasoning effort) 같은 세부 설정은 여기서 펼쳐요.
- 만들기 → 다음 스케줄부터 자동 실행
우하단 만들기 버튼. 저장되면 자동화 목록에 올라가고, 다음 스케줄 시각부터 자동으로 실행돼요. 결과는 자동화 메뉴 안에 채팅 스레드로 쌓이고 자동화 옆에 안 읽음 배지로 알림.

방법 2. 일반 채팅에서 자연어로
대화창에서 바로 자연어로 등록할 수도 있어요.
자동화 하나 만들어줘.
일정: 매주 월요일 오전 9시 (내 시간대 기준)
작업: 지난 7일 동안 받은 읽지 않은 Gmail 메일을
- 광고·뉴스레터는 '광고' 라벨 달고 보관
- 나머지는 발신자별로 묶어 한 줄 요약
- 답장 필요해 보이는 건 맨 위 🔴 표시
타입: 프로젝트 안 묶음 (매번 새 세션)
결과: 자동화 결과 스레드에 요약으로 남겨줘
등록 전 어떤 자동화가 만들어지는지 먼저 요약해줘.
Codex가 요약해서 보여주면 확인 후 "등록해줘." 그러면 좌측 사이드바의 자동화 목록에 들어가요.
스케줄에 올리기 전에 일반 채팅에서 프롬프트를 먼저 한 번 돌려봐요. 결과가 예상한 모양으로 나오는지 확인한 뒤에 자동화로 승격하는 게 안전해요. 자동화된 프롬프트는 내가 안 보는 시간에 돌기 때문에 한 번에 맞춰야 사고가 적어요.
자동화 결과 받아보기
자동화 결과를 보러 가는 입구는 두 군데예요. 둘 다 같은 자리로 이어져요.
- 사이드바 '자동화' 메뉴 옆 안 읽음 배지 — 새 결과가 떨어지면 자동화 글자 옆에 안 읽음 숫자(예:
1)가 떠요. 클릭하면 결과 스레드로 진입. - 사이드바 '채팅' 목록 — 자동화 실행도 채팅 스레드로 만들어져서 평소 쓰던 채팅 목록 안에 같이 쌓여요. 자동화로 만들어진 스레드는 자동화 이름이 그대로 채팅 제목.
진입하면 일반 채팅과 똑같은 화면이 떠요. 받은편지함이라는 별도 영역이 따로 있는 게 아니라, 평소 채팅 UI 그대로 결과를 읽고 후속 변경도 이어갈 수 있어요.
한 결과 화면엔 뭐가 들어 있나
자동화 결과 스레드를 열면 위에서부터 차례로 이런 게 보여요.
- 상단 회색 박스 — 자동화 컨텍스트가 박혀 있어요.
Automation: 자동화 이름,Automation ID,Automation memory: $CODEX_HOME/automations/.../memory.md(다음 실행에 참고할 메모리 경로),Last run(직전 실행 시각). 그 아래에 등록할 때 적은 자동화 프롬프트가 같이 노출. - Codex 답변 — 처리 요약 한두 줄(예: "지난 7일 읽지 않음 75개 확인. 광고/뉴스레터 56개 라벨링·보관 처리, 남은 인박스 19개")이 먼저 오고, 그 아래에 사람 확인 필요한 항목들이 발신자별 🔴 표시로 묶여 있어요.
- 나머지 한 줄 요약 — 신경 안 써도 되는 메일들은 "Discord 멘션 2건, Jira 주간 업데이트 1건…"처럼 한 줄로 묶여 와요.
- 참고 사항 — Codex가 작업 중에 부닥친 제약(예: "자동화 메모리 파일이 읽기 전용이라 업데이트 못함") 같은 자가 진단도 같이.
- 하단 입력창 — "후속 변경 사항을 부탁하세요" 입력창. 결과 보고 "이 메일 답장 초안 만들어줘" 같은 후속을 그 자리에서 시킬 수 있어요. 일반 채팅이랑 똑같이 동작.

결과 모양은 자동화 프롬프트로 통제
매일 같은 모양으로 받고 싶으면 자동화 프롬프트에 결과 형식을 직접 박아두면 돼요.
... (자동화 본문)
결과는 항상 다음 형식으로 한 묶음 요약해줘:
- 처리 건수: 광고 N건 라벨링·보관, 남은 인박스 N건
- 답장 필요 항목: 발신자별로 🔴 + 한 줄 (없으면 "오늘 답장 필요한 메일 없음")
- 나머지(저우선): 한 줄로 묶음
처리할 게 0건이어도 "오늘 처리 결과 없음" 한 줄은 꼭 남겨줘.
이렇게 박아두면 매일 같은 자리에 같은 모양 정보가 박혀서 30초 안에 훑을 수 있어요. 캡처 예시 결과도 이 패턴으로 정리된 거예요.
언제 확인하나
자동화 메뉴 안 읽음 배지가 알람 역할을 하니, 본인 루틴에 한 번씩 자동화 메뉴를 열어 배지 0으로 만드는 식으로 묶어요.
- 출근 직후 — 지난밤·주말 동안 돈 자동화
- 점심 후 — 오전에 돈 자동화 (예: 아침 8시 캘린더 아젠다)
- 퇴근 전 — 오늘 미처 처리 못한 "답장 필요" 항목 정리
자동화 잘 박혀 있으면 처리할 게 없어 빈 손으로 빠져나오는 날도 많아요(그게 정상). 매번 가득 차 있다면 자동화 프롬프트가 너무 무거운 거 — 본인이 정말 손볼 항목만 남기도록 조건을 더 좁혀요.
등록된 자동화 확인·수정·중지
자동화는 만들고 잊으면 위험. 주기적으로 훑어야 해요.
지금 등록된 자동화 목록 보여줘. 각각 언제 마지막으로 실행됐고 결과는 어땠는지.
수정·중지도 자연어로 돼요. "Gmail 자동화 시간을 월요일 9시에서 매일 8시로 바꿔줘", "Gmail 자동화 잠시 중지해줘."
다른 스케줄·트리거 예시
시간 기반 (가장 흔함)
0 8 * * *— 매일 아침 8시, 오늘 캘린더 일정 아젠다0 9 * * 1— 매주 월요일 9시, 지난주 받은편지함 정리0 18 * * 5— 매주 금요일 저녁 6시, 이번 주 Linear 완료 이슈 리뷰 리포트0 9 1 * *— 매월 1일 9시, 지난달 주문 CSV 상위 고객 리포트
이벤트 기반 (특정 조건이 들어오면)
- "sales@client.com에서 메일이 오면 5분 안에 Slack DM으로 요약 전달."
- "#urgent 채널에 새 메시지가 뜨면 해당 내용을 요약해서 나한테 보내줘."
- "Google Drive '계약서' 폴더에 새 파일이 올라오면 파일명을
YYYY-MM-DD-요약형식으로 rename."
스킬(Skill)과 결합
Codex의 스킬(플러그인에 묶인 작업 레시피)을 자동화 안에서 호출할 수 있어요. 프롬프트 안에 $skill-name 문법으로 트리거.
안전하게 쓰는 법
자동화는 내가 안 보는 시간에도 돌아요. 사고를 며칠 뒤에 알게 되는 일이 생길 수 있어요. 아래 규칙을 반드시.
- 샌드박스 모드 이해하기 — Codex 자동화는 sandbox 모드에 따라 권한이 달라요. read-only면 파일 수정·네트워크 다 막힘 (가장 안전). workspace-write는 작업 폴더 안만 수정 가능. full access는 모든 권한 — 처음엔 절대 쓰지 마세요.
- 처음엔 좁게 — 첫 자동화는 되돌릴 수 있는 작업(라벨 달기·요약 전송)부터. 발송·삭제는 일주일 지켜본 뒤 추가.
- 첫 몇 회는 지켜보기 — 새 자동화 첫 주는 자동화 메뉴를 매일 확인. 안정된 뒤에야 "잊고 지내도 되는" 자동화로 승격.
- 중지 방법 먼저 외워두기 — 이상하게 돌면 즉시 중지. "X 자동화 지금 중지"가 언제든 통해야 해요.
실패했을 때 — 실제 마주칠 상황
사례 1: 자동화가 아예 안 돌았어요 → 스케줄 시각에 내 컴 꺼져 있거나 네트워크 끊김일 가능성. "지난주 X 자동화 실행 이력 보여줘"로 언제 실패했는지 확인. 자주 겹치면 스케줄을 컴 확실히 켜진 시간대로.
사례 2: 자동화 결과가 계속 엉뚱하게 옴 → 자동화 프롬프트 자체가 문제. "이 자동화가 어떤 조건으로 뭘 하게 돼 있는지 설명해줘"로 등록 내용을 풀어 확인. 애매한 부분이 보여요.
사례 3: 플러그인 권한이 만료됐어요 → Gmail·Slack 같은 플러그인 권한은 일정 기간 후 재인증 요구. 자동화가 "권한 오류"로 중단되면 해당 플러그인 설정에서 재로그인.
사례 4: 작업 트리(worktree)가 쌓여요 (Git 프로젝트 자동화) → 필요 없는 실행 이력은 보관(archive)으로. 핀(pin)은 작업 트리를 남겨두려 할 때만.
Part 3 마무리 — 여기까지 온 당신
여기까지 다 소화했으면 이만한 게 손에 쥐어진 거예요.
- 첫 스크립트로 다운로드 폴더 종류별 정리 (ch09)
- 드래그 한 번으로 CSV·엑셀 가공 (ch10)
- Gmail 같은 외부 서비스를 플러그인으로, 없는 앱은 컴퓨터 사용으로 (ch11)
- 자동화 등록 + 결과 스레드로 이 모두를 매주·매일 자동으로 (ch12)
"손으로 반복하던 업무"를 Codex에 얹는 전체 그림이 한 번 지나갔어요. 이제 Codex는 여러분을 대신해 조용히 일하고, 자동화 메뉴에 요약만 내미는 동료가 돼요.
다음 Part 4에서는 방향을 바꿔서 AI 챗봇 만들기 — 친구·동료한테 링크로 공유할 수 있는 진짜 웹 챗봇을 Codex로 만들어봐요.