Skip to main content

KDCube Apps bootstrap CLI

Project description

KDCube CLI

KDCube CLI

Bootstrap installer for the KDCube platform stack. This package clones the repository (if needed) and launches the guided setup wizard.


Prerequisites

macOS

  • Python 3.9+ (Homebrew recommended)
  • Git (Xcode Command Line Tools or Homebrew)
  • Docker Desktop (includes Docker Compose)

Windows

  • Python 3.9+
  • Git for Windows
  • Docker Desktop (enable WSL2 backend)

Linux

  • Python 3.9+
  • Git
  • Docker Engine + Docker Compose plugin

Install

pipx install kdcube-cli

Alternative (pip):

python -m pip install --user kdcube-cli

Run

kdcube-setup

Quick start (new users)

  1. Run kdcube-setup
  2. Choose release-latest (pull prebuilt images)
  3. Answer yes to “Run docker compose now?”

That will bring up the stack with no local build required.

Use a local checkout (dev)

kdcube-setup --path /Users/you/src/kdcube/kdcube-ai-app

At “Install source”:

  • upstream → build images from your local repo
  • skip → keep the repo as-is (no pull) and use it for build/run

If you choose upstream, answer yes to “Build core platform images?” to rebuild from your local changes.

Re-run prompts (edit existing values):

kdcube-setup --reset

Clean local Docker images/cache:

kdcube-setup --clean

Tip: if kdcube-setup is not on your PATH, run:

python -m kdcube_cli.cli

What the wizard does (today)

  • Creates a workdir with config/, data/, and logs/ folders
  • Writes the compose env files into config/ (only if missing; it won’t overwrite existing files)
  • Copies nginx configs into config/ for runtime overrides:
    • nginx_ui.conf
    • nginx_proxy.conf
  • Generates frontend runtime config
  • Creates local data folders for Postgres/Redis/exec workspace/bundle storage
  • Optionally builds images and runs docker compose up -d --build

Current scope: the wizard is optimized for docker‑compose (all‑in‑one). It creates a workdir (default: ~/.kdcube/kdcube-runtime) and lets you:

  • generate config/data/log folders
  • choose release (pull from DockerHub) or upstream (build locally)
  • start docker compose (optional)

Install source options:

  • release-latest: pull prebuilt images for the latest release
  • release-installed: pull prebuilt images for the last installed release (if known)
  • release-tag: pull prebuilt images for a specific version (platform.ref)
  • upstream: build images from the current git checkout
  • skip: keep current repo/workdir without pulling or changing versions

Tip: you can select the install source using the ↑/↓ arrow keys and Enter.

Example workdir layout:

~/.kdcube/kdcube-runtime
├─ config/
│  ├─ .env
│  ├─ .env.ingress
│  ├─ .env.proc
│  ├─ .env.metrics
│  ├─ .env.postgres.setup
│  ├─ .env.proxylogin
│  ├─ frontend.config.hardcoded.json
│  ├─ nginx_ui.conf
│  └─ nginx_proxy.conf
├─ data/
│  ├─ postgres/
│  ├─ redis/
│  ├─ exec-workspace/
│  └─ bundle-storage/
└─ logs/
   ├─ chat-ingress/
   └─ chat-proc/

Compose usage (recommended)

  1. Run the wizard and choose a workdir (example: /srv/kdcube-local).
  2. It will generate:
    • /srv/kdcube-local/config/.env
    • /srv/kdcube-local/config/.env.ingress
    • /srv/kdcube-local/config/.env.proc
    • /srv/kdcube-local/config/.env.metrics
    • /srv/kdcube-local/config/.env.postgres.setup
    • /srv/kdcube-local/config/.env.proxylogin
    • /srv/kdcube-local/config/frontend.config.hardcoded.json
    • /srv/kdcube-local/config/nginx_ui.conf
    • /srv/kdcube-local/config/nginx_proxy.conf
  3. Start compose from deployment/docker/all_in_one_kdcube:
docker compose --env-file /srv/kdcube-local/config/.env up -d --build

Open the UI:

  • http://localhost:${KDCUBE_UI_PORT}/chatbot/chat (via proxy, omit :${KDCUBE_UI_PORT} if it is 80)

Notes

  • The wizard does not overwrite existing config files in your workdir. It only fills placeholders in newly created files.
  • Use kdcube-setup --reset to re-enter values without deleting files.
  • Config upgrades/migrations will be added later when configs are versioned.

Tip: you can edit workdir/config/nginx_ui.conf and workdir/config/nginx_proxy.conf without rebuilding images (they are mounted into the containers at runtime).

UI config source of truth

The web UI loads its runtime config from /config.json inside the web-ui container. Docker compose mounts the host file defined by PATH_TO_FRONTEND_CONFIG_JSON to:

/usr/share/nginx/html/config.json

If the UI is calling the wrong tenant/project, check:

  • PATH_TO_FRONTEND_CONFIG_JSON in the generated .env
  • curl http://localhost:<ui_port>/config.json

See the dev‑host guide on GitHub: https://github.com/kdcube/kdcube-ai-app/blob/main/app/ai-app/docs/service/environment/setup-dev-env-README.md

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

kdcube_cli-2026.3.7.326.tar.gz (27.2 kB view details)

Uploaded Source

Built Distribution

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

kdcube_cli-2026.3.7.326-py3-none-any.whl (26.5 kB view details)

Uploaded Python 3

File details

Details for the file kdcube_cli-2026.3.7.326.tar.gz.

File metadata

  • Download URL: kdcube_cli-2026.3.7.326.tar.gz
  • Upload date:
  • Size: 27.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kdcube_cli-2026.3.7.326.tar.gz
Algorithm Hash digest
SHA256 7018a84c3ddd3baea3106d60f3945ebb5c161e9bae5a26c530b03cd3038f56be
MD5 417221c8c2a8d6bc2d3ea308771c4e3d
BLAKE2b-256 174da6f2189523f4f9c1e1202cb3562dac465520feb96a967768937bb7709a44

See more details on using hashes here.

Provenance

The following attestation bundles were made for kdcube_cli-2026.3.7.326.tar.gz:

Publisher: release-kdcube-platform.yml on kdcube/kdcube-ai-app

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kdcube_cli-2026.3.7.326-py3-none-any.whl.

File metadata

File hashes

Hashes for kdcube_cli-2026.3.7.326-py3-none-any.whl
Algorithm Hash digest
SHA256 c90bc5ab89cf45ca50889d761d029e04c63c4455a8ca496007239af01210ae7f
MD5 fc8777e1db937d67d2001cbea7bb07be
BLAKE2b-256 8030a59bc53c63576e1864c8d7115ae91a60621254cc9065e2da505ae2dbf94c

See more details on using hashes here.

Provenance

The following attestation bundles were made for kdcube_cli-2026.3.7.326-py3-none-any.whl:

Publisher: release-kdcube-platform.yml on kdcube/kdcube-ai-app

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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