"AI는 어제 한 일을 잊습니다. progress.md가 내일의 AI에게 어제를 전해줍니다."
월요일 아침, 또 처음부터 설명했습니다
지난 월요일 아침, 저는 커피를 들고 책상에 앉아 Claude Code 새 세션을 열었습니다. 금요일 저녁까지 같이 끌고 왔던 결제 흐름 디버깅을, 오늘은 마무리만 하면 되는 줄 알았습니다.
AI의 첫 답은 이거였습니다. "이 프로젝트에 대해 알려주세요. 어떤 작업을 하고 계셨나요?"
저는 잠시 멍해졌습니다. 금요일에 세 시간 동안 같이 풀었던 그 결제 웹훅 이슈를, 저는 또 처음부터 설명해야 했습니다. 채팅 로그를 위로 스크롤해도, 어디까지 했는지 한눈에 안 잡혔습니다.
AI는 어제 한 일을 잊습니다. progress.md가 내일의 AI에게 어제를 전해줘야 합니다.
세션은 끝나면 사라집니다
채팅창은 휘발성입니다. 새 세션이 열리는 순간, AI에게는 어제도 오늘도 처음 보는 프로젝트입니다. 챕터 4에서 CLAUDE.md가 프로젝트의 첫 페이지가 된다고 했죠. 그런데 첫 페이지만으로는 부족합니다. 어제 어디까지 갔는지, 무엇을 미해결로 남겼는지, 왜 그 결정을 내렸는지는 어제의 페이지에 있습니다.
채팅 로그를 스크롤하는 건 답이 아닙니다. 5분 안에 어제의 의도·결정·미해결 항목이 한 줄로 정리되지 않으면, 다음 세션은 다시 0에서 시작합니다. 그리고 0에서 시작한 세션은 또 0에서 끝납니다.
한 장의 살아 있는 메모, progress.md
해법은 거창하지 않습니다. 매 세션 끝에 5분만 투자해서 5개 칸을 채우는 것. 그게 전부입니다.
다음 세션의 첫 명령은 한 줄로 줄어듭니다. "progress.md 읽고 어제 미해결 항목부터 시작해줘." 이 한 줄이, 매주 월요일 30분짜리 "어디까지 했더라" 를 0분으로 만듭니다.
CLAUDE.md가 프로젝트의 첫 페이지라면, progress.md는 오늘과 내일을 잇는 다리입니다. 한쪽이 고정된 규칙이라면, 다른 쪽은 살아 움직이는 단기 기억입니다.
"Every finished artifact becomes context for the next session." — Eugene Yan
오늘 작성한 메모가, 내일 AI가 읽는 컨텍스트가 됩니다. 어제의 결과물을 내일의 입력으로 바꾸는 것 — 이게 컴파운딩의 진짜 의미입니다.
비개발자 사례 3개
사례 1 — 1인 빌더. 디자이너 출신 박 대표님은 Lovable로 만들던 SaaS를 주말 동안 손에서 놨습니다. 월요일 아침 다시 켰을 때, "내가 어디까지 했지?" 를 답하는 데만 30분이 걸렸습니다. 코드는 폴더에 다 있었지만, 왜 그렇게 짰는지는 본인 머릿속에서도 흐릿했습니다.
사례 2 — PM. 회의록 자동 요약 워크플로를 만들던 김 PM님. 금요일에 "마스킹 규칙은 이렇게 가자" 라고 결정했는데, 월요일에 AI가 그 결정의 근거를 모르고 다른 방식을 제안했습니다. 결정은 또 처음부터 다시 내려졌습니다.
사례 3 — 마케터. 블로그 자동 발행 루틴을 만들던 이 매니저님. 사흘 전 "뉴스레터 톤 가이드 한 번 더 검토 필요" 라고 미해결로 남긴 항목을, 다음 주에 까맣게 잊고 같은 검토를 두 번 했습니다.
세 분 모두 일은 했습니다. 다만, 어제의 자기 자신과 연결되어 있지 않았을 뿐입니다.
progress.md의 5개 칸
루틴팩에 들어 있는 실제 5개 칸입니다. 각 칸이 왜 이 자리에 있는지 한 줄씩 붙였습니다.
| # | 칸 이름 | 왜 이 자리에 있는가 |
|---|---|---|
| 1 | 오늘 한 일 (3줄) | 내일의 AI가 어디까지 갔는지 한눈에 알게 한다 |
| 2 | 막힌 곳 (3줄) | 같은 자리에서 또 막히지 않게, 어제의 시도를 남긴다 |
| 3 | 내일 가장 먼저 할 일 (1줄) | 내일 아침의 첫 한 줄을 미리 박아둔다 |
| 4 | 사람 결정이 필요한 항목 (3줄) | AI 혼자 결정하면 안 되는 일을 분리한다 |
| 5 | 다음 세션 첫 명령 (코드블록 한 줄) | 내일의 첫 30초를 복붙 한 번으로 끝낸다 |
미니 예시는 이렇게 생겼습니다.
## 2026-05-19 (월)
### 오늘 한 일
- Stripe 웹훅 서명 검증 로직 추가, 테스트 카드 3개 통과
- /server/webhooks/stripe.ts 신규 작성
- 환불 이벤트는 아직 미연결
### 막힌 곳
- 환불 이벤트가 두 번 수신됨. 원인: 멱등성 키 미설정 추정
### 내일 가장 먼저 할 일
- Stripe 멱등성 키 적용 후 환불 이벤트 중복 테스트
### 사람 결정이 필요한 항목
- 환불 정책: 부분 환불 허용 여부 (대표님 확인 필요)
### 다음 세션 첫 명령
`progress.md 읽고 어제 막힌 환불 멱등성 이슈부터 시작해줘`
5칸을 다 채우는 데 5분이면 충분합니다.
메모를 안 남기면 일어나는 5가지
- 같은 질문을 매주 월요일 반복합니다. "우리 결제는 Stripe 테스트 모드였지?"
- 어제의 미해결 항목이 영구 미해결로 누적됩니다. 사흘만 지나도 본인이 잊습니다.
- 결정의 근거가 사라져, 사람도 AI도 같은 결정을 두 번 내립니다.
feature_list.json의 state가 거짓말로 변합니다. "done" 인데 실제로는 환불 흐름이 안 됩니다.- 30일 뒤, "이 프로젝트는 뭐였더라?" 를 자기 자신에게 묻게 됩니다.
오늘의 5분 액션
이 글을 닫기 전에, 5분만 손을 움직여 보세요.
- 지금 진행 중인 프로젝트 폴더에
progress.md파일 1개를 만듭니다. - 위 5개 칸을 빈 채로 한 번 박아둡니다. 헤더만 깔아두는 겁니다.
- 오늘 세션이 끝날 때, 5칸만 채우고 닫습니다. 길게 쓰지 마세요. 한 줄이면 충분합니다.
- 마지막 칸 다음 세션 첫 명령에 이 한 줄을 박아둡니다.
progress.md 읽고 어제 미해결 항목부터 시작해줘 - 내일 아침, 새 세션의 첫 줄에 그대로 복붙합니다.
자가 점검 5문항
- ☐ 어제 AI와 어디까지 했는지 한 줄로 적을 수 있나요?
- ☐ 같은 질문을 한 주 안에 두 번 이상 한 적이 있나요?
- ☐ 미해결 항목이 어디에 적혀 있나요? (채팅창은 답이 아닙니다)
- ☐ 다음 세션의 첫 명령이 준비돼 있나요?
- ☐
progress.md가 매일 업데이트되나요?
세 개 이상 비어 있다면, 오늘 5분 액션이 정확히 당신을 위한 과제입니다.
마무리, 그리고 다음 챕터
다시 한 번.
AI는 어제 한 일을 잊습니다. progress.md가 내일의 AI에게 어제를 전해줍니다.
메모가 어제와 오늘을 잇는다면, 다음 챕터는 오늘 새로운 세션을 제대로 시작하는 법입니다. 챕터 06 — 시작 전에 5분, AI에게 우리 프로젝트 브리핑. CLAUDE.md와 progress.md를 가지고, 새 세션의 첫 5분을 어떻게 설계해야 하루가 다른지 같이 만들어 보겠습니다.
참고
- Eugene Yan, "How to Work and Compound with AI", eugeneyan.com/writing/working-with-ai/
- 원본 강의: walkinglabs.github.io/learn-harness-engineering/ko/ 강의 05
루틴팩 v1 — 오늘 액션을 위한 5종 템플릿
CLAUDE.md · feature_list.json · progress.md · intent_sheet.md · session-end-checklist.md
무료로 받기