46개 저장소를 하나로: 'code-graph' 지식 그래프 개발
- •료스케 츠지(Ryosuke Tsuji)는 정적 분석을 통해 46개 저장소의 의존성을 매핑하는 'code-graph'를 구축했다.
- •이 시스템은 tree-sitter, TypeScript Compiler, Gemini를 결합하여 99% 이상의 연결 정확도를 달성했다.
- •매일 실행되는 크론 작업이 API, 이벤트, DB 경계를 검증하여 AI 영향 분석 시 발생하는 환각을 방지한다.
airCloset의 CTO인 료스케 츠지(Ryosuke Tsuji)는 46개의 서로 다른 저장소 간 의존성을 관리하기 위한 'code-graph'를 개발했다. 2026년 1월부터 3월 사이에 구축된 이 도구는 AI 모델을 위한 검증된 데이터 소스로 활용된다. 이를 통해 jQuery, AngularJS, Express, NestJS, TypeORM, Redux Axios 등 다양한 프레임워크가 혼재된 운영 환경에서 코드 변경에 따른 영향 범위를 정확하게 분석할 수 있다.
이번 프로젝트는 대규모 코드베이스에 LLM을 직접 사용할 때 발생하는 컨텍스트 윈도우 제한과 교차 저장소 추론 시의 환각 문제를 해결한다. 코드를 지식 그래프로 변환함으로써 API 호출, 데이터베이스 읽기/쓰기, 이벤트 구독 등 검증된 종속성 정보를 AI에 제공한다. 료스케 츠지는 일반적인 코드 구조 분석에는 tree-sitter가 유용하지만 정확한 분석을 위한 타입 해석 능력이 부족하다고 설명했다. 이를 보완하기 위해 시스템은 변수 해석을 위한 TypeScript Compiler API와 동적 필드 접근 추론을 위해 Gemini를 통합했다.
구현 패턴이 각기 다른 레거시 서비스와 현대적 서비스 사이에서 경계 노드를 추출하는 과정이 가장 복잡한 단계였다. 현재 시스템은 CALLS_API, EMITS_TO, WRITES_TO 등 21가지 간선 유형을 통해 연결을 분류한다. 데이터 신뢰성을 유지하기 위해 연결 정확도를 99% 이상으로 관리하고 있으며, 이는 다중 홉(multi-hop) 그래프 탐색 시 정확도 저하를 막기 위함이다. 매일 JST 기준 오전 7시에 실행되는 크론 작업은 호출자와 핸들러를 조정하고 연결 오류를 탐지한다. 이 구조를 통해 AI는 추측이 아닌 검증된 노드를 바탕으로 영향 분석을 수행함으로써 운영 중 사고 가능성을 대폭 줄인다.