codex2api
내 챗GPT(Codex) 구독을 OpenAI·Anthropic API로 바꿔주는 게이트웨이

이건 뭐예요?
전에 소개해 드린 gemini-web2api 기억하시나요? 그건 "통역사 한 명"이었어요. 내 도구가 거는 말을 Gemini가 알아듣게 바꿔주는, 야무진 1인 통역사요. 오늘 소개할 codex2api(코덱스투에이피아이) 는 거기서 한 단계 위예요. 통역사 한 명이 아니라 "통역사 여러 명을 둔 콜센터 + 반장" 이라고 생각하시면 딱 맞아요.
콜센터를 떠올려 볼게요. 손님 은 전화번호 하나만 누릅니다. 그런데 전화선 너머에는 상담원이 여러 명 앉아 있어요. 반장이 "지금 누가 제일 컨디션 좋고 덜 바쁜가" 보고 그 상담원에게 전화를 돌려줍니다. 지쳐서 잠깐 쉬어야 하는 상담원은 빼주고, 다시 멀쩡해지면 복귀시켜요. 그리고 한쪽 벽에는 상황판이 있어서, 누가 얼마나 일했는지·전화가 얼마나 몰렸는지 한눈에 보입니다.
codex2api 가 하는 일이 정확히 이 콜센터예요. 각 역할을 기술 용어로 바꿔 보면 이래요.
| 콜센터 비유 | 실제 정체 |
|---|---|
| 손님이 누르는 전화번호 하나 | Base URL (기본 주소) http://localhost:8080/v1 |
| 반장 (누구에게 돌릴지 정함) | 스케줄러(scheduler, 요청을 어느 계정에 보낼지 정하는 배차 담당) |
| 상담원들 (실제로 답하는 사람) | 내 ChatGPT/Codex 구독 계정 풀(pool, 여러 계정 묶음) |
| 상황판 (누가 얼마나 일했나) | 관리 대시보드(dashboard, 운영 현황판) |
| 손님이 거는 말 | OpenAI·Anthropic API 형식의 요청 |
여기서 가장 중요한 한 가지. codex2api 는 단순히 말을 전달만 하는 포워딩 프록시(forwarding proxy, 받은 걸 그대로 넘겨주는 중계기) 가 아니에요. 계속 떠 있으면서 계정들을 관리하는 "게이트웨이(gateway, 모든 요청이 드나드는 정문 + 관리소)" 예요. 그래서 손님(내 도구)은 OpenAI(오픈AI, 챗GPT 만든 회사) 양식으로 말을 걸든 Anthropic(앤트로픽, 클로드 만든 회사) 양식으로 말을 걸든, 전화번호 하나로만 걸면 반장이 알아서 가장 건강한 계정에 배정해 줍니다.
기본 정보부터 정리해 드릴게요.
| 항목 | 내용 |
|---|---|
| 정식명 | Codex2API |
| GitHub | james-6-23/codex2api |
| 만든이 | GitHub james-6-23 님 |
| 스택 | Go 1.26(Gin) 백엔드 + React 19 / Vite 8 프런트, Docker 지원 |
| 라이선스 | MIT (자유롭게 쓰고 고치고 배포해도 되는 너그러운 오픈소스 라이선스) |
| 버전 | v2.3.8 (README 기준) |
| 우리 사이트 연관 | 지금 이 글들의 대표 이미지를 codex2api 로 뽑고 있어요 (아래 설명) |
쉽게 한 줄로 — 이미 내고 있는 ChatGPT(Codex) 구독을, OpenAI·Anthropic 도구들이 그대로 갖다 쓰게 만들어 주는 "여러 계정 관리형 통역 게이트웨이" 예요. 전체 흐름을 한 장으로 보면 이래요.
실제로 이렇게 동작해요
"반장이 알아서 좋은 계정 골라준다"는 게 말로는 멋진데, 어떻게 고르는 걸까요? 코드를 몰라도 이해되게 풀어드릴게요.
codex2api 는 계정마다 건강 상태를 매겨둡니다. 사람으로 치면 "이 상담원 오늘 컨디션이 어떤가"를 점수로 적어두는 거예요. 크게 두 가지를 봅니다.
첫째, 지금 받을 수 있는 상태인가 (status).
ready— 멀쩡함, 바로 일 받을 수 있음cooldown— 너무 많이 써서 잠깐 쉬는 중 (쿨다운, 식히는 시간)error— 문제 생김, 일 못 받음
둘째, 전반적인 건강 등급 (health tier).
| 헬스 등급 | 뜻 | 반장이 주는 일의 양 |
|---|---|---|
healthy | 아주 건강함 | 가장 많이 (동시에 여러 건) |
warm | 살짝 지침 | 절반 정도만 |
risky | 위태로움 | 한 번에 한 건만 |
banned | 막힘 | 아예 안 줌 |
여기에 스케줄러 점수(scheduler score, 기준 100점) 라는 게 더해져요. 점수가 높을수록 "이 계정에 우선 돌려라"가 되는 거예요. 반장은 이 모든 걸 종합해서 건강하고 덜 바쁜 계정 순으로 요청을 배정합니다. 막힌 계정 은 자동으로 피하고, 쿨다운이 끝나면 다시 복귀시켜요. 사람이 일일이 "이 계정 막혔으니 저 계정 써"라고 손볼 필요가 없는 거죠.
배정 방식(모드)은 두 가지 중에 고를 수 있어요.
round_robin(기본) — 건강한 계정들에게 골고루 돌아가며 배정 (한 명만 혹사시키지 않음)remaining_quota— 아직 덜 쓴 계정을 먼저 (남은 사용량 많은 사람부터)
그리고 이 모든 걸 눈으로 보는 곳이 관리 대시보드예요. 브라우저에서 /admin/ 주소로 열면, React로 만든 깔끔한 화면이 나와요. 여기서 할 수 있는 게 꽤 많아요.
- 계정 관리 — 계정 임포트(불러오기)·테스트, 헬스 등급·스케줄러 상태 확인
- API 키 관리 — 누가 이 게이트웨이를 쓸 수 있는지 열쇠 발급·관리
- 이미지 스튜디오 — 화면에서 직접 글→그림(text-to-image), 그림→그림(image-to-image) 생성
- 사용량 분석 — 요청 기록, 추세 그래프, 모델별 순위
- 비용 추적 — 계정마다 최근 5시간·7일 동안 실제로 얼마(USD) 들었는지 표시
- 스케줄러 보드 — 반장이 지금 누구에게 왜 일을 주는지, 점수 내역까지 투명하게
특히 마지막 비용 추적이 똑똑해요. "토큰(token, AI가 글자를 세는 단위) 대충 이만큼 썼으니 얼마쯤?"이 아니라, 계정별로 실제 청구되는 달러 금액을 5시간·7일 창으로 보여줍니다. 여러 계정을 굴릴 때 "어느 계정이 돈을 많이 쓰고 있나"를 한눈에 잡을 수 있어요.
참고로 노출되는 모델은 README 기준 gpt-5.5, gpt-5.4, gpt-5.4-mini, gpt-5.3-codex, 그리고 그림 그리는 gpt-image-2 등이에요. (모델 이름은 README 표기 그대로예요.)
우리는 이렇게 쓰고 있어요
이건 소개만 하는 게 아니라, 저희가 진짜로 매일 쓰고 있는 도구예요. 그리고 그 증거가 바로 이 글 위에 있어요.
지금 보고 계신 이 AI//STUDY 사이트의 글 대표 이미지(hero)들이, 전부 codex2api 로 만들어집니다. 이 글을 여는 맨 위 그림도 그렇게 뽑은 거예요. 방식은 이래요.
- 디온웍스는 codex2api 를 경량(SQLite) 모드로 제 PC 안 포트(port, 프로그램이 통신하려고 쓰는 출입구 번호) 8080 에 띄워둡니다.
- 인포그래픽이 필요하면
POST /v1/images/generations주소로gpt-image-2모델을 호출해요. - 그러면 codex2api 가 제 ChatGPT 구독 계정을 경유해서 그림을 그려 돌려줍니다.
핵심은 이거예요 — 이미 매달 내고 있는 ChatGPT 구독을 경유하기 때문에, 이미지 생성에 추가 API 비용이 0원이라는 점이에요. 정식 이미지 API 키를 따로 발급받아 장당 요금을 무는 대신, 손에 든 구독을 한 번 더 우려먹는 셈이죠.
실제 호출은 이렇게 단출해요.
# codex2api 로 gpt-image-2 이미지 한 장 생성 (8080 포트 경량 모드)
curl -X POST http://localhost:8080/v1/images/generations \
-H "Authorization: Bearer 내-게이트웨이-키" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-image-2","prompt":"교육용 인포그래픽 한 장","size":"1536x1024","n":1}'
다만 솔직하게 덧붙이면, 저희도 뒤에 나오는 한계와 주의사항을 같이 알고 씁니다. 공식 경로가 아니라는 점을 빼놓고 추천하면 안 되니까요. 그 부분은 아래에서 정직하게 말씀드릴게요.
한번 써볼까요?
자, 여기서 솔직히 말씀드릴게요. codex2api 는 web2api(파일 하나면 끝)보다 처음 띄우는 손이 조금 더 갑니다. 데이터베이스(DB, 자료 창고)·캐시(cache, 빠른 임시 저장소)·대시보드까지 다 들고 있는 "게이트웨이"라서요. README 에는 docker(도커, 프로그램을 통째로 담아 옮기는 컨테이너 도구) 명령어가 여러 줄 나와요.
근데 우리는 코딩 1줄 모르는 바이브 코더잖아요. 그러니 제일 쉬운 길로 갑시다. 명령어를 외우지 말고, 클로드 코드 같은 AI에게 통째로 맡기세요.
방법은 이래요. 클로드 코드(또는 다른 AI 코딩 CLI)에게 GitHub 주소를 건네주고, 한국어로 "이거 내 PC에 설치해서 8080 포트로 띄워줘" 라고 부탁하면 됩니다. 그러면 AI가 알아서 저장소를 클론(clone, 통째로 복제)하고, 빌드(build, 실행 가능한 형태로 조립)하고, 실행까지 해줘요. README 의 복잡한 명령어는 AI가 대신 읽고 처리합니다.
설치할 GitHub 주소는 이거 하나만 기억하시면 돼요.
https://github.com/james-6-23/codex2api
띄운 다음 내 도구에 붙이는 건 정말 쉬워요. web2api 때랑 똑같아요 — 평소 쓰던 OpenAI 도구에서 Base URL(기본 주소)만 http://localhost:8080/v1 로 바꾸면 끝이에요.
방법 1 — OpenAI 파이썬 SDK (코드에서 부를 때). OpenAI용으로 쓰던 코드에서 주소만 바꾸면 그대로 동작해요.
from openai import OpenAI
# base_url 만 codex2api 게이트웨이로 바꿔주면 끝
client = OpenAI(
base_url="http://localhost:8080/v1",
api_key="내-게이트웨이-키",
)
resp = client.chat.completions.create(
model="gpt-5.5",
messages=[{"role": "user", "content": "안녕!"}],
)
print(resp.choices[0].message.content)
방법 2 — curl 로 직접 호출 (터미널에서 바로 테스트할 때)
# OpenAI 양식 그대로 게이트웨이에 질문 보내기
curl http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer 내-게이트웨이-키" \
-d '{"model":"gpt-5.5","messages":[{"role":"user","content":"안녕!"}]}'
공식 설치 안내가 더 궁금하면 GitHub 저장소를 보세요. 하지만 우리는 위처럼 AI에게 맡기는 길을 추천해요. 훨씬 편하니까요.
클로드 코드 터미널에서는 이렇게
위에서 말한 "AI에게 설치를 맡기는 법"을 클로드 코드 대화창 기준으로 정리해 드릴게요. 클로드 코드를 열어두고, 아래 부탁을 그대로 복사해서 붙여 넣으시면 됩니다.
만약 클로드한테 말로 시키는 거라면, 아래처럼 부탁하세요. (이건 명령어가 아니라 AI에게 거는 부탁이라 ! 를 붙이지 않아요.)
이 저장소를 내 PC에 설치해줘: https://github.com/james-6-23/codex2api
PostgreSQL 같은 무거운 DB 없이, SQLite 경량 모드로 8080 포트에 띄워줘.
서버가 뜨면 /health 와 /v1/models 가 정상으로 응답하는지 확인하고,
결과만 짧게 정리해줘.
AI가 알아서 클론·빌드·실행을 해주고, 막히는 게 있으면 스스로 README 를 읽어 해결합니다. 다 띄웠으면 우리가 직접 두 가지를 두드려서 잘 됐는지 확인해 볼게요.
클로드 코드 대화창에서
!를 맨 앞에 붙이면 터미널 명령어를 바로 실행할 수 있어요.
# 게이트웨이가 살아있는지 확인 (앞에 ! 붙임)
! curl http://localhost:8080/health
# 쓸 수 있는 모델 목록이 OpenAI 형 식으로 나오는지 확인 (앞에 ! 붙임)
! curl http://localhost:8080/v1/models
확인 포인트: /health 가 정상이라고 답하고, /v1/models 에서 gpt-5.5 · gpt-image-2 같은 모델 이름이 목록으로 나오면, 반장과 상담원들이 제자리에서 잘 일하고 있는 거예요.
그다음엔 대시보드를 한번 구경해 보세요. 브라우저에서 아래 주소를 열면, 계정 상황판·스케줄러 보드·이미지 스튜디오가 다 들어 있어요.
http://localhost:8080/admin/
처음엔 계정이 비어 있을 거예요. 여기에 내 ChatGPT/Codex 계정의 토큰(token, 로그인 상태를 증명하는 인증 표) 을 올려야 실제로 답을 받을 수 있어요. 토큰 올리는 법은 화면 안내를 따르면 되고, 손으로 추출하기 번거로우면 OAuth(오어스, 비밀번호 없이 안전하게 권한을 넘기는 표준 방식) PKCE 플로우로도 받을 수 있게 되어 있어요.
대시보드만 미리 구경하고 싶다면, 만든이가 올려둔 라이브 데모(비밀번호
codex2api)를 둘러보세요. 단, 여기엔 진짜 토큰을 절대 올리지 마세요. 만든이도 README 에서 데모엔 실제 토큰·키를 넣지 말라고 당부하고 있어요.
이런 한계도 알아두세요
이 도구를 추천하면서 좋은 점만 말하면 그건 정직하지 않아요. codex2api 를 쓰기 전에 꼭 알아두셔야 할 점들을, 비개발자 눈높이로 솔직히 옮겨드릴게요. 알고 쓰면 실망할 일이 없어요.
-
공식 경로가 아니에요 (회색지대). 이건 정식 OpenAI API 가 아니라, 내 ChatGPT(Codex) 구독 계정을 게이트웨이로 빌려 쓰는 방식이에요. 그래서 OpenAI 약관(ToS, Terms of Service — 서비스 이용 규칙) 관점에서는 비공식 경로예요. 겁먹을 필요는 없지만, 개인 학습·실험용으로, 본인 계정 책임하에 쓰는 도구라는 점은 꼭 기억해 주세요. 만든이도 README 에 "학습·연구·기술 토론용"이며 "프로덕션(실제 서비스 운영) 사용은 본인 책임"이라고 분명히 적어두었어요.
-
계정을 여러 개 묶을수록 편하지만, 위험도 같이 커져요. 계정 풀과 토큰 업로드는 강력한 기능이에요. 한 창구로 여러 계정을 굴리니 자동화가 잘 돌아가죠. 하지만 그만큼 계정 정지(ban) 같은 리스크도 같이 늘어납니다. 많이 묶을수록 신중하게.
-
토큰·시크릿 보관에 각별히 주의하세요. codex2api 는 Refresh Token(리프레시 토큰, 로그인을 갱신하는 장기 열쇠)·Access Token(액세스 토큰, 실제 접속용 단기 열쇠)·
ADMIN_SECRET(관리자 비밀번호) 같은 민감 정보를 다뤄요. 이게 외부로 새면 계정을 통째로 빼앗길 수 있어요. 그래서 절대 외부에 열어두지 말고,127.0.0.1(내 PC 안에서만 도는 주소) 로 닫아 쓰세요. 경량(SQLite) 모드가 기본으로127.0.0.1에만 열리는 것도 바로 이 안전 때문이에요. -
세팅이 web2api 보다 조금 무거워요. 파일 하나로 끝나는 web2api 와 달리, codex2api 는 DB·캐시·대시보드까지 갖춘 "게이트웨이"예요. 그래서 처음 띄우는 손이 조금 더 갑니다. 그러니 더더욱 위에서 말한 것처럼 AI에게 설치를 맡기는 게 편해요.
이 점들을 알고 나면 "어디에 쓰면 좋고 어디엔 안 맞는지"가 또렷해져요. 내 구독을 자동화·이미지 생성에 알뜰하게 재활용하는 개인용으로는 훌륭하고, 남에게 열어주는 상용 서비스의 핵심 두뇌로 쓰는 데에는 맞지 않아요.
이런 분께 추천해요
codex2api 는 "이미 내고 있는 ChatGPT 구독을 OpenAI·Anthropic 도구들에 알뜰하게 꽂고 싶다" 는 분께 딱이에요. 특히 이런 세 분께 추천드려요.
-
ChatGPT/Codex 구독은 있는데 API 비용은 아끼고 싶은 바이브 코더 — 매달 ChatGPT 구독료를 이미 내고 있다면, 그 구독을 자동화·이미지 생성 두뇌로 한 번 더 우려먹을 수 있어요. 저희가 이 사이트 hero 이미지를 추가 비용 0원으로 뽑는 것처럼요. 정식 API 키를 따로 발급받아 사용량만큼 돈 내는 부담 없이, 개인 실험·학습용으로 굴려볼 수 있어요.
-
여러 계정을 한 창구로 묶어 자동화를 돌리려는 1인 개발자 — 계정을 여러 개 가지고 있고, 막힌 계정은 자동으로 피하면서 건강한 계정에 알아서 일이 돌아가길 원한다면 codex2api 의 스케줄러가 진가를 발휘해요. 손으로 "이 계정 막혔으니 바꿔"를 안 해도 되니까요. 단, 위의 한계 섹션을 꼭 함께 읽고 "개인·실험용"이라는 선을 지키며 쓰세요.
-
OpenAI·Anthropic 호환 도구에 구독을 그대로 꽂고 싶은 분 — 손에 익은 도구(OpenAI SDK, Claude Code, 각종 챗 앱)는 그대로 두고, 뒤에서 답하는 두뇌만 내 구독으로 바꾸고 싶을 때 좋아요. Base URL 한 줄만 바꾸면 되고, OpenAI 양식이든 Anthropic 양식이든 한 게이트웨이가 다 받아주니까요.
참고로 "통역사 한 명이면 충분하고 더 단순한 게 좋다" 하시는 분은, 자매편인 gemini-web2api 부터 보시길 권해요. 파일 하나로 끝나서 입문용으로 더 가볍거든요.
참고 링크
- 공식 GitHub: james-6-23/codex2api (라이선스 MIT)
- 만든이: james-6-23
- 라이브 데모(대시보드 구경용): codex2api-latest-vu8j.onrender.com (비밀번호
codex2api, 실제 토큰 업로드 금지) - 자매편 글: gemini-web2api — 공짜 Gemini를 OpenAI API처럼 쓰는 단일 파일 프록시
- OpenAI 파이썬 SDK: github.com/openai/openai-python
▸개정 이력1건
- v12026-06-28초판
이 글이 도움이 되었나요?