코딩 에이전트 · 영상 게시 2025-10-11 · 6분 07초

Codex CLI에서 OpenRouter 커스텀 모델과 멀티 프로필 쓰기

Codex CLI의 config.toml에 OpenRouter를 모델 프로바이더로 등록해 Gemini, Claude, Grok을 쓰고, 프로필로 모델을 명령어 하나로 바꾸는 방법을 정리했습니다.

Codex CLI에서 OpenAI 모델이 아닌 다른 회사 모델을 쓰는 방법과, 여러 모델을 프로필로 등록해 두고 명령어 하나로 바꿔 쓰는 방법을 정리한 영상입니다. OpenRouter를 모델 프로바이더로 등록해 Gemini 2.5 Pro, Claude Opus, Grok을 Codex에서 실행해 봤습니다. Codex CLI의 config.toml을 처음 만져 보는 분이나, 작업에 따라 모델을 바꿔 쓰고 싶은 분께 맞는 내용입니다. 선택 가능한 모델 목록은 영상 게시 시점(2025-10-11) 기준입니다.

OpenRouter API 키 준비

OpenRouter는 Claude, Gemini, GPT처럼 여러 회사의 모델을 하나의 API 키로 쓸 수 있게 해 주는 플랫폼입니다. 로그인한 뒤 오른쪽 위의 Keys 메뉴에서 Create API Key로 키를 발급합니다. 단테는 "codex-cli"라는 이름으로 키를 만들고 10달러를 충전해 두었습니다. 키로 모델을 호출하려면 충전이 필요하고, 키는 만들어지는 시점에 한 번만 복사할 수 있으니 따로 잘 보관해야 합니다.

키는 설정 파일에 직접 적지 않고 환경변수로 둡니다. 단테는 zsh를 쓰므로 ~/.zshrc 마지막 줄에 추가했습니다. bash를 쓴다면 ~/.bash_profile을 수정하면 됩니다.

export OPENROUTER_API_KEY="발급받은 키"
source ~/.zshrc

터미널을 껐다 켜도 되고, 지금 터미널을 그대로 쓰려면 source로 설정 파일을 다시 읽으면 됩니다. 그 뒤부터 다른 파일에서도 이 변수 이름으로 키를 참조할 수 있습니다.

model_providers로 커스텀 모델 등록하기

OpenRouter에서 쓰고 싶은 모델(영상에서는 Gemini 2.5 Pro)을 고르면 파이썬·자바스크립트 예시 코드가 나옵니다. 여기서 두 가지를 가져옵니다. 예시 코드의 base URL은 엔드포인트가 되고, model 인자에 들어간 값(google/gemini-2.5-pro)은 모델 이름이 됩니다. 이 값을 Codex의 config.toml에 넣습니다.

model = "google/gemini-2.5-pro"
model_provider = "openrouter"

[model_providers.openrouter]
name = "openrouter"
base_url = "https://openrouter.ai/api/v1"
env_key = "OPENROUTER_API_KEY"

model_provider의 값은 아래 model_providers 테이블에 선언한 이름을 그대로 가리킵니다. API 키는 env_key에 환경변수 이름을 적어 참조합니다.

Codex를 실행하고 /status를 보면 기본 모델이 Gemini 2.5 Pro로 바뀐 것을 확인할 수 있습니다. 새 세션 화면에도 GPT가 아니라 지정한 커스텀 모델이 표시되고, "너는 어떤 모델이야"라고 물으면 구글이 만든 Gemini라고 답합니다. 모델 값을 Claude Opus로 바꾸고 세션을 다시 시작하면 이번에는 Claude라고 답합니다.

멀티 프로필로 모델 바꿔 쓰기

모델을 바꿀 때마다 설정 파일을 고치는 것은 번거롭습니다. 게다가 OpenRouter 모델은 Codex의 /model 명령으로 고를 수 없습니다. 영상 시점의 Codex에서 /model로 고를 수 있는 것은 GPT-5 Codex와 GPT-5 두 가지였기 때문입니다. 이럴 때 프로필을 씁니다.

먼저 루트 설정은 다시 gpt-5-codex로 돌리고 model_provider 줄을 지워 기본값으로 OpenAI 모델을 쓰게 합니다. 그다음 profiles 테이블에 원하는 이름으로 프로필을 만듭니다. 영상에서는 Grok 프로필을 만들었습니다. 모델 이름은 다시 OpenRouter에서 Grok 모델 페이지를 찾아 가져오고, model_provider에는 위에서 선언한 openrouter를 지정합니다.

model = "gpt-5-codex"

[model_providers.openrouter]
name = "openrouter"
base_url = "https://openrouter.ai/api/v1"
env_key = "OPENROUTER_API_KEY"

[profiles.grok]
model = "<OpenRouter의 Grok 모델 이름>"
model_provider = "openrouter"
codex --profile grok

--profile grok로 실행하면 xAI의 Grok 4 Fast 모델이 쓰이고, 그냥 codex로 실행하면 루트에 선언한 GPT-5 Codex가 쓰입니다. 쓰고 싶은 모델마다 프로필을 하나씩 만들어 두면 상황에 맞춰 명령어 옵션만 바꿔 실행할 수 있습니다.

정리

  • OpenRouter API 키 하나로 여러 회사의 모델을 Codex CLI에서 쓸 수 있습니다. 키는 충전이 필요하고 발급 시 한 번만 복사할 수 있습니다.
  • API 키는 셸 설정 파일에 환경변수로 넣고 env_key로 참조합니다.
  • model_providers 테이블에 OpenRouter를 등록하고 model과 model_provider를 지정하면 기본 모델을 바꿀 수 있습니다. /status로 확인합니다.
  • 커스텀 모델은 /model로 고를 수 없으므로 profiles 테이블에 프로필을 만들고 codex --profile 이름으로 실행하는 편이 편합니다.

영상: 유튜브에서 보기 · 정정 요청: dante@quokkalabs.net