참조 문서
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 | 지원 종료 |