> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cadenzalabs.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> What Cadenza CLI is and how the pieces fit together.

**Cadenza CLI** is a command-line platform for physical-AI developers. You scaffold a
robotics project, describe a multi-phase mission as JSON, run it in simulation,
and turn the logged rollouts into fine-tuning data for a vision-language-action
(VLA) policy, all from one binary called `cadenza`.

It pairs with the **[Cadenza SDK](/sdk/introduction)** (`cadenza-lab`), the Python
library that provides the simulator, robots, action library, and inference stack
the CLI drives under the hood.

## What you can do

<CardGroup cols={2}>
  <Card title="Scaffold projects" icon="folder-plus" href="/cli/projects-and-environments">
    `mkdir` / `env init` generate a project with an `env.json` mission spec.
  </Card>

  <Card title="Run missions" icon="play" href="/cli/running-missions">
    `env run` executes a phase-aware mission, logs every tick, and scores it.
  </Card>

  <Card title="Build actions" icon="hand" href="/cli/actions">
    `env action` creates reusable robot actions, synced to your account.
  </Card>

  <Card title="Fine-tune" icon="brain" href="/cli/training-and-lora">
    `env finetune` / `env lora` turn rollouts into VLA training data and adapters.
  </Card>

  <Card title="Residual RL & distill" icon="wand-magic-sparkles" href="/cli/residual-and-distill">
    `env residual` / `env distill` adapt a frozen base, then shrink it for onboard.
  </Card>

  <Card title="Adapt a VLA" icon="robot" href="/cli/vla-mode">
    `env vla` runs the governed GRD loop over a standalone model's LoRA adapter.
  </Card>

  <Card title="Govern deployments" icon="shield-check" href="/cli/governance">
    Every learned artifact passes a `DEPLOY \| BLOCK \| NEEDS_DATA` gate with rollback.
  </Card>
</CardGroup>

## How it runs

The `cadenza` binary works two ways:

* **Interactive shell.** Run `cadenza` with no arguments to get a persistent
  prompt with tab-completion. Press `Ctrl+C` to exit.
* **Scriptable.** Pass a command as arguments (`cadenza env run my-project --headless`)
  to execute it once and exit. This is what you use in scripts and CI.

Every example in these docs works in either mode. Inside the shell, drop the
leading `cadenza`.

<Note>
  Simulation and fine-tuning features depend on optional extras (`gym`, `lora`).
  See [Configuration](/cli-setup/configuration).
</Note>

## Next steps

<CardGroup cols={3}>
  <Card title="Install" icon="download" href="/cli-setup/installation" />

  <Card title="Quickstart" icon="bolt" href="/cli-setup/quickstart" />

  <Card title="Sign in" icon="key" href="/cli-setup/authentication" />
</CardGroup>
