OpenAI Codex CLI – AI 기반 코딩 보조 도구 설치와 데모 #1

오늘은 최근 공개됐던 OpenAI Codex cli를 다뤄볼게요. Ai Agent와 별개로 공개되며 뭔가 매우 자율적으로 결과를 제시할 것으로 기대를 모았던 도구였습니다. 기본적인 개념과 설치 방법을 정리하고 마지막에는 간단하게 실행 결과까지 확인해 보겠습니다.

OpenAI Codex CLI

OpenAI Codex CLI는 개발자 환경으로 OpenAI의 최신 모델(특히 codex-mini-latest와 같은 미세 조정된 o4 모델)의 기능을 직접 확장하는 오픈소스 도구입니다. 말이 좀 길었는데, 간단히 말하면 휴대용 코딩 비서 역할을 하여 컴퓨터에서 로컬로 코드를 읽고, 편집하고, 실행함으로써 개발 속도를 높이고, 문제를 해결하며, 복잡한 코드를 작성하고 문제를 해결하는 데에 도움을 주는 역할을 합니다.

특징 중 하나는 사용자의 환경에서 동작한다는 것입니다. 이는 소스 코드가 개발자의 환경을 벗어나지 않으며, 사용자가 명시적으로 공유하지 않는 한 개인 정보와 보안을 유지할 수 있다는 특징을 갖습니다.

Codex CLI 경험하게 되면 이 도구의 장점을 더 잘 알 수 있어요. 상용구 코드 생성, 새로운 프로젝트 스캐폴딩, 기존 기능 통합 등을 자동화하여 개발 프로세스를 간소화하여 기능 구현 속도를 높이고 문제 해결 시간을 단축하도록 합니다.

뭐, 아직은 초기 단계임에도 사실 상당히 유용한 툴이 될 것으로 기대되는 도구입니다. 그러면 이제 바로 설치를 해 보죠.


macOS 환경에 Codex CLI 설치

설치 전, macOS 시스템이 최적의 성능과 호환성을 위해 지정된 요구 사항을 충족하는지 확인해보죠.

  • 운영 체제: macOS 12 이상.
  • Node.js 및 npm: 버전 22 이상이 필요하며, LTS(Long Term Support) 버전 권장. 전역 설치를 위해 npm(Node Package Manager) 버전 10 이상도 필요. Node.js는 공식 Node.js 웹사이트에서 다운로드
  • Git: 버전 2.23 이상이 권장되지만, 기본 기능에는 필수는 아닙니다. Git은 내장된 PR 도우미에 특히 유용하며, Git 저장소 내에서 작업할 때 Codex CLI가 경고를 발행하므로 사용이 권장되고요, git-scm.com에서 다운로드 가능합니다.
  • RAM: 최소 4GB의 RAM이 필요하며, 더 나은 성능을 위해 8GB가 권장.


단계별 설치 가이드

CodeX를 사용하기 전에 다음과 같이 사용 환경을 준비해야 합니다.

  1. Python 설치: 퍼이썬 3.8 이상 환경 필요. CodeX CLI는 Python으로 만들어진 애플리케이션이므로, 당신의 시스템에 Python이 설치되어 있어야 합니다.
  2. OpenAI API Key: CodeX CLI는 OpenAI의 모델을 사용하므로, 유효한 OpenAI API Key가 필요합니다.
  3. Git (선택 사항): Git 리포지토리 내에서 작업할 경우 Git이 설치되어 있으면 CodeX CLI의 Git 연동 기능을 활용할 수 있습니다.
  4. Node.js 설치 (v22 이상 권장)

CodeX CLI 설치

터미널을 열고 다음 명령어를 실행하여 CodeX CLI를 설치합니다.

npm install -g @openai/codex

이 명령어로 codex 실행 파일을 설치하여 시스템의 어느 디렉토리에서든 사용할 수 있도록 합니다. 설치 후, 터미널에 codex를 입력하여 설치를 확인할 수 있고요, 성공적으로 설치되었다면 프롬프트가 표시되거나 Git 저장소에 있지 않은 경우 경고가 표시될 수 있다.


OPENAI_API_KEY 환경 변수 설정

Codex CLI에 API 키를 제공하는 권장 방법은 환경 변수 설정하는 거예요. macOS 터미널에서 다음 명령어를 사용합니다.

export OPENAI_API_KEY="your-api-key-here"

“your-api-key-here”를 OpenAI에서 생성한 API 키로 대체합니다. 터미널 세션 전반에 걸쳐 이 설정을 유지하려면, 이 줄을 셸 프로필 파일(예: Zsh의 경우 ~/.zshrc, Bash의 경우 ~/.bash_profile 또는 ~/.bashrc)에 추가합니다.

추가한 후에는 source ~/.zshrc(또는 해당 파일)를 실행하여 변경 사항을 즉시 적용됩니다.

이렇게 환경변수로 api 키를 설정하는 이유는 이미 아시는 분들도 계시겠지만, 중요 개인정보에 대해 보안을 유지하기 위해서 입니다. openai api key는 곧 나를 증명하는 코드이기 때문에 보안에 신경을 써야하죠.

Codex CLI의 핵심 기능

이 섹션에서는 Codex CLI의 기본 기능과 작동 모드를 자세히 설명하고, 코드를 상호 작용하는 방식과 사용자가 동작을 제어하는 방법을 설명한다.

주요 기능

  • 제로 설정 설치: 앞서 강조했듯이, 설치 과정은 주로 Node.js와 Git을 요구하며, 간단한 npm install 명령어로 완료된다. 이는 개발자의 진입 장벽을 크게 낮춘다.
  • 멀티모달 입력: Codex CLI는 텍스트 프롬프트뿐만 아니라 스크린샷 및 다이어그램과 같은 시각적 입력을 받아들일 수 있는 능력으로 두드러진다. 이를 통해 개발자는 시각적 개념을 코드로 직접 변환하여 더욱 직관적이고 효율적인 작업 흐름을 가능하게 한다.
  • 로컬 작동 및 샌드박싱: Codex CLI 설계의 핵심은 보안 및 개인 정보 보호에 대한 약속이다. 이 도구는 사용자의 컴퓨터에서 샌드박스 환경 내에서 완전히 로컬로 작동한다.
    • macOS에서는 Apple Seatbelt(sandbox-exec)를 활용하여 보안 격리 환경을 생성한다.
    • 대부분의 파일 시스템은 읽기 전용으로 설정되며, 현재 작업 디렉토리($PWD), 임시 디렉토리($TMPDIR), 및 ~/.codex는 예외이다.
    • 기본적으로 외부 네트워크 접근은 완전히 차단되며, OpenAI API에 대한 접근만 허용되어 데이터 개인 정보 보호 및 의도하지 않은 외부 연결 방지를 보장한다.
    • 또한, 리포지토리가 마운트된 경량 컨테이너 이미지 내에서 실행될 수 있으며, iptables/ipset을 사용하여 방화벽을 설정하여 루트 권한 없이도 반복 가능하고 예측 가능한 실행을 제공한다.
  • 터미널 내에서 완전히 실행: 이는 별도의 GUI 애플리케이션으로 컨텍스트 전환할 필요가 없어 개발자가 익숙한 명령줄 인터페이스 내에서 생산성을 유지할 수 있도록 한다.

Codex CLI와 상호 작용을 위한 필수 명령어

이 섹션에서는 Codex CLI와 상호 작용하는 데 사용되는 주요 명령어를 나열하여 일반적인 작업에 대한 빠른 참조를 제공한다.

Git 저장소 초기화 (필요한 경우):

git init

컨텍스트: Codex CLI는 안전을 위해 Git 저장소 내에서 작업하고 내장된 PR 도우미를 활용할 것을 권장한다.2 프로젝트가 아직 Git 저장소가 아니라면 먼저 초기화한다.

프로젝트 디렉토리로 이동:

cd <project-directory>

컨텍스트: 모든 Codex CLI 작업은 현재 작업 디렉토리로 범위가 지정되며, 특히 샌드박싱이 활성화된 경우 더욱 그렇다.

명령어설명
npm install -g @openai/codexCodex CLI를 전역으로 설치한다.
export OPENAI_API_KEY=”your-api-key-here”OpenAI API 키를 환경 변수로 설정한다.
codex –login크레딧 사용을 위해 OpenAI 계정에 로그인한다.
cd <project-directory>프로젝트 작업 디렉토리로 이동한다.
git init현재 디렉토리에 새 Git 저장소를 초기화한다.
codexCodex CLI를 대화형 모드로 시작한다.
codex –image “path/to/screenshot.png”스크린샷을 코드 생성 또는 분석을 위한 입력으로 제공한다.
codex –approval-mode full-auto “Your task description”특정 프롬프트로 완전 자동 모드에서 작업을 실행한다.

실제 데모: Codex CLI의 작동

다 설치했으면 이제, 어떻게 동작하는지 실행해 볼게요.

아래와 같이 openai 홈페이지 화면을 그냥 스크린 캡쳐 해서, ‘sample1.png’파일로 저장했어요.

OpenAI Codex CLI 관련 이미지 01
OpenAI Codex 관련 이미지 01 <출처: openai 홈페이지 중 일부>

목적은 codex를 이용할때 이런 화면만 보고도 이와 같은 화면을 구성할 수 있는지 테스트해 볼 거예요. 물론, 오늘은 코드까지 분석하지 않고 코드 생성 결과까지 진행되는지만 볼게요.

그러면, 다음과 같이 콘솔에 명령어를 입력할게요.

OpenAI Codex CLI 관련 이미지 02
OpenAI Codex 관련 이미지 02

위 그림의 붉은 점선 처럼 명령어를 입력하니, OpenAI Codex가 동작하네요. git 설정을 안했으므로, 그냥 진행할게요. y를 누릅니다.

실행 중간에 아래 그림과 같이 자신이 분석한 내용과 궁금한 점에 대해 질문을 합니다. 이때 한글로 작성하면 그 후부터는 한글로 대화를 진행하더군요.

OpenAI Codex CLI 관련 이미지 03
OpenAI Codex 관련 이미지 03

특별히 명확한 목표가 있던게 아니라, 단순히 같은 화면 구성을 원했으므로, 화면 구성을 같게 페이지를 구성해 달라고 했어요. 결과는 다음과 같았습니다.

OpenAI Codex CLI 관련 이미지 04
OpenAI Codex 관련 이미지 04

단순한 HTML/CSS 구조를 원한다고 했더니, 위와 같은 코드를 제시했어요. 그리고 파일명도 제시했습니다. 위 그림에는 코드의 끝부분 일부만 보이지만, 실제 전체 코드를 제시한 결과였어요.

그런데, 처음 Codex 가이드를 읽었을 때, 로컬 시스템에 스스로 파일을 생성하며 필요한 프로젝트를 스스로 완성하는 것으로 이해했었는데, 그 정도로 완성도 있게 실행되지는 않는 모습을 보여줬습니다. 앞으로 몇 가지 테스트를 더 해 봐야겠지만 말이죠.

오늘은 OpenAI Codex를 간략하게 살펴봤습니다. 인공지능의 생산성이 무궁무진함을 느낄 수 있게 하는 또 하나의 좋은 기능이었는데요, AI Agent와 더불어 Codex 기능도 고도화된다면 상당히 좋은 도구가 될 것 같습니다. 이러면 정말 고급 스킬 개발자 이외는 살아남기 힘든 세상이 곧 열릴 것 같습니다.



답글 남기기