KDCube Apps bootstrap CLI
Project description
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)
- Run
kdcube-setup - Choose release-latest (pull prebuilt images)
- 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/, andlogs/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.confnginx_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 releaserelease-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 checkoutskip: 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)
- Run the wizard and choose a workdir (example:
/srv/kdcube-local). - 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
- 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 is80)
Notes
- The wizard does not overwrite existing config files in your workdir. It only fills placeholders in newly created files.
- Use
kdcube-setup --resetto 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_JSONin the generated.envcurl 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7018a84c3ddd3baea3106d60f3945ebb5c161e9bae5a26c530b03cd3038f56be
|
|
| MD5 |
417221c8c2a8d6bc2d3ea308771c4e3d
|
|
| BLAKE2b-256 |
174da6f2189523f4f9c1e1202cb3562dac465520feb96a967768937bb7709a44
|
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
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kdcube_cli-2026.3.7.326.tar.gz -
Subject digest:
7018a84c3ddd3baea3106d60f3945ebb5c161e9bae5a26c530b03cd3038f56be - Sigstore transparency entry: 1053801652
- Sigstore integration time:
-
Permalink:
kdcube/kdcube-ai-app@7c24802863ec3c496181f845761e5a153097f588 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/kdcube
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-kdcube-platform.yml@7c24802863ec3c496181f845761e5a153097f588 -
Trigger Event:
push
-
Statement type:
File details
Details for the file kdcube_cli-2026.3.7.326-py3-none-any.whl.
File metadata
- Download URL: kdcube_cli-2026.3.7.326-py3-none-any.whl
- Upload date:
- Size: 26.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c90bc5ab89cf45ca50889d761d029e04c63c4455a8ca496007239af01210ae7f
|
|
| MD5 |
fc8777e1db937d67d2001cbea7bb07be
|
|
| BLAKE2b-256 |
8030a59bc53c63576e1864c8d7115ae91a60621254cc9065e2da505ae2dbf94c
|
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
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kdcube_cli-2026.3.7.326-py3-none-any.whl -
Subject digest:
c90bc5ab89cf45ca50889d761d029e04c63c4455a8ca496007239af01210ae7f - Sigstore transparency entry: 1053801654
- Sigstore integration time:
-
Permalink:
kdcube/kdcube-ai-app@7c24802863ec3c496181f845761e5a153097f588 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/kdcube
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-kdcube-platform.yml@7c24802863ec3c496181f845761e5a153097f588 -
Trigger Event:
push
-
Statement type: