Codex Goal Mode와 Remote Computer Use의 장기 자율 실행 구조

Codex Goal Mode가 수시간·수일 작업을 이어가는 상태 지속 구조와 Remote Computer Use의 VM 격리, 임시 자격증명, 감사·롤백 구조를 운영 관점에서 분석한다.

2026-08-14 · 최초 발행 2026-05-24

중단을 전제로 상태를 보존한다

실험적 기능으로 제한 공개됐던 Codex Goal Mode가 Codex 앱, IDE 확장, CLI 전체 플랫폼에서 정식 출시됐다. 사용자가 고수준 목표를 지정하면 Codex가 수시간 또는 수일에 걸쳐 작업을 이어가는 지속 에이전트 모드다. Remote Computer Use와 결합하면 Mac이 잠겨 있거나 오프라인이어도 원격 클라우드 환경에서 실행이 계속된다.

이처럼 실행 시간이 길어지면 네트워크 단절, 시스템 재시작, API 서버 점검이 예외적인 사건이 아니라 설계 조건이 된다. 따라서 에이전트가 무엇을 끝냈고 어디에서 멈췄는지 보존한 뒤 정확한 시점부터 다시 시작할 수 있어야 한다.

세션 직렬화는 현재 실행 상태를 직렬화 가능한 형식으로 바꿔 내구성 있는 저장소에 기록하는 과정이다. 대상에는 현재 작업 트리(Task Tree), 각 서브태스크의 완료 상태, 도구 실행 이력, 생성 파일과 그 내용의 해시값, 현재 컨텍스트 윈도우의 요약(Summary)이 포함된다.

Goal Mode 에이전트체크포인트 스케줄러체크포인트 트리거서브태스크 완료N분 간격 타이머도구 호출 N회 마다상태 직렬화체크포인트 페이로드 생성AES-256 암호화내구성 저장소(S3 / GCS / Azure Blob)체크포인트 ID 발급로컬 체크포인트 인덱스업데이트

저장 방식은 전체 체크포인트(Full Checkpoint)와 증분 체크포인트(Incremental Checkpoint)로 나뉜다. 전체 체크포인트는 상태 전체를 담기 때문에 용량이 크지만 완전한 재개가 가능하다. 증분 체크포인트는 직전 체크포인트 이후 달라진 부분만 기록해 저장 용량과 시간을 줄인다. 기본 설정에서는 서브태스크가 끝날 때마다 증분 체크포인트를 만들고, 1시간마다 전체 체크포인트를 생성한다.

계획은 실행 중에도 바뀐다

Goal Mode는 고수준 목표를 실행 가능한 서브태스크 트리로 나누는 계획 단계에서 출발한다. 처음 만든 계획은 고정된 명세가 아니다. 작업 과정에서 새 정보가 발견되면 트리도 함께 갱신된다.

목표: REST API를 GraphQL로마이그레이션(1) 기존 엔드포인트 분석(2) GraphQL 스키마 설계(3) 리졸버 구현(4) 테스트 작성 실행(5) 문서 업데이트(1.1) 라우터 파일 파싱(1.2) 컨트롤러 의존성 분석(1.3) 데이터 모델 추출

작업 트리의 각 노드에는 PENDING, IN_PROGRESS, COMPLETED, BLOCKED, FAILED 상태와 완료 증거(Evidence)가 기록된다. 증거는 생성된 파일 경로, 테스트 통과 로그, 코드 변경 사항의 diff 요약 등으로 구성된다. 재개한 에이전트는 이 기록을 근거로 이미 마친 작업을 식별해 중복 실행을 피한다.

원격 실행 환경을 세션 단위로 격리한다

Remote Computer Use에서는 에이전트가 사용자 로컬 머신 대신 클라우드에 프로비저닝된 원격 VM에서 작업한다. Goal Mode 세션마다 전용 VM 인스턴스가 할당되고, 세션이 끝나면 해당 VM은 완전히 소거된다.

격리의 중심에는 네트워크 정책이 있다. 기본 설정에서는 VM의 인터넷 접근을 제한하고 GitHub, npm, PyPI 등 허용된 도메인과 패키지 레지스트리로 향하는 아웃바운드 트래픽만 통과시킨다. 사용자가 추가 도메인을 명시적으로 허용할 수 있지만, 이때는 보안 경고가 표시된다.

사용자 로컬 머신Goal Mode 오케스트레이터(클라우드)VM 프로비저너전용 VM 인스턴스소스 코드 체크아웃(읽기 전용 마운트)작업 디렉토리(쓰기 가능 임시 영역)네트워크 정책 적용(허용 도메인 필터)자격증명 볼트(Vault / KMS)임시 토큰 발급(TTL: 세션 단위)에이전트 실행변경 사항 커밋(PR 생성)세션 종료 VM 소거

자격증명도 실행 환경과 같은 세션 경계 안에서 관리된다. 세션 생성 시 임시 토큰을 발급하고 종료와 함께 폐기하며, 수명(TTL)은 최대 24시간으로 제한한다. 작업이 수일에 걸치면 자격증명을 주기적으로 갱신(rotation)한다. 장기간 실행되는 동안 자격증명이 노출되거나 악용될 위험을 줄이기 위한 컨텍스트 분리다.

모든 작업을 추적하고 되돌릴 수 있게 한다

장기 자율 실행의 신뢰성은 결과물만으로 판단하기 어렵다. Goal Mode는 에이전트가 수행한 작업을 불변 감사 로그에 남긴다. 파일 읽기·쓰기, 쉘 명령 실행, API 호출을 포함한 모든 도구 호출과 각 호출의 입력·출력, 타임스탬프가 기록 대상이다.

복구 단위는 git 커밋이다. 에이전트는 주요 작업 단계마다 자동 커밋을 만들며, 사용자는 원하는 체크포인트로 코드베이스를 되돌릴 수 있다. 전체 세션을 취소하면 에이전트가 만든 모든 커밋이 리버트되고 브랜치도 삭제된다.

오래 맡길수록 확인 지점이 필요하다

Goal Mode가 바꾸는 것은 실행 시간만이 아니다. 기존의 동기적 요청-응답 관계가 비동기적 목표-결과 관계로 이동한다. 개발자는 작업을 위임한 뒤 다른 업무를 진행하고, 에이전트는 이메일, Slack, 앱 푸시로 진행 상황을 정기적으로 알린다. 필요하면 사용자가 작업을 일시 정지하거나 방향을 수정할 수 있다.

다만 실행 시간이 길수록 판단 오류도 누적되기 쉽다. 초기에 생긴 작은 오해나 잘못된 가정이 수십 개의 후속 작업에 전달될 수 있다. 이를 제어하기 위해 Goal Mode는 기존 API 제거, 데이터베이스 스키마 변경과 같은 고위험 결정을 실행하기 전에 사용자 확인을 받는 확인 게이트(Confirmation Gate)를 제공한다. 어떤 항목에서 확인을 요구할지는 사용자가 목표를 설정할 때 세분화해 구성할 수 있다.

반복 자동화와 탐색형 위임의 경계

Goal Mode와 Claude Code Routines는 장기 자동화를 지향하지만 맡기기 좋은 작업의 성격이 다르다. Routines는 이벤트 트리거에 따라 반복 실행되는 정형 작업에 최적화돼 있다. 미리 정의된 프롬프트·레포·커넥터 조합을 바탕으로 예측 가능한 결과를 반복 생성하는 방식이다.

Goal Mode는 비정형적이고 탐색적인 장기 작업에 더 적합하다. 목표에 도달하기 위한 계획을 스스로 세우고 실행 중에 조정하므로 복잡한 일회성 대형 프로젝트에 대응할 수 있다.

엔터프라이즈에서는 레거시 코드베이스 현대화가 대표적인 활용 시나리오다. 수십만 라인 규모의 레거시 Java 코드를 현대적인 스프링 부트 아키텍처로 단계적으로 옮기는 작업을 에이전트가 수주에 걸쳐 자율 수행하고, 개발팀은 주요 체크포인트에서 검토와 방향 조정에 집중하는 형태다.

Codex Goal Mode의 정식 출시는 AI 코딩 에이전트의 역할이 단발성 지원에서 수일간 지속되는 자율 개발 파트너로 확장됐음을 보여준다. 체크포인트 기반 상태 지속과 목표 분해 트리는 긴 작업을 이어가는 기반이고, VM 격리와 임시 자격증명은 원격 실행의 보안 경계를 만든다. Remote Computer Use와 결합하면 로컬 머신의 가용성 제약 없이 비동기적으로 개발 작업을 위임할 수 있다. 이 방식이 성숙함에 따라 소프트웨어 개발 팀의 구성과 워크플로가 근본적으로 재편될 것으로 전망된다.

Sources

CodexGoal Mode코딩 에이전트Remote Computer Use장기 실행