---
id: "terminal-referencia-cli"
titulo: "Referencia de comandos de la Terminal"
resumo: "Los comandos de línea de comandos que crean, listan, leen, alimentan y terminan sesiones de terminal."
idioma: "es"
tipo: "referencia"
categoria: "telas"
aplicavelDesde: "0.0.16"
capabilities: ["terminal.sessions.create", "terminal.sessions.discover", "terminal.output.read", "terminal.input.send", "terminal.layout.split", "terminal.sessions.rename", "terminal.sessions.end"]
estadoEditorial: "aprovado"
nivelEvidencia: "artefato-distribuido"
refFonte: "27574c339b58316408f6be2d62169d59041d07bf"
revisaoFonte: "2026-09-24"
revisor: "mantenedor (v1, 2026-10-03)"
rota: "/docs/es/ferramentas/terminal/referencia-cli/"
fonte: "pt-br/ferramentas/terminal/referencia-cli.md"
caminhoPublico: "docs/publica/es/ferramentas/terminal/referencia-cli.md"
hashFonte: "sha256:2b825534433de1d16cfc417d63160ecfc25d20bbd263a0b9ee27517a9815fbb8"
hashDestaPagina: "sha256:7b44e555a7b705cdfe92543bc07dffde6040c207f86c1187fcacc299ce001e57"
traducaoAssistidaPorIA: true
traducaoDesatualizada: false
corpoRetido: false
---
<!-- traducao-assistida-por-ia: idioma=ES fonte=pt-br/ferramentas/terminal/referencia-cli.md fonteHash=sha256:2b825534433de1d16cfc417d63160ecfc25d20bbd263a0b9ee27517a9815fbb8 estado=atual -->

Los comandos de abajo actúan sobre las sesiones de la pantalla Terminal. Comandos, opciones y valores son **literales** — no se traducen.

## Selectores y flags globales

- **`--workspace <selector>`** — elige el workspace. Acepta `id:<id>`, `name:<nombre>`, `path:<ruta>`, `active`/`current` y `focused`.
- **`--worktree`** es un **alias de compatibilidad** de `--workspace`.
- Sin `--workspace`, la llamada local infiere el workspace desde el directorio actual.
- **`--json`** devuelve la salida estructurada. Úsala en automatización: la salida legible prioriza la pantalla renderizada y puede no ser lo que un programa deba interpretar.

## Comandos

| Comando | Para qué sirve |
|---|---|
| `elyra terminal create` | Crea una sesión de terminal en el workspace actual |
| `elyra terminal list` | Lista las terminales vivas gestionadas por Elyra |
| `elyra terminal show` | Muestra metadatos y una vista previa de una terminal |
| `elyra terminal read` | Lee la salida retenida de una terminal |
| `elyra terminal send` | Envía entrada a una terminal viva |
| `elyra terminal wait` | Espera una condición de terminal |
| `elyra terminal split` | Divide un panel de terminal existente |
| `elyra terminal rename` | Define o limpia el título de una pestaña |
| `elyra terminal switch` | Cambia a una pestaña de terminal en la interfaz |
| `elyra terminal close` | Cierra una pestaña de terminal (mata el proceso, si está ejecutándose) |
| `elyra terminal replace` | Cambia el agente que se ejecuta en una terminal, manteniendo la terminal |
| `elyra terminal stop` | **Destructivo:** termina las terminales de un workspace |

`elyra terminal focus` es un **alias** de `elyra terminal switch`.

### Crear

```
elyra terminal create [--title <nombre>] [--command <texto> | --agent <id> | --role <nombre> [--prompt <texto> | --prompt-file <ruta>]] [--focus] [--json]
```

- Sin `--command`, `--agent` o `--role`, abre un shell.
- Crea la pestaña visible **sin cambiar el foco** cuando es posible; si la interfaz no puede adoptarla, cae a un identificador en segundo plano. `--focus` cambia a ella.
- **Se rechaza cuando la llamada viene de una tarjeta del Canvas**: un hijo de agente del Canvas nace como tarjeta, no como pestaña suelta en la pantalla Terminal.
- `--prompt-file` acepta `-` para leer de stdin. En Windows, el lanzador `.cmd` **trunca un `--prompt` de varias líneas** en el primer salto de línea — usa un archivo.
- `--role` inicia el agente con un rol guardado; un `--agent` explícito tiene precedencia sobre el rol.
- Con `--agent`, el agente **todavía está subiendo** cuando el comando retorna. Escribir ahora llega mezclado en el shell.
- La salida lleva el identificador de la terminal.

**Flujo recomendado después de crear con agente:**

```
elyra terminal wait --terminal <título|handle> --for tui-idle
elyra terminal send --terminal <título|handle> --text "<mensaje>" --enter
elyra terminal read --terminal <título|handle>
```

### Listar, inspeccionar y cambiar

```
elyra terminal list [--workspace <selector>] [--limit <n>] [--offset <n>] [--json]
elyra terminal show [--terminal <título|handle>] [--json]
elyra terminal switch [--terminal <título|handle>] [--json]
```

- `list` lista todo del workspace. El servidor mantiene un **techo interno de 200** como red de seguridad; `--limit`/`--offset` paginan solo lo que se muestra, localmente. `totalCount` sigue completo y **`truncated` dice la verdad** (corte del servidor **o** corte de la página local).
- `show` y `switch` aceptan `--terminal <título|handle>`.

### Leer

```
elyra terminal read [--terminal <título|handle> | --node <id|título>] [--cursor <n>] [--limit <n>] [--lines <n>] [--all] [--workspace <selector>] [--json]
```

- Sin `--cursor` y sin `--limit`, la CLI pagina la sesión retenida y devuelve todo.
- `--cursor` recibe el `nextCursor` de una lectura anterior y trae **solo lo nuevo** desde entonces.
- `--limit` pide una página acotada; la salida informa `oldestCursor` cuando se descartaron líneas más antiguas.
- `--lines <n>` limita a las últimas N líneas retenidas — **techo de 2000 líneas por lectura**. `--all` devuelve la sesión retenida completa — **hasta 20000 líneas**, con lo más antiguo reportado por `truncated`.
- Combinaciones prohibidas: `--all` con `--lines`, `--cursor` o `--limit`; `--lines` con `--cursor` o `--limit`.
- Objetivo con `--terminal` **o** `--node`, nunca los dos; sin ninguno, lee la terminal activa. Usa `--workspace` junto con `--node` para buscar la tarjeta fuera del workspace actual.
- **Una tarjeta sin sesión viva falla** con aviso de que no hay sesión viva, en lugar de una lectura vacía.
- Las lecturas **sin** `--cursor` anexan la pantalla viva cuando un agente o una aplicación de pantalla alternativa tiene viewport renderizado. La salida legible prioriza esa pantalla; el texto bruto sigue en `--json` o con `--cursor`. Los shells siguen usando el final del búfer, y las lecturas con `--cursor` nunca traen la pantalla viva.

### Enviar y esperar

```
elyra terminal send [--terminal <título|handle>] [--text <texto> | --text-file <ruta>] [--enter] [--interrupt] [--json]
elyra terminal wait [--terminal <título|handle>] --for exit|tui-idle [--timeout-ms <ms, máx. 3600000>] [--json]
```

- Usa `--text-file` para textos de varias líneas: las comillas del shell estropean saltos de línea y citas. `--text-file -` lee de stdin.
- **Un envío rechazado falla el comando** con código de salida 1.
- **Una condición de espera no satisfecha también falla el comando.**
- `--interrupt` puede interrumpir el trabajo activo del agente.

### Dividir y renombrar

```
elyra terminal split [--terminal <título|handle>] [--direction horizontal|vertical] [--command <texto>] [--json]
elyra terminal rename [--terminal <título|handle>] [--title <texto>] [--json]
```

- `--direction` acepta **solo** `horizontal` o `vertical`; otro valor se rechaza antes de la llamada.
- `rename` sin `--title` (o con cadena vacía) vuelve al título automático.

### Terminar y sustituir

```
elyra terminal close [--terminal <título|handle>] [--json]
elyra terminal stop --workspace <selector> [--json]
elyra terminal replace [--terminal <handle|título>] --agent <id> [--prompt <texto>] [--json]
```

> **`terminal stop` es DESTRUCTIVO.** Mata el proceso de **toda** terminal del workspace de una vez — incluidos agentes en medio de una tarea — e **incluye la terminal desde la que estás llamando**, si pertenece al mismo workspace. Lo que los procesos no guardaron se pierde.
>
> Para terminar una sola, usa `elyra terminal close --terminal <título|handle>`. Para ver qué se mataría antes: `elyra terminal list --workspace <selector>`.

- `close` apunta a una pestaña y mata su proceso si está ejecutándose.
- `stop` informa **cuántas** terminales se terminaron.
- `replace` mantiene el identificador válido: los mensajes de orquestación dirigidos a la terminal siguen funcionando, y la tarjeta del Canvas, su posición, sus conexiones y el título sobreviven. **El estado en memoria del proceso anterior no se conserva**, y una automatización que reutilizaba exactamente esa sesión cae a una sesión nueva.
- `replace` exige un agente conocido; un agente desconocido falla con error de argumento.
