One binary, one login
Everything runs through a single binary,cargo-ai, installed and authenticated once (see the Quickstart) — every mode below reuses that same session:
- Imperative commands —
cargo-ai orchestration run create,cargo-ai storage model list, … operate the platform directly. - The project ships inside the same binary as
cargo-ai project(plan,deploy,refresh,destroy). There is no separate install or login. - Skills are prompt packages that teach an AI agent to call those same commands for you.
project is a command group of the CLI. The real choice is which mode fits the task.
cargo-ai project used to be called cargo-ai cdk, and cdk still works as
an alias — nothing you have written down needs changing. The TypeScript
library you import from is still @cargo-ai/cdk.The three modes
How they fit together
- Declarative is the default for anything you keep. Connectors, models, tools, agents, and plays belong in a project so they’re reproducible. Start with the Quickstart.
- Imperative is for operating what you’ve deployed. Once a tool or play exists, you run and monitor it with CLI commands — one-offs, CI jobs, data pulls.
- Skills sit on top of the CLI. They’re the imperative surface, driven by an agent instead of your fingers. See Skills.
A quick rule of thumb: if you’d commit it to git, define it in the
project. If you’d type it once, use a command. If you’d rather
describe it than remember the flags, use Skills.
Next steps
Quickstart
Deploy your first workspace from a project.
Project layout
How a folder of define* files becomes a workspace.
CLI
The imperative command surface — runs, batches, queries, and more.
Skills
Drive the CLI with natural language through an AI agent.

