Codex소개와 개념

프로젝트와 스레드 운영

Codex app에서 프로젝트를 어떻게 나누고, 여러 스레드를 병렬로 운영하면 좋은지와 monorepo에서 분리 기준을 정리합니다.

마지막 수정 2026년 3월 20일

기본 패턴

text
나누는 기준
- 프로젝트: 작업 범위와 sandbox 경계
- 스레드: 하나의 목표와 대화 흐름
- Worktree: 같은 프로젝트 안 병렬 구현

추천 운영
- 저장소가 다르면 별도 프로젝트
- monorepo라도 앱이나 패키지 경계가 다르면 별도 프로젝트
- 같은 코드베이스 안의 다른 목표는 별도 스레드

설명

  • Codex app에서 프로젝트는 "이 디렉터리 안에서 작업한다"는 작업 범위이자 sandbox 경계입니다. CLI에서 특정 디렉터리에서 세션을 시작하는 감각과 비슷합니다.
  • 스레드는 그 프로젝트 안에서 하나의 목표를 수행하는 작업 단위입니다. 버그 수정, 문서화, 리팩터링처럼 목표가 다르면 스레드를 나누는 편이 대화와 diff를 추적하기 쉽습니다.
  • 공식 문서는 monorepo에서도 성격이 다른 앱이나 패키지를 별도 프로젝트로 여는 방식을 권합니다. 그래야 sandbox가 필요한 파일만 포함하고, 컨텍스트도 더 좁고 정확하게 유지됩니다.
  • 같은 프로젝트 안에서 서로 독립적인 구현을 동시에 돌리고 싶다면 새 프로젝트를 만드는 대신 Worktree 스레드를 추가하는 편이 자연스럽습니다.

짧은 예제

text
monorepo 예시
- apps/web 수정: web 프로젝트
- apps/api 성능 점검: api 프로젝트
- 같은 web 코드베이스에서 두 접근을 병렬 실험: web 프로젝트 안에서 스레드 2개 또는 Worktree 2

빠른 정리

구분역할
프로젝트작업 디렉터리와 sandbox 범위
스레드하나의 목표에 대한 대화와 변경 흐름
Worktree같은 프로젝트 안의 격리된 병렬 작업
프로젝트 분리monorepo에서 앱이나 패키지 경계가 뚜렷할 때

주의할 점

프로젝트를 너무 크게 잡으면 sandbox 범위가 넓어지고, 간접 컨텍스트도 함께 넓어집니다. monorepo에서는 "저장소 하나 = 프로젝트 하나"로 고정하지 말고 실제 작업 단위로 나누는 편이 더 안정적입니다.

참고 링크

2 sources