참조 문서

Claude Code의 모든 명령어, 옵션, 설정 및 API에 대한 완전한 참조 문서입니다.

CLI 명령어 참조

claude

Claude Code 대화형 세션을 시작합니다.

구문

claude [options]

옵션

옵션 단축 설명 기본값
--dir -d 작업 디렉토리 지정 현재 디렉토리
--model -m 사용할 Claude 모델 claude-3-opus
--print -p 비대화형 모드로 단일 명령 실행 -
--api-key - Anthropic API 키 $ANTHROPIC_API_KEY
--debug - 디버그 모드 활성화 false
--help -h 도움말 표시 -
--version -v 버전 정보 표시 -

claude config

Claude Code 설정을 관리합니다.

하위 명령

  • claude config get <key> - 설정 값 조회
  • claude config set <key> <value> - 설정 값 변경
  • claude config list - 모든 설정 표시
  • claude config reset - 기본값으로 초기화

설정 가능한 키

model              # 기본 모델
api-key            # API 키
timeout            # 요청 타임아웃 (ms)
max-context        # 최대 컨텍스트 크기
log-level          # 로그 레벨 (debug, info, warn, error)
rate-limit-delay   # 요청 간 지연 시간 (ms)

claude usage

사용량 통계를 조회합니다.

옵션

  • --current - 현재 세션 사용량
  • --today - 오늘 사용량
  • --report <period> - 특정 기간 보고서 (daily, weekly, monthly)
  • --format <type> - 출력 형식 (text, json, csv)

도구 (Tools) 참조

Read

파일 내용을 읽습니다.

권한 필요

--allowedTools Read

사용 예시

> package.json 파일을 읽어줘
> src/index.js의 내용을 보여줘

Write

파일을 생성하거나 수정합니다.

권한 필요

--allowedTools Write

보안 고려사항

  • 기존 파일 덮어쓰기 시 경고
  • 민감한 파일 패턴 자동 차단
  • 사용자 확인 옵션 제공

Bash

시스템 명령을 실행합니다.

권한 필요

--allowedTools Bash

패턴 기반 제한

# 특정 명령만 허용
--allowedTools "Bash(npm test:*)" "Bash(git:*)"

# 위험한 명령 차단
--disallowedTools "Bash(rm:*)" "Bash(sudo:*)"

Grep

파일 내용을 검색합니다.

권한 필요

--allowedTools Grep

지원 패턴

  • 정규 표현식
  • 대소문자 구분/무시
  • 파일 패턴 필터링

WebSearch

웹에서 정보를 검색합니다.

권한 필요

--allowedTools WebSearch

제한사항

  • 미국 지역에서만 사용 가능
  • 일일 검색 횟수 제한

설정 파일 스키마

{
  "$schema": "https://claude.ai/schemas/claude-config.json",
  "version": "1.0",
  "model": "claude-3-opus | claude-3-sonnet | claude-3-haiku",
  "language": "ko | en | ja | ...",
  "tools": {
    "allowed": ["Tool" | {"name": "Tool", "patterns": ["pattern"]}],
    "disallowed": ["Tool"],
    "requireConfirmation": ["Tool"],
    "timeout": number
  },
  "files": {
    "exclude": ["glob-pattern"],
    "include": ["glob-pattern"],
    "maxFileSize": "size-string",
    "followSymlinks": boolean
  },
  "memory": {
    "contextWindow": {
      "maxTokens": number,
      "reserveForOutput": number
    },
    "conversationHistory": {
      "maxMessages": number,
      "summarizeAfter": number
    }
  },
  "security": {
    "sensitiveFiles": ["glob-pattern"],
    "redactPatterns": ["regex-pattern"],
    "autoRedact": boolean
  },
  "logging": {
    "enabled": boolean,
    "level": "debug | info | warn | error",
    "logFile": "path"
  }
}

환경 변수

변수명 설명 예시
ANTHROPIC_API_KEY Anthropic API 키 sk_ant_api03_...
CLAUDE_MODEL 기본 모델 지정 claude-3-opus
CLAUDE_CONFIG_PATH 설정 파일 경로 ~/.claude/config.json
CLAUDE_LOG_LEVEL 로그 레벨 debug
CLAUDE_MAX_CONTEXT_TOKENS 최대 컨텍스트 토큰 100000
HTTP_PROXY HTTP 프록시 http://proxy:8080
HTTPS_PROXY HTTPS 프록시 https://proxy:8080
NODE_EXTRA_CA_CERTS 추가 CA 인증서 /path/to/ca.pem

대화형 세션 명령어

명령어 설명 예시
/reset 대화 컨텍스트 초기화 /reset
/exit 세션 종료 /exit
/help 도움말 표시 /help
/status 현재 상태 표시 /status
/context 컨텍스트 사용량 표시 /context
/model 현재 모델 정보 /model

에러 코드

코드 설명 해결 방법
AUTH_001 잘못된 API 키 API 키 확인 및 재발급
RATE_001 요청 한도 초과 잠시 대기 후 재시도
CONTEXT_001 컨텍스트 크기 초과 대화 초기화 또는 파일 제외
TOOL_001 도구 권한 없음 필요한 도구 권한 추가
FILE_001 파일 접근 실패 파일 경로 및 권한 확인
NETWORK_001 네트워크 연결 실패 인터넷 연결 확인

SDK API 참조

ClaudeCode 클래스

생성자

new ClaudeCode(options: ClaudeCodeOptions)

ClaudeCodeOptions

interface ClaudeCodeOptions {
  apiKey: string;
  workingDirectory?: string;
  model?: 'claude-3-opus' | 'claude-3-sonnet' | 'claude-3-haiku';
  maxRetries?: number;
  timeout?: number;
  proxy?: string;
  debug?: boolean;
}

메서드

// 단일 요청 실행
execute(request: ExecuteRequest): Promise<ExecuteResult>

// 스트리밍 응답
stream(request: StreamRequest): Promise<Stream>

// 세션 생성
createSession(): Session

// 도구 등록
registerTool(tool: CustomTool): void

// 이벤트 리스너
on(event: string, handler: Function): void
off(event: string, handler: Function): void

Glob 패턴

파일 경로 매칭에 사용되는 glob 패턴 문법:

패턴 설명 예시 매칭
* 0개 이상의 문자 *.js → index.js, test.js
** 0개 이상의 디렉토리 src/**/*.ts → src/a/b/c.ts
? 정확히 1개 문자 ?.js → a.js, b.js
[abc] 문자 집합 [abc].js → a.js, b.js, c.js
[!abc] 부정 문자 집합 [!abc].js → d.js, e.js
{a,b} 선택 *.{js,ts} → file.js, file.ts

정규 표현식

Grep 도구에서 사용할 수 있는 정규 표현식 문법:

# 기본 패턴
console\.log     # 리터럴 매칭
console\.(log|error)  # 선택
^import          # 줄 시작
;$              # 줄 끝

# 문자 클래스
\d+             # 숫자
\w+             # 단어 문자
\s*             # 공백
[a-zA-Z]        # 알파벳

# 수량자
a*              # 0개 이상
a+              # 1개 이상
a?              # 0개 또는 1개
a{3}            # 정확히 3개
a{2,5}          # 2개에서 5개

버전 호환성

Claude Code 버전 Node.js 버전 API 버전 지원 상태
1.0.x 16.x, 18.x, 20.x 2024-01 현재 지원
0.9.x 14.x, 16.x, 18.x 2023-11 보안 업데이트만
0.8.x 14.x, 16.x 2023-09 지원 종료

문서 개선

이 문서에 대한 제안이나 수정 사항이 있다면 GitHub에서 PR을 제출해주세요.