# CLI parity (`omnipy`)

`omnipy` follows `omnictl` command naming and behavior as closely as possible, with phased parity.

## Available command groups

- `config`
- `config talos`, `config history`
- `get`, `watch`, `apply`, `delete`
- `crd` (`list`, `show`, `explain`)
- `talos` (alias: `t`) thin proxy to `talosctl`
- `kubeconfig`, `talosconfig`, `machine-logs`, `audit-log`, `support`
- `serviceaccount`
- `cluster` (alias: `c`), `cluster machine`
- `jointoken`
- `infraprovider`
- `user`
- `download`

## Common examples

```bash
omnipy get Clusters.omni.sidero.dev
omnipy get Clusters.omni.sidero.dev my-cluster --explain -o yaml
omnipy crd list --query cluster
omnipy crd explain clusterstatus
omnipy cluster status my-cluster
omnipy c lock my-cluster
omnipy c unlock my-cluster
omnipy cluster machine lock <machine-id>
omnipy talos get members
omnipy jointoken list
omnipy serviceaccount list
omnipy user list
omnipy kubeconfig --cluster my-cluster > my-cluster.kubeconfig
omnipy talosconfig --cluster my-cluster > my-cluster.talosconfig
omnipy support --cluster my-cluster --output support.zip
omnipy audit-log 2026-01-01 2026-01-02 > audit.jsonl
omnipy download iso --arch amd64 --talos-version v1.9.0
```

## Task guides

For broader CLI and SDK workflows (resource operations, auth and identity, support/audit, and Talos access), see [Common Tasks](/common-tasks).

## Download workflow

`omnipy download` currently supports:

- installation media discovery (`--list`)
- schematic generation
- PXE URL output (`--pxe`)
- image download via signed `/image/*` requests

## Notes on parity status

Some `omnictl` UX paths are still being refined to exact behavioral parity (interactive prompts, edge-case formatting, and long-tail helper flows). The command surface is being expanded incrementally with test coverage.
