Codex npm Missing optional dependency, 설치 성공 뒤 무엇을 확인하나?

npm install -g @openai/codex@0.157.0은 성공했는데 codex가 Missing optional dependency @openai/codex-linux-x64로 시작되지 않는다면, 같은 설치를 반복하기 전에 공통 wrapper와 Linux x64 플랫폼 패키지가 같은 버전으로 모두 보이는지 확인하세요. npm 설치 성공은 wrapper가 놓였다는 뜻일 수 있지만, 실제 실행 바이너리까지 준비됐다는 확인은 codex --version 결과입니다.

npm 공통 wrapper와 Linux x64 플랫폼 패키지를 분리해 확인하는 설치 구조 그림

먼저 환경 네 줄을 남깁니다

codex --version
node --version
npm --version
node -p "process.platform + ' ' + process.arch"

첫 줄이 아래처럼 끝나면 오류에 나온 패키지 이름을 그대로 보존합니다.

Error: Missing optional dependency @openai/codex-linux-x64

그다음 wrapper와 현재 플랫폼용 버전을 각각 조회합니다.

npm view @openai/codex@0.157.0 version
npm view @openai/codex@0.157.0-linux-x64 version

버전 번호는 예시의 0.157.0을 오류가 난 설치 버전으로 바꿉니다. Linux arm64라면 패키지 접미사도 실제 오류와 process.arch에 맞춰야 합니다.

설치 성공과 실행 성공을 왜 나누나

@openai/codex npm 배포에는 공통 JavaScript wrapper와 OS·CPU별 optional dependency가 연결됩니다. Linux x64에서는 wrapper가 대응 플랫폼 패키지를 찾아 실제 바이너리를 실행합니다.

2026년 9월 25일 공개된 Arch Linux x64 사례에서는 @openai/codex@0.157.0 wrapper 설치가 성공했지만, 당시 0.157.0-linux-x64 직접 조회는 E404였습니다. 작성자는 그래서 codex --version이 선택 패키지 누락으로 실패했다고 기록했습니다.

하지만 같은 날 13:19 KST에 다시 확인한 결과는 달랐습니다. exact Linux x64 버전이 레지스트리에서 조회됐고, Linux x64를 지정한 격리 npm 설치에는 wrapper와 0.157.0-linux-x64 두 패키지가 함께 들어왔습니다. 공개 실패를 현재도 계속되는 결함이라고 단정할 수 없는 이유입니다.

이 오류 문구 자체는 0.110.0 Ubuntu x64와 0.124.0 Windows x64 공개 보고에도 있었습니다. 따라서 문구만 같다고 0.157.0의 일시적 registry 상태로 단정하지 않습니다. 이 글의 답은 다른 사례에서도 반복된 “재설치” 한 줄보다, 실패한 wrapper의 exact 버전과 현재 플랫폼 패키지가 지금 서로 맞는지를 먼저 나누는 데 있습니다.

결과별 다음 행동

확인 결과 뜻 다음 행동
wrapper와 플랫폼 패키지가 모두 조회되고 같은 기본 버전이다 현재 레지스트리에는 짝이 보임 같은 버전을 다시 설치한 뒤 codex --version 확인
wrapper는 보이지만 exact 플랫폼 패키지는 E404다 설치 반복만으로 해결되지 않을 수 있음 출력과 확인 시각을 저장하고 전역 재설치 반복 중단
두 패키지는 보이지만 실행은 계속 실패한다 레지스트리 존재 문제만으로 설명되지 않음 npm ls -g --depth=1과 실제 PATH의 codex 위치 확인
이전 버전만 실행된다 현재 버전의 플랫폼 짝 또는 로컬 설치 상태를 더 봐야 함 작동 버전을 보존하고 변경 전후를 따로 기록

재설치할 때는 공식 안내처럼 설치 뒤 버전을 확인합니다.

npm install -g @openai/codex@latest
codex --version

latest가 필요한 경우에만 사용하세요. 재현이나 자동화가 exact 버전에 묶여 있다면 먼저 그 exact 플랫폼 패키지가 현재 보이는지 확인해야 비교 조건을 잃지 않습니다.

바로 하지 않을 것

  • 설치 성공 문구만 보고 복구됐다고 기록하지 않습니다.
  • 플랫폼 패키지가 E404인 동안 같은 전역 설치를 무한 반복하지 않습니다.
  • Linux x64 오류를 macOS나 arm64에도 같은 패키지 이름으로 적용하지 않습니다.
  • 현재 조회가 성공한다는 이유로 공개 실패가 없었다고 지우지 않습니다.
  • 실제 Linux 실행 없이 0.157.0 전체가 정상이라고 단정하지 않습니다.

이번 대조는 macOS 호스트에서 npm의 대상 OS·CPU를 Linux x64로 지정해 패키지 해석과 설치 여부를 확인한 것입니다. 실제 Arch Linux에서 바이너리를 실행하지 않았고, OpenAI의 공식 장애 공지나 정확한 복구 시각도 확인하지 못했습니다.

codex --version은 실행되지만 진단 출력이 섞여 있다면 Codex doctor warning을 기능별로 나누는 법으로 다음 단계를 분리하세요. 자동화 JSONL에서 실패한 명령이 사라진 것처럼 보이는 문제는 codex exec JSON의 실패 명령 확인 순서에서 따로 다룹니다. 두 글은 플랫폼 패키지 누락의 해결책이 아니라, 설치 다음 단계에서 다른 오류를 섞지 않기 위한 분기입니다.

정리

  • npm wrapper 설치 성공과 codex --version 성공을 분리합니다.
  • 오류에 나온 OS·CPU별 optional dependency의 exact 버전을 직접 조회합니다.
  • 공개 E404와 현재 조회 성공을 확인 시각과 함께 보존합니다.
  • 플랫폼 패키지가 현재 보일 때만 같은 버전 재설치를 한 번 대조하고, 마지막 판정은 codex --version으로 합니다.

참고: OpenAI Codex 공개 이슈 #47990, OpenAI 공식 Codex npm 갱신 예시

자주 묻는 질문

npm 설치가 성공했으면 Codex도 설치된 것 아닌가요?

그렇게 단정할 수 없습니다. 공통 wrapper만 설치되고 현재 OS·CPU용 optional dependency가 빠질 수 있습니다. 마지막 확인은 설치 출력이 아니라 codex --version의 실제 성공 결과입니다.

exact 플랫폼 패키지가 지금 보이면 공개 오류는 틀렸나요?

아닙니다. 공개 보고는 실패 당시의 E404를 기록했고, 이 글의 후속 조회는 다른 시각의 성공을 기록했습니다. 두 결과를 시각별로 보존해야 일시적 배포 차이와 현재 로컬 설치 문제를 나눠 볼 수 있습니다.

검증 기준

  • 마지막 업데이트일: 2026-09-25
  • 확인 환경: macOS arm64·Codex CLI 0.156.1 호스트에서 npm의 대상을 Linux x64로 지정한 격리 설치 대조, 공개 Arch Linux x64·0.157.0 실패 보고
  • 주요 근거: OpenAI Codex 공개 이슈 #47990 · OpenAI 공식 Codex npm 설치 예시
  • 공개 실패 환경: Arch Linux x64, Codex npm 0.157.0, Node.js 25.6.1, npm 11.17.0
  • 현재 대조: npm registry exact 버전 조회 및 Linux x64 지정 격리 설치 성공
  • 검색 대조: Google은 Linux·Windows·macOS의 동일 오류 공개 보고가 상단이었고, Naver는 Ubuntu #13555·Windows #19243 보고와 일반 설치 가이드가 주로 보였음
  • 실서버 대조: 예정 slug exact 조회 0건, Codex Missing optional dependency 검색 0건; 기존 설치 문서는 광범위 입문/설치이고 exact 플랫폼 패키지·확인 시각 대조를 담당하지 않음
  • 현재 로컬 CLI: macOS arm64, Codex CLI 0.156.1
  • 직접 확인하지 않음: 실제 Arch Linux 바이너리 실행, 장애 지속 시간, 영향 규모, 공식 복구 공지

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

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

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

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

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