최근 필자가 회사에서 업무를 진행함에 있어서 Cursor AI를 사용하여 개발하는 것을 테스트하고 있다.
이미 예전부터 GPT나 Claude 등을 사용하며 AI를 사용한 개발을 하고 있었는데,
AI를 사용한 IDE 자체를 사용하는 것은 처음이라 그것의 사용하는 방법이나 팁과 같은 것들을 알게 된다면 간단하게나마 남겨두려고 한다.
이번 글에서는 Cursor IDE를 설치하고, Android Studio와 함께 사용하기 위해서 설정해야하는 아주 기본적인 세팅에 대하여 작성해보고자 한다.
*
본 게시글의 내용은 공부하고 적용해보면서 알게 된 정보를 공유하기 위한 것이므로, 정확하지 않은 정보가 포함되어 있을 가능성이 있습니다.
"확실한 정보가 아닐 수 있음"을 인지하고 글을 읽어주시면 감사하겠습니다.
우선, Cursor IDE는 공식 홈페이지에 가서 간단하게 다운로드가 가능하다.
다운로드를 하고 구글 계정으로 로그인을 하게 되면 무료 버전을 사용할 수 있는데, 현재 2주간의 시간동안 500회의 검색을 할 수 있는 Pro Trial 모드를 제공하니 그것을 사용해서 Cursor를 찍먹 해볼 수 있을 것이다.
물론, 14일이 지난 후에도 무료 요금제로 이용자체는 가능하다.
Cursor IDE를 처음 실행하게 되면 생각보다 익숙한 UI를 마주할 수 있을 것이다.
VSCode 기반으로 만들어졌기 때문에 VSCode와 같은 UI를 보인다.
맨 처음 Cursor IDE를 켰으니, 프로젝트를 open하여 보는 것도 좋지만 기본적인 extension부터 설치를 하도록 하자.
우선, 필자가 설치한 Extension의 리스트이다.
"뭐가 이렇게 많아?" 라고 생각할 수 있지만, 필자가 여기서 직접 설치한 extension은 단 3가지이다.
- Android
- Android Full Support
- Extension pack for java
3번의 이름에서 알 수 있듯이, Extension Pack이기 때문에 해당 extension을 설치하면 이하 다양한 녀석들이 함께 설치가 된다.
물론, 이 중에 필요 없는 extension이 있다면 선택하여 unInstall 해주면 되겠지만,
아직 우리는 Cursor IDE에 대해서 정확히 알 지 못하고 있으며, 어떤 것이 필요하고 필요하지 않은지 경험해보지 못했다.
그렇기 때문에 이 부분은 그대로 설치를 해두도록 한다.
1번과 2번 Extension은 설명을 보면 알겠지만, 디버그를 도와주고 빌드를 도와주고 등등 안드로이드 개발에 도움을 준다고 한다.
일단 필자는 해당 extension에서 제공하는 기능을 전부 사용해보지는 못했지만, 두 개를 설치하게 된 이유는 이렇다.
처음에 Android라는 이름의 extension을 설치하였는데, 그 이유는 Android라는 이름으로 extension을 검색했을 때 가장 많은 다운로드 수를 가지고 있었기 때문이다.
설명에서도 나와있듯이 디버그를 도와주고 VS Code 기반인 cursor에서도 앱을 런치할 수 있도록 도와주는데,
설정을 추가하면 추가할 수록 많은 기능을 제공하지만, 생각보다 추가하기가 쉽지 않았다.
별다른 설정을 하지 않으면, android를 빌드한 후 Logcat을 보여주는 Command밖에 존재하지 않았고, 설명을 봐도 어떠한 의미인지 파악하기가 힘들기 때문에 제거를 하려고 하던 찰나, 가장 많이 설치한 이유가 있겠지라고 생각하고 혹시 모르니 일단 놔두자.라는 생각으로 넘어갔다.
extension끼리 충돌이 나서 기능에 문제가 없다면, 일단 이정도는 남겨줘도 상관없다고 생각했고,
지워도 상관없지만 필자처럼 처음 cursor IDE를 접한다면 무조건 설치할 것이라고 생각했기 때문에 그대로 설치해 두도록 한다.
Android라는 extension에서는 제대로 된 도움을 받을 수 없었기 때문에 실질적으로 도움을 받을 수 있는 extension을 찾아보니 원하는 기능이 대부분 들어있는 Android Full Support라는 extension을 찾을 수 있었다.
별다르게 Theme도 설치해보기도 했지만 해당 extension에 포함 되어있었고, 기존에 여러 개의 extension을 설치해서 각각 기능을 사용해야 했던 것들을 하나로 모은 느낌의 extension이었다.
테마도 알아서 설정 되고, 빌드를 도와주고 로그를 보여주고 등등의 기능이 존재하지만, 다른 extension보다 월등히 설정이 쉽고 설명이 잘 나와있고 사용하기도 쉬웠다.
이처럼 필요한 다양한 기능들을 별다른 세팅을 하지 않아도 제공을 하고 있었고,
다른 extension과 다르게 정말 딸깍으로 혹은 아이콘을 눌러서 앱을 Emulator나 실 device에 설치할 수 있었기 때문에 설치하여 사용하도록 하였다.
각 extension에 대하여는 추후에 사용하면서 차차 설명하도록 하고,
기본적인 setting을 이어서 진행하도록 하겠다.
위의 extension들을 설치하고 나면, 다음과 같은 경고창이 좌측 하단에 뜨는 것을 볼 수 있을 것이다
여기서 Download를 해도 상관없으나, 이미 Android SDK는 Android Studio를 설치해서 사용하고 있는 입장에서 이미 설치가 되어있기 때문에 Set Android SDK Path를 클릭하도록 하자.
현재 설치되어 있는 Android SDK의 위치를 모르겠다면 다음과 같이 확인이 가능하다.
- Android Studio에 들어간다
- Cmd + , (window : Ctrl + ,)를 통해 Preference (Setting)에 들어간다.
- Android SDK를 검색한다.
- 설정에 들어간다
이와 같은 Flow로 이동하면
이렇게 Location이 나오는데 이것을 Cursor에 SDK Location 부분에 넣어주면 된다.
SDK 위치까지 넣고 저장하게 되면, 이처럼 Android SDK로 설정이 되는 것을 확인할 수 있다.
여기까지 설정했으면, 우선 Cursor를 사용하여 Android 자체를 빌드하고 사용할 수 있게 됐다.
가장 기본적으로 빌드가 가능하게끔 설정을 해두었으니, Cursor를 사용하는 간단한 방법에 대하여 알아보자.
KeyBinding을 통해 단축키를 만들어서 사용한다면 이것저것 많이 사용할 수 있겠지만,
우선 기본적으로 Cursor IDE에 있는 AI를 통해 코드를 구현해야 하니 그 방법에 대해서 알아보자.
- Tab
- cmd + L
- cmd + K
- cmd + I
- cmd + Shift + I
- cmd + P
- cmd + Shift + P
뭐 이리 많아?라고 할 수 있겠지만, 크게 tab, llm을 통한 검색, 파일 찾기의 단축키이므로 자주 사용하게 되어 쉽게 익숙해질 것이다
우선, Tab은 Android Studio의 Gemini를 사용해 봤다면 다들 알 것이다.
에디터에서 작성을 하지 않고 일정 시간 기다리면 실제 텍스트가 쳐지지는 않지만 추천하는 코드들이 커서 옆으로 작성되는 것을 본 적 있을 것이다.
그때 Tab키를 누르면 Cursor에서 자동으로 작성되어 있던 코드를 적용시켜 주는 작업을 한다.
다음으로는 각 단축키를 입력했을 때 나오는 것들에 대하여 확인하면 된다.
1. cmd + L
cursor IDE의 가장 우측에 CHAT이라는 섹션이 생기며, 그곳에서 LLM에 채팅 형태로 질문을 할 수 있는 형태이다.
이러한 형태로, 지금까지 gpt나 claude를 사용하는 것과 동일한 방식이다.
2. cmd + K
cmd + L처럼 섹션이 생기는 것은 아니지만, 현재 커서가 활성화되어있는 곳에서 코드를 생성할 수 있는 입력창이 활성화된다.
작성을 하게 되면 이처럼 바로 코드가 변경되며 diff 파일을 보는 것처럼 달라진 부분이 표기되게 된다.
3. cmd + I
cmd + L, P와 비슷하지만 이번엔 자유롭게 위치를 움직일 수 있는 Window가 생성되게 된다.
이처럼 가볍게 띄워둘 수 있는 Chatting window가 생성된다.
여기서 다른 부분은 한가지가 더 있는데, cmd + L 을 눌렀을 때는 상단에 CHAT이라고 나오지만, CMD + I를 누르면 Composer라고 나오게 된다.
이 두개의 차이는, CHAT의 경우 결과 값을 직접 보고 Apply를 눌러야 코드에 적용되는 반면, Composer에서 수정되는 코드는 즉각 코드에 반영되며 필요에 따라 Accept, reject을 눌러 코드에 그대로 반영할 것인지 다시 되돌릴 것인지 선택하면 된다.
4. cmd + shift + I
cmd + I에서 shift만 추가했을 뿐인데, 거의 전체화면 급으로 화면이 열리게 된다.
이곳에는 LLM에 물어봤던 내용들이 왼편에 작성되어 있으며, 질문에 대한 답변이 오른편에, 중앙에는 답변에 의해 변경이 필요한 코드를 작성해 준다.
한 번에 많은 글을 볼 수 있고, 이전에 질문했던 것들이 기록되기 때문에 여기서 질문을 하면서 의도적으로 Composers를 추가하여 History를 관리할 수도 있다.
또한, 처음보는 NOTEPADS 항목이 왼편 상단에 있는 것을 볼 수 있는데 이 부분은 메모장 처럼 사용도 가능하며, CHAT이나 COMPOSER에 입력 시 @NOTEPADS 를 통해 저장된 메모를 쉽게 참조할 수 있게 된다.
5. cmd + P
해당 단축키는 cursor IDE의 상단, 중앙 쪽에 위치한 input을 활성화시켜 주는 것으로, File을 찾을 때 해당 단축키를 통해 빠르게 활성화시킬 수 있다.
6. cmd + shift + P
cmd + P와 동일한데 >라는 텍스트가 미리 작성되어 있다.
해당 input에 >를 작성하면, keybinding이 되어있는 항목들이나 extension에 의해 사용이 가능한 기능들이 나열되게 된다.
자주 사용하는 기능들의 이름을 알고 있다면, 단축키로 지정해서 사용해도 되지만 이처럼 빠르게 검색해서 기능을 실행시킬 수 있다.
위의 단축키를 사용하면 기본적으로 Cursor IDE를 사용하는 것에는 불편함이 없을 것이다.
하지만, 현재 Cursor IDE에서 다른 extension은 설치하지 않았기도 하고, ai를 통해 코드를 추가하는 경우에 import문을 적합하게 추가해주지 못하기도 하는 등 다양한 이유로 Cursor IDE만 가지고 모든 안드로이드 개발을 할 수 없다.
그렇기 때문에, 자연스럽게 cursor와 android studio를 반복해서 이동하면서 개발을 해야 하는데, 이것이 여간 불편한 것이 아니다.
따라서, 마지막으로는
이 불편함을 해결하기 위해서
Android Studio -> Cursor IDE,
Cursor IDE -> Android Studio
로 이동할 수 있는 Hotkey를 만들어보도록 하자.
우선,
Android Studio에서 Cursor IDE로 이동하기 위한 설정을 해보자.
지금 사진에는 별도의 설정이 되어있는 상태지만 처음부터 설명하도록 하겠다.
Android Studio -> Preference(Settings)로 들어가 주도록 한다.
단축키로는 Cmd + , 키를 누르면 된다.
Tools -> External Tools에 들어가 보면 아무런 설정을 추가하지 않았다면 옆 쪽의 항목이 비어있을 것이다.
+ 버튼을 누르고 이와 같이 작성하도록 한다.
Name과 Description은 마음대로 설정을 해주면 되고, 중요한 건 Tool Settings이다.
Program은 Cursor IDE를 열어줄 것이기 때문에 Cursor가 설치된 경로를 입력해주어야 하는데, 별다르게 위치를 변경하지 않았더라면 필자가 작성한 것처럼 Applications 아래에 위치하게 될 것이다.
Program, Arguments, Working directory 또한 필자가 작성해 둔 것처럼 완전히 동일하게 작성하고 저장하도록 한다.
그다음,
사진과 같이 검색해 주도록 한다.
Preference (settings)에서 Keymap을 검색해 주고,
keymap에서는 External tools를 검색해 주면 위에서 직접 만들었던 Name으로 검색된 것을 확인할 수 있을 것이다.
해당 Name을 오른쪽 클릭하면 나오는 Add Keyboard Shorcut을 누른 후에 원하는 key 조합을 세팅해 주도록 한다.
이렇게 세팅한 후에, 원하는 파일에서 단축키를 누르게 되면 해당 파일을 Cursor IDE에서 열 수 있다.
해당 파일을 Cursor IDE에서 열 수 있는 이유는, 필자가 위의 사진에 작성한 이름처럼 특정 파일을 외부 Editor로 열어주도록 설정을 한 것이다.
그때, 외부 Editor를 Curosr IDE로 지정했기 때문에 Cursor IDE를 통해 해당 파일을 실행한 것이 된다.
위의 방식을 간단하게 정리하자면 이와 같다.
기능 추가
- Android Studio > Preferences
- Tools > External Tools
- + 버튼 누르기
- name, description 알아서 작성
- tools Settings은 다음과 같이 설정
- 저장
Shortcuts 등록
- Android Studio > Preferences
- Keymap > External Tools 검색
- 위에서 생성한 name 오른쪽 클릭 > add shorcut
- 설정 후 저장
그렇다면 이제 반대로
Cursor IDE -> Android Studio로 이동하도록 해보자.
Cursor IDE에서 cmd + shift + P를 누른 후 위와 같이 Open Keyboard Shortcuts (JSON)을 열어주도록 하자.
열어주면, 이와 같이 비어있는 것을 확인할 수 있는데, 이 대괄호 안에 원하는 shortcut을 입력해 주면 된다.
우리는 Android Studio를 열어줘야 하기 때문에 다음과 같이 등록하도록 한다.
key의 value값에 원하는 단축키를 넣어주면 되는데, 개인적인 추천으로는 Android Studio에서 Cursor IDE를 열어주는 단축키를 설정할 때와 동일한 키로 지정하는 것을 추천한다.
같은 단축키로 두 IDE를 스왑 하는 느낌을 받을 수 있다.
Command와 Args는 필자와 동일하게 입력하면 되는데, Command에서 알 수 있듯이, 다음 단축키를 통해서 command로 지정한 곳에서 text를 실행한다고 생각하면 된다.
즉, text에 있는 open ~ 이후의 경로를 터미널에서 입력한다고 생각하면 된다.
cursor IDE와 마찬가지로, 별다른 경로를 변경하지 않은 상태로 Android Studio를 설치했다면 필자와 동일한 루트에 저장이 되어있을 것이므로 동일하게 작업해 줘도 된다.
하지만, 이렇게만 설정을 하게 되면 Android studio에서 보고 있던 파일을 cursor IDE에서 열어주는 것 처럼, Cursor IDE에서 보고있던 파일을 Android Studio에서는 열 수 없다.
따라서 다음과 같이 args의 text 영역을 변경해 주도록 하자.
이처럼 추가하게 된다면, Cursor IDE에서 보고 있던 파일을 그대로 Android Studio에서 열어줄 수 있을 것이다.
이렇게 Android Studio와 Cursor IDE에서 단축키를 설정해 줬다면 보다 편하게 IDE를 바꿔가면서 편하게 사용이 가능할 것이다.
Android Studio에서는 Gemini를 제공해주고 있기 때문에 필자도 자주 사용하였고, 그것과 비슷한 느낌으로 사용하지 않을까 싶었는데, 의외로 더 깊게 사용이 가능할뿐더러 많은 부분을 커버할 수 있을 것이라고 생각이 들었다.
물론, 그렇다고 Cursor IDE만을 사용하여 앱을 개발하고 배포한다.라는 수준까지는 되지 않았지만 안드로이드 개발을 도와줄 수 있는 좋은 도구로써 사용한다면 정말 좋을 것이라고 생각이 되며,
사용하는 방법이 익숙해지고, 기본적인 세팅을 잘해둔다면 정말 생산성 높은 개발을 할 수 있을 것이라고 생각한다.
Cursor IDE를 사용하면서 이것저것 테스트도 해보고 적용해 보면서, 유용한 내용들을 알게 된다면 다시 글을 작성해 보도록 하겠다.