cai CLI
CLI на Rust для работы с языковыми моделями из терминала: ответ, картинка, видео, OCR, коммит-сообщения и команды оболочки
- 204 ★ репозитория
- Последний коммит
- ISC
Расширенный доступ
Почему такой уровень
- `cai commit` создает коммиты в репозитории, `cai rename` переименовывает файлы, а `cai agent` запускает цикл с вызовом инструментов
- Текст запросов, снимки и PDF уходят выбранному провайдеру, а при маршруте через Codex и Claude Code расходуются лимиты подписки
Установка
- Работает в
Ручная установка
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-инструментыCLI на Rust для работы с более чем 20 провайдерами LLM: командный режим, REPL-чат, RAG и вызов инструментов из терминала
Аудитор-черный ящик запускает готовый CLI, ловит побочные записи на диск и отдает агентам индекс команд с оценкой готовности.
Агент для программирования на Rust с графическим окном, терминалом, режимом ACP для Zed и MCP-сервером
Две команды для терминала на Rust: qq отвечает на быстрый вопрос по командной строке, а qa делает один шаг с файлами и командами
Терминальный кодовый агент, который сам выбирает модель под каждый запрос и показывает расход в реальном времени
Rust SDK для агентов программирования и готовый CLI abstract: REPL, 34 инструмента, MCP, граф памяти, Anthropic и OpenAI, вывод JSON для CI
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
Коротко о README
Страница начинается со списка возможностей и поддерживаемых провайдеров, затем дает установку через Cargo или Homebrew. Раздел использования объясняет первичную настройку ключей, маршрутизацию через подписки Codex и Claude Code, выбор предпочтительного провайдера и полный вывод `cai help` со списком команд по группам.