사람들이 ChatGPT 채팅을 Codex로 옮기는 이유
이유는 실용적입니다. 채팅은 설계를 설명할 수 있습니다. Codex는 에이전트가 저장소에서 작업하고, 테스트를 실행하며, 변경 사항을 적용하는 곳입니다. OpenAI의 데스크톱 앱 두 모드 비교에 따르면 다음과 같습니다: Codex는 "diff 및 리뷰 보기를 포함한 개발자 세부 정보를 볼 수 있게" 해주는 반면, 동일한 앱 내의 ChatGPT는 "비기술적 언어와 완성된 출력물"을 선호합니다.
따라서 이동은 자연스럽습니다. Chat에서 충분히 생각하고 Codex에서 실행하는 것이죠. 문제는 생각은 한 곳에서 이루어졌고 작업은 다른 곳에서 일어난다는 마찰입니다. 인수인계 계획이 없다면 이미 내린 결정들을 다시 설명해야 하는 상황에 처하게 됩니다.
ChatGPT 채팅이 담고 있는 것
코딩 작업으로 이어진 채팅은 네 가지 종류의 컨텍스트를 포함할 수 있습니다:
- 결정 사항. 무엇을 왜 선택했는지, 그리고 무엇을 배제했는지.
- 제약 조건. 버전, 성능 제한, 팀 규칙, 변경해서는 안 되는 사항들.
- 스니펫. 직접 붙여넣었거나 ChatGPT가 작성한 코드, 에러 메시지, 예시들.
- ChatGPT memory의 배경 지식. 저장된 기억이나 채팅 기록으로 인해 ChatGPT가 적용한 사용자 선호도.
이 중 일부만이 채팅 자체에 존재합니다. 마지막 항목은 별도의 시스템인 ChatGPT memory에 저장됩니다.
OpenAI의 경로: Codex의 New chat에서 채팅 열기
ChatGPT 데스크톱 앱에서 Codex는 자체 사이드바를 가집니다. OpenAI의 비교표에 따르면 Codex는 "Codex 채팅 및 개발 프로젝트"에 집중하는 반면, ChatGPT는 "웹 및 모바일의 Chat에서 시작된 채팅과 ChatGPT Work 채팅"을 표시합니다.
연결 고리는 New chat에 있습니다. OpenAI의 프로젝트 가이드에 따르면, 거기서 기존 ChatGPT 채팅을 열어 "Codex 채팅에 추가"할 수 있습니다. 동일한 표에서는 Codex의 Quick chat을 해당 옵션이 제공되는 경우 "웹 및 모바일의 ChatGPT 채팅을 Codex에서 액세스"하는 방법으로 설명합니다.
이 경로에 대해 유의해야 할 두 가지 사항이 있습니다:
데스크톱 앱 전용입니다. CLI 및 IDE 확장은 디렉토리 기반으로 작동합니다. OpenAI는 "Codex CLI는 실행한 디렉토리를 채팅의 프로젝트로 취급한다"고 하며, "CLI는 ChatGPT Projects 뷰를 노출하지 않는다"고 명시합니다. 이러한 환경에서는 채팅 내용을 파일 요약본과 같은 다른 방식으로 Codex에 전달해야 합니다.
채팅 추가는 채팅별로 이루어집니다. OpenAI는 이를 한 번에 하나의 채팅으로 설명합니다. 만약 열 개의 채팅이 현재 작업으로 이어졌다면, 유용한 내용은 열 군데에 흩어져 있는 것이며, 향후 모든 Codex 채팅마다 이를 다시 추가해야 합니다.
특정 채팅을 찾고 있다면, 누락된 Codex 채팅 기록 찾기 가이드에서 각 채팅 유형이 어떤 목록에 나타나는지 확인하세요.
Memory는 하나가 아닌 두 개의 저장소입니다
OpenAI의 memory 가이드는 다음과 같은 구분으로 시작합니다: "ChatGPT 웹은 ChatGPT memory를 사용하는 반면, 로컬 Codex 클라이언트는 별도의 로컬 memory 저장소와 컨트롤을 사용합니다."
따라서 ChatGPT가 채팅을 통해 당신에 대해 배운 모든 것은 ChatGPT memory에 남습니다. Codex는 자체적인 로컬 memory를 구축하며, 이는 사용자가 활성화했을 때만 작동합니다: "로컬 Codex memory는 기본적으로 꺼져 있습니다." 활성화되면 "Codex는 적격한 이전 채팅의 유용한 컨텍스트를 로컬 memory 파일로 변환할 수 있으며", OpenAI는 Codex가 "활성 상태이거나 수명이 짧은 세션은 건너뛰고" 백그라운드에서 memory를 업데이트한다고 언급합니다.
해당 파일이 저장되는 위치는 Codex home에 따라 다릅니다. OpenAI는 새로운 home에서 "CLI는 기본적으로 $CODEX_HOME/memories_v2/를 사용한다"고 말합니다. Codex memories v2 가이드에서 두 디렉토리에 대해 다룹니다.
OpenAI는 또한 memory의 용도를 명확히 합니다: "memory를 항상 적용되어야 하는 규칙의 유일한 소스가 아니라, 도움이 되는 회상 레이어로 취급하십시오." 규칙은 AGENTS.md에 있어야 합니다.
Codex의 각 요소가 속하는 위치
규칙 및 컨벤션은 AGENTS.md로
"Codex는 작업을 수행하기 전에 AGENTS.md 파일을 읽습니다." OpenAI는 체인 구조를 설명합니다: Codex home의 글로벌 파일, 프로젝트 루트부터 작업 디렉토리까지의 파일들이 해당 순서대로 연결됩니다. 어떤 라이브러리를 사용할지 또는 어떤 인터페이스를 안정적으로 유지해야 할지와 같은 ChatGPT 채팅의 제약 조건은 여기에 속합니다. 그러면 저장소의 모든 Codex 채팅이 이 조건들과 함께 시작됩니다.
OpenAI의 프로젝트 가이드는 로컬 작업에 대해서도 동일하게 조언합니다: "지속적인 프로젝트 지침은 AGENTS.md나 체크인된 문서에 보관하여 향후 채팅에서도 사용할 수 있도록 하십시오." 만약 Codex가 추가한 규칙을 건너뛰는 것 같다면, Codex의 AGENTS.md 규칙 건너뛰기 방지 가이드에서 크기 제한과 우선순위를 확인하세요.
결정 사항은 체크인된 문서로
선택의 배경이 되는 논리는 규칙보다 길 수 있습니다. AGENTS.md에서 링크된 저장소 내의 짧은 설계 노트는 모든 프롬프트를 길게 만들지 않으면서도 논리적 근거를 유지할 수 있게 해줍니다.
프로젝트 컨텍스트는 별도의 이동이 필요함
채팅이 ChatGPT 프로젝트 내에 있었다면, 컨텍스트의 일부는 채팅이 아닌 프로젝트에서 온 것입니다. OpenAI는 "ChatGPT 프로젝트는 채팅에 업로드된 파일, 프로젝트 지침 및 연결된 소스에 대한 액세스 권한을 부여한다"고 말합니다. Codex 채팅에 채팅을 추가하면 대화 내용은 가져오지만, 프로젝트의 지침과 파일은 별도의 단계가 필요합니다.
Codex에서 프로젝트에 해당하는 것은 폴더입니다. OpenAI는 "로컬 프로젝트는 소스 파일 모음이나 코드베이스와 같이 컴퓨터의 하나 이상의 폴더에 대한 액세스 권한을 채팅에 부여한다"고 설명합니다. 프로젝트 지침을 AGENTS.md에 복사하고, 채팅이 의존했던 참조 파일들을 저장소나 Codex 프로젝트에 연결된 폴더에 넣으세요. 또한 OpenAI는 채팅을 고정(pinning)하는 것이 "컨텍스트를 추가하거나 ChatGPT가 액세스할 수 있는 내용을 변경하지 않는다"고 명시했으므로, 고정된 채팅이 위 단계들을 대신할 수는 없습니다.
스니펫은 작업으로
채팅의 에러 메시지, 예시, 코드는 작업 컨텍스트입니다. 작업을 시작하는 Codex 채팅에 직접 붙여넣거나, 데스크톱 앱에서 ChatGPT 채팅 자체를 추가하세요.
선호도는 AGENTS.md 또는 Codex memories로
테스트 구성 방식과 같이 ChatGPT가 memory를 통해 파악한 개인적 선호도는 글로벌 AGENTS.md에 넣을 수 있습니다. Codex가 시간이 지나면서 이를 학습하기를 원한다면 Codex memories를 활성화하되, memory 파일은 생성된 상태(generated state)라는 점을 명심하세요. OpenAI는 "이 파일을 직접 수동으로 편집하는 것을 주요 제어 수단으로 삼지 말 것"을 권고합니다.
가져오기(Importing)와 다른 점
Codex에는 가져오기 흐름이 있지만, 그 소스는 다른 에이전트들입니다. OpenAI는 "데스크톱 앱은 Claude Code, Claude Cowork, 또는 Cursor에서 가져올 수 있습니다. Codex CLI는 Claude Code 또는 Cursor에서 가져올 수 있습니다"라고 명시합니다. ChatGPT 채팅은 위에서 설명한 대로 New chat을 통해 Codex에 도달합니다.
ChatGPT Work도 관련은 있지만 동일하지는 않습니다. OpenAI의 프로젝트 가이드는 "Work 대화 기록은 Codex 기록과 별개로 유지된다"고 언급합니다. ChatGPT Work 모드 가이드에서 Chat, Work, Codex가 공유하는 memory, 프로젝트, 기록이 무엇인지 설명합니다.
사람들이 먼저 시도해보는 것들
전체 채팅을 Codex에 붙여넣기. 한 번의 작업에는 효과가 있지만, 다음 Codex 채팅은 그 내용 없이 시작됩니다. 규칙을 AGENTS.md로 옮기세요.
ChatGPT memory가 Codex까지 따라올 것이라 기대하기. OpenAI의 설명에 따르면 이들은 별개의 저장소입니다.
Codex 사이드바에서 ChatGPT 채팅 찾기. OpenAI는 그곳에 나타나지 않는다고 말합니다. New chat에서 여세요.
규칙을 위해 Codex memories에 의존하기. OpenAI는 memory를 항상 적용되어야 하는 규칙의 유일한 소스가 아닌 회상 레이어라고 부릅니다.
가져오기 흐름 사용하기. 이는 Claude Code, Claude Cowork, Cursor에서의 설정을 가져오는 용도입니다.
수동 마이그레이션
1단계: 계속할 가치가 있는 채팅 목록 작성
프로젝트에 관한 ChatGPT 채팅을 훑어보고 Codex에 필요한 결정 사항이나 제약 조건이 포함된 채팅을 고르세요. 각 채팅에 대해 결정된 사항, 이유, 아직 해결되지 않은 사항을 두세 줄로 작성합니다.
2단계: 규칙을 AGENTS.md로 변환
제약 조건을 저장소의 AGENTS.md에 추가하거나, 모든 프로젝트에 적용된다면 글로벌 AGENTS.md에 추가하세요. 더 긴 논리적 근거는 설계 노트에 작성하고 링크를 거세요. 저장소에서 Codex를 시작하고 현재 지침을 요약해 달라고 요청하여 파일이 제대로 로드되는지 확인합니다.
3단계: 채팅을 첨부하여 작업 시작
데스크톱 앱의 New chat에서 Codex 채팅을 시작하고, 해당 작업의 세부 정보가 담긴 ChatGPT 채팅을 추가합니다. CLI나 IDE에서는 1단계에서 작성한 스니펫과 요약본을 첫 번째 메시지에 붙여넣으세요. 더 긴 작업의 경우, Codex 채팅 내보내기 가이드에서 작업 후 사본을 보관하는 방법을 확인하세요.
더 나은 방법: 채팅의 결정 사항을 직접 제어하는 하나의 목록으로 관리하기
수동 마이그레이션은 ChatGPT 채팅의 가치가 어디에 있는지 보여줍니다. 그것은 여러 채팅에 흩어져 있는 몇 가지 결정과 제약 조건에 있습니다. AGENTS.md는 저장소를 커버합니다. 하지만 특정 접근 방식을 선택한 이유나 팀과 합의한 내용 등 나머지는 여전히 흩어져 있습니다.
MemoryLake는 해당 목록을 직접 관리하는 한 곳에 보관하고, ChatGPT, Claude Code, Codex 등 연결된 어시스턴트들이 사용할 수 있게 해주는 memory 레이어입니다.
사용자는 자신의 언어로 직접 항목을 작성합니다. ChatGPT 채팅, ChatGPT memory, Codex 채팅, Codex memories, AGENTS.md 파일 또는 어떤 벤더의 저장소에서도 내용을 읽거나 쓰거나 삭제하지 않습니다. Codex의 New chat과 ChatGPT memory는 OpenAI가 설명한 방식 그대로 계속 작동합니다.
1단계: API 키 생성
로그인 후 대시보드에서 키를 생성합니다. 이 키는 MemoryLake 워크스페이스에 속하며 OpenAI 계정과는 별개입니다.

2단계: 첫 번째 memory 업로드
수동 마이그레이션의 1단계에서 작성한 요약(결정 사항, 이유, 미결 질문)부터 시작하세요. 항목당 한 점씩, 날짜를 기입합니다.

3단계: AI 및 에이전트 연결
ChatGPT와 Codex, 그리고 사용하는 다른 어시스턴트들을 연결하세요. Chat에서 생각을 정리하든 Codex에서 작업을 수행하든 동일한 항목을 사용할 수 있습니다.

실제적인 변화
첫 번째 차이점은 첫 번째 메시지가 짧아진다는 것입니다. Codex는 각 채팅을 AGENTS.md와 함께 시작하며, 그 뒤에 숨겨진 결정 사항들은 조회 한 번으로 확인할 수 있으므로 모든 작업마다 동일한 배경 지식을 붙여넣을 필요가 없습니다.
두 번째는 근거를 잃어버리는 일이 줄어든다는 것입니다. 무언가를 결정했던 채팅은 시야에서 사라질 수 있지만, 직접 작성한 항목은 지정한 위치에 그대로 남아 있습니다.
세 번째는 다시 전환할 때 작업이 줄어든다는 것입니다. 다음 질문이 다시 설계 질문일 때, ChatGPT는 Codex가 가졌던 것과 동일한 항목들을 보유하게 됩니다.
ChatGPT 채팅을 Codex로 옮기기 위한 모범 사례
대화록이 아닌 규칙을 옮기세요. 제약 조건은 AGENTS.md에 넣고 채팅은 참조용으로 보관하세요.
데스크톱 앱의 New chat을 활용하세요. 작업의 세부 정보가 포함된 ChatGPT 채팅을 추가하세요.
채팅을 마치기 전에 요약하세요. 채팅당 두세 줄의 요약이 전체 대화보다 옮기기 훨씬 쉽습니다.
Codex memories 사용 여부를 신중히 결정하세요. 기본적으로 꺼져 있으며 로컬에 저장됩니다.
ChatGPT memory와 Codex memory를 머릿속에서 분리하세요. 이들은 서로 다른 저장소입니다.
AGENTS.md가 로드되는지 확인하세요. Codex에게 현재 지침을 요약해 달라고 요청하세요.
memory 파일을 수동으로 편집하지 마세요. OpenAI는 이를 생성된 상태로 취급합니다.
결론
ChatGPT 채팅과 Codex 채팅은 서로 다른 목록에 존재하며, ChatGPT memory와 Codex memory는 서로 다른 저장소입니다. 데스크톱 앱에서는 New chat에서 기존 ChatGPT 채팅을 열어 Codex 채팅에 추가할 수 있으며, 이는 하나의 작업을 커버합니다. CLI와 IDE에서는 첫 번째 메시지나 파일을 통해 내용이 Codex에 전달되어야 합니다.
향후 모든 Codex 채팅이 알기를 원하는 내용에 대해 OpenAI는 AGENTS.md와 체크인된 문서를 권장합니다. 채팅에서 결정 사항을 추출하고, Codex가 읽는 위치에 규칙을 배치하며, 그 근거를 다시 찾을 수 있는 곳에 보관하십시오.