Codex프롬프팅과 세션 운영

작업 프롬프트 설계

Goal, Context, Constraints, Done when 구조로 Codex에게 일을 맡길 때 누락과 재작업을 줄이는 프롬프트 설계 기본 카드를 정리합니다.

마지막 수정 2026년 3월 20일

기본 패턴

text
Goal:
- 무엇을 바꿀지

Context:
- 관련 파일, 재현 절차, 현재 상태

Constraints:
- 건드리면 안 되는 API, 성능 조건, 스타일 규칙

Done when:
- 어떤 테스트와 어떤 결과가 나오면 끝인지

설명

  • 공식 Best practices는 강한 기본 프롬프트 구조로 Goal, Context, Constraints, Done when을 명시하라고 권합니다.
  • Goal은 결과를, Context는 현재 상태를, Constraints는 금지선과 선택 기준을, Done when은 종료 조건을 분리해 줍니다.
  • IDE에서는 열린 파일과 선택 코드가 자동으로 붙지만, CLI에서는 관련 파일 경로와 재현 절차를 더 명시적으로 주는 편이 좋습니다.
  • "버그를 고쳐 줘"보다 "이 재현 절차를 따라 실패를 확인하고, 최소 수정 후 관련 테스트를 다시 돌려라"가 훨씬 안정적으로 작동합니다.
  • 작업이 크더라도 모든 배경을 한 문단에 몰아넣기보다, 파일 경로와 조건을 구조적으로 나누는 편이 Codex가 더 잘 따릅니다.

짧은 예제

text
Goal:
- settings 저장 버그를 고쳐라

Context:
- 관련 파일: @app/settings/page.tsx @lib/api/settings.ts
- 재현: 저장 후 새로고침하면 토글 값이 원래대로 돌아감

Constraints:
- API 응답 형식은 바꾸지 말 것
- 수정은 최소화할 것

Done when:
- 재현이 더 이상 되지 않고
- 관련 테스트 또는 최소 검증 명령 결과를 함께 보고할 것

빠른 정리

구성 요소역할
Goal원하는 최종 결과를 고정
ContextCodex가 읽어야 할 현재 상태 제공
Constraints금지선과 선택 기준 지정
Done when종료 조건과 검증 범위 고정
파일 경로 첨부추측보다 실제 코드 기준으로 작업

주의할 점

제약이 많을수록 좋은 것이 아닙니다. 꼭 필요한 파일, 재현 절차, 금지선, 완료 기준만 남기고 나머지는 AGENTS.md나 설정으로 옮겨야 프롬프트가 읽기 쉬워집니다.

참고 링크

3 sources