클로드 코드 아키텍처 분석: 유출된 소스 맵에서

기술 스택과 아키텍처
2026년 3월 31일에 npm에 게시된 Claude Code 패키지에는 전체 TypeScript 소스 코드를 드러내는 .map 파일이 포함되어 있었습니다. 이 코드베이스는 약 1,900개의 파일과 512,000줄 이상의 TypeScript 코드로 구성되어 있습니다.
핵심 기술
- 런타임: Bun
- 언어: TypeScript (엄격 모드)
- 터미널 UI: React + Ink (CLI용 React)
- CLI 파싱: Commander.js와 추가 타이핑
- 스키마 검증: Zod v4
- 코드 검색: GrepTool을 통한 ripgrep
- 프로토콜: MCP SDK, LSP (vscode-jsonrpc)
- API: Anthropic SDK
- 원격 측정: OpenTelemetry + gRPC (지연 로딩, ~400KB + 700KB)
- 기능 플래그: GrowthBook
- 인증: OAuth 2.0, JWT, macOS 키체인
- 상태 관리: Zustand (React 기반 저장소)
디렉토리 구조 하이라이트
src/ 디렉토리에는 다음이 포함됩니다:
main.tsx- Commander.js CLI와 React/Ink 렌더링이 포함된 진입점commands.ts- 100개 이상의 명령어가 등록된 명령어 레지스트리tools.ts- 38개 이상의 도구가 등록된 도구 레지스트리Tool.ts- 도구 유형 정의QueryEngine.ts- LLM 쿼리 엔진 (~46K 줄)query.ts- 메인 쿼리 루프 (~1,729 줄)context.ts- 시스템/사용자 컨텍스트 수집cost-tracker.ts- 토큰 비용 추적commands/- 슬래시 명령어 구현 (100개 이상)tools/- 도구 구현 (38개 이상)components/- Ink UI 컴포넌트 (~140개)hooks/- React Hooks 및 권한 훅services/- API, MCP, LSP, 컨텍스트 압축, 메모리 추출, 분석을 포함한 외부 서비스 통합constants/- 시스템 프롬프트 및 상수bridge/- IDE 통합 브리지coordinator/- 다중 에이전트 코디네이터plugins/- 플러그인 시스템skills/- 스킬 시스템memdir/- 지속적 메모리 시스템tasks/- 작업 관리 시스템state/- 상태 관리remote/- 원격 세션server/- 서버 모드vim/- 완전한 상태 머신이 포함된 Vim 모드voice/- 음성 입력keybindings/- 키 바인딩 시스템screens/- 전체 화면 UI (Doctor, REPL, Resume)schemas/- Zod 구성 스키마migrations/- 구성 마이그레이션query/- 쿼리 파이프라인 하위 모듈outputStyles/- 출력 스타일buddy/- 동반 스프라이트 (이스터 에그)
핵심 데이터 흐름
시스템은 다음과 같은 데이터 흐름 패턴을 따릅니다:
- 사용자 입력 (터미널 / IDE / 원격)
main.tsx→ Commander.js 파싱REPL.tsx(메인 상호작용 루프)QueryEngine.submitMessage()← 세션 수명 주기- 메시지 준비 단계에는 다음이 포함됩니다:
applyToolResultBudget()- 결과 크기 제한snipCompact()- 스니펫 압축microCompact()- 마이크로 압축contextCollapse()- 컨텍스트 축소autoCompact()- 자동 압축
이 분석은 생산 AI 코딩 에이전트가 컨텍스트, 도구, 다중 에이전트 조정을 어떻게 관리하는지에 대한 통찰력을 제공하는 유출된 소스 코드를 기반으로 합니다.
📖 전체 소스 읽기: r/ClaudeAI
👀 See Also

클로드 코드 루틴: 추론 기능으로 Cron처럼 에이전트 작업 스케줄링하기
Claude Code Routines를 사용하면 세션을 열어두지 않고도 일정에 따라 에이전트 작업을 실행할 수 있습니다. 한 Reddit 사용자가 실제 예시를 공유합니다: 야간 커밋 검토, 주간 의존성 확인, 일일 오류 로그 분석 — 원시 스크립트 출력 대신 AI 추론을 활용합니다.

Zerostack 1.0.0: 순수 Rust로 구현된 유닉스 스타일 코딩 에이전트
Zerostack은 순수 Rust로 작성된 코딩 에이전트로, 유닉스 철학(작고 조합 가능한 도구들이 stdin/stdout으로 파이프 연결됨)을 모델로 했습니다.

Semble: 클로드 코드용 로컬 MCP 서버, 토큰 98% 절감
Semble는 Claude Code를 위한 오픈소스 MCP 서버로, grep+read 워크플로우를 대체합니다. 임베딩, BM25, 재순위화를 사용하여 리포지토리를 약 250ms에 인덱싱하면서 토큰 사용량을 약 98% 줄입니다.

무료 Claude 세션 최적화 도구: 토큰 예측기, 프롬프트 압축기, 세션 플래너
한 개발자가 Claude의 사용 한계를 관리하는 데 도움이 되는 무료, 가입 불필요 도구를 세 가지 기능과 함께 구축했습니다: 프롬프트 소비량을 미리 확인할 수 있는 토큰 추정기, 필러 문구를 제거하여 프롬프트를 40-60% 줄이는 프롬프트 압축기, 컨텍스트 재로딩을 최소화하기 위해 작업을 그룹화하는 세션 플래너입니다.