Захожу пару недель назад в Claude, а меня встречает красная плашка: аккаунт отключён за нарушение Usage Policy. Какой пункт и в каком чате, не сказано. Я решил, что это недоразумение, и написал апелляцию, спокойно и по делу.

Ответ пришёл быстро и уложился в одну мысль: восстанавливать не будем, вы нарушили Usage Policy. Что именно я нарушил, так и осталось тайной. Чуть позже в ту же почту упало автоматическое письмо: моя апелляция в работе. Так они теперь и лежат рядом, отказ и обещание разобраться. Причём отказ пришёл первым.
Ладно, подумал я, хотя бы заберу свои чаты. Экспорт у забаненных работает, это написано в справке. Там же мелким шрифтом добавлено, что состав архива могут ограничить. Слово “ограничить” там понимают широко. Мне пришёл один файл:
[{“uuid”: “2078d5e2-…”, “full_name”: “Эльдар”, “email_address”: “…”, “verified_phone_number”: “+998…”}]
Это весь архив. Ни одного чата, ни одного проекта, ни строчки кода. Зато мне бережно вернули имя, почту и телефон. Видимо, на случай, если я забуду, как меня зовут и куда приходят их отказы. Из всего, что я им написал, самым ценным они сочли номер, который я вводил при регистрации.

Что удалось вытащить
Спасла паранойя. 12 августа я зачем-то снял бэкап чатов, так что потерялось только то, что набежало после, примерно полтора месяца. Сначала я надеялся, что десктопное приложение держит копию у себя, и перерыл AppData, IndexedDB и Local Storage. Набралось меньше мегабайта, и это были одни настройки. Чаты жили только у них на сервере.
Зато в WSL нашёлся снимок ~/.claude, оставшийся от Claude Code 2.1.238, а в нём транскрипты CLI-сессий. Там лежали 35 сессий, где лежала моя последняя работа с моделью. Ещё 1,2 ГБ занимали субагенты, до них руки не дошли. Да и не очень-то они и нужны, откровенно говоря.

Claude Code в парике
Claude Code я поначалу не бросил, слишком к нему привык. В Anthropic ходить он больше не мог, поэтому ходил в мой прокси. В клиенте есть режим Developer, и можно подключить свой LiteLLM прокси. Тут выяснилось, что клиент проверяет имя модели и всё, что на Claude не похоже, разворачивает:
Doesn’t look like an Anthropic model: expected a gateway model route referencing an Anthropic model (e.g. claude-sonnet-4-5, anthropic/claude-*)
Пришлось завести в LiteLLM маршрут anthropic/claude-local, который внутри перенаправлял запросы на grok-4.7. Claude Code принял этот маршрут: для клиента имя модели оказалось достаточно похожим на Anthropic-модель. Какая модель стоит за маршрутом, ему уже не так важно.
Так Grok и устроился в Anthropic: без собеседования, по поддельному пропуску.
Следом я упёрся в контекст. Модель принимает 500k, а приложение упорно показывает 200k. Я пропатчил константы прямо в claude.exe, дважды перезапустил, и счётчик даже не шелохнулся: для всех имён вида claude-* потолок зашит в код.
Сработала переменная CLAUDE_CODE_MAX_CONTEXT_TOKENS=500000 в settings.json, но только для имён, которые не начинаются с claude-*.
Парик пришлось подбирать по фигуре. Имя должно быть похоже на Claude ровно настолько, чтобы клиент пустил, но не настолько, чтобы он узнал своего и урезал ему контекст.

Оставалось заставить найденные сессии открываться. Сначала они показывались пустыми, хотя в jsonl были сотни реплик. Оказалось, путь к файлу записан как \mnt\c…: гибрид Linux и Windows, который Windows открыть не может. Я поправил пути и перевёл сессии на Ubuntu через wslConfig. После этого приложение стало искать разговоры внутри WSL, не находило их и плодило пустышки с новыми id.
В итоге я разложил транскрипты по ~/.claude/projects прямо в Ubuntu, а там, где id успели смениться, подложил оригинал под новое имя. Заодно WSL подкинул своё.
Переезд к себе
Заводить новый аккаунт и ждать следующей плашки не хотелось, поэтому наигравшись с Claude Code и с Гроком, мимикрирующим под Оpus, я решил переехать на свою хомлабу.
Open WebUI крутится на сервере в домашней сети, рядом с Ollama, которая у меня используется для распознавания котов и ежей сервером Frigate. Кстати, если интересно, про него могу рассказать отдельно.
История лежит в Postgres, вложения на диске. Отключить мне аккаунт тут могут разве что выбитые автоматы, но на такой случай у меня есть ИБП и генератор на 16 кВт.
Бэкап до 12 августа пришлось заливать вручную, штатный импорт не принимает файлы, экспортированные из бекапа. Получилась папка Claude migrated с подпапками chats, projects и code, туда же легли сессии из снимка WSL.
Всё, что было на диске, переехало. Дыра после 12-го августа так и осталась дырой.

Раз уж взялся, перетащил и ChatGPT: 283 чата и 4783 сообщения, с родными датами. С проектами OpenAI поступает изящно. В выгрузке только внутренние id без названий, так что названия я вычитывал из системных промптов чатов.

Память ChatGPT в экспорт тоже не кладёт. Я просто попросил его выгрузить всё, что он обо мне помнит, и сверил с тем, что уже есть в Open WebUI. Почти всё совпало, причём часть я когда-то сам исправлял.
Смешнее всего было про сервер моего пет проекта в Яндекс Облаке: по версии ChatGPT он стоил 3000 долларов в месяц, а на деле около семи тысяч рублей. Эту простыню переносить в память я не стал.
Докручиваем настройки OWUI
Дальше пошло уже то, ради чего вообще стоило переезжать. Провайдеров несколько, и перед каждым стоит свой Headroom: наружу уходит сжатый промпт, а в базе остаётся полный чат. Хотелось поставить перед ними LiteLLM, одну точку входа и инструмент, который дочитывает вырезанную середину. Не вышло. Open WebUI жёстко шлёт stream:true , а Headroom на стриме инструмент не вставляет. В 0.40.0 это не починили, Issue 3815 до сих пор открыт. Четыре прокси так и остались четырьмя.
Дочитывать всё равно хотелось, поэтому инструмент повесил сам, отдельным MCP рядом с каждым прокси. Модель видит маркер <<ccr:hash>> и сама вызывает headroom_retrieve. Сразу вылез баг: retrieve отдавал тот же маркер, который только что раскрыл.
Exclude в настройках Headroom прокси ловил голое имя headroom_retrieve, а Open WebUI зовёт его с префиксом, hr-grok_headroom_retrieve.
Проще говоря, headroom сжимал ответ своего же инструмента retrieve, хотя не должен был.
Дописал в прокси HEADROOM_EXCLUDE_TOOLS=*headroom_retrieve, а в системный промпт моделей вписал уже префиксное имя: в спеке MCP оно голое, и модель его иначе не узнает.
Проверил на тикете из Plane. Маркер пришёл, по хешу вернулся оригинал, свой ответ прокси повторно не сжал. Чат в базе целый, токены режутся по дороге, вырезанное больше не висит мёртвым грузом.
При этом собственное хранилище не означает, что модель работает локально. Если запрос уходит внешнему провайдеру, он получает отправленный ему контекст. Моя история и вложения при этом остаются у меня, а провайдера и модель можно менять независимо от интерфейса.

Сверху подключены свои инструменты: Plane, поиск по базам знаний и память, которая не исчезнет вместе с аккаунтом. С телефона всё это открывается в обычном баузере по адресу в домашней сети.

Hermes
Через какое-то время я поймал себя на том, что держу отдельное приложение Claude Code из чистой ностальгии. Оно ходит в мой прокси, делает вид, что говорит с Anthropic, и требует, чтобы модель носила чужое имя. Тогда я поставил агента Hermes и подключил его прямо в Open WebUI. Теперь задачу агенту я отдаю из того же чата, где лежит вся история, без отдельной программы и отдельного логина. Claude Code после этого стал не нужен, жалел я о нём минут пять.

Весь стек теперь опенсорсный: Open WebUI, Postgres, Headroom и Hermes. Чужая в нём только модель, и её можно поменять без нового переезда.

Следующая цель — единая точка маршрутизации между провайдерами с переключением при ошибках и исчерпании доступных лимитов. Хочется, чтобы смена модели не превращалась в очередной переезд. Пока это в планах.
За что забанили
Есть только подозрения. Claude я гонял строго через Proxifier и через прокси, которые админю сам. Думаю, бан прилетел после покупки подписки Max. Она была нужна, чтобы переписать фронт своего пет-проекта, и я её использовал довольно активно. Антропикам, похоже, не понравилось, что человек купил Max и правда на нём работает. Но это догадки. В экспорте причины нет, там только мой телефон. Если надумают объяснить, номер у них есть.
В очередной раз убедился, что вендорлок — зло. Чем больше вокруг своих данных и опенсорсных компонентов, тем меньше зависишь от корпорации, которая может отключить аккаунт и оставить тебе на память номер телефона.
Апелляция ничего не вернула. Вернули бэкап, снятый из паранойи, и база, которая стоит дома. Чужая в моём стеке теперь в основном модель. Её можно заменить, не перевозя заново всю свою жизнь.
Комментарии (42)

zartarn
17.10.2026 12:33Да да, именно за активное использование.

teamfighter Автор
17.10.2026 12:33Ну тут можно только догадываться. Причину бана они не пишут. Но многие сообщают что бан прилетает после покупки подписки Мах х20.

icon-of-sin
17.10.2026 12:33И в чем к ним претензия? Не проще было не абьюзить? То что подписка это дотационный режим известно всем. Они допускают РЕДКИЕ упирания в лимит. А тех, кто платит 200, а выедает по $5000 посылают на мороз.

koha2102
17.10.2026 12:33незнаю, max за 200 у меня уже месяца 4 стоит, частенько выедаю весь лимит. До opus 5.5 на Fable сидел, там вообще за три дня недельный лимит выходил. Прокси-шмокси и обертки не использую, как скачал приложение так и юзаю. Может дело в излишней кастомизации

lenbert
17.10.2026 12:33Нет, это не так. У меня также $200 подписка max с самого начала Fable и я лимиты съедаю все еженедельно, и Fable и Opus

Yrninibg
17.10.2026 12:33Претензия автора в статье достаточно прозрачная и касается сохранности данных - баньте доступ к генерации, если юнит-экономика не сошлась, но отдайте архив переписок и наработанного кода
Ну это скотство со стороны саппорта - выдать вместо экспорта текстовый файл с одним телефонным номером

icon-of-sin
17.10.2026 12:33"наработанный код" на компе разработчика, клава даже не видит ВЕСЬ код, она его кусками грепает.
нужна новая статья с обоснованием ценности переписок с клавой и какие-то обрывочные диффы, которые летают туда-сюда

teamfighter Автор
17.10.2026 12:33Что в вашем понимании абьюз? Пользоваться лимитами, которые вендор сам написал и сам продал за $200? Если по ним набегает $5000, это их математика, не моя совесть. Редкие упирания в лимит - отличная оферта: лимит есть, но трогать его не надо. Тогда пусть в ToS так и напишут: платите как за Max, сидите как на Pro. Да и если честно, не столько жаль потраченных денег, сколько странно что не отдали всех моих наработок. Хорошо хоть бекап был.

Vytian
17.10.2026 12:33Ну непуганные ещё. Провайдеры разнообразных анлим-интернет планов уже лет 20 как научились мелконькими буквами в договоре и даже порой в публичной оферте указывать, что первые 40 ГБ трафика на 100500 МБ/с, а дальше один мегабит, а то и просто на edge скинут.
И ничего, никто не жалуется, что нельзя по сто флибуст в месяц скачивать.

SystemOutPrintln
17.10.2026 12:33И ничего, никто не жалуется, что нельзя по сто флибуст в месяц скачивать.
Никто не жалуется, потому что все уже давно в курсе, что заявление про "анлим" — это наглое враньё. А ещё из-за существования дыр в законодательстве.
Но это по-прежнему не делает подобных провайдеров меньшими лжецами и негодяями.

SystemOutPrintln
17.10.2026 12:33То что подписка это дотационный режим известно всем.
Это их проблемы, что они сами сделали выбор сделать подписку "дотационным режимом". Клиента не должны волновать "проблемы индейцев".

ridoshsergei
17.10.2026 12:33Почему не используете кастомные harness по типу getbb? Все локально, open source, доработка плагинов на лету под свои задачи, подключай какие хочешь модели и т.д т.п.

teamfighter Автор
17.10.2026 12:33Потому что это IDE, а не чат, если я правильно вас понял. С телефона в неё не зайдёшь, а история и вложения мне нужны откуда угодно. Код я и так пишу в OpenIDE.

Rec-Gen-Buster
17.10.2026 12:33А вы часом не входили с иранского IP или не скачивали приложение? Claude такое отслеживает. Сам так пару акков потерял в ходе эксперимента.

censor2005
17.10.2026 12:33Номер узбекистанский, а физически вы тоже в Узбекистане?
Хотелось бы узнать за что забанили, чтобы не попасть тоже под бан. Есть хотя бы примерно подозрения?

teamfighter Автор
17.10.2026 12:33Нет, физически я в РФ, номер узбекский тоже честно мой, я работаю на банк в Узбекистане. До покупки подписки Мах х20 аккаунт жил почти год.

Advisory
17.10.2026 12:33Бесит этот Claude своей «правильностью».
Вчера попросил его повторить работу внешнего сервиса себе для локальной автоматизации. Внешний сервис автоматизировал работу со сторонним популярным ресурсом. Для этого использовал шифрование, о чем и сообщал пользователям. Дескать все у вас на ПК, а не у меня. Я отправил Claude несколько референсных скринов того чего я хочу и как должно выглядеть локальное приложение. Он увидел про шифрование, принял его за скрин и информацию от основного сервиса, а не работу посредника. После чего «уперся рогом» и сказал, что не будет анализировать и дублировать работу сервиса-посредника и участвовать в обходе защиты. Как я ему не пытался объяснить, что для локальной работы эта часть не требуется, он не соглашался.
Конец разговора о сервисе-посреднике добил: «решение о том, что я пишу, принимаю я, а не он». Поняли, дети? Это Он — Главный в связке, а не пользователь, оплативший подписку и сервис, работа которого воспроизводится.
И вот после всех этих новостей о блокировках сидишь и думаешь: продолжать его переубеждать или не нужно? Он уже включил «режим паранои» и в любой момент может решить, что я пытаюсь с его помощью найти обходной путь, а не переубедить его в том, что он ошибся в своих выводах.
После чего, накопив, насколько «красных флагов», в один прекрасный момент, просто заблокирует аккаунт.

stationfuk
17.10.2026 12:33Тоже упирался в похожую "правильность" со стороны фронтир моделей: была задача вытащить из памяти работающей программы ключи шифрования бэкапов (собственных бэкапов, если вкратце - вытащить из проприетарного формата мессенджера в открытый). Алгоритм описан открыто в исследованиях и по ним нужно было восстановить работающий код (т.к. компания банит репо с реальным кодом везде где находит). Так вот, опус 5+ и фабле оба отказывались и падали в проверку безопасности, опускался все ниже и ниже и вроде опус 4.8 или 4.7 согласился без вопросов (и сделал)

teamfighter Автор
17.10.2026 12:33У грока кстати меньше подобных приколов. Антропик огородились от всего, что хоть как-то связано с безопасностью на старших моделях.

Advisory
17.10.2026 12:33Ваша ситуация неприятна, но хотя бы понятна оттого и не так обидна. А в моём случае, этот гад, перепутал скрины и отказался продолжать.
Но самое бесящее, то, что он заявил, что это он тут Папа.

Mr_Makadamia
17.10.2026 12:33Доброго дня!
Несколько раз перечитал эту фразу : «решение о том, что я пишу, принимаю я, а не он»
Но так и не понял, что к чему. Кто "я", а кто "он"?

likhachevperm
17.10.2026 12:33
Тоже Max x20 и далеко не первый месяц использования Claude.
К счастью, ничего весомого в истории не осталось (Claude использовался для написания рутины и тестов, практически круглосуточно), ведь мне тоже вернули архив с моим именем и номером телефона.
Не хотят моих денег - пожалуйста.

teamfighter Автор
17.10.2026 12:33Сочувствую. Деньги хоть вернули?

likhachevperm
17.10.2026 12:33Конечно же нет.
Ноль ответов от саппорта. Ни про рифанд, ни про данные.

Yrninibg
17.10.2026 12:33Генератор на 16 киловатт для питания хомлабы с распознаванием котов впечатляет даже больше, чем обвязка вокруг языковых моделей) Вот это я понимаю фундаментальный подход к отказоустойчивости сервисов

sgtlomzik
17.10.2026 12:331 октября был большой банвейв, но, как я понял, в основном или только на x20 подписке. При чем банили людей из разных стран и с разным сценарием использования. Искать конкретную причину бана не имело смысла, как и писать аппеляцию, они на нее никогда не отвечают. Но пользователей на обычной pro трогают редко, а если соблюдать определенные правила, то и на x20 сложно получить бан вне банвейвов.

Zashibis
17.10.2026 12:33Что вообще полезного может быть в истории чатов? Я их вообще удаляю после каждой реализованной фичи, а все спецификации с описанием логики держу рядом с кодом в репозитории, в md-файлах.

teamfighter Автор
17.10.2026 12:33Для фичи чат и правда расходник. Спека в репе живее, чем переписка “а теперь переименуй”.
У меня не всё фичи. Например, был чат по генеалогическому исследованию моей фамилии на гигабайт (нашелся в траскриптах локально), разборы, где через полгода надо вспомнить, почему ветку отсекли, а не как называется функция. Это в md рядом с кодом не ляжет, кода там нет. Плюс вложения.
Удалять после каждой фичи нормально, если продукт — код. У меня продукт иногда сам разговор.

tenzink
17.10.2026 12:33Для таких сценариев, imo, стоит суммаризовать ключевые моменты чата в какой-нибудь открытый формат, и владеть самому этими данными, чем полагаться на хранение в проприетарном формате непонятно у кого.

oldfox31
17.10.2026 12:33скорее всего спалился телефон по место положению, как бы это не звучало.

teamfighter Автор
17.10.2026 12:33Год до этого не палился, а как подписку купил спалился сразу?) Нет, ну не исключаю конечно, но совпадение интересное.

tenzink
17.10.2026 12:33А зачем вам история чатов? Всегда воспринимал чат, как микро-проект для написания кода, доки или исследовательского отчёта. После чего архивируется, как ненужный мусор

teamfighter Автор
17.10.2026 12:33https://habr.com/ru/articles/1095624/comments/#comment_30540578 Вот тут пояснил

cmyser
17.10.2026 12:33тоже самое. Аккаунту столько же лет сколько и Клод коду, купил подписку за 200 (Второй раз ) активно кодил и на те, блокнули
А теперь поставили проверку личности через персону, хз как и пройти

Geologist5330
17.10.2026 12:33Хз, у меня все важное сохраняется локально в базе Obsidian. Поэтому если залочат, будет печально, но не конец света.
Dhwtj
Приключения красной шапочки и серого волка
teamfighter Автор
Лучше и не скажешь.