cyclo_manager CLI: pip-installable launcher for cyclo_manager server and UI containers. Run 'cyclo_manager up' to start Docker stack.
Project description
cyclo_manager CLI
cyclo_manager CLI is a pip-installable launcher for the cyclo_manager stack. It starts the cyclo_manager server, web UI, Zenoh daemon, and noVNC server as Docker containers using a single command.
Prerequisites
- Docker with Docker Compose (v2)
- Python 3.10+
Installation
From the cyclo_manager_cli directory:
pip install .
Or install from a wheel:
python -m build --wheel
pip install dist/cyclo_manager-*.whl
If the cyclo_manager command is not found, add the pip scripts directory to your PATH:
export PATH="$HOME/.local/bin:$PATH"
To make it permanent (e.g. on Linux):
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
Alternatively, run via Python module:
python3 -m cyclo_manager_cli.cli up
Commands
| Command | Description |
|---|---|
cyclo_manager up |
Start API + web UI; create Zenoh + noVNC containers without starting them (start later from UI or docker start) |
cyclo_manager up -c /path/to/config.yml |
Start with a custom config file (creates a copy from the bundled config if the path does not exist) |
cyclo_manager up -r 35 |
Set ROS2 domain ID (default: 30) |
cyclo_manager up --pull |
Pull images before starting |
cyclo_manager down |
Stop all cyclo_manager stack containers |
cyclo_manager --help |
Show help |
What runs
Running cyclo_manager up (from the packaged docker-compose.yml):
- Started immediately: cyclo_manager (FastAPI API), cyclo_manager_ui (Next.js)
- Created but not started: rmw_zenoh (
zenoh_daemon), novnc-server — images are pulled (with--pull), containers exist so you can start them from the Control UI ordocker start zenoh_daemon/docker start novnc-serverwhen needed.
The CLI passes the config path via CYCLO_MANAGER_CONFIG_FILE and optionally ROS_DOMAIN_ID (e.g. cyclo_manager up -r 35).
Config
By default, cyclo_manager up uses the bundled config at cyclo_manager_cli/cyclo_manager_cli/config/config.yml. It defines:
- containers – Container names and agent socket paths (e.g.
ai_worker,physical_ai_server)
Use -c /path/to/config.yml to supply your own file. If the file does not exist, the CLI copies the bundled config to that path and then uses it.
Access
After cyclo_manager up:
Running from the repository
To run cyclo_manager from the repo root (e.g. for development) without the CLI:
# From repository root
docker compose -f docker-compose.dev.yml up -d
This uses the root config.yml and mounts agent sockets from /var/run/robotis/agent_sockets. See the main README for architecture and API details.
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 Distributions
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 cyclo_manager-0.1.0.dev0-py3-none-any.whl.
File metadata
- Download URL: cyclo_manager-0.1.0.dev0-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00f15ba040e7dd951b8a4bd821a82acb45a04dac6175b93ef3a5793c4562f25e
|
|
| MD5 |
87af9a0c47adf272bd4c8ba7fcdd9982
|
|
| BLAKE2b-256 |
ba5355db696abebb7760d9900d5988e925109820747b58d3729f490fc2fa0417
|