Skip to main content

HomeConsole CLI (hc) — управление платформой через HTTP API

Project description

HomeConsole CLI (hc)

CLI-утилита для управления платформой HomeConsole исключительно через HTTP API CoreRuntime.

Установка (локально)

cd home-console-cli
python -m venv .venv
source .venv/bin/activate
pip install -U pip
pip install -e .

Проверка:

hc --help
hc nav

Конфигурация

Файл: ~/.config/hc/config.toml

[core]
host = "localhost"
port = 8080
token = "jwt-token-here"
verify_ssl = true

[display]
color = true
emoji = true

Токен берётся по приоритету:

  • --token (если у команды есть такой флаг)
  • переменная окружения HC_TOKEN
  • config.toml

Быстрый старт

Подключиться и сохранить конфиг:

hc connect localhost --port 8080

Статус:

hc status

Список плагинов:

hc plugin list

Команды

  • hc connect <host> [--port 8080] [--token TOKEN]
  • hc status
  • hc install <name> [--version X.Y.Z]
  • hc remove <name> [--force]
  • hc plugin list|start|stop|info
  • hc module list|status
  • hc logs [--follow] [--module <name>] [--level debug|info|warning|error]
  • hc search <query>
  • hc setup
  • hc deploy (по умолчанию: build+push+rollout+wait) и hc deploy ... (тонкие подкоманды)
  • hc deploy platform (локальный dev flow)
  • hc deploy platform --mode image --image ghcr.io/home-console/platform-home-console --tag latest (image-only deploy)
  • hc deploy stack dev / hc deploy stack prod (полный stack для dev/prod)
  • hc update core ... (обновление core-runtime до нового image:tag)
  • hc shell
  • hc nav [section ...] (удобная навигация по командам: hc nav deploy, hc nav deploy dev)

Навигация по командам (без запоминания)

hc nav
hc nav deploy
hc nav deploy dev

Подсказка: на любом уровне можно проваливаться дальше и смотреть доступные разделы.

Быстрый dev up по профилям

hc deploy dev up --profile base
hc deploy dev up --profile platform
hc deploy dev up --profile cache
hc deploy dev up --profile db

Профили:

  • base = core+proxy
  • platform = core+proxy+platform
  • cache = core+proxy+platform+cache
  • db = core+proxy+platform+cache+db

Deploy “одной командой”

По умолчанию hc deploy делает полный жизненный цикл:

  • build: docker build -t <image>:<tag>
  • push: docker push <image>:<tag>
  • rollout: docker compose pull core-runtime && docker compose up -d
  • wait: ждёт healthy (проверка curl внутри контейнера)

Полезные флаги:

  • --no-build, --no-push, --no-rollout
  • --wait/--no-wait (по умолчанию --wait)
  • --timeout 180 (сек), --interval 1.0 (сек)
  • --health-url http://localhost:8000/api/v1/monitor/health (внутри контейнера)
  • --quiet (минимальный вывод)
  • --json (машинный вывод; удобно для CI/скриптов)

Логи core-runtime (для диагностики таймаута):

  • hc deploy core logs -f

Deploy платформы

Локальный dev flow:

hc deploy platform

Только подготовить статику, без запуска стека:

hc deploy platform --no-start

Image-only deploy через GHCR:

hc deploy platform --mode image --image ghcr.io/home-console/platform-home-console --tag latest

Этот вариант использует platform-home-console/docker-compose.image.yml и PLATFORM_IMAGE.

Если “нет команды hc deploy

Почти всегда это означает, что в окружении стоит не тот пакет, который предоставляет команду hc.

Проверка (в активированном venv):

python -c "import hc, inspect; print(hc.__file__)"

Должно указывать на .../home-console-cli/hc/__init__.py (или site-packages homeconsole-cli).

Ошибки и UX

  • Traceback пользователю не показывается.
  • Все ошибки печатаются через Rich: [red]Ошибка: ...[/red].
  • При ошибке утилита завершает выполнение с кодом 1.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

homeconsole_cli-0.0.2.tar.gz (84.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

homeconsole_cli-0.0.2-py3-none-any.whl (105.5 kB view details)

Uploaded Python 3

File details

Details for the file homeconsole_cli-0.0.2.tar.gz.

File metadata

  • Download URL: homeconsole_cli-0.0.2.tar.gz
  • Upload date:
  • Size: 84.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for homeconsole_cli-0.0.2.tar.gz
Algorithm Hash digest
SHA256 c0ae4bc49924ab3d6e5a3901b07dcaafa1c25270458d40f107445f2d6db50963
MD5 9877f9568d34fb1936811c09ea8712f8
BLAKE2b-256 2788c4bf10eef6012ec5f8f9057170e5f0d031b2f6454ac56095f13446f05482

See more details on using hashes here.

File details

Details for the file homeconsole_cli-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: homeconsole_cli-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 105.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for homeconsole_cli-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8724768ab1052f22e29c7d92dc149cac8deac5c8832005ea7c2ba4ca523ccf3e
MD5 0d15a0a1e7582dfa273f25e062a2f6de
BLAKE2b-256 1a1eae6fb183375d3f438cf3c3a5a73f6bef56c8296d109721a8c10f80db82f0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page