# Comandos y estado de creación con IA

<PageBadges />

## Referencia de comandos

El modo AI acepta solicitudes en lenguaje natural y comandos con barra. Todo texto sin prefijo se
envía al modelo; cada comando determinista empieza por `/`. Por ejemplo, usa `/preview`, no `preview`.

| Comando                        | Propósito                                                                     |
| ------------------------------ | ----------------------------------------------------------------------------- |
| `/help`                        | Muestra el resumen alineado de comandos AI.                                   |
| `/status`                      | Muestra esquema, borrador, modelo, autenticación, política, actividad y cola. |
| `/providers`                   | Lista proveedores Pi, métodos de autenticación y cantidades de modelos.       |
| `/models <provider>`           | Lista los identificadores de modelos de un proveedor.                         |
| `/login <provider> <method>`   | Autentica mediante el flujo `api_key` u `oauth` definido por Pi.              |
| `/model [provider/model]`      | Abre el selector o elige un proveedor y modelo explícitos.                    |
| `/privacy`                     | Explica la política efectiva de nube y consentimiento del esquema.            |
| `/load [file\|form]`           | Carga otro formulario y cambia a su conversación específica.                  |
| `/preview`                     | Muestra el árbol de formulario legible del esquema de trabajo.                |
| `/json`                        | Imprime el esquema de trabajo como JSON sin procesar.                         |
| `/validate`                    | Valida el esquema de trabajo, incluida una propuesta sin aplicar.             |
| `/serve [options]`             | Inicia la vista previa; `--app` inicia también la app configurada.            |
| `/serve status`, `/serve stop` | Consulta o detiene los servidores sin salir del modo AI.                      |
| `/diff`                        | Muestra los cambios acumulados desde que se entró en el modo AI.              |
| `/diff --pending`              | Muestra solo los cambios desde la última aplicación.                          |
| `/apply [schema-path]`         | Comprueba y guarda atómicamente la propuesta pendiente.                       |
| `/discard`                     | Abandona el borrador y restaura la vista previa confirmada.                   |
| `/undo`                        | Prepara el último esquema guardado en esta sesión para aprobarlo.             |
| `/new`                         | Inicia una conversación conservando el modelo seleccionado.                   |
| `/clear`                       | Borra el historial de este formulario y conserva el modelo.                   |
| `/cancel`                      | Cancela la solicitud activa y vacía la cola de seguimientos.                  |
| `/exit`                        | Vuelve a la shell; pide confirmación si hay una propuesta sin aplicar.        |

## Estado

El estado es local: no contacta al proveedor ni consulta saldos de créditos:

```ansi
form0(ai)> /status

AI authoring status
  Schema:             /project/form.schema.json
  Draft:              none
  Provider:           openai-codex
  Model:              gpt-5.6-luna
  Cloud policy:       allowed
  Conversation:       persisted
  Activity:           idle
  Queued follow-ups:  0
  Authentication:
    openai-codex  oauth (stored, subscription) [selected]
```

La autenticación identifica la fuente y el tipo, pero nunca imprime una credencial. Un proveedor
puede estar autenticado sin estar seleccionado y la autenticación no implica créditos disponibles.

## Prompts disponible y ocupado

Una solicitud cambia el estado del prompt y muestra el modelo activo:

```ansi
[AI] Thinking with openai-codex/gpt-5.6-luna…
form0(ai,busy)>
```

Con el servidor activo, el prompt es `form0(server,ai,busy)>`. Al terminar vuelve a
`form0(ai)>` o `form0(server,ai)>`.

Pulsar Enter en una línea vacía no hace nada y redibuja el prompt. El texto escrito mientras está
ocupado se pone en cola FIFO y se confirma indicando su posición.

## Comandos disponibles mientras está ocupado

Durante una solicitud siguen disponibles `/help`, `/status`, `/privacy`, `/cancel`, `/serve status`
y `/serve stop`. Los demás comandos con barra se rechazan hasta que termine, para evitar cambios de
modelo, conversación o borrador bajo una solicitud activa.

La cancelación pide a Pi detener la solicitud y vacía todos los seguimientos. Si tiene éxito, vuelve
al prompt disponible sin mostrar la cancelación del proveedor como un segundo error.
