ChatGPT가 제품 요구사항을 잊어버리는 이유
현재 ChatGPT가 PRD를 처리하는 방식
PRD를 붙여넣거나 업로드하면, ChatGPT는 해당 대화의 컨텍스트 내에서 이를 읽고 훌륭하게 추론합니다. 하지만 대화가 끝나면 문서도 함께 사라집니다. 덜어낸 스코프, 나열했던 예외 케이스, "v1에서는 SSO를 구현하지 않는다"는 결정 등 모든 것이 그 세션 안에서만 존재했습니다. 다음 대화는 제품의 누적된 정의가 아니라, 여러분이 새로 붙여넣은 내용만 보게 됩니다.
기억이 유지되지 않는 기술적 이유
ChatGPT의 지속성(persistence) 기능은 살아있는 스펙을 담도록 설계되지 않았습니다. Memory는 "나는 PM이고, Gherkin 포맷으로 사용자 스토리를 작성해 줘"와 같은 짧은 사실과 선호도를 저장하는 데 유용하지만, 요구사항 문서는커녕 그 변경 이력을 담기에는 턱없이 부족합니다. Projects는 업로드된 파일을 보관할 수 있지만, 이는 영구적인 지식이 되기보다는 대화할 때마다 매번 다시 읽히는 방식이며, 스프린트마다 변하는 요구사항의 버전을 관리해 주지 못합니다. "이 제품이 무엇인지, 그리고 우리가 무엇을 만들지 않기로 결정했는지 기억하는" 레이어가 존재하지 않는 것입니다.
이로 인해 제품 팀이 치르는 비용
이미 결정된 스코프의 재논의: 모델은 이미 제외한 스코프를 제안하고, 여러분은 매 세션마다 왜 안 되는지 다시 설명해야 합니다. 산출물 간의 괴리: 화요일에 작성된 사용자 스토리가 목요일에 변경된 요구사항을 전제로 하고 있어도, 그 불일치를 잡아낼 수 있는 장치가 없습니다. 그리고 의사결정 배경(rationale)의 유실: 엔지니어링 팀에서 "왜 이 동작이 이렇게 정의되었나요?"라고 물었을 때, 그 논리가 담긴 대화방을 아무도 찾지 못해 결국 처음부터 다시 논쟁을 벌이게 됩니다.
ChatGPT의 기본 우회 방법 (그리고 그 한계)
Memory
작성 포맷, 프레임워크, 역할 등 고정된 선호도를 설정하는 데 유용합니다. 하지만 한계가 명확합니다. 스펙이 아닌 짧은 텍스트 항목만 저장할 수 있습니다. 요구사항을 '어떻게' 작성하는지는 가르칠 수 있어도, 요구사항이 '무엇인지'는 가르칠 수 없습니다.
Projects
제품 영역별로 프로젝트를 생성하면 관련 대화와 파일을 한곳에 모아둘 수 있어 정리에 큰 도움이 됩니다. 하지만 파일은 대화마다 다시 읽히는 정적 첨부파일일 뿐이며, 프로젝트 지식은 다른 프로젝트나 팀원에게 공유되지 않고, 요구사항의 변경 이력을 추적해 주지도 않습니다.
PRD 다시 붙여넣기
가장 기본적인 임시방편으로, 매 세션마다 현재 스펙을 다시 붙여넣는 방법이 있습니다. 작동은 하지만 매번 반복해야 하는 수동 작업의 번거로움이 따릅니다. 또한 실수로 오래된 버전을 붙여넣는 경우, 아예 붙여넣지 않는 것보다 더 나쁜 결과를 초래할 수 있습니다.
공통적인 장벽: 요구사항이 실제 제품이 빌드되는 곳과 단절된 채, 개인별, 앱별로 일회성 대화 속에 흩어져 존재한다는 점입니다. 이는 ChatGPT가 프로젝트 컨텍스트를 잊어버리는 이유와 동일한 근본적인 원인이며, 잊혀진 결정이 결국 버그로 배포되는 결과를 낳습니다.
해결책: ChatGPT에 지속적인 제품 메모리 부여하기
가장 확실한 접근법은 단일 대화 외부의 메모리 레이어에 스펙과 결정 사항을 보관하는 것입니다. MemoryLake는 PRD, 스코프 결정 사항, 예외 케이스를 한 번만 저장하면 이를 파싱하여 검색 가능하게 만들고, Git 스타일로 버전을 관리하여 요구사항의 이력을 추적할 수 있게 하며, 종단간 암호화(end-to-end encryption)를 통해 미공개 로드맵 상세 정보를 안전하게 보호합니다.
1단계: API 키 생성
MemoryLake에 로그인하여 키를 생성하고 첫 번째 요청을 보내세요. 약 30초 정도 소요됩니다.

2단계: 첫 번째 메모리 업로드
PRD, 사용자 리서치 요약본, 디자인 문서, API 규격서 등 매 스펙 세션마다 필요한 자료들을 업로드하세요. 문서, 이미지 및 기타 파일 모두 지원됩니다. 변동 사항은 텍스트 메모리("v1 스코프에서 SSO 제외 — 엔터프라이즈는 Q4로 연기", "알림은 시간 단위로 배치 처리, 비용 문제로 실시간 처리 제외 결정")로 기록하여 문서와 함께 결정 사항이 영구적으로 보존되도록 하세요.

3단계: AI 및 에이전트 연결
MemoryLake의 ChatGPT 연동 기능이나 API를 통해 ChatGPT를 연결하면, 모든 세션이 현재 스펙과 스코프 제외 대상을 이미 인지한 상태로 시작됩니다. 동일한 메모리를 MCP나 API를 통해 Claude, Codex, OpenClaw 및 기타 에이전트에서도 사용할 수 있으므로, PM 도구가 바라보는 요구사항과 코딩 에이전트가 바라보는 요구사항이 완벽히 일치하게 됩니다.

스펙을 재설명할 때 발생하는 실제 비용
재논의 비용
매 세션 전에 PRD를 다시 붙여넣고 제외된 스코프를 재설명하는 것은 실제 제품 고민에 써야 할 시간을 빼앗는 일입니다. 더 심각한 비용은 의사결정이 소리 없이 어긋나는 것입니다. 서로 다른 두 세션이 각기 다른 버전의 정보를 바탕으로 작업하고, 이를 검토 단계에 이르러서야 발견하게 되기 때문입니다.
다시 붙여넣는 대신 검색(Retrieval) 활용
지속성 레이어를 사용하면 매 세션마다 전체 문서를 다시 읽어들이는 대신, 필요한 시점에 현재 요구사항과 그 배경 논리를 불러옵니다. 스펙은 일관되게 유지되고, 결정 배경은 추적 가능해지며, 프롬프트는 가볍게 유지됩니다. MemoryLake의 Token Saving Calculator를 통해 사용량에 따른 절감 효과를 예측해 보세요.
제품 메모리 구축을 위한 모범 사례
만들지 않기로 결정한 사항 기록하기
제외된 스코프는 제품 개발 과정에서 가장 자주 다시 제안되는 항목입니다. "Y라는 이유로 v1에서는 X를 구현하지 않음"이라는 단 한 줄의 기록만으로도 매 세션마다 동일한 제안이 반복되는 것을 막을 수 있습니다.
요구사항을 덮어쓰지 말고 버전을 관리하기
요구사항이 변경되면 기존 내용을 그냥 덮어쓰지 말고 날짜와 함께 수정 사항을 추가하세요. 버전 이력이 있어야 과거 자료를 뒤지지 않고도 "우리가 6월에 합의한 내용이 무엇인가?"에 바로 답할 수 있습니다.
제품 영역별로 스코프 나누기
제품 라인이나 영역별로 메모리 범위를 나누어 관리하면 검색 결과의 연관성을 높이고, 한 영역의 제약 조건이 다른 영역의 스펙에 잘못 반영되는 것을 방지할 수 있습니다.
결론
PRD는 살아있는 문서이지만, ChatGPT는 이를 단일 세션용 첨부파일로 취급합니다. 눈앞에 붙여넣은 내용에는 기민하게 반응하지만, 제품에 대해 결정된 다른 모든 사항에 대해서는 백지상태가 됩니다. ChatGPT의 Memory와 Projects 기능은 작업을 정리하는 데는 도움이 되지만 스펙을 온전히 보존하지는 못합니다. 요구사항과 그 결정 배경을 지속적인 메모리로 옮기세요. 그러면 모든 세션이 현재의 진실에서 시작되고, 제외된 스코프는 제외된 상태로 유지되며, 엔지니어링 팀은 특정 동작이 왜 그렇게 정의되었는지 추적할 수 있습니다. 이제 제품 스펙을 매번 다시 설명하는 비효율을 끝내세요.