CLI
OpenCode CLI opciones y comandos.
El OpenCode CLI de forma predeterminada inicia el TUI cuando se ejecuta sin ningún argumento.
opencodePero también acepta comandos como se documenta en esta página. Esto le permite interactuar con OpenCode mediante programación.
opencode run "Explain how closures work in JavaScript"tui
Inicie la interfaz de usuario del terminal OpenCode.
opencode [project]Flags
| Flag | Short | Description |
|---|---|---|
--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.
agent
Administrar agentes para OpenCode.
opencode agent [command]attach
Conecte una terminal a un servidor backend OpenCode que ya se esté ejecutando y iniciado mediante los comandos serve o web.
opencode attach [url]Esto permite usar TUI con un backend remoto OpenCode. Por ejemplo:
# Start the backend server for web/mobile accessopencode web --port 4096 --hostname 0.0.0.0
# In another terminal, attach the TUI to the running backendopencode attach http://10.20.30.40:4096Flags
| Flag | Short | Description |
|---|---|---|
--dir | Directorio de trabajo para iniciar TUI en | |
--session | -s | ID de sesión para continuar |
create
Cree un nuevo agente con configuración personalizada.
opencode agent createEste comando lo guiará en la creación de un nuevo agente con un mensaje del sistema personalizado y una configuración de herramientas.
list
Enumere todos los agentes disponibles.
opencode agent listauth
Comando para administrar credenciales e iniciar sesión para proveedores.
opencode auth [command]login
OpenCode funciona con la lista de proveedores en 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.
opencode auth loginCuando 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.
list
Enumera todos los proveedores autenticados tal como están almacenados en el archivo de credenciales.
opencode auth listO la versión corta.
opencode auth lslogout
Cierra tu sesión de un proveedor eliminándolo del archivo de credenciales.
opencode auth logoutgithub
Administre el agente GitHub para la automatización del repositorio.
opencode github [command]install
Instale el agente GitHub en su repositorio.
opencode github installEsto 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.
run
Ejecute el agente GitHub. Esto se usa normalmente en acciones GitHub.
opencode github runFlags
| Flag | Description |
|---|---|
--event | GitHub evento simulado para ejecutar el agente |
--token | GitHub token de acceso personal |
mcp
Administrar servidores de protocolo de contexto modelo.
opencode mcp [command]add
Agregue un servidor MCP a su configuración.
opencode mcp addEste comando lo guiará para agregar un servidor MCP local o remoto.
list
Enumere todos los servidores MCP configurados y su estado de conexión.
opencode mcp listO utilice la versión corta.
opencode mcp lsauth
Autentíquese con un servidor MCP habilitado para OAuth.
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.
opencode mcp auth listO utilice la versión corta.
opencode mcp auth lslogout
Elimine las 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
Enumere todos los modelos disponibles de los proveedores configurados.
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.
Opcionalmente, puede pasar un ID de proveedor para filtrar modelos por ese proveedor.
opencode models anthropicFlags
| Flag | Description |
|---|---|
--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.
opencode models --refreshrun
Ejecute opencode en modo no interactivo pasando un mensaje directamente.
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.
opencode run Explain the use of context in GoTambié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:
# Start a headless server in one terminalopencode serve
# In another terminal, run commands that attach to itopencode run --attach http://localhost:4096 "Explain async/await in JavaScript"Flags
| Flag | Short | Description |
|---|---|---|
--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) |
serve
Inicie un servidor OpenCode sin cabeza para acceso API. Consulte los documentos del servidor para conocer la interfaz HTTP completa.
opencode serveEsto 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 |
session
Administrar OpenCode sesiones.
opencode session [command]list
Enumere todas las sesiones OpenCode.
opencode session listFlags
| Flag | Short | Description |
|---|---|---|
--max-count | -n | Limitar a N sesiones más recientes |
--format | Formato de salida: tabla o json (tabla) |
stats
Muestre el uso de tokens y las estadísticas de costos para sus sesiones OpenCode.
opencode statsFlags
| Flag | Description |
|---|---|
--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) |
export
Exportar datos de la sesión como JSON.
opencode export [sessionID]Si no proporciona una ID de sesión, se le pedirá que seleccione entre las sesiones disponibles.
import
Importe datos de sesión desde un archivo JSON o una URL compartida OpenCode.
opencode import <file>Puede importar desde un archivo local o una URL compartida OpenCode.
opencode import session.jsonopencode import https://opncd.ai/s/abc123web
Inicie un servidor OpenCode sin cabeza con una interfaz web.
opencode webEsto 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 (Agent Client Protocol).
opencode acpEste comando inicia un servidor ACP que se comunica a través de stdin/stdout usando nd-JSON.
Flags
| Flag | Description |
|---|---|
--cwd | Directorio de trabajo |
--port | Puerto para escuchar |
--hostname | Nombre de host para escuchar |
uninstall
Desinstale OpenCode y elimine todos los archivos relacionados.
opencode uninstallFlags
| Flag | Short | Description |
|---|---|---|
--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 |
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 upgradePara actualizar a una versión específica.
opencode upgrade v0.1.48Banderas
| Bandera | Corto | Descripción |
|---|---|---|
--method | -m | El método de instalación que se utilizó; curl, npm, pnpm, bun, brew |
Global Flags
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 (DEBUG, INFO, WARN, ERROR) |
Variables de entorno
OpenCode se puede configurar mediante variables de entorno.
| Variable | Type | Description |
|---|---|---|
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.
| Variable | Type | Description |
|---|---|---|
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 Markdown experimentales |
OPENCODE_EXPERIMENTAL_PLAN_MODE | booleano | Habilitar modo de plan |