새 세션에서도 어제의 일을 잃지 않는 법
이전 작업 기록을 건네주었는데도 AI는 내가 다음에 무엇을 해야 하는지부터 말하지 않았다. 작업을 이어가려면 지난 대화의 내용뿐 아니라 우리가 어떤 순서로 일해왔는지도 다시 확인해야 했다.

1월 26일, Codex에서 새로운 대화를 시작했다.
우리는 PDF에서 필요한 정보를 꺼내 사용할 수 있는 데이터로 바꾸는 서비스를 만들고 있었다. 나는 개발자가 아니지만 AI의 도움을 받아 백엔드를 구현하고 있었다. 며칠 동안 사용자 기능과 이용 기록, 로그인 보안 같은 부분을 하나씩 정리하고 있었고, 작업을 시작할 때마다 이전 상태를 다시 확인해야 했다.
새 대화에 내가 먼저 건넨 것은 설명이 아니라 파일이었다. 1월 23일에 작업한 내용이 담긴 기록이었다.
“이건 이전 세션에서 당신과 작업했던 내용입니다. 이제부터 무엇을 하면 될지 한번 확인해주기 바랍니다.”
AI는 처음에 파일이 현재 작업 폴더 밖에 있어서 읽을 수 없다고 답했다. 프로젝트 폴더로 복사하거나 내용을 붙여 넣어달라는 안내였다. 나는 파일을 복사했다.
이제 지난 작업을 확인하고 다음 일을 알려줄 것이라고 생각했다. 그런데 돌아온 답변은 예상과 달랐다.
서버가 어떤 파일로 구성되어 있는지, 데이터가 어떤 곳에 저장되는지, 회원과 결제 기능이 어떻게 나뉘어 있는지 설명이 이어졌다. 그것도 처음에는 영어였다. 프로젝트 구조를 알아보는 데는 쓸모 있는 내용이었지만, 내가 요청한 답은 아니었다.
한국어로 설명해 달라고 한 뒤에도 상황은 크게 달라지지 않았다. AI는 데이터 구조를 더 자세히 설명해 줄 수 있다며 어느 부분을 볼지 골라달라고 했다.
나는 다시 물었다.
“자세히 설명이 아니라 이제부터 내가 지금 프로젝트에서 진행해야 하는 것이 무엇인지 내가 처음에 묻지 않았나요?”
이전 기록을 읽는 일과 지금 필요한 답을 하는 일은 달랐다.

파일에는 우리가 무엇을 만들었는지 적혀 있었다. 하지만 그 사실만으로는 어디까지 끝냈고, 지금 무엇부터 해야 하는지, 또 서로 어떤 방식으로 작업해왔는지까지 제대로 이어지지 않았다.
AI는 그제야 남은 작업을 우선순위로 정리했다. 오래된 시스템 기록을 자동으로 지우는 기능과 중요한 오류를 알리는 기능, 이후의 데이터 구조 관련 작업과 사용 기록 보완, 결제 관련 작업이 차례로 제시됐다.
다음 할 일의 목록이 나온 것은 맞았다. 그런데 목록을 받는 것만으로 바로 작업을 시작할 수는 없었다.
나는 우리가 한 번에 한 단계씩 진행해왔다는 사실을 AI가 알고 있는지 다시 확인했다. 그리고 그 흐름을 먼저 설명하라고 했다. 무엇을 구현할지 결정하기 전에, 이전 대화에서 합의했던 일하는 방식을 확인하고 싶었다.
AI가 설명한 순서에는 설계와 문서, 코드 작성이 들어 있었다. 여기에서도 다시 고쳐야 할 부분이 보였다.
“당신은 코드를 주는 것이 아닙니다. 아닌가요? 내용을 다시 한번 살펴보시겠습니까?”
우리는 코드를 AI가 바로 작성하는 방식으로 진행하지 않고 있었다. AI는 설계와 문서를 정리하고, 내가 구현한 결과를 검수하는 역할이었다. 새로운 대화를 시작하니 그 역할 구분도 다시 말해야 했다.
AI는 그제야 코드 작성이 아니라 설계·문서·검수를 맡겠다고 정정했다.
그다음에야 실제 작업으로 들어갈 수 있었다.
남아 있던 시스템 기록 관리 작업 중 먼저 할 일은 오래된 로그를 자동으로 정리하는 기능이었다. AI에게 순서를 물었고, 이유를 듣고 그 작업부터 시작하기로 했다.
이때도 요청은 같았다. 개발자가 아닌 내가 이해할 수 있도록 충분히 설명해 달라는 것이었다.
AI는 왜 오래된 기록을 지워야 하는지, 사용자 화면에서 무엇이 달라지는지, 서버에서는 어떤 일이 일어나는지를 나눠 설명했다. 그리고 세 가지 운영 기준을 결정해 달라고 했다.
나는 기록을 30일 동안 보관하고, 매일 새벽 4시에 정리하며, 기록이 생성된 날짜를 기준으로 삭제한다고 정했다. AI에게는 그 기준을 문서에 반영할 내용을 제공하고, 이후 지시를 기다리라고 했다.
여기서 중요한 것은 오래된 기록을 지우는 기능 자체만은 아니었다.
새 대화에 들어온 AI에게 기존 작업 파일을 건넸는데도, 나는 여러 번 질문을 바로잡아야 했다. 무엇을 알고 있는지와 무엇을 해야 하는지를 구분해 설명해야 했고, 코드 작성까지 맡기려는 흐름도 원래 정한 역할로 돌려놓아야 했다.
이전 대화가 길어지면 새 세션으로 옮겨갈 수밖에 없다. 그렇다고 매번 처음부터 프로젝트를 설명할 수는 없다. 그래서 지난 작업의 내용을 남기는 일이 필요했다.
하지만 이번에는 그 기록만으로 충분하지 않다는 것도 확인했다.
작업 기록에는 완료한 기능뿐 아니라 다음에 할 일, 한 번에 한 단계씩 진행한다는 약속, 누가 코드를 고치고 누가 검수하는지도 남아 있어야 한다. 그래야 새로운 AI에게 자료를 읽혀도 엉뚱한 설명부터 다시 듣는 일을 줄일 수 있다.
기록을 넘겨주는 목적은 AI가 프로젝트를 길게 설명하게 만드는 데 있지 않다. 중간에 끊겼던 일을, 내가 이해하고 결정했던 지점에서 다시 시작하기 위해서다.
지금도 새로운 세션을 열면 먼저 확인할 것이 있다. 지난번에 무엇을 끝냈는지, 아직 남아 있는 일이 무엇인지, 그리고 그다음 작업에서 AI와 내가 각각 무슨 역할을 하는지.
세션이 바뀌었다고 일의 순서까지 바뀌어서는 안 된다.
그날의 성장 노트
남은 생각 · 지난 대화 내용을 파일로 남겨도 AI가 다음 작업과 역할 분담을 바로 이해하지는 못했다. 작업 기록이 실제로 이어질 수 있도록 어떤 정보를 함께 남겨야 하는지 더 살펴볼 필요가 있다.
그때의 기준 · 새 세션에서는 먼저 완료한 일과 다음 할 일을 확인한다. 한 번에 한 단계씩 진행하고, AI는 설계·문서·검수를 맡으며 코드 수정과 작업 지시는 내가 결정하는 방식을 유지한다.
글을 읽고 함께 이야기하고 싶은 일이 생겼다면.
결을 같이 하기