# 커맨드 개요

> Claude Code는 두 가지 커맨드 범주를 허용합니다: 실행 시 전달하는 CLI 플래그와 세션 중 입력하는 슬래시 커맨드.

## 두 가지 커맨드 타입

| 타입 | 사용 시점 | 예시 |
|------|----------|------|
| CLI 플래그 | 세션 시작 시 설정 — 모델, 출력 형식, 권한 모드 설정 | `claude --permission-mode acceptEdits "테스트 수정해줘"` |
| 슬래시 커맨드 | 실행 중인 세션과 상호작용 — 메모리 관리, 모델 전환, 코드 커밋 | `/commit` |

CLI 플래그는 한 번 소비되고 세션 중간에 변경할 수 없습니다(실행 중인 설정을 변경하는 `/model`과 `/permissions` 제외).

## 도움말 확인

```bash
# 모든 CLI 플래그 표시
claude --help

# 세션 내에서 슬래시 커맨드 목록
/help
```

`/help`는 현재 세션에서 사용 가능한 모든 슬래시 커맨드를 나열합니다 — 플러그인과 스킬이 추가한 커맨드 포함.

## CLI 플래그 사용법

```bash
claude [플래그] [프롬프트]
```

```bash
# 비대화형: 응답 출력 후 종료
claude -p "README.md를 요약해줘" < README.md

# 세션 모델 설정
claude --model opus

# 파일 편집 자동 승인
claude --permission-mode acceptEdits
```

자세한 내용은 [CLI 플래그](./17_CLI플래그.md) 참조.

## 슬래시 커맨드 사용법

세션 내에서 입력 프롬프트에 슬래시 커맨드 입력:

```
/command [인수]
```

```
/init
/compact 최근 세 작업만 요약해줘
/model claude-opus-4-5
```

자세한 내용은 [슬래시 커맨드](./18_슬래시커맨드.md) 참조.

## 키보드 단축키

모든 대화형 Claude Code 세션에서 작동:

| 키 | 동작 |
|----|------|
| `Ctrl+C` | 현재 응답 중단 (Claude가 턴 중간에 멈춤) |
| `Ctrl+D` | Claude Code 종료 |
| `Ctrl+L` | 터미널 화면 지우기 (대화 기록은 지우지 않음) |
| `Up` / `Down` | 입력 기록 탐색 |
| `Tab` | 슬래시 커맨드 이름 자동완성 |
| `Escape` | 진행 중인 권한 프롬프트 취소 |

> 📝 `Ctrl+C`는 현재 응답을 중단하지만 대화는 유지합니다. 세션을 완전히 종료하려면 `Ctrl+D` 또는 `/exit`를 사용하세요.

## 서브커맨드

메인 `claude` 커맨드 외에도 터미널에서 사용 가능한 서브커맨드:

| 서브커맨드 | 설명 |
|------------|------|
| `claude mcp` | MCP 서버 설정 및 관리 |
| `claude mcp serve` | Claude Code를 MCP 서버로 시작 |
| `claude doctor` | 설치 및 설정 문제 진단 |
| `claude update` | Claude Code를 최신 버전으로 업데이트 |

```bash
claude mcp --help
claude doctor
```
