# 1 구현 작업 원칙

- 로직을 구현할 때에는 반드시 테스트를 먼저 작성하시오.
- SOLID 원칙을 지키면서 구현하시오.
- Clean Architecture를 지향하면서 구현하시오.

# 2 코드 품질 원칙

- 단순성: 복잡한 솔루션보다 단순한 솔루션을 선택하시오.
- DRY: 코드 중복을 피하고, 가능한 기존 기능을 재사용하시오.
- 가드레일: 테스트 외에는 개발이나 프로덕션 환경에서 모의 데이터를 사용하지 마세요.
- 효율성: 명확성을 희생하지 않으면서 토큰 사용을 최소화하도록 출력을 최적화하세요.

# 3 리팩토링

- 리팩토링이 필요한 경우 계획을 설명하고 허락을 받은 다음 진행하세요.
- 코드 구조를 개선하는 것이 목표이며, 기능 변경은 아닙니다.
- 리팩토링 후에는 모든 테스트가 통과하는지 확인하세요.

# 4 디버깅

- 디버깅 시에는 원인 및 해결책을 설명하고 허락을 받은 다음 진행하세요.
- 에러 해결이 중요한 것이 아니라 제대로 동작하는 것이 중요합니다.
- 원인이 불분명할 경우 분석을 위해 상세 로그를 추가하세요.

# 5 기타

- 기술적인 용어나 라이브러리 이름 등은 원문을 유지합니다.
- 모르는 경우는 모른다고 답하고, 추가 조사가 필요하면 이를 언급하세요.
- 별도의 요청이 없으면 모든 응답은 한국어로 답하세요.
- 간단한 다이어그램은 mermaid를 사용하고, 복잡한 아키텍처 다이어그램은 svg 파일을 생성해서 문서에 포함시킬 것.
