
스포티파이(Spotify)가 클로드 코드(Claude Code)에서 토큰을 대량으로 쓰는 단순 작업을 다른 AI 모델에 맡겨 토큰 소비를 크게 줄이는 방법을 공개했다. 스포티파이 소속 디미트리 마즈마노프(Dimitri Mazmanov)는 이 방법을 검증한 결과 대량 파일 읽기를 위임한 테스트에서 클로드 쪽 토큰 소비를 평균 90% 줄일 수 있었다고 밝혔다.
AI 코딩 에이전트는 메서드 하나를 답하려고 파일 5개를 읽거나 기존 테스트 20개와 같은 형식으로 새 테스트를 쓰는 처리에서 토큰을 많이 쓴다. 마즈마노프는 이런 작업 상당수가 고도 추론이 아니라 단순 입출력이며 전부를 성능 높은 모델에 맡길 필요는 없다고 봤다.
그가 활용한 건 스포티파이 개발자용 플랫폼인 포털 바이 스포티파이(Portal by Spotify)에 들어 있는 아이카 모드(AiKA Modes)다. 아이카 모드에서는 AI에 줄 지시와 사용할 모델, 템퍼러처(temperature) 같은 파라미터와 쓸 수 있는 MCP 도구를 선언형으로 설정할 수 있고 설정한 내용을 에이전트 하나로 묶어 포털 CLI나 API에서 호출할 수 있다. 실행 환경은 일시적으로 만들어지기 때문에 상시 가동하는 에이전트용 서버를 따로 둘 필요도 없다.
마즈마노프는 이 구조를 써서 벌크리더(bulk-reader)와 코드라이터(code-writer) 모드 2개를 만들었다. 두 모드 모두 클로드보다 가벼운 작업용 모델로 제미나이 2.5 플래시(Gemini 2.5 Flash)를 지정했다. 다만 제미나이 2.5 플래시여야 하는 건 아니며 포털에 설정된 다른 모델로 바꿀 수도 있다.
벌크리더는 클로드를 대신해 큰 파일을 읽는 역할을 맡는다. 클로드 코드가 큰 소스 파일 여러 개를 살펴야 할 때 파일 자체를 클로드 컨텍스트에 넣지 않고 벌크리더에 파일과 질문을 넘기는 식이다. 벌크리더는 파일을 읽고 질문에 답하는 데 필요한 정보만 짧게 정리해 클로드에 돌려준다. 수천 줄짜리 소스 코드 대신 거기서 뽑아낸 짧은 요약만 클로드가 읽게 해 클로드 쪽 입력 토큰을 줄이는 구조다.
코드라이터는 반대로 대량 코드를 출력하는 작업을 클로드에서 떼어내는 장치다. 테스트 코드나 설정 파일 틀, 타입 정의처럼 기존 코드 패턴을 따라 하면 만들 수 있는 건 클로드가 사양과 참고 파일을 작업용 모델에 넘겨 생성하게 한다. 작업용 모델이 만든 코드는 파일에 직접 쓸 수도 있어 이 경우 클로드가 생성된 코드를 받을 필요조차 없다. 참고 파일 지정을 필수로 둔 점도 눈여겨볼 만하다. 작업용 모델이 프로젝트와 무관한 범용 코드를 내놓지 않고 기존 코드 명명 규칙과 작성 방식에 맞춘 코드를 만들도록 한 것이다.
다만 클로드에 쉬운 일은 다른 모델에 맡기라고 지시하는 것만으로는 이 구조가 안정적으로 돌아가지 않았다. 마즈마노프는 처음에 프로젝트마다 CLAUDE.md에 배분 규칙을 적었다. 하지만 CLAUDE.md에 적은 내용은 어디까지나 지시에 그쳐 클로드가 따르지 않는 경우가 있었고 프로젝트마다 같은 규칙을 마련해야 하는 번거로움도 있었다고 한다. 그래서 션트(shunt)라는 클로드 코드 플러그인으로 배분을 강제하는 방법을 택했다.
션트는 클로드 코드 PreToolUse 훅을 이용해 클로드가 도구를 실행하기 직전에 처리 내용을 점검한다. 클로드가 리드(Read) 도구로 파일을 열려고 하면 션트는 기본값으로 350줄이 넘는 파일 읽기를 막고 벌크리더를 쓰라고 클로드에 지시한다. 리눅스나 맥OS에서 파일 내용을 볼 때 쓰는 cat과 head, tail, less, more 같은 명령으로 큰 파일을 읽는 조작도 같은 방식으로 잡아낸다. 반면 클로드가 읽어야 할 대목을 이미 파악하고 그 부분만 지정해 읽는 경우나 cat file | grep처럼 내용을 추려 읽는 경우는 그대로 허용한다.
마즈마노프 방식이 노린 지점은 클로드에 읽혀야 할 정보와 읽히지 않아도 되는 정보를 기계적으로 갈라놓은 데 있다. 훅이 불필요하게 큰 파일 읽기를 막고 클로드 코드 스킬이 작업용 모델 호출 방법을 클로드에 알려주며 셸 스크립트가 포털 CLI를 통해 작업용 모델을 실제로 호출하는 역할 분담이다. 클로드가 스킬을 제대로 참조하지 못해도 훅 자체가 큰 파일 읽기를 막기 때문에 단순 프롬프트 지시보다 확실하게 토큰 소비를 억제할 수 있다.
작업용 모델에 넘긴 대량 소스 코드는 클로드 컨텍스트에 들어가지 않는다. 벌크리더 호출은 매번 독립적이어서 서버 쪽에서 대화 상태를 유지하지 않는 만큼 같은 파일을 다시 보내야 하는 상황이 생기기도 하지만 그 많은 토큰을 처리하는 쪽은 작업용 모델이다. 클로드가 받는 건 답변뿐이라 클로드 컨텍스트를 소스 코드로 가득 채우지 않아도 된다.
마즈마노프는 자바(Java) 모노레포를 대상으로 시나리오 4가지에서 클로드가 파일을 직접 읽는 경우와 벌크리더 요약을 읽는 경우를 비교했다. 그 결과 벌크리더를 쓴 쪽은 클로드 토큰 소비를 평균 90% 줄일 수 있었다.
코드라이터는 평소라면 클로드가 참고 파일을 읽는 입력 토큰과 코드를 쓰는 출력 토큰이 모두 발생하는 데 비해 위임해 파일에 직접 쓰는 경우에는 생성된 코드가 클로드를 전혀 거치지 않아 단순 토큰 수 비교가 어렵다는 게 그의 설명이다.
물론 무엇이든 다른 모델에 맡기면 되는 건 아니다. 마즈마노프 검증에서 가벼운 작업용 모델은 표면적인 코드 패턴은 찾아냈지만 스레드 안전성에 얽힌 문제를 놓친 사례도 있었다. 이 때문에 디버깅이나 아키텍처 판단, 안전성이 중요한 코드 작성처럼 고도 추론이 필요한 작업은 클로드에 맡기는 방침을 세웠다. 또 다른 모델 호출에는 보통 10~30초가 걸리는 만큼 작은 파일에서는 위임하지 않도록 기준값을 뒀다.
스포티파이가 클로드 사용 자체를 줄이려는 건 아니다. 스포티파이는 별도로 대규모 코드 변경 기반인 플릿 매니지먼트(Fleet Management)에 클로드 에이전트 SDK(Claude Agent SDK)를 통합해 여러 저장소에 걸친 코드 이전에도 클로드를 쓰고 있다. 앤스로픽(Anthropic)에 따르면 스포티파이 백그라운드 코딩 에이전트는 매달 풀 리퀘스트를 650건 넘게 생성하며 복잡한 코드 이전에 드는 엔지니어 작업 시간을 최대 90% 단축했다. 관련 내용은 이곳에서 확인할 수 있다.
![[DailyRecipe] 막 오른 넥스트라이즈2026…올해 특징은?](https://i0.wp.com/startuprecipe.co.kr/wp-content/uploads/2026/06/260618_nextrise_ai_0023052050235235.jpg?resize=350%2C250&ssl=1)
![[AI서머리] 2026 아트 쇼케이스 9월 23일 개막‧배민스타트업스퀘어 하반기 입주기업 모집](https://i0.wp.com/startuprecipe.co.kr/wp-content/uploads/2026/09/260918_Busan-Center-for-Creative-EconomyInnovation-_050050325_slimpic.webp?resize=75%2C75&ssl=1)
![[초기 채용의 함정] “일단 사람부터 뽑자”가 런웨이를 갉아먹는 이유](https://i0.wp.com/startuprecipe.co.kr/wp-content/uploads/2026/09/260915_flexworkpro.io_0000002_slimpic.webp?resize=350%2C250&ssl=1)
