Codex 샌드박스 모드가 뭔가요? 언제 쓰면 되나요?

…

한줄 요약

샌드박스 모드는 Codex가 코드를 실행할 때 격리된 가상 환경에서만 돌리는 기능이다. 실수로 내 시스템 파일을 삭제하거나 네트워크 요청을 보내는 것을 막아준다. Claude Code에는 없는 기능이다.

Q: Codex 샌드박스 모드가 뭔가요? 언제 쓰면 되나요?

A: 간단 답변

샌드박스는 “격리된 놀이터”다. Codex가 코드를 실행할 때 실제 내 컴퓨터가 아닌 가상 공간에서 실행한다. 잘못된 코드가 실제 파일을 지우거나 인터넷으로 데이터를 보내는 것을 방지한다. 믿을 수 없는 코드를 분석하거나, 처음 보는 스크립트를 실행해볼 때 켜두면 좋다.

상세 설명

샌드박스가 막는 것

샌드박스 모드를 켜면 Codex가 실행하는 코드가:

  • 내 홈 폴더 외부 파일에 접근 불가
  • 임의 네트워크 요청 차단
  • 시스템 명령어(rm -rf 등) 제한

코드가 “이 환경 밖으로 나가지 못하도록” 가둬두는 것이다.

사용 방법

# 샌드박스 모드로 실행
codex --sandbox "이 스크립트가 어떻게 동작하는지 실행해서 보여줘"

# 또는 approval-mode와 함께
codex --sandbox --approval-mode auto-edit "버그를 찾고 수정해줘"

언제 켜야 하나

켜는 것이 권장되는 상황

상황이유
출처가 불분명한 코드 분석실행 시 시스템 손상 방지
인터넷에서 받은 스크립트 테스트네트워크 요청 차단
팀 프로젝트에서 공유된 코드 검토의도치 않은 사이드이펙트 방지
CI/CD 파이프라인에서 AI 실행자동화 환경에서 안전 보장

굳이 안 켜도 되는 상황

상황이유
내가 직접 작성한 코드 수정이미 신뢰하는 코드
단순 분석만 (파일 수정 없음)실행 자체를 안 하면 무관
파일 수정만 하고 실행 안 할 때실행이 없으면 샌드박스 필요 없음

Claude Code와 비교

Claude Code에는 공식적인 샌드박스 모드가 없다. 파일 수정 전 확인 단계는 있지만, 코드 실행을 격리된 환경에서 돌리는 기능은 Codex에만 있다.

보안이 중요한 환경에서 코드 실행이 필요하다면 Codex가 더 적합하다.

샌드박스의 한계

샌드박스는 코드 실행을 격리하는 것이다. 파일 내용을 OpenAI 서버로 전송하는 것은 샌드박스와 무관하게 항상 일어난다. 데이터 프라이버시 문제는 샌드박스로 해결되지 않는다.

[샌드박스가 막는 것]
코드 실행 → 내 시스템 파일 삭제 (막힘)
코드 실행 → 외부 서버로 데이터 전송 (막힘)

[샌드박스가 막지 않는 것]
파일 내용 → OpenAI API 서버 전송 (여전히 됨)

핵심 정리

  • 샌드박스 = 코드 실행을 격리된 가상 환경에서만 허용
  • --sandbox 옵션으로 켬
  • 출처 불분명한 코드, 자동화 환경에서 유용
  • 데이터 전송 자체를 막는 기능은 아님
  • Claude Code에는 없는 Codex 고유 기능

관련 글

← FAQ 전체 보기