CLI AI

Замена shell_gpt без питона и без ключа

2026-08-20

shell_gpt — пакет питона, который ставят через pip и запускают со своим ключом OpenAI. CliAI — один бинарник, который ставится одной строкой и ключа не требует. Оба превращают фразу в команду shell; сравнивать имеет смысл рантайм, чей ключ за это платит и что происходит между генерацией и выполнением.

1. Три оси, где разница действительно есть

Всё остальное — вкусовщина. Эти три меняют картину на машинах, которые не ваш ноутбук: что придётся установить, какой секрет придётся возить с собой и стоит ли хоть что-нибудь между ответом модели и вашим шеллом.

2. Рантайм: питон на каждой машине

pip install тянет за собой нужную версию питона, желательно виртуальное окружение и дерево зависимостей. На своём ноутбуке это разовая процедура. На десятке серверов, в сборочном образе и паре контейнеров это уже небольшая постоянная работа — и та единственная машина, где системный питон старше, чем хочет пакет, окажется нужна вам в два часа ночи.

Один бинарник обходит это целиком: ничего не нужно мирить с системным пакетным менеджером и ничего не ломается, когда кто-то обновит питон.

3. Ключ: чей он и где он в итоге оказывается

shell_gpt работает по вашему ключу OpenAI. Вы его заводите, кладёте в переменную окружения или конфиг — и дальше отвечаете за последствия: ключ уезжает в историю шелла, в образы контейнеров, собранные из ваших дотфайлов, в бэкапы и на каждую машину, где инструмент должен работать.

CliAI ключа не требует вовсе. Это на один секрет меньше в ротации и на один пункт меньше в разговоре с безопасностью.

4. Что происходит до запуска

clai
$ clai delete every log file older than 30 days→ find /var/log -name '*.log' -mtime +30 -delete⚠ CAUTION — deletes files permanently, no recycle binRun it? type yes to confirm:

Разметка риска и подтверждение здесь — часть протокола, а не опция, которую можно забыть включить. Инструмент, где «выполни за меня» — это флаг, рано или поздно будет запущен с этим флагом кем-то, кто спешит.

5. Уточнить лучше, чем набрать заново

clai
$ clai show me the largest folders here→ du -sh * | sort -rh | head[R] only top 5, follow into subdirectories→ du -h --max-depth=2 . | sort -rh | head -5

Follow-up сохраняет контекст исходного запроса, поэтому вы правите одну деталь, а не переписываете фразу целиком.

6. Когда shell_gpt всё-таки правильный выбор

Если вы и так живёте в питоне, ключ у вас уже есть, а роли, системные промпты и модель хочется менять под себя — именно эту гибкость shell_gpt и даёт. Это набор инструментов для тех, кто собирается его настраивать.

CliAI выбрал противоположный размен: меньше ручек, нечего заводить, одинаковый ответ на чужом сервере и на своей машине.

Gotchas

  • Ключ в переменной окружения — это ключ в истории шелла. Одна строка export OPENAI_API_KEY=… переживает вашу память о том, что вы её набирали, а .bash_history доступен на чтение чаще, чем принято думать.
  • Автовыполнение экономит секунду. Ровно один раз оно обойдётся дороже, чем все сэкономленные секунды вместе.
  • Питон в образе контейнера — это сто мегабайт. Для инструмента, чья работа — напечатать одну строку, странная цена в каждой сборке.

Related questions

Можно пользоваться обоими? Да, они не конфликтуют: разные бинарники, разный вызов.

Работает ли CliAI без интернета? Нет. Генерация идёт через облачную модель, ровно как у shell_gpt.

Что с приватностью запроса? Ваш текст в любом случае попадает в модель. Разница только в том, через чей ключ и чей счёт.

See also

CliAI — это один бинарник, отсутствие ключа и шаг подтверждения, который нельзя случайно отключить. Поставить одной строкой.