HERMES.md가 커밋 메시지에 들어가면 추가 사용량 과금으로 라우팅됨

1 week ago 8
  • 최근 git 커밋 메시지에 HERMES.md 문자열이 들어가면 Claude Code 요청이 Max 플랜 쿼터 대신 extra usage 과금 경로로 보내짐
  • 이 트리거는 디스크의 파일 존재와 무관하고 커밋 메시지 내용 자체에서 발생하며, add HERMES.md는 실패하지만 add hermes.md는 정상 처리됨
  • 재현 테스트에서는 claude-opus-4-6[1m]와 claude-opus-4-7 에서 API Error: 400 "You're out of extra usage..."가 확인됐고, HERMES, HERMES.txt, README.md 등은 같은 현상을 만들지 않음
  • 영향을 받은 환경에서는 주간 플랜 용량이 남아 있는데도 $200.98 extra usage 크레딧이 소진됐고, extra usage가 바닥난 뒤에는 여러 프로젝트가 사용 불가 상태가 됨
  • 원인은 과도하게 동작한 anti-abuse system으로 확인돼 이미 수정됐고, 이후 이슈는 completed로 닫히면서 환불과 추가 usage credits 지급 공지도 이어짐

문제 개요

  • 최근 git 커밋 기록에 HERMES.md 문자열이 들어가면 Claude Code 요청이 Max 플랜 쿼터 대신 extra usage 과금 경로로 라우팅됨
  • 디스크에 HERMES.md 파일이 있는지와는 무관하고, git commit message 내용 자체가 트리거로 작동함
  • Claude Code가 최근 커밋을 system prompt에 포함하는 상태에서, 이 문자열이 있을 때 서버 측 라우팅이 달라지는 것으로 좁혀짐
  • 포함된 Max 20x 플랜 주간 사용량이 13% 수준으로 쓰인 상태인데도 extra usage 크레딧 $200.98이 소진됐고, extra usage가 고갈된 뒤에는 여러 프로젝트를 완전히 사용할 수 없게 됨
  • 같은 시점에 플랜 대시보드에는 주간 용량이 86% 이상 남아 있음으로 표시돼, 실제 과금 경로와 표시 상태가 어긋남

재현 조건과 판별 결과

  • 재현 환경은 Claude Code v2.1.119, macOS Apple Silicon, Max 20x plan $200/month, 모델 claude-opus-4-6[1m]이며 claude-opus-4-7에서도 재현됨
  • 최소 재현 절차에서는 git commit -m "add HERMES.md" 뒤 claude -p "say hello" --model "claude-opus-4-6[1m]" 실행 시 API Error: 400 "You're out of extra usage..."가 반환됨
  • 같은 절차에서 커밋 메시지를 add hermes.md로 바꾸면 플랜 쿼터 경로로 처리되며 "Hello!"가 반환됨
  • 재현 스크립트는 /tmp/test-fail, /tmp/test-pass 디렉터리를 만든 뒤 git init, 파일 추가, 커밋, claude -p 실행, 마지막에 rm -rf로 정리하는 흐름으로 제시됨
  • 트리거 판별 결과는 "HERMES.md"와 "test HERMES.md test"에서 실패하고, "hermes.md", "HERMES", "HERMES.txt", "AGENTS.md", "README.md"는 정상 동작함
  • 디스크에 HERMES.md 파일이 있어도 커밋 메시지가 깨끗하면 정상 동작하고, 같은 저장소라도 orphan branch로 히스토리가 없으면 정상 동작함

원인 추적과 기대 동작

  • 원인 추적은 영향을 받은 저장소 복제, orphan branch 테스트, 개별 커밋 메시지 문자열을 하나씩 분리하는 systematic binary search 순서로 진행돼 최종적으로 HERMES.md가 정확한 트리거로 좁혀짐
  • API 요청 과금이 system prompt 안의 git commit message 내용에 의존하면 안 되며, Max 플랜 구독자 요청은 우선 포함 플랜 쿼터로 라우팅돼야 함
  • 에러 메시지 out of extra usage에는 콘텐츠 기반 라우팅이 원인이라는 단서가 없어 진단이 매우 어려워짐
  • 최근 git 커밋에 HERMES.md가 들어간 사용자는 사용량이 조용히 extra credits로 과금될 수 있는 상태였음

처리 경과와 최종 상태

환불과 지원 대응

  • 본문에는 기술 오류로 인한 잘못된 billing routing에도 보상이나 환불을 제공할 수 없다고 밝힌 지원 답변 문구가 포함됨
  • 이후 https://news.ycombinator.com/item?id=47952722 기준으로, 영향을 받은 사용자에게는 전액 환불과 함께 월 구독료와 같은 규모의 추가 usage credits 지급 예정이라고 적시됨
  • 지원 체계는 이런 복합 버그를 engineering으로 라우팅하도록 준비되지 않았고, 이를 개선하려 하지만 시간이 더 필요함
  • 환불 불가 안내와 후속 환불 공지가 함께 남아 있어, 상충하는 메시지가 같은 흐름 안에 공존함

사용자 반응과 설계 비판

  • 환불 여부가 불명확하던 시점에는 구독 취소까지 이어졌고, 환불 응답 부재와 메시지에 붙은 clap gif가 취소 사유로 작용함
  • 지원 답변이 실제 환불로 이어졌는지를 기준으로 향후 판단을 내리겠다는 흐름도 나타남
  • 이미지와 밈 표현 때문에 원 게시자의 댓글이 본인 발언이 아니라 support bot 인용이라는 점을 뒤늦게 파악하게 됨
  • @bcherny의 보고를 근거로, overactive anti-abuse system이 일부 요청을 차단하지 않고 extra usage billing으로 넘긴다는 해석도 뒤따름
  • abuse라면 차단해야지 추가 과금으로 처리하면 안 된다는 비판이 이어졌고, quota를 우회하면서 요청은 계속 처리하고 대신 upcharge하는 모드가 있다면 그 설계 자체가 문제로 받아들여짐
  • 로컬에서 실행되는 클라이언트를 사용자가 직접 통제하려는 행위가 breach처럼 취급된다는 반발과, 사용자를 대신해 행동하는 software agent에 권한을 위임할 수 있어야 한다는 비판도 이어짐
  • 개인용 agent를 판매한다고 하면서 실제 동작은 person+agent 조합을 환영한다는 메시지와 엇갈려 보임이라는 지적도 뒤따름

대안 모델 언급

  • 중국계 open weight models는 로컬 하드웨어에서 호스팅 가능하고, 하드웨어만 있으면 자체 실행할 수 있는 대안으로 거론됨
  • 이 모델들은 Anthropic 대비 비용이 10~50배 저렴하고, 코딩 성능은 약 2.7% 낮다는 수치가 함께 제시됨
Read Entire Article