휴대폰에서 Codex 사용하는 방법: 모니터링, 승인, diff 검토까지 모바일로

신뢰하는 머신에서 Codex 세션을 시작한 뒤, 휴대폰에서 모니터링, 지시, 승인, 검토, 재개까지 하는 방법. 휴대폰을 터미널로 만들 필요가 없습니다.

기준 버전
CLI
0.2.17
프리뷰 ref
a2c45c8

Codex는 잘 동작하지만, 세션이 "한 번 앉아서 끝나는" 길이를 넘어가면 기본 사용성이 불편해집니다.

터미널에서 벗어나는 순간, 보통 손쉬운 제어 루프를 잃습니다.

  • 진행 상황 확인
  • 보충 지시 보내기
  • 도구 권한 승인
  • 변경 사항 검토

휴대폰에서도 SSH로 억지로 할 수는 있습니다. 다만 휴대폰은 터미널로 쓰기에 불편합니다.

그래서 문제는 이렇습니다. Codex는 세션을 소유한 머신에서 계속 실행되고, 휴대폰에서 세션을 진행시킵니다(후속 지시, 승인, 검토).

Happier는 휴대폰, 데스크톱, 웹에서 Codex, Claude Code 등 여러 에이전트를 크로스 디바이스로 실행하고 오케스트레이션할 수 있는 오픈 소스 앱입니다. 트레이드오프: 원하는 흐름(attach / resume 등)에 맞게, 세션을 소유한 머신에서 인증과 올바른 백엔드 설정이 필요합니다.

요약

  1. Happier를 설정하고 머신에서 Codex를 인증합니다 (CLI 또는 연결된 서비스).
  2. Happier(휴대폰 / 웹 / 데스크톱)에서 Codex 세션을 시작하고 실행할 머신을 선택합니다.
  3. Happier 0.2.13부터 Codex CLI 0.131.0 이상과 함께 사용하면: 네이티브 Codex TUI와 Happier 앱이 같은 App Server 스레드에 연결됩니다. 터미널에서 입력하면서 휴대폰에서 승인할 수 있고, 둘 다 같은 세션에서 실시간으로 동작합니다.
  4. 휴대폰에서: 트랜스크립트를 따라가고, 후속 지시를 보내고, 승인을 처리하고, diff를 검토합니다.
  5. 언제든 happier attach <session-id>로 터미널로 전환할 수 있습니다. 세션은 계속 공유됩니다 (App Server를 쓰는 macOS / Linux).

Happier를 거치지 않고 codex로 직접 시작한 Codex 스레드는 실행 중에 Happier가 참여할 수 없습니다. Codex는 스레드당 활성 작성자를 하나로 제한하기 때문입니다.

문제

Codex는 작업 자체는 잘합니다.

번거로운 것은 그 주변입니다.

  • "세션이 어디서 실행되고 있지?"
  • "노트북 앞에 없을 때 어떻게 계속 진행시키지?"
  • "세션을 분기시키지 않고 터미널로 돌아가려면?"

인증: Codex 로그인을 문제없이 하기

Codex는 머신별 인증을 다음 위치에서 관리할 수 있습니다.

  • Settings → AI provider settings → Codex

여기서 할 수 있는 일:

  • 선택한 머신에서 Codex에 로그인되어 있는지 확인
  • Happier가 CLI 로그인과 OPENAI_API_KEY 중 무엇을 감지했는지 확인
  • Happier 안에서 바로 codex login 열기

Happier의 연결된 서비스로 인증할 수도 있습니다.

  • 구독 인증 (디바이스 / 붙여넣기 흐름)
  • 또는 API 키

CLI 예시:

happier connect codex --device
happier connect codex --paste
happier connect codex --api-key

백엔드: Codex에서 헷갈리기 쉬운 부분

이건 알아둘 만한 Codex 고유의 미묘한 점입니다.

Happier에서 Codex는 여러 백엔드로 실행할 수 있습니다.

  • Codex App Server (기본값): 재개 가능성과 앱 중심 워크플로를 중요하게 생각한다면 추천하는 방법입니다.
  • Codex ACP: 명시적으로 선택했을 때 쓰는 대체 경로입니다.
  • Codex MCP: 새 세션에는 괜찮지만, 일반적인 벤더 재개 경로는 아닙니다.

실제로 중요한 동작은 두 가지입니다.

  1. 새 세션에서는 Happier가 기본으로 App Server를 사용하고, 사용할 수 없을 때 조용히 다른 방식으로 대체하지 않습니다.
  2. 재개에서는 Happier가 엄격합니다. 조용히 새 세션을 시작하는 대신 오류를 냅니다.

이 두 규칙을 이해하면, 휴대폰에서 Codex를 쓰는 게 더 이상 "제멋대로"라고 느껴지지 않습니다.

Happier를 처음 사용한다면 (무엇이고 어디서 받는지)

Happier는 Claude Code, Codex, OpenCode 같은 AI 코딩 에이전트를 위한 오픈 소스 컴패니언 앱(모바일 / 웹 / 데스크톱)입니다.

여기서의 워크플로는, Codex는 작업 공간이 있는 머신에서 계속 실행되고, 휴대폰의 Happier에서 모니터링, 지시, 승인, 검토를 하는 것입니다.

이 가이드 기준으로는, SSH에 붙어 있지 않고도 Codex의 "세션 감독" 부분(후속 지시, 승인, diff 검토)을 처리할 수 있다는 뜻입니다.

시작하기:

휴대폰 워크플로: Codex 세션을 시작하고 계속 진행시키기

1) 휴대폰에서 세션 시작하기

휴대폰(앱 또는 모바일 웹 UI)에서:

  • 새 세션 만들기
  • Codex 선택
  • 실행할 머신 선택
  • 작업 보내기

2) 휴대폰으로 감독 루프 돌리기

휴대폰에서 할 수 있는 일:

  • 트랜스크립트에서 진행 상황 읽기
  • 후속 지시 보내기 ("잠깐 멈추고 무엇을 바꿨는지 설명해 줘", "이 파일들만 수정해 줘")
  • 모드에 따라 권한 프롬프트 처리
  • 커밋 전에 diff 검토

3) 터미널과 휴대폰 사이 전환하기 (둘 다 실시간 유지)

Happier 0.2.13부터, macOS / Linux에서 Codex CLI 0.131.0 이상과 함께 사용할 때:

Happier로 Codex 세션을 시작하면, 네이티브 Codex TUI와 Happier 앱이 같은 실행 중인 App Server 스레드에 연결됩니다. 양쪽이 동시에 실시간으로 유지됩니다.

  • SSH로 TUI에서 프롬프트 입력 → 휴대폰 앱에 표시됨
  • 휴대폰에서 명령 승인 → TUI가 계속 진행
  • happier attach <session-id>로 휴대폰에서 시작한 세션의 TUI를 열 수 있음

이것은 인계가 아니라 공유 제어입니다. 화면을 바꿔도 세션은 멈추지 않습니다.

제한:

  • 공유 제어는 Happier로 시작한 세션에만 적용됩니다. codex로 직접 시작한 스레드는 실행 중에 Happier가 참여할 수 없습니다 (Codex는 스레드당 활성 작성자를 하나로 제한합니다).
  • Windows, ACP 모드, 또는 오래된 Codex CLI에서는 제어가 배타적입니다. 휴대폰에서 보낸 메시지는 터미널 쪽 턴이 안전한 지점에 도달할 때까지 기다립니다.
  • 세션을 실행하는 머신은 온라인이어야 합니다. 오프라인 머신이나 프로바이더 장애는 Happier가 해결할 수 없습니다.

세션을 소유한 머신의 노트북이나 터미널로 돌아왔다면:

happier attach <session-id>

비활성 Codex 세션 재개하기 (무엇을 기대할 수 있는지)

Happier에서 Codex 재개는 보통 기본 App Server 경로를 사용합니다.

비활성 Codex 세션은 다음 조건에서 재개할 수 있습니다.

  • 세션에 유효한 Codex 재개 메타데이터가 있음
  • 현재 백엔드와 머신 조합이 재개를 지원함 (기본은 App Server, 명시적으로 선택하면 ACP)
  • 선택한 재개 경로에 필요한 머신 의존성이 이미 설치되어 있음

CLI에서:

happier resume
# 또는
happier resume <session-id>

휴대폰 / 앱 / 웹에서:

  • 비활성 세션은 재개 가능할 때만 입력을 받습니다
  • 메시지를 보내면 먼저 재개가 실행됩니다

권한과 모드 (짧은 버전)

프롬프트 때문에 자주 막힌다면:

  • Default로 시작하세요
  • 중단을 줄이려면 Safe YOLO를 써보세요
  • YOLO는 의도적으로 쓰고, 나중에 diff를 검토하세요

문제 해결

증상: Codex 세션이 재개되지 않음

가능한 원인:

  • 세션이 벤더 재개를 지원하지 않는 백엔드 경로에 있음 (일반 MCP를 강제했다면 흔함)
  • 선택한 경로에 필요한 의존성이 설치되어 있지 않음

해결:

  • 재개 가능한 세션에는 기본 App Server 경로를 사용합니다
  • 머신에서 Codex를 인증된 상태로 준비해 둡니다

증상: 터미널에서 attach할 수 없음

가능한 원인:

  • 세션을 소유한 머신이 아닌 다른 머신에서 작업 중
  • attach 동작은 OS마다 다름 (Linux / macOS는 tmux, Windows는 다른 호스트 모드 사용)

해결:

  • 세션을 소유한 머신에서 attach를 실행합니다

자주 묻는 질문

Codex의 연속성은 Claude만큼 안정적인가요?

잘 동작할 수 있지만, 문서에는 일부 경로에서 Codex의 인계와 연속성이 Claude / OpenCode보다 아직 덜 성숙하다고 명시되어 있습니다.

현재 머신 간 인계를 안정적으로 하고 싶다면 Claude / OpenCode를 선택하세요. Codex를 쓰려면 사용하는 머신에 인증과 의존성을 준비해 두세요.

관련 가이드

mobilecodexsessionsworkflows
마지막 업데이트: 2026-10-26