Codex fork 세션 ID를 못 찾을 때, 전체 UUID와 picker 구분하기

Codex fork 세션 ID를 짧게 복사해 넣고 No saved session found가 나오면 계정이나 저장소부터 고치지 마세요. 현재 Codex CLI 0.156.1 도움말은 fork의 세션 인자를 UUID로 설명합니다. 확인된 전체 UUID를 쓰거나, 전체 값을 모르면 codex fork를 인자 없이 열어 picker에서 원본 대화를 고릅니다.

원본 Codex 대화를 전체 세션 UUID 또는 picker로 선택해 별도 분기 대화로 나누는 개념도

먼저 fork와 resume의 입력 범위를 나눕니다

현재 설치본의 도움말은 fork에 UUID를, resume에 UUID 또는 이름을 받는다고 다르게 설명합니다.

명령 도움말의 세션 인자 안전한 선택
codex fork conversation/session UUID 전체 UUID 또는 picker
codex resume UUID 또는 session name UUID와 이름을 구분해 사용

resume에서 쓴 이름이나 화면에 보이는 짧은 문자열이 fork에서도 자동으로 찾아질 것이라고 가정하지 않습니다. 공개 기능 요청은 불완전 ID의 후보 제안·자동완성을 요청한 것이며, 현재 지원을 보장하는 문서가 아닙니다.

OpenAI 공식 CLI 문서도 codex resume를 저장된 대화로 돌아가는 기능으로 안내하지만, 짧은 UUID prefix를 fork가 받아들인다고 약속하지는 않습니다. 따라서 이 글은 현재 설치본의 --help와 직접 재현 범위 안에서만 입력을 나눕니다.

전체 UUID를 모르면 picker를 엽니다

전체 UUID를 모르면 인자 없는 picker에서 저장된 원본 대화를 선택합니다. 가장 안전한 기본 입력은 다음과 같습니다.

codex fork

목록에서 복제할 원본 대화를 선택합니다. 이번 재현은 picker의 항목 표시와 작업 폴더 필터를 확인하지 않았으므로, 화면에 표시되지 않은 정보가 있다고 가정하지 않습니다. 가장 최근 대화가 복제 대상임이 확실할 때만 다음 명령을 고려합니다.

codex fork --last

여러 프로젝트를 오갔다면 --last가 원하는 대화라는 전제를 두지 말고 picker에서 직접 고릅니다. 세션 기록 파일을 편집하거나 삭제하는 조치는 필요하지 않습니다.

전체 UUID로 성공했는지 확인합니다

성공 기준은 원본 문맥을 이어받으면서 원본과 다른 새 분기 UUID가 생기는 것입니다. 전체 UUID를 알고 있다면 다음 형태로 실행합니다.

codex fork 00000000-0000-0000-0000-000000000000

위 값은 형식 예시이므로 실제 저장된 원본 UUID로 바꿔야 합니다. 성공하면 TUI에서 Thread forked from 원본-UUID를 확인하고, 종료 안내에는 원본과 다른 새 분기 UUID가 표시됩니다.

2026년 9월 24일 macOS arm64, Codex CLI 0.156.1의 비민감 테스트에서는 원본 전체 UUID로 fork가 성공했습니다. 분기 화면은 원본 답 FORK_SOURCE_OK를 이어받았고 새 답 FORK_CHILD_OK를 만들었습니다. 원본과 분기 UUID도 서로 달랐습니다.

반대로 짧은 가짜 ID 12314r124는 다음 오류로 끝났습니다.

ERROR: No saved session found with ID 12314r124.

이 대조는 전체 UUID 성공과 일치하지 않는 짧은 문자열 실패를 보여 줍니다. 모든 UUID prefix가 영구히 지원되지 않는다고 일반화하지는 않습니다.

결과별 다음 행동

오류 문구보다 입력과 성공 조건을 먼저 나누면 다음 행동이 하나로 좁혀집니다.

  • 전체 UUID로 성공: 원본과 다른 분기 UUID가 생겼는지 확인하고 분기 대화에서 작업합니다.
  • 전체 UUID를 모름: 인자 없는 codex fork로 picker를 엽니다.
  • 가장 최근 세션이 확실함: codex fork --last를 제한적으로 사용합니다.
  • 전체 UUID도 찾지 못함: 현재 작업 폴더와 세션이 실제로 저장됐는지 확인합니다. 임의 prefix를 반복하지 않습니다.

다른 터미널이 원본 대화를 잡고 있어 재개부터 막힌다면 Codex Ctrl+Z 뒤 세션 잠금을 확인하는 순서로 잠금 문제를 먼저 분리하세요. 분기보다 resume 뒤 지침 갱신 여부가 문제라면 Codex resume에서 AGENTS.md 변경 반영을 확인하는 방법이 담당 범위입니다.

검색 결과에서 비어 있던 답

검색 상단에는 다른 CODEX_HOME 사례와 일반 명령 모음이 섞였고, S65와 같은 판정 순서는 확인하지 못했습니다. 2026년 9월 24일 Google에서 "No saved session found" "codex fork"를 검색했을 때 상단 일반 결과는 다른 도구가 CODEX_HOME을 잃어 세션을 못 찾는 사례였습니다. 이는 실제 전체 UUID가 맞아도 저장 위치가 달라 실패할 수 있다는 인접 원인입니다. 반면 짧은 ID와 전체 UUID, 인자 없는 picker를 한 순서로 나눈 답은 관찰한 상단 결과에서 확인하지 못했습니다.

Naver의 Codex fork 세션 ID 결과에는 Codex 명령어 모음, 일반 CLI 참조, Claude Code 세션 문서가 섞였습니다. 정확한 오류를 현재 Codex CLI 입력 범위와 직접 대조한 한국어 답은 관찰 범위에서 찾지 못했습니다. 이 결과는 월간 검색량이나 수요 0을 뜻하지 않습니다.

자주 묻는 질문

No saved session found면 전체 UUID만 쓰면 항상 해결되나요?

아닙니다. 이번 재현에서는 방금 만든 원본의 전체 UUID가 성공했습니다. Google 상단의 공개 사례처럼 다른 실행기가 CODEX_HOME을 바꿨다면 전체 UUID여도 저장 위치가 달라 실패할 수 있습니다. 먼저 현재 Codex 환경의 picker에 원본 대화가 보이는지 확인하세요.

codex fork --last가 가장 안전한가요?

최근 대화가 정확히 원본일 때만 짧습니다. 여러 프로젝트를 오갔다면 인자 없는 picker에서 원본을 직접 선택하세요. picker의 작업 폴더 필터 동작은 이번 검증 범위 밖입니다.

정리

짧은 ID 실패를 계정 손상으로 확대하지 말고 입력 범위부터 바로잡습니다.

  1. fork와 resume의 세션 인자 약속을 섞지 않습니다.
  2. fork에는 확인된 전체 UUID를 쓰거나 picker를 엽니다.
  3. 성공 시 원본을 이어받은 별도 분기 UUID가 생겼는지 확인합니다.
  4. prefix 지원 길이와 picker 세부 필터는 확인하지 않은 범위로 남깁니다.

확인 환경: macOS arm64, Codex CLI 0.156.1, 비민감 임시 폴더, 2026-09-24 KST.

검증 기준

  • 마지막 업데이트일: 2026-09-24
  • 확인 환경: macOS arm64, Codex CLI 0.156.1, 비민감 임시 작업 폴더의 원본·분기 세션
  • 주요 근거: OpenAI Codex CLI 공식 문서, 짧은 ID 후보 제안 공개 이슈
  • 직접 확인: direct-reproduction.md의 전체 UUID 성공·짧은 가짜 ID 실패 대조
  • 미확인: 모든 UUID prefix의 지원 길이, picker 내부 필터 규칙, 다른 CODEX_HOME에 저장된 실제 세션의 복구 결과

직접 만든 실습 자료와 새 도구 소식

AI 도구로 만든 실습 자료, 달라진 기능과 강의 소식을 준비하고 있습니다. 발송을 시작하면 안내해 드려요. 먼저 확인 메일에서 본인 이메일을 확인해 주세요.

신청하기 전에 첫 소식 미리보기에서 내용과 자료를 확인해 보세요.

질문이나 의견을 남겨주세요

이름을 입력하지 않아도 돼요. ‘깜짝 놀란 올빼미’ 같은 별명이 자동으로 붙어요.