feat: автодополнение и детект режима запуска

- Добавлены служебные команды __list-templates/__list-vars и генерация completion для bash/
    zsh/fish
  - Введён детект режимов запуска (npx/local/direct/global) и применён в проверке обновлений
  - Обновлены help и документация (README, FEATURES)
This commit is contained in:
2026-01-27 13:07:44 +03:00
parent bdb7180d92
commit f0daed180f
7 changed files with 332 additions and 14 deletions

View File

@@ -40,13 +40,32 @@
- `-h`/`--help` — вывод справки.
- `--skip-update` — запуск без проверки обновлений.
## Автодополнение
- Генерация скрипта автодополнения для bash/zsh/fish: `gromlab-create completion --shell <shell>`.
- Автодополнение доступно только для глобальной установки CLI.
- Автодополнение шаблонов из `.templates/` и переменных `--<var>` выбранного шаблона (кроме `name`).
## Обновления CLI
- При запуске (не через `npx`) проверяется доступность новой версии в npm.
- Если пользователь отвечает «нет», повторный запрос появится через 24 часа.
- В неинтерактивном режиме (без TTY) запрос не показывается.
## Режимы запуска
- CLI определяет режим запуска: `npx`, `local`, `direct`, `global`.
- `npx` — запуск через `npx`/`npm exec` (проверка обновлений не выполняется).
- `local` — запуск из `node_modules/.bin`.
- `direct` — запуск через `node ./dist/cli.js` в текущем проекте.
- `global` — глобально установленный CLI.
## Бины
- Основной бин: `gromlab-create`.
- Дополнительный алиас: `create`.
## Служебные команды
- `__list-templates` — выводит список доступных шаблонов (для автодополнения).
- `__list-vars <шаблон>` — выводит переменные выбранного шаблона (кроме `name`).