Español
Documentación
CLI

CLI

Opciones y comandos de la CLI de OpenCode.

La CLI de OpenCode, por defecto, inicia la TUI cuando se ejecuta sin ningún argumento.

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

Inicia la interfaz de usuario de terminal de OpenCode.

opencode [project]

Opciones

OpciónAbreviaturaDescripción
--continue-cContinúa la última sesión
--session-sID de sesión a continuar
--forkBifurca la sesión al continuar (úsalo con --continue o --session)
--promptPrompt a usar
--model-mModelo a usar, en la forma provider/model
--agentAgente a usar
--portPuerto en el que escuchar
--hostnameNombre de host en el que escuchar
--mdnsHabilita el descubrimiento mDNS
--mdns-domainNombre de dominio mDNS personalizado
--corsOrigen(es) de navegador adicionales para permitir CORS

Comandos

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


agent

Gestiona los agentes de OpenCode.

opencode agent [command]

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 system prompt y una configuración de permisos personalizados. Cualquier cosa que no permitas se deniega en el frontmatter del agente generado.

Opciones

OpciónAbreviaturaDescripción
--pathDirectorio donde escribir el archivo del agente (por defecto, global o .opencode/agent según el prompt)
--descriptionQué debe hacer el agente
--modeModo del agente: all, primary o subagent
--permissionsLista separada por comas de permisos a permitir (por defecto: todos). Disponibles: bash, read, edit, glob, grep, webfetch, task, todowrite, websearch, lsp, skill. Cualquier cosa omitida se deniega. Alias: --tools
--model-mModelo a usar, en formato provider/model

Pasar todas las opciones --path, --description, --mode y --permissions ejecuta el comando de forma no interactiva.


list

Lista todos los agentes disponibles.

opencode agent list

attach

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

opencode attach [url]

Esto te permite usar la TUI con un backend de OpenCode remoto. 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

Opciones

OpciónAbreviaturaDescripción
--dirDirectorio de trabajo en el que iniciar la TUI
--continue-cContinúa la última sesión
--session-sID de sesión a continuar
--forkBifurca la sesión al continuar (úsalo con --continue o --session)
--password-pContraseña de autenticación básica (por defecto, OPENCODE_SERVER_PASSWORD)
--username-uNombre de usuario de autenticación básica (por defecto, OPENCODE_SERVER_USERNAME o opencode)

auth

Comando para gestionar las credenciales e iniciar sesión en los proveedores.

opencode auth [command]

login

OpenCode funciona con la lista de proveedores de Models.dev (opens in a new tab), por lo que puedes usar opencode auth login para configurar las claves de API de cualquier proveedor que quieras 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. Y también si hay alguna clave definida en tu entorno o en un archivo .env en tu proyecto.

Opciones
OpciónAbreviaturaDescripción
--provider-pID o nombre del proveedor en el que iniciar sesión
--method-mEtiqueta del método de inicio de sesión a usar, omitiendo la selección de método

list

Lista todos los proveedores autenticados tal como están almacenados en el archivo de credenciales.

opencode auth list

O la versión corta.

opencode auth ls

logout

Te cierra la sesión de un proveedor eliminándolo del archivo de credenciales.

opencode auth logout

github

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

opencode github [command]

install

Instala el agente de GitHub en tu repositorio.

opencode github install

Esto configura el workflow de GitHub Actions necesario 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 normalmente en GitHub Actions.

opencode github run
Opciones
OpciónDescripción
--eventEvento simulado de GitHub para el que ejecutar el agente
--tokenToken de acceso personal de GitHub

mcp

Gestiona los servidores Model Context Protocol.

opencode mcp [command]

add

Agrega un servidor MCP a tu configuración.

opencode mcp add

Este comando te guiará para agregar 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 uno 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 de un servidor MCP.

opencode mcp logout [name]

debug

Depura problemas de conexión OAuth de 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 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 los modelos por ese proveedor.

opencode models anthropic

Opciones

OpciónDescripción
--refreshActualiza la caché de modelos desde models.dev
--verboseUsa una salida de modelos más detallada (incluye metadatos como los costos)

Usa la opción --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

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 adjuntarte a una instancia de opencode serve en ejecución para evitar los 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"

Opciones

OpciónAbreviaturaDescripción
--commandEl comando a ejecutar, usa message para los argumentos
--continue-cContinúa la última sesión
--session-sID de sesión a continuar
--forkBifurca la sesión al continuar (úsalo con --continue o --session)
--shareComparte la sesión
--model-mModelo a usar, en la forma provider/model
--agentAgente a usar
--file-fArchivo(s) a adjuntar al mensaje
--formatFormato: default (formateado) o json (eventos JSON sin procesar)
--titleTítulo de la sesión (usa el prompt truncado si no se proporciona valor)
--attachAdjuntar a un servidor opencode en ejecución (por ejemplo, http://localhost:4096 (opens in a new tab))
--password-pContraseña de autenticación básica (por defecto, OPENCODE_SERVER_PASSWORD)
--username-uNombre de usuario de autenticación básica (por defecto, OPENCODE_SERVER_USERNAME o opencode)
--dirDirectorio en el que ejecutar, o ruta en el servidor remoto al adjuntar
--portPuerto para el servidor local (por defecto, un puerto aleatorio)
--variantVariante del modelo (esfuerzo de razonamiento específico del proveedor)
--thinkingMuestra los bloques de pensamiento
--dangerously-skip-permissionsAprueba automáticamente los permisos que no estén explícitamente denegados (¡peligroso!)

serve

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

opencode serve

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

Opciones

OpciónDescripción
--portPuerto en el que escuchar
--hostnameNombre de host en el que escuchar
--mdnsHabilita el descubrimiento mDNS
--mdns-domainNombre de dominio mDNS personalizado
--corsOrigen(es) de navegador adicionales para permitir CORS

session

Gestiona las sesiones de OpenCode.

opencode session [command]

list

Lista todas las sesiones de OpenCode.

opencode session list
Opciones
OpciónAbreviaturaDescripción
--max-count-nLimita a las N sesiones más recientes
--formatFormato de salida: table o json (table)

delete

Elimina una sesión de OpenCode.

opencode session delete <sessionID>

stats

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

opencode stats

Opciones

OpciónDescripción
--daysMuestra estadísticas de los últimos N días (todo el tiempo)
--toolsNúmero de herramientas a mostrar (todas)
--modelsMuestra el desglose de uso por modelo (oculto por defecto). Pasa un número para mostrar los N principales
--projectFiltra por proyecto (todos los proyectos; cadena vacía: proyecto actual)

export

Exporta los datos de sesión como JSON.

opencode export [sessionID]

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

Opciones

OpciónDescripción
--sanitizeOculta los datos sensibles de la transcripción/archivos

import

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

opencode import <file>

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

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

web

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

Opciones

OpciónDescripción
--portPuerto en el que escuchar
--hostnameNombre de host en el que escuchar
--mdnsHabilita el descubrimiento mDNS
--mdns-domainNombre de dominio mDNS personalizado
--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 a través de stdin/stdout usando nd-JSON.

Opciones

OpciónDescripción
--cwdDirectorio de trabajo
--portPuerto en el que escuchar
--hostnameNombre de host en el que escuchar
--mdnsHabilita el descubrimiento mDNS
--mdns-domainNombre de dominio mDNS personalizado
--corsOrigen(es) de navegador adicionales para permitir CORS

plugin

Instala un plugin y actualiza tu configuración.

opencode plugin <module>

O usa el alias.

opencode plug <module>

Opciones

OpciónAbreviaturaDescripción
--global-gInstala en la configuración global
--force-fReemplaza la versión existente del plugin

pr

Obtiene y hace checkout de la rama de un PR de GitHub, luego ejecuta OpenCode.

opencode pr <number>

db

Herramientas de base de datos.

opencode db [query]

Opciones

OpciónDescripción
--formatFormato de salida: json o tsv

path

Imprime la ruta de la base de datos.

opencode db path

debug

Herramientas de depuración y solución de problemas.

opencode debug [command]

uninstall

Desinstala OpenCode y elimina todos los archivos relacionados.

opencode uninstall

Opciones

OpciónAbreviaturaDescripción
--keep-config-cConserva los archivos de configuración
--keep-data-dConserva los datos de sesión y los snapshots
--dry-runMuestra qué se eliminaría sin eliminarlo
--force-fOmite las solicitudes 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

Opciones

OpciónAbreviaturaDescripción
--method-mEl método de instalación que se usó; curl, npm, pnpm, bun, brew

Opciones globales

La CLI de opencode acepta las siguientes opciones globales.

OpciónAbreviaturaDescripción
--help-hMuestra la ayuda
--version-vImprime el número de versión
--print-logsImprime los logs en stderr
--log-levelNivel de log (DEBUG, INFO, WARN, ERROR)
--pureEjecuta sin plugins externos

Variables de entorno

OpenCode puede configurarse mediante variables de entorno.

VariableTipoDescripción
OPENCODE_AUTO_SHAREbooleanComparte las sesiones automáticamente
OPENCODE_GIT_BASH_PATHstringRuta al ejecutable de Git Bash en Windows
OPENCODE_CONFIGstringRuta al archivo de configuración
OPENCODE_TUI_CONFIGstringRuta al archivo de configuración de la TUI
OPENCODE_CONFIG_DIRstringRuta al directorio de configuración
OPENCODE_CONFIG_CONTENTstringContenido de configuración json en línea
OPENCODE_DISABLE_AUTOUPDATEbooleanDeshabilita las comprobaciones automáticas de actualización
OPENCODE_DISABLE_PRUNEbooleanDeshabilita la limpieza de datos antiguos
OPENCODE_DISABLE_TERMINAL_TITLEbooleanDeshabilita las actualizaciones automáticas del título de la terminal
OPENCODE_PERMISSIONstringConfiguración de permisos json en línea
OPENCODE_DISABLE_DEFAULT_PLUGINSbooleanDeshabilita los plugins por defecto
OPENCODE_DISABLE_LSP_DOWNLOADbooleanDeshabilita las descargas automáticas de servidores LSP
OPENCODE_ENABLE_EXPERIMENTAL_MODELSbooleanHabilita los modelos experimentales
OPENCODE_DISABLE_AUTOCOMPACTbooleanDeshabilita la compactación automática del contexto
OPENCODE_DISABLE_CLAUDE_CODEbooleanDeshabilita la lectura de .claude (prompt + skills)
OPENCODE_DISABLE_CLAUDE_CODE_PROMPTbooleanDeshabilita la lectura de ~/.claude/CLAUDE.md
OPENCODE_DISABLE_CLAUDE_CODE_SKILLSbooleanDeshabilita la carga de .claude/skills
OPENCODE_DISABLE_MODELS_FETCHbooleanDeshabilita la obtención de modelos desde fuentes remotas
OPENCODE_DISABLE_MOUSEbooleanDeshabilita la captura del ratón en la TUI
OPENCODE_FAKE_VCSstringProveedor de VCS falso para fines de prueba
OPENCODE_CLIENTstringIdentificador de cliente (por defecto, cli)
OPENCODE_ENABLE_EXAbooleanHabilita las herramientas de búsqueda web de Exa
OPENCODE_SERVER_PASSWORDstringHabilita la autenticación básica para serve/web
OPENCODE_SERVER_USERNAMEstringAnula el nombre de usuario de la autenticación básica (por defecto opencode)
OPENCODE_MODELS_URLstringURL personalizada para obtener la configuración de modelos

Experimental

Estas variables de entorno habilitan funciones experimentales que pueden cambiar o eliminarse.

VariableTipoDescripción
OPENCODE_EXPERIMENTALbooleanHabilita todas las funciones experimentales
OPENCODE_EXPERIMENTAL_ICON_DISCOVERYbooleanHabilita el descubrimiento de iconos
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECTbooleanDeshabilita la copia al seleccionar en la TUI
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MSnumberTiempo de espera por defecto para los comandos bash en ms
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAXnumberMáximo de tokens de salida para las respuestas del LLM
OPENCODE_EXPERIMENTAL_FILEWATCHERbooleanHabilita el observador de archivos para todo el directorio
OPENCODE_EXPERIMENTAL_OXFMTbooleanHabilita el formateador oxfmt
OPENCODE_EXPERIMENTAL_LSP_TOOLbooleanHabilita la herramienta LSP experimental
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHERbooleanDeshabilita el observador de archivos
OPENCODE_EXPERIMENTAL_EXAbooleanHabilita las funciones experimentales de Exa
OPENCODE_EXPERIMENTAL_LSP_TYbooleanHabilita el LSP TY para archivos python
OPENCODE_EXPERIMENTAL_PLAN_MODEbooleanHabilita el modo plan