Claude Code 소스맵 유출 — .npmignore 한 줄이 만든 사고
npm 패키지의 소스맵 누락으로 Claude Code 전체 소스코드가 유출된 경위와 KAIROS 자율 에이전트·언더커버 모드 등 드러난 미공개 기능, 보안 교훈을 정리한다.
2026-08-14 · 최초 발행 2026-04-08
2026년 3월 31일, Anthropic의 CLI 도구 Claude Code 전체 소스코드가 npm 패키지의 소스맵 파일을 통해 외부에 노출됐다. .npmignore에 *.map 파일을 제외하지 않은 단순한 실수로 512,000줄 이상의 TypeScript 코드가 공개됐으며, 미공개 기능 플래그들과 자율 에이전트 모드 KAIROS의 존재가 세상에 알려졌다. 이 사건은 AI 업계에서 가장 주목받는 보안 사고이자, 동시에 Anthropic의 기술적 방향성을 엿볼 수 있는 전례 없는 기회로 평가받고 있다.
개발 도구가 프로덕션에 실려간 경위
Claude Code 버전 2.1.88이 npm 레지스트리에 배포될 당시, 빌드 과정에서 생성된 소스맵(.map) 파일이 패키지에 포함됐다. 소스맵은 본래 번들링된 JavaScript를 원본 TypeScript 소스로 역추적하기 위한 개발 도구이며, 프로덕션 배포 시에는 반드시 제외해야 하는 파일이다.
Anthropic의 빌드 파이프라인에서 .npmignore 설정이 누락되면서 소스맵이 그대로 배포됐고, 이를 통해 512,000줄 이상의 원본 TypeScript 코드를 완전히 복원할 수 있었다. Anthropic은 해당 버전을 즉시 npm에서 철회했으나, 이미 다수의 개발자가 소스를 분석한 뒤였다.
꺼져 있지만 완성돼 있던 기능들
유출된 소스코드에서 발견된 가장 핵심적인 요소는 44개의 기능 플래그(Feature Flag)다. 이 플래그들은 컴파일 단계에서 false로 설정돼 외부 빌드에서는 완전히 비활성화되지만, 내부적으로는 완전히 구현이 끝난 기능들이다.
가장 주목받은 기능은 KAIROS로, 그리스어로 "적절한 순간"을 의미하는 이 자율 에이전트 모드는 소스코드에서 150회 이상 참조된다. KAIROS는 세션 간에 지속되는 백그라운드 에이전트로, 주기적인 틱(tick) 프롬프트를 수신하며 GitHub 웹훅 모니터링이나 알림 전송 등의 작업을 자율적으로 수행할 수 있도록 설계됐다.
KAIROS의 핵심 메커니즘 중 하나인 autoDream은 사용자가 비활성 상태일 때 "메모리 통합"을 수행한다. 분산된 관찰 결과를 병합하고, 논리적 모순을 제거하며, 모호한 인사이트를 구체적 사실로 변환해 사용자가 복귀했을 때 에이전트의 컨텍스트가 정돈되고 고도로 관련성 있는 상태를 유지하도록 한다.
직원용으로만 켜지는 스위치
유출에서 드러난 또 다른 흥미로운 기능은 언더커버 모드(Undercover Mode)다. 이 기능은 Anthropic 직원이 외부 저장소에서 Claude Code를 쓸 때 자동 활성화되며, Co-Authored-By 어트리뷰션을 제거하고 커밋에서 내부 정보 언급을 금지하며 미공개 모델에 대한 참조를 차단한다. 외부 사용자에게는 데드코드로 제거돼 아무런 영향이 없다.
내부 코드네임도 다수 발견됐다.
| 코드네임 | 대상 |
|---|---|
| Tengu | Claude Code 프로젝트 |
| Capybara | 새로운 모델 패밀리 (Mythos 추정) |
| Fennec | Opus 4.6 |
| Numbat | 미공개 모델 |
언더커버 모드의 금지 문자열 목록에서 Opus 4.7과 Sonnet 4.8에 대한 참조가 발견돼, 해당 모델들이 개발 중임이 확인됐다.
한 줄이 던진 질문
이번 사건은 AI 기업의 빌드 파이프라인 보안에 대한 근본적인 질문을 던진다. 512,000줄의 소스코드가 .npmignore 한 줄의 누락으로 유출됐다는 사실은, CI/CD 파이프라인에서의 보안 검증 단계가 얼마나 중요한지 극명하게 보여준다.
업계에서는 이 사건을 단순한 실수로 보는 시각과, Anthropic의 급성장(연간 매출 190억 달러, Claude Code ARR 25억 달러)에 따른 내부 프로세스 미성숙이 원인이라는 분석이 공존한다. 한편으로는 KAIROS를 비롯한 미공개 기능들이 공개됨으로써 Anthropic의 기술적 비전이 시장에 알려져 오히려 긍정적 홍보 효과를 냈다는 평가도 있다.
Anthropic의 Claude Code 소스맵 유출 사건은 npm 패키지 배포에서 .npmignore 설정 하나가 얼마나 치명적인 결과를 초래할 수 있는지를 보여준 사례다. 44개의 미공개 기능 플래그, KAIROS 자율 에이전트 모드, 언더커버 모드 등 Anthropic의 내부 개발 방향이 상세히 드러났으며, 이는 AI 도구 시장의 경쟁 구도에도 영향을 미칠 전망이다. 빌드 파이프라인 보안과 공급망 관리의 중요성을 재확인시킨 이 사건은 모든 소프트웨어 개발 조직에 경각심을 불러일으키고 있다.
Sources
- Claude Code's source code appears to have leaked: here's what we know - VentureBeat
- Anthropic Accidentally Exposes Claude Code Source via npm Source Map File - InfoQ
- The Claude Code Source Leak: 512,000 Lines - Layer5
- Inside Claude Code's leaked source: swarms, daemons, and 44 features - The New Stack
- Claude Code Leaked Source: BUDDY, KAIROS & Every Hidden Feature Inside - WaveSpeedAI
- The Claude Code Source Leak: fake tools, frustration regexes, undercover mode - Alex Kim