极核

极核

OpenAI Codex CLI

命令助手

按照 Codex CLI 常用配置方式生成脚本:写入 `auth.json` 保存 `OPENAI_API_KEY`, 并更新 `config.toml` 中的 provider、model 与 `base_url`。

配置输入

填写代理地址、API Key 和默认模型,脚本会实时更新。

生成模式

按 Codex 的文件配置习惯,分为安全写入和全量覆盖两类。

当前模式:安全写入

可复制脚本

脚本会优先使用 `CODEX_HOME`,未设置时默认落到 `~/.codex`。

未填写字段:Base URL、API Key。当前预览会自动使用占位符,建议补全后再复制正式脚本。
安全写入55 Lines
set -e
CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
mkdir -p "$CODEX_HOME"
chmod 700 "$CODEX_HOME" 2>/dev/null || true
umask 077

cat > "$CODEX_HOME/auth.json" <<'EOF'
{
  "OPENAI_API_KEY": "sk-your-openai-api-key"
}
EOF

TMP_CONFIG="$(mktemp)"
trap 'rm -f "$TMP_CONFIG"' EXIT
cat > "$TMP_CONFIG" <<'EOF'
# >>> DEVTOOL_CODEX_PROVIDER >>>
cli_auth_credentials_store = "file"
model_provider = "devtool_custom_openai"
model = "gpt-5.4"
model_reasoning_effort = "high"

[model_providers.devtool_custom_openai]
name = "OpenAI via custom proxy"
base_url = "https://your-openai-proxy.example.com/v1"
wire_api = "responses"
requires_openai_auth = true
# <<< DEVTOOL_CODEX_PROVIDER <<<
EOF

printf '\n' >> "$TMP_CONFIG"
if [ -f "$CODEX_HOME/config.toml" ]; then
  awk '
    BEGIN { skip_block = 0; skip_provider = 0; before_first_table = 1 }
    $0 ~ /^# >>> DEVTOOL_CODEX_PROVIDER >>>$/ { skip_block = 1; next }
    $0 ~ /^# <<< DEVTOOL_CODEX_PROVIDER <<<$/ { skip_block = 0; next }
    skip_block { next }
    skip_provider && $0 ~ /^\[/ { skip_provider = 0 }
    skip_provider { next }
    $0 ~ /^\[model_providers\.devtool_custom_openai\]$/ { skip_provider = 1; next }
    before_first_table && $0 ~ /^[[:space:]]*(cli_auth_credentials_store|model_provider|model|model_reasoning_effort)[[:space:]]*=/ { next }
    $0 ~ /^\[/ { before_first_table = 0 }
    { print }
  ' "$CODEX_HOME/config.toml" >> "$TMP_CONFIG"
fi

mv "$TMP_CONFIG" "$CODEX_HOME/config.toml"
trap - EXIT

chmod 600 "$CODEX_HOME/auth.json" "$CODEX_HOME/config.toml"

if command -v codex >/dev/null 2>&1; then
  codex login status
else
  echo "Codex CLI 未安装,请先执行 npm install -g @openai/codex"
fi

auth.json 预览

文件里只放 `OPENAI_API_KEY`。

{
  "OPENAI_API_KEY": "sk-your-openai-api-key"
}

config.toml 托管块预览

安全写入模式会把这段托管块插入或替换到现有 config.toml。

# >>> DEVTOOL_CODEX_PROVIDER >>>
cli_auth_credentials_store = "file"
model_provider = "devtool_custom_openai"
model = "gpt-5.4"
model_reasoning_effort = "high"

[model_providers.devtool_custom_openai]
name = "OpenAI via custom proxy"
base_url = "https://your-openai-proxy.example.com/v1"
wire_api = "responses"
requires_openai_auth = true
# <<< DEVTOOL_CODEX_PROVIDER <<<