Fellow us on X: https://x.com/baicai003
주의: 100% 정확하지 않음! 본 저장소는 "Agent 모델 회사가 Agent 엔지니어링을 어떻게 하는가?"를 연구 학습하던 중, 즉흥적으로 claude code를 활용하여 claude code 자체의 난독화된 코드를 분석한 것입니다. 난독화 코드가 매우 복잡하고 분산되어 있어 분석 난이도가 극히 높으며, CC에 약간의 환각이 있을 수 있습니다. 이 저장소는 참고 및 학습 목적으로만 사용하시기 바랍니다! 관련 Claude code 프롬프트는 work_doc_for_this 폴더에 있으며, 관심 있는 분들은 프롬프트를 복사하여 직접 재현해보실 수 있습니다!
오픈소스 재현 버전은 여기에 게시됩니다: https://github.com/shareAI-lab/AgentKode
관련 분석 글은 2차 검증 후 정리하여 ShareAI lab 공식 위챗 공중호에 게시되었습니다.
본 저장소는 Claude Code v1.0.33에 대한 심층 리버스 엔지니어링 분석의 완전한 연구 자료 저장소입니다. 난독화된 소스 코드의 체계적인 분석을 통해 이 현대적인 AI 프로그래밍 도우미의 핵심 아키텍처 설계, 구현 메커니즘 및 실행 로직을 밝혀냈습니다.
프로젝트는 50,000줄 이상의 난독화 코드 분석 결과를 포함하며, UI 상호작용부터 Agent 핵심 엔진까지 완전한 기술 스택을 다룹니다. 여러 차례의 반복 분석과 엄격한 검증을 통해 Claude Code의 핵심 기술 아키텍처를 성공적으로 복원했으며, 현대 AI Agent 시스템의 엔지니어링 구현을 이해하는 데 귀중한 기술 참고 자료를 제공합니다.
- 심층 이해: Claude Code의 시스템 아키텍처와 핵심 메커니즘
- 완전 복원: 난독화 코드 뒤의 기술 구현 로직
- 엄격한 검증: 분석 결과의 정확성과 일관성
- 오픈소스 재구축: 재현 가능한 기술 구현 가이드 제공
- 지식 공유: AI Agent 시스템 설계를 위한 참고 자료 제공
- 기본 아키텍처: h2A 이중 버퍼 비동기 메시지 큐 (Write/Read 버퍼로 구성)
- 핵심 특징: 제로 지연 메시지 전달, 처리량 > 10,000 메시지/초
- 구현 원리: Promise 기반 비동기 반복자 + 스마트 백프레셔 제어
- 기술적 이점: 진정한 논블로킹 비동기 처리, 실시간 스트리밍 응답 지원
- 메인 Agent: 메인 루프 엔진, 핵심 작업 스케줄링 담당 (난독화된 이름: nO)
- SubAgent: 서브 작업 에이전트, 격리된 실행 환경 제공 (난독화된 이름: I2A)
- Task Agent: 전용 작업 처리기, 동시 실행 지원
- 권한 격리: 각 Agent는 독립적인 권한 범위와 리소스 접근 제어 보유
- 압축 알고리즘: 92% 임계값 자동 컨텍스트 압축 트리거
- 메모리 최적화: 압축기, 핵심 정보 스마트 보존 (난독화된 이름: wU2)
- 영속화: CLAUDE.md 파일을 장기 메모리 저장소로 활용
- 동적 관리: 토큰 사용량에 따른 동적 컨텍스트 크기 조정
- 6단계 권한 검증: UI에서 도구 실행까지 완전한 보안 체인
- 샌드박스 격리: 도구 실행 환경 완전 격리
- 입력 검증: 다층적 악성 입력 탐지 및 필터링
- 권한 게이트웨이: 세밀한 기능 권한 제어
Claude Code Agent System Architecture
┌─────────────────────────────────────────────────────────────────────┐
│ User Interaction Layer │
│ ┌────────────────┐ ┌───────────────────┐ ┌───────────────┐ │
│ │ CLI Interface │ │ VSCode Integration│ │ Web Interface │ │
│ │ (Command Line) │ │ (Plugin) │ │ (Browser) │ │
│ └────────────────┘ └───────────────────┘ └───────────────┘ │
└────────────┬─────────────────┬─────────────────┬────────────────────┘
│ │ │
┌────────────▼─────────────────▼─────────────────▼───────────────────┐
│ Agent Core Scheduling Layer │
│ │
│ ┌─────────────────────┐ ┌───────────────────────┐ │
│ │ Main Loop Engine │◄─────────┤ h2A Async Queue │ │
│ │ (AgentLoop) │ │ (AsyncQueue) │ │
│ │ • Task Scheduling │ │ • Async Communication │ │
│ │ • State Management │ │ • Streaming Processing│ │
│ │ • Exception Handling│ │ • Backpressure Control│ │
│ └─────────────────────┘ └───────────────────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌─────────────────────────┐ ┌───────────────────────┐ │
│ │ Session Stream Generator│ │ Message Compressor │ │
│ │ (StreamGen) │ │ (Compressor) │ │
│ │ • Real-time Response │ │ • Smart Compression │ │
│ │ • Streaming Output │ │ • Context Optimization│ │
│ └─────────────────────────┘ └───────────────────────┘ │
└────────────┬──────────────────────────────┬────────────────────────┘
│ │
┌────────────▼──────────────────────────────▼────────────────────────────────────────────────────────────────────────┐
│ Tool Execution and Management Layer │
│ │
│ ┌────────────────────────┐ ┌───────────────────────┐ ┌─────────────────────────┐ ┌────────────────────┐ │
│ │ Tool Engine │ │ Scheduler │ │ Task Agent │ │ Permission Gateway │ │
│ │ (ToolEngine) │ │ (Scheduler) │ │ (TaskAgent) │ │ (PermissionGW) │ │
│ │ • Tool Discovery │ │ • Concurrent Control │ │ • Task Isolation │ │ • Permission Check │ │
│ │ • Parameter Validation │ │ • Load Balancing │ │ • Error Recovery │ │ • Security Audit │ │
│ │ • Execution Scheduling │ │ • Resource Management │ │ • State Synchronization │ │ • Access Control │ │
│ └────────────────────────┘ └───────────────────────┘ └─────────────────────────┘ └────────────────────┘ │
│ │ │ │ │ │
│ ▼ ▼ ▼ ▼ │
│ ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │
│ │ Tool Ecosystem │ │
│ │ ┌────────────────────────┐ ┌───────────────────────┐ ┌───────────────────────┐ ┌───────────────────────┐ │ │
│ │ │ File Manipulation Tool │ │ Search/Discovery Tool │ │ Task Management Tool │ │ System Execution Tool │ │ │
│ │ │ • Read/Write │ │ • Glob/Grep │ │ • Todo System │ │ • Bash Execution │ │ │
│ │ │ • Edit/Multi │ │ • Pattern Matching │ │ • State Tracking │ │ • Command Execution │ │ │
│ │ └────────────────────────┘ └───────────────────────┘ └───────────────────────┘ └───────────────────────┘ │ │
│ │ ┌──────────────────────────┐ ┌───────────────────────┐ ┌───────────────────────┐ ┌─────────────────────────┐ │ │
│ │ │ Network Interaction Tool │ │ Special Function Tool │ │ MCP Integration Tool │ │ Developer Tool │ │ │
│ │ │ • WebFetch │ │ • Plan Mode │ │ • Protocol Support │ │ • Code Diagnostics │ │ │
│ │ │ • WebSearch │ │ • Exit Plan │ │ • Service Discovery │ │ • Performance Monitoring│ │ │
│ │ └──────────────────────────┘ └───────────────────────┘ └───────────────────────┘ └─────────────────────────┘ │ │
│ └───────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ │
└────────────┬───────────────────────────────────────────────────────────────────────────────────────────────────────┘
│
┌────────────▼──────────────────────────────────────────────────────────────────────────────────────────────┐
│ Memory and Persistence Layer │
│ │
│ ┌────────────────────┐ ┌─────────────────────────┐ ┌─────────────────────────┐ ┌───────────────────────┐ │
│ │ Short-term Memory │ │ Medium-term Compression │ │ Long-term Persistence │ │ State Cache System │ │
│ │ (Messages) │ │ (Compressed) │ │ (CLAUDE.md) │ │ (StateCache) │ │
│ │ • Current Session │ │ • History Summary │ │ • User Preferences │ │ • Tool State │ │
│ │ • Context Queue │ │ • Core Information │ │ • Configuration │ │ • Execution History │ │
│ │ • Temporary Cache │ │ • Compression Algorithm │ │ • Persistence Mechanism │ │ • Performance Metrics │ │
│ └────────────────────┘ └─────────────────────────┘ └─────────────────────────┘ └───────────────────────┘ │
└───────────────────────────────────────────────────────────────────────────────────────────────────────────┘
about_claude_code/
├── claude_code_v_1.0.33/ # v1.0.33버전 완전 분석 작업공간
│ └── stage1_analysis_workspace/ # 1단계 분석 결과
│ ├── Claude_Code_Agent_TECH_DOC.md # 핵심 기술 해석 문서
│ ├── chunks/ # 코드 청크 파일 (102개)
│ │ ├── chunks.1.mjs ~ chunks.102.mjs # 난독화 해제된 코드 블록
│ │ ├── chunks.index.json # 청크 인덱스 파일
│ │ └── cli.chunks.mjs # CLI 메인 파일 청크
│ ├── analysis_results/ # 분석 결과 종합
│ │ └── merged-chunks/ # 병합 최적화된 코드 블록
│ ├── scripts/ # 분석 스크립트 도구집
│ │ ├── beautify.js # 코드 정리 스크립트
│ │ ├── split.js # 코드 분할 스크립트
│ │ ├── merge-again.js # 코드 병합 스크립트
│ │ └── llm.js # LLM 분석 인터페이스
│ ├── docs/ # 상세 기술 문서집
│ └── source/ # 원본 소스 코드 파일
├── work_doc_for_this/ # 프로젝트 작업 문서
│ ├── CLAUDE_CODE_REVERSE_SOP.md # 역공학 표준 작업 절차
│ ├── stage_1_analysis_sop.md # 1단계 분석 방법론
│ └── stage_2_reconstruction_sop.md # 2단계 재구축 방법론
├── LICENSE # 오픈소스 라이선스
└── README.md # 프로젝트 설명 문서
Real_Time_Steering_Mechanism.md- h2A 비동기 메시지 큐의 완전 구현 원리Edit_Tool_Forced_Read_Mechanism.md- Edit 도구의 파일 읽기 검증 메커니즘Hierarchical_Multi_Agent_Architecture.md- 다층 Agent 시스템의 아키텍처 설계Claude_Code_Plan_Mode_Deep_Analysis.md- Plan 모드의 트리거 및 실행 메커니즘Claude_Code_Sandbox_Mechanism.md- 샌드박스 보안 메커니즘 심층 분석Claude_Code_MCP_Deep_Analysis.md- MCP 프로토콜 통합 메커니즘 분석
FINAL_VALIDATION_REPORT.md- 최종 종합 검증 보고서 (95% 정확성)CROSS_VALIDATION_REPORT.md- 문서 간 일관성 검증Claude_Code_Core_Mechanism_Strict_Validation_Report.md- 핵심 메커니즘의 소스코드 수준 검증Claude_Code_Final_Validation_After_Update.md- 완전 인지 프레임워크 업데이트
Open-Claude-Code/- 오픈소스 재구축 프로젝트 템플릿- 완전한 TypeScript 구현 프레임워크
- 핵심 컴포넌트 인터페이스 정의
- 테스트 케이스 및 벤치마크 테스트
Demo_Repo/- 데모 구현 저장소시공단계/- 단계별 구현 가이드- 1단계: 프로젝트 초기화 및 기초 아키텍처
- 2단계: Agent 핵심 엔진 및 도구 시스템
- 3단계: 고급 기능 및 상호작용 모드
- 4단계: MCP 통합 및 확장 시스템
- 5단계: 테스트 최적화 및 릴리스 준비
Claude_Code_UI_Component_System_Deep_Analysis.md- UI 컴포넌트 시스템 분석Claude_Code_Image_Processing_and_LLM_API_Deep_Analysis.md- 이미지 처리 및 LLM API 분석Claude_Code_Hidden_Feature.md- 숨겨진 기능 발견Claude_Code_IDE_Connection_and_Interaction_Deep_Analysis.md- IDE 통합 메커니즘
# 코드 정리 및 포맷팅
node scripts/beautify.js source/cli.mjs
# 지능형 청킹 처리 (102개 블록)
node scripts/split.js cli.beautify.mjs
# 청크 인덱스 생성
node scripts/generate-index.js chunks/- 패턴 인식: GPT-4를 사용한 코드 패턴 및 아키텍처 식별
- 함수 분석: 난독화된 로직의 함수별 해석
- 의존성 매핑: 모듈 간 의존 관계 그래프 구축
- API 추적: 핵심 API의 호출 체인 추적
- 다중 반복: 정확성 확보를 위한 3차례 심층 분석
- 일관성 검사: 문서 간 기술 설명의 일관성 검증
- 소스코드 대조: 모든 기술적 주장에 대한 소스코드 위치 지원
- 함수 호출 추적: 핵심 함수의 실행 경로 기록
- 상태 변화 모니터링: 시스템 상태의 변화 과정 모니터링
- 성능 지표 수집: 메모리 사용량 및 실행 시간 데이터 수집
- 컴포넌트 상호작용 검증: 컴포넌트 간 상호작용 로직 검증
- 경계 조건 테스트: 극한 조건에서의 시스템 행동 테스트
- 오류 복구 검증: 시스템의 오류 처리 및 복구 메커니즘 검증
- nO 메인 루프 엔진:
- 비동기 Generator로 구현된 핵심 스케줄러
- 중단 및 재시작 지원 실행 제어
- 다층 예외 처리 및 오류 복구
- 메시지 처리 파이프라인:
- 실시간 메시지 큐 처리
- 메시지 우선순위 및 스케줄링 알고리즘
- 백프레셔 제어 및 플로우 관리
- 6단계 실행 파이프라인:
- 도구 발견 및 등록
- 매개변수 검증 및 타입 체크
- 권한 검증 및 보안 체크
- 리소스 할당 및 환경 준비
- 동시 실행 및 상태 모니터링
- 결과 수집 및 정리 회수
- 동시성 제어: 최대 10개 동시 실행, 지능형 로드 밸런싱
- 오류 격리: 각 도구별 독립적인 오류 처리 도메인
- 지능형 압축 알고리즘:
- 92% 임계값 자동 압축 트리거
- 핵심 정보 보존 압축 전략
- 계층적 저장 및 검색 메커니즘
- 토큰 최적화:
- 동적 컨텍스트 윈도우 조정
- 중요도 점수 및 콘텐츠 필터링
- 대화 기록의 지능형 요약
- 6층 권한 검증:
- UI 입력 검증 계층
- 메시지 라우팅 검증 계층
- 도구 호출 검증 계층
- 매개변수 내용 검증 계층
- 시스템 리소스 접근 계층
- 출력 내용 필터링 계층
- 샌드박스 격리: 완전히 격리된 도구 실행 환경
- 악성 입력 탐지: 다양한 패턴의 악성 콘텐츠 식별
- React 컴포넌트 시스템: 모듈화된 UI 컴포넌트 아키텍처
- 실시간 업데이트 메커니즘: WebSocket 기반 실시간 통신
- 이벤트 처리 시스템: 12가지 다양한 유형의 UI 이벤트 처리
| 검증 차원 | 정확성 | 커버리지 | 신뢰도 |
|---|---|---|---|
| 핵심 아키텍처 설계 | 95% | 완전 커버 | 높음 |
| 핵심 메커니즘 구현 | 98% | 완전 커버 | 매우 높음 |
| API 호출 체인 | 92% | 85% 커버 | 높음 |
| 보안 메커니즘 검증 | 90% | 주요 기능 | 중상 |
| 성능 매개변수 검증 | 88% | 핵심 지표 | 중상 |
| UI 상호작용 메커니즘 | 85% | 주요 플로우 | 중간 |
우리가 발견한 가장 중요한 기술 혁신입니다. h2A 클래스는 진정한 제로 지연 비동기 메시지 전달을 구현했습니다:
// 핵심 이중 버퍼링 메커니즘 의사코드
class h2AAsyncMessageQueue {
enqueue(message) {
// 전략1: 제로 지연 경로 - 대기 중인 리더에게 직접 전달
if (this.readResolve) {
this.readResolve({ done: false, value: message });
this.readResolve = null;
return;
}
// 전략2: 버퍼링 경로 - 순환 버퍼에 저장
this.primaryBuffer.push(message);
this.processBackpressure();
}
}중요도 점수 기반 지능형 압축으로 92%의 핵심 정보 보존:
// 압축 트리거 로직
if (tokenUsage > CONTEXT_THRESHOLD * 0.92) {
const compressedContext = await wU2Compressor.compress({
messages: currentContext,
preserveRatio: 0.3,
importanceScoring: true,
});
}- AI Agent 아키텍처 학습: 완전한 현대 AI Agent 시스템 구현 사례
- 비동기 프로그래밍 패턴: 고성능 비동기 시스템의 설계 참고
- 보안 아키텍처 설계: 다층 보안 방어의 구현 방안
- 성능 최적화 기법: 메모리 관리 및 동시성 제어의 모범 사례
- 아키텍처 패턴 차용: 계층형 아키텍처 및 컴포넌트화 설계
- 도구 시스템 설계: 플러그인화 도구 실행 프레임워크
- 상태 관리 방안: 분산 상태 동기화 메커니즘
- 오류 처리 전략: 다층 오류 복구 메커니즘
- 보안 메커니즘 감사: 다층 권한 검증의 구현 분석
- 샌드박스 기술 연구: 격리 실행 환경의 설계 원리
- 입력 검증 패턴: 악성 입력 탐지 및 필터링 기술
- 권한 제어 시스템: 세밀한 권한 관리의 구현
- 프로젝트 아키텍처 구축: 분석 결과 기반 아키텍처 설계
- 핵심 컴포넌트 구현: 핵심 컴포넌트의 오픈소스 구현 가이드
- 테스트 전략 수립: 분석 기반 테스트 케이스 설계
- 성능 최적화 지도: 성능 병목 식별 및 최적화 방안
- 정확성 개선: 분석의 오류 또는 부정확한 부분 수정
- 심층 분석: 기존 분석의 추가 심화
- 새로운 발견 보완: 새로 발견된 기술 세부사항 추가
- 문서 개선: 문서 구조 및 가독성 향상
- 코드 구현: 분석 기반 오픈소스 구현
- 모든 기술적 주장은 소스코드 위치 지원 필수
- 새로운 분석은 교차 검증 필요
- 문서 형식의 일관성 유지 필요
- 코드 구현은 테스트 검증 필수
본 저장소는 교육 및 학술 연구 목적 전용입니다. 모든 분석 작업은 공개적으로 이용 가능한 난독화 코드를 기반으로 하며, 현대 AI 시스템의 설계 패턴과 아키텍처 원리를 이해하는 것을 목표로 합니다.
중요 사항:
- 본 프로젝트는 어떠한 악의적인 역공학 활동도 포함하지 않습니다
- 모든 분석은 합법적이고 규정을 준수하는 프레임워크 내에서 수행됩니다
- 연구 결과는 학술 교류 및 기술 학습 목적으로만 사용됩니다
- 분석 결과를 상업적 경쟁 목적으로 사용하는 것은 권장되지 않습니다
본 프로젝트는 Apache License Version 2.0 라이선스로 오픈소스화됩니다 - 자세한 내용은 LICENSE 파일을 참조하세요.
최종 업데이트: 2025년 6월 29일
프로젝트 영감 출처: claude-code-reverse
유지보수 팀: ShareAI-Lab