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

# Referencia del CLI

> Todos los comandos de riqra-theme y sus opciones.

```text theme={null}
riqra-theme — Riqra storefront theme CLI

Usage: riqra-theme <command> [options]

Commands:
  login    Validate and store a theme access token
  logout   Remove the stored token for an API URL
  init     Scaffold a new theme from the Origin skeleton
  list     List the themes uploaded by your organization
  check    Validate the theme locally
  push     Validate, zip and upload the theme
  dev      Watch the theme and live-push a draft preview
  pull     Download a theme's files from the server
```

Opciones globales: `-h, --help` (también por comando: `riqra-theme push --help`) y `-v, --version`.

## Variables de entorno

| Variable            | Uso                                                                            |
| ------------------- | ------------------------------------------------------------------------------ |
| `RIQRA_THEME_TOKEN` | Token de acceso (`riqthm_...`); tiene prioridad sobre el guardado. Útil en CI. |
| `RIQRA_API_URL`     | URL base de la API (por defecto `https://api.riqra.com`).                      |

Los comandos que hablan con la API (`login`, `logout`, `list`, `push`, `dev`, `pull`) también aceptan `--api <url>` y `--token <riqthm_...>` como overrides puntuales.

## login

```bash theme={null}
riqra-theme login [--token <riqthm_...>] [--api <url>]
```

Valida un token de acceso contra la API y lo guarda para esa URL en `~/.riqra/credentials.json` (un token por URL de API). El token sale de `--token`, de `RIQRA_THEME_TOKEN` o de un prompt interactivo. Al validar imprime la organización, la tienda y la expiración del token.

## logout

```bash theme={null}
riqra-theme logout [--api <url>]
```

Elimina el token guardado para la URL de API.

## init

```bash theme={null}
riqra-theme init [name] [--path <dir>]
```

Genera un tema nuevo a partir del esqueleto de Origin. Funciona sin conexión.

* `name` — carpeta destino (por defecto `mi-tema`); `--path` la reemplaza.
* Se niega a escribir sobre un directorio no vacío.

## list

```bash theme={null}
riqra-theme list [--json]
```

Lista los temas subidos por tu organización: slug, nombre, tipo, versión (`versionHash` corto) y fecha de actualización.

## check

```bash theme={null}
riqra-theme check [--path <dir>] [--json]
```

Valida el árbol del tema localmente — estructura, parseo del Liquid, `{% schema %}`, JSON de plantillas y referencias cruzadas. Es la misma validación que ejecuta el servidor al subir. Sale con código 1 si hay errores; `--json` imprime los diagnósticos como JSON.

## push

```bash theme={null}
riqra-theme push [--path <dir>] [--theme <slug>] [--name <name>] [--json]
```

Valida localmente, comprime el tema y lo sube.

* El slug viene de `--theme` o de `riqra.theme.json`; un push exitoso lo guarda de vuelta ahí.
* `--name` fija el nombre visible del tema (por defecto, el slug).
* Si el servidor rechaza la subida (`422`), imprime los diagnósticos del servidor y sale con código 1.

## dev

```bash theme={null}
riqra-theme dev [--path <dir>] [--no-open]
```

Sube una instalación en borrador y re-sube en cada guardado. La URL de vista previa renderiza el borrador y la plataforma lo recarga sola tras cada push. En macOS abre la vista previa en el navegador, salvo con `--no-open`. Ctrl-C para salir.

El tema de desarrollo y su borrador expiran a los 7 días; cada push renueva el plazo.

## pull

```bash theme={null}
riqra-theme pull [--theme <slug>] [--path <dir>] [--force]
```

Descarga los archivos del tema desde el servidor.

* El slug viene de `--theme` o del `riqra.theme.json` del directorio.
* No sobreescribe archivos con modificaciones locales (los lista y sale con código 1); usa `--force` para forzarlo.
