Codex가 background server 업데이트를 안내했는데 unsupported나 제어 소켓 연결 실패가 나오면, 재설치나 프로세스 강제 종료부터 하지 마세요. 먼저 현재 CLI와 codex app-server daemon이 관리하는 서버가 실제로 연결되어 있는지 확인해야 합니다. ChatGPT 앱이 따로 띄운 app-server 프로세스는 같은 이름처럼 보여도 CLI의 관리 daemon과 다를 수 있습니다.

목차
1분 확인 순서
터미널을 열고 아래 세 명령을 한 줄씩 실행합니다.
codex --version
command -v codex
codex app-server daemon version
기대 결과는 세 가지입니다.
- 첫 줄은 지금 실행한 CLI 버전을 보여줍니다.
- 둘째 줄은 Codex가 npm, Homebrew 경로, standalone 패키지 중 어디에서 실행됐는지 구분할 단서입니다.
- 셋째 줄은 CLI가 관리하는 daemon에 연결해 CLI와 app-server 버전을 함께 보여줍니다.
셋째 명령이 JSON 버전 정보를 돌려주고 두 버전이 다르면 실제 버전 불일치입니다. 반대로 app-server-control.sock 같은 제어 소켓에 연결할 수 없다고 나오면, 오래된 daemon이 연결된 상태가 아니라 관리 daemon 자체가 그 경로에 없는 상태부터 확인해야 합니다.
빈 임시 CODEX_HOME에서 직접 대조한 결과도 같았습니다. start 전 daemon version은 소켓 없음으로 exit 1이었고, daemon start 후에는 CLI와 app-server가 모두 0.156.1인 status: running JSON을 반환했습니다. 이것은 “연결 안 됨”과 “연결된 daemon의 버전 불일치”가 다른 상태임을 보여주지만, 공개 사례의 unsupported를 해결했다는 뜻은 아닙니다.
app-server 프로세스가 보여도 같은 daemon은 아닐 수 있습니다
macOS에서 다음 명령으로 프로세스 이름을 볼 수 있습니다.
ps -axo pid,command | grep '[c]odex.*app-server'
하지만 이 결과만 보고 프로세스를 종료하면 안 됩니다. 제가 확인한 환경에서는 npm으로 설치한 Codex CLI가 0.156.1이었고, ChatGPT 앱 안의 번들 Codex는 0.147.0-alpha.6.6이었습니다. ChatGPT 앱이 실행한 app-server --listen stdio:// 프로세스도 있었지만, codex app-server daemon version은 관리 제어 소켓이 없다며 연결에 실패했습니다.
즉, 이름은 모두 app-server여도 역할이 다릅니다.
| 확인 결과 | 뜻 | 다음 행동 |
|---|---|---|
daemon version이 CLI·app-server 버전을 모두 반환 |
관리 daemon이 연결됨 | 버전이 다른지 비교 |
| 제어 소켓 연결 실패 | 해당 CLI의 관리 daemon을 찾지 못함 | 설치 경로와 daemon 시작 여부 확인 |
| 프로세스 목록에 앱 번들 app-server만 보임 | ChatGPT/Codex 앱이 자체 서버를 사용 중일 수 있음 | 임의 종료하지 말고 앱 작업부터 확인 |
update가 unsupported |
현재 패키지 선택 방식이 update 조건과 맞지 않을 수 있음 | 도움말과 설치 방식을 확인하고 중단 |
--from-cli는 실제 불일치를 확인한 뒤 선택합니다
현재 CLI 0.156.1의 도움말에는 다음 옵션이 있습니다.
codex app-server daemon update --help
여기서 --from-cli는 현재 CLI 패키지를 복사해 고정하는 옵션으로 설명됩니다. update는 실행 중 작업을 끊을 수 있습니다.
격리한 npm/macOS 환경에서는 이 동작을 전후로 확인했습니다. 0.156.0 CLI로 관리 daemon을 시작한 뒤 0.156.1 CLI에서 버전을 읽자 cliVersion은 0.156.1, appServerVersion은 0.156.0이었습니다. 이어 아래 명령을 실행하자 daemon package가 현재 CLI 0.156.1로 복사·pin되고 재시작됐으며, 다시 읽은 두 버전이 모두 0.156.1이었습니다.
codex app-server daemon update --from-cli --yes
codex app-server daemon version
이 결과는 npm으로 설치한 macOS CLI와 격리 관리 daemon에서 확인한 것입니다. 공개 이슈 #47482의 Linux standalone unsupported를 그대로 재현한 결과는 아니므로, unsupported의 보편적인 해결 명령으로 확대하면 안 됩니다.
따라서 아래 조건을 모두 확인하기 전에는 실행하지 않는 편이 안전합니다.
daemon version이 실제 관리 daemon에 연결됐다.- CLI와 app-server 버전이 서로 다르다.
- 현재 다른 Codex 세션이 중요한 작업을 실행 중이지 않다.
- 설치 방식이 standalone인지 npm인지 알고 있다.
- 현재 버전의
update --help에서 사용할 옵션을 직접 확인했다.
이 조건을 확인하지 못했다면 --from-cli를 복사해 실행하지 말고, 먼저 위 세 개의 읽기 전용 명령 결과를 보존하세요.
오류별로 다음 행동을 나누세요
제어 소켓이 없다고 나올 때
CLI 업데이트 실패로 단정하지 않습니다. command -v codex로 지금 실행 중인 설치본을 확인하고, 앱이 띄운 별도 app-server를 CLI 관리 daemon으로 오인하지 않았는지 봅니다.
버전 JSON에서 CLI와 app-server가 다를 때
실제 불일치입니다. 진행 중 세션을 마친 뒤 현재 CLI 도움말과 공식 업데이트 경로를 확인합니다. 단순히 터미널을 다시 여는 것만으로 오래된 daemon이 바뀌지 않을 수 있습니다.
설치본 자체를 갱신할 때는 command -v codex로 확인한 설치 방식을 유지하세요. OpenAI 공식 CLI 문서는 standalone 설치본의 업데이트에도 설치 스크립트를 다시 실행하도록 안내합니다.
curl -fsSL https://chatgpt.com/codex/install.sh | sh
codex --version
npm 설치본이라면 공식 변경 로그에 표시된 현재 릴리스 명령처럼 원하는 버전을 명시한 뒤 다시 버전을 확인할 수 있습니다. 2026년 9월 24일 확인한 최신 항목은 0.156.1이었습니다.
npm install -g @openai/codex@0.156.1
codex --version
이 두 명령은 CLI 설치본을 갱신하는 경로입니다. 이미 떠 있는 관리 daemon이 함께 바뀌었는지는 codex app-server daemon version으로 별도 확인해야 합니다. 앱 번들 app-server를 npm 명령으로 바꾼다고 가정해서도 안 됩니다.
update가 unsupported로 끝날 때
같은 update를 반복하지 않습니다. 오류에 표시된 관리 패키지 경로와 설치 방식을 기록하고, update --help의 --from-cli 지원 여부를 확인합니다. 공개 사례의 명령이 내 npm 또는 앱 번들 환경에도 그대로 맞는다고 가정하지 마세요.
원격 app-server 주소 자체가 거절되는 문제라면 daemon 업데이트와 섞지 말고 invalid remote address를 연결 전에 구분하는 방법으로 주소 문법부터 확인하세요. 수정 뒤 실제 동작을 비교할 때는 같은 입력과 검사 명령을 고정하는 방법처럼 버전 외 조건을 하나씩만 바꿉니다.
자주 묻는 질문
ps에 app-server가 보이면 오래된 daemon이 맞나요?
아닙니다. 앱이 자체적으로 띄운 stdio app-server일 수 있습니다. daemon version이 제어 소켓을 통해 응답하는지 확인하기 전에는 같은 관리 daemon으로 단정하지 않습니다.
unsupported가 나오면 --from-cli를 바로 실행해도 되나요?
바로 실행하지 마세요. 이 Mac의 격리 npm 환경에서는 실제 0.156.1/0.156.0 불일치를 0.156.1로 맞췄지만, 공개 Linux standalone 사례의 unsupported는 재현하지 못했습니다. 관리 daemon 연결, 버전 차이, 설치 방식, 진행 중 작업 유무를 먼저 확인합니다.
공식 문서가 이 오류의 해결 명령을 안내하나요?
2026년 9월 24일 확인한 OpenAI 공식 App Server·CLI 문서에서는 이 특정 daemon update의 unsupported 오류를 직접 설명하는 절을 찾지 못했습니다. 따라서 이 글은 공식 문서가 확정하는 일반 app-server 범위, 공개 이슈의 Linux standalone 사례, macOS 로컬 대조를 서로 분리합니다.
정리
codex --version은 CLI 버전이고,codex app-server daemon version은 연결된 관리 daemon의 버전을 확인하는 명령입니다.- 프로세스 이름에 app-server가 보인다는 이유만으로 같은 daemon이라고 판단할 수 없습니다.
- 연결 실패, 실제 버전 불일치, unsupported update는 서로 다른 상태입니다.
- update와 restart는 진행 중 작업을 끊을 수 있으므로 읽기 전용 확인을 먼저 합니다.
--from-cli는 격리 npm/macOS의 실제 불일치를 해결했지만, 모든 설치 방식과unsupported의 자동 해결책으로 단정하지 않습니다.
확인 환경: macOS arm64, Codex CLI 0.156.1, 별도 npm 0.156.0 설치본. 공개 Linux standalone 0.156.0 사례, 현재 Mac의 npm CLI·ChatGPT 앱 번들 프로세스, 빈 임시 CODEX_HOME의 0.156.0→0.156.1 관리 daemon update를 분리해 확인했습니다.
참고: 공개 버전 불일치 보고, OpenAI Codex App Server 문서, OpenAI Codex CLI 문서, OpenAI ChatGPT·Codex 변경 로그
검증 기준
- 마지막 업데이트일: 2026-09-24
- 확인 환경: macOS arm64, Codex CLI 0.156.1, 별도 npm 0.156.0 설치본, ChatGPT 앱 번들 app-server, 빈 임시
CODEX_HOME의 0.156.0→0.156.1 관리 daemon update 대조 - 주요 근거: OpenAI Codex App Server 공식 문서, OpenAI Codex CLI 공식 문서, 공개 재현 이슈
- 미확인: 공개 Linux standalone
unsupported사례에서--from-cli의 해결 여부
직접 만든 실습 자료와 새 도구 소식
AI 도구로 만든 실습 자료, 달라진 기능과 강의 소식을 준비하고 있습니다. 발송을 시작하면 안내해 드려요. 먼저 확인 메일에서 본인 이메일을 확인해 주세요.
신청하기 전에 첫 소식 미리보기에서 내용과 자료를 확인해 보세요.