팀에 커서 어떻게 쓰고 있는지 공유할겸 정리하다가 블로그로 옮겨야겠다 싶어서 옮겨본다. (커부심이 있었던거 같긴한데 ㅋㅋㅋㅋㅋ)
Agents

Agents는 Chat에 동작하는 Agent에 대한 기본값들인데요. https://cursor.com/ko/docs/agent/overview#agent
저는 주로 Auto로 씁니다.
- 공식적으로 Cursor가 이것을 MOE라고 명시적으로 표현하지는 않지만, 구성 요소 설명을 보면 모델 선택 자동화/스킬 결합된 형태라 MOE라고 생각해도 무방하다 생각해요.(저의 이해방식)
- 여기서 Auto mode는 명시된 모델이 없을 때 자동 선택/라운딩을 수행한다고 써있어요.
- https://cursor.com/ko/docs/models
Rules, Skills, Subagents

- Rule: 절대 어기면 안 되는 회사 정책 / 안전 가드레일 같은거
- Skill: 특정 작업을 더 잘 하도록
- Subagent: 역할이 고정된 전담 에이전트 (써보지 않음)
Rules
언제 쓰나
- 이건 무조건 지켜야하는거
- Agent가 판단하면 안 된다
- 위반하면 멈춰야 한다
- 항상 적용되지만, 항상 컨텍스트를 차지하지않아요! 셋팅 > 넣으면 됩니다.
특징
- 항상 적용
- 보안 / 컴플라이언스 / 코드컨벤션
- Cursor Settings Rule
- IDE 전역에 적용
- 프로젝트와 무관
- 토큰으로 매번 프롬프트에 붙지 않거나, 매우 낮은 우선순위를 쓴다. ( Base.mdc랑 용도가 다름 )
예
- 사내가이드 참고
- 민감 정보 출력 금지
- 특정 디렉토리 접근 금지
Skills
언제 쓰나
- 이런 작업을 자주 하는 경우 - 반복되는 작업 에이전트가 이걸 잘했으면 좋겠다 할때 쓰는거 같아요. 개인적으로 리팩토링할때 하면 유용할거 같긴해요. 현재 저는 등록해서 쓰진 않아요. 필요할때 참고해서 쓰면 되겠어요.
특징
- 선택적으로 호출
- 특정 태스크를 잘해야할때
- MCP / Tool 결합
대표 예
- GitHub PR 요약
- 라이브러리등 스펙 설명
- 테스트 로그 요약
Context7

많은 툴을 썼다가 뺐다 했지만 일단 지금은 Context7만 쓴다.
Context 7 | MCP Server
Context7 MCP – up-to-date docs for any Cursor prompt.
mcp.umin.ai
Context7은 AI 코딩 어시스턴트가 최신 공식 문서와 코드 예제를 실시간으로 가져오는 MCP 서버입니다.
Context7 MCP는 AI가 구식 정보나 hallucination에 의존하지 않고,
현재 라이브러리/프레임워크 문서를 참조해 답변을 생성하도록 돕는 mcp입니다.
- 오래된 API 정보
- 존재하지 않는 메서드
- Deprecated(지원 중단)된 예제
같은 잘못된 코드/설명을 줄 수 있습니다. Context7은 이런 문제를 줄이기 위해
- 최신 공식 문서를 실시간으로 가져오고
- 현재 사용하는 라이브러리 버전에 맞는 코드 예제 제공
- Cursor/Claude 같은 AI 도구 내에서 탭 전환 없이 접근 가능
- “환각(hallucination) 코드 제안” 감소
특히 Cursor에서 개발 중 바로 내 Prompt에 최신 문서가 붙는다고 생각하면 됩니다.
그럼 자기 마음대로 버전을 업데이트하는건 아닌가 걱정이시라면
- 빌드그래들이나 python 환경관리하는것들은 버전 업데이트를 마음대로?하면 안되기때문에 레포지토리 쪽에 별도 룰을 두어서 라이브러리 버전은 업데이트 하지 말라고 적어둡니다.
- 버전을 업데이트한적은 없는데 버전을 명시했음에도 불구하고 문서를 엉뚱한걸 반영해 디플리케이티드된 함수나 지원하지 않는걸 쓰는 경우가 있어서 context7은 쓰고 있어요.
토큰이 걱정되면
- 룰에 넣을떄
- Use Context7 only for API references, not for general reasoning.
- 직접명시할때는
- use context7 and summarize to key rules + 1 example
- /summary라는 키워드를 써되고
- 또는 context7 결과를 요약한 뒤, 요약만 유지하고 원문은 이후 컨텍스트에서 사용하지 말라고 지시

.mdc는 Cursor에서 사용하는 Model Documentation Context 파일
mdc라는게 커서 내부에서 어떻게 처리되냐면[User Prompt]
+ [Relevant Code Context]
+ [All .mdc files]
-------------------------
→ LLM Input그래서
- 대화 주제와 무관해도
- 코드 수정만 해도
- 짧은 질문을 해도
.mdc는 항상 토큰으로 포함되기때문에 필요한것만 넣거나 써보면서 줄이던지 늘리던지 해야될거 같아요. (토큰)
좋은 .mdc 예시
- 프로젝트 아키텍처 설명
- 도메인 용어 정의
- 서비스 간 관계도
- API 개념 설명
- 레거시 설계 배경
- /docs/architecture.mdc
- /docs/domain.mdc
- /docs/api-overview.mdc
그런데 저는 scope/룰로 쓰다가 현재는 처음에 프로젝트앱 시작할때만 쓰고 어느정도 정착되면 이걸 md로 바꿉니다. mdc는 무조건 읽어요. 그래서 프로젝트 어느정도 작업이 되었다 싶으면 mdc → md로 바꾸고 필요할때만 참고해서 쓰고 있어요.