Ch8. Cloud Tasks
격리 컨테이너에서 원격 작업을 실행하고 codex cloud exec와 best-of-N(--attempts), @codex GitHub 통합으로 대규모 탐색·장시간 작업을 병렬 처리하는 운영 패턴
핵심 요약
- Cloud Tasks는 대규모 탐색, 장시간 실행, best-of-N 병렬 시도, 비동기 작업처럼 로컬 컨텍스트를 오염시키는 작업을 격리 컨테이너로 분리합니다.
- 각 Cloud Task는 인터넷 접근이 기본 비활성화된 격리 컨테이너에서 돌고, GitHub 레포와 setup script 의존성에만 접근합니다.
codex cloud로 태스크를 탐색·재개하고,codex cloud exec --env ENV_ID로 원격 실행하며,--attempts(1~4)로 best-of-N 해법을 뽑습니다.- GitHub Issue/PR에
@codex를 태그하면 Cloud Task가 자동 생성되어 PR로 변환되거나 기존 PR에 변경을 이어 붙입니다. - 0.114.0부터 WebSocket 앱 서버는
GET /healthz(liveness)와GET /readyz(readiness)를 노출해 K8s/ECS에서 비정상 인스턴스를 자동 교체할 수 있습니다.
Codex는 Cloud Tasks로 원격 환경에서 작업을 실행합니다. 대규모 탐색이나 긴 작업은 클라우드로 분리해 로컬 컨텍스트를 보호하세요.
언제 Cloud Tasks를 쓰나
- 대규모 탐색/분석: 레포 전체 구조 파악, 이슈 트리아지, 광범위 검색
- 장시간 실행: 로컬 세션 컨텍스트를 오염시키는 긴 작업
- 병렬 시도: "여러 접근을 동시에" 돌려 가장 좋은 결과만 채택
- 비동기 작업: 컴퓨터가 꺼져 있어도 백그라운드에서 계속 실행
Cloud 실행 환경
각 Cloud Task는 격리된 컨테이너에서 실행됩니다. 보안 원칙:
- 작업 중 인터넷 접근은 기본 비활성화(도메인/HTTP 메서드 단위로 허용 가능)
- GitHub 레포와 사전 설치된 의존성(setup script)만 접근 가능
- 실행 로그/터미널 출력/테스트 결과를 통해 검증 가능
핵심 CLI 워크플로우
1) 대화형 태스크 브라우저: codex cloud
codex cloud는 터미널에서 Cloud Task를 탐색/재개하고, 완료된 변경을 로컬 프로젝트에 적용합니다.
2) 원격 실행: codex cloud exec
# ENV_ID는 클라우드 환경 ID
codex cloud exec --env ENV_ID "Summarize open bugs"3) best-of-N 시도: --attempts(1~4)
복수 해법을 뽑아 "가장 좋은 결과"를 고르고 싶다면 --attempts를 사용합니다.
codex cloud exec --env ENV_ID --attempts 3 "Summarize open bugs"4) 환경 선택 단축키
환경 ID는 codex cloud의 환경 선택 UI에서 확인하고, Ctrl+O 단축키로 환경 선택을 엽니다.
GitHub 통합 (@codex)
GitHub Issue/PR에 @codex를 태그하면 Cloud Task가 자동으로 생성됩니다.
완료된 작업은 PR로 변환되거나 기존 PR에 변경을 이어서 반영할 수 있습니다.
운영 팁
- 탐색과 수정 분리: 원격은 "근거 수집/요약", 로컬은 "작은 diff로 반영"
- 작업 분할: 큰 이슈는 여러 Cloud Task로 쪼개 병렬 처리(모듈 단위, 디렉토리 단위)
- 결과 요약 표준화: Cloud Task 결과는 "변경 요약 + 검증 단계 + 리스크" 포맷으로 받기
- IDE에서 Cloud 위임: IDE 확장에서 장시간 태스크를 Cloud로 보내고, 완료 시 diff를 로컬에 적용
최근 릴리스 기준 추가 포인트
- Fast/Flex tier 노출 확대: app-server 기준 service tier 메타데이터가 더 풍부해져, 속도 우선 작업과 안정 우선 작업을 분리하기 쉬워졌습니다
- resume 중심 운영: 장시간 remote task는 “다시 실행”보다 “resume 후 steer”가 더 비용 효율적일 수 있습니다
- MCP/auth 병목 완화: 세션 시작이 특정 MCP auth 체크에 과도하게 막히는 문제가 줄어, 긴 remote workflow 운영이 수월해졌습니다
클라우드 인증 에러 복구 개선 (0.113.0)
클라우드 요구사항 fetch 시 발생하는 401 인증 에러 처리가 개선됐습니다. 예전에는 인증이 만료되면 모호한 에러 메시지만 떴지만, 이제는 auth-recovery 안내 메시지가 출력되어 토큰 갱신이나 재로그인 절차를 분명하게 안내합니다.
장시간 Cloud Task를 운영하는 환경에서 토큰 만료로 인한 혼란이 줄어듭니다.
WebSocket 앱 서버 헬스체크 엔드포인트 (0.114.0)
WebSocket 기반 앱 서버 배포 시 **GET /readyz**와 GET /healthz 엔드포인트가 자동으로 노출됩니다.
| 엔드포인트 | 용도 |
|---|---|
GET /healthz | 서버 프로세스가 살아있는지 확인 (liveness) |
GET /readyz | 요청을 받을 준비가 됐는지 확인 (readiness) |
Kubernetes나 ECS 같은 오케스트레이터에서 Cloud Task 앱 서버 상태를 자동으로 모니터링하고 비정상 인스턴스를 교체하는 데 씁니다.
참고 문서
- Codex CLI 기능: https://developers.openai.com/codex/cli/features (영어)
- Codex Cloud: https://developers.openai.com/codex/cloud (영어)
- IDE 기능(Cloud Tasks): https://developers.openai.com/codex/ide/features (영어)
- GitHub 통합: https://developers.openai.com/codex/integrations/github (영어)
- GitHub Releases: https://github.com/openai/codex/releases (영어)