AI

IntelliJ에 Claude Code 연동 및 활용 가이드 - comand vs skills

recording or reCoding 2026. 4. 12. 21:18

 

 개발자의 생산성을 한 차원 높여줄 Anthropic의 새로운 도구, Claude Code의 설치부터 최적화 설정까지 핵심만 요약하여 정리해 드립니다.

 Claude Code란?

Claude Code는 단순한 채팅 AI를 넘어, 사용자의 로컬 개발 환경(IDE, Terminal, Git)에 직접 접근하여 코드를 수정하고, 테스트를 실행하며, 복잡한 리팩토링까지 수행하는 에이전틱(Agentic) CLI 도구입니다.

 


설치 및 IDE 연동 (Ready to Code)

안티그래비티(Antigravity)란?

안티그래비티는 AI 에이전트를 기반으로 반복 업무를 자동화할 수 있도록 도와주는 플랫폼입니다. 프롬프트 기반으로 워크플로우를 만들 수 있고, 다양한 API 및 자동화 시나리오를 구성할 수 있습니다.

 

https://antigravity.google/download

 

Google Antigravity

Google Antigravity - Build the new way

antigravity.google

해당 툴에서 Cluade Code를 설치한다 .

 

설치 명령어

Claude Code는 Node.js 환경에서 실행됩니다. 터미널을 열고 아래 명령어를 입력하세요.

Bash
 
# Claude Code 전역 설치
npm install -g @anthropic-ai/claude-code

# 로그인 및 인증 (최초 1회)
claude

IDE 연동 (IntelliJ 기준)

  1. 플러그인 설치: IntelliJ 마켓플레이스에서 Claude Code [Beta]를 검색하여 설치합니다. (2024.2.1 이상 버전 권장)
  2. 연동 실행: IDE 하단 터미널에서 프로젝트 루트 폴더로 이동한 뒤 claude를 입력합니다.
  3. IDE 브릿지 활성화: Claude Code 세션 내에서 /ide 명령어를 입력하면 IDE와 동기화되어, Claude가 수정하는 내용이 실시간으로 에디터에 반영됩니다.

 Claude Code Pro 사용법 (성능 극대화)

Claude Code를 더 깊게 활용하기 위한 Pro급 팁입니다.

  • 컴파일 및 테스트 연동: Claude에게 "테스트를 돌려보고 실패하면 수정해줘"라고 명령하세요. 작성하신 CLAUDE.md의 빌드 명령어를 참고해 스스로 해결합니다.
  • Git 연동: 작업을 마치고 /commit을 입력하면, 변경 사항을 요약하여 적절한 커밋 메시지와 함께 스테이징 및 커밋을 진행합니다.
  • 멀티 파일 분석: "이 프로젝트의 전체적인 아키텍처를 분석해줘"와 같은 광범위한 질문도 인덱싱 기능을 통해 정확히 답변합니다.

 /init을 통한 설정 자동화

프로젝트를 처음 시작할 때 가장 먼저 해야 할 일입니다. 해야하는 이유는 init을 해놔야 cluade가 프로젝트를 미리 파악 할수 있는

CLAUDE.md 를 생성하고 앞으로는 이 .md 를 기반으로 대답하게 됩니다.

 

  • 명령어: claude /init
  • 역할: 이 명령어를 실행하면 프로젝트의 기술 스택과 구조를 분석하여 기본적인 설정 파일과 가이드라인을 생성합니다. 특히 다음에 설명할 CLAUDE.md의 초안을 잡는 데 유용합니다.

 CLAUDE.md의 중요성 (AI의 나침반)

CLAUDE.md는 Claude Code가 이 프로젝트에서 어떻게 행동해야 하는지 정의한 '지시서'입니다.

왜 중요한가요?

  • 맥락 유지: 프로젝트 고유의 규칙을 매번 설명할 필요가 없습니다.
  • 오류 방지: 빌드 명령어(./gradlew build)나 테스트 실행법을 명시해두면 AI가 엉뚱한 명령어를 실행하지 않습니다.
  • 일관성: 여러 명의 개발자가 협업하더라도 AI는 동일한 코딩 컨벤션과 설계 원칙을 준수합니다.

 


 IDE 제어권 획득: "열어줘, 수정해줘, 저장해줘"

기존 AI는 채팅창에 코드를 복사해서 주면 우리가 직접 붙여넣어야 했습니다. 하지만 MCP를 통해 IDE와 연결된 Claude는 다음과 같은 일을 직접 수행합니다.

  • 파일 탐색 및 읽기: 프로젝트의 수천 개 파일 중 필요한 맥락을 스스로 찾아 읽습니다.
  • 직접 수정: 에디터의 특정 라인을 정확히 수정하고 파일을 저장합니다.
  • 멀티 파일 작업: 여러 파일에 걸친 리팩토링을 단 한 번의 명령으로 끝냅니다.

 로컬 실행 및 실시간 디버깅: "에러 나면 네가 고쳐"

MCP 서버를 통해 Claude는 내 컴퓨터의 터미널(Shell)에 접근할 권한을 가집니다.

  • 빌드 및 테스트 실행: ./gradlew test를 직접 실행하고 결과를 확인합니다.
  • 자가 치유(Self-Healing): 테스트 실패 로그가 뜨면, Claude는 그 로그를 즉시 분석하여 코드를 다시 수정하고 성공할 때까지 반복합니다.
  • 환경 구축: 필요한 라이브러리를 설치하거나 DB 스키마를 생성하는 명령도 직접 내릴 수 있습니다.

 외부 도구와의 심리스한 결합

MCP 서버는 IDE뿐만 아니라 다양한 외부 서비스(Google 캘린더, Slack, GitHub, Notion 등)를 Claude의 '손과 발'로 만들어 줍니다.

  • 맥락의 확장: "구글 캘린더에 적힌 기획 회의 내용대로 코드를 수정하고, 완료되면 슬랙으로 보고해줘"라는 복합적인 업무가 가능해집니다.
  • 데이터 베이스 접근: 실제 DB 서버에 연결해 스키마를 조회하거나 쿼리를 실행해보고 그 결과를 코드에 반영합니다.

 개발자 경험(DX)의 혁신: "코딩 비서에서 동료로"

이제 개발자는 사소한 문법이나 빌드 오류에 신경 쓸 필요가 없습니다.

  • 의도에 집중: 개발자는 "어떤 기능을 만들지"에 대한 의도만 전달합니다.
  • 검토 중심의 워크플로우: Claude가 직접 실행하고 테스트까지 마친 코드를 개발자는 '승인'만 하면 됩니다.

결론: 왜 MCP를 써야 할까?

Claude에게 MCP라는 날개를 달아주는 것은 AI에게 실질적인 '실행력'을 부여하는 것과 같습니다. 단순히 글을 쓰는 AI가 아니라, 내 개발 환경을 이해하고 함께 움직이는 진정한 AI 페어 프로그래머를 원하신다면 지금 바로 MCP 서버 설정을 시작해 보세요.

 

Comnad 와 SKILLS 활용하기

1. Command (명령어 / 단축키)

터미널에서 /와 함께 입력하여 미리 정의된 긴 프롬프트를 즉시 실행합니다.

  • 용도: 반복되는 질문이나 고정된 형식의 답변이 필요할 때 사용합니다.
  • 저장 위치: .claude/commands/ 폴더 내에 .md 또는 .txt 파일로 저장합니다.
  • 사용법 예시:
    • /review.md 저장: "현재 스테이징된 코드의 보안 취약점을 점검하고 성능 개선안을 제안해줘."
    • 실행: 터미널에 /review 입력.
  • 장점: 매번 길게 설명할 필요 없이 단어 하나로 복잡한 지시를 내릴 수 있습니다.

2. Skills (스킬 / 워크플로우)

단순한 명령을 넘어, Claude가 특정 목표를 달성하기 위해 밟아야 할 '논리적 단계'를 정의합니다.

  • 용도: 복잡한 작업(예: 새 API 엔드포인트 추가, 버그 수정 및 테스트, 블로그 포스팅 초안 작성 등)을 자동화할 때 사용합니다.
  • 저장 위치: .claude/skills/ 폴더 내에 .md 파일로 저장합니다.
  • 작성 구조: 목표(Goal), 전제 조건(Prerequisites), 실행 단계(Steps)를 포함합니다.
  • 사용 예시 (블로그 작성 스킬):
    1. 현재 작업 중인 서비스(article)의 최신 커밋 내역을 분석한다.
    2. CLAUDE.md의 아키텍처 설명을 참고해 기술적 특징을 정리한다.
    3. 개발자 타겟의 블로그 초안을 마크다운 형식으로 작성한다.

실제 사용 해보면, 

.claude/skills/safe-logic.md 경로에 아래 내용의 markdown을 만들어 달라고 명령하고 

# Goal: Null-Safe 및 방어적 로직 구현

새로운 파라미터가 추가되거나 기존 로직을 수정할 때 다음 절차를 반드시 준수한다:

1. **Null 체크 우선:** `get()` 메서드를 호출하기 전, 반드시 `isPresent()` 또는 `null` 여부를 확인하는 로직이 있는지 검사한다.
2. **Optional 활용:** 파라미터가 있을 수도 있고 없을 수도 있다면, `Optional.ofNullable()`을 사용하여 기본값(`orElse`)을 설정하도록 제안한다.
3. **영향도 분석:** 파라미터 추가로 인해 기존 호출부(Caller)에서 `null`이 넘어올 가능성이 있는지 프로젝트 전체를 스캔한다.
4. **결과 검증:** 수정 후 해당 메서드에 대해 `null`을 입력값으로 넣는 단위 테스트(JUnit)를 작성하거나 실행한다.

 

새로운 함수를 만들거나 수정할 때 일일이 규칙을 적지 않고 /safe-logic을 호출하면, 안에 .md를 기반으로 Claude가 위 단계에 따라 코드를 검토하고 null 예외가 발생하지 않도록 코드를 짜줍니다.

 

 

둘의 차이를 비교 하자면 COMMNAD는 간단한 명령어를 저장했다가 명령어로 사용하는것이라면, SKLIIS .md의 경우에는 하나의 단위에 대해서 마무리가 되었을떄 `작업물을 skills로 저장해줘` 로 skills로 저장했다가 다음에 다시 작업할때 해당 skills를 불러와서 이어서 진행해줘 라고 진행하는 방식으로 구분해서 사용하면 좋은거 같습니다.