Cursor 에디터 도입 후기 - GPT-4 기반 코딩 어시스턴트

도입 배경

올해 초 ChatGPT로 코드 작성 워크플로우가 많이 바뀌었다. 그런데 매번 브라우저와 에디터를 오가며 복붙하는 게 번거로웠다. Copilot도 쓰고 있지만 단순 자동완성 수준이라 더 나은 대안을 찾던 중 Cursor를 알게 됐다.

Cursor의 차별점

VSCode 포크 기반이라 기존 환경 그대로 마이그레이션이 쉬웠다. 핵심은 두 가지였다.

1. Cmd+K 인라인 편집

코드를 선택하고 Cmd+K를 누르면 자연어로 수정 요청이 가능하다.

// "에러 핸들링 추가해줘"라고 요청
async function fetchUserData(id: string) {
  try {
    const response = await api.get(`/users/${id}`);
    return response.data;
  } catch (error) {
    logger.error('Failed to fetch user', { id, error });
    throw new ApiError('User fetch failed', error);
  }
}

2. Cmd+L 채팅 인터페이스

프로젝트 전체 파일을 컨텍스트로 질문할 수 있다. "이 컴포넌트에서 useEffect가 무한루프 도는 이유" 같은 질문에 관련 코드를 분석해서 답변해준다.

실제 사용 사례

레거시 Redux 코드를 React Query로 마이그레이션할 때 가장 도움이 됐다. 기존 selector 로직을 보여주고 "이걸 useQuery로 바꿔줘"라고 하면 캐싱 전략까지 고려한 코드를 제안했다.

버그 수정도 빨라졌다. 스택 트레이스를 붙여넣고 해당 파일들을 참조시키면 원인 파악이 수월했다.

한계

  • GPT-4 API 비용 때문에 유료 플랜 필수
  • 가끔 컨텍스트를 잘못 이해해서 엉뚱한 수정 제안
  • 대용량 파일 다룰 때 느려짐

결론

Copilot을 대체하진 못하고 병행 사용 중이다. Copilot은 루틴한 코드 작성에, Cursor는 리팩토링이나 복잡한 로직 수정에 활용하는 식이다. 아직 베타 느낌이 강하지만 충분히 생산성 향상에 기여하고 있다.