# Claude Code가 다루기 좋은 CLI 도구 모음 - 터미널 네이티브 AI의 최적 무기

# Claude Code가 다루기 좋은 CLI 도구 모음

> Claude Code는 터미널 네이티브 AI 에이전트입니다. 좋은 CLI 도구를 갖추면 Claude Code의 생산성이 기하급수적으로 높아집니다.

Claude Code를 쓰면서 한 가지 깨달은 게 있습니다. 이 AI 에이전트는 터미널에서 살아요. Bash 도구를 통해 모든 CLI 명령을 직접 실행하죠. 그래서 Claude Code에 어떤 CLI 도구를 물려주느냐가 곧 생산성의 차이를 만듭니다.

Anthropic 공식 문서에서도 이렇게 말합니다:

> "Tell Claude Code to use CLI tools like gh, aws, gcloud, and sentry-cli when interacting with external services. CLI tools are the most context-efficient way to interact with external services."

이 글에서는 Claude Code와 궁합이 좋은 CLI 도구 30개를 카테고리별로 정리합니다. 모두 비대화형(non-interactive), 구조화된 출력, 명확한 종료 코드를 갖춘 도구들입니다.

## TL;DR

- Claude Code는 터미널에서 살아요. CLI 도구의 품질이 곧 생산성의 차이
- 핵심 조건: 비대화형, JSON 출력, 명확한 종료 코드, 조합 가능성, 멱등성
- 코어 명령어(ripgrep, fd, bat), 데이터 처리(jq, yq), Git(gh), AST 검색(ast-grep) 등 30개 도구 정리
- 설치 한 줄이면 시작 가능: `brew install ripgrep fd ast-grep jq yq gh`

## Claude Code 친화적 CLI의 6가지 조건

Claude Code가 잘 다루는 CLI 도구에는 공통된 특성이 있습니다. Terminal-Bench 2.0 벤치마크에서도 persistent bash session 접근 시 성능이 크게 향상되는 것이 확인됐습니다.

1. **비대화형(Non-interactive)**: TUI나 프롬프트 없이 한 줄 명령으로 실행
2. **구조화된 출력**: JSON, CSV 등 파싱 가능한 포맷 지원
3. **명확한 종료 코드**: 성공(0)/실패(1) 판별 가능
4. **조합 가능(Composable)**: 파이프, 리다이렉션과 잘 작동
5. **멱등성(Idempotent)**: 같은 명령 = 같은 결과
6. **좋은 --help**: Claude가 옵션을 스스로 파악 가능

이 조건들을 비유하면, CLI 도구는 Claude Code의 팔다리와 같습니다. 손가락이 섬세할수록(구조화된 출력) 더 정밀한 작업이 가능하고, 관절이 유연할수록(조합 가능) 더 복잡한 동작을 수행할 수 있죠.

## 코어 명령어 현대화 - coreutils 대체

매일 쓰는 기본 명령어들이 Rust로 재작성되면서 속도와 사용성이 크게 좋아졌습니다. Claude Code와 함께 쓰면 파일 탐색과 코드 검색이 눈에 띄게 빨라집니다.

| 기존 도구 | 현대적 대체 | 핵심 장점 |
|-----------|-----------|----------|
| ls | **eza** | 색상, Git 통합, 트리뷰 |
| cat | **bat** | 구문 강조, Git diff 표시, 줄번호 |
| find | **fd** | 직관적 문법, .gitignore 존중, 빠름 |
| grep | **ripgrep(rg)** | 멀티코어 병렬 검색, .gitignore 존중 |
| sed | **sd** | 정규식 대신 직관적 find/replace |
| cd | **zoxide** | 스마트 디렉토리 점프 (frecency) |
| du | **dust** | 디스크 사용량 시각화 |
| ps | **procs** | 프로세스 뷰어 |
| diff | **delta** | Git diff 구문 강조, side-by-side |

특히 ripgrep은 Claude Code 내장 Grep 도구의 백엔드이기도 합니다. Claude Code가 코드를 검색할 때 이미 ripgrep을 쓰고 있는 셈이죠.

설치는 한 줄이면 끝납니다:

```bash
brew install ripgrep fd bat eza sd zoxide dust procs delta
```

### 실전 성능 비교

```bash
# grep vs ripgrep: 대규모 코드베이스 검색
time grep -rn "useState" .          # 12.3초
time rg "useState" .                 # 0.8초 (15배 빠름)

# find vs fd: 파일 검색
time find . -name "*.ts"            # 3.2초
time fd -e ts                        # 0.3초 (10배 빠름)
```

## 데이터 처리 & API 도구

API 응답을 파싱하고, 설정 파일을 수정하고, HTTP 요청을 보내는 도구들입니다. Claude Code가 외부 서비스와 소통할 때 핵심적으로 사용합니다.

- **jq**: JSON 파싱/필터/변환의 핵심. API 응답 처리에 필수. Claude가 jq 필터 작성에 매우 능숙합니다
- **yq**: YAML/TOML 파싱. Kubernetes 매니페스트, CI 설정 파일 처리에 유용
- **httpie (http)**: 인간 친화적 HTTP 클라이언트. curl보다 직관적인 출력을 제공
- **curl**: 범용 HTTP 클라이언트. 모든 API 호출의 기본이며, Claude가 가장 익숙한 도구
- **xh**: httpie 호환 Rust 구현. 더 빠른 HTTP 요청

Claude Code의 데이터 파이프라인 기본 패턴은 이렇습니다:

```bash
# API 응답에서 필요한 필드만 추출
curl -s https://api.example.com/data | jq '.results[] | {name, score}'

# YAML 설정에서 특정 값 읽기
yq '.services.web.ports' docker-compose.yml
```

## Git & GitHub 자동화

개발 워크플로우에서 가장 자주 쓰이는 도구 영역입니다.

- **gh**: GitHub CLI. PR, Issue, Actions, Release를 모두 터미널에서 관리. Anthropic 공식 권장 도구
- **git**: 버전 관리의 기본. Claude Code가 가장 자연스럽게 다루는 도구
- **delta**: Git diff를 구문 강조로 보여주는 뷰어
- **git-cliff**: 커밋 히스토리에서 자동 CHANGELOG 생성

gh CLI는 Claude Code와 최고 궁합을 자랑합니다. 비대화형, JSON 출력, 완전한 GitHub 자동화 세 박자가 맞기 때문입니다:

```bash
# PR 목록을 JSON으로 조회
gh pr list --json number,title,state

# 이슈 생성
gh issue create --title "Bug fix" --body "Description"

# Actions 실행 상태 확인
gh run list --limit 5

# 릴리즈 생성
gh release create v1.0.0 --generate-notes
```

## 코드 검색 & 리팩토링

코드를 이해하고, 패턴을 찾고, 구조적으로 수정하는 데 특화된 도구입니다.

- **ast-grep (sg)**: AST 패턴 기반 구조적 코드 검색/리팩토링. 정규식이 아닌 코드 구조를 이해하는 검색. 커뮤니티에서 "하나만 설치한다면 이것"이라고 평가받는 도구
- **difftastic**: AST 기반 구조적 diff. 공백이나 포매팅 변경은 무시하고 의미 있는 변경만 표시

ast-grep은 Claude Code의 코드 리팩토링 작업에서 정규식의 한계를 넘어서는 도구입니다. 예를 들어, 특정 함수 호출 패턴을 정확하게 찾아 일괄 변경할 수 있습니다.

```bash
# console.log 호출을 모두 찾기 (AST 기반 - 문자열 내 console.log는 무시)
sg --pattern 'console.log($$$)' --lang typescript

# 특정 패턴을 일괄 변경
sg --pattern 'console.log($MSG)' --rewrite 'logger.info($MSG)' --lang typescript
```

## 코드 품질 & 패키지 관리

린팅, 포매팅, 패키지 관리까지 자동화하는 도구들입니다.

### 코드 품질 도구

| 도구 | 대상 | 용도 |
|------|------|------|
| shellcheck | Shell | 셸 스크립트 린터 |
| shfmt | Shell | 셸 스크립트 포매터 |
| ruff | Python | 린터+포매터 (초고속) |
| oxlint | JS/TS | JavaScript/TypeScript 린터 |
| actionlint | GitHub Actions | 워크플로우 린터 |
| zizmor | GitHub Actions | 보안 분석 |

### 패키지 매니저

| 도구 | 생태계 | 핵심 장점 |
|------|--------|----------|
| uv | Python | pip 대비 10-100배 빠름 |
| pnpm | Node.js | 디스크 효율적, workspace 지원 |
| bun | Node.js | 런타임 겸용. 빌드/테스트/실행 올인원 |
| pipx | Python CLI | 격리된 환경에서 CLI 도구 설치 |

## 클라우드 & 인프라

클라우드 서비스와 인프라를 터미널에서 관리하는 도구들입니다. 모두 비대화형 실행과 JSON 출력을 지원합니다.

- **docker**: 컨테이너 관리. 빌드/실행 자동화
- **supabase**: Supabase CLI. DB 마이그레이션, Edge Functions 배포
- **terraform**: IaC(Infrastructure as Code). plan -> apply 패턴이 Claude의 "계획 -> 실행" 사고방식과 일치
- **kubectl**: Kubernetes 관리. JSON/YAML 출력, 선언적 관리
- **aws/gcloud/az**: 클라우드 프로바이더 CLI. --output json 지원. Anthropic 공식 권장
- **vercel**: 프론트엔드 배포 자동화

```bash
# terraform plan → Claude가 변경사항 분석
terraform plan -out=plan.tfplan

# kubectl로 pod 상태 JSON 출력
kubectl get pods -o json | jq '.items[] | {name: .metadata.name, status: .status.phase}'
```

## 미디어 & 문서 변환

미디어 파일과 문서를 변환하는 도구들입니다. 복잡한 옵션 조합이 필요한 영역이라 Claude Code의 도움이 특히 빛납니다.

- **ffmpeg**: 미디어 변환/편집. 복잡한 옵션을 Claude가 한 줄로 조합
- **yt-dlp**: YouTube/미디어 다운로드. 자막 추출에 필수
- **pandoc**: 문서 변환 (Markdown -> DOCX -> PDF)
- **ImageMagick (magick)**: 이미지 처리/변환

## MCP 서버 생태계

CLI 도구 외에도 Claude Code의 기능을 확장하는 MCP(Model Context Protocol) 서버들이 있습니다:

- **Context7**: 라이브러리 최신 문서를 실시간 조회 (man 페이지의 AI 버전)
- **Playwright**: 브라우저 자동화. 웹 테스트와 스크래핑
- **Exa**: AI 최적화 웹 검색
- **Jina Reader**: 웹 페이지를 마크다운으로 변환

## Claude Code + CLI 베스트 프랙티스

Anthropic 엔지니어들이 실전에서 사용하는 패턴 5가지입니다:

1. **Explore -> Plan -> Code -> Commit**: CLI 도구로 탐색(rg, fd) -> 계획 -> 코드 작성 -> git commit
2. **서브에이전트 활용**: 복잡한 CLI 작업을 서브에이전트에 위임하여 메인 컨텍스트 보존
3. **JSON 출력 우선**: `--format json`, `--output json`으로 구조화된 데이터 확보
4. **파이프 체인**: `command | jq '.field'` 패턴으로 데이터 추출/변환
5. **비대화형 모드 강제**: `--yes`, `--force`, `--no-interactive`로 프롬프트 우회

Claude Code가 특히 잘 다루는 CLI 패턴도 정리합니다:

```bash
# CRUD 작업
gh issue create --title "Fix bug" --body "Description"
docker run --rm -it node:20 npm test

# 데이터 파이프라인
curl -s API_URL | jq '.data[]' | xargs -I{} echo {}

# 빌드/테스트 (결과 파싱 + 자동 수정)
npm test 2>&1 | head -50

# 파일 조작
fd -e ts | xargs rg "deprecated_function"

# 인프라 관리
terraform plan -out=plan.tfplan
```

## 원라이너 설치

지금 바로 시작할 수 있습니다:

```bash
# 코어 + 코드 품질
brew install ripgrep fd ast-grep jq yq shellcheck shfmt difftastic bat eza tree httpie gh

# Python 생태계
brew install uv ruff
```

Trail of Bits의 [claude-code-config](https://github.com/trailofbits/claude-code-config) 프로젝트도 참고하세요. 보안 팀이 검증한 Claude Code 설정과 CLI 도구 세트를 제공합니다.

## FAQ

### Claude Code 없이도 이 도구들이 유용한가요?

네, 이 도구들은 Claude Code와 무관하게 개발 생산성을 높여줍니다. ripgrep은 grep보다 빠르고, fd는 find보다 직관적이며, jq는 JSON 처리의 표준입니다. Claude Code와 함께 쓰면 시너지가 극대화될 뿐입니다.

### 기존 coreutils와 충돌하지 않나요?

충돌하지 않습니다. eza, bat, fd 등은 별도 바이너리로 설치되며, 기존 ls, cat, find를 덮어쓰지 않습니다. alias를 설정하면 기본 명령어처럼 쓸 수 있습니다.

### Windows에서도 사용할 수 있나요?

대부분의 도구가 크로스 플랫폼을 지원합니다. Rust로 작성된 도구들(ripgrep, fd, bat, eza 등)은 Windows 바이너리를 공식 제공합니다. 패키지 매니저는 scoop이나 winget을 사용하면 됩니다.

### 어떤 도구부터 설치해야 하나요?

ripgrep, fd, jq, gh 이 4개만 먼저 설치하세요. 코드 검색, 파일 찾기, JSON 파싱, GitHub 자동화를 바로 시작할 수 있습니다.

### MCP 서버와 CLI 도구 중 뭘 써야 하나요?

둘 다 쓰면 됩니다. CLI 도구는 Bash 도구를 통해 실행되고, MCP 서버는 별도 프로토콜로 연결됩니다. CLI는 시스템/인프라 작업에, MCP는 외부 서비스 연동에 각각 최적화되어 있습니다.

## 참고 자료

- [Anthropic 공식 문서 - Bash Tool](https://platform.claude.com/docs) - CLI 도구 사용 가이드
- [Claude Code Learning Hub](https://codewithclaude.net) - 실전 활용 사례
- [Trail of Bits claude-code-config](https://github.com/trailofbits/claude-code-config) - 보안 검증된 설정
- [ast-grep Agent Skill](https://github.com/ast-grep/agent-skill) - AST 기반 검색 에이전트
- [Supercharging Claude Code with CLI Tools](https://batsov.com) - 실전 튜토리얼
- [Claude Code CLI Definitive Reference](https://introl.com/blog) - CLI 도구 종합 레퍼런스

## 마무리

Claude Code의 힘은 터미널에서 나옵니다. 좋은 CLI 도구를 갖추면, Claude Code는 코드 검색부터 인프라 관리까지 모든 작업을 더 빠르고 정확하게 처리합니다.

핵심은 세 가지입니다: 비대화형, 구조화된 출력, 조합 가능성. 이 조건을 갖춘 CLI 도구를 Claude Code에 물려주세요. 생산성의 차이를 체감하게 될 겁니다.

