ChatGPT AppなしでCodex CLIのみでリモートコントロールを有効化する方法

Codexのリモートコントロールを使うと、外出先からでもスマホで自宅のPCのCodexに指示を送信できるため非常に便利です。リモートコントロールを使うには、基本的にPC側でChatGPT Appを起動しておく必要があります。
ChatGPT Appの全体的な品質は素晴らしいのですが、アプリを開いたりプロジェクトを起動したりした直後にPC全体の応答性が著しく低下するという問題があり、筆者はChatGPT Appをアンインストールしてしまいました。
実は隠しフラグを使用することで、ChatGPT AppをインストールしていなくてもCodex CLIのみでリモートコントロールを起動できます。
Codex CLIからリモートコントロールを起動するコマンド
Codex CLIからリモートコントロールを起動するには、次のコマンドを実行します。
codex app-server --listen offこのコマンドは終了せず、リモートコントロールを利用したい間はコマンドを実行したターミナルを起動したままにしておいてください。これで、PCのChatGPT AppがなくてもスマホのChatGPTアプリからリモートコントロールで遠隔操作できるようになります。
なお、一部の記事ではcodex remote-controlでリモートコントロールを起動できると書かれていることがありますが、こちらのコマンドはWindows環境でエラーになりました。
$ codex remote-controlStarting app-server daemon with remote control enabled...Error: codex app-server daemon lifecycle is only supported on Unix platformsCodex CLIのみでペアリングしたい場合
前述のリモートコントロールを起動するコマンドを利用するには、ChatGPT Appでリモートコントロールのペアリングを済ませている必要があります。
CLIからはcodex remote-control pairでペアリングできるのですが、こちらもやはりWindows環境では壊れており、「Error: codex app-server daemon lifecycle is only supported on Unix platforms」というエラーになります。
Windows環境でペアリングするには、次のコマンドを実行します。
codex app-server --listen ws://127.0.0.1:8765そのコマンドを実行した状態のまま別のターミナルから次のコマンドを実行します。
$ws = [Net.WebSockets.ClientWebSocket]::new()$ct = [Threading.CancellationToken]::None$ws.ConnectAsync([Uri]"ws://127.0.0.1:8765", $ct).GetAwaiter().GetResult()
function Send-Json($obj) { $bytes = [Text.Encoding]::UTF8.GetBytes( ($obj | ConvertTo-Json -Depth 10 -Compress) ) $ws.SendAsync( [ArraySegment[byte]]::new($bytes), [Net.WebSockets.WebSocketMessageType]::Text, $true, $ct ).GetAwaiter().GetResult()}
function Receive-Json { $buffer = New-Object byte[] 65536 $ms = [IO.MemoryStream]::new()
do { $r = $ws.ReceiveAsync( [ArraySegment[byte]]::new($buffer), $ct ).GetAwaiter().GetResult()
if ($r.MessageType -eq [Net.WebSockets.WebSocketMessageType]::Close) { throw "WebSocket closed" }
$ms.Write($buffer, 0, $r.Count) } until ($r.EndOfMessage)
[Text.Encoding]::UTF8.GetString($ms.ToArray()) | ConvertFrom-Json}
function Wait-Response($id) { do { $r = Receive-Json } until ($r.id -eq $id)
if ($r.error) { throw $r.error.message }
$r.result}
Send-Json @{ method = "initialize" id = 1 params = @{ clientInfo = @{ name = "codex_remote_pair" title = "Codex Remote Pair" version = "1.0" } capabilities = @{ experimentalApi = $true } }}
$null = Wait-Response 1
Send-Json @{ method = "initialized" params = @{}}
# 永続的にRemote Controlを有効化Send-Json @{ method = "remoteControl/enable" id = 2 params = @{}}
$null = Wait-Response 2
# ペアリングコードを発行Send-Json @{ method = "remoteControl/pairing/start" id = 3 params = @{ manualCode = $true }}
(Wait-Response 3).manualPairingCode
$ws.Dispose()ペアリングコードが出力されるので、スマホのChatGPTのペアリング画面で「手動でペアリング」からペアリングコードを入力するとペアリングできます。codex app-server --listen ws://127.0.0.1:8765を終了してcodex app-server --listen offを実行するとスマホから接続できるようになります。
この記事の検証内容
検証環境
- OS:Windows 11
- Codex CLIバージョン0.147.0
検証内容
Windows環境においてcodex remote-controlがエラーになり、codex app-server --remote-control --listen offでは問題なくリモートコントロールを起動できることを確認
最終検証日
更新履歴
- 2026年8月19日午前3時56分:初版公開
- 2026年8月25日午前2時50分:初版で記載していたコマンドが不安定だったため、より安定したコマンドに変更
記事をシェア
フォローして最新情報を入手
Googleの優先ソースに追加すると、このサイトの記事をGoogleで見つけやすくなります。また、ぜひXやRSSフィードもフォローしてください。
次の記事
-1.png&w=1080&q=75)
生まれた時から、母国語よりも先にJavaScriptを使っていました。ネットの海のどこにもいなくてどこにでもいます。
Webフロントエンドプログラマーとして、TypeScriptを用いたWebアプリやブラウザー拡張機能を制作。Xのシャドウバン検知ツール「Shadowban Scanner」やリンクカード復活ツール「Restore Link Card」を公開し、国内外のメディアで紹介されました。iGEM 2023ではJapan-UnitedチームのWikiを制作してGrand Prizeの獲得に貢献。ブログではXやSNSの最新ニュース、不具合の検証と対処法、フロントエンド開発の知見を発信しています。


![画面中央に[Codex]というテキストが配置されており、その下に[Sign in with ChatGPT]というボタンが表示されている画像](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fcodex-sign-in-with-chatgpt.png&w=1920&q=75)

![Slackのスレッド画面のスクリーンショット。左上にウィンドウ、中央にスレッドと返信、下部にメッセージ入力欄。チャンネルは[#codex-docs]](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fcodex-in-slack.png&w=3840&q=75)

![[新しいXチャットへようこそ]というテキストが画面に大きく表示されており、その下には次の3つの説明が表示されている。[エンドツーエンドの暗号化:メッセージは、端末にかかわらずエンドツーエンドで暗号化されています。][最先端のプライバシー:Xを含め、他の人がメッセージを読むことはできません。][パスコードを設定:メッセージを保護するため、4桁のパスコードを設定してください。]これらの説明の下には、[パスコードを作成]という大きなボタンが配置されている](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fwelcome-to-new-chat.png&w=1920&q=75)

![Xのブックマーク画面に複数のフォルダーが表示されている画像。フォルダーの名前はそれぞれ[すべてのブックマーク][イラスト][面白い投稿]となっている](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fimage-1378.png&w=1920&q=75)

