Claude Code 소스코드를 뜯어봤다
더 많은 글은 radarlog.kr에서. Claude Code의 소스코드가 유출됐다. TypeScript 파일 1,884개, 총 31MB. 누군가 이미 Mintlify로 깔끔한 문서 사이트를 만들어서 공개했는데, 거기에 정리된 환경변수는 30개다. 소스코드에는 195개 있다. 문서화된 슬래시 커맨드는 20개 남짓이다. 소스코드에는 80개 이상 있다. ...

Source: DEV Community
더 많은 글은 radarlog.kr에서. Claude Code의 소스코드가 유출됐다. TypeScript 파일 1,884개, 총 31MB. 누군가 이미 Mintlify로 깔끔한 문서 사이트를 만들어서 공개했는데, 거기에 정리된 환경변수는 30개다. 소스코드에는 195개 있다. 문서화된 슬래시 커맨드는 20개 남짓이다. 소스코드에는 80개 이상 있다. 문서에 없는 나머지는 뭘까. 직접 뜯어봤다. 소스코드의 전체 구조 압축을 풀면 src/ 하나에 모든 게 들어 있다. 게임 프로젝트처럼 폴더 구조가 역할별로 깔끔하게 나뉘어 있다. src/ ├── tools/ (2.8MB) — 40개의 도구 정의 ├── components/ (9.5MB) — Ink 기반 터미널 UI ├── commands/ (2.8MB) — 80+ 슬래시 커맨드 ├── services/ (1.9MB) — API, MCP, 분석, 컴팩트 ├── hooks/ (1.3MB) — React 훅 (터미널 UI용) ├── utils/ (6.7MB) — 유틸리티 모음 ├── constants/ (122KB) — 시스템 프롬프트, 상수 ├── coordinator/ (23KB) — 코디네이터 모드 ├── buddy/ (79KB) — 가상 펫 시스템 (!?) └── voice/ (6.5KB) — 음성 모드 UE5 프로젝트의 Source/ 폴더를 보는 것 같다. 모듈 간 의존성이 깔끔하고, 각 도구가 독립적으로 분리되어 있다. tools/ 안에 40개 디렉토리가 각각 하나의 도구를 담당한다. 언리얼의 모듈 시스템이랑 느낌이 비슷하다. 런타임은 Bun이다. Node가 아니다. feature() 함수로 빌드 타임에 기능을 켜고 끄는 구조가 있는데, 이게 UE5의 WITH_EDITOR 같은 컴파일 플래그랑 정확히 같은 패턴이다. const buddy = feature('BUDDY') ? require('./commands/buddy/index.js').default : null feature('BUDDY')가 빌드 타임에