클로드 코드 세션에서 슬래시(
/)로 시작하는 커맨드를 사용하면 대화의 흐름을 더 효율적으로 관리하고, 반복적인 작업을 자동화할 수 있어요. 이 글에서는 자주 쓰이는 내장 커맨드부터 커스텀 커맨드를 만드는 방법까지 다루며, 당신의 워크플로우를 한 단계 업그레이드할 수 있는 노하우를 배울 수 있습니다.
1. 커맨드(명령어, Command)란 무엇인가요?
커맨드는 클로드 코드 세션 안에서 슬래시(
/)를 입력하면 나타나는
특수 명령어를 말해요. 일반적인 자연어 대화와 달리, 커맨드는 대화의 흐름이나 세션 자체를 제어하는 역할을 합니다.
클로드 코드의 커맨드는 크게 두 가지로 나눌 수 있어요.
- 내장 커맨드(Built-in Commands): 클로드 코드가 기본으로 제공하는 명령어
- 커스텀 커맨드(Custom Commands): 사용자가 직접 만들어 쓰는 명령어
이 글에서는 먼저 내장 커맨드 중 가장 자주 쓰이는 것들을 살펴본 뒤, 커스텀 커맨드를 만드는 방법까지 다뤄볼게요.
쉽게 비유하자면, 자연어 대화가 “카카오톡 채팅창에서 메시지를 주고받는 것”이라면, 커맨드는 “채팅방 자체를 제어하기 위한 다양한 기능”에 가까워요. 예를 들어 대화 내용을 초기화하거나, 새 대화를 시작하거나, 현재 상태를 확인하는 것처럼요.
2. 알아두면 유용한 내장 커맨드 모음
클로드 코드는 세션을 효율적으로 운영하기 위한 다양한 내장 커맨드를 제공해요. 카테고리별로 하나씩 살펴볼게요.
1) 컨텍스트 관리 커맨드
AI 코딩 에이전트를 효과적으로 활용하려면, “지금 클로드가 어떤 맥락 속에서 일하고 있는지”를 의식적으로 관리할 필요가 있어요. 컨텍스트 관리 커맨드는 이 역할을 담당해요.
| 커맨드 |
설명 |
활용 시점 |
/compact [지시] |
대화 내용을 요약하여 컨텍스트 압축 |
작업 단위를 마치고 다음 관련 작업으로 넘어갈 때, 대화가 길어져 응답 품질이 떨어질 때 |
/clear |
대화 기록을 완전히 삭제하고 백지 상태로 시작 |
완전히 다른 작업으로 전환할 때, 이전 대화의 잘못된 가정이 반복될 때 |
/context |
현재 컨텍스트 윈도우 사용량을 시각적으로 표시 |
컨텍스트가 얼마나 차 있는지 확인하고 싶을 때 |
이 중에서 가장 자주 쓰이는
/compact와
/clear의 차이를 조금 더 짚어볼게요.
/compact는 대화 내용을
요약본으로 압축한 뒤 그 요약을 새 대화의 시작점으로 설정해요. 반면
/clear는 대화 기록을
완전히 지워버려요. 둘 다 이미 수정된 파일에는 영향을 주지 않고, CLAUDE.md 같은 프로젝트 설정도 그대로 유지돼요.
어떤 걸 써야 할지 고민된다면, “이전 대화에서 클로드가 배운 것 중 다음 작업에 도움이 되는 게 있는가?”를 생각해보세요. “예”라면
/compact, “아니오”라면
/clear가 적합해요. 참고로
/compact는 뒤에 보존할 내용을 지시할 수도 있어요.
/compact API 변경사항과 데이터베이스 스키마 결정사항에 집중해서 요약해줘
지시 없이 실행하면 클로드가 자체적으로 중요도를 판단하는데, 중요한 맥락이 누락될 수 있으니 가능하면 지시를 함께 주는 것이 좋아요.
비유하자면 /compact는 세 시간짜리 강의 후 필기 노트를 정리하는 것과 비슷해요. 강의 전체를 기억할 수는 없지만, 핵심 포인트를 깔끔하게 정리해두면 다음 수업에서도 흐름을 이어갈 수 있죠. /clear는 아예 새로운 강의 필기를 위해 새로운 노트를 사는 것에 가까워요. 이전 노트가 오히려 혼란을 줄 때는 깨끗한 노트를 펼치는 편이 나으니까요.
2) 세션 관리 커맨드
세션 자체를 제어하거나, 현재 환경 상태를 확인할 때 사용하는 커맨드들이에요.
| 커맨드 |
설명 |
활용 시점 |
/help |
사용 가능한 모든 커맨드 목록 표시 |
어떤 커맨드가 있는지 확인하고 싶을 때 |
/model |
세션 중 사용할 모델 변경 (예: Sonnet, Opus, Haiku) |
작업 난이도에 따라 모델을 전환하고 싶을 때 |
/status |
현재 버전 정보, 연결 상태 확인 |
환경 상태를 빠르게 파악하고 싶을 때 |
/doctor |
설치 환경을 능동적으로 점검하고 문제 진단 |
설치 직후, 업그레이드 후, 또는 비정상 동작 시 |
/exit |
현재 세션 종료 (Ctrl+D와 동일) |
작업을 마치고 세션을 끝낼 때 |
/model은 특히 비용 관리 측면에서 실용적일 수 있어요. 예를 들어, 복잡한 아키텍처 설계에는 Opus를 쓰고, 단순한 코드 포맷팅이나 반복 작업에는 Haiku로 전환하면 비용과 속도를 동시에 관리할 수 있어요.
처음 클로드 코드를 설치했는데 뭔가 이상하게 동작한다면, /doctor를 실행해보세요. 병원의 건강검진처럼 환경 전체를 점검하고, 문제가 있으면 구체적인 해결 방법까지 알려줘요. /status가 “현재 체온 확인”이라면, /doctor는 “정밀 검사”에 해당한다고 볼 수 있어요.
3) 대화 탐색 및 내보내기 커맨드
진행 중인 대화를 되돌리거나, 외부로 내보내야 할 때 쓰이는 커맨드들이에요.
| 커맨드 |
설명 |
활용 시점 |
/rewind |
이전 시점으로 대화와 코드 변경사항을 되감기 |
잘못된 방향으로 진행된 것을 발견했을 때 |
/export |
대화 내용을 파일로 내보내기 |
디버깅 과정이나 의사결정 기록을 남기고 싶을 때 |
/copy |
마지막 응답을 클립보드에 복사 |
클로드의 답변을 다른 곳에 빠르게 붙여넣고 싶을 때 |
/rewind는 대화뿐 아니라 코드 변경사항까지 함께 되돌릴 수 있어서, 잘못된 방향으로 진행됐을 때
/clear보다 정밀한 제어가 가능해요. 키보드에서
Esc를 두 번 누르는 것으로도 같은 기능을 사용할 수 있어요.
/rewind는 문서 편집기의 “실행 취소(Undo)”와 비슷하지만, 단순히 한 단계만 되돌리는 것이 아니라 대화 중 특정 시점을 골라서 되돌아갈 수 있다는 점이 달라요. 긴 작업 중에 “아, 세 번째 단계부터 다시 해야겠다”라고 느낄 때 유용하게 쓸 수 있어요.
4) 설정 및 권한 커맨드
프로젝트 설정, 도구 권한, 비용 등을 관리하는 커맨드들이에요.
| 커맨드 |
설명 |
활용 시점 |
/memory |
CLAUDE.md 메모리 파일 편집 |
프로젝트 규칙이나 선호 설정을 추가/수정할 때 |
/permissions |
도구별 권한 확인 및 관리 |
특정 도구의 실행 허용 범위를 조정할 때 |
/config |
설정 파일 열기 |
전체 설정을 확인하거나 변경할 때 |
/hooks |
후크(Hook) 설정을 위한 인터랙티브 메뉴 |
파일 저장 시 자동 포맷팅 등 자동화 규칙을 설정할 때 |
/cost |
현재 세션의 토큰 사용량 및 비용 확인 |
비용을 모니터링하고 싶을 때 |
이 커맨드들을 전부 외울 필요는 없어요. /help만 기억하면 언제든 전체 목록을 확인할 수 있으니까요. 다만 컨텍스트 관리 커맨드인 /compact와 /clear는 작업 효율에 직접적인 영향을 미치기 때문에, 의식적으로 사용하는 습관을 들이는 것을 추천해요.
더 자세한 커맨드를 알고 싶다면,
https://code.claude.com/docs/en/commands를 참고해주세요.
3. 커스텀 커맨드(Custom Command)로 나만의 워크플로우 만들기
내장 커맨드만으로도 세션 관리는 충분하지만, 실무에서 반복되는 작업 패턴이 있다면
커스텀 커맨드를 만들어 자동화할 수 있어요. 커스텀 커맨드는 마크다운(Markdown) 파일 하나로 정의되며, 슬래시(
/)와 파일 이름이 곧 커맨드가 돼요.
1) 커스텀 커맨드의 기본 구조
커스텀 커맨드를 만드는 과정의 핵심은
올바른 폴더에 마크다운 파일을 생성하는 것이에요.
(1) 파일 저장 위치
커스텀 커맨드 파일을 어디에 저장하느냐에 따라 사용 범위가 달라져요.
| 저장 위치 |
사용 범위 |
용도 |
프로젝트/.claude/commands/ |
해당 프로젝트에서만 사용 |
팀원과 공유할 프로젝트 전용 커맨드 |
~/.claude/commands/ |
모든 프로젝트에서 사용 |
개인적으로 자주 쓰는 범용 커맨드 |
프로젝트 커맨드는 Git에 함께 커밋할 수 있기 때문에, 팀 전체가 동일한 워크플로우를 공유할 수 있다는 장점이 있어요.
(2) 파일 생성 규칙
커맨드 파일의 이름이 곧 커맨드 이름이 돼요. 예를 들어
review.md라는 파일을 만들면,
/review라는 커맨드로 사용할 수 있어요.
프로젝트 루트/
└── .claude/
└── commands/
├── review.md → /review
├── test-all.md → /test-all
└── deploy-check.md → /deploy-check
파일 안에는 클로드가 수행할 작업을 자연어로 작성하면 돼요. 복잡한 문법이나 코드가 필요하지 않아요.
(3) 간단한 예시: 코드 리뷰 커맨드
프로젝트의
.claude/commands/ 디렉토리에
review.md 파일을 만들어볼게요.
현재 스테이징된 변경사항(git diff --staged)을 분석하고 코드 리뷰를 수행해주세요.
리뷰 기준:
- 명확하지 않은 변수명이나 함수명이 있는지 확인
- 에러 처리가 누락된 곳이 있는지 확인
- 성능상 우려되는 패턴이 있는지 확인
- 보안 취약점이 없는지 확인
각 항목에 대해 문제가 있으면 해당 코드 위치와 함께 개선안을 제시해주세요.
문제가 없는 항목은 간단히 "이상 없음"으로 표시해주세요.
이제 클로드 코드 세션에서
/review를 입력하면, 매번 이 지시사항을 타이핑하지 않아도 동일한 코드 리뷰 프로세스가 실행돼요.
커스텀 커맨드는 자주 쓰는 프롬프트를 “저장된 레시피”로 만들어두는 것과 같아요. 매번 재료부터 계량하지 않고, 레시피 카드를 꺼내서 바로 요리를 시작할 수 있는 거죠. 팀 프로젝트라면 이 레시피를 팀원 전체가 공유할 수 있으니, 코드 리뷰나 테스트 같은 작업의 기준이 자연스럽게 통일돼요.
2) $ARGUMENTS로 유연한 커맨드 만들기
고정된 지시사항만으로는 커맨드의 활용도가 제한적일 수 있어요. 이때
$ARGUMENTS 플레이스홀더(placeholder)를 사용하면, 커맨드 실행 시 추가 정보를 동적으로 전달할 수 있어요.
$ARGUMENTS는 커맨드 뒤에 입력하는 모든 텍스트를 받아서, 마크다운 파일 내에서 해당 위치에 삽입해주는 역할을 해요.
(1) 예시: 테스트 작성 커맨드
.claude/commands/write-tests.md 파일을 다음과 같이 작성해볼게요.
다음 대상에 대한 테스트 코드를 작성해주세요: $ARGUMENTS
테스트 작성 규칙:
- Vitest와 React Testing Library 사용
- 테스트 파일은 소스 파일과 같은 폴더의 __tests__ 디렉토리에 배치
- 파일명은 [원본파일명].test.ts(x) 형식
- import 경로에는 @/ 접두사 사용
커버리지 범위:
- 정상 동작 경로(Happy Path)
- 경계값 및 엣지 케이스(Edge Case)
- 에러 상태(Error State)
이 커맨드는 다음과 같이 사용할 수 있어요.
/write-tests hooks 디렉토리의 use-auth.ts 파일
이렇게 하면
$ARGUMENTS 자리에 “hooks 디렉토리의 use-auth.ts 파일”이라는 텍스트가 삽입되어, 클로드가 해당 파일에 대한 테스트를 작성하게 돼요.
(2) 인수는 파일 경로에 한정되지 않아요
$ARGUMENTS에 전달할 수 있는 값은 파일 경로뿐만이 아니에요. 어떤 텍스트든 전달할 수 있어서, 다양한 방식으로 활용할 수 있어요.
/write-tests 장바구니에 상품을 추가하는 기능의 비즈니스 로직
/write-tests utils/date-formatter.ts의 formatRelativeTime 함수
이처럼 자연어 설명이든, 구체적인 파일 경로든, 커맨드의 맥락에 맞는 어떤 정보든 인수로 전달할 수 있어요.
$ARGUMENTS를 활용한 커스텀 커맨드는 택시를 타는 것과 비슷해요. 택시의 기본 서비스(안전 운전, 미터기 작동 등)는 동일하지만, 목적지만 바꿔서 말하면 매번 다른 곳에 데려다주죠. 커맨드의 기본 지시사항은 고정되어 있고, $ARGUMENTS로 전달하는 대상만 바꾸면 같은 품질의 작업을 다양한 파일이나 기능에 적용할 수 있어요.
3) 커스텀 커맨드 활용 시 알아두면 좋은 점
커스텀 커맨드를 실무에 적용할 때 몇 가지 참고하면 좋은 사항들이 있어요.
- 커맨드 파일을 새로 만들거나 수정한 후에는 클로드 코드를 재시작해야 반영돼요. 세션 시작 시 커맨드 파일을 읽어오기 때문에, 실행 중에 추가한 커맨드는 바로 인식되지 않아요.
- YAML 프론트매터(Frontmatter)로 메타데이터를 추가할 수 있어요. 파일 상단에
--로 감싼 영역에 description, model, allowed-tools 같은 설정을 넣으면, 커맨드의 동작을 더 세밀하게 제어할 수 있어요.
---
description: 스테이징된 코드에 대한 보안 취약점 스캔
allowed-tools: Read, Grep, Glob
model: claude-opus-4-6
---
코드베이스에서 보안 취약점을 분석해주세요.
확인 항목:
- SQL 인젝션 위험
- XSS 취약점
- 노출된 인증 정보
- 안전하지 않은 설정값
- 커맨드 이름은 직관적으로 짓는 것이 좋아요.
/sc보다는 /security-check처럼 목적이 명확한 이름을 사용하면, /help로 커맨드 목록을 확인할 때 바로 용도를 파악할 수 있어요.
- 같은 이름의 커맨드가 여러 위치에 있으면 우선순위가 적용돼요. 프로젝트 레벨(
.claude/commands/)이 개인 레벨(~/.claude/commands/)보다 우선해요.
커스텀 커맨드를 잘 만들어두면 세 가지 이점이 생겨요. 첫째, 반복 작업에 들이는 시간이 줄어들어요. 둘째, 팀원 모두가 동일한 기준으로 작업하게 돼요. 셋째, 프로젝트의 컨벤션과 규칙이 커맨드 파일에 문서화되어 자연스럽게 유지돼요.
마무리
정리하면, 클로드 코드의 커맨드는 크게 두 축으로 나뉘어요. 세션과 맥락을 관리하는
내장 커맨드, 그리고 반복 작업을 자동화하는
커스텀 커맨드예요. 내장 커맨드 중에서는
/compact와
/clear를 상황에 맞게 사용하는 것만으로도 작업 효율이 눈에 띄게 달라지고, 커스텀 커맨드는 마크다운 파일 하나로 팀 전체의 워크플로우를 통일할 수 있다는 점에서 활용 가치가 높아요.
처음에는
/help로 어떤 커맨드가 있는지 훑어보는 것부터 시작해보세요. 그리고 자신이 자주 반복하는 작업 하나를 골라 커스텀 커맨드로 만들어보면, 커맨드의 실용성을 바로 체감할 수 있을 거예요.
클로드 코드 시리즈
(1) 클로드 코드와 클로드 코드의 작동 방식
(2) 내장 도구와 MCP 작동 방식
(3) 기본 사용법 및 설정
(4) 커맨드(명령어, Command)
(5) MCP 연결과 권한 설정
(6) 깃헙 연동
(7) 훅의 정의
(8) 훅 생성 및 실행 방법
(9) 클로드 코드 SDK 설치법