604 lines
20 KiB
Plaintext
604 lines
20 KiB
Plaintext
---
|
|
title: CLI
|
|
description: OpenCode CLI opciones y comandos.
|
|
---
|
|
|
|
import { Tabs, TabItem } from "@astrojs/starlight/components"
|
|
|
|
El OpenCode CLI de forma predeterminada inicia el [TUI](/docs/tui) cuando se ejecuta sin ningún argumento.
|
|
|
|
```bash
|
|
opencode
|
|
```
|
|
|
|
Pero también acepta comandos como se documenta en esta página. Esto le permite interactuar con OpenCode mediante programación.
|
|
|
|
```bash
|
|
opencode run "Explain how closures work in JavaScript"
|
|
```
|
|
|
|
---
|
|
|
|
### tui
|
|
|
|
Inicie la interfaz de usuario del terminal OpenCode.
|
|
|
|
```bash
|
|
opencode [project]
|
|
```
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Corto | Descripción |
|
|
| ------------ | ----- | --------------------------------------------------------------------- |
|
|
| `--continue` | `-c` | Continuar la última sesión |
|
|
| `--session` | `-s` | ID de sesión para continuar |
|
|
| `--fork` | | Bifurcar la sesión al continuar (usar con `--continue` o `--session`) |
|
|
| `--prompt` | | Aviso de uso |
|
|
| `--model` | `-m` | Modelo a utilizar en forma de proveedor/modelo |
|
|
| `--agent` | | Agente a utilizar |
|
|
| `--port` | | Puerto para escuchar |
|
|
| `--hostname` | | Nombre de host para escuchar |
|
|
|
|
---
|
|
|
|
## Comandos
|
|
|
|
El OpenCode CLI también tiene los siguientes comandos.
|
|
|
|
---
|
|
|
|
### agente
|
|
|
|
Administrar agentes para OpenCode.
|
|
|
|
```bash
|
|
opencode agent [command]
|
|
```
|
|
|
|
---
|
|
|
|
### adjuntar
|
|
|
|
Conecte una terminal a un servidor backend OpenCode que ya se esté ejecutando y iniciado mediante los comandos `serve` o `web`.
|
|
|
|
```bash
|
|
opencode attach [url]
|
|
```
|
|
|
|
Esto permite usar TUI con un backend remoto OpenCode. Por ejemplo:
|
|
|
|
```bash
|
|
# Start the backend server for web/mobile access
|
|
opencode web --port 4096 --hostname 0.0.0.0
|
|
|
|
# In another terminal, attach the TUI to the running backend
|
|
opencode attach http://10.20.30.40:4096
|
|
```
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Corto | Descripción |
|
|
| ----------- | ----- | ----------------------------------------- |
|
|
| `--dir` | | Directorio de trabajo para iniciar TUI en |
|
|
| `--session` | `-s` | ID de sesión para continuar |
|
|
|
|
---
|
|
|
|
#### crear
|
|
|
|
Cree un nuevo agente con configuración personalizada.
|
|
|
|
```bash
|
|
opencode agent create
|
|
```
|
|
|
|
Este comando lo guiará en la creación de un nuevo agente con un mensaje del sistema personalizado y una configuración de herramientas.
|
|
|
|
---
|
|
|
|
#### lista
|
|
|
|
Enumere todos los agentes disponibles.
|
|
|
|
```bash
|
|
opencode agent list
|
|
```
|
|
|
|
---
|
|
|
|
### autenticación
|
|
|
|
Comando para administrar credenciales e iniciar sesión para proveedores.
|
|
|
|
```bash
|
|
opencode auth [command]
|
|
```
|
|
|
|
---
|
|
|
|
#### acceso
|
|
|
|
OpenCode funciona con la lista de proveedores en [Models.dev](https://models.dev), por lo que puede usar `opencode auth login` para configurar las claves API para cualquier proveedor que desee utilizar. Esto se almacena en `~/.local/share/opencode/auth.json`.
|
|
|
|
```bash
|
|
opencode auth login
|
|
```
|
|
|
|
Cuando se inicia OpenCode, carga los proveedores desde el archivo de credenciales. Y si hay claves definidas en sus entornos o un archivo `.env` en su proyecto.
|
|
|
|
---
|
|
|
|
#### lista
|
|
|
|
Enumera todos los proveedores autenticados tal como están almacenados en el archivo de credenciales.
|
|
|
|
```bash
|
|
opencode auth list
|
|
```
|
|
|
|
O la versión corta.
|
|
|
|
```bash
|
|
opencode auth ls
|
|
```
|
|
|
|
---
|
|
|
|
#### cerrar sesión
|
|
|
|
Cierra tu sesión de un proveedor eliminándolo del archivo de credenciales.
|
|
|
|
```bash
|
|
opencode auth logout
|
|
```
|
|
|
|
---
|
|
|
|
### github
|
|
|
|
Administre el agente GitHub para la automatización del repositorio.
|
|
|
|
```bash
|
|
opencode github [command]
|
|
```
|
|
|
|
---
|
|
|
|
#### instalar
|
|
|
|
Instale el agente GitHub en su repositorio.
|
|
|
|
```bash
|
|
opencode github install
|
|
```
|
|
|
|
Esto configura el flujo de trabajo de acciones GitHub necesario y lo guía a través del proceso de configuración. [Más información](/docs/github).
|
|
|
|
---
|
|
|
|
#### correr
|
|
|
|
Ejecute el agente GitHub. Esto se usa normalmente en acciones GitHub.
|
|
|
|
```bash
|
|
opencode github run
|
|
```
|
|
|
|
##### Banderas
|
|
|
|
| Bandera | Descripción |
|
|
| --------- | ---------------------------------------------- |
|
|
| `--event` | GitHub evento simulado para ejecutar el agente |
|
|
| `--token` | GitHub token de acceso personal |
|
|
|
|
---
|
|
|
|
### mcp
|
|
|
|
Administrar servidores de protocolo de contexto modelo.
|
|
|
|
```bash
|
|
opencode mcp [command]
|
|
```
|
|
|
|
---
|
|
|
|
#### agregar
|
|
|
|
Agregue un servidor MCP a su configuración.
|
|
|
|
```bash
|
|
opencode mcp add
|
|
```
|
|
|
|
Este comando lo guiará para agregar un servidor MCP local o remoto.
|
|
|
|
---
|
|
|
|
#### lista
|
|
|
|
Enumere todos los servidores MCP configurados y su estado de conexión.
|
|
|
|
```bash
|
|
opencode mcp list
|
|
```
|
|
|
|
O utilice la versión corta.
|
|
|
|
```bash
|
|
opencode mcp ls
|
|
```
|
|
|
|
---
|
|
|
|
#### autenticación
|
|
|
|
Autentíquese con un servidor MCP habilitado para OAuth.
|
|
|
|
```bash
|
|
opencode mcp auth [name]
|
|
```
|
|
|
|
Si no proporciona un nombre de servidor, se le pedirá que seleccione entre los servidores compatibles con OAuth disponibles.
|
|
|
|
También puede enumerar los servidores compatibles con OAuth y su estado de autenticación.
|
|
|
|
```bash
|
|
opencode mcp auth list
|
|
```
|
|
|
|
O utilice la versión corta.
|
|
|
|
```bash
|
|
opencode mcp auth ls
|
|
```
|
|
|
|
---
|
|
|
|
#### cerrar sesión
|
|
|
|
Elimine las credenciales OAuth para un servidor MCP.
|
|
|
|
```bash
|
|
opencode mcp logout [name]
|
|
```
|
|
|
|
---
|
|
|
|
#### depurar
|
|
|
|
Depurar problemas de conexión OAuth para un servidor MCP.
|
|
|
|
```bash
|
|
opencode mcp debug <name>
|
|
```
|
|
|
|
---
|
|
|
|
### modelos
|
|
|
|
Enumere todos los modelos disponibles de los proveedores configurados.
|
|
|
|
```bash
|
|
opencode models [provider]
|
|
```
|
|
|
|
Este comando muestra todos los modelos disponibles en sus proveedores configurados en el formato `provider/model`.
|
|
|
|
Esto es útil para determinar el nombre exacto del modelo que se usará en [su configuración](/docs/config/).
|
|
|
|
Opcionalmente, puede pasar un ID de proveedor para filtrar modelos por ese proveedor.
|
|
|
|
```bash
|
|
opencode models anthropic
|
|
```
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Descripción |
|
|
| ----------- | --------------------------------------------------------------------------- |
|
|
| `--refresh` | Actualizar la caché de modelos desde models.dev |
|
|
| `--verbose` | Utilice una salida del modelo más detallada (incluye metadatos como costos) |
|
|
|
|
Utilice el indicador `--refresh` para actualizar la lista de modelos almacenados en caché. Esto es útil cuando se han agregado nuevos modelos a un proveedor y desea verlos en OpenCode.
|
|
|
|
```bash
|
|
opencode models --refresh
|
|
```
|
|
|
|
---
|
|
|
|
### correr
|
|
|
|
Ejecute opencode en modo no interactivo pasando un mensaje directamente.
|
|
|
|
```bash
|
|
opencode run [message..]
|
|
```
|
|
|
|
Esto es útil para secuencias de comandos, automatización o cuando desea una respuesta rápida sin iniciar el TUI completo. Por ejemplo.
|
|
|
|
```bash "opencode run"
|
|
opencode run Explain the use of context in Go
|
|
```
|
|
|
|
También puede conectarse a una instancia `opencode serve` en ejecución para evitar tiempos de arranque en frío del servidor MCP en cada ejecución:
|
|
|
|
```bash
|
|
# Start a headless server in one terminal
|
|
opencode serve
|
|
|
|
# In another terminal, run commands that attach to it
|
|
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
|
|
```
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Corto | Descripción |
|
|
| ------------ | ----- | ----------------------------------------------------------------------------------- |
|
|
| `--command` | | El comando a ejecutar, use mensaje para args |
|
|
| `--continue` | `-c` | Continuar la última sesión |
|
|
| `--session` | `-s` | ID de sesión para continuar |
|
|
| `--fork` | | Bifurcar la sesión al continuar (usar con `--continue` o `--session`) |
|
|
| `--share` | | Comparte la sesión |
|
|
| `--model` | `-m` | Modelo a utilizar en forma de proveedor/modelo |
|
|
| `--agent` | | Agente a utilizar |
|
|
| `--file` | `-f` | Archivo(s) para adjuntar al mensaje |
|
|
| `--format` | | Formato: predeterminado (formateado) o json (eventos JSON sin formato) |
|
|
| `--title` | | Título de la sesión (utiliza un mensaje truncado si no se proporciona ningún valor) |
|
|
| `--attach` | | Adjuntar a un servidor opencode en ejecución (por ejemplo, http://localhost:4096) |
|
|
| `--port` | | Puerto para el servidor local (el puerto predeterminado es aleatorio) |
|
|
|
|
---
|
|
|
|
### atender
|
|
|
|
Inicie un servidor OpenCode sin cabeza para acceso API. Consulte los [documentos del servidor](/docs/server) para conocer la interfaz HTTP completa.
|
|
|
|
```bash
|
|
opencode serve
|
|
```
|
|
|
|
Esto inicia un servidor HTTP que proporciona acceso API a la funcionalidad opencode sin la interfaz TUI. Configure `OPENCODE_SERVER_PASSWORD` para habilitar la autenticación básica HTTP (el nombre de usuario predeterminado es `opencode`).
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Descripción |
|
|
| ------------ | ---------------------------------------------------- |
|
|
| `--port` | Puerto para escuchar |
|
|
| `--hostname` | Nombre de host para escuchar |
|
|
| `--mdns` | Habilitar el descubrimiento de mDNS |
|
|
| `--cors` | Orígenes de navegador adicionales para permitir CORS |
|
|
|
|
---
|
|
|
|
### sesión
|
|
|
|
Administrar OpenCode sesiones.
|
|
|
|
```bash
|
|
opencode session [command]
|
|
```
|
|
|
|
---
|
|
|
|
#### lista
|
|
|
|
Enumere todas las sesiones OpenCode.
|
|
|
|
```bash
|
|
opencode session list
|
|
```
|
|
|
|
##### Banderas
|
|
|
|
| Bandera | Corto | Descripción |
|
|
| ------------- | ----- | --------------------------------------- |
|
|
| `--max-count` | `-n` | Limitar a N sesiones más recientes |
|
|
| `--format` | | Formato de salida: tabla o json (tabla) |
|
|
|
|
---
|
|
|
|
### estadísticas
|
|
|
|
Muestre el uso de tokens y las estadísticas de costos para sus sesiones OpenCode.
|
|
|
|
```bash
|
|
opencode stats
|
|
```
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Descripción |
|
|
| ----------- | ------------------------------------------------------------------------------------------------------------------------ |
|
|
| `--days` | Mostrar estadísticas de los últimos N días (todo el tiempo) |
|
|
| `--tools` | Número de herramientas para mostrar (todas) |
|
|
| `--models` | Mostrar el desglose del uso del modelo (oculto de forma predeterminada). Pase un número para mostrar la parte superior N |
|
|
| `--project` | Filtrar por proyecto (todos los proyectos, cadena vacía: proyecto actual) |
|
|
|
|
---
|
|
|
|
### exportar
|
|
|
|
Exportar datos de la sesión como JSON.
|
|
|
|
```bash
|
|
opencode export [sessionID]
|
|
```
|
|
|
|
Si no proporciona una ID de sesión, se le pedirá que seleccione entre las sesiones disponibles.
|
|
|
|
---
|
|
|
|
### importar
|
|
|
|
Importe datos de sesión desde un archivo JSON o una URL compartida OpenCode.
|
|
|
|
```bash
|
|
opencode import <file>
|
|
```
|
|
|
|
Puede importar desde un archivo local o una URL compartida OpenCode.
|
|
|
|
```bash
|
|
opencode import session.json
|
|
opencode import https://opncd.ai/s/abc123
|
|
```
|
|
|
|
---
|
|
|
|
### web
|
|
|
|
Inicie un servidor OpenCode sin cabeza con una interfaz web.
|
|
|
|
```bash
|
|
opencode web
|
|
```
|
|
|
|
Esto inicia un servidor HTTP y abre un navegador web para acceder a OpenCode a través de una interfaz web. Configure `OPENCODE_SERVER_PASSWORD` para habilitar la autenticación básica HTTP (el nombre de usuario predeterminado es `opencode`).
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Descripción |
|
|
| ------------ | ---------------------------------------------------- |
|
|
| `--port` | Puerto para escuchar |
|
|
| `--hostname` | Nombre de host para escuchar |
|
|
| `--mdns` | Habilitar el descubrimiento de mDNS |
|
|
| `--cors` | Orígenes de navegador adicionales para permitir CORS |
|
|
|
|
---
|
|
|
|
### acp
|
|
|
|
Inicie un servidor ACP (Protocolo de cliente de agente).
|
|
|
|
```bash
|
|
opencode acp
|
|
```
|
|
|
|
Este comando inicia un servidor ACP que se comunica a través de stdin/stdout usando nd-JSON.
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Descripción |
|
|
| ------------ | ---------------------------- |
|
|
| `--cwd` | Directorio de trabajo |
|
|
| `--port` | Puerto para escuchar |
|
|
| `--hostname` | Nombre de host para escuchar |
|
|
|
|
---
|
|
|
|
### desinstalar
|
|
|
|
Desinstale OpenCode y elimine todos los archivos relacionados.
|
|
|
|
```bash
|
|
opencode uninstall
|
|
```
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Corto | Descripción |
|
|
| --------------- | ----- | ----------------------------------------- |
|
|
| `--keep-config` | `-c` | Mantener archivos de configuración |
|
|
| `--keep-data` | `-d` | Conservar datos de sesión e instantáneas |
|
|
| `--dry-run` | | Mostrar lo que se eliminaría sin eliminar |
|
|
| `--force` | `-f` | Saltar mensajes de confirmación |
|
|
|
|
---
|
|
|
|
### mejora
|
|
|
|
Actualiza opencode a la última versión o a una versión específica.
|
|
|
|
```bash
|
|
opencode upgrade [target]
|
|
```
|
|
|
|
Para actualizar a la última versión.
|
|
|
|
```bash
|
|
opencode upgrade
|
|
```
|
|
|
|
Para actualizar a una versión específica.
|
|
|
|
```bash
|
|
opencode upgrade v0.1.48
|
|
```
|
|
|
|
#### Banderas
|
|
|
|
| Bandera | Corto | Descripción |
|
|
| ---------- | ----- | ---------------------------------------------------------------------------- |
|
|
| `--method` | `-m` | El método de instalación que se utilizó; rizo, npm, pnpm, bollo, preparación |
|
|
|
|
---
|
|
|
|
## Banderas globales
|
|
|
|
El opencode CLI toma las siguientes banderas globales.
|
|
|
|
| Bandera | Corto | Descripción |
|
|
| -------------- | ----- | --------------------------------------------------------------- |
|
|
| `--help` | `-h` | Mostrar ayuda |
|
|
| `--version` | `-v` | Número de versión de impresión |
|
|
| `--print-logs` | | Imprimir registros en stderr |
|
|
| `--log-level` | | Nivel de registro (DEPURACIÓN, INFORMACIÓN, ADVERTENCIA, ERROR) |
|
|
|
|
---
|
|
|
|
## Variables de entorno
|
|
|
|
OpenCode se puede configurar mediante variables de entorno.
|
|
|
|
| Variables | Tipo | Descripción |
|
|
| ------------------------------------- | -------- | ------------------------------------------------------------------------------- |
|
|
| `OPENCODE_AUTO_SHARE` | booleano | Compartir sesiones automáticamente |
|
|
| `OPENCODE_GIT_BASH_PATH` | cadena | Ruta al ejecutable de Git Bash en Windows |
|
|
| `OPENCODE_CONFIG` | cadena | Ruta al archivo de configuración |
|
|
| `OPENCODE_CONFIG_DIR` | cadena | Ruta al directorio de configuración |
|
|
| `OPENCODE_CONFIG_CONTENT` | cadena | Contenido de configuración json en línea |
|
|
| `OPENCODE_DISABLE_AUTOUPDATE` | booleano | Deshabilitar las comprobaciones automáticas de actualizaciones |
|
|
| `OPENCODE_DISABLE_PRUNE` | booleano | Deshabilitar la poda de datos antiguos |
|
|
| `OPENCODE_DISABLE_TERMINAL_TITLE` | booleano | Deshabilitar las actualizaciones automáticas de títulos de terminal |
|
|
| `OPENCODE_PERMISSION` | cadena | Configuración de permisos json incorporados |
|
|
| `OPENCODE_DISABLE_DEFAULT_PLUGINS` | booleano | Deshabilitar complementos predeterminados |
|
|
| `OPENCODE_DISABLE_LSP_DOWNLOAD` | booleano | Deshabilitar las descargas automáticas del servidor LSP |
|
|
| `OPENCODE_ENABLE_EXPERIMENTAL_MODELS` | booleano | Habilitar modelos experimentales |
|
|
| `OPENCODE_DISABLE_AUTOCOMPACT` | booleano | Deshabilitar la compactación automática de contexto |
|
|
| `OPENCODE_DISABLE_CLAUDE_CODE` | booleano | Deshabilitar la lectura desde `.claude` (mensaje + habilidades) |
|
|
| `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` | booleano | Desactivar lectura `~/.claude/CLAUDE.md` |
|
|
| `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` | booleano | Deshabilitar la carga `.claude/skills` |
|
|
| `OPENCODE_DISABLE_MODELS_FETCH` | booleano | Deshabilitar la recuperación de modelos desde fuentes remotas |
|
|
| `OPENCODE_FAKE_VCS` | cadena | Proveedor de VCS falso para fines de prueba |
|
|
| `OPENCODE_DISABLE_FILETIME_CHECK` | booleano | Deshabilite la verificación del tiempo del archivo para optimizarlo |
|
|
| `OPENCODE_CLIENT` | cadena | Identificador de cliente (por defecto `cli`) |
|
|
| `OPENCODE_ENABLE_EXA` | booleano | Habilitar las herramientas de búsqueda web de Exa |
|
|
| `OPENCODE_SERVER_PASSWORD` | cadena | Habilite la autenticación básica para `serve`/`web` |
|
|
| `OPENCODE_SERVER_USERNAME` | cadena | Anular el nombre de usuario de autenticación básica (predeterminado `opencode`) |
|
|
| `OPENCODE_MODELS_URL` | cadena | URL personalizada para buscar la configuración de modelos |
|
|
|
|
---
|
|
|
|
### Experimental
|
|
|
|
Estas variables de entorno habilitan funciones experimentales que pueden cambiar o eliminarse.
|
|
|
|
| Variables | Tipo | Descripción |
|
|
| ----------------------------------------------- | -------- | ---------------------------------------------------------- |
|
|
| `OPENCODE_EXPERIMENTAL` | booleano | Habilitar todas las funciones experimentales |
|
|
| `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY` | booleano | Habilitar descubrimiento de íconos |
|
|
| `OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT` | booleano | Deshabilitar copia al seleccionar en TUI |
|
|
| `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | número | Tiempo de espera predeterminado para comandos bash en ms |
|
|
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | número | Tokens de salida máximos para respuestas LLM |
|
|
| `OPENCODE_EXPERIMENTAL_FILEWATCHER` | booleano | Habilite el observador de archivos para todo el directorio |
|
|
| `OPENCODE_EXPERIMENTAL_OXFMT` | booleano | Habilitar el formateador oxfmt |
|
|
| `OPENCODE_EXPERIMENTAL_LSP_TOOL` | booleano | Habilitar herramienta experimental LSP |
|
|
| `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` | booleano | Deshabilitar el observador de archivos |
|
|
| `OPENCODE_EXPERIMENTAL_EXA` | booleano | Habilitar funciones experimentales de Exa |
|
|
| `OPENCODE_EXPERIMENTAL_LSP_TY` | booleano | Habilitar la verificación de tipo experimental LSP |
|
|
| `OPENCODE_EXPERIMENTAL_MARKDOWN` | booleano | Habilitar funciones de rebajas experimentales |
|
|
| `OPENCODE_EXPERIMENTAL_PLAN_MODE` | booleano | Habilitar modo de plan |
|