Codex use case
코드베이스 리팩터링
기존 동작을 유지하면서 데드 코드를 제거하고 레거시 패턴을 최신 방식으로 바꾸세요.
Codex로 리팩터링을 검토하기 쉬운 작은 단위로 나누어 진행하세요. 데드 코드를 제거하고 크고 복잡한 파일의 구조를 단순화하세요. 중복 로직은 한곳으로 모으고 오래된 패턴은 최신 방식으로 바꾸세요.
Best for
- 데드 코드, 지나치게 큰 모듈, 중복 로직, 오래된 추상화 때문에 간단한 수정에도 시간과 노력이 많이 드는 코드베이스
- 현재 프레임워크와 기술 스택을 유지하면서 기존 코드를 현대화해야 하는 팀
Contents
코드베이스 리팩터링
기존 동작을 유지하면서 데드 코드를 제거하고 레거시 패턴을 최신 방식으로 바꾸세요.
Codex로 리팩터링을 검토하기 쉬운 작은 단위로 나누어 진행하세요. 데드 코드를 제거하고 크고 복잡한 파일의 구조를 단순화하세요. 중복 로직은 한곳으로 모으고 오래된 패턴은 최신 방식으로 바꾸세요.
Codex로 리팩터링을 검토하기 쉬운 작은 단위로 나누어 진행하세요. 데드 코드를 제거하고 크고 복잡한 파일의 구조를 단순화하세요. 중복 로직은 한곳으로 모으고 오래된 패턴은 최신 방식으로 바꾸세요.
Related links
Best for
- 데드 코드, 지나치게 큰 모듈, 중복 로직, 오래된 추상화 때문에 간단한 수정에도 시간과 노력이 많이 드는 코드베이스
- 현재 프레임워크와 기술 스택을 유지하면서 기존 코드를 현대화해야 하는 팀
Skills & Plugins
- 코드 현대화 작업의 변경 사항을 병합하기 전에 보안에 영향을 줄 수 있는 코드 정리 작업, 종속성 변경, 인증 플로우, 외부에 노출된 부분을 검토하세요.
- 검증된 코드 현대화 패턴, 검토 체크리스트 또는 변경 전후의 동작을 비교하는 워크플로우를 레포지토리나 팀에서 재사용할 수 있는 스킬로 만드세요.
| Skill | Why use it |
|---|---|
| Security Best Practices | 코드 현대화 작업의 변경 사항을 병합하기 전에 보안에 영향을 줄 수 있는 코드 정리 작업, 종속성 변경, 인증 플로우, 외부에 노출된 부분을 검토하세요. |
| Skill Creator | 검증된 코드 현대화 패턴, 검토 체크리스트 또는 변경 전후의 동작을 비교하는 워크플로우를 레포지토리나 팀에서 재사용할 수 있는 스킬로 만드세요. |
Starter prompt
소개
사용하지 않는 코드, 중복 로직, 더 이상 적합하지 않은 추상화, 비대한 파일, 레거시 패턴이 코드베이스에 쌓이면 작은 변경에도 필요 이상으로 많은 노력이 듭니다. 이럴 때는 리팩터링으로 기술 부채를 줄이는 방안을 고려하세요. 리팩터링은 기존 기술 스택을 유지하면서 시스템의 구조를 개선하는 작업입니다.
Codex는 먼저 복잡하게 얽힌 코드의 구조를 파악한 다음, 검토하기 쉬운 작은 단위로 코드를 정리할 수 있습니다. 사용하지 않는 코드 경로를 제거하고, 큰 모듈의 구조를 단순화하고, 중복된 코드 경로를 통합하고, 오래된 프레임워크 패턴을 최신 방식으로 바꾸면서 단계별 검증도 강화할 수 있습니다.
목표는 기존 코드베이스를 다음과 같이 개선하는 것입니다.
- 사용하지 않는 코드, 쓰임새가 사라진 헬퍼, 오래된 플래그, 더 이상 필요하지 않은 호환성 심을 제거하세요.
- 헬퍼를 추출하거나 컴포넌트를 나누거나 사이드 이펙트를 책임 범위가 명확한 곳으로 옮겨 복잡한 모듈의 크기를 줄이세요.
- 레거시 패턴을 레포지토리의 현재 관례에 맞게 바꾸세요. 프레임워크가 제공하는 최신 기본 기능, 더 명확한 타입, 더 단순한 상태 플로우, 표준 라이브러리 유틸리티 등을 활용할 수 있습니다.
- 외부에서 관찰되는 동작을 유지하면서 이후 변경에 드는 비용을 줄이세요.
사용 방법
- 코드를 수정하기 전에 Codex에 정리할 영역을 살펴보도록 요청하세요. 이때 복잡한 모듈, 중복 로직, 사용하지 않는 코드, 테스트, 외부에 보장하는 동작, 레포지토리의 현재 관례에 맞지 않는 패턴을 파악하도록 하세요.
- 한 번에 한 가지 정리 작업을 선택하세요. 사용하지 않는 코드를 제거하거나, 제어 흐름을 단순화하거나, 오래된 패턴을 최신 방식으로 바꾸거나, 큰 파일을 관리 책임이 분명한 작은 단위로 나누세요.
- Codex가 파일을 수정하기 전에 현재 코드가 어떻게 동작하는지, 구조를 어떻게 개선하려는지, 기존 동작이 유지되는지 확인하려면 최소한 무엇을 검증해야 하는지 설명하도록 하세요.
- 변경 사항을 한꺼번에 모아 검토하기보다 각 단계가 끝날 때마다 변경 내용을 검토하고 해당 동작을 확인하는 데 필요한 최소한의 검증을 실행하세요.
- 기술 스택 변경, 종속성 마이그레이션, 아키텍처 변경은 코드 정리를 마치는 데 꼭 필요한 경우에만 포함하고, 그 외에는 별도 작업으로 진행하세요.
작업을 시작하기 전에 계획 수립 모드에서 리팩터링 계획을 세울 수 있습니다.
ExecPlans 활용하기
코드 현대화 쿡북에서는 ExecPlans를 소개합니다. Codex는 이 문서를 사용해 정리 작업의 전체 진행 상황을 파악하고, 목표로 하는 최종 상태를 구체적으로 명시하고, 각 단계의 검증 결과를 기록할 수 있습니다. 리팩터링 대상이 여러 모듈에 걸쳐 있거나 작업에 여러 세션이 필요할 때 유용합니다. 삭제한 항목, 변경한 패턴, 계속 보장해야 하는 동작, 아직 보류 중인 작업을 이 문서에 기록하세요.
반복되는 작업에 스킬 활용하기
스킬은 여러 레포지토리, 서비스 또는 팀에서 같은 코드 정리 규칙을 적용할 때 유용합니다. 해당 프레임워크용 스킬이 있으면 활용하고, 위험이 큰 정리 작업에는 보안 및 CI 스킬을 추가하세요. 사용하지 않는 코드 제거, 모듈 추출, 레거시 패턴 현대화에 활용해 효과를 확인한 체크리스트가 있다면 팀 스킬로 만드세요. 여러 코드베이스에서 같은 현대화 작업을 반복한다면 Codex의 도움을 받아 처음 성공한 작업 절차를 재사용 가능한 스킬로 만들 수 있습니다.
Related use cases
Codex가 사용할 CLI 만들기
Codex에 어느 폴더에서나 실행할 수 있고 레포지토리 스크립트와 조합하거나 파일을 다운로드할 때 쓸 수 있는 CLI를 만들어 달라고 하세요
검증 모듈 마이그레이션
Codex에 마이그레이션 범위를 명시한 문서와 계약 테스트 픽스처, 미리 설정한 클라우드 환경을 제공하세요
목표를 향해 작업하기
Codex가 여러 대화 턴에 걸쳐 작업을 이어가야 하고 종료 조건의 충족 여부를 확인할 수 있다면 `/goal`을 사용하세요.