オフラインでも使える!OpenAI Codex CLI + LM Studio でローカルコーディングエージェント環境をセットアップしてみた
はじめに
最近OpenAIのCodex CLIを使い始めました。
直近では頻繁にアップデートが行われており、注目を集めています。
Codex CLIの魅力の1つとして、複数のモデル・プロバイダーを使用できることが挙げられます。
今回はオフラインでの動作を実現するために、LM Studioと組み合わせて環境をセットアップしてみたいと思います。
LM Studioのインストール
公式サイトもしくはHomebrew経由でLM Studioをインストールします。
公式サイトの場合
以下のページから最新版をダウンロード。
Homebrewの場合
以下のコマンドでインストール可能です。
# Homebrew
brew install --cask lm-studio
インストールが完了したらPower User
モードで起動しておきます。
モデルのダウンロード
探索タブからモデル名を検索し、任意のモデルをダウンロードします。
今回はgpt-oss-20b
を使用します。
ダウンロードが完了したらUse in New Chat
からチャット機能を利用して動作確認を行います。
問題なく応答があれば動作確認は完了です。
Codexの設定
続けてCodex CLIの設定を行います。
以下のような形でプロバイダーとモデルを指定します。
profile = "gpt-oss-20b"
[model_providers.lmstudio]
name = "LMStudio"
base_url = "http://127.0.0.1:1234/v1"
[profiles.gpt-oss-20b]
model = "openai/gpt-oss-20b"
model_provider = "lmstudio"
コンテキスト長の変更
gpt-oss-20b
はデフォルトでコンテキスト長が4096
に設定されており、Codex CLIからの呼び出しに以下のエラーが発生します。
2025-09-01 13:40:43 [ERROR] The number of tokens to keep from the initial prompt is greater than the context length. Try to load the model with a larger context length, or provide a shorter input. Error Data: n/a, Additional Data: n/a
上記エラーを回避するためにコンテキスト長を8192
に変更します。
開発者タブからモデル選択後、右サイドメニューのLoad
からコンテキスト長の変更が可能で再読み込みをすると反映されます。
最後にStatusをRunning
に変更しローカルサーバーを起動すれば準備完了です。
オフラインでの動作確認
Pingコマンドを実行してネットワークに接続されていないことを確認します。
ping -c 5 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
ping: sendto: No route to host
Request timeout for icmp_seq 0
ping: sendto: No route to host
Request timeout for icmp_seq 1
ping: sendto: No route to host
Request timeout for icmp_seq 2
ping: sendto: No route to host
Request timeout for icmp_seq 3
--- 8.8.8.8 ping statistics ---
5 packets transmitted, 0 packets received, 100.0% packet loss
この状態でCodex CLIを呼び出してみます。
codex "あなたは何というモデルですか?"
>_ You are using OpenAI Codex in ~/codex-lm-studio
To get started, describe a task or try one of these commands:
/init - create an AGENTS.md file with instructions for Codex
/status - show current session configuration and token usage
/approvals - choose what Codex can do without approval
/model - choose what model and reasoning effort to use
user
あなたは何というモデルですか?
codex
I’m ChatGPT, a large language model trained by OpenAI.
▌ Explain this codebase
オフライン状態でも無事動作することが確認できました。
まとめ
今回はOpenAI Codex CLIとLM Studioopenai/gpt-oss-20b
を組み合わせてオフラインでも動作するCoding Agent環境をセットアップしてみました。
実際のコーディング時にはWeb検索やMCP連携機能を多用することになると思うので出せるパフォーマンスには限界がありますが、今後もオープンウェイトモデルの性能は向上するはずなのでこれからに期待ですね。
どなたかの参考になれば幸いです。