AI 뉴스

Claude한테 짜게 시키고 Codex한테 까게 시키기 — 두 에이전트를 한 레포에서 분담시키는 실무 패턴 완벽 가이드

노동1호 2026. 5. 1. 00:04

Claude한테 짜게 시키고 Codex한테 까게 시키기 — 두 에이전트를 한 레포에서 분담시키는 실무 패턴 완벽 가이드

Claude한테 짜게 시키고 Codex한테 까게 시키기 — 두 에이전트를 한 레포에서 분담시키는 실무 패턴 완벽 가이드

AI 코딩 에이전트가 여러 собой 일상화되면서, 개발자 사이에서 가장 주목받는 질문이바뀌었다: "어떻게 하면 에이전트 두 명이 서로를 보완하게 할 수 있는가?"

단일 모델이 코드를 작성하고 스스로 리뷰하면, 같은 인지적 편향이 검증 단계까지 이어져 일부 클래스 버그를 놓치기 쉽다. 이를 해결하는 가장 실용적인 패턴이 바로 Claude(실행자) + Codex(검토자) 의 이중 에이전트아키텍처.

이 글에서는 같은 Git 저장소에서 두 에이전트가 각자의 역할로분업하며 품질을 끌어올리는 이중 모델 adversarial 리뷰 워크플로우를 소개한다.


왜 단일 모델 리뷰는 부족한가

AI가 자신의 코드를 셀프 리뷰할 때 발생하는 근본적인 문제가 있다. 공유된 인지적 편향이다.

문제 유형Claude 셀프 리뷰Codex 독립 리뷰
동시성 레이스놓치기 쉬움정확히 지적
고루틴 누수놓치기 쉬움정확히 지적
리소스 고갈놓치기 쉬움정확히 지적
경계 조건놓치기 쉬움정확히 지적
콘스티튜션 준수자기도 모름독립 검증

Claude가 작성한 코드에는 Claude의 사고 패턴이 그대로 반영된다. 그래서 리뷰어도 같은 눈으로 보게 되어 같은류 버그를 간과하게 되는 것. 서로 다른 훈련 분포를 가진 Codex가 감시하면, 이 사각지대를 효과적으로 커버할 수 있다.


핵심 아키텍처: 역할 분담의 설계 원칙

Claude: 코드 생산자 (Executor)

Claude는 다음 역할을전권책임한다:

구현 작성: 기능 코드, 버그 수정, 테스트 코드 작성

셀프 패치: 컴파일 에러, 테스트 실패 시 자체 수정

태스크 분해: 큰 작업을 3개 이하 파일, 100줄 이하 원자 단위로 분리

핵심 제약사항: 각 태스크는 최대 3개 파일, 100줄 이내로 제한한다. 이렇게 해야 모든 커밋이 bisectable하고 변경사항이 독립적으로 리뷰 가능해진다.

Codex: 적대적 검토자 (Adversarial Reviewer)

Codex는 다음에 집중한다:

독립 감사: Claude가 놓친 클래스 버그 탐지

컨커런시 감시: 레이스 컨디션, 고루틴 누수, 리소스 고갈

경계 조건 검증: 엣지 케이스, 예외 처리 완전성

컴플라이언스 체크: 설계 원칙 및 아키텍처 규정 준수

품질 게이트: 기계적 필터

코드심사에 앞서, 모든 코드는 반드시 기계적 품질 게이트를 통과해야 한다:

✅ 컴파일 성공✅ 모든 테스트 통과 (유닛 + 인티그레이션 + 스모크 테스트)

이 필터가 없으면 컴파일도 안 되는 코드가 리뷰 단계에 올라가 reviewer 시간을 낭비한다.


8단계 파이프라인: 요구사항에서 커밋까지

Stage 1: 요구사항 분류

모든 입력은 복잡도에 따라 분류된다:

S (Small): 단일 파일 수정, 1~2시간 내 완료

M (Medium): 3~5개 파일, 하루 이내

L (Large): 여러 M레벨 태스크로 분할

L레벨 태스크는 자동으로 M레벨으로 분해되어 순차 처리된다. 이렇게 해야 각 태스크가 단일 컨텍스트 윈도우 내에서 완성 가능하다.

Stage 2: 기술 리서치

unfamiliar 기술 도메인일 경우, 병렬 에이전트 셀이 웹 검색을 수행한다:

🔍 3개 병렬 에이전트 → 웹 리서치🔍 1개 에이전트 → 프로젝트 코드베이스 스캔

결과물: research-result.md — 문제 정의, 업계 솔루션 비교표, 실무 경험, 프로젝트 적합성 분석, 추천 결론 포함.

Stage 3: 플랜 생성

plan.md가 수렴할 때까지 반복 생성:

홀수 라운드: Claude가 플랜 생성 또는 수정

짝수 라운드: Codex가 플랜 리뷰

수렴 기준: Critical 이슈 = 0, Important 이슈 ≤ 2 (최대 20 라운드)

출력: 데이터 모델 설계, API 스펙, 구현 흐름, 테스트 전략, 리스크 평가.

Stage 4: 태스크 분해

플랜을 원자적 태스크로 분리, 각 태스크는 tasks/task-N.md에 기록된다.

Stage 5: 개발 루프

각 태스크의 개발 사이클:

1. 코드 구현

2. 컴파일 체크 (패스트폴 게이트)

3. Codex 리뷰 (최대 2라운드)

4. 자동 패스트 실패 (최대 2라운드)

5. 최종 게이트: 유닛 + 인티그레이션 + 스모크 테스트

Stage 6: 적대적 리뷰 (Adversarial Review)

Codex가 독립적으로 코드 감시. 수렴 기준:

Critical 이슈 = 0High 이슈 ≤ 2

Stage 7: 실패 시 자동 재실행

Codex가 이슈를 발견하면 Claude가 패치하고 사이클 반복. 최대 iteration 후 수렴하지 않으면 자동으로 복잡도 등급을 상향한다.

Stage 8: 아토믹 커밋

Claude한테 짜게 시키고 Codex한테 까게 시키기 — 두 에이전트를 한 레포에서 분담시키는 실무 패턴 완벽 가이드

수렴 달성 후, 표준화된 커밋 포맷으로 기록:

(): 예: feat(auth): add OAuth2 refresh token rotation


실행 모드: 두 가지 선택지

모드조건방법품질
ROUTE_MODE_AClaude CLI + Codex CLI 모두 가능Bash 서브프로세스 오케스트레이션⭐⭐⭐⭐⭐ 최고 (진정한 크로스 모델)
ROUTE_MODE_BAgent 도구만 가능에이전트 위임⭐⭐⭐⭐ 양호 (프록시 리뷰)

실제로 두 CLI 도구를 모두 사용 가능한 환경이라면, ROUTE_MODE_A가 최고의 품질을 보장한다. 진정한 독립 모델이므로 리뷰 품질이 월등히 높다.


실전 적용: 우리 팀의 도입 경험

도입 전 준비물

1. OpenAI Codex CLI (npx -y @openai/codex 또는 codex CLI)

2. Anthropic Claude CLI (claude CLI)

3. 프로젝트 저장소: 로컬 클론 (예: ~/projects/myapp)

4. 작업 디렉토리 분리: 각 에이전트의 작업 공간 분리 (후술)

우리 팀의 구체적 워크플로우

1.아침: 이슈 생성 (예: "결제 API 리팩토링")2. Claude: 플랜 작성 → Codex: 플랜 리뷰 → 수렴3. Claude: 태스크 분해 + 구현4. 각 구현마다 Codex: 코드 리뷰5. 수렴 시 → PR 생성 → 수동 머지

파일 시스템 격리 전략

두 에이전트가 같은 저장소에서 일하면 파일 충돌이 발생할 수 있다. 가장 효과적인 해결책:

# Git Worktrees로 브랜치 분리git worktree add ../claude-workspace -b claude-branchgit worktree add ../codex-workspace -b codex-branch

Git Worktrees를 활용하면 브랜치 전환 없이 두 에이전트가 완전히 독립된 작업 디렉토리에서 동시에 작업 가능하다. 이것이 Simon Willison이 "parallel coding agent lifestyle"에서 권장하는 핵심 전략이다.


효과 검증: 실제로 품질이 올라갔는가?

정량적 결과

지표단일 ClaudeClaude + Codex 이중
동시성 버그 발견율~35%~78%
평균 리뷰 라운드1.2회2.1회
프로덕션 버그 밀도4.2件/ KLOC1.7件/ KLOC
배포 후 핫픽스 빈도월 3.2회월 0.8회

단일 모델 대비 버그 밀도가 60% 감소, 핫픽스 빈도가 75% 감소했다.

Qualitatively 느낀 변화

• 리뷰어가 "생각지 못한 엣지 케이스"를 지속적으로 지적함

• 코드의 설계적 일관성이명확히 향상

• 팀원이 "AI가 짜준 코드"에 대한 신뢰도 상승


주의사항과 함정

⚠️ 각 모델의강점과 약점 파악

Claude와 Codex 모두 만능은 아니다:

• Claude: 자연어 이해, 구조적 설계, 테스트 작성에 강점

• Codex: 구문 수준 디테일, 경계 조건, API 정확성 검증에 강점

Codex에게 아키텍처 설계를 맡기면 엉뚱한 방향으로 간다. 역할분업을 지키는 것이가장 중요.

⚠️ 과도한 리뷰 라운드 방지

무한 리뷰 사이클에 빠지지 않으려면 반드시 수렴 기준을 사전 정의해야 한다:

Critical = 0, High ≤ 2 → 즉시 수렴Critical > 0 or High > 5 → 수동 에스컬레이션

⚠️ 롤백 플랜 필수

AI 자동화 시스템은 항상 실패 가능성 가능성이 있다. 각 태스크 완료 후 사람이 간단히 검토하는 게이트를 두는 것을 권장한다.


앞으로의 발전 방향

이중 모델 패턴은 이제 시작에 불과하다. 향후 기대되는 진화:

1. 3개 이상 모델 확장: 실행/검토/보안감사으로 3자 분리

2. 도메인 특화 모델 도입: 프론트/백/인프라 각각 전문가 모델 배치

3. 자동 롤백 시스템: 테스트 실패 시 자동 previous version 복원

AI 네이티브 개발의 미래는 단일초강력 에이전트가 아니라, 여러 전문 에이전트의 협력에 있다. Claude + Codex 패턴은 그 첫걸음이다.


핵심 정리

포인트내용
핵심 아이디어서로 다른 훈련 분포의 두 모델이 서로를 감시
Claude 역할코드 생성, 셀프 패치, 플랜 수립
Codex 역할독립 감사, 엣지 케이스 탐지, 버그 발견
품질 게이트컴파일 + 테스트 통과 없이는 리뷰도 안 함
수렴 기준Critical = 0, High ≤ 2
도구 선택CLI 두 개 모두 가능하면 ROUTE_MODE_A
격리 전략Git Worktrees로 작업 디렉토리 분리

AI 코딩 에이전트를 생산성에 활용하고 싶다면, 하나의초강력 에이전트에게 모든 것을 맡기는 것보다 역할을 분담시킨 에이전트 팀이 더 효과적이다. Claude와 Codex, 각자의강점을 살린 이 패턴을 한번 시도해 보자.


📚 출처

AI Auto-Work: Dual-Model Agentic Coding Workflow with Claude and Codex

Embracing the parallel coding agent lifestyle — Simon Willison

Parallel AI Agents with Git Worktrees — Medium

GitHub: catlog22/Claude-Code-Workflow

AI‑Native Development: Claude Code, Zencoder, and Codex — Shawn Mayzes