Summary
한창 사용하던 Cursor AI 도구 외에 추가로 Claude Code를 사용해서 코드 작성을 경험하게 되었는데, 해보고 나니 두가지 도구에서 나름의 차이가 느껴져서 간단하게 정리해보려고 한다
Description
Cursor AI
Cursor AI는 VSCode 프로젝트를 Fork 한 후 여기에 기본 Extension을 UI와 함께 얹어서 개발된 도구로, 자체적으로 정의된 프롬프트를 내장하고 있는 것으로 보인다.
추가로 커서 자체에서 운영하는 소형 언어 모델을 서비스로 제공하고있고, 여러 언어 모델 서비스를 다양하게 지원해주고 커스텀 가능한 사용자 프롬프트, MCP 서버 연동 등이 강력한 점으로 느껴진다.
아마 개발 초기에 벤치마크했던 모델은 Github에서 서비스했던 Copilot이었던 것으로 보인다. Github 블로그를 통해 2021-07-29 당시 처음 소개되었던 Copilot은 VSCode의 Extension으로 제공되었고, 간단한 명령어를 주석 형식으로 작성하면 해당 내용을 읽고 코드를 작성해주는 서비스로 소개되었는데, 초창기였기 때문에 기능이 상당히 제한적이었고, 잘 알려진 알고리즘 외에는 비정상적인 코드를 작성하는 경우도 너무 많았다.
Cursor AI는 ChangeLog를 통해 2023-03-14에 0.0.37버전이 공개되었음을 알 수 있다. 초기 Copilot과는 다르게 Chat session을 제공하고 codebase를 인덱싱한 내용을 바탕으로 코드생성/수정을 사용자와 상호작용을 하면서 수정하는 기능이 깔끔하게 제공된다. 또한 사용자 정의가 가능한 프롬프트를 수정할 수 있도록 해서 코드 작성 스타일을 개발자에게 맞출 수도 있다. 거기에 여러 언어모델 서비스를 다양하게 지원하고 현재는 다양한 AI Tool 기능을 제공하고있어서 하나의 채팅 세션 안에서도 상황에 따라 나와 맞는 언어 모델 서비스를 계속 변경하면서 상호작용을 할 수 있고, 의존 패키지에 있는 다양한 라이브러리의 문서를 웹페이지 링크로 직접 연결해서 이제는 아주 정확한 코드를 작성하게 할 수 있다.
서비스는 Cursor AI에서 운영하는 플랜에 맞춰 사용할 수 있다. Cursor AI에 결제하면 여러 서비스에 따로 구독할 필요없이 사용 가능하다. 또는 개별 서비스에 API 키를 발급해서 특정 서비스 모델을 연동해서 쓸 수도 있다.
Claude code
Cursor AI와 비교해서 최근에 공개된 도구인데, 기본적인 기능들은 위에 소개한 Cursor AI와 비슷하다. 프롬프트를 사용자 정의로 추가해놓을 수 있고 코드 리뷰도 가능하다. 한가지 차이점은 CLI 환경에서 동작이 가능하고 다양한 모델보다는 Claude 자체에서 서비스로 제공하는 Haiku, Sonnet 등의 모델을 사용한다. 옵션으로 사용자가 모델을 선택할 수도 있는데 Sonnet, Opus를 고를 수 있다. 하지만 채팅 세션 내에서는 변경이 안되는 것으로 보인다.
Claude에서 제공하는 모델을 활용하고, Cursor AI처럼 에디터에 종속되지 않아서 터미널 환경에서 실행할 수 있기때문에 실행이 빠르고 가볍게 동작한다는 점이 장점으로 느껴진다. 채팅을 통해서 프로젝트를 전반적으로 개발해나가려고 한다면 프롬프트를 치밀하게 구성해서 운영해볼 수 있을 것으로 생각된다. 또한 명령어를 통해 기존 채팅 세션에 이어서 작업을 진행할 수 있기 때문에 도중에 작업이 중단되어도 크게 부담이 없다.
Claude Code는 2024-05-10에 처음 공개된 뒤로 계속해서 업데이트 되고 있다고 기록이 남아있다. Cursor AI와 유사한 구조로 사용자 정의 프롬프트를 작성할 수 있기 때문에 생각보다 Cursor AI와 다르지 않게 사용할 수 있다. 다만 Claude Code는 Claude 서비스에 종속되기 때문에 구독도 Claude 서비스에서 구독하면 사용이 가능하다. 정액제로 결제도 가능하고, API 키를 이용해서 사용할수도 있다.
Comparison
기능
Cusror AI는 VSCode의 기능과 Extension이 호환되고, Chat session, inline code generation으로 코드 생성이 가능하고, notebook이라는 간단한 기록을 저장할 수 있는 메모 기능을 제공한다.
Claude code는 Chat session을 통해 코드 생성이 가능하고 Command를 미리 지정해서 자주 사용하는 동작/기능을 지정해둘 수 있다. GUI 도구와 연동해서 사용할 수 있도록 가이드를 제공하고있다.
리소스
Cursor AI는 VSCode를 바탕으로 만들어져있어서 반드시 IDE를 실행해야한다. GUI가 전부 로드될 때까지 시간이 약간 걸린다.
Claude code는 터미널에서 claude 명령어를 통해 Chat session을 바로 실행이 가능하다.
편의성
Cursor AI는 GUI 에디터가 기본이고 CLI 도구가 추가되었다. GUI 에디터를 통해 설정도 직관적으로 수정할 수 있고 Chat session에 코드 생성 위치, 수정 대상, 코드 내 특정 코드 라인을 지정하는게 직관적이다.
Claude code는 CLI 명령어에 익숙하면 간단한 작업을 빠르게 실행할 수 있다. 코드에 간단한 명령을 입력해서 실행하게 하면 응답을 바로 주기 때문에 초기 응답이 빠르다.
호환성
Cursor AI는 여러 언어 모델이 지원하는 Tool에 따라 쓸 수 있는 기능이 다르지만 필요에 따라 언어 모델을 변경할 수 있도록 유연하게 설계되어있다.
Claude code는 Claude 언어 모델을 중심으로 실행되기 때문에 다른 언어 모델 서비스와 호환되지 않는다. 다만 다양한 방법으로 프록시 구성을 해서 GPT 등의 다른 모델을 사용할 수 있다.
Afterword
두가지 도구를 다 사용해보게 되어서 생각나는대로 간단하게 차이를 나열해봤다.
이후에 기회가 있을 때 사용법 등을 상세하게 기록해보면 좋을 것 같다.