Español
Documentación
CLI

CLI

Opciones y comandos del CLI de OpenCode.

Por defecto, el CLI de OpenCode inicia la TUI cuando se ejecuta sin argumentos.

opencode

Pero también acepta comandos como se documenta en esta página. Esto te permite interactuar con OpenCode programáticamente.

opencode run "Explain how closures work in JavaScript"

tui

Inicia la interfaz de usuario de terminal de OpenCode.

opencode [project]

Flags

FlagCortoDescripción
--continue-cContinuar la última sesión
--session-sID de sesión a continuar
--promptPrompt a usar
--model-mModelo a usar en formato provider/model
--agentAgente a usar
--portPuerto para escuchar
--hostnameHostname para escuchar

Comandos

El CLI de OpenCode también tiene los siguientes comandos.


agent

Gestiona agentes para OpenCode.

opencode agent [command]

attach

Conecta una terminal a un servidor backend de OpenCode ya en ejecución iniciado mediante los comandos serve o web.

opencode attach [url]

Esto permite usar la TUI con un backend remoto de OpenCode. Por ejemplo:

# 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

Flags

FlagCortoDescripción
--dirDirectorio de trabajo para iniciar la TUI
--session-sID de sesión a continuar

create

Crea un nuevo agente con configuración personalizada.

opencode agent create

Este comando te guiará a través de la creación de un nuevo agente con un prompt de sistema personalizado y configuración de herramientas.


list

Lista todos los agentes disponibles.

opencode agent list

auth

Comando para gestionar credenciales e inicio de sesión para proveedores.

opencode auth [command]

login

OpenCode está impulsado por la lista de proveedores en Models.dev (opens in a new tab), por lo que puedes usar opencode auth login para configurar claves API para cualquier proveedor que desees usar. Esto se almacena en ~/.local/share/opencode/auth.json.

opencode auth login

Cuando OpenCode se inicia, carga los proveedores desde el archivo de credenciales. También se cargan las claves definidas en tus variables de entorno o en un archivo .env en tu proyecto.


list

Lista todos los proveedores autenticados almacenados en el archivo de credenciales.

opencode auth list

O la versión corta.

opencode auth ls

logout

Te desconecta de un proveedor eliminándolo del archivo de credenciales.

opencode auth logout

github

Gestiona el agente de GitHub para automatización de repositorios.

opencode github [command]

install

Instala el agente de GitHub en tu repositorio.

opencode github install

Esto configura el flujo de trabajo necesario de GitHub Actions y te guía a través del proceso de configuración. Más información.


run

Ejecuta el agente de GitHub. Esto se usa típicamente en GitHub Actions.

opencode github run
Flags
FlagDescripción
--eventEvento simulado de GitHub para ejecutar el agente
--tokenToken de acceso personal de GitHub

mcp

Gestiona servidores de Model Context Protocol.

opencode mcp [command]

add

Añade un servidor MCP a tu configuración.

opencode mcp add

Este comando te guiará a través de añadir un servidor MCP local o remoto.


list

Lista todos los servidores MCP configurados y su estado de conexión.

opencode mcp list

O usa la versión corta.

opencode mcp ls

auth

Autentícate con un servidor MCP habilitado para OAuth.

opencode mcp auth [name]

Si no proporcionas un nombre de servidor, se te pedirá que selecciones de los servidores disponibles con capacidad OAuth.

También puedes listar los servidores con capacidad OAuth y su estado de autenticación.

opencode mcp auth list

O usa la versión corta.

opencode mcp auth ls

logout

Elimina las credenciales OAuth para un servidor MCP.

opencode mcp logout [name]

debug

Depura problemas de conexión OAuth para un servidor MCP.

opencode mcp debug <name>

models

Lista todos los modelos disponibles de los proveedores configurados.

opencode models [provider]

Este comando muestra todos los modelos disponibles en tus proveedores configurados en formato provider/model.

Esto es útil para determinar el nombre exacto del modelo a usar en tu configuración.

Opcionalmente puedes pasar un ID de proveedor para filtrar modelos por ese proveedor.

opencode models anthropic

Flags

FlagDescripción
--refreshActualizar la caché de modelos desde models.dev
--verboseUsar salida de modelo más detallada (incluye metadatos como costos)

Usa el flag --refresh para actualizar la lista de modelos en caché. Esto es útil cuando se han añadido nuevos modelos a un proveedor y quieres verlos en OpenCode.

opencode models --refresh

run

Ejecuta OpenCode en modo no interactivo pasando un prompt directamente.

opencode run [message..]

Esto es útil para scripting, automatización o cuando quieres una respuesta rápida sin lanzar la TUI completa. Por ejemplo:

opencode run "Explain the use of context in Go"

También puedes conectarte a una instancia de opencode serve en ejecución para evitar tiempos de arranque en frío del servidor MCP en cada ejecución:

# 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"

Flags

FlagCortoDescripción
--commandEl comando a ejecutar, usa message para argumentos
--continue-cContinuar la última sesión
--session-sID de sesión a continuar
--shareCompartir la sesión
--model-mModelo a usar en formato provider/model
--agentAgente a usar
--file-fArchivo(s) a adjuntar al mensaje
--formatFormato: default (formateado) o json (eventos JSON sin procesar)
--titleTítulo para la sesión (usa prompt truncado si no se proporciona valor)
--attachConectar a un servidor opencode en ejecución (ej. http://localhost:4096 (opens in a new tab))
--portPuerto para el servidor local (por defecto puerto aleatorio)

serve

Inicia un servidor OpenCode sin interfaz para acceso API. Consulta la documentación del servidor para la interfaz HTTP completa.

opencode serve

Esto inicia un servidor HTTP que proporciona acceso API a la funcionalidad de opencode sin la interfaz TUI. Establece OPENCODE_SERVER_PASSWORD para habilitar autenticación básica HTTP (el nombre de usuario por defecto es opencode).

Flags

FlagDescripción
--portPuerto para escuchar
--hostnameHostname para escuchar
--mdnsHabilitar descubrimiento mDNS
--corsOrigen(es) de navegador adicionales para permitir CORS

session

Gestiona sesiones de OpenCode.

opencode session [command]

list

Lista todas las sesiones de OpenCode.

opencode session list
Flags
FlagCortoDescripción
--max-count-nLimitar a las N sesiones más recientes
--formatFormato de salida: table o json (por defecto table)

stats

Muestra estadísticas de uso de tokens y costos para tus sesiones de OpenCode.

opencode stats

Flags

FlagDescripción
--daysMostrar estadísticas de los últimos N días (por defecto todo el tiempo)
--toolsNúmero de herramientas a mostrar (por defecto todas)
--modelsMostrar desglose de uso de modelos (oculto por defecto). Pasa un número para mostrar los N principales
--projectFiltrar por proyecto (por defecto todos los proyectos, cadena vacía: proyecto actual)

export

Exporta datos de sesión como JSON.

opencode export [sessionID]

Si no proporcionas un ID de sesión, se te pedirá que selecciones de las sesiones disponibles.


import

Importa datos de sesión desde un archivo JSON o URL de compartir de OpenCode.

opencode import <file>

Puedes importar desde un archivo local o una URL de compartir de OpenCode.

opencode import session.json
opencode import https://opncd.ai/s/abc123

web

Inicia un servidor OpenCode sin interfaz con una interfaz web.

opencode web

Esto inicia un servidor HTTP y abre un navegador web para acceder a OpenCode a través de una interfaz web. Establece OPENCODE_SERVER_PASSWORD para habilitar autenticación básica HTTP (el nombre de usuario por defecto es opencode).

Flags

FlagDescripción
--portPuerto para escuchar
--hostnameHostname para escuchar
--mdnsHabilitar descubrimiento mDNS
--corsOrigen(es) de navegador adicionales para permitir CORS

acp

Inicia un servidor ACP (Agent Client Protocol).

opencode acp

Este comando inicia un servidor ACP que se comunica vía stdin/stdout usando nd-JSON.

Flags

FlagDescripción
--cwdDirectorio de trabajo
--portPuerto para escuchar
--hostnameHostname para escuchar

uninstall

Desinstala OpenCode y elimina todos los archivos relacionados.

opencode uninstall

Flags

FlagCortoDescripción
--keep-config-cMantener archivos de configuración
--keep-data-dMantener datos de sesión y snapshots
--dry-runMostrar qué se eliminaría sin eliminar
--force-fOmitir prompts de confirmación

upgrade

Actualiza opencode a la última versión o a una versión específica.

opencode upgrade [target]

Para actualizar a la última versión.

opencode upgrade

Para actualizar a una versión específica.

opencode upgrade v0.1.48

Flags

FlagCortoDescripción
--method-mEl método de instalación usado: curl, npm, pnpm, bun, brew

Flags Globales

El CLI de opencode acepta los siguientes flags globales.

FlagCortoDescripción
--help-hMostrar ayuda
--version-vImprimir número de versión
--print-logsImprimir logs a stderr
--log-levelNivel de log (DEBUG, INFO, WARN, ERROR)

Variables de Entorno

OpenCode puede configurarse usando variables de entorno.

VariableTipoDescripción
OPENCODE_AUTO_SHAREbooleanCompartir sesiones automáticamente
OPENCODE_GIT_BASH_PATHstringRuta al ejecutable de Git Bash en Windows
OPENCODE_CONFIGstringRuta al archivo de configuración
OPENCODE_CONFIG_DIRstringRuta al directorio de configuración
OPENCODE_CONFIG_CONTENTstringContenido de configuración JSON en línea
OPENCODE_DISABLE_AUTOUPDATEbooleanDeshabilitar verificaciones automáticas de actualización
OPENCODE_DISABLE_PRUNEbooleanDeshabilitar limpieza de datos antiguos
OPENCODE_DISABLE_TERMINAL_TITLEbooleanDeshabilitar actualizaciones automáticas del título del terminal
OPENCODE_PERMISSIONstringConfiguración de permisos JSON en línea
OPENCODE_DISABLE_DEFAULT_PLUGINSbooleanDeshabilitar plugins por defecto
OPENCODE_DISABLE_LSP_DOWNLOADbooleanDeshabilitar descargas automáticas de servidor LSP
OPENCODE_ENABLE_EXPERIMENTAL_MODELSbooleanHabilitar modelos experimentales
OPENCODE_DISABLE_AUTOCOMPACTbooleanDeshabilitar compactación automática de contexto
OPENCODE_DISABLE_CLAUDE_CODEbooleanDeshabilitar lectura de .claude (prompt + skills)
OPENCODE_DISABLE_CLAUDE_CODE_PROMPTbooleanDeshabilitar lectura de ~/.claude/CLAUDE.md
OPENCODE_DISABLE_CLAUDE_CODE_SKILLSbooleanDeshabilitar carga de .claude/skills
OPENCODE_DISABLE_MODELS_FETCHbooleanDeshabilitar obtención de modelos de fuentes remotas
OPENCODE_FAKE_VCSstringProveedor VCS falso para propósitos de prueba
OPENCODE_DISABLE_FILETIME_CHECKbooleanDeshabilitar verificación de tiempo de archivo para optimización
OPENCODE_CLIENTstringIdentificador de cliente (por defecto cli)
OPENCODE_ENABLE_EXAbooleanHabilitar herramientas de búsqueda web Exa
OPENCODE_SERVER_PASSWORDstringHabilitar autenticación básica para serve/web
OPENCODE_SERVER_USERNAMEstringSobrescribir nombre de usuario de autenticación básica (por defecto opencode)
OPENCODE_MODELS_URLstringURL personalizada para obtener configuración de modelos

Experimental

Estas variables de entorno habilitan características experimentales que pueden cambiar o ser eliminadas.

VariableTipoDescripción
OPENCODE_EXPERIMENTALbooleanHabilitar todas las características experimentales
OPENCODE_EXPERIMENTAL_ICON_DISCOVERYbooleanHabilitar descubrimiento de iconos
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECTbooleanDeshabilitar copiar al seleccionar en TUI
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MSnumberTimeout por defecto para comandos bash en ms
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAXnumberMáximo de tokens de salida para respuestas LLM
OPENCODE_EXPERIMENTAL_FILEWATCHERbooleanHabilitar observador de archivos para todo el directorio
OPENCODE_EXPERIMENTAL_OXFMTbooleanHabilitar formateador oxfmt
OPENCODE_EXPERIMENTAL_LSP_TOOLbooleanHabilitar herramienta LSP experimental
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHERbooleanDeshabilitar observador de archivos
OPENCODE_EXPERIMENTAL_EXAbooleanHabilitar características experimentales de Exa
OPENCODE_EXPERIMENTAL_LSP_TYbooleanHabilitar verificación de tipos LSP experimental
OPENCODE_EXPERIMENTAL_MARKDOWNbooleanHabilitar características experimentales de Markdown
OPENCODE_EXPERIMENTAL_PLAN_MODEbooleanHabilitar modo de planificación