
ChatGPTデスクトップアプリをUbuntuに入れたら、Codex CLIは消していいのか
OpenAIがChatGPTデスクトップアプリのLinux版を公開しました。Ubuntu 26.04に入れて確かめたところ、アプリの中のCodexとターミナル用のCodex CLIは実行ファイルが完全に別で、片方を消すことはできませんでした。ただし設定・ログイン・作業履歴は同じ場所を共用しています。
目次
OpenAIがChatGPTデスクトップアプリのLinux版を公開しました。Ubuntu 26.04に入れて確かめたところ、アプリの中のCodexとターミナル用のCodex CLIは実行ファイルが完全に別で、片方を消すことはできませんでした。ただし設定・ログイン・作業履歴は同じ場所を共用しています。
OpenAIが2026年8月11日に、ChatGPTのデスクトップアプリをLinux向けに公開しました。長らくmacOSとWindowsだけだったので、Ubuntuを使っている身としては待っていた発表です。ただ、実際に入れてみて最初に引っかかったのは手順ではなく、その次でした。私はもともとターミナルでcodexコマンドを使っていて、このアプリにもCodexが入っています。だとすると、前から入れていたほうはもう消していいのか。この記事は、その疑問を自分の環境で確かめた記録です。
私の環境
確かめた環境は次の通りです。アプリを入れる前から、ターミナル用のCodexが入っている状態でした。
- ・OS: Ubuntu 26.04 LTS(デスクトップ環境はGNOME)
- ・CPUの種類: x64(
amd64) - ・画面表示の方式: Wayland(後で効いてきます)
- ・導入済み: ターミナル用のCodex(
@openai/codex0.148.0)をnpmで導入済み
入れる手順そのものは、詰まるところがない

公式が案内している手順は、パッケージを1つ落としてaptで入れるだけです。対応しているのはUbuntu 24.04 LTSと26.04 LTS、Debian 13、Fedora 43と44。それぞれx64とARM64の両方が用意されています。自分がどちらか分からないときはuname -mを実行して、x86_64ならx64、aarch64ならARM64です。
cd ~/Downloads
sudo apt install ./chatgpt_amd64.deb私の環境ではダウンロードが386MB、展開後に使う容量が約1.2GBでした。中身がブラウザを丸ごと抱えた作り(Electron)なので、この大きさになります。終わったらアプリ一覧から起動するか、ターミナルでchatgptと打てば立ち上がります。
意識しておきたいのは、この1回のインストールで、OpenAIの配布元が自分のマシンに登録されることです。/etc/apt/sources.list.d/chatgpt.sourcesというファイルが作られ、署名を確かめるための鍵も一緒に置かれます。以降の更新は、他のソフトの更新と同じ流れで降ってきます。
### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# Remove it to opt out of automatic package updates.
X-Repolib-Name: ChatGPT
Types: deb
URIs: https://persistent.oaistatic.com/codex-app-prod/linux/deb
Suites: stable
Components: main
Architectures: amd64
Signed-By: /usr/share/keyrings/chatgpt-archive-keyring.gpgファイルの1行目に「これを消せば自動更新から抜けられる」と書いてあるのが親切です。勝手に更新元が増えるのが気になる人は、ここを消せば止まります。
Codex CLIは消していいのか
私が引っかかったのはここです。アプリの説明にはCodexが使えると書いてあり、実際に中にもCodexが入っています。だったらターミナル用のほうは重複なので消していいのでは、と考えました。
消してはいけませんでした。調べると、両者はブランドとしては同じCodexですが、実体は別々のプログラムです。
インストールされた.debが何を置いたのかを一覧すると、コマンドとして使える場所(PATHが通った場所)に置かれたのはchatgptただ1つでした。
$ dpkg -L chatgpt | grep '^/usr/bin/'
/usr/bin/chatgptつまり、アプリを入れてもターミナルのcodexコマンドは生えません。ターミナルでCodexを使い続けたいなら、これまで通りnpmで入れたほうが必要です。
実行ファイルはそれぞれどこにあるのか
では、アプリの中のCodexはどこにいるのか。アプリ専用の置き場にいました。
- ・アプリの中:
/usr/lib/chatgpt/resources/codex(238MBの実行ファイルが1つ) - ・ターミナル用:
~/.nvm/versions/node/v22.22.1/bin/codex(npmで入れたもの。実体は約296MB)
アプリ側のほうはPATHが通っていない場所にあるので、ターミナルからcodexと打っても呼ばれません。2つのプログラムが同じマシンに並んで置かれていて、互いに干渉しないという状態です。
ただし設定・ログイン・作業履歴は共有される
ここが今回いちばんの発見でした。実行ファイルは別なのに、読み書きする場所は同じです。
Codexは設定やログイン情報をCODEX_HOMEという場所にまとめています。これを指定していなければ~/.codexが使われます。アプリに入っているほうを直接動かして確かめると、こう返りました。
$ /usr/lib/chatgpt/resources/codex login status
Logged in using ChatGPTこのログインは、私がターミナル用のCodexで済ませたものです。アプリ側には一度もログインしていません。アプリの中のCodexが、ターミナル用が保存したログイン情報をそのまま読んでいることになります。新しいマシンで両方入れる場合、ログインは片方で1回やれば足りるはずです。
同じ理屈で、設定ファイル(config.toml)、自分で足した拡張(スキル)、そして過去のやり取りの履歴も同じ場所を見に行きます。私の~/.codexは1.4GBあり、そのうち履歴が882MBを占めていました。
整理すると、プログラムは2つあるが、読み書きする場所は1つを共用しているという形です。片方のプログラムを消してもこの場所は残りますが、この場所を消すと両方が動かなくなります。
バージョンがズレる。しかも片方は開発中の版だった
共用しているとなると、次に気になるのは中身の世代差です。両方のバージョンを見比べると、これが揃っていませんでした。
$ codex --version
codex-cli 0.148.0
$ /usr/lib/chatgpt/resources/codex --version
codex-cli 0.148.0-alpha.15番号は同じ0.148.0ですが、アプリに同梱されているほうにはalphaが付いています。これは正式版の手前、まだ開発中の版という意味です。
更新の経路も別々です。ターミナル用はnpmで、アプリ側はaptで上がります。放っておくと世代差は開いたり縮んだりします。
私が気にしているのは、共用している~/.codexの中に、履歴を収めたデータベースのファイルが複数あることです。開発中の版が先にファイルの形を新しく書き換えた場合、正式版のほうが読めなくなる可能性がないとは言えません。今のところ実際に壊れてはいませんが、アプリを使い始めたあとにターミナルのCodexが妙な動きをしたら、まずここを疑うのがよさそうです。履歴が仕事の記録を兼ねている人は、アプリの初回起動前に~/.codexを丸ごと控えておくと安心です。
Waylandだと、既定では素のWaylandで動いていない

もう1つ、Ubuntuで使う人に関わる話が公式ドキュメントに書かれています。画面を表示する仕組みの話です。
Ubuntuの最近の版は、画面表示にWaylandという新しい方式を既定で使っています。私の環境も確認するとWaylandでした。ところが公式は、このアプリのWayland対応はまだ実験段階で、Waylandの環境では利用できるならXWayland(古い方式で動くプログラムをWayland上で動かすための仕組み)を通して動く、と説明しています。
素のWaylandで動かしたい場合は、アプリを完全に終了してからターミナルでこう起動します。
chatgpt --ozone-platform=waylandただし公式は同じ場所で、素のWaylandにすると「浮かせて表示する小窓、ウィンドウの位置、フォーカスの移動、キーボードショートカット」あたりが完全には動かないことがある、と断っています。困っていないなら既定のままにしておくのが無難です。
なお、そもそもWaylandとは何なのか、X11と何が違うのか、自分の環境がどちらで動いているかの確かめ方は、Waylandとは何か。GNOMEやKDEの仲間ではなく、一段下の土台だったに詳しくまとめました。この記事で使ったxlsclientsというコマンドを使うと、ChatGPTアプリが実際にXWaylandを通って動いていることを手元で確認できます。
合わせて、機能面の制限も明記されています。画面を見て操作を代行する機能(Computer Use)は、macOSとWindowsでは使えますが、Linuxのプレビュー版にはまだ入っていません。将来の更新で追加すると書かれています。macOSで使っていた人が同じつもりで移ると、ここで足りないと感じるはずです。
結局どう使い分けるか
数日使ってみて、私の中の整理はこうなりました。
- ・デスクトップアプリ: 画面を見ながら相談したいとき。ブラウザのタブに埋もれないのが利点
- ・ターミナル用のCodex: 自動化に組み込むとき。他のスクリプトから呼び出せるのはこちらだけ
私の場合、月末の作業報告をターミナル用のCodexが残した履歴から組み立てているので、こちらを消すという選択はそもそもありませんでした。同じように何かの仕組みに組み込んでいる人は、アプリが来ても手を出さないほうがいいです。
新しいマシンを用意するときの手順としては、npmでターミナル用を入れ、.debでアプリを入れ、ログインはどちらかで1回。以降の更新はnpmとaptで別々に面倒を見る、という形になります。
最後に念のため。このLinux版はOpenAI自身がプレビュー(先行公開)と位置づけていて、公式ドキュメントにも正式対応ではない旨が書かれています。仕事の本筋をこれ1つに預けるのは、もう少し版が進んでからでいいと思います。

堀川 慎
Backend Engineer / AWS / Django / Go
