저는 예전에 AI 코딩 어시스턴트(AI coding assistants)가 정체기에 머물러 있는 이유가 모델의 성능이 충분하지 않기 때문이라고 생각했습니다. 그러다 동료가 저와 동일한 모델을 사용하면서도, 동일한 작업에 대해 저보다 더 깔끔한 코드를 Cursor로 생성하는 것을 목격했습니다. 그 차이는 바로 그의 .cursor/rules/ 폴더에 있었습니다. 그의 어시스턴트는 계약(contract)을 맺고 있었지만, 제 것은 즉흥적으로 행동하고 있었습니다.
좋은 Cursor 규칙은 동기 부여 포스터(
---
description: 데이터베이스 및 SQL 안전성 — 쿼리 또는 마이그레이션(migrations) 작성 시 적용
globs:
...
4. 해피 패스(happy paths)가 아닌 엣지 케이스(edges)를 겨냥한 테스트
---
description: 테스트 작성 컨벤션(conventions) — 테스트 추가 또는 편집 시 적용
globs: "**/*.test.*, **/*.spec.*"
...
"엣지 케이스 우선(edge cases first)"이라는 문구가 결과물을 바꿉니다. 이 문구가 없으면, Cursor는 함수가 작동한다는 것을 증명하는 단 하나의 테스트만 작성하고 멈춰버립니다.
5. 사람이 훑어볼 수 있는 커밋 메시지(Commit messages)
---
description: Git 커밋 메시지 형식
globs:
...
6. 프론트엔드에 국한된 접근성(Accessibility)
---
description: UI를 위한 접근성 규칙
globs: "**/*.tsx, **/*.jsx, **/*.vue"
7. 문제를 삼키지 않고 드러내는 에러 핸들링(Error handling)
---
description: 에러 핸들링 (Error handling)
globs:
...
8. "이유(why)"를 설명하는 주석
---
description: 주석 규율 (Comment discipline)
globs:
...
9. 의존성 절제 (Dependency restraint)
---
description: 의존성 정책 (Dependency policy)
globs:
...
10. "범위 유지(stay in scope)" 규칙
가장 많은 정리 시간을 아껴주는 규칙입니다. Cursor는 요청하지도 않은 파일 세 개를 "친절하게" 리팩터링(refactor)하는 것을 매우 좋아합니다.
---
description: 범위 규율 (Scope discipline) — 항상 적용
globs:
...
실제로 이를 도입하는 방법
오늘 열 가지를 모두 붙여넣지 마세요. 컨텍스트(context)가 희석되고 이를 유지 관리하다가 지쳐버릴 것입니다. 세 가지만 먼저 시작하세요: 규칙 #1(전역 가드레일), 스택 규칙 하나(#2, TypeScript를 사용하는 경우), 그리고 규칙 #10(범위 규율)입니다. 일주일 동안 이 규칙들과 함께 지내보세요. Cursor가 똑같은 실수를 두 번 하는 것을 발견했을 때만 다른 규칙을 추가하세요. 규칙은 블로그 포스트에서 멋지게 들린다고 해서 자리를 잡는 것이 아니라, 실제로 반복되는 오류를 방지함으로써 그 가치를 증명합니다.
이미 조정된 세트부터 시작하고 싶다면
규칙 라이브러리를 큐레이션하고 유지 관리하는 것은 그 자체로 하나의 작은 프로젝트입니다. 만약 앞서 나가는 시작을 하고 싶다면, 제가 정밀하게 조정(tuned)한 전체 컬렉션을 **Cursor AI Power Pack**으로 패키징해 두었습니다. 이 패키지는 스택(stack)과 관심사별로 정리된 바로 적용 가능한 .mdc 규칙 세트와 프롬프트 레시피(prompt recipes), 그리고 언제 어떤 규칙을 활성화해야 하는지 알려주는 'START HERE' 가이드를 포함하고 있습니다. 이는 위에서 언급한 10가지 규칙과 동일한 범위 제한(scoped) 및 불필요한 요소 제거(anti-fluff) 철학을 따르며, 단지 여러분을 위해 대신 준비해 두었을 뿐입니다.
하지만 여기서 가치를 얻기 위해 반드시 이것이 필요한 것은 아닙니다. 지금 바로 규칙 #1과 #10을 여러분의 저장소(repo)에 복사하세요. 이 두 가지만으로도 다음 Cursor 세션이 눈에 띄게 더 정교해질 것입니다.
여러분의 팀에서 강제하고 있는 규칙 중 제가 이 목록에서 빠뜨린 것이 있나요? 댓글로 남겨주세요. 저는 항상 훔쳐갈 가치가 있는 규칙들을 찾아다니고 있습니다.