
어두운 방 안, 모니터의 푸른 빛이 가득한 터미널 창에는 끝없이 흘러내리는 코드 뭉치와 장황한 설명들이 가득했다. Claude Code가 내놓는 답변은 정확했지만, 매번 반복되는 친절한 서론과 불필요한 부연 설명이 화면을 가득 채우며 정작 중요한 코드 조각을 찾기 위해 스크롤을 한참 내려야 했다. 토큰 사용량 모니터의 게이지가 빠르게 차오르는 것을 보며, 이 효율적이지 못한 대화 방식이 내 API 예산을 갉아먹고 있다는 확신이 들었다.
장황한 친절함이 불러오는 토큰의 낭비
LLM을 사용하는 개발자라면 누구나 토큰(Token)이라는 단위에 민감할 수밖에 없다. 토큰은 단순히 글자 수가 아니라 AI가 텍스트를 처리하는 기본 단위이며, 이는 곧 비용이자 성능의 제약이다. 특히 Claude Code처럼 에이전트 방식으로 동작하는 도구는 스스로 계획을 세우고 파일을 읽고 쓰는 과정에서 생각보다 많은 양의 출력 토큰을 소비한다.
기본 설정 상태의 Claude Code는 매우 친절하다. 하지만 실무에서는 “이 코드를 이렇게 짰으며, 이유는 무엇이고, 앞으로 어떻게 수정하면 좋다”라는 식의 긴 설명보다는, 당장 내 파일에 적용될 정확한 코드 한 줄이 더 절실할 때가 많다. 출력 토큰의 75%가 사실상 ‘설명’과 ‘인사말’에 쓰이고 있다면, 이를 제어하는 것만으로도 작업 속도와 비용을 획기적으로 개선할 수 있다.
출력 스타일(Output Styles)로 응답 최적화하기
Claude Code에는 응답 방식을 결정하는 Output Styles라는 강력한 기능이 숨어 있다. 많은 사용자가 기본 설정으로만 사용하지만, 이 기능을 통해 AI의 페르소나를 ‘친절한 튜터’에서 ‘냉철한 시니어 엔지니어’로 바꿀 수 있다. 예를 들어 Default 모드는 효율적인 생성을 지향하지만, 여전히 어느 정도의 설명이 포함된다. 반면 Explanatory는 학습용으로 적합하며, Learning 모드는 일부러 TODO를 남겨 개발자가 직접 채우게 만든다.
진정한 토큰 절감을 위해서는 커스텀 스타일을 정의해야 한다. 시스템 프롬프트에 “설명을 완전히 배제하고 오직 코드와 최소한의 변경 사항만 출력하라”는 지침을 추가하는 방식이다. 이를 설정하면 Claude는 불필요한 수식어를 걷어내고 핵심 결과물만 내놓게 되며, 결과적으로 출력 토큰 사용량을 극적으로 줄일 수 있다.
설정 방법은 간단하다. 터미널에서 직접 명령어를 입력하거나 설정 파일을 수정하면 된다. 다음은 출력 스타일을 변경하고 확인하는 과정이다.
- 터미널에서
/output-style명령어를 입력하여 현재 사용 가능한 스타일 목록을 확인한다. - 특정 스타일을 즉시 적용하려면
/output-style default와 같이 입력한다. - 나만의 초절약 스타일을 만들고 싶다면
/output-style:new명령어를 통해 지침을 입력한다. - 설정된 내용은
~/.claude/output-styles/경로에 파일로 저장되어 언제든 수정 가능하다.
# Claude Code 설치 및 기본 설정 (Node.js 18 이상 필요)
npm install -g @anthropic-ai/claude-code
# API 키 설정
claude-code config set api-key YOUR_API_KEY
# 출력 스타일을 설명 중심에서 기본 모드로 변경하여 토큰 절약 시작
/output-style default
상태 표시줄과 모니터링으로 누수 잡기
토큰을 줄이는 것만큼 중요한 것이 현재 얼마나 쓰고 있는지를 실시간으로 파악하는 것이다. Claude Code는 5시간 단위의 롤링 윈도우 방식으로 토큰 예산을 제공하는데, 이를 모르고 사용하다 보면 업무 한가운데에서 갑자기 “세션 종료” 메시지를 마주하게 된다. 이때 유용한 것이 Statusline 설정이다.
상태 표시줄을 설정하면 현재 사용 중인 모델, 작업 디렉토리, 심지어 Git 브랜치 정보까지 터미널 하단에 고정해둘 수 있다. 특히 Claude Code Usage Monitor 같은 오픈소스 도구를 병행하면 3초마다 갱신되는 프로그레스 바를 통해 내 토큰 잔량을 시각적으로 확인할 수 있어, 무분별한 대형 리팩토링 요청으로 인한 ‘토큰 쇼크’를 방지할 수 있다.
# .claude/settings.json 파일에 상태 표시줄 스크립트 연결 예시
{
"statusLine": {
"type": "command",
"command": "~/.claude/statusline.sh",
"padding": 0
}
}
간혹 설정 과정에서 jq 라이브러리가 설치되어 있지 않아 상태 표시줄에 값이 출력되지 않는 에러가 발생하곤 한다. Statusline 스크립트는 내부적으로 JSON 데이터를 파싱하기 때문에, 반드시 시스템에 jq가 설치되어 있는지 확인해야 한다. 만약 값이 비어 보인다면 sudo apt install jq(Ubuntu 기준) 명령어로 해결할 수 있다.
더 효율적인 AI 협업을 위한 고민
단순히 토큰 숫자를 줄이는 것이 목적은 아니다. 결국 핵심은 신호 대 잡음비(Signal-to-Noise Ratio)를 높이는 것이다. AI가 내놓는 답변에서 ‘잡음’에 해당하는 장황한 설명을 걷어내고 ‘신호’인 코드와 핵심 로직만 남겼을 때, 개발자의 인지 부하가 줄어들고 작업 속도는 비약적으로 상승한다.
이번 최적화를 통해 배운 점은 AI 도구 역시 ‘설정의 예술’이라는 것이다. 기본 제공되는 기능에 만족하지 않고, 내 워크플로우에 맞게 출력 스타일을 튜닝하고 모니터링 환경을 구축하는 과정 자체가 개발 생산성 향상으로 이어진다. 이제는 단순히 “코드를 짜줘”라고 말하는 단계를 넘어, “어떤 형태로, 어느 정도의 밀도로 답변하라”고 제어하는 능력이 중요해졌다.
여러분은 AI의 친절함이 때로는 방해가 된다고 느낀 적이 없으신가? 혹은 토큰 제한 때문에 중요한 작업 도중 흐름이 끊겼던 경험은 없는가? 이제는 /output-style 명령어로 여러분만의 최적화된 엔지니어링 파트너를 만들어볼 차례다.