Español
Documentación
CLI

CLI

Opciones y comandos del CLI de OpenCode.

El CLI de OpenCode por defecto inicia el 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 de forma programática.

opencode run "Explain how closures work in JavaScript"

tui

Iniciar la interfaz de usuario de terminal de OpenCode.

opencode [project]

Flags

FlagCortoDescripción
--continue-cContinuar la última sesión
--session-sID de sesión para continuar
--forkBifurcar la sesión al continuar (usar con --continue o --session)
--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

Gestionar agentes para OpenCode.

opencode agent [command]

attach

Conectar 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 el TUI con un backend remoto de OpenCode. Por ejemplo:

# Iniciar el servidor backend para acceso web/móvil
opencode web --port 4096 --hostname 0.0.0.0
 
# En otra terminal, conectar el TUI al backend en ejecución
opencode attach http://10.20.30.40:4096

Flags

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

create

Crear 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 system prompt y configuración de herramientas personalizados.


list

Listar todos los agentes disponibles.

opencode agent list

auth

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

opencode auth [command]

login

OpenCode funciona con 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 del archivo de credenciales. Y si hay claves definidas en tus variables de entorno o 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

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

opencode github [command]

install

Instalar el agente de GitHub en tu repositorio.

opencode github install

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


run

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

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

mcp

Gestionar servidores de Model Context Protocol.

opencode mcp [command]

add

Agregar un servidor MCP a tu configuración.

opencode mcp add

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


list

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

opencode mcp list

O la versión corta.

opencode mcp ls

auth

Autenticarse 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 con capacidad OAuth disponibles.

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

opencode mcp auth list

O la versión corta.

opencode mcp auth ls

logout

Eliminar credenciales OAuth para un servidor MCP.

opencode mcp logout [name]

debug

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

opencode mcp debug <name>

models

Listar todos los modelos disponibles de los proveedores configurados.

opencode models [provider]

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

Esto es útil para averiguar 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 modelos 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 agregado nuevos modelos a un proveedor y quieres verlos en OpenCode.

opencode models --refresh

run

Ejecutar 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 el TUI completo. 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:

# Iniciar un servidor headless en una terminal
opencode serve
 
# En otra terminal, ejecutar comandos que se conectan a él
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"

Flags

FlagCortoDescripción
--commandEl comando a ejecutar, usar message para args
--continue-cContinuar la última sesión
--session-sID de sesión para continuar
--forkBifurcar la sesión al continuar (usar con --continue o --session)
--shareCompartir la sesión
--model-mModelo a usar en formato provider/model
--agentAgente a usar
--file-fArchivo(s) para adjuntar al mensaje
--formatFormato: default (formateado) o json (eventos JSON sin procesar)
--titleTítulo para la sesión (usa el 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

Iniciar un servidor headless de OpenCode 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 HTTP básica (el nombre de usuario por defecto es opencode).

Flags

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

session

Gestionar sesiones de OpenCode.

opencode session [command]

list

Listar 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 (table)

stats

Mostrar 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 (todo el tiempo)
--toolsNúmero de herramientas a mostrar (todas)
--modelsMostrar desglose de uso de modelos (oculto por defecto). Pasa un número para mostrar los N principales
--projectFiltrar por proyecto (todos los proyectos, cadena vacía: proyecto actual)

export

Exportar 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

Importar datos de sesión desde un archivo JSON o URL de compartición de OpenCode.

opencode import <file>

Puedes importar desde un archivo local o una URL de compartición de OpenCode.

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

web

Iniciar un servidor headless de OpenCode con 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 HTTP básica (el nombre de usuario por defecto es opencode).

Flags

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

acp

Iniciar 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

Desinstalar OpenCode y eliminar 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 confirmaciones

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 que se usó; 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_AUTOUPDATEbooleanDesactivar verificaciones de actualización automática
OPENCODE_DISABLE_PRUNEbooleanDesactivar limpieza de datos antiguos
OPENCODE_DISABLE_TERMINAL_TITLEbooleanDesactivar actualizaciones automáticas del título de terminal
OPENCODE_PERMISSIONstringConfiguración de permisos json en línea
OPENCODE_DISABLE_DEFAULT_PLUGINSbooleanDesactivar plugins por defecto
OPENCODE_DISABLE_LSP_DOWNLOADbooleanDesactivar descargas automáticas de servidores LSP
OPENCODE_ENABLE_EXPERIMENTAL_MODELSbooleanHabilitar modelos experimentales
OPENCODE_DISABLE_AUTOCOMPACTbooleanDesactivar compactación automática de contexto
OPENCODE_DISABLE_CLAUDE_CODEbooleanDesactivar lectura de .claude (prompt + skills)
OPENCODE_DISABLE_CLAUDE_CODE_PROMPTbooleanDesactivar lectura de ~/.claude/CLAUDE.md
OPENCODE_DISABLE_CLAUDE_CODE_SKILLSbooleanDesactivar carga de .claude/skills
OPENCODE_DISABLE_MODELS_FETCHbooleanDesactivar obtención de modelos de fuentes remotas
OPENCODE_FAKE_VCSstringProveedor VCS falso para pruebas
OPENCODE_DISABLE_FILETIME_CHECKbooleanDesactivar 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 HTTP 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 funciones experimentales que pueden cambiar o ser eliminadas.

VariableTipoDescripción
OPENCODE_EXPERIMENTALbooleanHabilitar todas las funciones experimentales
OPENCODE_EXPERIMENTAL_ICON_DISCOVERYbooleanHabilitar descubrimiento de iconos
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECTbooleanDesactivar 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_FILEWATCHERbooleanDesactivar observador de archivos
OPENCODE_EXPERIMENTAL_EXAbooleanHabilitar funciones experimentales de Exa
OPENCODE_EXPERIMENTAL_LSP_TYbooleanHabilitar verificación de tipos LSP experimental
OPENCODE_EXPERIMENTAL_MARKDOWNbooleanHabilitar funciones experimentales de markdown
OPENCODE_EXPERIMENTAL_PLAN_MODEbooleanHabilitar modo plan