리팩터링에서 Codex가 하는 일
- 리팩터링 백로그를 작은 단계로 처리하고, 단계마다 풀 리퀘스트를 따로 엽니다.
- 단계마다 전후로 테스트를 실행하고, 실패하면 멈춥니다.
- 마이그레이션의 기계적인 부분을 맡습니다: 코드베이스 전체의 이름 변경, API 업그레이드, 새 라이브러리로의 이전.
- 죽은 코드와 중복된 로직을 지우고, 지운 이유를 하나하나 설명합니다.
리팩터링에 쓰는 Codex 기능
| 기능 | 하는 일 | 시작 방법 |
|---|---|---|
/plan | 플랜 모드로 바꾸고 편집 전에 단계를 제안합니다 | /plan Propose a migration plan for the billing module |
/goal | Codex가 계속 향해 일할 목표를 정합니다 | /goal Finish the migration and keep tests green |
| 워크트리 | 데스크톱 앱에서 내 체크아웃과 분리해 리팩터링을 실행합니다 | 작업을 시작할 때 워크트리 선택 |
codex exec resume | 나중 실행에서 같은 세션을 이어 갑니다 | codex exec resume --last "Continue with the next step" |
리팩터링용 Codex 설정 방법
도구 연결하기
연결할 것은 없습니다. 리팩터링을 안전하게 만드는 것은 Codex가 실행할 수 있는 테스트 명령어와 단계별 크기 제한이니, 둘 다 AGENTS.md에 넣으세요.
# CLI에서: 계획에 합의한 다음 끝 지점 정하기 /plan Propose a migration plan for the billing module /goal Finish the migration and keep tests greenAGENTS.md에 규칙 쓰기
Codex는 일을 시작하기 전에 AGENTS.md를 읽습니다. 먼저
~/.codex/AGENTS.md를, 이어서 저장소 루트부터 작업 중인 폴더까지의 파일을 읽습니다. 이 일의 규칙을 여기에 넣거나, 길다면.agents/skills/아래 스킬로 만드세요. AGENTS.md 가이드를 참고하세요.## 리팩터링 규칙 - 동작은 바꾸지 마세요. 테스트를 바꿔야 한다면 멈추고 물어보세요. - 시작하기 전과 단계가 끝날 때마다 `npm test`를 실행하세요. - 풀 리퀘스트 하나에 한 단계, 변경은 400줄 미만. - REFACTOR.md를 최신으로 유지하세요: 끝난 것은 체크하고, 발견한 것은 추가하세요. - migrations/, 생성된 파일, 공개 API는 묻지 않고 건드리지 마세요.대화형 화면 없이 실행하기
codex exec명령은 작업 하나를 실행하고 종료합니다. 진행 상황은 stderr로, 최종 메시지는 stdout으로 나옵니다.-o는 최종 메시지를 파일에도 쓰고--json은 이벤트를 스트리밍합니다.--sandbox workspace-write를 넘기지 않으면 샌드박스는 읽기 전용입니다.# 첫날, 그리고 다음 날 같은 세션 이어 가기 codex exec --sandbox workspace-write "REFACTOR.md의 첫 단계를 해 줘" codex exec resume --last "REFACTOR.md에서 체크되지 않은 다음 단계를 이어서 해 줘"일정에 올리기
ChatGPT 데스크톱 앱이나 웹에서 예약 작업을 만들거나(CLI로는 관리할 수 없습니다), cron에서
codex exec명령을 실행하세요. Codex를 능동적으로 만드는 방법을 참고하세요.
한계와 안전
- 테스트가 없으면 리팩터링과 동작 변경을 구분하지 못합니다. 먼저 그 영역에 테스트를 추가하세요.
- 큰 재작성을 한 번에 하면 리뷰하기 어렵습니다. 하나씩 머지되는 작은 단계가 더 안전하고, 결국 더 빠릅니다.
- 어떤 이상한 코드가 의도된 것인지 모릅니다. 그런 곳은 주석이나 규칙에 표시해 두세요.
- Codex는 기본적으로 명령을 샌드박스 안에서 실행합니다. 쓰기는 워크스페이스 안에서만 되고 네트워크는 꺼져 있습니다.
danger-full-access는 격리된 러너나 컨테이너에서만 쓰세요.
리팩터링에는 Claude Code와 Codex 중 무엇을 쓸까요?
규칙은 그대로 옮겨 쓸 수 있습니다. AGENTS.md에 한 번 쓰고 CLAUDE.md에 @AGENTS.md를 넣으면 두 에이전트가 같은 파일을 읽습니다.
다른 에이전트용 단계별 안내: Claude Code에서 하는 리팩터링.
| Claude Code | Codex | |
|---|---|---|
| 규칙 파일 | CLAUDE.md | AGENTS.md |
| 도구 연결 | claude mcp add | codex mcp add 또는 config.toml |
| 나 없이 실행 | claude -p | codex exec |
| 일정 | /schedule, 데스크톱 예약 작업, /loop | ChatGPT 앱의 예약 작업, cron |
| 리팩터링용 내장 기능 | 플랜 모드, 워크트리, 동적 워크플로, /simplify | /plan, /goal, codex exec resume |
리팩터링 담당자 두기
명령어는 누군가 기억해서 실행할 때만 돌아갑니다. Crewmark는 내 Codex 세션을 역할, 숫자로 된 목표, 근무 시간, 하트비트를 갖춘 AI 직원으로 바꿔, 일이 일정에 맞춰 진행되고 보드에 올라오게 합니다.
역할에서 시작하기
AI 소프트웨어 엔지니어의 브리프에 이 규칙을 넣으세요.
일을 보드에 올리기
이 일을 반복 이슈로 추가하세요. 직원이 하트비트에 깨어나 일을 하고 댓글로 보고합니다.
관련 페이지
머지 전에 코드 리뷰가 각 단계를 확인합니다.
자주 묻는 질문
Codex는 리팩터링을 잘하나요?
네, 변경을 계획하고 테스트한다면 그렇습니다. 먼저 /plan을 쓰고, AGENTS.md에 테스트 명령어를 두고, 단계마다 풀 리퀘스트가 되는 작은 단계로 일하세요.
긴 Codex 리팩터링이 방향을 잃지 않게 하려면 어떻게 하나요?
테스트를 통과한 채로 마이그레이션을 끝내는 것 같은 목표를 /goal로 정하세요. Codex는 그 목표를 향해 계속 일하고, 목표는 보기, 수정, 일시 중지, 삭제할 수 있습니다.
Codex가 다음 날 리팩터링을 이어 갈 수 있나요?
네. codex exec resume --last는 가장 최근 세션을 새 프롬프트로 이어 가므로, 매일 실행이 지난번에 멈춘 곳에서 시작합니다.
2026년 11월 13일에 Claude Code 문서와 OpenAI의 Codex 문서를 기준으로 확인했습니다.