ろぼいんブログ

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

ChatGPTのアプリが表示されたスマートフォンが机の上に置かれている写真

Codexのリモートコントロールを使うと、外出先からでもスマホで自宅のPCのCodexに指示を送信できるため非常に便利です。リモートコントロールを使うには、基本的にPC側でChatGPT Appを起動しておく必要があります。

ChatGPT Appの全体的な品質は素晴らしいのですが、アプリを開いたりプロジェクトを起動したりした直後にPC全体の応答性が著しく低下するという問題があり、筆者はChatGPT Appをアンインストールしてしまいました。

広告

実は隠しフラグを使用することで、ChatGPT AppをインストールしていなくてもCodex CLIのみでリモートコントロールを起動できます。

Codex CLIからリモートコントロールを起動するコマンド

Codex CLIからリモートコントロールを起動するには、次のコマンドを実行します。

Terminal window
codex app-server --remote-control --listen off

このコマンドは終了せず、リモートコントロールを利用したい間はコマンドを実行したターミナルを起動したままにしておいてください。これで、PCのChatGPT AppがなくてもスマホのChatGPTアプリからリモートコントロールで遠隔操作できるようになります。

なお、一部の記事ではcodex remote-controlでリモートコントロールを起動できると書かれていることがありますが、こちらのコマンドはWindows環境でエラーになりました。

Terminal window
$ codex remote-control
Starting app-server daemon with remote control enabled...
Error: codex app-server daemon lifecycle is only supported on Unix platforms

Codex CLIのみでペアリングしたい場合

前述のリモートコントロールを起動するコマンドを利用するには、ChatGPT Appでリモートコントロールのペアリングを済ませている必要があります。

広告

CLIからはcodex remote-control pairでペアリングできるのですが、こちらもやはりWindows環境では壊れており、「Error: codex app-server daemon lifecycle is only supported on Unix platforms」というエラーになります。

Windows環境では、次のコマンドをPowerShellで実行するとペアリングコードが発行されます。スマホのChatGPTのペアリング画面で「手動でペアリング」からペアリングコードを入力するとペアリングできます。

Terminal window
$psi = [Diagnostics.ProcessStartInfo]::new(
"cmd.exe",
'/d /s /c "codex app-server --remote-control"'
)
$psi.UseShellExecute = $false
$psi.RedirectStandardInput = $true
$psi.RedirectStandardOutput = $true
$p = [Diagnostics.Process]::Start($psi)
$p.StandardInput.WriteLine('{"id":1,"method":"initialize","params":{"clientInfo":{"name":"codex_remote_pair","title":"Codex Remote Pair","version":"1.0"},"capabilities":{"experimentalApi":true}}}')
do { $r = $p.StandardOutput.ReadLine() | ConvertFrom-Json } until ($r.id -eq 1)
$p.StandardInput.WriteLine('{"method":"initialized"}')
$p.StandardInput.WriteLine('{"id":2,"method":"remoteControl/pairing/start","params":{"manualCode":true}}')
$p.StandardInput.Flush()
do { $r = $p.StandardOutput.ReadLine() | ConvertFrom-Json } until ($r.id -eq 2)
$r.result.manualPairingCode
この記事の検証内容と情報源

検証環境

  • OS:Windows 11
  • Codex CLIバージョン0.147.0

検証内容

Windows環境においてcodex remote-controlがエラーになり、codex app-server --remote-control --listen offでは問題なくリモートコントロールを起動できることを確認

最終検証日

記事をシェア

フォローして最新情報を入手

Googleの優先ソースに追加すると、このサイトの記事をGoogleで見つけやすくなります。また、ぜひXやRSSフィードもフォローしてください。

Googleの優先ソースとして追加するGoogleの優先ソースとして追加する
著者のアイコン画像

生まれた時から、母国語よりも先にJavaScriptを使っていました。ネットの海のどこにもいなくてどこにでもいます。

Webフロントエンドプログラマーとして、TypeScriptを用いたWebアプリやブラウザー拡張機能を制作。Xのシャドウバン検知ツール「Shadowban Scanner」やリンクカード復活ツール「Restore Link Card」を公開し、国内外のメディアで紹介されました。iGEM 2023ではJapan-UnitedチームのWikiを制作してGrand Prizeの獲得に貢献。ブログではXやSNSの最新ニュース、不具合の検証と対処法、フロントエンド開発の知見を発信しています。