AiHummer
Русский
Войти
v1.0.x
{ }Swagger

Справочник CLI

v1.0.x · обновлено 2026-07-07

Командная утилита aihummer управляет host-native установкой: запускает и обновляет gateway (сама установка выполняется по персональной ссылке из личного кабинета), управляет systemd-сервисом gateway, запускает диагностику, обрабатывает бэкапы, читает и пишет настройки control-plane и подписывает лицензии. На этой странице перечислены все команды.

Команды

Команда Что делает
up / install Запустить systemd-сервис gateway (systemctl start). Ничего не устанавливает — установку выполняет установочный скрипт по персональной ссылке.
update [--check] Обновить до последнего релиза (проверка подписи + замена бинарника + перезапуск); --check только сообщает, есть ли обновление.
restart Перезапустить сервис gateway (systemctl restart).
stop Остановить сервис gateway (systemctl stop).
logs [unit] Следить за журналом одного systemd-юнита (journalctl -u); по умолчанию — юнит gateway.
status Опросить готовность gateway (/readyz).
doctor Запустить диагностику (сервис активен + gateway готов).
backup [dir] pg_dump Postgres (state plane) в файл; без аргумента — в каталог по умолчанию.
restore <file> Восстановить Postgres из файла дампа, созданного backup.
uninstall [flags] Удалить установку (флаги ниже). Требует root — запускайте через sudo.
set-password / admin-password Установить/сгенерировать локальный пароль администратора ([--login admin] [--password X]).
settings {set|get|list} Читать/писать настройки control-plane в БД — так параметры Каталога настроек задаются из CLI вместо gateway.env.
license {keygen|sign|show <token>} Управление лицензиями: генерация ключа, подпись, декодирование и проверка переданного токена.
loadtest Запустить нагрузочный тест против gateway.
plugin {init|validate|keygen|package|sign|publish} SDK плагинов: каркас, валидация, ключи, упаковка, подпись и публикация (private/public).
version Вывести версию.
help Показать справку.

Флаги uninstall

Флаг Эффект
--purge Также удалить данные (полное удаление).
--yes Пропустить запрос подтверждения.
--no-backup Не делать бэкап перед удалением.
--backup-dir <dir> Записать бэкап перед удалением в этот каталог.

Примеры использования

Установка и запуск

Установку выполняет персональная ссылка из личного кабинета (см. Установку); после неё CLI запускает и проверяет сервис:

sudo aihummer up
aihummer status

Обновление

# Только проверить наличие нового релиза
aihummer update --check

# Применить обновление
sudo aihummer update

Управление сервисом и логи

Команды действуют на один systemd-юнит gateway (AIHUMMER_SERVICE, по умолчанию aihummer-gateway); logs принимает имя любого systemd-юнита.

sudo aihummer restart
aihummer logs                 # журнал юнита gateway (по умолчанию)
aihummer logs aihummer-stt    # журнал другого systemd-юнита
sudo aihummer stop

Диагностика

aihummer doctor

Бэкап и восстановление

backup делает pg_dump Postgres (state plane) в файл; restore принимает этот файл дампа.

aihummer backup /var/backups/aihummer
aihummer restore /var/backups/aihummer/aihummer-2026-07-05.sql

[!TIP] Postgres — источник истины, но AIHUMMER_MASTER_KEY и каталог blob нужно бэкапить отдельно: без мастер-ключа зашифрованные секреты восстановить нельзя.

Установка пароля администратора

Команда принимает флаги [--login admin] [--password X] и требует AIHUMMER_DATABASE_URL — обычно он подхватывается из gateway.env, когда команда запускается от пользователя установки или через sudo.

sudo aihummer set-password --login admin

Настройки control-plane

settings читает и пишет параметры Каталога настроек прямо в БД — тот же источник, что и веб-админка (Управление → Настройки). Именно так параметры Каталога задаются из CLI: значения в gateway.env для них игнорируются.

aihummer settings set AIHUMMER_STT_URL http://127.0.0.1:8001
aihummer settings get AIHUMMER_STT_URL
aihummer settings list

settings list показывает только пользовательские ключи Каталога (системные и служебные скрыты); у каждого ключа помечен источник — [db] для заданных вами значений и [unset] со значением по умолчанию.

Лицензии

license show требует аргумент <token> и переменную AIHUMMER_LICENSE_PUBKEY: команда декодирует и проверяет переданный токен, а не показывает текущую лицензию инстанса.

aihummer license keygen                # сгенерировать ключ подписи
aihummer license sign                  # подписать лицензию
aihummer license show <token>          # декодировать и проверить токен

Нагрузочный тест

aihummer loadtest

Плагины

aihummer plugin init <kind>            # каркас манифеста (connector|service|openapi|mcp)
aihummer plugin validate manifest.json # проверить манифест по контракту
aihummer plugin keygen                 # ed25519-ключ автора (.key + .pub)
aihummer plugin package ./my-plugin    # собрать tarball + .sha256
aihummer plugin sign --key author.key --manifest ./my-plugin/manifest.json my-plugin-1.0.0.tar.gz

# Публикация: приватно (в свой инстанс) или публично (PR в каталог)
aihummer plugin publish --private --instance https://host --token <admin> my-plugin-1.0.0.tar.gz
aihummer plugin publish --public --dir ./my-plugin --key author.key \
  --artifact-url https://you.example/my-plugin-1.0.0.tar.gz --publisher you \
  --description "..." --icon https://you.example/icon.svg

Полное описание SDK и обоих режимов публикации — в Plugin SDK и Публикации плагина.

[!WARNING] uninstall требует root: запускайте sudo aihummer uninstall. А sudo aihummer uninstall --purge --yes удаляет данные и пропускает подтверждение — сначала убедитесь, что у вас есть проверенный бэкап.

Окружение

Переменные, которые читает сама утилита aihummer:

Переменная Назначение
AIHUMMER_SERVICE Имя systemd-юнита gateway (по умолчанию aihummer-gateway) — цель для up/restart/stop/logs.
AIHUMMER_GATEWAY_URL URL gateway для status/doctor/loadtest (по умолчанию http://127.0.0.1:8780).
AIHUMMER_DATABASE_URL DSN Postgres — нужен backup/restore/set-password/settings.
AIHUMMER_REPO Репозиторий релизов для update (fallback, когда не задан CDN AIHUMMER_DOWNLOAD_BASE_URL).

Большинству команд нужен root (systemctl) — запускайте через sudo.

Куда дальше