本指南目標:在 Windows 安裝 OpenAI Codex CLI,並接上自己的 MYAI168 API,使用 gpt-5.6-sol。
Codex 走 OpenAI 格式,接的是 MYAI168 的「OpenAI 相容端點」搭配 gpt-5.6-sol。
端點 https://www.myai168.com/nccu/api/openai/v1
模型 gpt-5.6-sol
先確認:在 PowerShell 跑 node --version 與 npm --version。有版本號就跳到「一、安裝 Codex」;若「command not recognized」,依下列安裝:
winget install OpenJS.NodeJS.LTS,裝完重開 PowerShell。注意:若 Node 原本是其他工具(如 Hermes)附帶的,那工具移除時 Node 會一併消失。建議獨立安裝 Node 較穩定。
若被執行原則擋住先放行:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
本頁教學採 npm 安裝;官方另提供其他安裝方式,最新指引見官方文件 https://developers.openai.com/codex/cli/。
安裝(套件名務必含 @openai/ 前綴):
npm install -g @openai/codex
開新的 PowerShell,確認:
codex --version
若出現 Missing optional dependency @openai/codex-win32-x64:
$v = npm view @openai/codex version
npm install -g "@openai/codex@$v" "@openai/codex-win32-x64@npm:@openai/codex@$v-win32-x64"
cc-switch 對 Codex 支援良好。(安裝方式見開發者中心的「cc-switch Windows」分頁。)
MYAI168;API Key = 你的金鑰;API Request URL = https://www.myai168.com/nccu/api/openai/v1設環境變數(Codex 透過 env_key 讀取):
[Environment]::SetEnvironmentVariable("MYAI168_API_KEY", "你的金鑰", "User")
此指令無輸出即成功;驗證:
[Environment]::GetEnvironmentVariable("MYAI168_API_KEY", "User")
確認 cc-switch 有寫進 config.toml:
Get-Content $env:USERPROFILE\.codex\config.toml
建立設定資料夾並用記事本開設定檔:
mkdir $env:USERPROFILE\.codex -Force
notepad $env:USERPROFILE\.codex\config.toml
貼入(env_key 填「環境變數名稱」,不是金鑰本身):
model = "gpt-5.6-sol"
model_provider = "myai168"
[model_providers.myai168]
name = "MYAI168"
base_url = "https://www.myai168.com/nccu/api/openai/v1"
env_key = "MYAI168_API_KEY"
wire_api = "responses"
存檔。並設環境變數(同方式 A 的 SetEnvironmentVariable)。
開新的 PowerShell(讓環境變數生效):
mkdir $env:USERPROFILE\cc-test -Force
cd $env:USERPROFILE\cc-test
codex
驗證:進 codex 後問一個需要運算的問題:
123456 乘以 789 是多少?只回數字。
能算出 97406784、狀態列顯示 gpt-5.6-sol,即接通成功。
(不要用「你是誰」驗證——模型自我認知不可靠;以 MYAI168 後台呼叫紀錄為準。)
npm prefix -g 找目錄加進 PATH。(macOS 為 source ~/.zshrc/重開終端機。)[Environment]::GetEnvironmentVariable("MYAI168_API_KEY","User") 有值,並開新視窗。(macOS 為 echo "[$MYAI168_API_KEY]" 確認有值;必要時 provider 區塊加 requires_openai_auth = false。)Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned