セルフホスト型サービス
Emanuele-web04/remodex avatar
Emanuele-web04/remodex

RemodexでMac上のCodexをiPhoneから操作する

このプロジェクトは「Remote Control for Codex. Remodex is a local-first open-source bridge + iOS app that keeps the Codex runtime on your Mac and lets your phone connect through a paired secure session.」を基盤として、実践的に使えるオープンソース実装を提供し、再利用可能なツールチェーンと統合手段を備えています。

スター 3,317フォーク 369SwiftApache-2.0

ひと目でわかる

これは何?
CodexランタイムをMacに残したまま、ペアリングしたiOSアプリから安全なセッション経由で指示と進捗を扱うローカルファーストの橋渡し。
誰に向いている?
Remodexは、Codex CLIを認証済みのMacで動かし、iPhoneから同じセッションを確認・操作したい人に向きます。まずMacで`codex login status`と`remodex up`を実行し、署名済みiOSアプリ内からQRを一度だけ読み取って、暗号化接続、ライブ出力、Git操作の権限をテストしてください。
商用利用できる?
できます。Apache-2.0 は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。最後のコミットは 1 日前です。
何の言語で書かれている?
主に Swift です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

ライブ状態と履歴の整合性を試す

Mac側でCodexの短い実行を開始し、iPhoneのライブストリーム、共有スレッド履歴、通知を照合します。Codex IPCが使えない場合にJSONL履歴へ戻る条件を確認し、bridge再起動後に同じスレッドが重複しないかを見ます。Git操作は変更のないブランチで行い、権限をFull accessへ上げる前にOn-Requestで確認します。relayの接続先とiOS側の信頼済み端末一覧を確認し、不要になったMacを解除できることも試験項目にします。QRを再発行した場合の旧端末の扱いも確認します。写真添付、実行完了通知、Macのスリープ復帰後の再接続を順に試します。QRペアリングを再実行した場合に以前の信頼情報がどう扱われるか、bridgeの再起動とiOSアプリの再起動を分けて記録します。Mac上のJSON-RPC応答とiPhone画面の時刻、スレッド名、実行状態を照合し、切断後の再送信を安全なテストで確認します。

信頼済みMacを解除できるか

テスト用のMacとリポジトリでQRペアリングを行い、iPhoneからPlan mode、実行中の追加入力、読み取り専用の確認を試します。trusted deviceを解除して再接続が拒否されること、Codexのログイン状態とRemodexの接続エラーが区別できることを確認します。

CodexをMacに置くiPhone向けブリッジ

Remodexは、Mac上のCodexランタイムを維持しながらiPhoneから操作するローカルファーストのオープンソースブリッジとiOSアプリです。READMEには、暗号化されたペアリングとチャット、Fast mode、Plan mode、サブエージェント、実行中の指示変更、追加プロンプトのキューが機能として挙げられています。

スマートフォンがCodexを直接実行する製品ではありません。iOSアプリ、Mac上の`remodex`ブリッジ、Codex app-serverがWebSocketとJSON-RPCで接続します。MacのローカルIPCが使える場合はCodex DesktopやVSCodeへライブ状態を伝え、JSONL履歴がフォールバックになります。

QRは初回の信頼関係を作るために読む

Macで`remodex up`を実行すると、初回ペアリングまたは復旧用のQRが表示されます。署名済みのRemodex iOSビルドを先にiPhoneへ入れ、アプリ内のオンボーディングからQRを読む流れです。一般のカメラやQRリーダーで先に読むと、ペアリングではなく文字列として検索される可能性があるとREADMEは警告しています。

初回ハンドシェイク後は、iPhoneがMacをtrusted deviceとして保存し、後続起動で自動再接続を試みます。QRは信頼関係が変わった場合やrelayがライブセッションを解決できない場合の復旧経路です。テストでは初回接続、アプリ再起動、relay不通、再ペアリングを順に確認します。

Node.jsとCodex CLIの認証を先に整える

ブリッジにはNode.js v18以上とPATH上のCodex CLIが必要です。MacのCodex CLIは認証済みで、`codex login status`が成功する状態をREADMEが前提にしています。Remodex自身がOpenAI資格情報を管理するわけではありません。

起動時に`Missing environment variable: CODEX_API_KEY`が出た場合、それはCodex CLI側の設定エラーです。`codex login`を実行してから`remodex restart`を試します。APIキー認証を意図的に使う場合もCodex自体へ設定し、live keyをlaunchd plistやrelay設定へ保存しない運用にします。

npmのグローバルブリッジとmacOS launchd

ブリッジは`npm install -g remodex@latest`で導入し、`remodex up`で起動します。macOSのメニューバーコンパニオンを使う場合、グローバルインストールがlogin-shellのPATHから見える必要があります。更新後にmacOSバックグラウンドサービスがあるなら`remodex restart`を実行し、保存されたNodeとCLIのパスを更新します。

macOSでは軽量なlaunchdサービスによるtrusted auto-reconnectが実装されています。LinuxやWindowsのself-hosted relayでもペアリングはできますが、現状はforeground bridgeです。OSごとの常駐方式を同じものと見なさず、スリープ復帰、ログイン前起動、手動停止後の再接続を個別に確認します。

iPhoneからGitと実行権限を扱う範囲

RemodexはiPhoneからcommit、push、pull、branch switchingなどのGit操作を行えるとREADMEにあります。Access controlsにはOn-RequestとFull accessがあり、写真添付、Reasoning controls、実行完了通知も備えます。便利な操作ほどMacのワークスペースと資格情報へ作用するため、権限モードを作業ごとに選びます。

テストでは変更のない一時リポジトリでbranch切り替え、差分確認、commitを行い、pushは専用リモートで試します。実行中のCodexへ指示を送ったとき、Mac側の履歴とiPhone側の表示が一致するかも照合します。READMEは初期プロジェクトでバグが予想され、現時点で積極的なコントリビューション受付をしていないと述べています。

Apache-2.0と自己ホストの境界

リポジトリのライセンスはApache-2.0です。Remodexは公開ホストへ依存するエンドポイントをiOSアプリへ埋め込まず、自分で構成を確認できるtransport layerを保つと説明しています。ただし、relay、iOS署名、Codexアカウント、Git資格情報の責任が消えるわけではありません。

採用前はMac、iPhone、relayの通信経路を固定し、QR、暗号化チャット、認証、ログ、Git権限の各項目を確認します。App Store版またはXcode 16以上でビルドした署名済みアプリを使い、公開リポジトリのSELF_HOSTING_MODEL.mdを読んで、macOSのdaemon経路と他OSのforeground経路を運用資料に分けます。

編集部の結論

Remodexは、Codex CLIを認証済みのMacで動かし、iPhoneから同じセッションを確認・操作したい人に向きます。まずMacで`codex login status`と`remodex up`を実行し、署名済みiOSアプリ内からQRを一度だけ読み取って、暗号化接続、ライブ出力、Git操作の権限をテストしてください。APIキーをplistやrelay設定へ置かず、macOS以外ではforeground bridgeになる制約を受け入れられる場合に検討します。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
コミュニティノート

コミュニティノート