CliAI блистает на мне это нужно один раз. 80% случаев. Но есть тихая категория: команда той же формы, которую вы перегенерируете снова и снова. В какой-то момент она заслуживает имени, код-ревью и места в scripts/.
Три признака зрелости
Вы запускали ту же форму три раза за неделю. Не ту же команду — ту же форму. «Тейл стейдж-логов и grep FAILED» в понедельник, «…и grep ERROR» в среду, «…и grep timeout» в пятницу. Форма — это то, что просится в скрипт.
Коллега просит у вас команду. Если он сейчас скопирует ваш однострочник в Slack — сэкономьте круг и закоммитьте.
Команда едет в CI. Неревьюенная shell в CI-пайплайне — это инцидент в замедленной съёмке. Как только CliAI-однострочник попадает в CI, оформите его нормально.
Паттерн «выпускного»
Начните с промпта. Запустите. Скопируйте результат.
$ clai для каждого пода в staging, который не Ready, напечатай имя и последние 20 строк логов→ kubectl -n staging get pods -o json \ | jq -r '.items[] | select(.status.containerStatuses[0].ready==false) | .metadata.name' \ | xargs -I{} sh -c 'echo "── {} ──"; kubectl -n staging logs {} --tail=20'
Затем превратите во что-то, что можно ревьюить:
#!/usr/bin/env bash
# scripts/staging-unready-pods.sh
# Печатает имя + последние 20 строк логов для каждого пода в staging, который не Ready.
set -euo pipefail
NAMESPACE="${1:-staging}"
kubectl -n "$NAMESPACE" get pods -o json \
| jq -r '.items[] | select(.status.containerStatuses[0].ready==false) | .metadata.name' \
| while read -r pod; do
echo "── $pod ──"
kubectl -n "$NAMESPACE" logs "$pod" --tail=20
done
Дельта маленькая, но реальная: set -euo pipefail, параметр для namespace, однострочный комментарий, разделитель для каждого пода. Ничему из этого не нужна LLM, и каждый следующий запуск воспроизводим без расхода запроса.
Что остаётся за CliAI
Не выпускайте всё. Одноразовые задачи — онбординг в новом репо, дебаг инцидента, чтение чужого конфига — именно та ad-hoc работа, ради которой CliAI и сделан. Если их преждевременно закоммитить, добавили мусор без добавления рычага.
См. также
- Git-задачи по-русски — многие из них вырастают в закоммиченные хелперы.
- Расписания cron — после того как скрипт появился, он часто живёт здесь.