# hanzo
The Rust **SDK + CLI** for the [Hanzo](https://hanzo.ai) ecosystem — one crate, one `hanzo`
command. The library is the SDK; the `hanzo` binary is a thin shell over it.
```bash
cargo install hanzo # lean: no CUDA/Vulkan, just the SDK + CLI
hanzo models
hanzo chat -m default "explain rust ownership in one line"
hanzo embed "hello world"
```
```rust
let hanzo = hanzo::Client::from_env(); // HANZO_BASE_URL, HANZO_API_KEY
let reply = hanzo.engine().chat("default", &[hanzo::msg("user", "hi")])?;
println!("{}", reply.text());
```
## Ecosystem
`hanzo` is the front door to the whole stack and stays at parity with
[`hanzoai/python-sdk`](https://github.com/hanzoai/python-sdk):
| Inference engine (mistral.rs fork) | [`hanzo-engine`](https://github.com/hanzoai/engine) | ✅ `engine()` / `hanzo chat·embed·models` |
| Tensor / ML backend (candle fork) | `hanzo-ml` (0.9.2) | (used by the engine) |
| Coding tool | [`hanzoai/dev`](https://github.com/hanzoai/dev) | ⏳ `dev()` — wiring next |
| KMS · IAM · … | platform services (ZAP) | ⏳ added as each is wired — **no stub commands** |
New service groups are added behind `Client` only when they are really wired to their
service (over HTTP today, the node's native **ZAP** transport where applicable) — never as
placeholder commands.
License: MIT