
Anthropic 공식 블로그에 따르면 회사는 7월 16일 Claude Code 에이전트를 활용한 대규모 코드 마이그레이션 방법론을 공개했다. Anthropic은 최근 한 달 동안 사내 개발자들이 수만 줄에서 수십만 줄 규모의 코드 패키지 10개를 다른 언어로 옮겼다고 밝혔다. 이번 글은 이 가운데 Bun의 Zig-to-Rust 전환과 내부 Python 도구의 TypeScript 전환을 사례로 정리했다.
Bun 사례에서는 공동창업자 재러드 섬너가 Claude Code의 동적 워크플로를 이용해 2주가 채 안 되는 기간에 100만 줄 규모의 Rust 코드를 만들었다. Anthropic에 따르면 병합 전 기존 테스트 스위트가 모두 통과했으며, 병합 뒤 발견된 회귀 19건은 수정됐다. Rust 포트는 지난 6월 Claude Code에 포함돼 배포됐다.
Bun 공식 블로그는 전환 배경을 안정성 문제에서 찾았다. 주석을 제외한 기존 Zig 코드는 53만5496줄이었고, 가비지 컬렉션 언어인 자바스크립트 런타임과 수동 메모리 관리를 함께 다루는 과정에서 메모리 누수와 해제 후 사용 같은 결함이 반복됐다. 섬너는 11일 동안 약 50개의 동적 워크플로를 계속 실행했으며, 구현 에이전트와 별도의 적대적 검토 에이전트를 분리하는 구조를 썼다고 설명했다.
두 번째 사례는 Anthropic Labs 공동 책임자 마이크 크리거의 내부 도구 전환이다. 그는 주말 동안 Python 코드베이스를 16만5000줄의 TypeScript로 옮겼다. 수백 개 에이전트, 여덟 단계의 품질 관문, 세 차례의 적대적 검토를 거친 뒤 모든 명령의 출력을 기존 Python 버전과 비교했다. 전환 전 플랫폼별 약 8분, 전체 빌드 행렬에서 약 30분 걸리던 바이너리 생성은 약 2초로 줄었고 시작 속도는 6배 빨라졌다는 것이 Anthropic의 설명이다.
Anthropic이 제시한 절차는 여섯 단계다. 먼저 기존 코드와 새 코드를 같은 기준으로 평가할 테스트나 동작 비교 도구를 마련한다. 이어 언어별 변환 규칙과 의존성 지도, 자동 변환으로 처리하기 어려운 차이를 정리한 뒤 소수 파일로 규칙을 시험한다. 전체 변환이 시작되면 구현·검토·수정 에이전트를 분리하고, 컴파일 오류와 테스트 실패를 기계적인 작업 대기열로 바꿔 반복 처리한다. 마지막 단계에서는 원본과 새 구현의 실제 동작을 비교한다.
비용은 여전히 작지 않다. Anthropic은 Bun 전환에 캐시되지 않은 입력 토큰 59억 개와 출력 토큰 6억9000만 개가 들었으며, API 가격 기준 약 16만5000달러라고 밝혔다. Python-to-TypeScript 전환의 주요 작업에는 2700만 토큰이 사용됐다. 회사는 대형 모델을 모든 단계에 쓰기보다 규칙 작성과 검토에 집중하고, 반복적인 구현 작업에는 상대적으로 작은 모델을 배치할 것을 권했다.
이번 공개는 AI 코딩 도구의 역할이 개별 함수 작성이나 결함 수정에서 코드베이스 수준의 구조 전환으로 넓어지고 있음을 보여준다. 다만 수치와 성능 개선은 Anthropic과 Bun이 공개한 내부 사례이며 독립적인 비교 실험은 아니다. 기존 테스트의 범위, 언어 간 동작 차이, 자동 생성 코드의 유지보수성, 토큰 비용은 프로젝트마다 크게 달라질 수 있다. 특히 Bun의 새 Rust 코드 가운데 약 4%가 unsafe 블록에 있다는 점도 장기적인 품질 평가에서 함께 살펴야 한다.
Anthropic은 글과 함께 규칙집, 의존성 분석, 작업 대기열 구성에 활용할 수 있는 코드 마이그레이션 스타터 킷을 GitHub에 공개했다. 회사는 이를 두 사례에서 사용한 도구의 완전한 복제본이 아니라, 경험을 일반화한 템플릿이라고 설명했다.
출처: Anthropic Claude 공식 블로그 https://claude.com/blog/ai-code-migration
출처: Bun 공식 블로그 https://bun.com/blog/bun-in-rust
출처: Anthropic 코드 마이그레이션 킷 https://github.com/anthropics/code-migration-kit-with-claude-code