Claude Code 소스코드 유출 분석 (2026-03-31)
출처
기본 정보
- TypeScript (strict), Bun 런타임, React + Ink (터미널 UI)
- 약 1,900파일, 512,000+ 라인
핵심 아키텍처
User Input → CLI Parser → QueryEngine → LLM API → Tool Loop → Terminal UI
숨겨진 Feature Flags (빌드 시점에 제거됨)
PROACTIVE — 프로액티브 에이전트 모드
KAIROS — 미공개 기능
BRIDGE_MODE — IDE 연동 모드
VOICE_MODE — 음성 입력
DAEMON — 데몬 모드 (백그라운드 서버)
COORDINATOR_MODE — 멀티 에이전트 코디네이터
WORKFLOW_SCRIPTS — 워크플로우 스크립트
AGENT_TRIGGERS — 에이전트 트리거
MONITOR_TOOL — 모니터링 도구
- 일부 기능은
process.env.USER_TYPE === 'ant' (Anthropic 직원 전용)
전체 도구 목록 (~40개)
파일 시스템
- FileReadTool, FileWriteTool, FileEditTool, NotebookEditTool
- GlobTool, GrepTool (ripgrep 기반), TodoWriteTool
셸 & 실행
- BashTool, PowerShellTool (Windows), REPLTool
에이전트 & 오케스트레이션
- AgentTool (서브에이전트 스폰), SendMessageTool (에이전트 간 메시지)
- TeamCreateTool / TeamDeleteTool (팀 레벨 병렬 작업)
- EnterPlanModeTool / ExitPlanModeTool
- EnterWorktreeTool / ExitWorktreeTool (git worktree 격리)
- SleepTool (프로액티브 모드 대기)
- SyntheticOutputTool (구조화된 출력 생성)
작업 관리
- TaskCreateTool, TaskUpdateTool, TaskGetTool, TaskListTool, TaskOutputTool, TaskStopTool
웹
- WebFetchTool, WebSearchTool
MCP
- MCPTool, ListMcpResourcesTool, ReadMcpResourceTool, McpAuthTool, ToolSearchTool
통합
- LSPTool (Language Server Protocol), SkillTool
스케줄링
- ScheduleCronTool (크론 트리거), RemoteTriggerTool
유틸리티
- AskUserQuestionTool, BriefTool, ConfigTool
전체 커맨드 목록 (~85개)
Git & 버전 관리
- /commit, /commit-push-pr, /branch, /diff, /pr_comments, /rewind
코드 품질
- /review, /security-review, /advisor, /bughunter
세션 & 컨텍스트
- /compact, /context, /resume, /session, /share, /export, /summary, /clear
설정
- /config, /permissions, /theme, /output-style, /color, /keybindings, /vim
- /effort (응답 노력 레벨), /model (모델 전환), /fast, /brief
메모리 & 지식
- /memory, /add-dir, /files
MCP & 플러그인
- /mcp, /plugin, /reload-plugins, /skills
인증
- /login, /logout, /oauth-refresh
작업 & 에이전트
- /tasks, /agents, /ultraplan, /plan
진단 & 상태
- /doctor, /status, /stats, /cost, /version, /usage, /extra-usage, /rate-limit-options
설치 & 설정
- /install, /upgrade, /init, /init-verifiers, /onboarding, /terminalSetup
IDE & 데스크톱
- /bridge, /bridge-kick, /desktop, /mobile
기타
- /voice (음성 입력), /loop (반복 실행), /schedule (스케줄)
- /statusline (상태바 커스텀), /techdebt (기술 부채), /babysit (자동 모니터링)
Claude Code를 잘 사용하는 핵심 인사이트
- QueryEngine이 핵심 (46K 라인) — 스트리밍, 도구 호출 루프, thinking mode, 재시도 로직 전부 여기
- 도구는 독립 모듈 — 각 도구가 자체 스키마(Zod), 권한 모델, 실행 로직, UI 컴포넌트를 가짐
- Permission 시스템이 보안의 핵심 — 4가지 모드 (default/plan/bypass/auto)
- Skill = 프롬프트 + 도구 구성 — 재사용 가능한 워크플로우 번들
- Plugin = 확장 아키텍처 — 마켓플레이스 + 번들 플러그인
- Bridge = IDE 연동 — JWT 인증, 양방향 메시징, 권한 프록시
- Memory = CLAUDE.md 기반 — 자동 메모리 추출, 팀 메모리 동기화
- Feature Flag로 기능 게이팅 — 빌드 시점에 불필요한 코드 제거 (번들 크기 최적화)
- React + Ink로 터미널 UI — hooks, components, state management 전부 React 패턴
- Parallel Prefetch — 시작 시 MDM, Keychain, API 프리커넥트를 병렬로 실행
실전 활용 팁 (소스코드 기반)
/effort로 응답 품질 vs 비용 조절 가능
/statusline로 컨텍스트 사용량 실시간 모니터링
.claude/agents/에 에이전트 정의 → 자동으로 감지되어 사용
ToolSearchTool로 MCP 도구를 런타임에 디스커버리 (지연 로딩)
EnterWorktreeTool / ExitWorktreeTool로 git worktree 격리 작업
ScheduleCronTool로 스케줄된 작업 설정 가능
SyntheticOutputTool로 구조화된 출력 생성
Sources