
Windows の ChatGPT デスクトップアプリを Amazon Bedrock Runtime に接続して利用する設定手順
はじめに
Windows の ChatGPT デスクトップアプリを Amazon Bedrock Runtime 経由で OpenAI のモデルを使いたいです。本記事で取り扱うの PC 側の設定だけです。
検証環境
構成は次の図のとおりです。この記事で扱うのは、Windows マシンへの ChatGPT デスクトップアプリのインストールと設定です。AWS 側の認証情報と権限は別途用意するとして、Windows マシンの設定をフォーカスをあてています。

Codex の Amazon Bedrock 向けプロバイダーは 2 つあります。Runtime 用の amazon-bedrock-runtime と、Mantle(bedrock-mantle エンドポイント)用の amazon-bedrock です。OpenAI の公式ドキュメントは、新しく設定する場合に Runtime を勧めています。そのため今回は Runtime を使います。
Amazon Bedrock の推論を呼び出せる IAM ユーザーが用意済みの状態から始めます。aws login を使うため、その IAM ユーザーには AWS 管理ポリシー SignInLocalDevelopmentAccess もアタッチしておきます。サインインに使うアカウント ID、ユーザー名、パスワードは管理者から受け取り、使ってよいモデルも確認しておきます。
| 項目 | 値 |
|---|---|
| OS | Windows 11 Enterprise(OS ビルド 26200.9711) |
| シェル | PowerShell |
| クライアント | ChatGPT デスクトップアプリ バージョン 26.1023.51421 |
| 接続先 | Amazon Bedrock Runtime |
| リクエストを送るリージョン | ap-northeast-1(東京) |
AWS CLI をインストール
AWS CLI は公式ドキュメントの Windows 向けの手順でインストールします。
aws login を使うには aws-cli/2.32.0 以降が必要です。インストール後に新しく開いた PowerShell でバージョンを確認します。
aws --version
古い場合は同じドキュメントの手順で更新してください。
AWS CLI でサインイン
aws login は、マネジメントコンソールと同じ方法でブラウザーからサインインするコマンドです。AWS CLI はサインイン後に一時的な認証情報を受け取ります。認証情報は自動で更新され、有効期間は最大 12 時間です。詳しい仕組みは次の記事を参照してください。
PowerShell で次のコマンドを実行します。
aws login
実行後の流れは次のとおりです。
- 初回はリージョンの入力を求められるので
ap-northeast-1と入力する - ブラウザーが開いたら「Continue」をクリックする
- IAM ユーザーの認証情報(アカウント ID、ユーザー名、パスワード)でサインインする。マネジメントコンソールにサインイン済みなら、使う認証情報を一覧から選ぶ
- ブラウザーに次の画面が表示されたらタブを閉じる

ChatGPT デスクトップアプリをインストール
ChatGPT デスクトップアプリは、OpenAI の公式ドキュメントの案内に沿ってインストールします。
Amazon Bedrock に接続する設定ファイルを作成
接続先、モデル、リージョンを書いた設定ファイル 2 つを作ります。この作業は最初に 1 回だけ実行すれば OK です。model の値は利用可能なモデルの ID にします。例では GPT-6.1 Sol を指定しています。次のコマンドを PowerShell にまとめて貼り付けて実行します。
New-Item -ItemType Directory -Force "$env:USERPROFILE\.codex" | Out-Null
[IO.File]::WriteAllText("$env:USERPROFILE\.codex\config.toml", @'
model_provider = "amazon-bedrock-runtime"
model = "global.openai.gpt-6.1-sol"
web_search = "disabled"
model_context_window = 1000000
model_auto_compact_token_limit = 900000
'@)
[IO.File]::WriteAllText("$env:USERPROFILE\.codex\.env", @'
export AWS_REGION=ap-northeast-1
'@)
作成したファイルの中身を Get-Content で表示して確認します。確認したいところは次の 2 つです。
model_providerにamazon-bedrock-runtimeが書いてあるか.envにexport AWS_REGION=ap-northeast-1が書いてあるか
Get-Content "$env:USERPROFILE\.codex\config.toml", "$env:USERPROFILE\.codex\.env"
各設定の意味は次のとおりです。
| 設定 | 値 | 意味 |
|---|---|---|
model_provider |
amazon-bedrock-runtime |
接続先 |
model |
global.openai.gpt-6.1-sol |
最初に使うモデル(任意) |
web_search |
disabled |
Web 検索の無効化 |
model_context_window |
1000000 |
コンテキストウィンドウ |
model_auto_compact_token_limit |
900000 |
会話を自動で圧縮するしきい値 |
AWS_REGION(.env) |
ap-northeast-1 |
リクエストを送るリージョン |
Bedrock Runtime ではホスト型の Web 検索を使えないため、web_search = "disabled" にしています。コンテキストウィンドウは GPT-6.1 Sol の 100 万トークンに合わせた値です。デスクトップアプリはシェルの環境変数を引き継がない場合があるため、リージョンは .env に書いて読み込ませます。
Desktop apps and IDE extensions may not inherit environment variables from the shell. Put required values in ~/.codex/.env, then restart the app or extension. On Windows, the default path is %USERPROFILE%.codex.env.
東京はリクエストの送信元のリージョンです。global. で始まるモデル ID(グローバルクロスリージョン推論)では、推論が東京以外のリージョンで処理されることもあります。
設定ファイルの場所
コマンド中の $env:USERPROFILE は C:\Users\(ユーザー名) のフォルダーです。トラブルシュートなどで直接ファイルを修正するときは、エクスプローラーでこのフォルダーの中の .codex を開きます。

config.toml と .env は .codex フォルダーの中にあります。

ChatGPT デスクトップアプリを起動して動作確認
ChatGPT デスクトップアプリをすでに起動していた場合は、タスクトレイの ChatGPT のアイコンを右クリックして「Exit」をクリックします。アイコンが見当たらない場合はタスクバーにある「^」みたいところをクリックして隠れているアプリを展開してみてください。
ChatGPT デスクトップアプリを起動すると、OpenAI へのサインインなどを求められずにチャット画面が開きます。

チャット画面からテストメッセージを送り、応答が返ってくれば設定は完了です。

普段の起動方法
設定は最初の 1 回だけです。2 回目からは次の順で起動します。
- PowerShell で
aws loginを実行してサインインする - ChatGPT デスクトップアプリを起動する
チャットができる状態の画面が開けば使えます。
困ったとき
運用中に確認したエラーと対処です。
| 症状 | 原因 | 対処 |
|---|---|---|
failed to load AWS credentials を含むエラー |
サインインの期限切れ | PowerShell で aws login を実行し、アプリを起動し直す |
起動時に ChatGPT のサインイン画面が表示される場合
config.toml の model_provider が amazon-bedrock-runtime になっていない可能性があります。

こちらの記事も参考にしてください。
ChatGPT 起動後の config.toml の設定値
アプリを起動すると config.toml に設定が書き足され、コマンドで書いた 5 行から 81 行に増えていました。model_reasoning_effort = "high" は、アプリ側でエフォートを選んだ影響で追加された行です。末尾の [model_providers.amazon-bedrock.aws] は Mantle 用の設定です。model_provider が amazon-bedrock-runtime なら、このブロックが残っていても Runtime で動きました。.env はコマンドで書いた 1 行のままでした。切り分け用に今回の環境の全文を載せておきます。
config.toml の全文
notify = [ "C:\\Users\\(ユーザー名)\\AppData\\Local\\OpenAI\\Codex\\runtimes\\cua_node\\6ef99b3d04073aa7\\bin\\node_modules\\@oai\\sky\\bin\\windows\\codex-computer-use.exe", "turn-ended" ]
model_provider = "amazon-bedrock-runtime"
model = "global.openai.gpt-6.1-sol"
web_search = "disabled"
model_context_window = 1000000
model_auto_compact_token_limit = 900000
model_reasoning_effort = "high"
[desktop]
followUpQueueMode = "steer"
conversationDetailMode = "STEPS_COMMANDS"
ambient-suggestions-enabled = false
[marketplaces.openai-bundled]
source_type = "local"
source = '\\?\C:\Users\(ユーザー名)\.codex\.tmp\bundled-marketplaces\openai-bundled'
[marketplaces.openai-primary-runtime]
source_type = "local"
source = '\\?\C:\Users\(ユーザー名)\.cache\codex-runtimes\codex-primary-runtime\plugins\openai-primary-runtime'
[plugins."codex-app-tools@openai-bundled"]
enabled = true
[plugins."browser@openai-bundled"]
enabled = true
[plugins."unified-computer-use@openai-bundled"]
enabled = true
[plugins."visualize@openai-bundled"]
enabled = true
[plugins."documents@openai-primary-runtime"]
enabled = true
[plugins."pdf@openai-primary-runtime"]
enabled = true
[plugins."spreadsheets@openai-primary-runtime"]
enabled = true
[plugins."presentations@openai-primary-runtime"]
enabled = true
[plugins."template-creator@openai-primary-runtime"]
enabled = true
[plugins."computer-use@openai-bundled"]
enabled = true
[mcp_servers.node_repl]
args = []
command = 'C:\Users\(ユーザー名)\AppData\Local\OpenAI\Codex\runtimes\cua_node\6ef99b3d04073aa7\bin\node_repl.exe'
env_vars = ["BROWSER_USE_ACCESS_EXECUTOR_ID", "BROWSER_USE_ACCESS_PIPE_PATH", "BROWSER_USE_ACCESS_VERIFYING_IDENTITY", "CODEX_WINDOWS_REGISTERED_CORE"]
startup_timeout_sec = 120
[mcp_servers.node_repl.env]
NODE_REPL_NATIVE_PIPE_CONNECT_TIMEOUT_MS = "1000"
NODE_REPL_NODE_MODULE_DIRS = 'C:\Users\(ユーザー名)\AppData\Local\OpenAI\Codex\runtimes\cua_node\6ef99b3d04073aa7\bin\node_modules'
NODE_REPL_NODE_PATH = 'C:\Users\(ユーザー名)\AppData\Local\OpenAI\Codex\runtimes\cua_node\6ef99b3d04073aa7\bin\node.exe'
NODE_REPL_TRUSTED_CODE_PATHS = 'C:\Users\(ユーザー名)\.codex;C:\Users\(ユーザー名)\AppData\Local\OpenAI\Codex\runtimes\cua_node\6ef99b3d04073aa7\bin\node_modules'
CODEX_HOME = 'C:\Users\(ユーザー名)\.codex'
BROWSER_USE_AVAILABLE_BACKENDS = "chrome,iab,mcpapps"
BROWSER_USE_TINYSKY_ENABLED = "1"
NODE_REPL_INSTRUCTIONS_USE_CASE_BROWSER = ""
NODE_REPL_INSTRUCTIONS_USE_CASE_CHROME = ""
BROWSER_USE_CODEX_APP_BUILD_FLAVOR = "prod"
BROWSER_USE_CODEX_APP_VERSION = "26.1023.51421"
NODE_REPL_TRUSTED_SERVICES = '{"browser":"C:/Users/(ユーザー名)/.codex/plugins/cache/openai-bundled/browser/26.1023.51421/scripts/browser-service.mjs","sky":"@oai/sky/service"}'
SKY_CUA_NATIVE_PIPE = "1"
SKY_CUA_NATIVE_PIPE_DIRECTORY = '\\.\pipe\codex-computer-use-229db63f-6e26-483f-872a-a588abe1bc85'
CODEX_CLI_PATH = 'C:\Users\(ユーザー名)\AppData\Local\OpenAI\Codex\bin\0ab0e7a8f3779036\codex.exe'
NODE_REPL_UNTRUSTED_ENV_ALLOWLIST = "CODEX_WINDOWS_REGISTERED_CORE"
NODE_REPL_INSTRUCTIONS_USE_CASE_COMPUTER_USE = ""
[model_providers.amazon-bedrock.aws]
profile = "default"
region = "ap-northeast-1"
[windows]
sandbox = "elevated"
おわりに
私は Mac ユーザーで普段から手元に Windows 端末がないため、検証用に使った際の自分メモを公開できるかたちにしました。











