| Command | Description |
|---|---|
create | Create a recipe in a project from a JSON request body. |
delete | Delete a recipe by ID. |
download | Download a recipe’s config to a local JSON file for editing. |
generate-template | Print a ready-to-edit recipe request body for the given recipe type. |
get | Show a single recipe by ID. |
list | List recipes in a project, optionally sorted. |
update | Rename a recipe, or replace its config from a JSON body. |
CREATE
Create a recipe in a project from a JSON request body.oumi-cli recipes create [OPTIONS]
| Option | Type | Required | Description |
|---|---|---|---|
--project | str | Project to create the recipe in; falls back to OUMI_PROJECT_ID or the active profile. | |
--type | choice | ✓ | Recipe kind to create, a guard that must agree with the body’s recipeConfig.type discriminator. Templates from ‘generate-template --type <type>’ already set this correctly; pass the same --type you generated with. One of: training, evaluate, synthesis. |
--input-json | str | Request body as an inline JSON string. Pass exactly one of --input-json or --input-json-file. | |
--input-json-file | path | Path to a file holding the request body as JSON. Pass exactly one of --input-json or --input-json-file. |
DELETE
Delete a recipe by ID.oumi-cli recipes delete [OPTIONS] {recipe_id}
| Argument | Type | Required | Description |
|---|---|---|---|
RECIPE_ID | int | ✓ | ID of the recipe (see recipes list). |
| Option | Type | Required | Description |
|---|---|---|---|
--project | str | Project to scope the operation to; falls back to OUMI_PROJECT_ID or the active profile. | |
--force | flag | Delete without confirmation prompt. | |
--yes | flag | Delete without confirmation prompt (alias for --force). |
DOWNLOAD
Download a recipe’s config to a local JSON file for editing.oumi-cli recipes download [OPTIONS] {recipe_id}
| Argument | Type | Required | Description |
|---|---|---|---|
RECIPE_ID | int | ✓ | ID of the recipe to download (see recipes list). |
| Option | Type | Required | Description |
|---|---|---|---|
--project | str | Project to scope the operation to; falls back to OUMI_PROJECT_ID or the active profile. | |
--out | path | Destination file or directory. Defaults to ./recipe-<id>.json in the current directory. |
GENERATE-TEMPLATE
Print a ready-to-edit recipe request body for the given recipe type.oumi-cli recipes generate-template [OPTIONS]
| Option | Type | Required | Description |
|---|---|---|---|
--type | choice | ✓ | Recipe kind to generate a template for; sets recipeConfig.type in the output. One of: training, evaluate, synthesis. |
GET
Show a single recipe by ID.oumi-cli recipes get [OPTIONS] {recipe_id}
| Argument | Type | Required | Description |
|---|---|---|---|
RECIPE_ID | int | ✓ | ID of the recipe (see recipes list). |
| Option | Type | Required | Description |
|---|---|---|---|
--project | str | Project to scope the operation to; falls back to OUMI_PROJECT_ID or the active profile. |
LIST
List recipes in a project, optionally sorted.oumi-cli recipes list [OPTIONS]
| Option | Type | Required | Description |
|---|---|---|---|
--project | str | Project to scope the operation to; falls back to OUMI_PROJECT_ID or the active profile. | |
--limit | int range | Return at most N recipes (default 100). The CLI fetches and loops over pages internally; you never pass a page token. | |
--all | flag | Return every recipe, looping until the cursor is exhausted (bounded by --max-items). Mutually exclusive with --limit. | |
--max-items | int range | Hard safety cap for --all (default 10000). | |
--sort-by | choice | Field to sort by. One of: created_at, updated_at. | |
--sort-direction | choice | Sort order (asc is oldest-first). |
UPDATE
Rename a recipe, or replace its config from a JSON body.oumi-cli recipes update [OPTIONS] {recipe_id}
| Argument | Type | Required | Description |
|---|---|---|---|
RECIPE_ID | int | ✓ | ID of the recipe (see recipes list). |
| Option | Type | Required | Description |
|---|---|---|---|
--project | str | Project to scope the operation to; falls back to OUMI_PROJECT_ID or the active profile. | |
--display-name | str | New display name for the recipe. Renames only. Does not touch recipeConfig. Mutually exclusive with --input-json*. | |
--input-json | str | Full replacement request body as an inline JSON string; creates a new recipe version. Exclusive of --display-name. | |
--input-json-file | path | Path to a file holding the full replacement request body as JSON; creates a new recipe version. Exclusive of --display-name. |