Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.almond.bot/llms.txt

Use this file to discover all available pages before exploring further.

Requirements

  • Linux
  • Python 3.13+
  • (Optional) NVIDIA Jetson — if ZED cameras are used.

Install

Install the package using uv. pyroki and lerobot are sourced from Git and resolved automatically:
uv sync
Then activate the virtual environment so the axol CLI is on your path:
source .venv/bin/activate
You need to activate the environment in every new shell session. Alternatively, prefix every command with uv run (e.g. uv run axol can.setup) to skip activation.

Optional extras

Install optional dependency groups as needed:
ExtraContentsWhen to use
lerobotLeRobot (from GitHub)collect-data, run-policy
simviserteleop --sim
cudaJAX with CUDA 13 supportGPU-accelerated JAX (IK solver used by teleop); note that CPU is usually faster for the JAX IK solver
devOpenCV (headless)Development / debugging
uv sync --extra lerobot --extra sim                # teleoperation + data collection
uv sync --extra lerobot --extra cuda               # policy execution on GPU
uv sync --extra lerobot --extra sim --extra cuda   # everything

ZED Python bindings

The ZED Python bindings (pyzed) are not on PyPI and must be installed separately after the ZED SDK is installed:
axol zed.install
See zed.install for details.

First-run hardware setup

Before using any motor or robot commands, initialize the CAN hardware:
axol can.setup
sudo is invoked automatically where required. See can.setup for what it configures.