9P by remin1994 17시간전 | ★ favorite | 댓글 1개

Claude Code로 작업하다가 문득, CLAUDE.md 파일이나, 스킬, rules / memory 같은 데이터를 Claude 서버가 어떻게 인지하는거지 ? 가 궁금 해 졌습니다.

그래서 직접 MITM 프록시를 만들어서 트래픽을 볼 수 있는 툴을 만들어 보았습니다.

Claude code를 실행 할 때, baseURL 을 변경 하여, claude code 내에서 발생 하는 http 통신을 캡처하여 보여주는 원리 입니다.

이 툴을 이용 하여 알 수 있었던 사항들 입니다.

hello 한 마디에 12KB가 붙어 나간다

  • Claude code를 켜자마자, hello 를 보냈을 때의 상황입니다.
  • content[0] 스킬 목록 ~2KB, content[1] CLAUDE.md ~10KB, content[2] 실제 입력인 hello 텍스트가 보내집니다.
  • 즉, CLAUDE.md 500줄이면 매 요청마다 통째로 전송 되고 이는 CLAUDE.md를 간결하게 유지해야 하는 이유 입니다.

대화가 쌓일수록 매 요청이 눈덩이처럼 커진다

  • messages[] 전체를 매 요청마다 재전송 합니다. — 1턴 15KB, 10턴 200KB, 30턴 1MB+
  • 심지어 클로드가 답했던 것도 request message로 포함되어 들어갑니다.
  • 컨텍스트 윈도우를 주기적으로 /clear를 해주지 않는다면, 토큰 낭비와 함께 앞의 문맥이 뒤의 문맥과 항상 함께 붙어다녀 성능 저하가 올 수 있음을 알 수 있었습니다.

MCP 툴은 필요할 때만 로딩된다

  • 처음엔 빌트인 N개만 ( 클로드 버전에 따라 다릅니다 ) 로드되고, MCP tool을 활용 해야 할 경우에, 서버에서 ToolSearch를 호출하여 사용할 툴을 찾습니다.
  • 이후엔 호출마다 위에서 찾은 툴이 추가되어 호출되는 형태입니다.
  • 즉 동적으로 MCP Tool 을 로드하기 때문에, 사용하지 않았던 MCP의 툴은 실제로 큰 토큰 소비가 없음을 알 수 있었습니다.

서브에이전트는 완전히 격리된 컨텍스트로 실행된다

  • 서브에이전트는 부모 대화 이력이 전혀 없이 새로운 세션이 열리는것과 같습니다.
  • Inspector에서 부모/서브에이전트 두 호출을 나란히 눈으로 비교 하여 보실 수 있습니다.

이미지 첨부 한 장이 수백 KB를 추가한다

  • 스크린샷을 첨부하면 base64 인코딩되어 JSON 바디에 인라인 삽입 됩니다.
  • 이미지가 요청을 얼마나 키우는지 실시간으로 확인 가능 합니다.

아래의 명령어로 설치하실 수 있습니다.

brew install --cask kangraemin/tap/claude-inspector && sleep 2 && open -a "Claude Inspector"   

GitHub: https://github.com/kangraemin/claude-inspector

아직 macOS 전용이고 초기 버전이라, 개선 사항 제안주시면 적극 수용하겠습니다.

써보시고, 공부에 도움되셨으면 좋겠습니다 감사합니다 !

추가적으로, 요청 후 response 내에서 해당 request 에 쓰인 토큰 양을 볼 수 있습니다 !

모델: claude-sonnet-4-6
요청 크기: 68.9 KB

"usage": {
"input_tokens": 3,
"cache_creation_input_tokens": 12394,
"cache_read_input_tokens": 6499,
"cache_creation": {
"ephemeral_5m_input_tokens": 0,
"ephemeral_1h_input_tokens": 12394
},
"output_tokens": 74,
"service_tier": "standard",
"inference_geo": "not_available"
}

또 이를 모델별 가격을 적용하여 request 당 cost 도 계산 해 두었으니 많은 이용 부탁드려요 ㅎㅎ

캐시읽기: 6.5K tok × $0.3/MTok = $0.0019
캐시쓰기: 12.4K tok × $3.75/MTok = $0.0465
미캐시 입력: 3 tok × $3/MTok = $0.0000
출력: 74 tok × $15/MTok = $0.0011

합계: $0.0495
캐시 적중률: 34%