38단계Claude Code와 Codex 나란히 쓰기
한쪽이 만들고 다른 쪽이 검토하게 하면, 한 에이전트로는 보이지 않던 실수가 드러납니다.
걸리는 시간 · 읽기 약 12분 · 따라 하기 약 50분 · 난이도 ★★★ 심화
이 단계를 마치면
- 우리 팀 기준으로 어떤 일을 Claude Code에, 어떤 일을 Codex에 맡길지 표로 정할 수 있습니다.
- 한쪽이 만든 PR을 다른 쪽이 검토하는 교차 검토를 한 번 끝까지 해 볼 수 있습니다.
- CLAUDE.md와 AGENTS.md가 서로 어긋나지 않게 함께 관리할 수 있습니다.
이제 여러분의 저장소에는 에이전트가 둘 있습니다. 제3부에서 함께 일한 Claude Code와, 이번 부에서 들인 Codex입니다. 둘 다 파일을 읽고 고치고 명령을 실행하며, 둘 다 규칙 파일을 읽고 계획을 먼저 내놓습니다. 그렇다면 무엇을 누구에게 맡겨야 할까요? 그리고 둘이 같은 저장소에서 일할 때 무엇을 조심해야 할까요?
이 단계의 답은 간단합니다. 일을 나누는 기준은 우리 팀이 정하고, 두 에이전트는 서로를 검토하는 데 씁니다. 사람이 판단하고 합친다는 원칙은 그대로입니다.
어떤 일을 어디에 맡길까
어느 에이전트가 더 뛰어난지는 이 책에서 판정하지 않습니다. 모델은 몇 주마다 바뀌고, 같은 일도 저장소와 요청 방식에 따라 결과가 달라집니다. 대신 기능과 환경의 차이로 나눕니다. 아래 표는 출발점일 뿐이니, 한 달쯤 써 본 뒤 우리 팀 경험으로 고쳐 쓰십시오.
| 일 | 먼저 맡길 곳 | 이유 |
|---|---|---|
| 이미 CLAUDE.md와 훅이 갖춰진 도구의 기능 추가 | Claude Code | 제3부에서 쌓은 규칙과 장치를 그대로 씁니다 |
| 서로 겹치지 않는 작은 수정 여러 개 | Codex 클라우드 | 여러 작업을 나란히 돌리고 PR로 받습니다(35단계) |
| 모든 PR에 대한 자동 리뷰 | Codex GitHub 리뷰 | @codex review와 자동 리뷰가 GitHub에 붙어 있습니다(36단계) |
| 한쪽이 만든 변경의 검토 | 만들지 않은 쪽 | 같은 가정 안에서 보지 않게 합니다 |
| 대화 없이 도는 정기 점검 | 두 도구 모두 가능, Codex는 codex exec |
Codex는 기본이 읽기 전용이라 시작하기 쉽습니다(37단계) |
| 회사가 이미 쓰는 요금제로 해결되는 일 | 그 요금제의 도구 | 새 계약과 보안 검토를 줄입니다 |
표에서 가장 중요한 것은 넷째 항목입니다. 두 에이전트를 들인 가장 큰 이유가 교차 검토이기 때문입니다.
교차 검토: 만든 쪽과 보는 쪽을 나눈다
교차 검토는 한쪽 에이전트가 만든 변경을 다른 쪽 에이전트가 검토하게 하는 방법입니다. 29단계에서 검토만 맡는 서브에이전트를 두었던 것과 같은 원리인데, 이번에는 아예 다른 회사가 만든 모델이 봅니다. 훈련과 습관이 다르니 놓치는 곳도 다를 가능성이 큽니다.
가장 쉬운 조합은 이렇습니다. Claude Code로 기능을 만들어 PR을 올리고, 그 PR에 @codex review를 부릅니다. 반대 방향도 됩니다. Codex 클라우드가 만든 PR을 로컬로 받아, Claude Code에게 "이 브랜치에서 바뀐 내용을 읽고 보고만 해 줘"라고 맡깁니다.
교차 검토에는 규칙 세 가지가 필요합니다.
첫째, 검토하는 쪽에는 고치는 권한을 주지 않습니다. 검토자가 바로 고치기 시작하면 누가 무엇을 바꿨는지 흐려집니다. Codex라면 읽기 전용 샌드박스로, Claude Code라면 "고치지 말고 보고만"으로 요청합니다.
둘째, 두 쪽에 같은 기준을 줍니다. 만든 쪽이 따른 규칙과 검토하는 쪽이 보는 기준이 다르면, 검토는 취향 싸움이 됩니다. 아래에서 다룰 공통 규칙이 이 기준이 됩니다.
셋째, 의견이 갈리면 사람이 화면에서 확인합니다. Codex는 문제라고 하고 Claude Code는 괜찮다고 할 때, 어느 쪽 말을 믿을지 정하는 방법은 하나뿐입니다. 36단계처럼 재현해 봅니다. 재현되면 받아들이고, 안 되면 이유를 적어 둡니다. 두 에이전트에게 서로의 의견을 전달해 토론시키는 방법도 있지만, 결론은 사람이 냅니다.
규칙 파일 두 개를 함께 관리하기
두 에이전트가 한 저장소에서 일하면 규칙 파일도 둘이 됩니다. Claude Code는 CLAUDE.md를, Codex는 AGENTS.md를 읽습니다. 공식 문서 기준으로 Codex는 CLAUDE.md를 자동으로 읽지 않습니다. 기본으로 읽는 파일은 AGENTS.override.md와 AGENTS.md뿐입니다.
관리하는 방법은 세 가지입니다.
| 방법 | 하는 법 | 주의할 점 |
|---|---|---|
| 공통 규칙을 두 파일에 똑같이 둔다 | 두 파일 맨 위에 "공통 규칙" 섹션을 같은 문장으로 두고, 도구별 내용은 그 아래에 적습니다 | 한쪽만 고치면 어긋납니다. 고칠 때는 두 파일을 한 커밋에 함께 고칩니다 |
| Codex가 CLAUDE.md도 읽게 한다 | config.toml의 project_doc_fallback_filenames에 CLAUDE.md를 넣습니다 |
Codex는 폴더마다 한 파일만 읽습니다. 같은 폴더에 AGENTS.md가 있으면 그쪽을 읽습니다. 실제로 읽히는지 직접 시험해야 합니다 |
| 한 번 가져오고 따로 관리한다 | /import로 Claude Code 설정을 가져온 뒤 AGENTS.md를 다듬습니다 |
가져온 뒤부터는 두 파일이 따로 변합니다. 정기적으로 비교합니다 |
둘째 방법은 공식 문서에 설정 방법이 나와 있지만, 이 책을 쓰면서 CLAUDE.md를 넣어 직접 시험하지는 못했습니다. 쓰려면 규칙 하나를 일부러 CLAUDE.md에만 적고 Codex가 그 규칙을 아는지 물어 확인하십시오.
어느 방법을 고르든 한 달에 한 번은 두 파일을 비교합니다. 아래 두 번째 프롬프트를 쓰면 됩니다. 규칙 파일이 어긋나면 두 에이전트가 서로의 작업을 되돌리는 일이 생깁니다. 현장 장면이 바로 그 이야기입니다.
비용과 요금제
두 도구를 쓰면 구독도 둘입니다. 결정하기 전에 확인할 것을 정리해 둡니다. 가격은 집필 시점 기준이고 자주 바뀝니다.
Codex는 ChatGPT 요금제에 들어 있습니다. 공식 요금 페이지 기준으로 Plus는 월 20달러, Pro는 월 100달러부터이고, Business는 연간 결제 시 사용자당 월 20달러(2인 이상), 월간 결제 시 25달러입니다. 요금표 기준으로 GitHub 코드 리뷰와 클라우드 연동은 Plus부터 들어 있고, Free와 Go는 데스크톱 앱 중심으로 안내돼 있습니다. 사용량은 5시간 단위 한도와 주간 한도로 관리되고, 로컬과 클라우드 작업이 같은 한도를 나눠 씁니다. ChatGPT의 Work 모드도 Codex와 한도를 함께 씁니다. 팀원이 Work로 보고서를 많이 만들면 Codex에 쓸 몫이 줄어드는 셈입니다.
API 키로 로그인하면 쓴 만큼 내는 방식이 됩니다. 대신 클라우드 작업, GitHub 리뷰, Slack 연동 같은 클라우드 기능은 쓸 수 없습니다. 회사 자료를 다룬다면 데이터 학습 여부도 따져야 합니다. Business 이상은 업무 데이터를 기본으로 학습에 쓰지 않고, Plus와 Pro는 개인이 직접 설정을 확인해야 합니다. 7단계의 원칙에 비춰 보십시오. Claude 쪽 요금과 한도는 Anthropic의 공식 안내에서 따로 확인합니다.
현실적인 출발점은 한쪽을 주력으로 두고 다른 쪽은 검토용으로 가볍게 쓰는 것입니다. 한 달 동안 어느 쪽 한도에 먼저 닿는지, 교차 검토가 실제로 무엇을 잡아냈는지 기록해 두면, 다음 달에 요금제를 조정할 근거가 됩니다. 94단계에서 다룰 에이전트 평가도 이 기록에서 시작합니다.
현장 장면
오세린 차장의 비품 신청 페이지는 이제 두 에이전트가 함께 손봅니다. 기능은 Claude Code가 만들고, PR마다 Codex가 자동 리뷰를 합니다. 첫 주는 순조로웠습니다. Claude Code가 붙인 월별 집계 화면에서 신청자 이름이 그대로 나가는 것을 Codex 리뷰가 잡아냈습니다. "신청자는 부서명만 보여 준다"는 규칙 위반이었습니다. 오 차장은 재현해 본 뒤 받아들였습니다.
둘째 주에 이상한 일이 생겼습니다. 신청일 표시 형식이 커밋마다 바뀌었습니다. Claude Code가 고친 PR에서는 "2026.10.15"였다가, Codex 클라우드에 맡긴 작은 수정 뒤에는 "2026-10-15"가 되고, 다음 Claude Code 작업에서 다시 점으로 돌아갔습니다. 오 차장은 두 규칙 파일을 나란히 열었습니다. CLAUDE.md에는 지난달 Claude Code와 작업하며 급히 넣은 "날짜는 YYYY.MM.DD로 쓴다"가 있었습니다. AGENTS.md에는 그 문장이 없고, /init 초안에서 온 "날짜는 ISO 형식(YYYY-MM-DD)"이 남아 있었습니다. 33단계에서 두 파일 맨 위에 "규칙을 고치면 두 파일을 함께 고친다"고 적어 두었지만, 그 문장도 결국 부탁이었습니다. 두 에이전트는 각자 받은 규칙을 충실히 지켰을 뿐입니다.
오 차장은 두 파일 맨 위에 "공통 규칙" 섹션을 같은 문장으로 두고, 날짜 형식을 하나로 정했습니다. 두 파일을 한 커밋에 함께 고치고, 커밋 메시지에 "공통 규칙 맞춤"이라고 적었습니다. 부탁만으로는 모자라니 확인하는 절차도 붙였습니다. 매달 첫 월요일에 아래 두 번째 프롬프트로 두 파일을 비교하는 일을 달력에 넣은 것입니다. 팀장에게는 이렇게 보고했습니다. "두 에이전트는 각자 받은 규칙대로 했습니다. 규칙을 다르게 준 건 저였습니다." 팀장은 웃으며 그 보고를 다음 달 요금제 논의 자료에 붙였습니다.
따라 하기
- 위의 "어떤 일을 어디에 맡길까" 표를 복사해, 우리 팀의 실제 일 다섯 가지로 다시 씁니다. 성공 기준: 일마다 맡길 곳과 이유가 적혀 있습니다.
- CLAUDE.md와 AGENTS.md를 아래 두 번째 프롬프트로 비교합니다. 성공 기준: 서로 어긋나는 규칙 목록을 받았습니다.
- 두 파일 맨 위에 같은 문장의 "공통 규칙" 섹션을 두고, 어긋난 규칙을 하나로 정한 뒤 한 커밋에 함께 고칩니다. 성공 기준: 두 파일의 공통 규칙 섹션이 글자까지 같습니다.
- Claude Code로 작은 기능 하나를 만들어 PR을 올리고
@codex review를 부릅니다. 성공 기준: Codex 리뷰가 달리고, 지적마다 판단이 적혀 있습니다. - 반대 방향으로 한 번 더 합니다. Codex에게 맡긴 변경을 Claude Code에게 아래 첫 번째 프롬프트로 검토하게 합니다. 성공 기준: 고친 파일 없이 보고만 돌아왔고, 두 검토 결과를 비교해 적었습니다.
- 한 달 동안 두 도구의 사용량 한도에 닿은 날과, 교차 검토가 잡아낸 문제를 기록할 표를 만듭니다. 성공 기준: 첫 기록 하나가 들어 있습니다.
복사해 쓰는 프롬프트
다른 에이전트가 만든 변경을 검토해 줘. 파일은 하나도 고치지 말고 보고만 해 줘.
- 대상: [브랜치 이름 또는 PR 주소]
- 이 저장소의 공통 규칙(CLAUDE.md와 AGENTS.md 맨 위)을 기준으로 봐 줘.
1. 바뀐 파일 목록과 파일마다 바뀐 내용을 짧게
2. 공통 규칙을 어긴 곳이 있으면 규칙 문장과 위치
3. 사용자 화면에서 문제가 될 수 있는 것, 내가 재현해 볼 순서
4. 확인하지 못한 것은 확인하지 못했다고 적어 줘
이 저장소의 CLAUDE.md와 AGENTS.md를 비교해 줘. 두 파일 모두 아직 고치지 마.
1. 두 파일에 모두 있고 내용이 같은 규칙
2. 두 파일에 모두 있지만 내용이 다른 규칙(예: 날짜 형식, 테스트 명령). 어느 쪽이 지금 코드와 맞는지도 적어 줘
3. 한쪽에만 있는 규칙
4. 두 파일 맨 위에 똑같이 둘 "공통 규칙" 섹션 초안
막히면 이렇게
| 증상 | 원인 | 해결 |
|---|---|---|
| 같은 부분이 커밋마다 바뀌었다 돌아옵니다 | 두 규칙 파일의 내용이 다릅니다 | 두 파일을 비교하고 공통 규칙 섹션으로 맞춘 뒤 한 커밋에 함께 고칩니다 |
| 검토를 맡겼더니 검토자가 파일을 고쳐 버렸습니다 | 고치지 말라는 요청이나 읽기 전용 설정이 없었습니다 | 그 변경을 되돌리고, "보고만"을 첫머리에 적거나 읽기 전용으로 다시 맡깁니다 |
| 두 에이전트의 검토 의견이 반대입니다 | 서로 다른 가정으로 읽었습니다 | 화면에서 직접 재현해 판단하고, 판단 이유를 PR에 남깁니다 |
| CLAUDE.md 규칙을 Codex가 모릅니다 | Codex는 기본으로 CLAUDE.md를 읽지 않습니다 | 공통 규칙을 AGENTS.md에도 두거나 대체 파일명 설정을 시험해 봅니다 |
| 두 구독 비용이 부담스럽습니다 | 두 도구를 모두 주력으로 쓰고 있습니다 | 한쪽을 주력, 다른 쪽을 검토용으로 두고 한 달 기록으로 요금제를 조정합니다 |
스스로 점검
- ☐ 우리 팀의 실제 일 다섯 가지를 어느 에이전트에 맡길지 이유와 함께 적었습니까?
- ☐ 한쪽이 만든 변경을 다른 쪽이 고치지 않고 검토만 하게 해서, 결과를 직접 확인했습니까?
- ☐ CLAUDE.md와 AGENTS.md의 공통 규칙이 같은 문장인지 비교하고 맞춰 두었습니까?
점검 해설 보기
- 우리 팀의 실제 일 다섯 가지마다 맡길 에이전트와 이유가 적혀 있으면 통과입니다. 이유가 "더 잘해서"뿐이라면 「어떤 일을 어디에 맡길까」의 표처럼 기능과 환경의 차이, 이미 쓰는 요금제로 이유를 다시 씁니다. 한 달 뒤에 기록을 보고 고친다는 메모도 함께 남깁니다.
- 한쪽이 만든 변경을 다른 쪽이 파일을 고치지 않고 보고만 했고, 두 결과를 비교해 적었으면 통과입니다. 검토자가 파일을 고쳤다면 그 변경을 되돌리고 「복사해 쓰는 프롬프트」의 첫 번째 프롬프트로 다시 맡깁니다. 의견이 갈린 항목은 화면에서 재현해 판단합니다.
- CLAUDE.md와 AGENTS.md 맨 위의 공통 규칙 섹션이 글자까지 같고, 두 파일을 한 커밋에서 함께 고친 기록이 있으면 통과입니다. 어긋난 곳이 있다면 두 번째 프롬프트로 비교 목록을 받아 맞춥니다. 대체 파일명 설정을 쓰기로 했다면 CLAUDE.md에만 적은 규칙을 Codex가 아는지 직접 시험합니다.
기억할 것
- 맡길 곳은 우리 팀의 기록으로 정합니다. 교차 검토에서는 검토하는 쪽에 고치는 권한을 주지 않습니다.
- 규칙 파일 두 개는 공통 규칙을 같은 문장으로 두고, 고칠 때는 한 커밋에 함께 고칩니다.
- 요금제는 한 달 동안 한도에 닿은 날과 잡아낸 문제를 기록한 뒤 조정합니다.