Я ушёл из ChatGPT. 1800 диалогов ушли со мной

27 февраля 2026 для меня стало точкой невозврата.

Пентагон объявил Anthropic supply-chain risk после их отказа снять guardrails вокруг массовой слежки и полностью автономного оружия. Трамп распорядился прекратить использование продуктов Anthropic в федеральных агентствах с шестимесячным переходным периодом. В те же дни OpenAI объявила о соглашении с Пентагоном по размещению своих моделей в classified cloud networks, а Anthropic заявила, что будет оспаривать решение в суде. Для меня это был момент, когда стало окончательно ясно: строить свой личный workflow вокруг одного AI-вендора - плохая идея.

Проблема была в другом: у меня уже накопилось 1800+ диалогов в ChatGPT.

Это не просто «история чатов». Там были заметки по проектам, исследования, отладка, черновики текстов, архитектурные обсуждения, рабочие идеи и куча промежуточного мышления, к которому я периодически возвращался. Терять всё это только потому, что я больше не хочу зависеть от конкретного продукта, мне совсем не хотелось.

Да, у ChatGPT есть экспорт данных. Но экспорт сам по себе — это ещё не переносимость. ZIP-файл с JSON — это бэкап, а не рабочий инструмент. Он лежит мёртвым грузом, пока ты не придумаешь, как сделать эти данные снова доступными, читаемыми и полезными.

Поэтому я сделал chatgpt2md.

Это CLI-инструмент, который берёт экспорт ChatGPT, раскладывает все диалоги по Markdown-файлам, строит локальный полнотекстовый индекс и поднимает MCP-сервер, чтобы Claude мог сам искать нужные разговоры, открывать их целиком и использовать как контекст. В репозитории это и заявлено как основная цель: take your ChatGPT history with you to Claude.

Идея была не в «миграции ради миграции». Идея была в том, чтобы перестать держать свой контекст заложником одного интерфейса и одного поставщика.

Если очень коротко, инструмент делает четыре вещи:

  • берёт экспорт ChatGPT в ZIP или JSON;
  • конвертирует каждый диалог в нормальный Markdown;
  • раскладывает файлы по папкам год/месяц;
  • поднимает MCP-интеграцию, через которую Claude может искать и читать архив.

После подключения Claude получает доступ к трём простым инструментам:

  • search_conversations — полнотекстовый поиск по истории;
  • get_conversation — чтение полного текста конкретного диалога;
  • list_conversations — просмотр архива по году и месяцу.

То есть дальше всё выглядит так, как и должно выглядеть в 2026 году: не я руками копирую куски из старого продукта в новый, а модель сама идёт в мой архив, находит нужный разговор и подтягивает его как контекст.

Для меня это и есть главный смысл всей истории. Не «экспортировать данные». А сделать свой накопленный контекст снова пригодным к использованию.

Почему я выбрал именно Markdown, а не очередную внутреннюю базу или проприетарный формат? Потому что Markdown — это максимально скучный и поэтому максимально живучий формат. Его можно открыть где угодно: в редакторе, в IDE, в Obsidian, в обычном просмотрщике файлов, да хоть через grep. Если завтра я решу уйти и от Claude тоже, архив никуда не денется. Он останется моим.

Это, кстати, важнее, чем кажется на первый взгляд.

Сейчас почти все обсуждают, какой LLM «лучше»: ChatGPT, Claude, Gemini, ещё кто-то. Но на практике самый ценный актив — не сам интерфейс и не даже не конкретная модель, а тот контекст, который ты накопил за сотни и тысячи взаимодействий. Если этот контекст нельзя легко забрать, переиспользовать и подключить к другому инструменту, значит ты по сути строишь работу внутри очередного vendor lock-in.

Мне хотелось ровно обратного. Я хотел, чтобы мои старые диалоги были:

  • локальными;
  • читаемыми человеком;
  • пригодными для поиска;
  • доступными новой модели без ручной возни.

Именно это chatgpt2md и делает. Проект собирается в один бинарник, распространяется под MIT-лицензией и имеет готовые сборки для macOS, Windows и Linux.

Проект пока маленький, без лишнего пафоса. Но мне нравится сама идея: контекст должен принадлежать пользователю, а не продукту.

Если вы тоже накопили годы работы в ChatGPT, но не хотите оставлять это в виде мёртвого ZIP-архива или продолжать зависеть от одного AI-сервиса, возможно, вам это пригодится.

Если будет интерес, следующим постом могу отдельно разобрать техническую часть: почему здесь вообще уместен MCP, зачем нужен локальный индекс, и почему связка «Markdown + поиск + инструменты для модели» на практике оказывается полезнее, чем просто хранить экспорт «на всякий случай».

1 комментарий