AI 코딩 도구를 쓰다 보면 이상하게 시간이 새는 구간 많음
그런데 폴더가 많고, 테스트 파일도 많고, 비슷한 이름의 함수가 여기저기 있으면 AI가 꽤 산만하게 움직인다. hermes에서 tui로 실행해서 logic을 보면 tool calling이 매우 많이 일어난다.
검색하고, 파일 열고, 아닌 것 같아서 다시 검색하고, 문서까지 열어보고, 그러다 한참 뒤에야 진짜 파일을 찾는다. Hermes랑 Codex를 쓰면서 이 장면을 여러 번 봤다. 그래서 쓰레드에서 본 CodeGraph를 테스트해봤다.
CodeGraph는 코드베이스를 미리 읽어서 함수, 클래스, 메서드, 호출 관계를 그래프처럼 잡아두는 도구다. 쉽게 말하면 AI에게 “프로젝트 지도”를 하나 쥐여주는 쪽에 가깝다.

수치 기준은 제 프로젝트들 레포들로 테스트해본 결과
써보니 뭐가 달랐나
처음 기대한 건 검색 속도였다.
그런데 실제로 써보니 핵심은 그게 아니었다.
단순히 키워드만 찾는 속도는 grep이 더 빠르다. 이번 테스트에서도 일반 검색은 평균 0.09초 정도였고, CodeGraph context는 평균 0.17초 정도였다.
그런데 AI 코딩에서 더 큰 문제는 검색 명령이 0.1초 빠르냐가 아니었다.
검색 결과가 너무 많이 나오고, AI가 그중에서 뭘 먼저 봐야 할지 몰라서 왔다 갔다 하는 게 문제였다.
CodeGraph를 쓰면 이 부분이 줄어든다.
일반 검색은 보통 이런 흐름이었다.
검색 → 후보 파일 여러 개 → 파일 열기 → 아닌 것 버리기 → 다시 검색CodeGraph를 먼저 쓰면 흐름이 이렇게 바뀐다.
context 확인 → 진입점 몇 개 확인 → 필요한 파일만 열기이 차이가 생각보다 컸다.
얼마나 줄었나
8개 프로젝트에 붙여서 봤다. 공개 글이라 실제 프로젝트 이름은 빼고 숫자만 남겼다.
내가 보고 싶었던 건 딱 하나였다.
AI가 처음에 뒤져야 하는 후보가 얼마나 줄어드나?
결과는 대략 이랬다.
| 항목 | 일반 검색만 쓸 때 | CodeGraph를 먼저 쓸 때 | 차이 |
|---|---|---|---|
| 처음 후보 | 보통 15개 안팎 | 진입점 3개 정도 | 약 80% 감소 |
| 초반에 읽을 코드 | 여러 파일을 열어봐야 함 | 코드 블록 4개 정도 | 약 70% 감소 |
| 툴콜 흐름 | 검색 + 파일 열기 반복 | context 한 번 + 확인 몇 번 | 대략 절반 이하 |
| 토큰 낭비 | 후보 파일을 많이 열수록 커짐 | 필요한 조각부터 봄 | 60~75% 정도 줄어드는 느낌 |
토큰 절약률은 정확한 API 사용량 로그를 계측한 값은 아니다.
그래서 숫자를 너무 세게 말하고 싶지는 않다.
다만 초반에 열어보는 파일 수가 줄어드는 건 꽤 분명했다.
일반 검색은 관련 있어 보이는 파일을 넓게 던져준다. 그 안에는 진짜 소스도 있지만 테스트, 문서, 샘플, generated 파일도 섞인다.
CodeGraph는 조금 다르게 시작한다.
“이 단어가 들어간 파일”보다는 “이 작업에서 먼저 볼 만한 함수나 클래스가 어디냐”를 잡아준다.
그래서 AI가 처음부터 엉뚱한 파일에 오래 머무는 일이 줄었다.
좋았던 경우
큰 프로젝트에서 처음 길 잡을 때 제일 좋았다.
예를 들어 api, router, data 같은 단어는 너무 흔하다.
일반 검색으로 찾으면 소스, 테스트, 설정 파일, 문서가 한꺼번에 걸린다.
그 상태에서 AI에게 “알아서 찾아봐”라고 하면 초반 툴콜이 금방 늘어난다.
이 파일 열었다가, 아닌 것 같으면 다른 파일 열고, 다시 검색하고, 또 다른 파일을 본다.
CodeGraph를 쓰면 적어도 시작점이 좁아진다.
내가 체감한 장점은 이쪽이었다.
- AI가 엉뚱한 파일을 덜 연다.
- 초반 검색/파일 열기 반복이 줄어든다.
- 큰 프로젝트에서 구조 파악이 빨라진다.
- 리팩터링이나 영향 범위 볼 때 시작점 잡기가 편하다.
별로였던 경우
작은 프로젝트에서는 굳이 필요 없었다.
파일이 10개 안팎이면 그냥 직접 여는 게 빠르다.
CodeGraph를 켜도 인덱싱은 금방 끝나지만, 얻는 게 많지는 않았다.
특히 이런 경우에는 안 써도 된다.
- 과제 스크립트 몇 개
- 파일 한 자릿수 프로젝트
- 구조가 거의 없는 단일 목적 코드
- 고칠 파일을 이미 알고 있는 작업
이런 작업에서는 CodeGraph가 도움이라기보다 한 단계를 더 거치는 느낌이었다.
결론
전역 강제는 아니더라도 프로젝트별이나 한번 테스트 해볼 가치는 충분함
Comments