Claude는 빠르게 움직인다. Codex는 출시한다.

발행: (2026년 5월 5일 AM 09:00 GMT+9)
18 분 소요
원문: Dev.to

Source: Dev.to

번역을 진행하려면 번역하고자 하는 전체 텍스트를 제공해 주세요. 텍스트를 주시면 그대로 한국어로 번역해 드리겠습니다.

Summary

저는 두 개의 큰 코딩 작업을 ClaudeCodex에게 모두 주었습니다.

  • Claude는 약 한 시간에 완료했습니다.
  • Codex는 약 여덟 시간이 걸렸습니다.

언뜻 보기엔 Claude가 확실히 이긴 것처럼 보이지만, 결과는 다른 이야기를 들려줍니다.

실제로 일어난 일

Claude

  • 빠르고 자신감 넘치며 쓸모없음.
  • 잘못된 가정, 깨진 코드, 누락된 통합 포인트.
  • 규칙을 절반만 따름.
  • 코드를 작동하도록 패치하더라도 코드베이스 유지보수가 더 어려워지는 형태를 만들었습니다.

나는 그것을 버렸다.

Codex

  • 하루 종일 작업했지만 레포를 읽고, 로컬 지침을 따르며 기존 패턴을 재사용했습니다.
  • 테스트를 추가하고, 검사를 실행했으며, 첫 실행이 성공했습니다.

그것이 AI 코딩 도구에 대한 나의 생각을 바꾸었습니다.

Context

  • 나는 이것을 가벼운 주말 테스트로 쓰는 것이 아니다.
  • 지난 4개월 동안 나는 세 가지 제품을 출시했으며, 그 제품들에서는 AI가 구현 작업의 상당 부분을 수행했다.
  • 나는 월 $200 구독의 주간 한도를 금방 소진한다.
  • 이는 여전히 개인적인 의견일 뿐이며 벤치마크는 아니지만, 실제 저장소에서 오랜 시간을 투자해 깨진 코드가 내 시간을 빼앗는 경험을 바탕으로 한 것이다.

Key Takeaways

  1. Claude는 움직임을 최적화합니다.
  2. Codex는 실질적인 작업을 최적화합니다.
  3. 다음 날에 정리하는 데 시간을 쓰면 빠른 출력은 빠른 전달이 아닙니다.
  4. Codex의 마찰은 성가시지만, 그 마찰의 대부분은 프로젝트 규칙을 읽고, 검증하고, 준수하는 것입니다.
  5. Superpowers는 두 도구를 모두 향상시키지만, 각 에이전트는 워크플로우를 다르게 따릅니다.
  6. Claude의 서브‑에이전트 기본값은 유용하지만, 메인 에이전트가 코드베이스 주변을 창의적으로 다룰 수 있을 때 위임은 절대 도움이 되지 않습니다.
  7. 제가 실제로 배포하는 작업에서는 이제 느린 에이전트를 더 신뢰합니다.

Personality Analogy

ClaudeCodex
점심 에 티켓을 끝내고 싶어 하는 엔지니어 같은 느낌.코드를 건드리기 전에 연결된 모든 파일을 읽으며 당신을 짜증나게 하고, 조용히 테스트를 통과하는 무언가를 건네주는 엔지니어 같은 느낌.

Claude 함정

  1. 진전이 빠르게 나타난다 – 그것은 편집하고, 가정하고, 규칙을 뚫는 경로를 찾아내며, 존재해야 한다고 생각하는 것을 작성하고, 서브‑에이전트를 공격적으로 사용할 수도 있다.
  2. 첫 번째 실패는 보통 작다 (타입 불일치, 누락된 import, 존재하지 않는 컴포넌트 API, 잘못된 hook 패턴).
  3. 당신이 수정 요청 → Claude가 증상을 패치 → 다른 것이 깨진다.
  4. 원래 문제가 왜 발생했는지 물으면 → 근본 원인을 추적하기보다 다른 패치로 뛰어넘는 경우가 많다.

Result: a codebase littered with bandaids. The more you accept, the harder it becomes to tell what is necessary and what is agent residue. This fragility comes not from one bad commit, but from many plausible commits that never proved they matched the system.

왜 Codex가 느리게 느껴지는가

  • 간단한 작업이라도 먼저 읽는다: 파일을 열고, 지시사항을 확인하고, 기존 패턴을 검색하며, 현재 코드가 그런 형태를 띈 이유를 이해하려고 한다.
  • 단순히 가능하다고 새로운 추상화를 도입하려는 경향은 훨씬 적다.

내 설정이 최적이 아니었다

  • 8시간 동안 실행한 것은 최적화된 Codex 설정이 아니었다.
  • 설치 직후에 거의 바로 Codex를 테스트했으며, Superpowers만 설치된 상태였다.
  • 아직 AGENTS.md를 조정하지 않았고, 더 강력한 에이전트 워크플로를 연결하지 않았으며, 작업을 나누라고 Codex에 알려주는 근육 기억도 만들지 못했다.
  • 대부분의 시간은 스스로 만든 설정 마찰 때문이었다.

실제로 시간을 잡아먹은 것

  • Codex는 의미 있는 변경이 있을 때마다 거의 테스트했다 – 편집하고, 관련 검사를 실행하고, 실패를 읽고, 패치하고, 다시 실행하고, 반복한다.
  • 이는 “큰 차이를 만들고 ‘완료’라고 말하는” 에이전트보다 느리지만, 최종 결과가 동작한 이유이기도 하다.
  • 내 Codex 설정에는 기본 서브‑에이전트가 부족했다. Claude는 작업을 더 적극적으로 분산시키는 경향이 있는데, 명시적인 서브‑에이전트 지시가 없으면 더 많은 작업이 메인 스레드에 머물러 실행 시간이 길어졌다.

인내의 가치

소요된 시간은 낭비가 아니라 보통 코드가 레포와 첫 접촉을 견디는지를 결정하는 일에 사용됩니다:

  • 이것이 주변 모듈과 일치합니까?
  • 이미 이를 위한 헬퍼가 있습니까?
  • 명백한 해결책을 무시하는 프로젝트 규칙이 있습니까?
  • 실패가 root cause인가, 아니면 첫 번째 가시적인 증상에 불과한가?
  • 이 변경이 작동했음을 증명하는 smallest check는 무엇입니까?

코딩 에이전트에게 바라는 것

나는 스톱워치를 이기고 브랜치를 놓치는 에이전트를 원하지 않는다. 나는 브랜치를 원한다.

Claude의 한계

  • Claude는 모델 지식에 기반해 작동하며, 현재 정보를 가져오도록 명시적으로 요청하지 않으면 그렇게 된다.
  • 안정적인 경우에는 괜찮지만, 최신 SDK, AI 도구, 제품 문서, 가격, CLI 동작, 프레임워크 릴리스 등 지난달에 변경되었을 가능성이 있는 경우 위험하다.
  • 나는 라이브러리의 6개월 된 정신 모델에 자신 있게 코딩하는 에이전트를 원하지 않는다.

Codex의 강점

  • “이것은 변경됐을 수 있으니 먼저 검색하세요.” 라고 더 기꺼이 말한다.
  • 설치된 CLI는 --search 옵션을 제공하고, 현재 Codex 문서에는 규칙 및 서브 에이전트에 대한 전용 페이지가 있다.
  • 기능 표면이 빠르게 변한다는 것이 핵심이다: 빠르게 변하는 도구에서는 검색이 선택적인 다듬기가 아니라 정확성이다.

이것이 Codex가 느리게 느껴지는 이유 중 하나다: 전제가 여전히 유효한지 확인하는 데 시간을 소비하기 때문이다.

Claude에 대한 최종 불만

My biggest complaint isn’t that Claude is dumb – it’s powerful.
The problem is that it is too willing to route around constraints.

  • If a repo says “do not edit env files,” I don’t want the agent to decide that .env.example is close enough to documentation.
  • If a repo says “do not add scripts unless asked,” I don’t want the agent to add a convenience script just because it makes its own workflow nicer.
  • If I ask “why is this not working,” I don’t want three patch attempts before the root cause is found.

Codex’s approach

  • Slower partly because the rules stay heavy in its head.
  • It treats instructions as part of the job, not as decoration.

That matters in real repos, where correctness outweighs raw speed.

Superpowers Workflow

가장 빠른 해결책은 종종 마이그레이션, 훅, 배포 작업, 혹은 다른 엔지니어가 진행 중인 작업을 깨뜨리는 경우가 많습니다.

저는 Superpowers를 Claude와 Codex 모두와 함께 사용합니다.

Superpowers는 Jesse Vincent가 만든 워크플로우 플러그인입니다. 핵심은 간단합니다: 에이전트가 바로 코딩에 뛰어들지 못하게 하세요. 다음과 같이 진행합니다.

  1. 브레인스토밍,
  2. 계획 수립,
  3. 작업 라우팅,
  4. 적절할 때 TDD 사용,
  5. 결과 검토, 그리고
  6. 성공을 선언하기 전에 검증.

공식 Claude 마켓플레이스 페이지에서는 이를 브레인스토밍, 서브‑에이전트 개발, 디버깅, TDD, 스킬 저작을 위한 스킬 프레임워크라고 설명합니다. GitHub 저장소에도 Codex 설치 방법이 문서화되어 있어, 이것이 Claude 전용 아이디어는 아닙니다.

Claude + 슈퍼파워

Claude는 슈퍼파워를 사용하면 꽤 잘 작동합니다. 워크플로우를 이해하고 계획이 있으면 빠르게 진행할 수 있습니다.

문제는 Claude가 여전히 워크플로우가 언제 중요한지 결정하고 있는 것처럼 느껴진다는 점입니다.

  • 때때로 올바른 스킬을 호출합니다.
  • 때때로 스킬을 조언처럼 다룹니다.
  • 때때로 작업이 명확하다고 판단하고 바로 진행합니다.

Codex + Superpowers

Codex는 다르게 동작합니다. 규칙에 “Superpowers를 사용해 라우팅하라”는 내용이 있으면, Codex는 실제로 그렇게 할 가능성이 훨씬 높습니다. Codex는

  1. 라우팅 단계를 호출하고,
  2. 어떤 스킬이 적용되는지 확인하고,
  3. 내가 개인적으로는 작업을 두 번의 편집으로 끝낼 수 있다고 생각해도 워크플로우를 따릅니다.

이러한 엄격함이 첫 Codex 실행이 오래 걸린 이유 중 하나였습니다: Superpowers는 라우팅과 계획을 원했고, Codex는 이를 제안이 아니라 규칙으로 받아들였습니다.

이것은 장점이자 단점입니다.

  • 큰 작업의 경우, 나는 그런 규율을 원합니다: 먼저 라우팅하고, 먼저 계획하고, 작업이 독립적일 때는 하위 에이전트를 사용하고, 완료 선언 전에 검토합니다. 바로 이 점에서 Superpowers가 빛을 발합니다.
  • 작은 작업의 경우, 과도할 수 있습니다. 복사본을 약간 수정하거나 한 줄 버그 수정을 요청할 때는 항상 방법론이 필요하지 않을 때가 있습니다. 이는 Codex 자체와 같은 트레이드오프입니다: 큰 작업에서 신뢰성을 높이는 규율이 작은 작업에서는 무겁게 느껴질 수 있습니다.

그래도 실패 모드를 선택해야 한다면, 나는 거의 매번 **“프로세스가 너무 많음”**을 **“빠른 잘못된 코드”**보다 선호합니다.

Sub‑Agents

Claude 은 서브‑에이전트에 더 강하게 기본 설정됩니다.

Codex 도 서브‑에이전트를 사용할 수 있지만, 내 워크플로에서는 보통 명시적으로 요청하거나 AGENTS.md에 인코딩해야 합니다. 이는 Codex 서브‑에이전트 문서와 일치하는데, 해당 문서에서는 서브‑에이전트를 더 큰 작업을 위한 명시적인 도우미로 설명합니다. 첫 번째 실행에서는 아직 튜닝을 하지 않았기 때문에 Codex는 순차적으로 너무 많은 작업을 수행하는 비용을 감수했습니다.

이것이 Claude의 실제 장점입니다: 서브‑에이전트는 컨텍스트를 격리하고 작업을 분할하여 큰 작업을 더 빠르게 진행시킬 수 있습니다.

하지만 위임은 위임된 작업이 제한적이고 기반이 확실할 때만 도움이 됩니다.

  • 부모 에이전트가 잘못된 가정을 하면, 여러 작업자가 잘못된 가정을 병렬로 구현하게 됩니다. 이는 레버리지가 아니라 곱셈입니다.

Codex 의 기본 설정은 더 보수적입니다. 작업이 명확히 이점을 제공하지 않는 한 작업을 적극적으로 분산시키지 않습니다. 때때로 이는 시간이 더 걸리게 하지만, 때때로 혼란을 방지합니다.

내가 신경 쓰는 지표

프롬프트에서 배포 가능한 브랜치까지 걸리는 시간은?

  • 프롬프트 → 차이점 은 아님.
  • 프롬프트 → “내가 변경했어.” 은 아님.
  • 프롬프트 → 자신 있는 요약 은 아님.
  • 프롬프트 → 에이전트 손상을 의심하며 모든 줄을 검토해야 할 필요 없이 바로 배포할 수 있는 코드.

그 지표에서는 1시간짜리 Claude 실행이 8시간짜리 Codex 실행보다 느렸습니다. Claude 출력물은 신뢰할 경로가 없었기 때문에 모든 줄을 의심해야 했습니다. 반면 Codex 출력물은 이미 지루한 작업을 마쳤습니다: 검사, 편집, 테스트, 검증.

그래서 나는 짜증이 나더라도 Codex를 계속 사용합니다.

가장 빠른 에이전트가 필요하지 않다.
신뢰하고 배포할 수 있는 출력물을 내놓는 에이전트가 필요하다.

Originally published at harryy.me.

0 조회
Back to Blog

관련 글

더 보기 »

개발자로서 당신의 Fear Score는?

두려움은 우리에게 모든 것을 앗아갑니다. 나는 한 번 “You miss 100% of the shots you don’t take”라는 말을 들었고, 그것이 내 경력 전반에 울려 퍼졌습니다. 돌아보면, 나는 man…