> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nomo.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# Codex 사용하기

> 세션은 Codex에서도 동작하지만 Claude Code와 완전히 같지는 않습니다. 휴대폰에서 할 수 있는 것과 할 수 없는 것, 그리고 그 이유.

Codex 세션도 같은 목록에, 같은 Dynamic Island에, 같은 페어링 위에 나타납니다.
다만 Codex와 Claude Code가 플러그인에 열어 주는 것이 서로 다르기 때문에 Codex
쪽에서는 몇 가지 선택지가 빠집니다.

Nomo의 원칙은 언제나 같습니다. Mac이 지킬 수 없는 버튼은 내놓지 않습니다. 그래서
조용히 실패하는 컨트롤 대신, 다른 컨트롤이나 "Mac에서 하십시오"라는 솔직한 안내를
보게 됩니다.

<Note>
  Codex 전용 페어링은 없습니다. 두 에이전트가 그 컴퓨터의 같은 설정을 읽으므로,
  [컴퓨터를 한 번](/ko/setup/pairing) 페어링하면 됩니다. 통신에서 유일한 차이는
  어느 에이전트였는지를 나타내는 레이블뿐입니다.
</Note>

<h2 id="what-works-the-same">
  동일하게 동작하는 것
</h2>

* 세션, 상태, 폴더, 그리고 Dynamic Island.
* 셸 명령, 패치, MCP 도구에 대한 권한 요청 — Dynamic Island나 앱에서 **허용**과
  **거부**.
* 이유나 대신 할 일을 알려 주는 **메모와 함께 거부…**.
* 계획 읽기.

<h2 id="no-always-allow">
  ‘항상 허용’ 미지원
</h2>

Claude Code에서는 세션이 끝날 때까지 도구를 허용해 둘 수 있습니다. Codex는 Nomo가
그런 규칙을 결정에 붙이면 결정 전체를 거부하므로, 이 항목은 표시되지 않습니다.
버려지는 **거부**는 버튼 하나가 없는 것보다 훨씬 나쁘기 때문입니다.

허용은 평소처럼 동작합니다. 다음번에 다시 물어볼 뿐입니다.

<h2 id="plans-are-read-only">
  계획은 읽기 전용
</h2>

Codex의 "이 계획을 실행할까요?" 요청은 Codex 자체 터미널 UI 안에 있습니다.
플러그인에는 아예 도달하지 않으므로, Nomo가 붙잡을 것도 없고 사용자의 탭이 해결할
것도 없습니다.

그래서 Nomo는 계획을 보여 주고 — Codex가 계획을 진행하면서 기록하기 때문에 열
때마다 최신 내용으로 갱신됩니다 — `Mac 터미널에서 선택하세요`라고 안내합니다.
휴대폰이 로컬 네트워크로 Mac에 닿을 수 있으면 **Mac에서 열기**가 그 터미널 창을
앞으로 가져옵니다.

<Frame caption="읽기 전용 계획 화면. 읽을 것은 모두 있고, 결정이 어디에서 이뤄지는지는 아래쪽이 솔직하게 알려 줍니다.">
  <div className="device-frame">
    <img src="https://mintcdn.com/nomo-ba73b2e6/tvqjCmRnpqBaYpOW/images/view-plan-drawer.png?fit=max&auto=format&n=tvqjCmRnpqBaYpOW&q=85&s=8bb91265128066d756acac01e3cd0f35" alt="휴대폰에 전체 화면으로 표시된 계획. 아래쪽에 Mac 터미널에서 선택하세요라고 적혀 있다" width="1206" height="2622" data-path="images/view-plan-drawer.png" />
  </div>
</Frame>

<h2 id="questions-in-the-cli-and-the-desktop-app">
  CLI 및 데스크톱 앱의 질문
</h2>

Codex의 질문에 휴대폰에서 답하려면 Codex 작업과 Nomo의 워치독이 하나의
`app-server` 프로세스를 공유해야 합니다.

<Tabs>
  <Tab title="Codex CLI" icon="terminal">
    Codex를 시작하기 **전에** 공유 `app-server`를 먼저 시작합니다.

    ```bash theme={null}
    codex app-server daemon start
    ```

    그런 다음 확인합니다.

    ```bash theme={null}
    $nomo-status
    ```

    `Codex Plan answers: bridge available`이면 준비가 끝난 것입니다. 질문이
    선택지와 함께 휴대폰에 도달하고, 하나를 탭하면 됩니다.

    `Codex Plan answers: status-only`는 아무것도 대기하고 있지 않다는 뜻입니다.
    데몬을 먼저 시작한 다음 Codex를 시작하십시오. 순서가 중요합니다. 먼저 열린
    세션은 데몬을 잡지 못합니다.
  </Tab>

  <Tab title="Codex 데스크톱 앱" icon="window">
    **데스크톱 앱 세션의 질문은 휴대폰에서 답할 수 없습니다.**

    위의 데몬은 무엇이든 붙을 수 있는 공유 소켓에서 대기합니다. 데스크톱 앱은
    그것을 쓰지 않고 작업마다 전용 `app-server`를 띄우므로, 붙을 소켓 자체가
    없습니다. 이를 바꾸는 플래그나 설정은 없으며, 그래서 무엇을 먼저 시작하든
    `$nomo-status`는 계속 `status-only`라고 표시합니다.

    나머지는 평소대로 동작합니다. 세션이 표시되고, 명령과 패치에 대한 권한
    요청은 휴대폰에서 답할 수 있으며, 계획도 읽을 수 있습니다. 질문도 표시됩니다
    — 다만 휴대폰으로 읽고 답은 앱에서 할 뿐입니다.
  </Tab>
</Tabs>

어느 쪽이든 세션 자체는 휴대폰에 도달합니다. 브리지가 없으면 `도움 필요`와
`Mac에서 답변`이 표시됩니다. 질문은 읽을 수 있지만 탭할 선택지가 없을 뿐이고,
답은 Codex에서 합니다.

<h2 id="hooks-have-to-be-trusted">
  Hook 신뢰 설정
</h2>

Codex에는 자체 안전장치가 있습니다. 플러그인 Hook은 설치되지만 **신뢰하기 전까지
동작하지 않습니다**. `/hooks`를 실행해 Nomo 항목 일곱 개를 신뢰하십시오.
[설치](/ko/setup/install)에 설명이 있습니다.

사람들이 걸리는 지점은 이렇습니다. 휴대폰에서 Codex 승인을 처리하는 기능이 추가된
버전으로 업데이트하면 **새로운** Hook이 하나 생기므로 Codex가 검토를 다시
엽니다. 그것을 신뢰하기 전까지 Codex 승인은 조용히 터미널로 되돌아가며 오류도
표시되지 않습니다. 업데이트 후 Codex 요청이 휴대폰에 오지 않는다면 `/hooks`부터
실행하십시오.

`$nomo-status`가 Hook 신뢰 상태를 보고하므로, 이 단계가 실제로 적용되었는지는
그것으로 확인합니다.

<h2 id="prompts-that-never-reach-you">
  휴대폰에 도달하지 않는 요청
</h2>

Codex 차례가 자동 검토나 전체 접근 모드로 실행되는 동안에는, Hook이 Nomo가
무언가를 보내기 전에 제어권을 곧바로 Codex에 돌려줍니다. 이는 올바른 동작입니다 —
묻지 말라고 Codex에 지시했기 때문입니다. 다만 그만큼 요청이 휴대폰에도 나타나지
않습니다.

또한 Codex에는 Claude Code의 알림 Hook에 해당하는 것이 없어서, "지금 사용자를
찾고 있다"는 알림이 Claude Code 세션보다 조금 적습니다.

<h2 id="version-floor">
  최소 버전
</h2>

Codex **0.142 이상**이 필요합니다. 그 이전 버전에는 Nomo가 설치될 플러그인 체계가
없습니다.
