Valumigo

Claude Code vs Codex: 같은 코딩 과제 3개를 3번씩 시켜 봤습니다

코딩 에이전트를 고를 때 가장 궁금한 것은 '같은 일을 시키면 누가 더 잘, 더 빨리 하나'입니다. 작은 과제 3개를 만들어 Claude Code와 Codex CLI에 같은 문장으로 3번씩 시키고, 에이전트가 볼 수 없는 숨긴 테스트로 채점했습니다.

실행일 2026-10-04

한눈에 보기

  • 정답률: 두 도구 모두 9번 실행 모두에서 숨긴 테스트를 전부 통과했습니다. 이 정도 크기의 과제에서는 결과물의 정확도 차이가 드러나지 않았습니다.
  • 속도: 과제별 중앙값 기준 Codex(GPT-6.1 Sol)가 Claude Code(Claude Opus 5)보다 약 1.8~2배 빨리 끝냈습니다. 차이는 과제마다 16~43초였습니다.
  • 토큰: 과제별 중앙값 기준 Claude Code가 처리한 입력 토큰(캐시 재사용 포함)은 Codex의 약 4.2~5.7배, 출력 토큰은 약 3.5~4.3배였습니다. MCP 도구 연결을 모두 끄고 T1을 한 번 더 실행했을 때도 입력 토큰 규모(약 39.7만)가 비슷했지만, 차이의 원인을 확정하지는 못했습니다.
  • 코드: 버그 수정 과제는 두 도구가 똑같은 세 줄을 고쳤습니다. 성능 과제에서 Codex는 원래 코드의 아주 드문 동작(id가 NaN인 경우)까지 그대로 지키는 코드를 썼고, Claude Code는 더 짧은 코드에 이유를 설명하는 주석을 달았습니다.
  • Gemini: Gemini CLI도 같은 조건으로 실행했지만 인증 단계에서 바로 멈췄습니다. 2026년 6월 18일부터 개인·Google AI Pro·Ultra 계정에서 Gemini CLI 서비스가 끝났기 때문입니다.

결과

시간은 3회의 중앙값, 괄호 안은 가장 빠른~가장 느린 값입니다.

과제도구통과(3회 모두)걸린 시간입력 토큰출력 토큰바꾼 줄(+/−)
T1 버그 수정Claude Code3/336.6s (36.1–48.7)356,1961,913+3 / −3
Codex CLI3/320.3s (19.1–32.5)85,176486+3 / −3
T2 기능 구현Claude Code3/369.8s (66–73.6)615,0195,379+64 / −2
Codex CLI3/338.2s (33.2–39.1)107,4281,265+53 / −2
T3 성능 개선Claude Code3/387.2s (85.3–104.3)561,7326,085+26 / −12
Codex CLI3/344.2s (39.8–55.1)109,7491,742+21 / −6

입력 토큰에는 앞 단계 대화를 다시 읽는 캐시 재사용분이 대부분 포함됩니다. 두 CLI가 토큰을 세는 방식이 같지 않으므로 대략적인 규모 비교로만 보세요.

Claude Code는 실행마다 'API 정가로 환산한 비용'도 보고합니다(이번 실측에서 과제당 약 0.53~1.04달러). 구독 계정은 이 금액을 따로 내지 않고 요금제의 사용 한도에서 차감됩니다. Codex는 같은 값을 보고하지 않아 비교하지 않았습니다.

과제 3개

T1 버그 수정

숙박 예약용 날짜 계산 코드(dates.js)에 버그 3개가 있습니다. 월을 0부터 세지 않은 문제, 숙박일을 1일 더 세는 문제, 영업일 계산에서 마지막 날이 빠지는 문제입니다. 숨긴 테스트는 윤년, 연말, 서머타임 전환일 등을 확인합니다.

T2 기능 구현

설명서(README)대로 CSV 파서를 처음부터 만드는 과제입니다. 따옴표 안의 쉼표·줄바꿈, 큰따옴표 두 번("") 처리, 윈도 줄바꿈(CRLF), 빈 칸, 닫히지 않은 따옴표 오류를 숨긴 테스트로 확인합니다.

T3 성능 개선

주문 20만 건을 집계하는 코드(중복 제거, 고객 순위, 일별 합계)가 너무 느립니다. 결과를 바꾸지 않고 1초 안에 끝나게 고치는 과제입니다. 숨긴 테스트는 원래 코드와 결과가 같은지, 동점 순서가 유지되는지, 30만 건도 1초 안에 끝나는지 확인합니다.

모든 실행에 쓴 지시문

아래 문장에서 'Task:' 뒤의 한 문장만 과제마다 바뀝니다.

This folder is a small Node.js project (ES modules, no dependencies). Read the code, README.md if present, and the tests. Task: {task} Do not modify existing test files. When you are done, make sure `node --test` passes.
  • T1 버그 수정 — Fix the bugs in dates.js so that every function behaves as its comment describes and the tests pass.
  • T2 기능 구현 — Implement parseCSV in csv.js according to README.md.
  • T3 성능 개선 — Make report.js fast enough as described in README.md, without changing any results.

어떻게 쟀나

  • 실행일 2026-10-04 (한국 시간 저녁), Apple M1 Pro · macOS 26.6 · Node.js 22.
  • Claude Code 2.1.250 — 기본 모델 Claude Opus 5 (짧은 보조 작업에 Claude Haiku 4.5가 함께 호출됨). Codex CLI 0.159.2 — 모델 GPT-6.1 Sol, 추론 강도 medium.
  • 두 도구 모두 운영자 개인 구독 계정으로 로그인한 상태에서 비대화형 모드(claude -p, codex exec)로 실행했습니다. 파일 수정과 node 실행은 자동 허용했습니다.
  • 실행할 때마다 원본 과제를 새 폴더에 복사했습니다. 순서의 영향을 줄이려고 1·3회차는 Claude Code를 먼저, 2회차는 Codex를 먼저 실행했습니다.
  • 시간은 명령을 시작한 순간부터 끝날 때까지 잰 값입니다. 토큰은 각 CLI가 실행 결과에 보고한 값을 그대로 옮겼습니다.

채점 방법

  • 과제마다 에이전트가 볼 수 있는 테스트 3개와, 채점할 때만 넣는 숨긴 테스트(9~14개)를 두었습니다. 숨긴 테스트는 운영자가 직접 쓴 정답 코드로 먼저 검증했습니다.
  • 채점 전에 보이는 테스트 파일을 원본으로 되돌렸습니다. 18번 모두 에이전트가 테스트 파일을 고치지 않았습니다.
  • 날짜 버그는 서머타임이 있는 지역에서만 드러날 수 있어, 뉴욕과 베를린 시간대에서 각각 돌리고 낮은 점수를 기록했습니다.

두 도구가 쓴 코드는 어떻게 달랐나

  • T1: 두 도구가 각 3번씩, 총 6번 모두 같은 세 줄(월 계산, 숙박일 +1 제거, 마지막 날 포함)을 고쳤습니다. 바꾼 줄 수도 매번 3줄 추가·3줄 삭제로 같았습니다.
  • T2: 둘 다 문자를 하나씩 읽는 방식의 파서를 썼습니다. 추가한 줄 수는 Claude Code가 63~67줄, Codex가 53~55줄로, Claude Code 쪽이 설명 주석이 조금 더 많았습니다.
  • T3: 둘 다 '목록을 매번 처음부터 찾는' 부분을 해시(Map·Set)로 바꿨습니다. Codex는 id가 NaN일 때 원래 코드가 중복으로 보지 않는 동작까지 그대로 따라 했습니다. Claude Code는 동점일 때 처음 나온 순서가 유지되는 이유를 주석으로 남겼습니다.

Gemini는 왜 빠졌나

  • Gemini CLI 0.58.0도 같은 과제·같은 지시문으로 실행했지만, 세 과제 모두 4초 안에 인증 오류로 끝났습니다. 오류 내용: "This client is no longer supported for Gemini Code Assist for individuals. To continue using Gemini, please migrate to the Antigravity suite of products".
  • Google 공식 공지에 따르면 2026년 6월 18일부터 Gemini CLI와 Gemini Code Assist IDE 확장은 개인용 Gemini Code Assist, Google AI Pro, Google AI Ultra 등급의 요청을 처리하지 않습니다. 대신 Antigravity와 Antigravity CLI(agy)를 쓰라고 안내합니다.
  • Antigravity CLI로 같은 실측을 하려면 처음 한 번 대화형 로그인이 필요해 이번 실측에는 넣지 않았습니다.

Gemini Code Assist 공식 릴리스 노트

이 실측의 한계

  • 과제는 작은 단일 파일 과제 3개이고, 각 3회만 실행했습니다. 큰 저장소, 요구사항이 모호한 일, 여러 파일을 고치는 일에서는 결과가 다를 수 있습니다.
  • 걸린 시간은 서버 혼잡, 네트워크, 모델·CLI 버전에 따라 달라집니다. 같은 날 같은 컴퓨터에서 번갈아 실행해 이 영향을 줄였을 뿐 없애지는 못했습니다.
  • Codex는 추론 강도 medium(운영자 설정값), Claude Code는 기본 설정으로 실행했습니다. 추론 강도나 모델을 바꾸면 속도와 토큰이 달라집니다.
  • 구독 요금제의 사용 한도가 얼마나 줄었는지는 재지 않았습니다.

그래서 무엇을 쓸까

아래는 이 실측 결과에 근거한 운영자 의견입니다.

  • 작은 버그 수정·함수 구현처럼 범위가 분명한 일이라면 두 도구의 결과물 차이는 이번 실측에서 보이지 않았습니다. 이미 내고 있는 구독(ChatGPT 또는 Claude)에 포함된 쪽을 먼저 써 보는 것이 합리적입니다.
  • 같은 일을 여러 번 빨리 돌려야 한다면 Codex가 이번 실측에서 약 2배 빨랐고 토큰도 적게 썼습니다.
  • Claude Code는 더 많은 단계를 거쳐 확인하고 이유를 주석으로 남기는 경향이 보였습니다. 결과 코드를 사람이 읽고 검토해야 하는 경우 이 점이 장점일 수 있습니다.
  • Gemini를 쓰던 개인 사용자는 Gemini CLI가 더 이상 동작하지 않으므로 Antigravity CLI로 옮겨야 합니다.

ClaudeChatGPT (Codex)에이전트

18회 실행 기록 전부

과제도구회차초통과한 테스트입력 토큰출력 토큰바꾼 줄(+/−)
T1Claude Code148.715/15356,1962,540+3 / −3
T1Claude Code236.115/15291,0261,913+3 / −3
T1Claude Code336.615/15537,0291,781+3 / −3
T1Codex CLI132.515/15107,102776+3 / −3
T1Codex CLI219.115/1585,176485+3 / −3
T1Codex CLI320.315/1570,801486+3 / −3
T2Claude Code16617/17551,8915,379+63 / −2
T2Claude Code273.617/17618,6365,603+64 / −2
T2Claude Code369.817/17615,0195,240+67 / −2
T2Codex CLI138.217/17107,4281,228+53 / −2
T2Codex CLI233.217/1787,4321,265+53 / −2
T2Codex CLI339.117/17107,4611,268+55 / −2
T3Claude Code187.212/12428,5015,398+19 / −11
T3Claude Code2104.312/12628,3096,880+29 / −15
T3Claude Code385.312/12561,7326,085+26 / −12
T3Codex CLI144.212/1289,6781,742+20 / −8
T3Codex CLI255.112/12112,3932,561+21 / −6
T3Codex CLI339.812/12109,7491,593+21 / −5

과제·채점 파일 내려받기

과제 원본, 숨긴 테스트, 실행 스크립트, 18회 결과 요약(JSON)과 각 실행에서 바뀐 코드(diff)를 묶었습니다. 같은 방법으로 직접 다시 재 볼 수 있습니다.

coding-agents-2026-10.zip 내려받기