Cursor를 쓰다 보면 처음에는 그냥 채팅창에 요청을 넣고 코드를 받는 방식으로 사용하게 된다.
이 컴포넌트 만들어줘
이 에러 고쳐줘
이 함수 리팩토링해줘
그런데 프로젝트가 조금만 커지면 문제가 생긴다.
프로젝트 구조를 매번 설명해야 함
사용하는 라이브러리를 계속 다시 알려줘야 함
코드 스타일을 매번 수정해야 함
원하지 않는 방식으로 코드를 생성함
deprecated API를 쓰기도 함
이때 사용하는 기능이 Cursor Rules다.
Cursor Rules는 Cursor AI에게 프로젝트에서 지켜야 할 규칙을 미리 알려주는 설정이다.
쉽게 말하면 Cursor에게 주는 프로젝트 전용 가이드라인이다.
이 프로젝트는 TypeScript를 사용한다.
상태 관리는 Zustand를 사용한다.
API 요청은 services 폴더에서 관리한다.
컴포넌트는 PascalCase로 작성한다.
불필요하게 전체 파일을 수정하지 않는다.
이런 내용을 매번 프롬프트에 쓰는 대신, Rule 파일로 저장해둘 수 있다.
Cursor 공식 문서에서도 Rules를 Project, Team, User 단위로 설정할 수 있는 persistent instructions, 즉 지속적으로 적용되는 지침으로 설명한다.
AI 코딩 도구는 일반적인 코드는 잘 안다.
하지만 내 프로젝트만의 규칙은 모른다.
예를 들어 React 컴포넌트를 만들어달라고 하면 Cursor는 그럴듯한 코드를 만들어준다.
하지만 내 프로젝트에서 원하는 방식은 따로 있을 수 있다.
컴포넌트는 features 내부에 둔다.
React Query v5를 사용한다.
API 함수는 직접 fetch하지 않고 apiClient를 사용한다.
폼은 react-hook-form을 사용한다.
스타일은 Tailwind와 shadcn/ui 기준으로 작성한다.
이런 규칙을 Cursor가 모르면, 결국 매번 비슷한 수정이 반복된다.