Cline 규칙을 사용하면 Cline에 시스템 수준 지침을 제공할 수 있습니다. 프로젝트 또는 모든 대화에 전역적으로 컨텍스트와 기본 설정을 포함하는 지속적인 방법이라고 생각하면 됩니다.

규칙 만들기

규칙 탭에서 + 버튼을 클릭하여 규칙을 만들 수 있습니다. 이렇게 하면 IDE에서 새 파일이 열리고 이 파일을 사용하여 규칙을 작성할 수 있습니다.
규칙 만들기
파일을 저장하면 다음이 수행됩니다.
  • 규칙이 작업 공간 규칙인 경우 프로젝트의 .clinerules/ 디렉터리에 저장됩니다.
  • 또는 전역 규칙인 경우 Documents/Cline/Rules 디렉터리에 저장됩니다.
채팅에서 /newrule 슬래시 명령을 사용하여 Cline이 규칙을 만들도록 할 수도 있습니다.
예제 Cline 규칙 구조 [확장 가능]
# 프로젝트 지침

## 문서 요구 사항

-   기능을 수정할 때 /docs의 관련 문서를 업데이트합니다.
-   새로운 기능과 README.md를 동기화합니다.
-   CHANGELOG.md에 변경 로그 항목을 유지 관리합니다.

## 아키텍처 결정 기록

다음을 위해 /docs/adr에 ADR을 만듭니다.

-   주요 종속성 변경
-   아키텍처 패턴 변경
-   새로운 통합 패턴
-   데이터베이스 스키마 변경
    /docs/adr/template.md의 템플릿을 따릅니다.

## 코드 스타일 및 패턴

-   OpenAPI 생성기를 사용하여 API 클라이언트를 생성합니다.
-   TypeScript axios 템플릿을 사용합니다.
-   생성된 코드를 /src/generated에 배치합니다.
-   상속보다 구성을 선호합니다.
-   데이터 액세스에 리포지토리 패턴을 사용합니다.
-   /src/utils/errors.ts의 오류 처리 패턴을 따릅니다.

## 테스트 표준

-   비즈니스 논리에 필요한 단위 테스트
-   API 엔드포인트에 대한 통합 테스트
-   중요한 사용자 흐름에 대한 E2E 테스트

주요 이점

  1. 버전 제어됨: .clinerules 파일이 프로젝트 소스 코드의 일부가 됩니다.
  2. 팀 일관성: 모든 팀 구성원 간에 일관된 동작을 보장합니다.
  3. 프로젝트별: 각 프로젝트의 요구 사항에 맞는 규칙 및 표준입니다.
  4. 기관 지식: 프로젝트 표준 및 관행을 코드로 유지 관리합니다.
.clinerules 파일을 프로젝트의 루트 디렉터리에 배치합니다.
your-project/
├── .clinerules
├── src/
├── docs/
└── ...
반면에 Cline의 시스템 프롬프트는 사용자가 편집할 수 없습니다(여기에서 찾을 수 있음). 프롬프트 엔지니어링 모범 사례에 대한 자세한 내용은 이 리소스를 확인하십시오.

효과적인 Cline 규칙 작성 팁

  • 명확하고 간결하게 작성: 간단한 언어를 사용하고 모호성을 피합니다.
  • 원하는 결과에 집중: 특정 단계가 아닌 원하는 결과를 설명합니다.
  • 테스트 및 반복: 워크플로에 가장 적합한 것을 찾기 위해 실험합니다.

.clinerules/ 폴더 시스템

your-project/
├── .clinerules/              # 활성 규칙이 포함된 폴더
│   ├── 01-coding.md          # 핵심 코딩 표준
│   ├── 02-documentation.md   # 문서 요구 사항
│   └── current-sprint.md     # 현재 작업과 관련된 규칙
├── src/
└── ...
Cline은 .clinerules/ 디렉터리 내의 모든 Markdown 파일을 자동으로 처리하여 통합된 규칙 집합으로 결합합니다. 숫자 접두사(선택 사항)는 파일을 논리적 순서로 구성하는 데 도움이 됩니다.

규칙 은행 사용

여러 컨텍스트 또는 팀이 있는 프로젝트의 경우 규칙 은행 디렉터리를 유지 관리합니다.
your-project/
├── .clinerules/              # 활성 규칙 - 자동으로 적용됨
│   ├── 01-coding.md
│   └── client-a.md

├── clinerules-bank/          # 사용 가능하지만 비활성 규칙의 리포지토리
│   ├── clients/              # 클라이언트별 규칙 집합
│   │   ├── client-a.md
│   │   └── client-b.md
│   ├── frameworks/           # 프레임워크별 규칙
│   │   ├── react.md
│   │   └── vue.md
│   └── project-types/        # 프로젝트 유형 표준
│       ├── api-service.md
│       └── frontend-app.md
└── ...

폴더 접근 방식의 이점

  1. 상황별 활성화: 은행에서 활성 폴더로 관련 규칙만 복사합니다.
  2. 손쉬운 유지 관리: 다른 규칙 파일에 영향을 주지 않고 개별 규칙 파일을 업데이트합니다.
  3. 팀 유연성: 다른 팀 구성원은 현재 작업과 관련된 규칙을 활성화할 수 있습니다.
  4. 노이즈 감소: 활성 규칙 집합을 집중적이고 관련성 있게 유지합니다.

사용 예

클라이언트 프로젝트 간 전환:
# 클라이언트 B 프로젝트로 전환
rm .clinerules/client-a.md
cp clinerules-bank/clients/client-b.md .clinerules/
다양한 기술 스택에 적응:
# 프런트엔드 React 프로젝트
cp clinerules-bank/frameworks/react.md .clinerules/

구현 팁

  • 개별 규칙 파일이 특정 문제에 집중하도록 합니다.
  • 규칙의 목적을 명확하게 나타내는 설명적인 파일 이름을 사용합니다.
  • clinerules-bank/를 추적하는 동안 활성 .clinerules/ 폴더를 git-무시하는 것을 고려합니다.
  • 일반적인 규칙 조합을 빠르게 활성화하기 위한 팀 스크립트를 만듭니다.
폴더 시스템은 Cline 규칙을 정적 문서에서 팀의 변화하는 컨텍스트와 요구 사항에 적응하는 동적 지식 시스템으로 변환합니다.

토글 가능한 팝오버로 규칙 관리

단일 .clinerules 파일과 폴더 시스템을 모두 더 쉽게 관리할 수 있도록 Cline v3.13에는 채팅 인터페이스에서 직접 액세스할 수 있는 전용 팝오버 UI가 도입되었습니다. 채팅 입력 필드 아래에 편리하게 위치한 이 팝오버를 사용하면 다음을 수행할 수 있습니다.
  • 활성 규칙 즉시 보기: 현재 활성 상태인 전역 규칙(사용자 설정에서)과 작업 공간 규칙(.clinerules 파일 또는 폴더 내용)을 확인합니다.
  • 규칙 빠르게 토글: 작업 공간 .clinerules/ 폴더 내의 특정 규칙 파일을 한 번의 클릭으로 활성화하거나 비활성화합니다. 이는 필요할 때만 컨텍스트별 규칙(예: react-rules.md 또는 memory-bank.md)을 활성화하는 데 적합합니다.
  • 규칙 쉽게 추가/관리: 작업 공간 .clinerules 파일이나 폴더가 없는 경우 빠르게 만들거나 기존 폴더에 새 규칙 파일을 추가합니다.
이 UI는 대화 중에 파일을 수동으로 편집하거나 구성을 변경할 필요 없이 컨텍스트를 전환하고 다른 지침 집합을 관리하는 것을 크게 단순화합니다.
Cline 로고