Одна строка, $200 исчезли
Пользователи Claude Code недавно обнаружили невероятный баг в социальных сетях: когда сообщение git commit содержит регистрозависимую строку “HERMES.md”, запросы Claude Code ошибочно направляются на API с оплатой за использование вместо квоты подписки Max пользователя.
Подписчик Max 20x ($200/месяц) израсходовал $200.98 дополнительного использования за один день, при этом его недельная квота ещё имела 86% остатка. Другими словами, он не только потратил всю месячную подписку, но и должен был дополнительно заплатить $200.
Этот твит получил 4,623 лайка, 341 ретвит и 1,490 закладок, с более чем 1.48 миллиона просмотров — став одним из самых распространённых постов в AI-сообществе на этой неделе.
Механизм бага: ловушка строкового совпадения в логике маршрутизации
Согласно анализу сообщества, коренная причина кроется во внутренней логике маршрутизации Anthropic:
if commit_message contains "HERMES.md":
route_to = API_BILLING # оплата за использование
else:
route_to = MAX_SUBSCRIPTION # квота подписки
HERMES.md — широко используемое имя файла спецификации системного промпта в проектах AI Agent (Hermes Agent и другие фреймворки используют это соглашение). Это не какой-то obscure edge case — это обычный файл, существующий в git-истории тысяч разработчиков.
Команда Anthropic пообещала полный возврат средств.
Почему этот баг настолько ироничен
Причина, по которой этот баг вызвал такую сильную реакцию в сообществе, не только в том, что он сжёг деньги пользователей, но и в том, что он раскрывает более глубокую проблему развития экосистемы AI Agent:
| Измерение | Ирония |
|---|---|
| Конфликт имён | Стандартное соглашение об именах файлов в экосистеме Agent было случайно задето логикой строкового совпадения системы подписок |
| Тихий биллинг | Пользователи были тихо переключены на более дорогой путь биллинга, используя «продукт, за который они заплатили» |
| Эффект масштаба | По мере распространения Agent-фреймворков (Hermes Agent, OpenClaw и т.д.) количество затронутых пользователей растёт экспоненциально |
| Стоимость доверия | Разработчики начинают задаваться вопросом: мой AI-инструмент работает на меня или тратит за меня? |
Руководство по самопомощи сообщества
До официального исправления сообщество обобщило несколько мер смягчения:
- Переименуйте файл: измените
HERMES.mdнаsystem_prompt.md,hermes.md(строчные буквы) илиagent.md, чтобы избежать точного совпадения заглавной строки - Измените git commit: используйте
git commit --amendилиgit rebase -iдля перезаписи commit-сообщений, содержащих строку - Мониторьте дополнительное использование: настройте оповещения об использовании в консоли Anthropic, приостанавливайте при аномалиях
- Временное понижение: рассмотрите использование прямых вызовов API key вместо режима подписки Claude Code до подтверждения исправления
Большая картина: боли роста экосистемы Agent
Этот баг — первый «баг уровня абсурда» эпохи AI Agent — не из-за технической сложности, а потому что он произошёл в казалось бы невозможном месте: стандартное имя файла из Agent-фреймворка случайно совпало с логикой маршрутизации биллинга другого продукта.
По мере взрывного роста экосистемы AI Agent (Hermes Agent v0.12, OpenClaw, MuleRun — все быстро итерируются), этот тип «поперечно-системных» случайных конфликтов будет только расти. Границы между цепочками инструментов становятся всё более размытыми, но инфраструктурные слои, такие как биллинг, аутентификация и маршрутизация, не успевают за сложностью эпохи Agent.
Anthropic должна исправить этот баг, но вся индустрия должна исправить более глубокую проблему: когда AI-агенты начинают автономно писать код, делать коммиты и даже управлять своими системными промптами, кто гарантирует, что эти поведения не вызовут неожиданных побочных эффектов?