logo

클라우드 환경

환경을 사용하면 Codex가 클라우드 작업 중 설치하고 실행하는 항목을 제어할 수 있습니다. 예를 들어 의존성을 추가하고, linter와 formatter 같은 도구를 설치하고, 환경 변수를 설정할 수 있습니다.

Codex 클라우드 작업 실행 방식

작업을 제출하면 다음 일이 일어납니다.

  1. Codex가 컨테이너를 만들고 선택한 브랜치 또는 커밋 SHA에서 저장소를 checkout합니다.
  2. Codex가 설정 스크립트를 실행합니다. 캐시된 컨테이너를 재개할 때는 선택적으로 유지 관리 스크립트도 실행합니다.
  3. Codex가 인터넷 접근 설정을 적용합니다. 설정 스크립트는 인터넷 접근이 허용된 상태로 실행됩니다. 에이전트 인터넷 접근은 기본적으로 꺼져 있지만, 필요하면 제한적 또는 무제한 접근을 활성화할 수 있습니다. 에이전트 인터넷 접근을 참고하십시오.
  4. 에이전트가 터미널 명령을 반복 실행합니다. 코드를 수정하고, 검사를 실행하고, 작업 결과를 검증하려고 시도합니다. 저장소에 AGENTS.md가 있으면 에이전트는 프로젝트별 lint와 테스트 명령을 찾는 데 이를 사용합니다.
  5. 에이전트가 완료되면 답변과 변경한 파일의 diff를 표시합니다. PR을 열거나 후속 질문을 할 수 있습니다.

기본 universal 이미지

Codex 에이전트는 universal이라는 기본 컨테이너 이미지에서 실행됩니다. 이 이미지에는 일반적인 언어, 패키지, 도구가 미리 설치되어 있습니다.

환경 설정에서 Set package versions를 선택해 Python, Node.js, 기타 런타임 버전을 고정할 수 있습니다.

codex-universal에는 속도와 편의를 위해 여러 언어가 미리 설치되어 있지만, 설정 스크립트를 사용해 컨테이너에 추가 패키지를 설치할 수도 있습니다.

환경 변수와 비밀 정보

환경 변수는 설정 스크립트와 에이전트 단계를 포함해 작업 전체 기간 동안 설정됩니다.

비밀 정보는 환경 변수와 비슷하지만 다음 차이가 있습니다.

  • 추가 암호화 계층으로 저장되며 작업 실행 중에만 복호화됩니다.
  • 설정 스크립트에서만 사용할 수 있습니다. 보안상 비밀 정보는 에이전트 단계가 시작되기 전에 제거됩니다.

자동 설정

일반적인 패키지 관리자(npm, yarn, pnpm, pip, pipenv, poetry)를 사용하는 프로젝트에서는 Codex가 의존성과 도구를 자동으로 설치할 수 있습니다.

수동 설정

개발 설정이 더 복잡하다면 사용자 지정 설정 스크립트를 제공할 수도 있습니다. 예:

# Install type checker
pip install pyright

# Install dependencies
poetry install --with test
pnpm install

설정 스크립트는 에이전트와 별도의 Bash 세션에서 실행되므로 export 같은 명령은 에이전트 단계까지 유지되지 않습니다. 환경 변수를 유지하려면 ~/.bashrc에 추가하거나 환경 설정에서 구성합니다.

컨테이너 캐싱

Codex는 새 작업과 후속 작업 속도를 높이기 위해 컨테이너 상태를 최대 12시간 동안 캐시합니다.

환경이 캐시될 때:

  • Codex가 저장소를 clone하고 기본 브랜치를 checkout합니다.
  • Codex가 설정 스크립트를 실행하고 결과 컨테이너 상태를 캐시합니다.

캐시된 컨테이너가 재개될 때:

  • Codex가 작업에 지정된 브랜치를 checkout합니다.
  • Codex가 선택적으로 유지 관리 스크립트를 실행합니다. 설정 스크립트가 오래된 커밋에서 실행되어 의존성을 업데이트해야 할 때 유용합니다.

설정 스크립트, 유지 관리 스크립트, 환경 변수, 비밀 정보를 변경하면 Codex는 캐시를 자동으로 무효화합니다. 저장소 변경으로 캐시된 상태가 호환되지 않게 되면 환경 페이지에서 Reset cache를 선택합니다.

Business와 Enterprise 사용자의 경우 캐시는 해당 환경에 접근할 수 있는 모든 사용자에게 공유됩니다. 캐시를 무효화하면 워크스페이스에서 그 환경을 사용하는 모든 사용자에게 영향을 줍니다.

인터넷 접근과 네트워크 프록시

의존성 설치를 위해 설정 스크립트 단계에서는 인터넷 접근을 사용할 수 있습니다. 에이전트 단계에서는 인터넷 접근이 기본적으로 꺼져 있지만 제한적 또는 무제한 접근을 구성할 수 있습니다. 에이전트 인터넷 접근을 참고하십시오.

환경은 보안과 악용 방지를 위해 HTTP/HTTPS 네트워크 프록시 뒤에서 실행됩니다. 모든 아웃바운드 인터넷 트래픽은 이 프록시를 통과합니다.

Previous
개요