От Cha к Ch

Репозиторий проекта на GitHub

Большое объявление

Я прекращаю поддержку Cha и сосредотачиваюсь на Ch. 23 августа 2025 года я пометил Cha как устаревший и направил все будущие усилия по разработке на Ch. Философия проста: держать один инструмент, который простой, легкий и быстрый, поддерживать его и исправлять ошибки. Без погонь за функциями.

Почему я изначально создал Cha

Когда LLM и ChatGPT были новыми, CLI инструменты, которые я хотел, так и не появились. ChatGPT вышел в ноябре 2022 года и действительно стал популярным в начале 2023 года с выходом GPT-4. Я ждал появления надежных инструментов командной строки, но ни один из них не работал так, как мне хотелось. Поэтому я создал Cha и использовал его ежедневно. На самом деле, в моем первом блоге я сказал это прямо: проекты вроде этого были распространены, но ни один не соответствовал моим потребностям, поэтому я написал свой собственный.

Cha был моим детищем. Я использовал его ежедневно и любил работать над ним. И за год он немного вырос, набрав +60 звезд на GitHub. За это время он освоил веб-скрейпинг, извлечение транскриптов с YouTube, генерацию изображений, ввод многострочных данных, как интерактивный, так и неинтерактивный чат, ввод STT подсказок, поддержку пользовательских инструментов, поддержку различных других платформ, помимо OpenAI, свою собственную поисковую систему ответов, продвинутую навигацию по каталогам и редактирование файлов, возможность копирования содержимого в буфер обмена, TTS для ответов и т.д. Он делал много, работал и был действительно полезным и мощным инструментом командной строки.

Почему перейти на Ch (с Python на Go)

Со временем Cha стал тяжелым. Отличный набор функций, но слишком много поверхности для того, что мне нужно было каждый день. Это привело к тому, что Cha стал действительно громоздким. Также не помогло то, что он был написан на Python, что привело к двум критическим проблемам. Одна из них была скорость, просто время начальной загрузки все еще занимало 0,8 секунды, и это было после множества оптимизаций и инженерных решений, чтобы обойти медленное время начального импорта пакетов Python и использование многопоточности. А Python очень сложен для установки. Поскольку Cha зависел от различных сторонних инструментов с открытым исходным кодом, его установка была очень сложной. Моя точка перелома была, когда я путешествовал только с планшетом Android на iTermux, и он просто не работал вообще, а заставить его работать было очень болезненно и бессмысленно.

Поэтому я решил начать новый эксперимент под названием Ch. Ch будет как Cha, НО написан на GoLang вместо Python и содержащий ТОЛЬКО основные функции Cha с идеей быть легким, быстрым, легко устанавливаемым на большинстве систем и не таким нагруженным функциями. Это упростит поддержку проекта как единственному разработчику.

После нескольких месяцев работы над Ch и его использования, я увидел, что будущее Cha лежит через Ch, а не через оригинальную кодовую базу Cha. Я потратил слишком много времени на Cha, поддержка обеих кодовых баз была времязатратной для одного разработчика на этих проектах, а Ch выполнял основную работу, оставаясь гораздо легче, быстрее и проще в установке. Это сделало решение ясным…

Переписывание на Go дает мне быстрый запуск, один бинарный файл и меньшую ментальную модель. README Ch хорошо это подводит: Ch является преемником с более чем 10-кратным ускорением запуска и значительно лучшей производительностью.

Решение

Я официально объявил устаревшим Cha 23 августа 2025 года и направил людей к Ch через README Cha. Репозиторий Cha остается как историческая справка, и я поддерживаю Ch в режиме обслуживания с акцентом на стабильность и исправление ошибок, с небольшим интересом к добавлению новых функций, если это не стоит того и/или критично для добавления (что бы это ни значило с течением времени).

Какие функции включает Ch сегодня

Ch охватывает повседневный рабочий процесс без громоздкости:

  • Высокая производительность запуска с легким CLI, написанным на GoLang
  • Поддержка нескольких провайдеров (OpenAI, Groq, DeepSeek, Anthropic, XAI, Together, Gemini, Mistral, Ollama)
  • Интерактивные и прямые режимы, передача данных из любой команды, загрузка файлов и каталогов, подсчет токенов, экспорт блоков кода, просмотр истории чата, переключение моделей/платформ, возврат, дампы кода, запись сеансов оболочки, интеграция с буфером обмена
  • Встроенный веб-скрейпинг и поиск, включая обработку ссылок YouTube, интегрированную простым способом

Что отсутствует в Ch по сравнению с Cha (и почему)

Ch пытается сохранить только основные функции Cha, но при этом я убрал следующие функции Cha из Ch:

  • Продвинутая “Редактор” UI и “Поиск ответов” не переходят
  • Ингестация аудио, видео и изображений, преобразование голоса в текст и текста в речь, а также некоторые дополнительные функции экспорта и дампы кода не являются приоритетами
  • Некоторые помощники навигации и поведение “смены корневого каталога” из Cha отсутствуют в Ch
  • Локальные “профили с сохраненными чатами” намеренно не являются стандартным путем

Я обозначил многие из них как либо громоздкие, либо “приятные дополнения”. То, что я считал критическим, это веб-браузинг и веб-скрейпинг, которые отсутствовали в Ch, но я с тех пор интегрировал в Ch, так что основной цикл завершен без остального. Более того, у Ch есть новая функция под названием !x, которая записывает сеанс оболочки, пока вы все еще находитесь в сеансе Ch и добавляет это в историю чата, позволяя вам использовать другие инструменты CLI и сохранять их вывод для модели, если хотите. Эта функция позволяет вам получить много оригинальных отсутствующих функций Cha в Ch, не заставляя Ch делать всю работу и не нагружая его. Вы можете узнать больше о Ch в этом новом блоге посте.

Ch/Cha против Claude Code

В июле 2025 года я написал сравнение Cha с последними инструментами CLI на базе ИИ, чтобы объяснить, какую ценность предоставляет Cha, которой не было у этих инструментов. Зная это, я все же хотел включить это в этот блог, потому что Ch, по сути, предоставляет ту же ценность, и сравнение все еще актуально спустя месяцы после этого перехода. Та же философия применяется к Ch.

Ключевые различия

  • Подход Ch/Cha подчеркивает полный контроль пользователя на каждом этапе без фоновых ИИ-работников, принимающих автономные решения. Вы получаете явное управление контекстом, контролируемое пользователем, с затратами, как правило, от $1 до $20 в месяц за ежедневное активное использование. Нет неожиданных правок, все управляется пользователем, что делает его идеальным для глубокого вовлечения и строгого контроля затрат.
  • Агентные CLI, такие как Claude Code и Gemini, идут другим путем с автоматизированными решениями рабочего процесса и умными агентами, принимающими автономные решения. Они обрабатывают контекст и управление файлами, управляемые ИИ, с затратами, как правило, от $10 до $200+ в месяц за аналогичные уровни использования. Они отлично справляются с автономными изменениями кода, что делает их идеальными для быстрого прототипирования и делегирования.

Когда выбирать стиль Ch/Cha

  • Минимальные затраты с полной прозрачностью
  • Полный контроль над каждым взаимодействием
  • Глубокое вовлечение в ваш процесс разработки
  • Явное управление контекстом для чувствительных проектов

Когда выбирать агентные инструменты

  • Быстрое прототипирование и быстрая итерация
  • Предпочтение автоматизации ИИ и делегирования
  • Скорость важнее соображений стоимости

Рекомендация

Нет универсального решения. Ни один инструмент не охватывает каждый случай. Ch отлично подходит для экономически эффективных повседневных задач и точного контроля. Агентные инструменты, такие как Claude Code или Gemini CLI, блестят в сложном, многопоточном, многосредовом кодировании с акцентом на скорость и автоматизацию. Используйте Ch, когда хотите сократить затраты и сохранить контроль. Используйте агентные инструменты, когда вам нужна быстрая итерация и вы не против делегировать контроль. Многие люди начинают с Ch, чтобы изучить хорошие паттерны взаимодействия, а затем добавляют агентные инструменты по мере развития потребностей.

Будущее Cha и Ch

Будущее Cha и Ch таково. Cha является устаревшим и архивированным, служа лишь исторической справкой. Ch теперь является новым Cha. Он будет продолжать поддерживаться, улучшаться (если потребуется) и использоваться. Я буду сильно сопротивляться разрастанию функций для Ch. И в дальнейшем, когда я говорю/ссылаюсь на Cha, я имею в виду Ch, а старая кодовая база на Python будет называться “Cha v0” или “старый Cha”. С учетом этого

Спасибо

Если вы следили за путешествием Cha с самого начала, спасибо. Этот проект многому меня научил и подтолкнул к версии, которая лучше соответствует тому, как я на самом деле работаю, а также лучше для сообщества в целом. Если вы новички, начните использовать Ch и держите все просто!