AI 코딩 어시스턴트의 새로운 기준, 클로드 코드를 200% 활용하는 방법을 알려드립니다.
들어가며
개발자라면 누구나 한 번쯤 이런 경험이 있을 겁니다. 코드를 작성하다가 막히면 브라우저를 열고, ChatGPT나 Claude에 질문하고, 답변을 복사해서 다시 에디터로 돌아오는… 이 반복되는 컨텍스트 스위칭이요.
**클로드 코드(Claude Code)**는 이 문제를 해결합니다. Anthropic에서 만든 이 CLI 도구는 터미널에서 바로 Claude와 대화하면서 코딩할 수 있게 해줍니다. 단순한 챗봇이 아니라, 파일을 읽고, 수정하고, 명령어를 실행하는 진짜 코딩 파트너입니다.
이 글에서는 클로드 코드의 설치부터 고급 설정까지, 실무에서 바로 활용할 수 있는 모든 내용을 다룹니다.
목차
- 설치 및 시작하기
- CLI 플래그 (실행 옵션)
- 슬래시 명령어
- 키보드 단축키
- 설정 파일 구조
- 권한 설정
- CLAUDE.md 메모리 파일
- MCP (Model Context Protocol)
- Hooks (훅)
- 커스텀 명령어
- 서브에이전트
- 샌드박스 설정
- 환경 변수
- 사용 가능한 도구
- 고급 워크플로우
- 마치며
1. 설치 및 시작하기
설치
npm으로 간단하게 설치할 수 있습니다.
npm install -g @anthropic-ai/claude-code
기본 실행
claude # 대화형 REPL 시작
claude "이 프로젝트 구조 설명해줘" # 프롬프트와 함께 시작
claude -p "README 요약해줘" # 비대화형 모드 (출력 후 종료)
업데이트 및 진단
claude update # 수동 업데이트
claude doctor # 설치 상태 진단 (문제 발생 시 유용)
2. CLI 플래그 (실행 옵션)
클로드 코드를 실행할 때 다양한 플래그로 동작을 커스터마이징할 수 있습니다.
기본 플래그
| 플래그 | 설명 |
|---|---|
-p, --print | 비대화형 모드. 응답 출력 후 종료 |
-c, --continue | 가장 최근 대화 이어서 진행 |
-r, --resume <session-id> | 특정 세션 ID로 대화 재개 |
--model <model> | 사용할 모델 지정 (예: opus, sonnet) |
--max-turns <n> | 최대 에이전트 턴 수 제한 |
--verbose | 상세 로깅 활성화 |
--debug <categories> | 디버그 모드 (예: --debug "api,mcp") |
권한 관련 플래그
| 플래그 | 설명 |
|---|---|
--dangerously-skip-permissions | 모든 권한 확인 건너뛰기 (YOLO 모드) |
--allowedTools <tools> | 허용할 도구 지정 |
💡 팁:
--dangerously-skip-permissions는 “YOLO 모드”라고도 불립니다. Claude가 중간에 멈추지 않고 작업을 끝까지 수행합니다. 단, 신뢰할 수 있는 환경에서만 사용하세요!
시스템 프롬프트 플래그
| 플래그 | 설명 |
|---|---|
--system-prompt <prompt> | 기본 시스템 프롬프트 완전 대체 |
--system-prompt-file <file> | 파일에서 시스템 프롬프트 로드 |
--append-system-prompt <prompt> | 기본 프롬프트에 내용 추가 (권장) |
--append-system-prompt-file <file> | 파일에서 추가 프롬프트 로드 |
출력 형식 플래그
| 플래그 | 설명 |
|---|---|
--output-format text | 텍스트 출력 (기본값) |
--output-format json | JSON 형식 출력 (스크립팅/자동화용) |
--output-format stream-json | 스트리밍 JSON 출력 |
기타 유용한 플래그
| 플래그 | 설명 |
|---|---|
--add-dir <path> | 추가 작업 디렉토리 지정 |
--mcp-debug | MCP 디버그 모드 |
플래그 조합 예시
# Opus 모델 + 상세 로깅 + 추가 디렉토리
claude --model opus --verbose --add-dir src/
# CI/CD 자동화 파이프라인
claude -p "lint 오류 모두 수정해줘" \
--dangerously-skip-permissions \
--output-format stream-json \
--max-turns 10
3. 슬래시 명령어
대화 중에 / 로 시작하는 명령어를 사용하면 다양한 기능을 실행할 수 있습니다.
컨텍스트 관리
| 명령어 | 설명 |
|---|---|
/init | 프로젝트 스캔 후 CLAUDE.md 파일 자동 생성 |
/clear | 대화 기록 초기화 |
/compact [instructions] | 대화 요약하여 컨텍스트 절약 |
/context | 현재 컨텍스트 사용량 시각화 |
/memory | CLAUDE.md 메모리 파일 편집 |
설정 및 권한
| 명령어 | 설명 |
|---|---|
/config | 설정 마법사 열기 |
/permissions | 권한 설정 확인/변경 |
/allowed-tools | 허용된 도구 관리 |
/model | 모델 선택 |
/output-style | 출력 스타일 설정 |
개발 워크플로우
| 명령어 | 설명 |
|---|---|
/review | 현재 변경사항 코드 리뷰 요청 |
/todos | Claude가 추적 중인 TODO 목록 |
/add-dir | 추가 작업 디렉토리 추가 |
진단 및 도움말
| 명령어 | 설명 |
|---|---|
/help | 사용 가능한 모든 명령어 표시 |
/doctor | 설치 상태 점검 |
/status | 시스템 상태 확인 |
/cost | 토큰 비용 표시 |
기타
| 명령어 | 설명 |
|---|---|
/export [filename] | 대화 내보내기 |
/rewind | 대화 또는 코드 상태를 이전으로 되돌리기 |
/bug | 버그 리포트 |
4. 키보드 단축키
권한 모드 전환
| 단축키 | 설명 |
|---|---|
| Shift + Tab | 권한 모드 순환 전환 |
권한 모드 종류
- Always Ask: 모든 작업에 권한 요청 (기본값)
- Accept Edits: 파일 편집만 자동 승인
- Bypass Permissions: 모든 권한 자동 승인
VS Code에서도 Shift + Tab으로 동일하게 전환할 수 있습니다.
기타 단축키
| 단축키 | 설명 |
|---|---|
Escape | 현재 작업 중단 |
Ctrl + C | 세션 종료 |
5. 설정 파일 구조
클로드 코드는 계층적인 설정 시스템을 사용합니다. 상위 설정이 하위 설정을 오버라이드합니다.
설정 파일 위치 및 우선순위
| 우선순위 | 파일 위치 | 용도 |
|---|---|---|
| 1 (최상) | managed-settings.json | 기업 관리 정책 |
| 2 | CLI 플래그 | 임시 오버라이드 |
| 3 | .claude/settings.local.json | 개인 프로젝트 설정 (gitignore) |
| 4 | .claude/settings.json | 팀 공유 프로젝트 설정 |
| 5 (최하) | ~/.claude/settings.json | 전역 사용자 설정 |
💡 팁: 팀과 공유할 설정은
.claude/settings.json에, 개인적인 설정은.claude/settings.local.json에 저장하세요.
settings.json 전체 구조 예시
{
"model": "claude-sonnet-4-20250514",
"permissions": {
"allow": [
"Bash(npm run lint)",
"Bash(npm run test:*)",
"Read(~/.zshrc)"
],
"ask": [
"Bash(git push:*)"
],
"deny": [
"Bash(curl:*)",
"Read(./.env)",
"Read(./.env.*)",
"Read(./secrets/**)"
],
"additionalDirectories": ["../docs/"],
"defaultMode": "acceptEdits"
},
"sandbox": {
"enabled": true,
"autoAllowBashIfSandboxed": true,
"excludedCommands": ["docker", "git"],
"network": {
"allowUnixSockets": ["/var/run/docker.sock"],
"allowLocalBinding": true
}
},
"env": {
"MY_CUSTOM_VAR": "value"
},
"hooks": {
"PostToolUse": [{
"matcher": "Write(*.py)",
"hooks": [{
"type": "command",
"command": "black $file"
}]
}]
},
"includeCoAuthoredBy": true,
"outputStyle": "Explanatory",
"companyAnnouncements": [
"코드 리뷰 필수입니다!"
]
}
6. 권한 설정
클로드 코드의 핵심 기능 중 하나는 세밀한 권한 제어입니다.
권한 규칙 형식
도구(패턴)
도구별 권한 패턴 예시
| 도구 | 패턴 예시 | 설명 |
|---|---|---|
Bash | Bash(npm run *) | npm run 으로 시작하는 명령 |
Bash | Bash(git diff:*) | git diff 명령 (: 뒤에 인자) |
Read | Read(./.env) | 특정 파일 읽기 |
Read | Read(./secrets/**) | 디렉토리 하위 모든 파일 |
Write | Write(*.py) | Python 파일 쓰기 |
Edit | Edit(src/**) | src 하위 파일 편집 |
WebFetch | WebFetch(*.anthropic.com) | 특정 도메인 접근 |
권한 레벨
| 레벨 | 설명 |
|---|---|
allow | 자동 허용 (확인 없음) |
ask | 매번 확인 요청 |
deny | 완전 차단 |
전체 권한 허용 설정
매번 권한 요청이 귀찮다면, 전체 권한을 허용할 수 있습니다.
방법 1: CLI 플래그
claude --dangerously-skip-permissions
방법 2: 설정 파일 (~/.claude/settings.json)
{
"permissions": {
"allow": ["*"]
}
}
방법 3: 명시적으로 모든 도구 허용
{
"permissions": {
"allow": [
"Bash(*)",
"Read(*)",
"Write(*)",
"Edit(*)",
"WebFetch(*)",
"Task(*)"
],
"deny": []
}
}
권한 모드 (defaultMode)
| 모드 | 설명 |
|---|---|
default | 항상 물어봄 |
acceptEdits | 파일 편집만 자동 승인 |
bypassPermissions | 모든 권한 자동 승인 |
VS Code 설정에서 영구 적용:
{
"claude-code.permissionMode": "bypassPermissions"
}
⚠️ 주의: 전체 권한 허용은 편리하지만, 신뢰할 수 있는 프로젝트에서만 사용하세요. 악의적인 프롬프트 인젝션이나 예상치 못한 파일 삭제가 발생할 수 있습니다.
7. CLAUDE.md 메모리 파일
CLAUDE.md는 클로드 코드의 장기 기억입니다. 프로젝트의 컨텍스트, 코딩 규칙, 자주 사용하는 명령어 등을 저장해두면 Claude가 매 세션마다 이를 참고합니다.
파일 위치 및 적용 범위
| 위치 | 적용 범위 |
|---|---|
~/.claude/CLAUDE.md | 모든 프로젝트 (전역) |
프로젝트/CLAUDE.md | 해당 프로젝트 |
프로젝트/CLAUDE.local.md | 개인용 (gitignore) |
하위폴더/CLAUDE.md | 해당 폴더 작업 시 |
CLAUDE.md 예시
# 프로젝트 컨텍스트
## 기술 스택
- TypeScript + React 18
- Node.js + Express 백엔드
- PostgreSQL 데이터베이스
- Docker + Kubernetes 배포
## 코딩 규칙
- 함수형 프로그래밍 선호
- 모든 함수에 JSDoc 주석 필수
- 테스트 커버리지 80% 이상 유지
- ESLint + Prettier 사용
## 브랜치 전략
- feature/* → develop → main
- PR 필수, 리뷰어 1명 이상
## 자주 사용하는 명령어
- `npm run dev` - 개발 서버 (포트 3000)
- `npm run test` - Jest 테스트 실행
- `npm run lint:fix` - 린트 자동 수정
- `npm run build` - 프로덕션 빌드
## 주의사항
- .env 파일 절대 커밋 금지
- production 브랜치 직접 푸시 금지
- API 키는 환경 변수로만 관리
빠른 시작
프로젝트에서 바로 CLAUDE.md를 생성하려면:
/init
Claude가 프로젝트를 분석하고 적절한 CLAUDE.md를 자동 생성합니다.
세션 중 빠른 메모리 추가
# 접두사를 사용하면 바로 메모리에 추가됩니다:
# 이 프로젝트는 TypeScript strict 모드 사용
8. MCP (Model Context Protocol)
MCP는 클로드 코드의 확장 시스템입니다. 외부 도구와 서비스(GitHub, 데이터베이스, Slack 등)를 Claude에 연결할 수 있습니다.
MCP 서버 관리
# GitHub 서버 추가
claude mcp add github -- npx -y @modelcontextprotocol/server-github
# HTTP 방식으로 추가
claude mcp add --transport http github https://mcp.github.com
# 서버 목록 확인
claude mcp list
# 서버 제거
claude mcp remove github
MCP 설정 파일
사용자 설정 (~/.claude/mcp.json):
{
"servers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "ghp_xxxxxxxxxxxx"
}
},
"postgres": {
"command": "mcp-server-postgres",
"args": ["--connection-string", "postgresql://user:pass@localhost/db"]
}
}
}
프로젝트 설정 (.mcp.json):
{
"servers": {
"project-db": {
"command": "mcp-server-sqlite",
"args": ["./data/app.db"]
}
}
}
settings.json에서 MCP 제어
{
"enableAllProjectMcpServers": true,
"enabledMcpjsonServers": ["github", "memory"],
"disabledMcpjsonServers": ["filesystem"]
}
MCP 서버가 설치되면 해당 서버가 제공하는 슬래시 명령어도 사용할 수 있습니다. 예를 들어 GitHub MCP를 설치하면 /github-search, /github-pr 같은 명령어가 추가됩니다.
9. Hooks (훅)
훅은 도구 실행 전후에 자동으로 실행되는 커스텀 명령어입니다. 예를 들어, Python 파일을 저장할 때마다 자동으로 포매터를 실행할 수 있습니다.
훅 종류
| 훅 | 실행 시점 |
|---|---|
SessionStart | 세션 시작 시 |
PreToolUse | 도구 실행 전 |
PostToolUse | 도구 실행 후 |
훅 설정 예시
{
"hooks": {
"SessionStart": [{
"matcher": "startup",
"hooks": [{
"type": "command",
"command": "echo 'conda activate myenv' >> \"$CLAUDE_ENV_FILE\""
}]
}],
"PreToolUse": [{
"matcher": "Bash(rm *)",
"hooks": [{
"type": "command",
"command": "echo '⚠️ 경고: 파일 삭제 명령이 실행됩니다'"
}]
}],
"PostToolUse": [{
"matcher": "Write(*.py)",
"hooks": [
{
"type": "command",
"command": "black $file"
},
{
"type": "command",
"command": "mypy $file"
}
]
}]
}
}
위 설정은:
- 세션 시작 시 conda 환경 활성화
rm명령 실행 전 경고 메시지 출력- Python 파일 저장 후 자동으로 Black 포매터와 MyPy 타입 체크 실행
훅 비활성화
{
"disableAllHooks": true
}
10. 커스텀 명령어
자주 사용하는 프롬프트를 슬래시 명령어로 만들 수 있습니다.
커스텀 슬래시 명령어 만들기
- 프로젝트 명령어:
.claude/commands/(팀 공유) - 개인 명령어:
~/.claude/commands/(개인용)
명령어 파일 형식
.claude/commands/review.md:
---
description: 종합 코드 리뷰 수행
allowed-tools: Bash(npm test:*), Read, Grep
argument-hint: [파일경로]
model: sonnet
---
다음 항목에 집중하여 코드 리뷰를 수행해주세요:
1. 보안 취약점
2. 성능 이슈
3. 코드 품질 및 유지보수성
4. 테스트 커버리지
대상 파일: $ARGUMENTS
명령어 사용
/review src/auth/login.ts
Frontmatter 옵션
| 옵션 | 설명 |
|---|---|
description | 명령어 설명 (/help에 표시) |
allowed-tools | 허용할 도구 목록 |
argument-hint | 인자 힌트 |
model | 사용할 모델 (sonnet, opus 등) |
인자 사용
$ARGUMENTS: 모든 인자$1,$2, …: 개별 위치 인자
11. 서브에이전트
서브에이전트는 특정 작업에 특화된 별도의 Claude 인스턴스입니다. 코드 리뷰, 디버깅, 문서 작성 등 역할별로 전문화된 에이전트를 만들 수 있습니다.
서브에이전트 파일 위치
- 사용자:
~/.claude/agents/ - 프로젝트:
.claude/agents/
서브에이전트 정의
.claude/agents/reviewer.md:
---
name: reviewer
description: 철저한 코드 리뷰 전문가
model: sonnet
color: orange
tools:
- Read
- Grep
- Glob
- Bash
---
당신은 10년 경력의 시니어 코드 리뷰어입니다.
다음 항목에 집중하여 리뷰하세요:
- 보안 취약점
- 성능 병목
- 코드 가독성
- 테스트 커버리지
CLI에서 서브에이전트 정의
claude --agents '{
"code-reviewer": {
"description": "코드 변경 후 자동 리뷰",
"prompt": "시니어 코드 리뷰어로서 품질, 보안, 모범 사례에 집중",
"tools": ["Read", "Grep", "Glob", "Bash"],
"model": "sonnet"
},
"debugger": {
"description": "오류 및 테스트 실패 디버깅 전문가",
"prompt": "오류를 분석하고 원인을 파악하여 수정안을 제시"
}
}'
Claude는 작업 내용에 따라 적절한 서브에이전트를 자동으로 호출합니다.
12. 샌드박스 설정
샌드박스는 bash 명령을 파일시스템과 네트워크로부터 격리합니다. 안전하게 Claude에게 더 많은 권한을 줄 수 있습니다.
샌드박스 설정
{
"sandbox": {
"enabled": true,
"autoAllowBashIfSandboxed": true,
"excludedCommands": ["git", "docker"],
"allowUnsandboxedCommands": false,
"network": {
"allowUnixSockets": [
"/var/run/docker.sock",
"~/.ssh/agent-socket"
],
"allowLocalBinding": true,
"httpProxyPort": 8080,
"socksProxyPort": 8081
},
"enableWeakerNestedSandbox": false
}
}
샌드박스 옵션 설명
| 옵션 | 설명 |
|---|---|
enabled | 샌드박스 활성화 (macOS/Linux만 지원) |
autoAllowBashIfSandboxed | 샌드박스 내에서 bash 자동 허용 |
excludedCommands | 샌드박스 외부에서 실행할 명령어 (git, docker 등) |
allowUnsandboxedCommands | 샌드박스 탈출 허용 여부 |
network.allowUnixSockets | 허용할 Unix 소켓 경로 |
network.allowLocalBinding | localhost 바인딩 허용 (macOS) |
💡 팁: 샌드박스를 활성화하면
autoAllowBashIfSandboxed: true로 설정해도 안전합니다. Claude가 시스템을 손상시킬 수 없기 때문이죠.
13. 환경 변수
클로드 코드의 동작을 세밀하게 제어하는 환경 변수들입니다.
인증
| 변수 | 설명 |
|---|---|
ANTHROPIC_API_KEY | API 키 |
ANTHROPIC_AUTH_TOKEN | Authorization 헤더용 토큰 |
ANTHROPIC_CUSTOM_HEADERS | 커스텀 요청 헤더 |
모델 설정
| 변수 | 설명 |
|---|---|
ANTHROPIC_MODEL | 기본 모델 |
ANTHROPIC_DEFAULT_SONNET_MODEL | Sonnet 모델 오버라이드 |
ANTHROPIC_DEFAULT_OPUS_MODEL | Opus 모델 오버라이드 |
ANTHROPIC_DEFAULT_HAIKU_MODEL | Haiku 모델 오버라이드 |
CLAUDE_CODE_SUBAGENT_MODEL | 서브에이전트 모델 |
Bash 설정
| 변수 | 설명 |
|---|---|
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR | 명령 후 원래 디렉토리로 복귀 (1로 설정) |
BASH_DEFAULT_TIMEOUT_MS | 기본 타임아웃 (밀리초) |
BASH_MAX_TIMEOUT_MS | 최대 타임아웃 |
BASH_MAX_OUTPUT_LENGTH | 최대 출력 길이 |
기능 비활성화
| 변수 | 설명 |
|---|---|
DISABLE_AUTOUPDATER | 자동 업데이트 비활성화 |
DISABLE_TELEMETRY | 텔레메트리 비활성화 |
DISABLE_ERROR_REPORTING | 오류 보고 비활성화 |
DISABLE_COST_WARNINGS | 비용 경고 비활성화 |
DISABLE_PROMPT_CACHING | 프롬프트 캐싱 비활성화 |
클라우드 제공업체
| 변수 | 설명 |
|---|---|
CLAUDE_CODE_USE_BEDROCK | AWS Bedrock 사용 |
CLAUDE_CODE_USE_VERTEX | Google Vertex AI 사용 |
CLAUDE_CODE_USE_FOUNDRY | Microsoft Foundry 사용 |
기타
| 변수 | 설명 |
|---|---|
CLAUDE_CONFIG_DIR | 설정 디렉토리 경로 변경 |
CLAUDE_ENV_FILE | 환경 설정 스크립트 경로 |
MAX_THINKING_TOKENS | 확장 사고(Extended Thinking) 토큰 예산 |
MAX_MCP_OUTPUT_TOKENS | MCP 출력 최대 토큰 (기본: 25000) |
HTTP_PROXY / HTTPS_PROXY | 프록시 서버 |
환경 변수 설정 방법
터미널에서:
export ANTHROPIC_API_KEY="sk-..."
export CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR=1
claude
settings.json에서 (모든 세션에 적용):
{
"env": {
"CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR": "1",
"DISABLE_TELEMETRY": "1"
}
}
14. 사용 가능한 도구
클로드 코드가 사용할 수 있는 도구 목록입니다.
| 도구 | 설명 | 권한 필요 |
|---|---|---|
AskUserQuestion | 사용자에게 질문 | ❌ |
Bash | 셸 명령 실행 | ✅ |
BashOutput | 백그라운드 셸 출력 가져오기 | ❌ |
Edit | 파일 부분 수정 | ✅ |
Read | 파일 내용 읽기 | ❌ |
Write | 파일 생성/덮어쓰기 | ✅ |
Glob | 패턴으로 파일 찾기 | ❌ |
Grep | 파일 내용 검색 | ❌ |
WebFetch | URL에서 콘텐츠 가져오기 | ✅ |
WebSearch | 웹 검색 | ✅ |
Task | 서브에이전트로 작업 위임 | ❌ |
TodoWrite | 할일 목록 관리 | ❌ |
NotebookEdit | Jupyter 노트북 수정 | ✅ |
Skill | 스킬 실행 | ✅ |
SlashCommand | 슬래시 명령 실행 | ✅ |
KillShell | 백그라운드 셸 종료 | ❌ |
Bash 도구의 특성
- 작업 디렉토리: 유지됨 (
cd후 다음 명령에 적용) - 환경 변수: 유지되지 않음 (각 명령은 새 셸에서 실행)
환경 변수를 유지하는 방법
방법 1: Claude 시작 전 환경 활성화
conda activate myenv
claude
방법 2: CLAUDE_ENV_FILE 사용
export CLAUDE_ENV_FILE=/path/to/env-setup.sh
claude
방법 3: SessionStart 훅 사용
{
"hooks": {
"SessionStart": [{
"matcher": "startup",
"hooks": [{
"type": "command",
"command": "echo 'conda activate myenv' >> \"$CLAUDE_ENV_FILE\""
}]
}]
}
}
15. 고급 워크플로우
실제로 클로드 코드를 활용하는 몇 가지 강력한 패턴을 소개합니다.
TDD (테스트 주도 개발) 워크플로우
Anthropic에서 공식적으로 권장하는 패턴입니다:
claude --dangerously-skip-permissions
- “실패하는 테스트 먼저 작성해줘”
- “테스트 실행하고 실패 확인해줘”
- 테스트 커밋
- “테스트가 통과하도록 구현해줘. 모든 테스트가 통과할 때까지 반복해”
Claude가 중간에 멈추지 않고 테스트가 통과할 때까지 자동으로 반복합니다.
CI/CD 통합
# 자동화된 lint 수정
claude -p "모든 lint 오류 수정해줘" \
--dangerously-skip-permissions \
--output-format stream-json \
--max-turns 20 \
> lint_fix_result.json
# PR 설명 자동 생성
claude -p "이 브랜치의 변경사항으로 PR 설명 작성해줘" \
--output-format json
Docker 격리 환경에서 안전하게 실행
YOLO 모드를 사용하더라도 Docker 컨테이너 안에서 실행하면 시스템을 보호할 수 있습니다.
FROM alpine:latest
RUN apk update && apk add --no-cache \
bash curl git build-base \
python3 py3-pip nodejs npm
RUN npm install -g @anthropic-ai/claude-code
WORKDIR /workspace
CMD ["bash"]
docker run -it \
-v $(PWD):/workspace \
-e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY \
claude-container \
claude --dangerously-skip-permissions
병렬 Claude 인스턴스
복잡한 프로젝트에서 여러 터미널을 열고 동시에 작업할 수 있습니다:
- 터미널 1:
claude "프론트엔드 로그인 페이지 구현해줘" - 터미널 2:
claude "백엔드 인증 API 구현해줘" - 터미널 3:
claude "E2E 테스트 작성해줘"
유용한 별칭 설정
~/.bashrc 또는 ~/.zshrc에 추가:
# YOLO 모드 (위험하지만 빠름)
alias clauded="claude --dangerously-skip-permissions"
# 코드 리뷰 모드
alias claude-review="claude --model opus '이 변경사항 리뷰해줘'"
# 자동화 모드 (스크립팅용)
alias claude-auto="claude --dangerously-skip-permissions --output-format stream-json"
# 이전 대화 이어서
alias claudec="claude -c"
빠른 참조 카드
가장 많이 사용하는 명령어
# 시작
claude # 대화형 시작
claude "질문" # 질문과 함께 시작
claude -c # 이전 대화 이어서
# 권한
claude --dangerously-skip-permissions # 모든 권한 스킵 (YOLO)
# 슬래시 명령어
/init # CLAUDE.md 생성
/clear # 대화 초기화
/compact # 컨텍스트 압축
/config # 설정
/help # 도움말
설정 파일 위치 요약
~/.claude/settings.json # 전역 사용자 설정
.claude/settings.json # 프로젝트 설정 (팀 공유)
.claude/settings.local.json # 프로젝트 설정 (개인)
~/.claude/CLAUDE.md # 전역 메모리
./CLAUDE.md # 프로젝트 메모리
~/.claude/commands/ # 개인 커스텀 명령어
.claude/commands/ # 프로젝트 커스텀 명령어
~/.claude/agents/ # 개인 서브에이전트
.claude/agents/ # 프로젝트 서브에이전트
~/.claude/mcp.json # 사용자 MCP 설정
.mcp.json # 프로젝트 MCP 설정
마치며
클로드 코드는 단순한 AI 챗봇이 아닙니다. 제대로 설정하면 진짜 페어 프로그래밍 파트너가 됩니다.
이 가이드에서 다룬 내용을 정리하면:
- 권한 설정으로 워크플로우 최적화 (반복적인 확인 제거)
- CLAUDE.md로 프로젝트 컨텍스트 유지
- MCP로 외부 도구 연동
- 훅으로 자동화
- 커스텀 명령어와 서브에이전트로 팀 워크플로우 표준화
처음에는 기본 설정으로 시작하고, 점차 자신의 워크플로우에 맞게 커스터마이징해 나가세요.
더 자세한 정보는 공식 문서를 참고하세요.