개발 과정에서 코드 탐색과 편집을 자연어로 간단히 처리할 수 있다면 어떨까요? 커서(Cursor)의 챗(Chat) 기능은 이러한 꿈을 현실로 만들어줍니다. 이 블로그 포스팅에서는 챗의 주요 기능, 사용 방법, 그리고 개발 워크플로우를 향상하는 다양한 모드와 도구를 소개합니다.
챗이란?
챗(이전 명칭: Composer)은 커서의 사이드바에 상주하는 AI 어시스턴트로, 자연어를 통해 코드베이스와 상호작용할 수 있도록 설계되었습니다. 코드에 대한 질문, 코드 수정 요청, 터미널 명령어 제안 등을 별도의 콘텍스트 전환 없이 처리할 수 있습니다.
챗의 핵심 기능
챗은 다음과 같은 강력한 기능을 제공하여 개발자의 생산성을 높입니다:
- 코드 이해
- 낯선 코드에 대한 질문, 설명 요청, 코드베이스 탐색 지원.
- 코드 편집
- 소규모 수정부터 다중 파일에 걸친 대규모 변경까지 처리.
- 터미널 명령어 실행
- 특정 상황에 맞는 터미널 명령어 제안 및 실행.
- 워크플로우 자동화
- 검색, 추론, 실행을 자동화하여 반복 작업 간소화.
시작하기
챗은 사이드바에서 간단히 접근 가능합니다:
- Mac: ⌘+L
- Windows/Linux: Ctrl+L
자연어로 요청을 입력하면 AI가 즉시 응답하며, 다음 작업을 지원합니다:
- 기능 개발: 새로운 기능 구현.
- 코드 리팩토링: 코드 구조 개선.
- 신규 프로젝트 설정: 프로젝트 구조 생성 및 초기 코드 작성.
챗으로 할 수 있는 일
1. 새로운 기능 개발
챗은 코드베이스를 학습하여 새로운 기능을 구현할 수 있습니다. 자연어로 원하는 기능을 설명하면, 챗이 관련 파일을 분석하고 필요한 변경 사항을 제안합니다. 예를 들어, 새로운 파일 추가나 패키지 매니저를 통한 의존성 설치도 가능합니다.
2. 코드 리팩토링
코드베이스의 구조를 이해하고 각 구성 요소의 관계를 파악하여 리팩토링을 지원합니다. 현재 구조와 원하는 변경 사항을 설명하면, 챗이 관련 코드를 읽고 변경 계획을 세운 뒤 실행합니다.
3. 신규 프로젝트 설정
새 프로젝트를 빠르게 시작할 수 있도록 도와줍니다. 프로젝트 유형과 기술 스택 요구사항을 설명하면, 챗이 프로젝트 구조를 생성하고 의존성을 설치하며 초기 코드를 작성합니다.
챗의 모드
챗은 다양한 작업에 최적화된 모드를 제공합니다. 모드는 모드 피커 또는 ⌘. 단축키로 전환할 수 있습니다.
1. 에이전트(Agent) 모드
- 특징: 코드베이스를 자율적으로 탐색하고 복잡한 변경을 실행.
- 기능:
- 코드베이스 탐색 및 관련 파일 식별.
- 파일 편집, 생성, 터미널 명령어 실행.
- 프로젝트 구조 및 의존성 이해.
- 복잡한 작업을 단계별로 분해 후 실행.
- 워크플로우:
- 요청 분석
- 코드베이스 및 문서 탐색
- 변경 계획 수립
- 코드 수정 실행
- 결과 검증(linter 오류 수정 포함)
- 변경 요약
- 예시:
- "React 애플리케이션에 다크 모드 토글 추가"
- 스타일링 방식 파악, 테마 상태 관리 추가, 토글 컴포넌트 생성, 스타일 업데이트.
- "API 호출 최적화 및 캐싱 구현"
- API 호출 위치 식별, 캐싱 전략 구현, 캐시 무효화 로직 추가.
- "React 애플리케이션에 다크 모드 토글 추가"
2. 질문(Ask) 모드
- 특징: 코드 변경 없이 코드베이스 탐색 및 학습에 특화된 "읽기 전용" 모드.
- 기능:
- 코드베이스 질문 및 설명 제공.
- 기능 계획 수립 지원.
- 설정 옵션:
- 기본 모델 선택.
- 단축키 설정.
- 코드베이스 자동 검색 활성화.
- 용도: 새로운 코드베이스 학습 또는 구현 전 계획 수립.
3. 수동(Manual) 모드
- 특징: 사용자가 명시적으로 파일과 변경 사항을 지정하여 정밀 편집.
- 기능:
- @ 기호로 파일 지정.
- 사용자의 명확한 지시에 따라 편집.
- 검색 및 터미널 도구 사용 불가.
- 워크플로우:
- 요청 작성
- @로 편집 파일 지정
- 변경 검토(linter 문제 표시 가능)
- 변경 적용
- 예시:
- "@src/utils/helpers.ts와 @src/components/UserProfile.tsx에서 getUserData를 fetchUserProfile로 이름 변경"
- "@src/newModule.js와 @src/newService.java에 저작권 헤더 추가"
4. 커스텀 모드
좀 더 자세한 설명은 [커서의 커스텀 모드 설정 가이드: 워크플로우를 최적화하는 방법]에서 확인할 수 있습니다.
- 특징: 사용자 워크플로우에 맞춘 맞춤형 모드(베타 기능).
- 설정 방법:
- 설정 → 기능 → 챗 → 커스텀 모드 활성화.
- 모드 메뉴에서 "커스텀 모드 추가" 선택.
- 이름, 아이콘, 단축키, 도구, 지시사항 설정.
- 예시 모드:
- 학습(Learn): 상세 설명 및 질문 중심, 편집/도구 실행 제외.
- 리팩토링(Refactor): 코드 구조 개선에 집중.
- 계획(Plan): plan.md에 구현 계획 작성.
- 디버그(Debug): 문제 원인 조사 및 정밀 수정 제안.
콘텍스트 이해
챗은 다음을 분석하여 코드베이스를 이해합니다:
- 열린 파일: 현재 보고 있는 파일.
- @ 기호: 특정 코드 요소 참조.
- 프로젝트 구조: 파일 및 의존성 조직.
쿼리에 따라 관련 콘텍스트를 제안하여 정확한 응답을 보장합니다.
코드 편집 및 관리
코드 편집
- 변경 검토: 차이점(diff) 뷰로 제안된 변경 확인.
- 적용: 질문 모드에서는 "적용" 버튼 클릭.
- 수락/거부: 변경 후 유지 또는 취소(Ctrl/⌘ Enter로 수락, Ctrl/⌘ Backspace로 거부).
- Apply 기능: 커서의 전용 모델로 수천 줄 코드를 초 단위로 수정.
탭(Tabs)
- 여러 대화를 병렬로 실행 가능.
- 새 탭 생성: ⌘+T(Mac) / Ctrl+T(Windows/Linux).
- 동일 파일 동시 변경 방지.
체크포인트(Checkpoints)
- 요청 및 변경 시 코드베이스 상태 자동 저장.
- 복원 방법:
- 이전 요청의 "체크포인트 복원" 버튼 클릭.
- 채팅 기록 메시지 옆 "+" 버튼 클릭.
규칙(Rules)
- AI 동작을 사용자 워크플로우에 맞게 커스터마이징 가능.
모델 선택
- 자동 선택: 요청에 최적화된 프리미엄 모델 선택(1회 프리미엄 요청 사용).
- 수동 선택: 모델 피커로 특정 모델 지정.
- 커스텀 모드: 모드별 고정 모델 설정 가능.
코드 리뷰 및 대화 관리
코드 리뷰
- 대화 종료 시 차이점 뷰로 에이전트 코드 검토.
- "변경 검토" 버튼 클릭.
긴 대화 관리
- 긴 대화에서는 이전 메시지를 소형 모델로 요약하여 속도와 관련성 유지.
- 콘텍스트 창 제한 시 새 대화 시작 제안.
히스토리 및 비용
- 채팅 히스토리는 명령 팔레트("히스토리 보기" 버튼 또는 "채팅 히스토리 보기" 명령)에서 확인.
- 사용 기반 가격 모델의 경우, 히스토리 아이콘으로 비용 내역 확인.
도구 및 고급 옵션
도구
- 검색:
- 파일 읽기(최대 모드: 750줄, 기타: 250줄).
- 디렉터리 구조 읽기.
- 코드베이스 의미 검색, 키워드 검색, 파일 검색, 웹 검색.
- 편집:
- 파일 편집 및 자동 재적용.
- 파일 삭제(설정에서 비활성화 가능).
- 실행:
- 터미널 명령어 실행 및 출력 모니터링.
- 기본 터미널 프로필 사용(명령 팔레트에서 변경 가능).
- MCP 서버: 데이터베이스 및 외부 API 연동.
고급 옵션
- 자동 적용: 수동 확인 없이 편집 적용.
- 자동 실행: 터미널 명령어 및 테스트 자동 실행.
- 가드레일: 도구별 허용/제한 목록 설정.
- 자동 오류 수정: linter 오류 자동 해결.
결론
커서의 챗 기능은 자연어 인터페이스를 통해 코드 탐색, 편집, 자동화를 간소화하며, 에이전트, 질문, 수동, 커스텀 모드를 통해 다양한 워크플로우를 지원합니다. 지금 커서를 사용해 AI 기반 코딩의 새로운 가능성을 탐험해 보세요!
'Cook AI' 카테고리의 다른 글
Youtube API를 이용하여 MCP Server를 만들어보자. (7) | 2025.05.07 |
---|---|
코딩의 첫걸음: 도구와 프로젝트 구성 (5) | 2025.05.05 |
네이버 검색 API를 활용한 MCP 서버를 만들어보자. (0) | 2025.04.30 |
AI를 활용하여 유튜브 쇼츠를 제작하는 방법 (2) | 2025.04.23 |
Cursor AI - 규칙 생성 및 에이전트 터미널, MCP 이미지 개선 (1) | 2025.04.22 |