Anthropic이 Git을 대체할 소스 제어 시스템 'Scion' 개발·공개
원제 Redesigning Source Control at Anthropic
103 포인트댓글 71
Key Point
에이전트 기반 소프트웨어 개발이 기존 개발 인프라의 한계를 드러내는 현상을 보여주는 사례이며, 다른 조직도 수개월 내 유사한 병목을 마주할 가능성이 있어 Git 및 CI/CD 설계 방식을 재검토할 시점을 제시한다.
핵심 요약
- Anthropic은 5월 2,500건에서 9월 30,000건으로 일일 코드 병합이 증가하자, Git의 병목을 해결하기 위해 자체 소스 제어 시스템 'Scion'을 5개월 만에 구축·마이그레이션했다.
- Git은 완전한 오프라인 저장소 설계로 기존에는 우수하지만, Anthropic의 모노레포는 메인 브랜치 히스토리만 100GB, 압축 복사본 25GB 이상이며 일일 2,500만 체크아웃으로 기존 방식(600PB/일 트래픽)이 불가능했다.
- Scion은 에이전트(AI)가 항상 온라인이라는 가정에서 출발해, 클라이언트가 완전한 저장소 복사본을 유지하지 않고 서버에서 필요한 데이터를 요청하는 클라이언트-서버 비대칭 구조를 채택했다.
- 변경사항은 '체인지셋'이라는 쓰기 전개 로그 항목으로 저장되며, 파일 변경 목록과 콘텐츠 포인터만 기록해 높은 처리량을 지원하고, 파일 책임·경로 이력 같은 '파생 데이터'는 체인지셋으로부터 동적으로 계산된다.
- 리전별 캐시 계층(scion-daemon → scion-cache → scion-server)으로 구성되며 각 층이 99% 이상의 캐시 적중률을 유지하므로 인프라 규모가 이전 Git 미러 방식 대비 200배 감소했고, CI·연구 작업의 코드 체크아웃 속도는 분 단위에서 초 단위로 개선됐다.
- API를 통해 소스 제어 쿼리를 직접 노출해, 많은 작업이 로컬 저장소 없이 누가 마지막으로 줄을 편집했는지 또는 커밋 간 관계를 서버에 질의할 수 있다.
- 7명의 팀이 Scion과 코드 리뷰 도구 'Antique' 등 여러 시스템을 개발하면서 일일 병합량이 10배 증가한 상황에서 5개월 만에 완료했으며, 이는 Claude의 코드 작성 능력과 엔지니어의 고수준 설계 검토가 결합된 결과다.
- Claude는 초기 인제스션 파이프라인을 메모리 20배 절감, 속도 4배 향상으로 개선하고, 알고리즘 최적화(인덱스 누락 항목 발견), 허밀(hermetic) 시뮬레이션, 퍼징 같은 품질 검증을 자동으로 수행했다.
- Scion은 디렉토리 수준의 세밀한 접근 제어와 의미적 승인 제약을 지원해 대규모 모노레포의 보안과 규정 준수를 강화했으며, 'superfan'이라 부르는 Claude 모니터링 에이전트는 텔레메트리에서 인간 엔지니어가 놓칠 미묘한 문제까지 감지한다.
- Scion은 에이전트 규모 소프트웨어에서 전역 병합 큐의 락(lock)을 효과적으로 구현하기 어렵다는 점을 드러냈으며, 대신 병합 후·배포 전 자동화 테스트에 투자해 동시 변경 충돌을 Claude가 빠르게 해결하도록 설계했다.
- Scion은 Git의 일반적 대체재가 아니며, 수만 명 엔지니어 또는 에이전트 무리를 지원하는 극대규모 모노레포에만 적합하고, Anthropic의 토큰 비용과 맞춤형 코드 리뷰·검색 시스템이 전제되므로 다른 조직이 직접 도입하기 어렵다.
- 대신 Anthropic은 Git 서버 아키텍처 개선, 포지(forge)의 표준화된 서버 RPC 제공, 협상(negotiation) 프로토콜 개선 등으로 Git 자체를 강화하되, GitHub·GitLab과 협력해 에이전트 기반 개발 워크플로를 지원할 계획이다.