--- title: CLI description: OpenCode CLI opciones y comandos. --- import { Tabs, TabItem } from "@astrojs/starlight/components" El OpenCode CLI de forma predeterminada inicia el [TUI](/docs/tui) cuando se ejecuta sin ningún argumento. ```bash opencode ``` Pero también acepta comandos como se documenta en esta página. Esto le permite interactuar con OpenCode mediante programación. ```bash opencode run "Explain how closures work in JavaScript" ``` --- ### tui Inicie la interfaz de usuario del terminal OpenCode. ```bash opencode [project] ``` #### Banderas | Bandera | Corto | Descripción | | ------------ | ----- | --------------------------------------------------------------------- | | `--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. --- ### agente Administrar agentes para OpenCode. ```bash opencode agent [command] ``` --- ### adjuntar Conecte una terminal a un servidor backend OpenCode que ya se esté ejecutando y iniciado mediante los comandos `serve` o `web`. ```bash opencode attach [url] ``` Esto permite usar TUI con un backend remoto OpenCode. Por ejemplo: ```bash # 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 ``` #### Banderas | Bandera | Corto | Descripción | | ----------- | ----- | ----------------------------------------- | | `--dir` | | Directorio de trabajo para iniciar TUI en | | `--session` | `-s` | ID de sesión para continuar | --- #### crear Cree un nuevo agente con configuración personalizada. ```bash opencode agent create ``` Este comando lo guiará en la creación de un nuevo agente con un mensaje del sistema personalizado y una configuración de herramientas. --- #### lista Enumere todos los agentes disponibles. ```bash opencode agent list ``` --- ### autenticación Comando para administrar credenciales e iniciar sesión para proveedores. ```bash opencode auth [command] ``` --- #### acceso OpenCode funciona con la lista de proveedores en [Models.dev](https://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`. ```bash opencode auth login ``` Cuando 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. --- #### lista Enumera todos los proveedores autenticados tal como están almacenados en el archivo de credenciales. ```bash opencode auth list ``` O la versión corta. ```bash opencode auth ls ``` --- #### cerrar sesión Cierra tu sesión de un proveedor eliminándolo del archivo de credenciales. ```bash opencode auth logout ``` --- ### github Administre el agente GitHub para la automatización del repositorio. ```bash opencode github [command] ``` --- #### instalar Instale el agente GitHub en su repositorio. ```bash opencode github install ``` Esto 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](/docs/github). --- #### correr Ejecute el agente GitHub. Esto se usa normalmente en acciones GitHub. ```bash opencode github run ``` ##### Banderas | Bandera | Descripción | | --------- | ---------------------------------------------- | | `--event` | GitHub evento simulado para ejecutar el agente | | `--token` | GitHub token de acceso personal | --- ### mcp Administrar servidores de protocolo de contexto modelo. ```bash opencode mcp [command] ``` --- #### agregar Agregue un servidor MCP a su configuración. ```bash opencode mcp add ``` Este comando lo guiará para agregar un servidor MCP local o remoto. --- #### lista Enumere todos los servidores MCP configurados y su estado de conexión. ```bash opencode mcp list ``` O utilice la versión corta. ```bash opencode mcp ls ``` --- #### autenticación Autentíquese con un servidor MCP habilitado para OAuth. ```bash 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. ```bash opencode mcp auth list ``` O utilice la versión corta. ```bash opencode mcp auth ls ``` --- #### cerrar sesión Elimine las credenciales OAuth para un servidor MCP. ```bash opencode mcp logout [name] ``` --- #### depurar Depurar problemas de conexión OAuth para un servidor MCP. ```bash opencode mcp debug ``` --- ### modelos Enumere todos los modelos disponibles de los proveedores configurados. ```bash 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](/docs/config/). Opcionalmente, puede pasar un ID de proveedor para filtrar modelos por ese proveedor. ```bash opencode models anthropic ``` #### Banderas | Bandera | Descripción | | ----------- | --------------------------------------------------------------------------- | | `--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. ```bash opencode models --refresh ``` --- ### correr Ejecute opencode en modo no interactivo pasando un mensaje directamente. ```bash 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. ```bash "opencode run" opencode run Explain the use of context in Go ``` Tambié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: ```bash # 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" ``` #### Banderas | Bandera | Corto | Descripción | | ------------ | ----- | ----------------------------------------------------------------------------------- | | `--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) | --- ### atender Inicie un servidor OpenCode sin cabeza para acceso API. Consulte los [documentos del servidor](/docs/server) para conocer la interfaz HTTP completa. ```bash opencode serve ``` Esto 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 | --- ### sesión Administrar OpenCode sesiones. ```bash opencode session [command] ``` --- #### lista Enumere todas las sesiones OpenCode. ```bash opencode session list ``` ##### Banderas | Bandera | Corto | Descripción | | ------------- | ----- | --------------------------------------- | | `--max-count` | `-n` | Limitar a N sesiones más recientes | | `--format` | | Formato de salida: tabla o json (tabla) | --- ### estadísticas Muestre el uso de tokens y las estadísticas de costos para sus sesiones OpenCode. ```bash opencode stats ``` #### Banderas | Bandera | Descripción | | ----------- | ------------------------------------------------------------------------------------------------------------------------ | | `--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) | --- ### exportar Exportar datos de la sesión como JSON. ```bash opencode export [sessionID] ``` Si no proporciona una ID de sesión, se le pedirá que seleccione entre las sesiones disponibles. --- ### importar Importe datos de sesión desde un archivo JSON o una URL compartida OpenCode. ```bash opencode import ``` Puede importar desde un archivo local o una URL compartida OpenCode. ```bash opencode import session.json opencode import https://opncd.ai/s/abc123 ``` --- ### web Inicie un servidor OpenCode sin cabeza con una interfaz web. ```bash opencode web ``` Esto 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 (Protocolo de cliente de agente). ```bash opencode acp ``` Este comando inicia un servidor ACP que se comunica a través de stdin/stdout usando nd-JSON. #### Banderas | Bandera | Descripción | | ------------ | ---------------------------- | | `--cwd` | Directorio de trabajo | | `--port` | Puerto para escuchar | | `--hostname` | Nombre de host para escuchar | --- ### desinstalar Desinstale OpenCode y elimine todos los archivos relacionados. ```bash opencode uninstall ``` #### Banderas | Bandera | Corto | Descripción | | --------------- | ----- | ----------------------------------------- | | `--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 | --- ### mejora Actualiza opencode a la última versión o a una versión específica. ```bash opencode upgrade [target] ``` Para actualizar a la última versión. ```bash opencode upgrade ``` Para actualizar a una versión específica. ```bash opencode upgrade v0.1.48 ``` #### Banderas | Bandera | Corto | Descripción | | ---------- | ----- | ---------------------------------------------------------------------------- | | `--method` | `-m` | El método de instalación que se utilizó; rizo, npm, pnpm, bollo, preparación | --- ## Banderas globales 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 (DEPURACIÓN, INFORMACIÓN, ADVERTENCIA, ERROR) | --- ## Variables de entorno OpenCode se puede configurar mediante variables de entorno. | Variables | Tipo | Descripción | | ------------------------------------- | -------- | ------------------------------------------------------------------------------- | | `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. | Variables | Tipo | Descripción | | ----------------------------------------------- | -------- | ---------------------------------------------------------- | | `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 rebajas experimentales | | `OPENCODE_EXPERIMENTAL_PLAN_MODE` | booleano | Habilitar modo de plan |