Project Rules

Rules

전체 지시사항의 일부

  • 사용자 입력 프롬프트와 설정한 Rules를 전부 결합해서 하나의 Instruction(지시사항)을 만든다.

  • Instruction = User Prompt + User Rules + Project Rules

  • Agent가 내 의도에 맞게 동작하도록 유도하고, 필요한 컨텍스트를 주입할 수 있게됨

Rules의 중요성

  • 지시사항의 반복적인 Pormpt는 LLM이 캐싱하여 효율적으로 관리할 수 있음 -> 비용 최소화

    • 사용량 기반 요금제는 이 사용량을 최소화 시켜서 비용을 최적화 해주는게 중요

  • 즉 Agent가 항상 지켜야하는 규칙을 반복적인 Prompt로 정의하여 사용

Project Rules

프로젝트별로 구성되고, 각 프로젝트 내에서의 동작 방식, 공통 컴포넌트, 아키텍처 구조 등에 대한 가이드 문서를 rules에 정의해 활용함.

  • System Prompt + User Rules + User Prompt는 하나의 지시사항으로 묶여 통합 관리됨

  • 반면, Project Rules는 지시사항에 포함되지 않고 별도로 관리됨

    • Agent는 이 지시사항을 기반으로 상황에 맞게 선택적으로 호출하거나, 자동으로 주입해 컨텍스트를 생성

    • 커서는 Rules를 Agent가 직접 호출할 수 있고, Rules를 Tool 형태로 관리할 수 있는 기능을 탑재하고 있음


규칙을 잘 구조화하는 방법

번호 체계로 카테고리화

  • 00x-****.mdc: 프로젝트 전반에 공통적으로 항상 적용되는 규칙

  • 100x-****.mdc: rules에서 참조하는 규칙, 라이브러리 명세, 공통 컴포넌트 명세, 사용 방법 예시

  • 200x-****.mdc: 보안 관련 규칙, agent가 반드시 지켜야 하며 특정 상황에서 호출되어야 하는 항목

규칙을 작성하는 방법

Rules Example

프롬프트로 생성

  • /Generate Cursor Rules 사용

    • ex: /Generate Cursor Rules 공통 컴포넌트 명세와 사용하는 방식을 100x-component-rules.mdc 로 생성해줘

  • cursor-directory 에서 내 프로젝트 상황에 맞는 rules를 가져와 사용

Last updated