cai CLI

CLI на Rust для работы с языковыми моделями из терминала: ответ, картинка, видео, OCR, коммит-сообщения и команды оболочки

  • 204 ★ репозитория
  • Последний коммит
  • ISC
CLI

Расширенный доступ

Почему такой уровень

  • `cai commit` создает коммиты в репозитории, `cai rename` переименовывает файлы, а `cai agent` запускает цикл с вызовом инструментов
  • Текст запросов, снимки и PDF уходят выбранному провайдеру, а при маршруте через Codex и Claude Code расходуются лимиты подписки
Все причины и проверки

ad-si/cai

Установка

Работает в

Ручная установка

cargo install cai

Нужен Rust с Cargo. Пакет также лежит на crates.io.

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • `cai commit` создает коммиты в репозитории, `cai rename` переименовывает файлы, а `cai agent` запускает цикл с вызовом инструментов
  • Текст запросов, снимки и PDF уходят выбранному провайдеру, а при маршруте через Codex и Claude Code расходуются лимиты подписки

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

cai — программа командной строки на Rust, которая отправляет задачи моделям Anthropic, OpenAI, Google, Groq, Cerebras, DeepSeek, xAI, Black Forest Labs и TypeSafe, а также локальным Ollama и Llamafile и встроенной модели Apple через «apfel». Команды высокого уровня избавляют от выбора модели и промпта: `cai value capital of Australia` возвращает только ответ, `cai rewrite` правит текст из стандартного ввода, `cai commit` разбивает изменения на коммиты и пишет сообщения, `cai changelog` собирает журнал изменений, `cai rename` называет файлы по содержимому. Отдельные команды работают с медиа: `image`, `photo` и `imgedit` с картинками, `video`, `music`, `say` и `transcribe` с видео, музыкой, озвучкой и расшифровкой, `ocr` достает текст из снимков и PDF, `embed` строит векторы. Команда `run` формирует команду оболочки и спрашивает подтверждение перед запуском, `agent` запускает цикл с вызовом инструментов. Ключи API вводятся при первом запуске. Если у вас подписка ChatGPT или Claude, запросы OpenAI и Anthropic можно направить через официальные CLI Codex и Claude Code, и они потратят лимиты подписки.

Для кого. Разработчикам и администраторам, которые живут в терминале и хотят обращаться к моделям из скриптов и конвейеров без обвязки на Python.

Подходит, если

  • Внутри конвейера нужен только ответ без пояснений: `cai value` возвращает одно значение
  • Перед коммитом правки надо разложить по смыслу: `cai commit` группирует изменения и пишет сообщения
  • Папка со сканами названа как попало: `cai rename` дает файлам имена вида метка времени и заголовок, например `2025-08-19t2041_invoice_car.pdf`
  • Работа идет без интернета: `cai local` берет Ollama либо встроенную модель Apple на macOS
  • Страницу PDF или снимок документа надо превратить в текст: `cai ocr scan.pdf`

Не подходит, если

  • Требуется MCP-сервер для Claude Code или Cursor: cai запускается как команда, режима MCP в README нет
  • Требуется постоянная модель по умолчанию: безымянные запросы идут по подпискам и ключам в порядке приоритета, и результат зависит от настроек
  • В системе нет ни Cargo, ни Homebrew: другого способа установки в README не указано
  • Хочется долгого диалога с историей в интерфейсе чата: cai рассчитан на отдельные команды

Пример запроса к агенту

Разбей мои незакоммиченные правки на логичные коммиты через cai commit и покажи сообщения до записи

Ограничения

  • Нужен ключ API хотя бы одного провайдера либо локальный сервер Ollama или Llamafile. API OpenAI и Anthropic из России недоступны, поэтому остаются локальные модели.
  • Через подписки идут только текстовые запросы и OCR. Генерация медиа, расшифровка, агент и модели вне подписки требуют ключа API, а ответы через CLI не передаются потоком.
  • Модель Apple работает на macOS 26 и новее с Apple Intelligence через утилиту «apfel».
  • Список моделей и значения по умолчанию меняются от версии к версии, актуальный выдает `cai models`.

Как отключить. Удалите программу командой `cargo uninstall cai` или `brew uninstall cai`. Настройки лежат в `~/.config/cai/config.yaml`, их можно стереть вручную.

Частые вопросы

Как установить cai?

Выполните `cargo install cai` либо `brew install cai`. Затем запустите `cai` без аргументов: программа предложит выбрать провайдера и ввести ключ.

Как пустить запросы через подписку Claude или ChatGPT?

Установите официальные Claude Code и Codex, войдите в них и добавьте в `~/.config/cai/config.yaml` строки `openai_via: codex` и `anthropic_via: claude-code`. Те же значения задают переменные `CAI_OPENAI_VIA` и `CAI_ANTHROPIC_VIA`.

Как выбрать конкретную модель?

Поставьте имя модели перед запросом: `cai opus list 10 fast CLI tools`. Для медиа служит ключ `-m`, например `cai image -m google sunset over mountains`.

Как работать с локальной моделью?

Команда `cai local` обращается к `llama3.2` в Ollama, а если сервер не запущен и вы на macOS, к модели Apple.

Как закрепить одного провайдера?

Добавьте в конфигурацию `preferred_provider: anthropic` (допустимы также `openai` и `google`). Тогда безымянные запросы и команды `fast`, `smart`, `rewrite`, `commit` возьмут эквивалентную модель этого провайдера.

Обсуждение

Вопросов и отзывов пока нет.

CLI на Rust для работы с более чем 20 провайдерами LLM: командный режим, REPL-чат, RAG и вызов инструментов из терминала

CLIРасширенный доступ10,5 тыс.Звезды репозитория

Аудитор-черный ящик запускает готовый CLI, ловит побочные записи на диск и отдает агентам индекс команд с оценкой готовности.

CLIРасширенный доступ441Звезды репозитория

Агент для программирования на Rust с графическим окном, терминалом, режимом ACP для Zed и MCP-сервером

CLIШирокий доступ187Звезды репозитория

Две команды для терминала на Rust: qq отвечает на быстрый вопрос по командной строке, а qa делает один шаг с файлами и командами

CLIШирокий доступ628Звезды репозитория
Официальный

Терминальный кодовый агент, который сам выбирает модель под каждый запрос и показывает расход в реальном времени

CLIШирокий доступ352Звезды репозитория

Rust SDK для агентов программирования и готовый CLI abstract: REPL, 34 инструмента, MCP, граф памяти, Anthropic и OpenAI, вывод JSON для CI

CLIШирокий доступ464Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйЗвезды репозиторияГлавное отличие
cai (эта карточка)нет204
LLMнет12 715CLI и библиотека на Python с плагинами, журналом запросов в SQLite и эмбеддингами
AIChatнет10 544CLI на Rust с REPL-чатом, RAG и вызовом инструментов для более чем 20 провайдеров

Коротко о README

Страница начинается со списка возможностей и поддерживаемых провайдеров, затем дает установку через Cargo или Homebrew. Раздел использования объясняет первичную настройку ключей, маршрутизацию через подписки Codex и Claude Code, выбор предпочтительного провайдера и полный вывод `cai help` со списком команд по группам.

Бейдж для README

Сообщить о проблеме

Foxx AIcai
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.