Jungseob's Note
포스트
짙은 녹색 배경 위에 흰색과 청록색의 얇은 컨텍스트 층이 겹쳐진 Cursor 원문 대표 이미지

Cursor가 토큰 비용을 7% 줄인 방법, 반복 컨텍스트부터 덜어내기

Cursor가 시스템 프롬프트, 도구 로딩, 캐시 경계, 파일 줄 번호와 하위 에이전트 정책을 조정해 토큰 비용을 줄인 방법과 각 절감률의 측정 범위를 정리한다.

Cursor가 토큰 비용을 7% 줄인 방법, 반복 컨텍스트부터 덜어내기

TL;DR

  • Cursor는 에이전트 하네스를 정비해 품질 저하 없이 사용자 토큰 비용을 7% 줄였다고 발표했다. 시스템 프롬프트를 약 66% 덜어낸 작업도 여기에 포함된다. 프롬프트 축소율과 전체 비용 절감률은 서로 다른 지표다.
  • 도구를 사용할 수 있게 두는 것과 매번 정의를 보내는 것은 별개다. 드물게 쓰는 내장 도구를 필요할 때 로드하면서 정적 컨텍스트의 도구 설명 토큰을 60% 줄였다. 사용 빈도 외에 호출 오류와 제품 흐름도 상시 로딩 여부를 결정했다.
  • 캐시 경계를 지정하는 것만으로는 재사용을 보장하지 못한다. 자주 바뀌는 설정을 안정적인 도구·시스템 지침 뒤로 옮기는 작업을 함께 수행했다. 이 변경들의 결과로 콜드 캐시 미스 비율이 20% 감소했다.
  • 파일 내용에 붙는 줄 번호도 긴 실행에서는 비용이 된다. 매 줄 대신 열 줄마다 번호를 표시하자 코드 인용 품질을 유지하면서 캐시 읽기 토큰이 1.6% 줄었다. 줄 번호 자체를 없애거나 파일 내용을 요약한 변경은 아니다.
  • 하위 에이전트는 작업 컨텍스트를 분리하지만 조율 비용도 만든다. Cursor는 탐색 작업의 위임을 강하게 권하던 지침을 없애고 다른 모델 선택도 사용자나 하네스의 지시가 있을 때로 제한했다. 많이 위임하는 것과 효율적으로 위임하는 것은 다르다.

매 턴 다시 보내는 지침부터 줄인다

Cursor가 발표한 전체 토큰 비용 절감률은 7%다. 에이전트가 더 오래 일하면 새로 생성한 답변뿐 아니라 이전 대화와 도구 정의, 시스템 지침을 다음 요청에 다시 싣는 비용도 쌓인다. 하네스는 이 요청을 구성하고 컨텍스트의 재사용과 작업 위임을 제어하는 계층이다. Cursor는 자신이 직접 바꿀 수 있는 이 부분을 조정했으며 에이전트 품질은 유지됐다고 평가했다.

초기 모델을 위해 작성했던 상세한 작업 지침은 모델이 발전하면서 일부 불필요해졌다. 도구의 동작을 명확히 정의하면 따로 금지나 의무 사항을 길게 나열하지 않아도 여러 모델 계열에서 충분히 잘 따랐다. Cursor는 이렇게 시스템 프롬프트의 약 66%를 덜어냈다. 모든 지침을 영구히 없애는 정책은 아니며 새로운 모델의 필요에 맞춰 안내를 추가하거나 제거하는 작업은 계속된다.

줄여도 되는지 판단하는 기준은 실제 사용자 트래픽의 A/B 테스트였다. eval은 변경을 빠르게 점검하는 대리 지표지만 어려운 문제에 치우쳐 일상적인 요청 분포와 다를 수 있다. 벤치마크에서 잘 작동하는 하네스가 실제 사용 환경에서도 가장 효율적이라는 보장은 없다. 프롬프트의 길이와 함께 사용자 요청에서 유지되는 행동을 확인해야 하는 이유다.

도구의 존재와 전체 정의를 분리한다

백그라운드 셸 모니터링과 클라우드 하위 에이전트 등 기능이 늘면서 도구 정의도 커졌다. 새로 추가된 도구들은 중요하지만 각각이 필요한 대화는 전체의 20% 미만이었다. 이런 도구의 전체 명세를 매 요청에 넣으면 쓰지 않는 기능에도 반복적으로 토큰을 지출한다. Cursor는 호출 가능성을 유지하면서 실제로 필요해질 때 정의를 로드하도록 바꿨다.

앞서 같은 방식을 MCP에 적용했을 때는 MCP 도구를 호출한 세션들의 전체 토큰이 46.9% 감소했다. 이번에는 내장 도구에도 적용했고 원문 그래프 제목에 명시된 정적 컨텍스트의 도구 설명 토큰 감소율은 60%다. 앞의 수치는 특정 세션 집합의 전체 토큰이고 뒤의 수치는 도구 설명에 한정된다. 전체 사용자 비용의 7% 절감과 합산하거나 같은 성과로 바꿔 읽을 수는 없다.

상시 제공할 도구는 호출 빈도만으로 고르지 않았다. 읽기·검색·편집·셸처럼 자주 쓰는 기능 외에 일부 모델이 호출을 환각하던 ask_question도 남겼다. 플랜 모드의 create_plan은 제품 흐름에 필수적이어서 유지했다. 여러 구성을 A/B 테스트하며 토큰 사용량과 비용, 지연 시간, 도구 호출 오류, 전반적인 에이전트 사용량을 함께 살펴 절감이 사용성 저하로 이어지지 않는지 확인했다.

캐시할 앞부분을 실제로 안정되게 만든다

프롬프트 캐싱은 다음 요청에서도 바뀌지 않은 앞부분을 재사용한다. 뒤에 대화가 늘어나더라도 앞의 도구와 시스템 지침이 같으면 재사용할 여지가 있다. Cursor의 설명에 따르면 GPT-5.6부터 지원되는 명시적 캐시 중단점을 활용해 이 안정적인 계층의 끝을 표시했다. 원문의 도식은 도구·시스템 지침 뒤와 설정 뒤에 경계를 두며 최신 메시지를 기준으로 한 암묵적 캐싱도 함께 유지한다.

중단점 앞의 내용이 계속 바뀐다면 표시만 추가해도 캐시의 이점은 작다. Cursor는 자주 변하지 않는 내용을 도구와 시스템 지침에 남기고 스킬·하위 에이전트·환경 정보 같은 가변 설정은 그 뒤의 phantom user message로 옮겼다. 이는 하네스가 구성하는 사용자·요청별 컨텍스트 영역을 가리킨다. 안정적인 앞부분과 변화가 많은 설정을 분리한 변경들을 합쳐 콜드 캐시 미스 비율이 20% 감소했으며 캐시 지원 방식은 제공업체마다 다르다.

읽은 파일의 본문 밖에서도 토큰이 쌓인다

Read 도구의 줄 번호는 모델이 사용자에게 코드 위치를 정확히 알려 주도록 돕는다. 모델이 스스로 줄을 세는 데 능숙하지 않기 때문에 단순한 화면 장식으로만 볼 수 없다. 다만 번호 하나에도 약 3~5토큰이 들고 한 세션에서 수만 줄을 읽으면 이 작은 부가 정보가 누적된다. 파일 내용과 별개로 반복해서 덧붙이는 형식도 최적화 대상이다.

Cursor는 모든 줄에 번호를 붙이던 방식을 열 줄마다 한 번 표시하는 방식으로 바꿨다. 이 간격에서도 코드 인용 품질은 유지됐고 캐시 읽기 토큰은 1.6% 줄었다. 내용 자체를 삭제하지 않고 위치를 찾는 데 필요한 표식의 밀도를 낮춘 셈이다. 이 수치의 분모는 캐시 읽기 토큰이며 전체 입력 토큰이나 사용자 청구액의 감소율을 뜻하지 않는다.

위임으로 아낀 컨텍스트와 조율 비용을 함께 본다

하위 에이전트는 대개 상위 에이전트의 긴 대화 전체를 물려받지 않고 새로운 컨텍스트에서 시작한다. 탐색이나 구현을 끝내고 결과를 돌려주면 상위 에이전트는 세부 작업 기록을 모두 안고 갈 필요가 없다. 그러나 서로 컨텍스트를 공유하지 않으면 같은 일을 반복하거나 이미 불필요해진 작업을 계속할 수도 있다. 컨텍스트 격리의 이익을 판단할 때는 이런 조율 비용도 함께 고려해야 한다.

Cursor는 코드베이스 탐색에 하위 에이전트를 쓰라고 강하게 권하던 지침을 제거했다. 학습 데이터와 후속 학습에서 위임 패턴을 익힌 모델에는 추가 권장이 과도한 사용을 유도할 수 있었고 지침을 덜어내자 사용이 더 균형 잡혔다. 서로 다른 모델을 조합하는 기능은 유지하되 다른 모델을 고르는 경우를 사용자나 하네스가 지시했을 때로 한정했다. 비싼 계획용 모델과 저렴한 구현용 모델을 짝짓는 가능성을 없앤 것이 아니라 선택 조건을 좁힌 변경이다.

이 글의 절감률은 Cursor가 서로 다른 대상과 지표에서 측정한 결과다. 모든 항목을 더해 새로운 절감률을 만들거나 다른 하네스에도 그대로 적용된다고 단정할 근거는 없다. Cursor는 긴 실행에서 쌓이는 컨텍스트를 계속 측정하고 이 경험을 Grok Bot의 하네스에도 적용하고 있다. 처리하는 작업량보다 토큰 사용량이 더 완만하게 증가하도록 만드는 것이 후속 최적화의 방향이다.

참고 자료

Cursor — 장시간 에이전트 실행을 위한 토큰 효율성 개선

Cursor — Improved token efficiency for longer agent runs — 한국어판과 영어판 전체를 대조하고 캐시 경계 도식을 확인했다. 절감률과 품질 유지 평가는 Cursor의 발표를 기준으로 하며 별도 재현 실험은 수행하지 않았다.

원문 출처는 본문의 Source에서 확인할 수 있습니다.