CLI
Opciones y comandos de la CLI de OpenCode.
La CLI de OpenCode inicia por defecto la TUI cuando se ejecuta sin argumentos.
opencodePero tambien acepta comandos como se documenta en esta pagina. Esto le permite interactuar con OpenCode programaticamente.
opencode run "Explain how closures work in JavaScript"tui
Iniciar la interfaz de usuario de terminal de OpenCode.
opencode [project]Indicadores
| Indicador | Corto | Description |
|---|---|---|
--continue | -c | Continuar la ultima sesion |
--session | -s | ID de sesion para continuar |
--prompt | Prompt para usar | |
--model | -m | Modelo para usar en forma de proveedor/modelo |
--agent | Agente para usar | |
--port | Puerto para escuchar | |
--hostname | Nombre de host para escuchar |
Comandos
La CLI de OpenCode tambien tiene los siguientes comandos.
agent
Administrar agentes para OpenCode.
opencode agent [command]attach
Adjuntar una terminal a un servidor backend de OpenCode ya iniciado a traves de comandos serve o web.
opencode attach [url]Esto permite usar la TUI con un backend OpenCode remoto. Por ejemplo:
# Iniciar el servidor backend para acceso web/movilopencode web --port 4096 --hostname 0.0.0.0
# En otra terminal, adjuntar la TUI al backend en ejecucionopencode attach http://10.20.30.40:4096Indicadores
| Indicador | Corto | Description |
|---|---|---|
--dir | Directorio de trabajo para iniciar la TUI | |
--session | -s | ID de sesion para continuar |
create
Crear un nuevo agente con configuracion personalizada.
opencode agent createEste comando lo guiara a traves de la creacion de un nuevo agente con un prompt del sistema y configuracion de herramientas personalizada.
list
Listar todos los agentes disponibles.
opencode agent listauth
Comando para administrar credenciales e inicio de sesion para proveedores.
opencode auth [command]login
OpenCode es alimentado por la lista de proveedores en Models.dev, por lo que puede usar opencode auth login para configurar claves API para cualquier proveedor que desee usar. Esto se almacena en ~/.local/share/opencode/auth.json.
opencode auth loginCuando OpenCode se inicia carga los proveedores desde el archivo de credenciales. Y si hay claves definidas en sus entornos o un archivo .env en su proyecto.
list
Lista todos los proveedores autenticados segun se almacenan en el archivo de credenciales.
opencode auth listO la version corta.
opencode auth lslogout
Cierra la sesion de un proveedor eliminandolo del archivo de credenciales.
opencode auth logoutgithub
Administrar el agente de GitHub para automatizacion de repositorios.
opencode github [command]install
Instalar el agente de GitHub en su repositorio.
opencode github installEsto configura el flujo de trabajo de GitHub Actions necesario y lo guia a traves del proceso de configuracion. Mas informacion.
run
Ejecutar el agente de GitHub. Esto se usa tipicamente en GitHub Actions.
opencode github runIndicadores
| Indicador | Description |
|---|---|
--event | Evento mock de GitHub para ejecutar el agente |
--token | Token de acceso personal de GitHub |
mcp
Administrar servidores del Protocolo de Contexto de Modelo.
opencode mcp [command]add
Agregar un servidor MCP a su configuracion.
opencode mcp addEste comando lo guiara a traves de la adicion de un servidor MCP local o remoto.
list
Listar todos los servidores MCP configurados y su estado de conexion.
opencode mcp listO use la version corta.
opencode mcp lsauth
Autenticarse con un servidor MCP compatible con OAuth.
opencode mcp auth [name]Si no proporciona un nombre de servidor, se le pedira que seleccione entre los servidores compatibles con OAuth disponibles.
También puede listar servidores compatibles con OAuth y su estado de autenticacion.
opencode mcp auth listO use la version corta.
opencode mcp auth lslogout
Eliminar credenciales OAuth para un servidor MCP.
opencode mcp logout [name]debug
Depurar problemas de conexion OAuth para un servidor MCP.
opencode mcp debug <name>models
Listar todos los modelos disponibles de proveedores configurados.
opencode models [provider]Este comando muestra todos los modelos disponibles en sus proveedores configurados en el formato proveedor/modelo.
Esto es util para descubrir el nombre exacto del modelo para usar en su configuracion.
Opcionalmente puede pasar un ID de proveedor para filtrar modelos por ese proveedor.
opencode models anthropicIndicadores
| Indicador | Description |
|---|---|
--refresh | Actualizar el cache de modelos desde models.dev |
--verbose | Usar salida de modelo mas detallada (incluye metadatos como costos) |
Use el indicador --refresh para actualizar la lista de modelos en cache. Esto es util cuando se han agregado nuevos modelos a un proveedor y desea verlos en OpenCode.
opencode models --refreshrun
Ejecutar opencode en modo no interactivo pasando directamente un prompt.
opencode run [message..]Esto es util para secuencias de comandos, automatizacion, o cuando desea una respuesta rapida sin iniciar la TUI completa. Por ejemplo:
opencode run Explain the use of context in GoTambién puede adjuntarse a una instancia opencode serve en ejecucion para evitar tiempos de arranque en frio del servidor MCP en cada ejecucion:
# Iniciar un servidor sin interfaz en una terminalopencode serve
# En otra terminal, ejecutar comandos que se adjuntan a elopencode run --attach http://localhost:4096 "Explain async/await in JavaScript"Indicadores
| Indicador | Corto | Description |
|---|---|---|
--command | El comando a ejecutar, usar mensaje para argumentos | |
--continue | -c | Continuar la ultima sesion |
--session | -s | ID de sesion para continuar |
--share | Compartir la sesion | |
--model | -m | Modelo para usar en forma de proveedor/modelo |
--agent | Agente para usar | |
--file | -f | Archivo(s) para adjuntar al mensaje |
--format | Formato: default (formateado) o json (eventos JSON sin procesar) | |
--title | Titulo para la sesion (usa prompt truncado si no se proporciona valor) | |
--attach | Adjuntar a un servidor opencode en ejecucion (ej: http://localhost:4096) | |
--port | Puerto para el servidor local (por defecto: puerto aleatorio) |
serve
Iniciar un servidor OpenCode sin interfaz para acceso API. Consulte la documentacion del servidor para la interfaz HTTP completa.
opencode serveEsto inicia un servidor HTTP que proporciona acceso API a la funcionalidad de opencode sin la interfaz TUI.
Indicadores
| Indicador | Description |
|---|---|
--port | Puerto para escuchar |
--hostname | Nombre de host para escuchar |
--mdns | Habilitar descubrimiento mDNS |
--cors | Origenes de navegador adicionales para permitir CORS |
session
Administrar sesiones de OpenCode.
opencode session [command]list
Listar todas las sesiones de OpenCode.
opencode session listIndicadores
| Indicador | Corto | Description |
|---|---|---|
--max-count | -n | Limitar a las N sesiones mas recientes |
--format | Formato de salida: table o json (table) |
stats
Mostrar estadisticas de uso de tokens y costos para sus sesiones de OpenCode.
opencode statsIndicadores
| Indicador | Description |
|---|---|
--days | Mostrar estadisticas para los ultimos N dias (todo el tiempo) |
--tools | Numero de herramientas a mostrar (todas) |
--models | Mostrar desglose de uso de modelos (oculto por defecto). Pase un numero para mostrar los N principales |
--project | Filtrar por proyecto (todos los proyectos, cadena vacia: proyecto actual) |
export
Exportar datos de sesion como JSON.
opencode export [sessionID]Si no proporciona un ID de sesion, se le pedira que seleccione entre las sesiones disponibles.
import
Importar datos de sesion desde un archivo JSON o URL para compartir de OpenCode.
opencode import <file>Puede importar desde un archivo local o una URL para compartir de OpenCode.
opencode import session.jsonopencode import https://opncd.ai/s/abc123web
Iniciar un servidor OpenCode sin interfaz con una interfaz web.
opencode webEsto inicia un servidor HTTP y abre un navegador web para acceder a OpenCode a traves de una interfaz web.
Indicadores
| Indicador | Description |
|---|---|
--port | Puerto para escuchar |
--hostname | Nombre de host para escuchar |
--mdns | Habilitar descubrimiento mDNS |
--cors | Origenes de navegador adicionales para permitir CORS |
acp
Iniciar un servidor ACP (Protocolo de Cliente de Agente).
opencode acpEste comando inicia un servidor ACP que se comunica a traves de stdin/stdout usando nd-JSON.
Indicadores
| Indicador | Description |
|---|---|
--cwd | Directorio de trabajo |
--port | Puerto para escuchar |
--hostname | Nombre de host para escuchar |
uninstall
Desinstalar OpenCode y eliminar todos los archivos relacionados.
opencode uninstallIndicadores
| Indicador | Corto | Description |
|---|---|---|
--keep-config | -c | Mantener archivos de configuracion |
--keep-data | -d | Mantener datos de sesion y snapshots |
--dry-run | Mostrar lo que se eliminaria sin eliminar | |
--force | -f | Omitir promps de confirmacion |
upgrade
Actualizar opencode a la ultima version o a una version especifica.
opencode upgrade [target]Para actualizar a la ultima version.
opencode upgradePara actualizar a una version especifica.
opencode upgrade v0.1.48Indicadores
| Indicador | Corto | Description |
|---|---|---|
--method | -m | El metodo de instalacion que se uso; curl, npm, pnpm, bun, brew |
Indicadores globales
La CLI de opencode acepta los siguientes indicadores globales.
| Indicador | Corto | Description |
|---|---|---|
--help | -h | Mostrar ayuda |
--version | -v | Imprimir numero de version |
--print-logs | Imprimir registros en stderr | |
--log-level | Nivel de registro (DEBUG, INFO, WARN, ERROR) |
Variables de entorno
OpenCode se puede configurar usando variables de entorno.
| Variable | Tipo | Description |
|---|---|---|
OPENCODE_AUTO_SHARE | boolean | Compartir sesiones automaticamente |
OPENCODE_GIT_BASH_PATH | string | Ruta al ejecutable Git Bash en Windows |
OPENCODE_CONFIG | string | Ruta al archivo de configuracion |
OPENCODE_CONFIG_DIR | string | Ruta al directorio de configuracion |
OPENCODE_CONFIG_CONTENT | string | Contenido de configuracion json en linea |
OPENCODE_DISABLE_AUTOUPDATE | boolean | Deshabilitar verificaciones de actualizacion automaticas |
OPENCODE_DISABLE_PRUNE | boolean | Deshabilitar poda de datos antiguos |
OPENCODE_DISABLE_TERMINAL_TITLE | boolean | Deshabilitar actualizaciones automaticas del titulo de terminal |
OPENCODE_PERMISSION | string | Configuracion de permisos json en linea |
OPENCODE_DISABLE_DEFAULT_PLUGINS | boolean | Deshabilitar complementos predeterminados |
OPENCODE_DISABLE_LSP_DOWNLOAD | boolean | Deshabilitar descargas automaticas de servidores LSP |
OPENCODE_ENABLE_EXPERIMENTAL_MODELS | boolean | Habilitar modelos experimentales |
OPENCODE_DISABLE_AUTOCOMPACT | boolean | Deshabilitar compactacion automatica de contexto |
OPENCODE_DISABLE_CLAUDE_CODE | boolean | Deshabilitar lectura de .claude (prompt + habilidades) |
OPENCODE_DISABLE_CLAUDE_CODE_PROMPT | boolean | Deshabilitar lectura de ~/.claude/CLAUDE.md |
OPENCODE_DISABLE_CLAUDE_CODE_SKILLS | boolean | Deshabilitar carga de .claude/skills |
OPENCODE_CLIENT | string | Identificador de cliente (por defecto cli) |
OPENCODE_ENABLE_EXA | boolean | Habilitar herramientas de busqueda web Exa |
Experimental
Estas variables de entorno habilitan funciones experimentales que pueden cambiar o eliminarse.
| Variable | Tipo | Description |
|---|---|---|
OPENCODE_EXPERIMENTAL | boolean | Habilitar todas las funciones experimentales |
OPENCODE_EXPERIMENTAL_ICON_DISCOVERY | boolean | Habilitar descubrimiento de iconos |
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT | boolean | Deshabilitar copiar al seleccionar en TUI |
OPENCODE_EXPERIMENTAL_BASH_MAX_OUTPUT_LENGTH | number | Longitud maxima de salida para comandos bash |
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS | number | Tiempo de espera predeterminado para comandos bash en ms |
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX | number | Tokenes de salida maximos para respuestas LLM |
OPENCODE_EXPERIMENTAL_FILEWATCHER | boolean | Habilitar observador de archivos para todo el directorio |
OPENCODE_EXPERIMENTAL_OXFMT | boolean | Habilitar formateador oxfmt |
OPENCODE_EXPERIMENTAL_LSP_TOOL | boolean | Habilitar herramienta LSP experimental |